aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/table/e-table-memory-store.c
Commit message (Collapse)AuthorAgeFilesLines
* Fix excessive whitespace.Matthew Barnes2009-07-131-2/+0
|
* More code cleanup.Matthew Barnes2009-06-021-1/+1
|
* Prefer GLib basic types over C types.Matthew Barnes2009-05-291-71/+71
|
* Remove trailing whitespace, again.Matthew Barnes2009-05-291-1/+1
|
* Change License from GPL to LGPL. 2nd batch.Sankarasivasubramanian Pasupathilingam2008-09-031-16/+15
| | | | | | More changes to come. svn path=/trunk/; revision=36247
* updated novell copyright notices (left others alone)Jeffrey Stedfast2008-06-211-1/+1
| | | | svn path=/trunk/; revision=35665
* ** Fixes bug #534360Matthew Barnes2008-05-231-1/+1
| | | | | | | | | | | | 2008-05-22 Matthew Barnes <mbarnes@redhat.com> ** Fixes bug #534360 Migrate from deprecated GtkObject symbols to GObject equivalents. Touches over 150 files in all components; too many to list. svn path=/trunk/; revision=35526
* ** Remove trailing whitespace from source code.Matthew Barnes2007-11-151-7/+7
| | | | | | | | | 2007-11-14 Matthew Barnes <mbarnes@redhat.com> ** Remove trailing whitespace from source code. svn path=/trunk/; revision=34537
* Warning fixes: - NULL vs. 0 vs. FALSE - Mark som code staticKjartan Maraas2007-10-311-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | 2007-10-26 Kjartan Maraas <kmaraas@gnome.org> * e-cell-text.c: (ect_event), (_blink_scroll_timeout): * e-table-config.c: (do_sort_and_group_config_dialog), (do_fields_config_dialog): * e-table-group-container.c: (etgc_add_array), (etgc_get_focus_column), (etgc_get_cell_geometry), (etgc_set_property), (etgc_get_property), (etgc_class_init), (etgc_reflow), (etgc_init), (e_table_group_container_print_page), (e_table_group_container_height): * e-table-group.c: (e_table_group_get_focus_column): * e-table-header.c: (e_table_header_get_columns), (eth_set_size): * e-table-item.c: (eti_tree_unfreeze), (eti_draw), (find_cell), (_do_tooltip), (eti_event), (e_table_item_height): * e-table-memory-store.c: (etms_initialize_value), (etms_value_is_empty): * e-tree-model.c: (e_tree_model_new), (e_tree_model_node_find): Warning fixes: - NULL vs. 0 vs. FALSE - Mark som code static svn path=/trunk/; revision=34467
* Update FSF address in header comments (#469886). Patch from TobiasMatthew Barnes2007-09-021-2/+2
| | | | | | | | | | 2007-09-02 Matthew Barnes <mbarnes@redhat.com> * Update FSF address in header comments (#469886). Patch from Tobias Mueller. svn path=/trunk/; revision=34151
* Remove E_MAKE_TYPE macro.Hiroyuki Ikezoe2007-07-281-10/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-07-27 Hiroyuki Ikezoe <poincare@ikezoe.net> * e-util/e-util.h: Remove E_MAKE_TYPE macro. * e-util/e-bit-array.c: * e-util/e-sorter-array.c: * e-util/e-sorter.c: * e-util/e-text-event-processor-emacs-like.c: * e-util/e-text-event-processor.c: * widgets/menus/gal-define-views-dialog.c: * widgets/menus/gal-define-views-model.c: * widgets/menus/gal-view-collection.c: * widgets/menus/gal-view-etable.c: * widgets/menus/gal-view-factory-etable.c: * widgets/menus/gal-view-factory.c: * widgets/menus/gal-view-instance-save-as-dialog.c: * widgets/menus/gal-view-instance.c: * widgets/menus/gal-view-new-dialog.c: * widgets/menus/gal-view.c: * widgets/misc/e-canvas-background.c: * widgets/misc/e-canvas-vbox.c: * widgets/misc/e-canvas.c: * widgets/misc/e-printable.c: * widgets/misc/e-reflow-model.c: * widgets/misc/e-reflow.c: * widgets/misc/e-selection-model-array.c: * widgets/misc/e-selection-model-simple.c: * widgets/misc/e-selection-model.c: * widgets/table/e-cell-checkbox.c: * widgets/table/e-cell-combo.c: * widgets/table/e-cell-date.c: * widgets/table/e-cell-float.c: * widgets/table/e-cell-hbox.c: * widgets/table/e-cell-number.c: * widgets/table/e-cell-pixbuf.c: * widgets/table/e-cell-popup.c: * widgets/table/e-cell-progress.c: * widgets/table/e-cell-size.c: * widgets/table/e-cell-spin-button.c: * widgets/table/e-cell-text.c: * widgets/table/e-cell-toggle.c: * widgets/table/e-cell-tree.c: * widgets/table/e-cell-vbox.c: * widgets/table/e-cell.c: * widgets/table/e-table-click-to-add.c: * widgets/table/e-table-col.c: * widgets/table/e-table-column-specification.c: * widgets/table/e-table-column.c: * widgets/table/e-table-config-field.c: * widgets/table/e-table-config.c: * widgets/table/e-table-extras.c: * widgets/table/e-table-field-chooser-dialog.c: * widgets/table/e-table-field-chooser-item.c: * widgets/table/e-table-field-chooser.c: * widgets/table/e-table-group-container.c: * widgets/table/e-table-group-leaf.c: * widgets/table/e-table-group.c: * widgets/table/e-table-header-item.c: * widgets/table/e-table-header.c: * widgets/table/e-table-item.c: * widgets/table/e-table-memory-callbacks.c: * widgets/table/e-table-memory-store.c: * widgets/table/e-table-memory.c: * widgets/table/e-table-model.c: * widgets/table/e-table-one.c: * widgets/table/e-table-scrolled.c: * widgets/table/e-table-search.c: * widgets/table/e-table-selection-model.c: * widgets/table/e-table-simple.c: * widgets/table/e-table-sort-info.c: * widgets/table/e-table-sorted-variable.c: * widgets/table/e-table-sorted.c: * widgets/table/e-table-sorter.c: * widgets/table/e-table-specification.c: * widgets/table/e-table-state.c: * widgets/table/e-table-subset-variable.c: * widgets/table/e-table-subset.c: * widgets/table/e-table-without.c: * widgets/table/e-table.c: * widgets/table/e-tree-memory-callbacks.c: * widgets/table/e-tree-memory.c: * widgets/table/e-tree-model.c: * widgets/table/e-tree-scrolled.c: * widgets/table/e-tree-selection-model.c: * widgets/table/e-tree-simple.c: * widgets/table/e-tree-sorted-variable.c: * widgets/table/e-tree-sorted.c: * widgets/table/e-tree-table-adapter.c: * widgets/table/e-tree.c: * widgets/text/e-completion-callbacks.c: * widgets/text/e-completion-view.c: * widgets/text/e-completion.c: * widgets/text/e-entry.c: * widgets/text/e-table-text-model.c: * widgets/text/e-text-model-uri.c: * widgets/text/e-text-model.c: * widgets/text/e-text.c: Use G_DEFINE_TYPE instead of E_MAKE_TYPE. svn path=/trunk/; revision=33864
* Fixes bug #357970Matthew Barnes2006-12-041-2/+2
| | | | | | | | | | | | | | | | | | | | | 2006-12-04 Matthew Barnes <mbarnes@redhat.com> Fixes bug #357970 * e-cell-pixbuf.c: * e-cell-progress.c: * e-cell-text.c: * e-cell-toggle.c: * e-cell-tree.c: * e-table-col.c: * e-table-extras.c: * e-table-header-item.c: * e-table-header-utils.c: * e-table-item.c: * e-table-memory-store.c: Don't call deprecated GLib / GDK functions. svn path=/trunk/; revision=33049
* Retired GAL from Head. The relevant files have moved inside evolution.Kaushal Kumar2005-06-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-06-17 Kaushal Kumar <kakumar@novell.com> * Retired GAL from Head. The relevant files have moved inside evolution. Thanks to JP Rosevear for performing the cvs surgery. The files have been moved in the following order. evolution/e-util <- gal/gal/util evolution/a11y <- gal/gal/a11y evolution/a11y/e-table <- gal/gal/a11y/e-table evolution/a11y/e-text <- gal/gal/a11y/e-text evolution/widgets/table <- gal/gal/e-table evolution/widgets/text <- gal/gal/e-text evolution/widgets/misc <- gal/gal/widgets evolution/widgets/misc/pixmaps <- gal/gal/widgets/pixmaps evolution/widgets/menus <- gal/gal/menus Following is the summary of changes done to fix the build:- - New files added to cvs repository, - a11y/e-table/Makefile.am - a11y/e-text/Makefile.am - widgets/table/Makefile.am - widgets/text/Makefile.am - widgets/misc/pixmaps/Makefile.am - iconv-detect.h - iconv-detect.c - Updated configure.in. - Updated all the relevant Makefile.am files. - Updated the include paths to replace all gal references. - Updated the marshal list to suit gal files requirements. svn path=/trunk/; revision=29522
* Port to Windows, initial commit:Tor Lillqvist2005-04-291-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-04-29 Tor Lillqvist <tml@novell.com> Port to Windows, initial commit: * configure.in: Check for Win32, define Automake conditional OS_WIN32. Check for regexec() perhaps in separate -lregex, define REGEX_LIBS if so. Require glib-2.0 >= 2.6 (and thus also gtk+-2.0 >= 2.6) so that we can use the gstdio wrappers for full support of non-ASCII filenames on Win32. Don't use -D_REENTRANT on Win32, has ne special meaning. * gal.pc.in: Require gtk+-2.0 >= 2.6 also here for consistency. * gal-zip.in: New file, used to build zipfile format distribution of gal for Win32. * configure.in * Makefile.am: Add gal-zip(.in). * */Makefile.am * */*.c: Harmonize -I and #include conventions. (Of course, this hasn't anything to do with Windows porting as such, I just got carried away...) Use only -I$(top_srcdir). Use paths to gal headers staring with "gal", except for headers from the same directory as the .c file, which are included as such. Include all gal headers using doublequotes. Sort #includes and remove duplicates and obvious redundancies. Include config.h first without any HAVE_CONFIG_H, then system headers, then other GNOME lib headers, than gal's own headers. Just include gtk.h instead of separate gtk*.h headers. Don't include gi18n.h, include e-i18n.h to use e_gettext() consistently. * gal/Makefile.am: Use -no-undefined on Win32 so that libtool agrees to build a shared library. Because of the bidirectional dependency between libgal and libgal-a11y we can build libgal-a11y sanely as a shared library on Win32, so we don't install any separate libgal-a11y at all. So, on Win32, link the stuff that goes into libgal-a11y also into libgal. Link with REGEX_LIBS. * gal/a11y/Makefile.am: See above. Just build a dummy static libgal-a11y on Win32 (can't convince Automake not to build the library at all on one platform using Automake ifdef, apparently). Then (this is a gross hack) explicitly remove the library after installation in the install-data-local rule. * gal/e-table/Makefile.am * gal/e-table/e-table-config.c: Rename ETABLE_GLADEDIR to GAL_GLADEDIR for consistency. * gal/e-table/e-cell-date.c: No localtime_r() in Microsoft's C library, but its localtime() *is* thread-safe. * gal/e-table/e-cell-text.c * gal/e-table/e-cell-tree.c * gal/e-table/e-cell-vbox.c * gal/e-text/e-text.c * gal/widgets/e-unicode.c: Remove unnecessary inclusion of gdkx.h. * gal/e-table/e-cell-tree.c (ect_realize): Instead of the Xlib macro None (whose value is zero), use the corresponding zero-valued enums from the appropriate GDK type. * gal/e-table/e-table-config.c * gal/e-table/e-table-field-chooser.c * gal/menus/gal-define-views-dialog.c * gal/menus/gal-view-instance-save-as-dialog.c * gal/menus/gal-view-new-dialog.c * gal/widgets/e-categories-master-list-array.c * gal/widgets/e-categories-master-list-dialog.c * gal/widgets/e-categories.c: Use g_build_filename() to construct pathnames at run-time instead of compile-time. On Windows the macros GAL_GLADEDIR and GAL_IMAGESDIR expand to function calls, in order to support installing in a freely chosen location. * gal/e-table/e-table-item.c * gal/e-table/e-cell-vbox.c: Instrad of the Xlib GrabSuccess, use GDK_GRAB_SUCCESS (which has the same value). * gal/e-table/e-table-specification.c (e_table_specification_load_from_file) * gal/e-table/e-table.c (e_table_load_specification) * gal/e-table/e-tree-table-adapter.c (open_file) * gal/menus/gal-view-instance.c (load_current_view) * gal/menus/gal-view-instance.c (load_current_view): On Win32, convert filename to the locale character set before passing to xmlParseFile() which doesn't use UTF-8 filenames. Use gstdio wrappers. * gal/util/Makefile.am: Define GAL_PREFIX as $prefix. Define GAL_LOCALEDIR, GAL_GLADEDIR and GAL_IMAGESDIR also here for e-win32-reloc.c. Include e-win32-reloc.c on Win32. * gal/util/e-iconv.c (e_iconv_init): Use g_win32_getlocale() on Windows. * gal/util/e-util.c * gal/util/e-xml-utils.c: Use g_mkstemp() instead of non-portable mkstemp(). Use GLib pathname manipulation functions. Use gstdio wrappers. * gal/util/e-util-private.h: New file. Contains just Win32 bits for now that redefine the directory names from the Makefile as functions calls. * gal/util/e-win32-reloc.c: New file. Contains a minimal DllMain() and functions to support freely chosen installation location on Windows. * gal/util/e-xml-utils.c: No fsync() in the Microsoft C library. * gal/windgets/Makefile.am: Add -I$(top_srcdir)/gal for consistency with the sibling Makefile.am files. * gal/widgets/e-canvas.c: Instead of the Xlib AlreadyGrabbed, use GDK_GRAB_ALREADY_GRABBED. svn path=/trunk/; revision=29249
* (etms_finalize): CallEttore Perazzoli2002-11-271-1/+26
| | | | | | e_table_memory_store_clear(). svn path=/trunk/; revision=18937
* remove ref/unref G_OBJECT masks ditto ditto ditto ditto ditto ditto dittoMike Kestner2002-11-061-1/+1
| | | | | | | | | | | | | | | | 2002-11-05 Mike Kestner <mkestner@ximian.com> * e-cell-text.c : remove ref/unref G_OBJECT masks * e-table-extras.c : ditto * e-table-header-item.c : ditto * e-table-item.c : ditto * e-table-memory-store.c : ditto * e-table-one.c : ditto * e-tree-sorted.c : ditto * e-tree-table-adapter.c : ditto * e-tree.c : ditto svn path=/trunk/; revision=18572
* use GObject api for models GObjectify GObjectify GObjectify GObjectifyMike Kestner2002-11-051-31/+28
| | | | | | | | | | | | | | | | | | | | | 2002-11-05 Mike Kestner <mkestner@ximian.com> * e-table-item.c : use GObject api for models * e-table-memory-callbacks.[ch] : GObjectify * e-table-memory-store.[ch] : GObjectify * e-table-memory.[ch] : GObjectify * e-table-model.[ch] : GObjectify * e-table-one.[ch] : GObjectify * e-table-simple.[ch] : GObjectify * e-tree-memory.[ch] : GObjectify * e-tree-model.[ch] : GObjectify * e-tree-selection-model.c : use GObject api for models * e-tree-simple.[ch] : GObjectify * e-tree-sorted.[ch] : GObjectify * e-tree-table-adapter.[ch] : GObjectify * e-tree.c : use GObject api for models svn path=/trunk/; revision=18553
* add prototypes for the _change* functions.Chris Toshok2002-10-251-19/+144
| | | | | | | | | | | | | | | | | | 2002-10-24 Chris Toshok <toshok@ximian.com> * e-table-memory-store.h: add prototypes for the _change* functions. * e-table-memory-store.c (e_table_memory_store_change_array): new function, mostly c&p from _insert_array. (e_table_memory_store_change): new function, mostly c&p from _insert. (e_table_memory_store_change_adopt_array): new function, mostly c&p from _insert_adopt_array. (e_table_memory_store_change_adopt): new function, mostly c&p from _insert_adopt. svn path=/trunk/; revision=18432
* Added this function that lets you specify the translation domain.Christopher James Lahey2002-05-031-1/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-05-02 Christopher James Lahey <clahey@ximian.com> * gal/widgets/e-popup-menu.c, gal/widgets/e-popup-menu.h (e_popup_menu_create_with_domain): Added this function that lets you specify the translation domain. From gal/e-table/ChangeLog: 2002-05-02 Christopher James Lahey <clahey@ximian.com> * e-table-click-to-add.c (finish_editing): Add horizontal dividers here too. * e-table-config.c (create_global_store): Translate column headers here. * e-table-header-item.c (ethi_header_context_menu): Use e_popup_menu_create_with_domain here. * e-table-header-utils.c (e_table_header_draw_button): Translate from utf8 here before drawing. * e-table-memory-store.c, e-table-memory-store.h (e_table_memory_store_insert_adopt_array): Changed the name of this function from e_table_memory_store_insert_adopt. (e_table_memory_store_insert_adopt): Added this function which takes a ... list. * e-table-utils.c (et_col_spec_to_col): Translate column titles to utf8 here. svn path=/trunk/; revision=16668
* Added calls to e_table_model_pre_change here so that the ETableItemChristopher James Lahey2002-04-261-0/+4
| | | | | | | | | | | 2002-04-26 Christopher James Lahey <clahey@ximian.com> * e-table-memory-store.c (e_table_memory_store_adopt_value_at, etms_set_value_at): Added calls to e_table_model_pre_change here so that the ETableItem doesn't unfreeze more times than it freezes. svn path=/trunk/; revision=16593
* Bumped version number to 0.19.99.14.Christopher James Lahey2002-04-231-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-04-22 Christopher James Lahey <clahey@ximian.com> * configure.in: Bumped version number to 0.19.99.14. * gal/widgets/e-popup-menu.c, gal/widgets/e-popup-menu.h (e_popup_menu_copy_1, e_popup_menu_free_1, e_popup_menu_copy, e_popup_menu_free): Added these functions From gal/e-table/ChangeLog: 2002-04-22 Christopher James Lahey <clahey@ximian.com> * e-table-memory-store.c, e-table-memory-store.h: Renamed the insert functions in this class to make a bit more sense. From gal/menus/ChangeLog: 2002-04-22 Christopher James Lahey <clahey@ximian.com> * gal-view-instance.c, gal-view-instance.h (gal_view_instance_get_popup_menu, gal_view_instance_free_popup_menu): Added these functions. Used to add a current view menu to your popup menus. From gal/shortcut-bar/ChangeLog: 2002-04-22 Christopher James Lahey <clahey@ximian.com> * e-icon-bar.c (e_icon_bar_drag_motion): Removed an unused variable. svn path=/trunk/; revision=16559
* Call the parent function after doing all the internal work so that whenChristopher James Lahey2002-03-261-9/+9
| | | | | | | | | | | 2002-03-25 Christopher James Lahey <clahey@ximian.com> * e-table-memory-store.c (e_table_memory_store_insert, e_table_memory_store_insert_adopt, e_table_memory_store_remove): Call the parent function after doing all the internal work so that when the changed signal goes out, our work is already done. svn path=/trunk/; revision=16245
* Added support for E_TABLE_MEMORY_STORE_OBJECT which represents a columnChristopher James Lahey2002-03-131-2/+13
| | | | | | | | | | 2002-03-12 Christopher James Lahey <clahey@ximian.com> * e-table-memory-store.c, e-table-memory-store.h: Added support for E_TABLE_MEMORY_STORE_OBJECT which represents a column storing a GtkObject. svn path=/trunk/; revision=16132
* Give the correct height to the subcells instead of overlapping them.Christopher James Lahey2002-03-131-2/+4
| | | | | | | | | | | | | | | | | | | 2002-03-12 Christopher James Lahey <clahey@ximian.com> * e-cell-vbox.c (ecv_draw): Give the correct height to the subcells instead of overlapping them. * e-table-header.c, e-table-header.h (e_table_header_move, eth_calc_widths): Emit the dimension_changed signal with the width of the header. * e-table-memory-store.c (duplicate_value, etms_free_value): Handle NULL pixbufs here. * e-table.c, e-table.h: Connect to the dimension_changed signal and call set_header_width. Did a bit of refactoring here. svn path=/trunk/; revision=16128
* Added e-table-search.lo.Christopher James Lahey2002-03-121-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-03-12 Christopher James Lahey <clahey@ximian.com> * gal/Makefile.am (libgal_la_LIBADD): Added e-table-search.lo. * gal/util/e-util.c, gal/util/e-util.h (e_marshal_BOOL__STRING): Added this marshal function. From gal/e-table/ChangeLog: 2002-03-12 Christopher James Lahey <clahey@ximian.com> * Makefile.am (libetable_la_SOURCES): Added e-table-search.c. (libetableinclude_HEADERS): Added e-table-search.h. * e-cell.h: Added ETableSearchFun here. * e-table-col.h: Added search here. * e-table-column-specification.c, e-table-column-specification.h: Added search here. * e-table-extras.c, e-table-extras.h (e_table_extras_add_search): Added ETableSearchFuncs here. * e-table-memory-store.c (e_table_memory_store_insert, e_table_memory_store_insert_adopt): Handle row == -1 here. * e-table-search.c, e-table-search.h: New class to reusably handle the semantics of searching for a string. * e-table-simple.c, e-table-simple.h: Added a bunch of simple functions here for if your table is all strings. Should be reusable. * e-table-utils.c (et_col_spec_to_col): Added support for searches here. * e-table.c, e-table.h: Added an ETableSearch here. svn path=/trunk/; revision=16119
* Added this function to take a ... list of column data. The expected numberChristopher James Lahey2002-03-121-0/+20
| | | | | | | | | | | 2002-03-11 Christopher James Lahey <clahey@ximian.com> * e-table-memory-store.c (e_table_memory_store_insert_list): Added this function to take a ... list of column data. The expected number of parameters in the ... is the number of columns in the table. svn path=/trunk/; revision=16109
* Added a pixbuf column type.Christopher James Lahey2002-03-121-0/+12
| | | | | | | | | | | | | | 2002-03-11 Christopher James Lahey <clahey@ximian.com> * e-table-memory-store.c, e-table-memory-store.h (E_TABLE_MEMORY_STORE_PIXBUF): Added a pixbuf column type. * e-table-specification.c, e-table-specification.h: Added horizontal-resize attribute. * e-table.c, e-table.h: Handle horizontal_resize. svn path=/trunk/; revision=16108
* Added e-table-memory-store.lo.Christopher James Lahey2002-02-221-0/+363
2002-02-21 Christopher James Lahey <clahey@ximian.com> * gal/Makefile.am (libgal_la_LIBADD): Added e-table-memory-store.lo. From gal/e-table/ChangeLog: 2002-02-21 Christopher James Lahey <clahey@ximian.com> * Makefile.am (libetable_la_SOURCES): Added e-table-memory-store.c. (libetableinclude_HEADERS): Added e-table-memory-store.h. * e-table-config-no-group.glade, e-table-config.glade: Updated these. * e-table-config.c, e-table-config.h: Updated this to have a working field list editor. * e-table-memory-store.c, e-table-memory-store.h: New ETableModel that is a complete store of all the data in your table. No callbacks at all. * e-table-subset-variable.c, e-table-subset-variable.h (e_table_subset_variable_clear): Added this simple function * e-table-subset.c (etss_get_save_id): Made this return the row number g_strdup_printfed if the source model doesn't support save ids. 2002-02-20 Christopher James Lahey <clahey@ximian.com> * e-table-sorter.c, e-table-sorter.h: Connect to the model_rows_inserted, model_rows_deleted, and group_info_changed here. svn path=/trunk/; revision=15783