aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/table
Commit message (Collapse)AuthorAgeFilesLines
* Made keyboard focus navigation work across groups.Christopher James Lahey2000-02-245-4/+20
| | | | | | | | | | | | | | | | | | 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
* Made changing focus work.Christopher James Lahey2000-02-241-5/+5
| | | | | | | | 2000-02-24 Christopher James Lahey <clahey@helixcode.com> * e-table-item.c: Made changing focus work. svn path=/trunk/; revision=1916
* This were moved to widgets/e-text/ a while ago but never removed. TheyChristopher James Lahey2000-02-2428-387/+2005
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-02-24 Christopher James Lahey <clahey@helixcode.com> * widgets/e-text.c, widgets/e-text.h, e-text-event-processor.c, e-text-event-processor.h, e-text-event-processor-emacs-like.c, e-text-event-processor-emacs-like.h, e-text-event-processor-types.h: This were moved to widgets/e-text/ a while ago but never removed. They have now been removed. * widgets/e-text/e-text.c, widgets/e-text/e-text.h: Removed some warnings from this file. Made tooltips disappear when you're finished with them. * widgets/e-minicard/test-reflow.c, widgets/e-minicard/test-minicard.c, widgets/e-minicard/test-minicard-label.c: Commented out unused about_callback functions. * widgets/e-minicard/e-reflow.c: Made e-reflow pass an EFocus to its e-minicard children. * widgets/e-minicard/e-minicard.c: Made e-minicard take and return an EFocus for its "has_focus" argument. This makes shift-tab work properly. * widgets/e-minicard/e-minicard-label.c: Made e-minicard-label take and return an EFocus for its "has_focus" argument. Made the font that e-minicard-label uses only be allocated once. * e-util/e-canvas-utils.h: Fixed the comment at the top and added #ifndef __E_CANVAS_UTILS__. * e-util/Makefile.am: Added e-xml-utils.c and e-xml-utils.h. * e-util/e-xml-utils.h, e-util/e-xml-utils.c: Added files for some xml utilities. * e-util/e-util.h: Added type EFocus which describes which direction the focus will be coming from. in mail: 2000-02-24 Christopher James Lahey <clahey@helixcode.com> * message-list.c: Changed this to not use the "x" and "y" arguments to e-table-item. in widgets/e-table: 2000-02-24 Christopher James Lahey <clahey@helixcode.com> * e-table-subset-variable.c, e-table-subset-variable.h: A new model which is a subset, but you can add and remove rows. * test-table.c: Added a thaw method for use with the e-table-subset (emits model_changed.) Adapted to the changes to e_table_item. Properly parse headers. Adapted to the changes to e_table, including creating example xml spec data. * test-cols.c, test-check.c: Added a thaw method for use with the e-table-subset (emits model_changed.) Adapted to the changes to e_table_item. * e-table.c, e-table.h: Reworked e-table to use the ETable grouping system. The only difference for the interface is that instead of passing in a column_spec and a grouping_spec, you pass in a single string that is an xml format that includes both pieces of information. * e-table-subset.h: Added rules for emacs to do correct indentation. * e-table-subset.c: Implemented freezing. No signals are emitted while frozen and "model_changed" is emitted when thawed. * e-table-sorted.h: ETableSortedClass has ETableSubset as its parent object instead of ETableSubsetClass. Fixed this. * e-table-simple.c, e-table-simple.h: Implemented the thaw method. Use of simple now requires an extra argument (the thaw method.) * e-table-model.h, e-table-model.c: Added e_table_model_freeze and e_table_model_thaw. * e-table-item.h, e-table-item.c: Reworked this a bit to make it provide some things the new group system needed and to make inter-item keyboard focus work. Changed the external interface only in the list of arguments it recognizes and signals it emits. Instead of "x" and "y", you have to use e_canvas_item_move_absolute and instead of emitting a "height_changed" signal, it emits a "resize" signal. There's new "has_focus", "width", and "height" arguments and a function to get the currently focused column. * e-table-header-item.c: Got rid of some warnings here. Changed the * e-table-group-leaf.h, e-table-group-leaf.c, e-table-group-container.h, e-table-group-container.c: New types to make e_table_group work properly. * e-table-group.h, e-table-group.c: Completely reworked e-table grouping. e-table-group now uses a hierarchical structure. * e-cell.h: Added e_cell_print. This doesn't work yet. * e-cell.c: Made e_cell_realize exist. (It was improperly named e_cell_view_realize in the .c.) * e-cell-text.c: Made the blinking cursor disappear properly. * check-filled.xpm, check-empty.xpm: Made these const char *[] instead of char *[] to avoid compiler warnings. * Makefile.am: Added e-table-group-container.c, e-table-group-container.h, e-table-group-leaf.c, e-table-group-leaf.h, e-table-subset-variable.c, e-table-subset-variable.h. svn path=/trunk/; revision=1915
* 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
* make <alloca.h> inclusion conditional on HAVE_ALLOCA_HDan Winship2000-02-171-0/+2
| | | | svn path=/trunk/; revision=1820
* Check the ethi is actually the one being dragged. Prevents crashes whenIain Holmes2000-02-131-0/+14
| | | | | | | | | | | | | 2000-02-12 Iain Holmes <ih@csd.abdn.ac.uk> * e-table-header-item.c (ethi_drag_motion): Check the ethi is actually the one being dragged. Prevents crashes when trying to drag headeritems and there are multiple headeritems on the same canvas. (ethi_drag_end): Same. (ethi_drag_drop): Same. (ethi_drag_leave): Same. svn path=/trunk/; revision=1745
* Added test of sort arrows.Christopher James Lahey2000-02-124-21/+77
| | | | | | | | | | | | | 2000-02-11 Christopher James Lahey <clahey@helixcode.com> * test-check.c: Added test of sort arrows. * e-table-col.h, e-table-col.c: Added sort arrows for column headers (It doesn't actually sort. It just displays the arrows.) * e-table-header-item.c: Added display of arrows. svn path=/trunk/; revision=1743
* Test column header image.Christopher James Lahey2000-02-125-24/+90
| | | | | | | | | | | | | | 2000-02-11 Christopher James Lahey <clahey@helixcode.com> * clip.png: Test column header image. * test-check.c: Test pixbuf column headers. * e-table-col.h, e-table-col.c: Added pixbufs for column headers. * e-table-header-item.c (draw_button): Draw pixbuf column headers properly. svn path=/trunk/; revision=1739
* Add an editable argument to e_cell_text_new.Christopher James Lahey2000-02-125-9/+12
| | | | | | | | | | | | 2000-02-11 Christopher James Lahey <clahey@helixcode.com> * e-cell-text.h, e-cell-text.c: Add an editable argument to e_cell_text_new. * test-table.c, test-cols.c, test-check.c: Set the editable argument to e_cell_text_new. svn path=/trunk/; revision=1738
* Added reordering of columns.Christopher James Lahey2000-02-123-25/+70
| | | | | | | | | | | | 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
* Made space around text look right. Added a blinking cursor.Christopher James Lahey2000-02-121-61/+44
| | | | | | | | | 2000-02-11 Christopher James Lahey <clahey@helixcode.com> * e-cell-text.c: Made space around text look right. Added a blinking cursor. svn path=/trunk/; revision=1735
* Add nice assertion.Miguel de Icaza2000-02-112-2/+7
| | | | | | | | | 2000-02-11 Miguel de Icaza <miguel@gnu.org> * e-table-item.c (eti_header_structure_changed): Add nice assertion. svn path=/trunk/; revision=1733
* Handle button releases properly.Christopher James Lahey2000-02-102-3/+51
| | | | | | | | | | 2000-02-10 Christopher James Lahey <clahey@helixcode.com> * e-cell-text.c: Handle button releases properly. * e-table-header-item.c (ethi_start_drag): Added a drag icon. svn path=/trunk/; revision=1724
* Tweaked e-cell-text. Added a white background and tweaked the borders.Christopher James Lahey2000-02-101-6/+38
| | | | | | | | | 2000-02-09 Christopher James Lahey <clahey@helixcode.com> * e-cell-text.c: Tweaked e-cell-text. Added a white background and tweaked the borders. svn path=/trunk/; revision=1721
* Fixed some motion event bugs. (incorrect x and y.)Christopher James Lahey2000-02-083-74/+1444
| | | | | | | | | | | | | | | 2000-02-07 Christopher James Lahey <clahey@helixcode.com> * e-table-item.c (eti_event): Fixed some motion event bugs. (incorrect x and y.) * Makefile.am: Added includes for dependencies in evolution/widgets/libevolutionwidgets.a * e-cell-text.h, e-cell-text.c: Completely revamped using code from e-text.c and e-text.h. svn path=/trunk/; revision=1692
* Sync for Chris to useMiguel de Icaza2000-02-082-12/+18
| | | | svn path=/trunk/; revision=1689
* Setup the scroll region of the table canvas on size allocation.Miguel de Icaza2000-02-074-17/+30
| | | | | | | | | | | 2000-02-07 Miguel de Icaza <miguel@gnu.org> * e-table.c (e_table_setup_table): Setup the scroll region of the table canvas on size allocation. (e_table_canvas_realize): Do not set the scrollregion here. (e_table_canvas_init): Move root initialization here. svn path=/trunk/; revision=1683
* Add data field back in.Miguel de Icaza2000-01-291-0/+1
| | | | | | | | 2000-01-30 Miguel de Icaza <miguel@gnu.org> * e-table-simple.c (e_table_simple_new): Add data field back in. svn path=/trunk/; revision=1653
* Compilation touchups -miguelArturo Espinosa2000-01-0614-14/+14
| | | | svn path=/trunk/; revision=1537
* Lots of reorganization to get the Evolution shell to begin its life. ItArturo Espinosa2000-01-069-9/+9
| | | | | | | | | Lots of reorganization to get the Evolution shell to begin its life. It also includes a new evolution widget from Damon. Miguel. svn path=/trunk/; revision=1536
* Ok, the restructuring of ETableItem to compute its size without hacks isMiguel de Icaza1999-12-318-72/+174
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Ok, the restructuring of ETableItem to compute its size without hacks is in now. I am feeling better now. 1999-12-30 Miguel de Icaza <miguel@gnu.org> * e-table-item.c (eti_attach_cell_views): New routine, creates the cell views. (eti_detach_cell_views): Detaches the cell_views from the ETableItem. (eti_realize_cell_views, eti_unrealize_cell_views): Simplified to just do realize/unrealize notification. (eti_add_table_model): Only attach the cells when we have both the table model and the header model. * e-cell.h (ECellClass): Added two new methods: new_view and kill_view which drive the view process (instead of putting that on realize/unrealize). * e-cell.c: Adapt the code to use the new scheme for view instantiation. * e-cell-text.c, e-cell-toggle.c: Adapted to the new class changes. svn path=/trunk/; revision=1523
* Sync, does not work, dont try it, just backing up -miguelArturo Espinosa1999-12-2810-183/+486
| | | | svn path=/trunk/; revision=1521
* Fix before tripArturo Espinosa1999-12-139-134/+198
| | | | svn path=/trunk/; revision=1485
* Works with GnomeCanvasGroups -miguelArturo Espinosa1999-12-134-27/+73
| | | | svn path=/trunk/; revision=1484
* Missing fileArturo Espinosa1999-12-131-0/+4
| | | | svn path=/trunk/; revision=1482
* More work. We now have the basics for nesting working, now we need all theArturo Espinosa1999-12-1219-70/+694
| | | | | | | | | | | | | | 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
* Add missing filesArturo Espinosa1999-12-113-0/+54
| | | | svn path=/trunk/; revision=1480
* fix this routine.Miguel de Icaza1999-12-1016-157/+509
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-0312-84/+21
| | | | | | | | | | | | | | | | | | | | | 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
* Fix it correctly -miguelArturo Espinosa1999-12-021-5/+2
| | | | svn path=/trunk/; revision=1452
* Keep track of the originally allocated piece of code.Miguel de Icaza1999-12-021-5/+7
| | | | | | | | | 1999-12-01 Miguel de Icaza <miguel@gnu.org> * e-cell-text.c (ect_draw): Keep track of the originally allocated piece of code. svn path=/trunk/; revision=1451
* Removed change cursor from here.Miguel de Icaza1999-12-0211-29/+103
| | | | | | | | | | | | | | | | | | | | | | | | | | 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
* New images, the previous ones sucked. Thanks to Mark for his helpArturo Espinosa1999-12-012-31/+30
| | | | svn path=/trunk/; revision=1449
* Add missing filesArturo Espinosa1999-12-015-0/+624
| | | | svn path=/trunk/; revision=1448
* This one derives from e-cell-toggle.Miguel de Icaza1999-12-017-382/+78
| | | | | | | | | | | | | | | | | 1999-11-30 Miguel de Icaza <miguel@gnu.org> * e-cell-checkbox.c (e_cell_checkbox_new): This one derives from e-cell-toggle. * check-emtpy.xpm, check-filled.xpm: new files. * e-cell-toggle.c (etog_draw): Paint in white. If we have transparency enabled, do the nice alpha computation. * test-table.c, test-cols.c: new files; They implement the split tests. svn path=/trunk/; revision=1447
* New cell-toggle stuff compiles -miguelArturo Espinosa1999-11-305-14/+55
| | | | svn path=/trunk/; revision=1446
* New file. Implement a multi-state image toggle cell object.Miguel de Icaza1999-11-308-56/+649
| | | | | | | | | | | | | | | | | | | | | | | | | | | 1999-11-29 Miguel de Icaza <miguel@gnu.org> * e-cell-toggle.c, e-cell-toggle.h: New file. Implement a multi-state image toggle cell object. * e-cell-text.c (ect_leave_edit): Handle the case of us calling leave edit manually. (ect_stop_editing): Leave manually editing here. (ect_draw): Add one pixel to the border for left and right; Handle off-screen cursor (must be improved). (ect_edit_select_all): New function. (ect_event): Select all text on editing start * e-table-item.c (eti_event): Map mouse events and dispatch them. (eti_event): Add spreadsheet mode for editing; Enter editing only with visual characters; Leave editing mode when a different row has been selected. (eti_get_height): Fix the computation for this; Fix logic for the length_threshold. (eti_draw): Add borders on all sides of the box; Only draw focus if the cell is not being edited. svn path=/trunk/; revision=1445
* Small cosmetic fixArturo Espinosa1999-11-292-7/+36
| | | | svn path=/trunk/; revision=1443
* New methods; They implement editing.Miguel de Icaza1999-11-2910-98/+425
| | | | | | | | | | | | | | | | | 1999-11-28 Miguel de Icaza <miguel@gnu.org> * e-cell-text.c (ect_enter_edit, ect_leave_edit): New methods; They implement editing. * e-cell.h: new methods: enter_edit, leave_edit * e-table-model.h (set_value_at): make val argument const. * e-table-simple.c (simple_set_value_at): Make value argument const; * e-table-item.c (eti_set_arg): Add new mode: draw_focus; svn path=/trunk/; revision=1442
* beginning of the keyboard navigation.Miguel de Icaza1999-11-2813-147/+465
| | | | | | | | | | | | | | | | | | | | | | | | 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
* More work.Arturo Espinosa1999-11-273-24/+122
| | | | | | | | | | More work. I got a few offsets wrong; Event handling is broken, but I am happier Mmiguel. svn path=/trunk/; revision=1440
* Compute height using the ecell methods here. (eti_get_height): new methodMiguel de Icaza1999-11-2711-77/+194
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1999-11-26 Miguel de Icaza <miguel@gnu.org> * e-table-item.c (eti_realize): Compute height using the ecell methods here. (eti_get_height): new method to compute dimensions. * e-cursors.c: use a different cursor. * e-table-model.h: kill height and row_height methods. * e-cell.c (ec_height): New method. * e-cell-text.c (ect_realize): Load the font from the canvas. (ect_draw): New color setup. Center in the row. (ect_height): Implement new method. 1999-11-26 Michael Meeks <mmeeks@gnu.org> * ROADMAP.e-table: small spelling/typo fixes. 1999-11-25 Miguel de Icaza <miguel@gnu.org> * e-table-item.c (eti_event): Work on mouse-button event svn path=/trunk/; revision=1439
* It draws the data. WEEEEEEEEE! MiguelArturo Espinosa1999-11-259-54/+83
| | | | svn path=/trunk/; revision=1435
* Realize cells.Miguel de Icaza1999-11-2519-225/+551
| | | | | | | | | | | | | | | | | | | | | | | 1999-11-25 Miguel de Icaza <miguel@gnu.org> * e-table-header-item.c (ethi_realize): Realize cells. * e-table-item.c (eti_header_dim_changed): redraw before and after. * e-table-header-item.c (ethi_event): Add continuous resizing. 1999-11-24 Miguel de Icaza <miguel@gnu.org> * e-table-subset.h, e-table-subset.c: New files, used to implement subset tables. * e-table-sorted.h, e-table-sorted.c: Now they derive from e-table-subset. * e-cell.c, e-cell.h: realize method now return per view instance data. svn path=/trunk/; revision=1434
* More stuffArturo Espinosa1999-11-225-0/+156
| | | | svn path=/trunk/; revision=1428
* WOOOOHOOOOOoO! It took me quite a while to figure this one out. Fixed.Miguel de Icaza1999-11-211-1/+1
| | | | | | | | | 1999-11-20 Miguel de Icaza <miguel@gnu.org> * e-table-item.c (eti_draw): WOOOOHOOOOOoO! It took me quite a while to figure this one out. Fixed. svn path=/trunk/; revision=1426
* Compute width, keep track of it. (ethi_add_table_header): Monitor changesMiguel de Icaza1999-11-215-32/+121
| | | | | | | | | | | | | | | | | | | | 1999-11-20 Miguel de Icaza <miguel@gnu.org> * e-table-header-item.c (ethi_set_arg): Compute width, keep track of it. (ethi_add_table_header): Monitor changes to the Header model; Queue updates. (ethi_draw): Fix the redraw logic here. * table-test.c (main): Change the sample code, so we can better debug this. * e-table-item.c (eti_header_structure_changed): Keep track of width; (eti_header_dim_changed): ditto. (eti_draw): Many redraw fixes. svn path=/trunk/; revision=1425
* more stuff -migArturo Espinosa1999-11-201-2/+35
| | | | svn path=/trunk/; revision=1424
* .cvsignoreArturo Espinosa1999-11-191-0/+1
| | | | svn path=/trunk/; revision=1423
* New files -migArturo Espinosa1999-11-192-0/+99
| | | | svn path=/trunk/; revision=1422
* Finish implementing e-table-sorted -migArturo Espinosa1999-11-191-0/+66
| | | | svn path=/trunk/; revision=1421
* More work -migArturo Espinosa1999-11-196-11/+100
| | | | svn path=/trunk/; revision=1420
* New E-table-item.[ch] -migArturo Espinosa1999-11-1913-12/+328
| | | | svn path=/trunk/; revision=1419
* Add resizing capabilities.Miguel de Icaza1999-11-169-38/+447
| | | | | | | | | | | | | | | | | | | | | 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-1214-62/+461
| | | | svn path=/trunk/; revision=1383
* StuffArturo Espinosa1999-11-1011-77/+711
| | | | svn path=/trunk/; revision=1378
* Here is my initial Evolution work: message composition widget and someEttore Perazzoli1999-11-061-0/+6
| | | | | | installation fixes for Camel. svn path=/trunk/; revision=1369
* Added my widgets stuff -miguelArturo Espinosa1999-11-0210-0/+984
svn path=/trunk/; revision=1364