glom r1597 - in trunk: . docs/developer_reference regression_tests
- From: murrayc svn gnome org
- To: svn-commits-list gnome org
- Subject: glom r1597 - in trunk: . docs/developer_reference regression_tests
- Date: Tue, 29 Apr 2008 15:33:34 +0100 (BST)
Author: murrayc
Date: Tue Apr 29 14:33:34 2008
New Revision: 1597
URL: http://svn.gnome.org/viewvc/glom?rev=1597&view=rev
Log:
2008-04-29 Murray Cumming <murrayc murrayc com>
Large refactoring of the Base_DB_* and Box_DB_* hierarchy to make it
simpler and less hacky.
* docs/developer_reference/Doxyfile: Added this, so you can do
doxygen Doxyfile to get some HTML to help understand the code.
* glom/signal_reemitter.h: Added signal_connect_for_reemit_*args(),
to make it easier to just emit a signal in response to another one,
for instance to emit up to a parent widget.
* regression_tests/Makefile.am:
* regression_tests/test_signal_reemit.cc: Added a test for this.
* glom/Makefile.am:
* glom/base_db.[h|cc]: Split this, to create:
* glom/base_db_table.[h|cc]
* glom/base_db_table_data.[h|cc]: with some stuff from Box_DB_Table.
* glom/box_db.[h|cc]: Renamed to
* glom/box_withbuttons.[h|cc] because that's all this is now.
* glom/box_db_table.[h|cc]: Derive from Base_DB_Table, instead of
implementing so much stuff.
* glom/mode_data/Makefile.am:
* glom/mode_data/box_data.[h|cc]: Derive from Box_WithButtons,
and Base_DB_Table_Data instead of implementing so much stuff.
* glom/mode_data/box_data_details.[h|cc]
* glom/mode_data/box_data_manyrecords.cc[h|cc]: Added this base class
for:
* glom/mode_data/box_data_list.[h|cc]
and Box_Data_Portal:
* glom/mode_data/box_data_portal.cc[h|cc]: Added this base class
for
* glom/mode_data/box_data_calendar_related.[h|cc]
and
* glom/mode_data/box_data_list_related.[h|cc]
* glom/utility_widgets/db_adddel/db_adddel.[h|cc] Derive from
Base_DB_Table_Data, to use its implementation, to move lots of
code for record adding, changing, and deleting into this widget instead
of having decisions in the parent Box_Data_List_Related and Box_Data_List.
This is simpler.
Added:
trunk/docs/developer_reference/
trunk/docs/developer_reference/Doxyfile
trunk/regression_tests/test_signal_reemit.cc
Removed:
trunk/glom.kdevprj
Modified:
trunk/ChangeLog
trunk/regression_tests/Makefile.am
Added: trunk/docs/developer_reference/Doxyfile
==============================================================================
--- (empty file)
+++ trunk/docs/developer_reference/Doxyfile Tue Apr 29 14:33:34 2008
@@ -0,0 +1,258 @@
+# Doxyfile 1.5.5
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+DOXYFILE_ENCODING = UTF-8
+PROJECT_NAME = "glom"
+PROJECT_NUMBER =
+OUTPUT_DIRECTORY =
+CREATE_SUBDIRS = NO
+OUTPUT_LANGUAGE = English
+BRIEF_MEMBER_DESC = YES
+REPEAT_BRIEF = YES
+ABBREVIATE_BRIEF = "The $name class" \
+ "The $name widget" \
+ "The $name file" \
+ is \
+ provides \
+ specifies \
+ contains \
+ represents \
+ a \
+ an \
+ the
+ALWAYS_DETAILED_SEC = NO
+INLINE_INHERITED_MEMB = NO
+FULL_PATH_NAMES = NO
+STRIP_FROM_PATH =
+STRIP_FROM_INC_PATH =
+SHORT_NAMES = NO
+JAVADOC_AUTOBRIEF = YES
+QT_AUTOBRIEF = NO
+MULTILINE_CPP_IS_BRIEF = NO
+DETAILS_AT_TOP = YES
+INHERIT_DOCS = YES
+SEPARATE_MEMBER_PAGES = NO
+TAB_SIZE = 8
+ALIASES =
+OPTIMIZE_OUTPUT_FOR_C = NO
+OPTIMIZE_OUTPUT_JAVA = NO
+OPTIMIZE_FOR_FORTRAN = NO
+OPTIMIZE_OUTPUT_VHDL = NO
+BUILTIN_STL_SUPPORT = NO
+CPP_CLI_SUPPORT = NO
+SIP_SUPPORT = NO
+DISTRIBUTE_GROUP_DOC = NO
+SUBGROUPING = YES
+TYPEDEF_HIDES_STRUCT = NO
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+EXTRACT_ALL = YES
+EXTRACT_PRIVATE = NO
+EXTRACT_STATIC = YES
+EXTRACT_LOCAL_CLASSES = YES
+EXTRACT_LOCAL_METHODS = NO
+EXTRACT_ANON_NSPACES = NO
+HIDE_UNDOC_MEMBERS = NO
+HIDE_UNDOC_CLASSES = NO
+HIDE_FRIEND_COMPOUNDS = NO
+HIDE_IN_BODY_DOCS = NO
+INTERNAL_DOCS = NO
+CASE_SENSE_NAMES = YES
+HIDE_SCOPE_NAMES = NO
+SHOW_INCLUDE_FILES = NO
+INLINE_INFO = YES
+SORT_MEMBER_DOCS = YES
+SORT_BRIEF_DOCS = YES
+SORT_GROUP_NAMES = NO
+SORT_BY_SCOPE_NAME = NO
+GENERATE_TODOLIST = YES
+GENERATE_TESTLIST = YES
+GENERATE_BUGLIST = YES
+GENERATE_DEPRECATEDLIST= YES
+ENABLED_SECTIONS =
+MAX_INITIALIZER_LINES = 30
+SHOW_USED_FILES = YES
+SHOW_DIRECTORIES = YES
+FILE_VERSION_FILTER =
+#---------------------------------------------------------------------------
+# configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+QUIET = NO
+WARNINGS = YES
+WARN_IF_UNDOCUMENTED = YES
+WARN_IF_DOC_ERROR = YES
+WARN_NO_PARAMDOC = NO
+WARN_FORMAT = "$file:$line: $text"
+WARN_LOGFILE =
+#---------------------------------------------------------------------------
+# configuration options related to the input files
+#---------------------------------------------------------------------------
+INPUT = ../../glom
+INPUT_ENCODING = UTF-8
+FILE_PATTERNS = *.h
+RECURSIVE = YES
+EXCLUDE =
+EXCLUDE_SYMLINKS = NO
+EXCLUDE_PATTERNS = */wrap_init.h
+EXCLUDE_SYMBOLS =
+EXAMPLE_PATH = ../../examples
+EXAMPLE_PATTERNS = *.h \
+ *.cc
+EXAMPLE_RECURSIVE = YES
+IMAGE_PATH = $(DOXYGEN_IMAGE_PATH) \
+ images/widgets
+INPUT_FILTER =
+FILTER_PATTERNS =
+FILTER_SOURCE_FILES = NO
+#---------------------------------------------------------------------------
+# configuration options related to source browsing
+#---------------------------------------------------------------------------
+SOURCE_BROWSER = NO
+INLINE_SOURCES = NO
+STRIP_CODE_COMMENTS = NO
+REFERENCED_BY_RELATION = YES
+REFERENCES_RELATION = YES
+REFERENCES_LINK_SOURCE = YES
+USE_HTAGS = NO
+VERBATIM_HEADERS = NO
+#---------------------------------------------------------------------------
+# configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+ALPHABETICAL_INDEX = YES
+COLS_IN_ALPHA_INDEX = 5
+IGNORE_PREFIX =
+#---------------------------------------------------------------------------
+# configuration options related to the HTML output
+#---------------------------------------------------------------------------
+GENERATE_HTML = YES
+HTML_OUTPUT = html
+HTML_FILE_EXTENSION = .html
+HTML_HEADER =
+HTML_FOOTER =
+HTML_STYLESHEET =
+HTML_ALIGN_MEMBERS = YES
+GENERATE_HTMLHELP = NO
+GENERATE_DOCSET = NO
+DOCSET_FEEDNAME = "Doxygen generated docs"
+DOCSET_BUNDLE_ID = org.doxygen.Project
+HTML_DYNAMIC_SECTIONS = NO
+CHM_FILE =
+HHC_LOCATION =
+GENERATE_CHI = NO
+BINARY_TOC = NO
+TOC_EXPAND = NO
+DISABLE_INDEX = YES
+ENUM_VALUES_PER_LINE = 1
+GENERATE_TREEVIEW = NO
+TREEVIEW_WIDTH = 250
+#---------------------------------------------------------------------------
+# configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+GENERATE_LATEX = NO
+LATEX_OUTPUT = latex
+LATEX_CMD_NAME = latex
+MAKEINDEX_CMD_NAME = makeindex
+COMPACT_LATEX = NO
+PAPER_TYPE = a4wide
+EXTRA_PACKAGES =
+LATEX_HEADER =
+PDF_HYPERLINKS = NO
+USE_PDFLATEX = NO
+LATEX_BATCHMODE = NO
+LATEX_HIDE_INDICES = NO
+#---------------------------------------------------------------------------
+# configuration options related to the RTF output
+#---------------------------------------------------------------------------
+GENERATE_RTF = NO
+RTF_OUTPUT = rtf
+COMPACT_RTF = NO
+RTF_HYPERLINKS = NO
+RTF_STYLESHEET_FILE =
+RTF_EXTENSIONS_FILE =
+#---------------------------------------------------------------------------
+# configuration options related to the man page output
+#---------------------------------------------------------------------------
+GENERATE_MAN = NO
+MAN_OUTPUT = man
+MAN_EXTENSION = .3
+MAN_LINKS = NO
+#---------------------------------------------------------------------------
+# configuration options related to the XML output
+#---------------------------------------------------------------------------
+GENERATE_XML = YES
+XML_OUTPUT = xml
+XML_SCHEMA =
+XML_DTD =
+XML_PROGRAMLISTING = YES
+#---------------------------------------------------------------------------
+# configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+GENERATE_AUTOGEN_DEF = NO
+#---------------------------------------------------------------------------
+# configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+GENERATE_PERLMOD = NO
+PERLMOD_LATEX = NO
+PERLMOD_PRETTY = YES
+PERLMOD_MAKEVAR_PREFIX =
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor
+#---------------------------------------------------------------------------
+ENABLE_PREPROCESSING = YES
+MACRO_EXPANSION = YES
+EXPAND_ONLY_PREDEF = YES
+SEARCH_INCLUDES = NO
+INCLUDE_PATH =
+INCLUDE_FILE_PATTERNS =
+PREDEFINED = DOXYGEN_SHOULD_SKIP_THIS \
+ GTKMM_USING_STD(x)= \
+ GTKMM_API \
+ GTKMM_ATKMM_ENABLED \
+ GLIBMM_VFUNCS_ENABLED \
+ GLIBMM_PROPERTIES_ENABLED \
+ GLIBMM_EXCEPTIONS_ENABLED \
+ GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
+EXPAND_AS_DEFINED =
+SKIP_FUNCTION_MACROS = YES
+#---------------------------------------------------------------------------
+# Configuration::additions related to external references
+#---------------------------------------------------------------------------
+TAGFILES =
+GENERATE_TAGFILE =
+ALLEXTERNALS = YES
+EXTERNAL_GROUPS = YES
+PERL_PATH = /usr/bin/perl
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool
+#---------------------------------------------------------------------------
+CLASS_DIAGRAMS = YES
+MSCGEN_PATH =
+HIDE_UNDOC_RELATIONS = NO
+HAVE_DOT = YES
+CLASS_GRAPH = YES
+COLLABORATION_GRAPH = NO
+GROUP_GRAPHS = YES
+UML_LOOK = NO
+TEMPLATE_RELATIONS = NO
+INCLUDE_GRAPH = NO
+INCLUDED_BY_GRAPH = NO
+CALL_GRAPH = NO
+CALLER_GRAPH = NO
+GRAPHICAL_HIERARCHY = YES
+DIRECTORY_GRAPH = YES
+DOT_IMAGE_FORMAT = png
+DOT_PATH =
+DOTFILE_DIRS =
+DOT_GRAPH_MAX_NODES = 50
+MAX_DOT_GRAPH_DEPTH = 0
+DOT_TRANSPARENT = NO
+DOT_MULTI_TARGETS = NO
+GENERATE_LEGEND = YES
+DOT_CLEANUP = YES
+#---------------------------------------------------------------------------
+# Configuration::additions related to the search engine
+#---------------------------------------------------------------------------
+SEARCHENGINE = NO
Modified: trunk/regression_tests/Makefile.am
==============================================================================
--- trunk/regression_tests/Makefile.am (original)
+++ trunk/regression_tests/Makefile.am Tue Apr 29 14:33:34 2008
@@ -10,8 +10,11 @@
-DGLOM_EXAMPLES_DIR=\""$(glom_examples_dir)"\" \
-DGLOM_ICON_DIR=\""$(glom_icon_dir)"\"
-noinst_PROGRAMS = test_parsing_time
+noinst_PROGRAMS = test_parsing_time test_signal_reemit
test_parsing_time_SOURCES = test_parsing_time.cc
test_parsing_time_LDADD = $(GLOM_LIBS) $(top_builddir)/glom/libglom/libglom.la
+test_signal_reemit_SOURCES = test_signal_reemit.cc
+test_signal_reemit_LDADD = $(GLOM_LIBS)
+
Added: trunk/regression_tests/test_signal_reemit.cc
==============================================================================
--- (empty file)
+++ trunk/regression_tests/test_signal_reemit.cc Tue Apr 29 14:33:34 2008
@@ -0,0 +1,35 @@
+#include <glom/signal_reemitter.h>
+#include <iostream>
+
+void on_reemit_void()
+{
+ std::cout << "Success: signal_to_reemit_void was emitted when signal_first_emit was emitted." << std::endl;
+}
+
+void on_reemit_int(int param)
+{
+ std::cout << "Success: signal_to_reemit_int was emitted when signal_first_emit was emitted. param=" << param << std::endl;
+}
+
+int main()
+{
+ {
+ sigc::signal<void> signal_first_emit;
+ sigc::signal<void> signal_to_reemit;
+
+ Glom::signal_connect_for_reemit_0args(signal_first_emit, signal_to_reemit);
+ signal_to_reemit.connect( sigc::ptr_fun(&on_reemit_void) );
+
+ signal_first_emit.emit();
+ }
+
+ {
+ sigc::signal<void, int> signal_first_emit;
+ sigc::signal<void, int> signal_to_reemit;
+
+ Glom::signal_connect_for_reemit_1arg(signal_first_emit, signal_to_reemit);
+ signal_to_reemit.connect( sigc::ptr_fun(&on_reemit_int) );
+
+ signal_first_emit.emit(1);
+ }
+}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]