aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/table/e-table-header.c
Commit message (Collapse)AuthorAgeFilesLines
* Submit a signal even if there are no extras.Christopher James Lahey2001-04-201-8/+8
| | | | | | | | | | | | | | | 2001-04-19 Christopher James Lahey <clahey@ximian.com> * e-table-header.c (eth_calc_widths): Submit a signal even if there are no extras. * e-table-item.c (eti_request_column_width): Don't compute widths if our cells aren't realized yet. * e-tree.c: Call e_table_header_update_horizontal whenever our data changes. svn path=/trunk/; revision=9465
* Fix memory leakDan Winship2001-04-141-1/+2
| | | | | | * e-table-header.c (eth_destroy): Fix memory leak svn path=/trunk/; revision=9301
* Changed resizeable to resizable in ETableCol for consistency.Christopher James Lahey2001-04-101-7/+7
| | | | | | | | | | | | | | | 2001-04-09 Christopher James Lahey <clahey@ximian.com> * e-table-col.c, e-table-col.h, e-table-header-item.c, e-table-header.c, e-table-item.c: Changed resizeable to resizable in ETableCol for consistency. * e-tree-selection-model.c (etsm_row_of_node): Return -1 here if the path isn't found. (etsm_sorted_node_changed): If cursor_row is -1, make cursor_col -1 as well. svn path=/trunk/; revision=9211
* This new function updates the minimum width of all of the columns based onChristopher James Lahey2001-02-141-1/+20
| | | | | | | | | | | | | | | 2001-02-13 Christopher James Lahey <clahey@ximian.com> * e-table-header.c, e-table-header.h (e_table_header_update_horizontal): This new function updates the minimum width of all of the columns based on the data contained in that column. * e-table.c, e-table.h (changed_idle): Added a horizontal_scrolling field. Call e_table_header_update_horizontal if the model changes at all and horizontal_scrolling is set to TRUE. svn path=/trunk/; revision=8214
* Rename from Helix Code -> XimianMiguel de Icaza2001-01-161-1/+1
| | | | svn path=/trunk/; revision=7520
* Set the minimum width of newly created children.Christopher James Lahey2000-12-191-0/+23
| | | | | | | | | | | | | | | | | | | | | 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
* New function to calculate the extra pixels per column header.Christopher James Lahey2000-12-141-14/+26
| | | | | | | | | | | | | | | | | | | | | | 2000-12-13 Christopher James Lahey <clahey@helixcode.com> * e-table-header-utils.c, e-table-header-utils.h (e_table_header_width_extras): New function to calculate the extra pixels per column header. * e-table-header.c, e-table-header.h: Added a "width_extras" argument which is used to calculate the correct minimum widths for each column header after adding padding. * e-table-item.c (_do_tooltip): Destroy the old tooltip window when creating the new one. (eti_event): Destroy the old tooltip window if the person presses a key. Don't handle the tab key. * e-table.c (et_state_to_header): Set the ETableHeader's width_extras argument. svn path=/trunk/; revision=6978
* Work to get a Gtk-Doc infrastructure in place for Gal.Miguel de Icaza2000-12-091-1/+1
| | | | | | | | Work to get a Gtk-Doc infrastructure in place for Gal. Miguel. svn path=/trunk/; revision=6883
* Fixed warning in compute_elision_length.Christopher James Lahey2000-12-071-16/+0
| | | | | | | | | | | 2000-12-06 Christopher James Lahey <clahey@helixcode.com> * e-table-header-utils.c: Fixed warning in compute_elision_length. * e-table-header.c, e-table-header.h: Removed e_table_header_selection_ok method here. svn path=/trunk/; revision=6810
* inline documentation added.Miguel de Icaza2000-11-251-130/+244
| | | | | | | | | | | | 2000-11-24 Miguel de Icaza <miguel@helixcode.com> * e-table-header.c: inline documentation added. * e-table-col.c Added inline documentation. * e-table-model.c: Added some inline documentation. svn path=/trunk/; revision=6664
* Fix some crashes Make double clicking on the header dividers automaticallyIain Holmes2000-09-151-0/+8
| | | | | | | | | | | Fix some crashes Make double clicking on the header dividers automatically size the header to it's best fit. When dragging onto the header check the dragged item is a header object. Check the column is resizeable before setting the cursor to <-> Use the font and themes to draw the table and items. svn path=/trunk/; revision=5438
* Added some g_return_if_fails and g_return_val_if_fails.Christopher James Lahey2000-08-261-12/+20
| | | | | | | | | | 2000-08-25 Christopher James Lahey <clahey@helixcode.com> * e-table-col.c, e-table-config.c, e-table-header.c, e-table-text-model.c: Added some g_return_if_fails and g_return_val_if_fails. svn path=/trunk/; revision=5056
* Remove the idle handler before destroying the data it operates on.Dan Winship2000-07-291-0/+2
| | | | | | | * e-table-header.c (eth_destroy): Remove the idle handler before destroying the data it operates on. svn path=/trunk/; revision=4407
* Added "table_selection_model" argument. Removed foreach function andChristopher James Lahey2000-07-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-07-26 Christopher James Lahey <clahey@helixcode.com> * e-table-group-container.c, e-table-group-container.h, e-table-group-leaf.c, e-table-group-leaf.h: Added "table_selection_model" argument. Removed foreach function and selection notification. * e-table-group.c, e-table-group.h: Removed foreach function and selection notification. * e-table-header.c: Fixed header width calculation to include the last column. * e-table-item.c, e-table-item.h: Fixed this to use the new selection model. * e-table-scrolled.c, e-table-scrolled.h: Removed selection notification. * e-table-selection-model.c, e-table-selection-model.h: Finished notification signals and fixed a bunch of bit manipulations. Implemented do_something method. * e-table.c, e-table.h: Create an ETableSelectionModel and use it properly. svn path=/trunk/; revision=4363
* Changed this to move the cell to the nearest edge instead of to the leftChristopher James Lahey2000-06-221-1/+1
| | | | | | | | | | | | 2000-06-21 Christopher James Lahey <clahey@helixcode.com> * e-table-header-item.c: Changed this to move the cell to the nearest edge instead of to the left of the column it's over. * e-table-header.c: Made target_index equal to eti->col_count be a valid parameter to e_table_header_move. svn path=/trunk/; revision=3683
* Made moving columns to the right work properly.Christopher James Lahey2000-06-221-0/+3
| | | | | | | | | 2000-06-21 Christopher James Lahey <clahey@helixcode.com> * e-table-header.c: Made moving columns to the right work properly. svn path=/trunk/; revision=3681
* Made "drawgrid", "drawfocus", "spreadsheet", and "length_threshold"Christopher James Lahey2000-05-271-16/+13
| | | | | | | | | | | | | | 2000-05-26 Christopher James Lahey <clahey@helixcode.com> * e-table-group-container.c, e-table-group-container.h, e-table-group-leaf.c, e-table-group-leaf.h, e-table.c, e-table.h: Made "drawgrid", "drawfocus", "spreadsheet", and "length_threshold" arguments set from the ETable effect all the end ETableItems. * e-table-header.c: Made column resize a bit less bumpy. svn path=/trunk/; revision=3223
* Account for extra pixel at right end of ETable.Christopher James Lahey2000-05-261-2/+4
| | | | | | | | | | | | | 2000-05-25 Christopher James Lahey <clahey@helixcode.com> * e-table-header.c: Account for extra pixel at right end of ETable. * e-table-item.c: Make grid less intrusive. * e-table.c: Make scrollbars disappear when appropriate. svn path=/trunk/; revision=3206
* Fixed a FIXME comment.Christopher James Lahey2000-05-161-25/+97
| | | | | | | | | | | | | | | | | | 2000-05-16 Christopher James Lahey <clahey@helixcode.com> * e-table-sorted-variable.c: Fixed a FIXME comment. * e-table-header.c, e-table-header.h: Added code to put off size calculation to the idle loop. Added code to not resize columns with 0 expansion. Removed the set_width function; it's been replaced with a Gtk+ arg. * Makefile.am: Added e-table-defines.h to the Makefile.am. * e-table-defines.h: A new file containing some #defines for use in ETable. svn path=/trunk/; revision=3077
* From widgets/e-table/ChangeLogChristopher James Lahey2000-05-141-140/+253
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-05-14 Christopher James Lahey <clahey@helixcode.com> * Implemented the feature where the ETable columns automatically fill the given space. * e-cell-text.c, e-cell-text.h: Moved #include e-text-event-processor.h from the .h to the .c. * e-table-col.c, e-table-col.h: Added an expansion variable, and made it so that width isn't set by the programmer but instead by the e-table-header. * e-table-example-1.c, e-table-example-2.c, e-table-size-test.c, test-check.c, test-cols.c, test-table.c: Fixed to handle new ETable column resizing. * e-table-group-container.c, e-table-group-container.h, e-table-group-leaf.c, e-table-group-leaf.h, e-table-group.c, e-table-group.h, e-table-item.c, e-table-item.h: Fixed these to do a proper canvas reflow/update loop. Changed them to take a minimum width and return a width and a height. * e-table-header-item.c, e-table-header-item.h: Made this so that it depends on e-table-header.c for deciding the actual size of columns during resize (it was making incorrect decisions on its own.) * e-table-header.c, e-table-header.h: Changed this to make sure that the sum of the widths of the columns was always as close as possible to the width of the window. This is done by taking a full width and having each of the columns have an "expansion" field. This field is what makes each column have approximately the same portion of its part of the screen that it used to. * e-table.c: Changed this to set the width on the ETableHeader as well as set the proper minimum width on the ETableGroup and get the width and height it reports. From addressbook/ChangeLog 2000-05-14 Christopher James Lahey <clahey@helixcode.com> * backend/ebook/Makefile.am: Added libeutil for e-card's support for categories. * backend/ebook/e-card-list.c, backend/ebook/e-card-list.h: Added a function to get the length. * backend/ebook/e-card.c, backend/ebook/e-card.h: Added categories support (accessible either as "categories" or "category_list".) * contact-editor/Makefile.am: Added e-table and all of the categories files. * contact-editor/categories.glade, contact-editor/categories-strings.h, contact-editor/e-contact-editor-categories.c, contact-editor/e-contact-editor-categories.h: * contact-editor/contact-editor.glade, contact-editor/e-contact-editor-strings.h: Rearranged this dialog. * contact-editor/e-contact-editor.c: Rearranged dialog a bit. Added opening of categories dialog. * gui/component/Makefile.am: Rearranged libraries so that libetable would be available for the contact editor categories dialog. * gui/component/addressbook.c: Fix for new ETable resizing. Make contact editor dialog resizable. * gui/minicard/Makefile.am: Added libetable contact editor categories dialog. * gui/minicard/e-minicard.c: Make contact editor dialog resizable. From mail/ChangeLog 2000-05-14 Christopher James Lahey <clahey@helixcode.com> * message-list.c: Updated to work with new ETable resizing. svn path=/trunk/; revision=3027
* Drop frozen count support from here. (ethi_start_drag): ditto.Miguel de Icaza2000-04-111-7/+0
| | | | | | | | | | | | 2000-04-10 Miguel de Icaza <miguel@gnu.org> * e-table-header-item.c (ethi_drag_motion): Drop frozen count support from here. (ethi_start_drag): ditto. * e-table-header.h: Kill frozen_count. svn path=/trunk/; revision=2385
* Fix indentationMiguel de Icaza2000-03-301-18/+18
| | | | svn path=/trunk/; revision=2252
* Fixed a crashing bug when you close an ETable.Christopher James Lahey2000-03-201-1/+1
| | | | | | | | | 2000-03-19 Christopher James Lahey <clahey@helixcode.com> * e-table-header.c: Fixed a crashing bug when you close an ETable. svn path=/trunk/; revision=2120
* Added support for the sorting info. The Etable creates a sort_info object,Christopher James Lahey2000-03-061-0/+131
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-03-05 Christopher James Lahey <clahey@helixcode.com> * e-table.c, e-table.h: Added support for the sorting info. The Etable creates a sort_info object, and then connects to the signals to rearrange the rows when the sort_info changes. It also passes the info object to the ETableHeaderItem. * e-table-model.c: Fixed a typo where ETableModel was written as ETableModle. * e-table-header.c, e-table-header.h: Added some code for sorting here, but it's not used. I don't think we want this code, but I wanted to check it in at least once so that it's not lost. * e-table-header-item.c, e-table-header-item.h: Added a "sort_info" argument to ETableHeaderItem. Added display of current sort settings. Added support for clicking to change the sort settings. * e-table-col.h: E_TABLE_COL_ARROW_NONE is marked as being = 0 since this is required in other places. (I think C defines this as being the case, but it's good to have the = 0 there so that it's obvious that it has to be first.) * TODO: Mark sorting as done. * e-table-sort-info.c, e-table-sort-info.h: New files for containing the xml grouping/sorting information and for sending signals on that information. * Makefile.am: Added e-table-sort-info.c and e-table-sort-info.h. svn path=/trunk/; revision=2060
* Test frozen columnsChristopher James Lahey2000-03-011-0/+7
| | | | | | | | | | | | | | | | | | | 2000-02-29 Christopher James Lahey <clahey@helixcode.com> * test-table.c: Test frozen columns * e-table.c: Make frozen columns available through the xml file. * e-table-header.c, e-table-header.h, e-table-header-item.c: Added frozen columns API to let you specify some number of leading columns as undraggable. * Makefile.am: Add e-table-example-1.c and e-table-example-2.c. * e-table-example-1.c, e-table-example-2.c: New files. A couple of examples of ETable use. svn path=/trunk/; revision=1993
* Fixed a couple of crash bugs.Christopher James Lahey2000-02-281-1/+1
| | | | | | | | | 2000-02-28 Christopher James Lahey <clahey@helixcode.com> * e-table-header-item.c, e-table-header.c: Fixed a couple of crash bugs. svn path=/trunk/; revision=1975
* Made keyboard focus navigation work across groups.Christopher James Lahey2000-02-241-3/+5
| | | | | | | | | | | | | | | | | | 2000-02-24 Christopher James Lahey <clahey@helixcode.com> * e-table-item.c: Made keyboard focus navigation work across groups. * e-table-header.c: Made e_table_header_col_diff not crash if you give it a column less than 0 (it truncates negative column values to 0.) * e-table-group.c, e-table-group.h: Added e_table_group_get_header to get the ETableHeader for this ETableGroup. * e-table-group-container.c: Made shift tab work. svn path=/trunk/; revision=1917
* Include <string.h>Miguel de Icaza2000-02-191-0/+1
| | | | | | | | 2000-02-18 Miguel de Icaza <miguel@nuclecu.unam.mx> * e-table-header.c: Include <string.h> svn path=/trunk/; revision=1842
* Added reordering of columns.Christopher James Lahey2000-02-121-3/+3
| | | | | | | | | | | | 2000-02-11 Christopher James Lahey <clahey@helixcode.com> * e-table-header-item.h, e-table-header-item.c: Added reordering of columns. * e-table-header.c: Fixed a couple of bugs in the move column and remove column functions. svn path=/trunk/; revision=1736
* Fix before tripArturo Espinosa1999-12-131-0/+3
| | | | svn path=/trunk/; revision=1485
* More work. We now have the basics for nesting working, now we need all theArturo Espinosa1999-12-121-1/+1
| | | | | | | | | | | | | | More work. We now have the basics for nesting working, now we need all the interactions done properly. I want to use a new GnomeCanvasItem for the nesting parent as well. DnD will have to be done with our own protocol to provide all the feedback we want to provide. Miguel svn path=/trunk/; revision=1481
* fix this routine.Miguel de Icaza1999-12-101-2/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1999-12-09 Miguel de Icaza <miguel@gnu.org> * e-table-header.c (e_table_header_col_diff): fix this routine. 1999-12-04 Miguel de Icaza <miguel@gnu.org> * e-table-header-item.c (ethi_event): Started drag and drop support. * e-table-item.c (eti_table_model_changed): The columns are controled by the Header, not by the TableModel. * e-table-header-item.c (ethi_draw): Fixed redraw logic to support arbitrary header positioning. * e-cell.h: Revamped e-cell interface. We now provide the model column and the view column to all methods (so that the methods can talk to the view and to the model at the same time). * e-table-item.c: Update to new API * e-cell-test.c: Update to new API 1999-12-03 Miguel de Icaza <miguel@gnu.org> * e-cell.c (e_cell_class_init): Provide emtpy methods for enter_edit, and leave_edit. * e-table-item.c: Killed draw cell. (eti_draw): Perform column mapping here. (e_table_item_leave_edit): ditto. (e_table_item_enter_edit): ditto. (eti_event): ditto. svn path=/trunk/; revision=1478
* fixed api.Miguel de Icaza1999-12-031-12/+5
| | | | | | | | | | | | | | | | | | | | | 1999-12-02 Miguel de Icaza <miguel@gnu.org> * e-table-header.c (e_table_header_index): fixed api. 1999-12-01 Miguel de Icaza <miguel@gnu.org> * test-cols.c (multi_cols_test): Update to simplified API. * test-check.c (check_test): ditto * test-table.c (table_browser_test): ditto * e-table-simple.c (e_table_simple_class_init): Kill column_name method. * e-table-model.h: Kill column_name method. * e-table-col.c (e_table_col_new): Instead of using a column name, use a column index. svn path=/trunk/; revision=1459
* Removed change cursor from here.Miguel de Icaza1999-12-021-4/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | 1999-12-01 Miguel de Icaza <miguel@gnu.org> * e-table-header-item.c (ethi_unrealize): Removed change cursor from here. * e-cell-text.c (ect_draw): Memory leak fix. * table-test.c (main): Enhance the demo to load sample.table automatically, to get memprof working. * e-table-header.c (eth_do_remove): Take an argument: do -remove. * e-table-header.c (e_table_header_add_column): Sink ETableCol to own the object. * e-table-col.h: Made ETableCol a GtkObject to make reference counting the lifecycle method for these objects. * e-table-col.c (e_table_col_destroy): New API call. * e-table-subset.c (e_table_subset_get_toplevel): New API call. svn path=/trunk/; revision=1450
* beginning of the keyboard navigation.Miguel de Icaza1999-11-281-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | 1999-11-27 Miguel de Icaza <miguel@gnu.org> * e-table-item.c (eti_event): beginning of the keyboard navigation. * e-table-model.c (e_table_model_row_changed): new function. (e_table_model_cell_changed): new function. (e_table_model_class_init): New signals. * e-table-item.c (eti_request_region_redraw): x2, y2 offsets were wrong. (eti_select): Repaint selected region. (eti_request_region_redraw): Fix range. (eti_draw): Correct offset computation here. (e_table_item_class_init): New method: row_selection, handles the selection. Now it implement GTK_SELECTION_SINGLE and GTK_SELECTION_MULTIPLE. Focusing and selection should be correct now. svn path=/trunk/; revision=1441
* New E-table-item.[ch] -migArturo Espinosa1999-11-191-1/+1
| | | | svn path=/trunk/; revision=1419
* Add resizing capabilities.Miguel de Icaza1999-11-161-1/+0
| | | | | | | | | | | | | | | | | | | | | 1999-11-14 Miguel de Icaza <miguel@gnu.org> * e-table-header-item.c (is_pointer_on_division): Add resizing capabilities. * e-table-sorted.c: Finish implementation. 1999-11-13 Miguel de Icaza <miguel@gnu.org> * e-table-sorted.c: Implement e-table-sorted object. 1999-11-12 Miguel de Icaza <miguel@gnu.org> * e-table-header-item.c: Make the thing configurable. * e-table-header-item.h: Add font field, location, height. svn path=/trunk/; revision=1388
* More table workArturo Espinosa1999-11-121-13/+31
| | | | svn path=/trunk/; revision=1383
* StuffArturo Espinosa1999-11-101-0/+299
svn path=/trunk/; revision=1378