aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/table/e-table-sorter.c
Commit message (Collapse)AuthorAgeFilesLines
* Added e-table/e-table-sorting-utils.lo.Christopher James Lahey2001-02-241-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-02-23 Christopher James Lahey <clahey@ximian.com> * gal/Makefile.am (libgal_la_LIBADD): Added e-table/e-table-sorting-utils.lo. From gal/e-table/ChangeLog: 2001-02-23 Christopher James Lahey <clahey@ximian.com> * Makefile.am (libetable_la_SOURCES): Added e-table-sorting-utils.c. (libetableinclude_HEADERS): Added e-table-sorting-utils.h. * e-table-group-container.c: Implemented add_array method. Use add_array to implement add_all instead of using add. Did some general clean up. * e-table-group-leaf.c, e-table-group-leaf.h: Implemented add_array method. Changed everything to use an ETableSubset variable instead of an ETableSortedVariable. Implemented it as ETableSortedVariable if there's grouping involved and ETableSorted if there isn't. * e-table-group.c, e-table-group.h: Added add_array method. Added unused get_position code. * e-table-sorted-variable.c, e-table-sorted-variable.h: Moved a lot of the actual implementation of sorting to e-table-sorting-utils.c. Got rid of the signal handlers here since we weren't using them and ETableSubset has the proxy virtual methods. * e-table-sorted.c, e-table-sorted.h: Completely replaced these files with a variation on ETableSortedVariable that doesn't have the add methods and such but instead just mimics the source model's set of rows completely. * e-table-sorter.c, e-table-sorter.h: Added functions to get at the arrays here. * e-table-sorting-utils.c, e-table-sorting-utils.h: Utility functions for doing sorting. * e-table-subset-variable.c, e-table-subset-variable.h: Added add_array method. * e-table-subset.c, e-table-subset.h: Made it so that the signal hookups to the source model's signals are virtual methods. * e-table.c, e-table.h: Don't call add_all and add and remove type functions if not grouped. Don't rebuild for sort changes unless it was either grouped before or will be grouped now. svn path=/trunk/; revision=8374
* Add a missing gtk_object_ref.Dan Winship2001-02-091-0/+1
| | | | | | * e-table-sorter.c (ets_set_arg): Add a missing gtk_object_ref. svn path=/trunk/; revision=8118
* Make some private variables static in `ETableSorter'.Ettore Perazzoli2001-02-061-4/+4
| | | | svn path=/trunk/; revision=7982
* Rename from Helix Code -> XimianMiguel de Icaza2001-01-161-1/+1
| | | | svn path=/trunk/; revision=7520
* Fixed sorting. needs_sorting was getting set to 0 when sorted happens, butChristopher James Lahey2001-01-061-30/+2
| | | | | | | | | | | | 2001-01-06 Christopher James Lahey <clahey@helixcode.com> * e-table-sorter.c, e-table-sorter.h (ets_sort): Fixed sorting. needs_sorting was getting set to 0 when sorted happens, but needs_sorting tells you whether or not the sorter is sorted or not, not whether the sorting has happened. Documented the needs_sorting variable. svn path=/trunk/; revision=7281
* Set the minimum width of newly created children.Christopher James Lahey2000-12-191-3/+2
| | | | | | | | | | | | | | | | | | | | | 2000-12-19 Christopher James Lahey <clahey@helixcode.com> * e-table-group-container.c (etgc_add): Set the minimum width of newly created children. (e_table_group_container_construct): Use function e_table_header_get_column_by_col_idx instead of e_table_header_get_column since we're passing in a col_idx. * e-table-header.c, e-table-header.h: New function e_table_header_get_column_by_col_idx which searches for a column in the ETableHeader with a certain model column (col_idx). * e-table-sorted-variable.c (etsv_compare), (etsv_sort), e-table-sorter.c (ets_sort): Use function e_table_header_get_column_by_col_idx instead of e_table_header_get_column since we're passing in a col_idx. svn path=/trunk/; revision=7079
* cut&paste from e-table-sorted-variable.c and massage names a bit to makeChris Toshok2000-12-141-1/+208
| | | | | | | | | | | | | | 2000-12-13 Chris Toshok <toshok@helixcode.com> * e-table-sorter.c (qsort_callback_complex), (ets_sort_build_subset), (ets_sort_subset), (ets_sort_free_subset), (sort_groups_compare), (ets_sort_by_group): cut&paste from e-table-sorted-variable.c and massage names a bit to make sort group sorting work. (ets_sort): if the ETableModel has sort groups, sort using the sort group. svn path=/trunk/; revision=6975
* set "sort_info" on our sorter when we get a new sort_info to keep thingsChris Toshok2000-12-081-4/+56
| | | | | | | | | | | | | | | | | | | 2000-12-07 Chris Toshok <toshok@helixcode.com> * e-table.c (e_table_set_state_object): set "sort_info" on our sorter when we get a new sort_info to keep things in sync. * e-table-sorter.c (ets_set_arg): new function, allowing the setting of "sort_info". (ets_get_arg): new function, allowing the getting of "sort_info". (ets_class_init): fill in GtkObject::set_arg and get_arg. (ets_sort): set ets->needs_sorting to 0 so we don't sort unnecessarily. (e_table_sorter_model_to_sorted): we may have ets->backsorted (and should use it if we do) even if we didn't need to sort. (e_table_sorter_sorted_to_model): same, except ets->sorted. svn path=/trunk/; revision=6857
* Moved files, fixed header files and paths - FedericoFederico Mena Quintero2000-09-201-1/+1
| | | | svn path=/trunk/; revision=5513
* Fixed e-table #includes so that it would compile.Chris Lahey2000-09-181-1/+1
| | | | svn path=/trunk/; revision=5482
* Made it so that selection ranges work even if the table is using grouping.Christopher James Lahey2000-08-051-4/+6
| | | | | | | | | 2000-08-05 Christopher James Lahey <clahey@helixcode.com> * e-table-sorter.c: Made it so that selection ranges work even if the table is using grouping. svn path=/trunk/; revision=4547
* Made selection ranges work even if the table is sorted.Christopher James Lahey2000-08-051-0/+293
2000-08-05 Christopher James Lahey <clahey@helixcode.com> * Makefile.am, e-table-selection-model.c, e-table-selection-model.h, e-table.c, e-table.h: Made selection ranges work even if the table is sorted. * e-table-sorter.c, e-table-sorter.h: New files to help with making selection ranges work even if sorted. svn path=/trunk/; revision=4546