aboutsummaryrefslogtreecommitdiffstats
path: root/widgets
Commit message (Collapse)AuthorAgeFilesLines
* Make `ETableState' a non-`GTK_FLOATING' object. Otherwise theEttore Perazzoli2001-03-211-0/+4
| | | | | | | reference counts are messed up, and a segfault occurs when destroying the ETable widget. svn path=/trunk/; revision=8867
* Added these classes.Christopher James Lahey2001-03-214-0/+641
| | | | | | | | | | | | | 2001-03-20 Christopher James Lahey <clahey@ximian.com> * e-table-memory-callbacks.c, e-table-memory-callbacks.h, e-table-memory.c, e-table-memory.h: Added these classes. * Makefile.am: Added e-table-memory-callbacks.c, e-table-memory-callbacks.h, e-table-memory.c, and e-table-memory.h. svn path=/trunk/; revision=8857
* Fixed a typo in the word horiztonal.Christopher James Lahey2001-03-211-1/+1
| | | | | | | | 2001-03-20 Christopher James Lahey <clahey@ximian.com> * e-table.c: Fixed a typo in the word horiztonal. svn path=/trunk/; revision=8852
* Bumped the version number to 05.99.9.Christopher James Lahey2001-03-2114-48/+109
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-03-20 Christopher James Lahey <clahey@ximian.com> * configure.in: Bumped the version number to 05.99.9. From gal/e-table/ChangeLog: 2001-03-20 Christopher James Lahey <clahey@ximian.com> * e-table-click-to-add.c: Turn on the vertical grid. * e-table-group-container.c, e-table-group-container.h, e-table-group-leaf.c, e-table-group-leaf.h, e-table-item.c, e-table-item.h: Replaced the "drawgrid" argument with "horizontal_draw_grid" and "vertical_draw_grid" arguments. * e-table-specification.c, e-table-specifcation: Replaced the draw_grid setting with the horizontal_draw_grid and vertical_draw_grid settings. If the draw-grid property is set in a ETableSpecification it is still obeyed and overrides the vertical-draw-grid and horizontal-draw-grid properties. * e-table.c, e-table.h, e-tree.c, e-tree.h: Deal with the horizontal_draw_grid and vertical_draw_grid changes. * e-tree-model.h: Added a missing include. svn path=/trunk/; revision=8846
* Upped the version number to 0.5.99.4.Christopher James Lahey2001-03-204-49/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-03-19 Christopher James Lahey <clahey@ximian.com> * configure.in: Upped the version number to 0.5.99.4. * Merged branch: 2001-03-18 Christopher James Lahey <clahey@ximian.com> * gal/widgets/e-selection-model.c, gal/widgets/e-selection-model.h: Added another semi-private function (e_selection_model_change_cursor.) 2001-03-18 Christopher James Lahey <clahey@ximian.com> * gal/widgets/e-selection-model.c, gal/widgets/e-selection-model.h: Added a couple of semi-private functions (e_selection_model_change_one_row and e_selection_model_confirm_row_count.) 2001-03-18 Christopher James Lahey <clahey@ximian.com> * tests/test-tree-1.c, tests/test-tree-3.c: Added arguments for e_tree_memory_callbacks_new of get_save_id and has_save_id to NULL. 2001-03-17 Christopher James Lahey <clahey@ximian.com> * gal/util/e-util.c (e_sort): Switched to just using qsort directly here. 2001-03-17 Christopher James Lahey <clahey@ximian.com> * gal/util/e-util.c, gal/util/e-util.h (e_bsearch, e_sort): Added e_sort and e_bsearch. They both take a closure. e_sort guarantees a stable sort. e_bsearch returns the range of matching elements including the position where an object would be if there are no matching elements. 2001-03-16 Christopher James Lahey <clahey@ximian.com> * gal/Makefile.am (libgal_la_LIBADD): Added e-tree-sorted.lo. 2001-03-14 Christopher James Lahey <clahey@ximian.com> * gal/widgets/e-selection-model-simple.c, gal/widgets/e-selection-model-simple.h: Replaced the methods insert_row and delete_row with insert_rows and delete_rows. * gal/widgets/e-selection-model.c, gal/widgets/e-selection-model.h: Replaced the methods insert_row and delete_row with insert_rows and delete_rows. 2001-03-08 Christopher James Lahey <clahey@ximian.com> * Makefile.am: Added e-table/e-table-utils.lo, e-table/e-tree-memory-callbacks.lo, e-table/e-tree-memory.lo, e-table/e-tree-scrolled.lo, e-table/e-tree-table-adapter.lo, and e-table/e-tree.lo. Removed e-table/e-tree-simple.lo. * gal/util/e-util.c, gal/util/e-util.h: Added a whole bunch of e_marshal functions for ETree. * tests/test-tree-1.c, tests/test-tree-3.c: Reworked these to use the new tree stuff. End of branch svn path=/trunk/; revision=8840
* Deal with proxy_node_changed being called on a different root node thanChristopher James Lahey2001-03-2036-2461/+7007
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-03-19 Christopher James Lahey <clahey@ximian.com> * e-tree-sorted.c (ets_proxy_node_changed): Deal with proxy_node_changed being called on a different root node than the one we have in our tree. * e-tree-table-adapter.c: Did some general clean up here. * Merged branch: 2001-03-19 Christopher James Lahey <clahey@ximian.com> * e-tree-sorted.c (find_child_path): Added this function to allow us to find paths that have been removed from the source. (ets_proxy_node_removed): Fixed the memmove here a bit. Call find_child_path. * e-tree-table-adapter.c (find_node): Check that the passed in path isn't NULL. 2001-03-19 Christopher James Lahey <clahey@ximian.com> * e-table-item.c (eti_reflow): Get width from header object instead of calculating it ourselves. * e-table-selection-model.c: Turn off selection saving since it's so slow. * e-table.c (e_table_set_state_object): Set the width of the newly created header object. * e-tree.c (e_tree_set_state_object): Set the width of the newly created header object. (tree_canvas_size_allocate): Don't bother setting the dimensions of the white background twice. 2001-03-18 Christopher James Lahey <clahey@ximian.com> * e-table-selection-model.c, e-table-selection-model.h: Made ETableSelectionModel save the cursor properly across changed signals if has_save_id is true. 2001-03-18 Christopher James Lahey <clahey@ximian.com> * e-table-selection-model.c, e-table-selection-model.h: Made ETableSelectionModel save selection properly across changed signals if has_save_id is true. * e-tree-memory.c: A couple of typos. 2001-03-18 Christopher James Lahey <clahey@ximian.com> * e-tree-memory.c, e-tree-sorted.c: Send pre_changes properly. 2001-03-18 Christopher James Lahey <clahey@ximian.com> * e-tree-table-adapter.c: Send pre_changes when performing set_expanded or root_node_set_visible. 2001-03-18 Christopher James Lahey <clahey@ximian.com> * e-tree-sorted.c (ets_is_expandable): When the API requests whether the object is expandable and it isn't, make sure to send a signal when it becomes expandable. * e-tree-table-adapter.c: Made it so that in a number of cases where it doesn't need to create an empty hash table node if the current tree node has no children, it doesn't. 2001-03-18 Christopher James Lahey <clahey@ximian.com> * e-tree-memory-callbacks.c, e-tree-memory-callbacks.h (etmc_has_save_id, etmc_get_save_id): Added has_save_id and get_save_id to the list of methods supported by e_tree_memory_callbacks. * e-tree-table-adapter.c, e-tree-table-adapter.h: Added saving of expanded nodes. 2001-03-18 Christopher James Lahey <clahey@ximian.com> * e-table-model.c, e-table-model.h (e_table_model_get_save_id): Changed row_save_id to get_save_id to be consistent with ETree. * e-tree-model.c, e-tree-model.h: Added "pre_change" signal. Added has_save_id and get_save_id methods. * e-tree-sorted.c: Proxy pre_change signal. Implemented has_save_id and get_save_id. If the base model doesn't provide has_save_id then we g_strdup_printf the pointer of the base model ETreePath as the save_id. * e-tree-table-adapter.c: Proxy pre_change signal. If base model has_save_id, then use the results of get_save_id as the key for the hash table of node attributes. Otherwise use the pointer as before. 2001-03-17 Christopher James Lahey <clahey@ximian.com> * e-tree-sorted.c (ets_sort_idle): Fixed it so that all nodes get sorted properly instead of just the top node. 2001-03-17 Christopher James Lahey <clahey@ximian.com> * e-table-sorting-utils.c (e_table_sorting_utils_tree_sort): Made tree sorting faster by using a cache. * e-tree-sorted.c: Added commented out debugging g_prints. 2001-03-17 Christopher James Lahey <clahey@ximian.com> * e-tree-sorted.c: Switched to using GMemChunks. 2001-03-17 Christopher James Lahey <clahey@ximian.com> * e-tree-sorted.c (resort_node): Made it so that children of a node that's being sorted don't send changed signals. 2001-03-17 Christopher James Lahey <clahey@ximian.com> * e-table-sorting-utils.c, e-table-sorting-utils.h: Switched to using e_sort and e_search instead of qsort and a linear search. Added the tree functions e_table_sorting_utils_tree_sort, e_table_sorting_utils_tree_check_position, and e_table_sorting_utils_tree_insert. * e-tree-sorted.c: Made this actually do sorting. * e-tree-table-adapter.c (etta_proxy_node_changed): The old_size needs to be the number of visible children + 1 to include the top node. * e-tree.c (e_tree_set_state_object): Set the sort_info on the ETreeSorted when you get a new sort_info. 2001-03-16 Christopher James Lahey <clahey@ximian.com> * Makefile.am: Added e-tree-sorted.c and e-tree-sorted.h. * e-table-item.c (eti_realize_cell_views): Only realize the cells if they're not realized already and if the canvas is realized. * e-table-sorted.c (ets_proxy_model_cell_changed): Matched the change to the signature of e_table_sorting_utils_affects_sort. * e-table-sorting-utils.c, e-table-sorting-utils.h (e_table_sorting_utils_affects_sort): Changed the signature of this function to not take the ETableModel source since it doesn't use it and we need to use this function for ETreeSorted which doesn't have an ETableModel. * e-tree-memory.c (etmm_get_expanded_default): Actually implement the get_expanded_default for this tree. * e-tree-model.h: Cleaned up the indentation here. * e-tree-sorted.c, e-tree-sorted.h: New class meant to be used for sorting trees. It doesn't actually sort yet. It simply acts as an ETreeProxy which is the hardest part of making ETreeSorted. * e-tree.c, e-tree.h: Made this use an ETreeSorted. 2001-03-14 Christopher James Lahey <clahey@ximian.com> * e-table-item.c, e-table-item.h, e-table-selection-model.c, e-table-selection-model.h, e-table-sorted.c, e-table-sorted.h, e-table-subset.c, e-table-subset.h, e-table.c, e-table.h: Switch to handling e_table_model_rows_inserted instead of e_table_model_row_inserted and e_table_model_rows_deleted instead of e_table_model_row_deleted. * e-table-model.c, e-table-model.h: Replaced the signals "model_row_inserted" and "model_row_deleted" with "model_rows_inserted" and "model_rows_deleted" so that when multiple rows are inserted or deleted at the same time they can be handled properly. * e-tree-table-adapter.c: Call "model_rows_inserted" and "model_rows_deleted" instead of "model_changed" when inserting or deleting multiple rows. 2001-03-14 Christopher James Lahey <clahey@ximian.com> * e-table-item.c (e_table_item_row_diff): Made this not count the pixel between rows if it isn't there. 2001-03-14 Christopher James Lahey <clahey@ximian.com> * e-table-item.c (eti_header_structure_changed): Properly attach & realize cell views here. 2001-03-13 Christopher James Lahey <clahey@ximian.com> * e-tree-table-adapter.c (etta_proxy_node_removed): Check that parent_node and parent aren't NULL before making function calls on them. 2001-03-13 Christopher James Lahey <clahey@ximian.com> * e-table-item.c (confirm_height_cache): Fixed a height cache miscalculation. * e-tree-table-adapter.c (find_first_child_node): Made the semantics of this mean that find_first_child_node(adapter, -1) means return the first node in the tree. 2001-03-13 Christopher James Lahey <clahey@ximian.com> * e-table-extras.c: Added a "string-integer" comparison function to the default %ETableExtras so you can do comparisons based on integer value even if you using strings for the data (this lets you do editable numbers, for instance.) * e-table-item.c: Rearranged it a bit so that if you have draw_grid off it doesn't add space for the horizontal lines, nor leave them the background color. * e-table-model.c, e-table-model.h: Added the row_save_id and has_save_id methods to %ETableModel. * e-tree.c, e-tree.h: Replaced e_tree_compute_location with e_tree_get_cell_at. 2001-03-08 Christopher James Lahey <clahey@ximian.com> * Makefile.am: Added e-table/e-table-utils.c, e-table/e-tree-memory-callbacks.c, e-table/e-tree-memory.c, e-table/e-tree-scrolled.c, e-table/e-tree-table-adapter.c, and e-table/e-tree.c. Removed e-table/e-tree-simple.c. Added e-table/e-table-utils.h, e-table/e-tree-memory-callbacks.h, e-table/e-tree-memory.h, e-table/e-tree-scrolled.h, e-table/e-tree-table-adapter.h, and e-table/e-tree.h. Removed e-table/e-tree-simple.h. * e-cell-tree.c: Updated this for the new tree. * e-table-item.c: Added some redraw requests where appropriate. * e-table-item.h: Fixed an incorrect class method declaration. * e-table-model.c, e-table-model.h: Removed e_table_model_has_sort_group and e_table_model_row_sort_group. * e-table-scrolled.h: Removed unused headers. * e-table-simple.c, e-table-simple.h: Rearranged this a bit. * e-table-sorter.c, e-table-sorting-utils.c, e-table-sorting-utils.h: Removed sort group stuff. Added the function e_table_sorting_utils_check_position. * e-table-utils.c, e-table-utils.h: Utility functions for ETable and ETree. * e-table.c: Moved some of the functionality from here to e-table-utils.c so that it can be reused by ETree. * e-tree-memory-callbacks.c, e-tree-memory-callbacks.h: Class to implement an ETreeMemory as callbacks instead of overriding the class. * e-tree-memory.c, e-tree-memory.h: ETreeModel that stores a tree of physical nodes. * e-tree-model.c, e-tree-model.h: Removed most of the functionality from here to the classes ETreeMemory and ETreeTableAdapter. This is now just a simple virtualized tree class. * e-tree-scrolled.c, e-tree-scrolled.h: New class. An ETree in an EScrollFrame. * e-tree-simple.c: Small change. This is no longer used. * e-tree-table-adapter.c, e-tree-table-adapter.h: ETableModel that represents an ETreeModel as a table. * e-tree.c, e-tree.h: New super class kind of like ETable but for trees. End of branch svn path=/trunk/; revision=8837
* use gnome_dialog_run() to make the warning dialog modal. Also created aDamon Chaplin2001-03-192-38/+37
| | | | | | | | | | | 2001-03-18 Damon Chaplin <damon@ximian.com> * e-cell-date-edit.c (e_cell_date_edit_show_time_invalid_warning): use gnome_dialog_run() to make the warning dialog modal. Also created a better warning message showing the format expected. Also used e_time_format_time() to format all times. svn path=/trunk/; revision=8823
* Removed extra printfsMiguel de Icaza2001-03-194-22/+29
| | | | svn path=/trunk/; revision=8812
* Set the size of the thing to a decent value that lets us test stuff.Miguel de Icaza2001-03-192-58/+69
| | | | | | | | | | | | | | 2001-03-18 Miguel de Icaza <miguel@ximian.com> * tests/test-tree-1.c (create_tree): Set the size of the thing to a decent value that lets us test stuff. 2001-03-16 Miguel de Icaza <miguel@ximian.com> * gal/e-text/e-entry.h: Expose the canvas/item that used to be public and that were privatized. svn path=/trunk/; revision=8802
* Use update_sort_and_group_config dialog instead of the non-implementedMiguel de Icaza2001-03-195-163/+166
| | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-03-18 Miguel de Icaza <miguel@ximian.com> * e-table-config.c (sort_entry_changed): Use update_sort_and_group_config dialog instead of the non-implemented update_group_config_dialog. (update_sort_and_group_config_dialog): Update the text correctly. (sort_entry_changed): Handle empty string as not-in-set. (group_entry_changed): Handle empty string as not-in-set. (config_class_init): Fix the signal declaration for "changed", this was sending the wrong information. (update_sort_and_group_config_dialog): Use group_info here, not sort_info * e-table-header-item.c (ethi_popup_customize_view): Changed to use the "changed" signal in the ETableConfig instead of promiscously using the "apply" from the PropertyBox * e-table-config.glade: Set Hide On Close to yes for the Group-By dialog. The groups for Radio Buttons in the Glade file are global, which caused all sorts of strange behaviour and really hard to debug problems. This should be now fixed svn path=/trunk/; revision=8801
* Added accelerator to elements missing accelerators (Reply, Inline, Quoted,Miguel de Icaza2001-03-172-5/+10
| | | | | | | | | | | | | | | | | | 2001-03-16 Miguel de Icaza <miguel@ximian.com> * evolution-mail.xml: Added accelerator to elements missing accelerators (Reply, Inline, Quoted, Attachments, Empty Trash, Full Headers). * evolution.xml: Added a placeholder for the beginning of the view. 2001-03-16 Miguel de Icaza <miguel@ximian.com> * menus/gal-view-menus.c (build_menus): Hook this up under the "ViewBegin" node. svn path=/trunk/; revision=8772
* Comment out text after #endif. Add #include <string.h> for strcmp().Kjartan Maraas2001-03-161-0/+1
| | | | | | | | | 2001-03-16 Kjartan Maraas <kmaraas@gnome.org> * gal/widgets/widget-pixmap-combo.h: Comment out text after #endif. * gal/e-text/e-completion.c: Add #include <string.h> for strcmp(). svn path=/trunk/; revision=8758
* Added #include <string.h> for strcmp(). Same for strlen().Kjartan Maraas2001-03-162-0/+2
| | | | | | | | | 2001-03-16 Kjartan Maraas <kmaraas@gnome.org> * e-cell-combo.c: Added #include <string.h> for strcmp(). * e-table-header-utils.c: Same for strlen(). svn path=/trunk/; revision=8757
* Update arguments to e_canvas_item_grab_focus.Dan Winship2001-03-163-2/+10
| | | | | | | | | | * e-meeting-time-sel.c (e_meeting_time_selector_on_text_item_event): * e-meeting-time-sel-list-item.c (e_meeting_time_selector_list_item_button_press): Update arguments to e_canvas_item_grab_focus. svn path=/trunk/; revision=8749
* Update arguments to e_canvas_item_grab_focus. (eti_cursor_change): Ditto,Dan Winship2001-03-161-3/+3
| | | | | | | | | | * e-table-item.c (eti_event): Update arguments to e_canvas_item_grab_focus. (eti_cursor_change): Ditto, but pass FALSE! Fixes the problem of the Evolution message list stealing your focus when new mail arrives. Ha! svn path=/trunk/; revision=8746
* Make this take an extra argument saying whether or not to grab theDan Winship2001-03-163-8/+9
| | | | | | | | | | | * gal/widgets/e-canvas.c (e_canvas_item_grab_focus): Make this take an extra argument saying whether or not to grab the widget-level focus. * gal/e-text/e-text.c (e_text_event): Update arguments to e_canvas_item_grab_focus. svn path=/trunk/; revision=8745
* If we click on the edit menu, then bring up a rule editor. If the userNot Zed2001-03-152-0/+32
| | | | | | | | | | 2001-03-15 Not Zed <NotZed@Ximian.com> * e-filter-bar.c (menubar_activated): If we click on the edit menu, then bring up a rule editor. If the user adds/removes rules though, they are neither saved, nor added to the menu's. sigh. svn path=/trunk/; revision=8730
* Made this function do something a little closer to what it is supposed toChristopher James Lahey2001-03-141-2/+4
| | | | | | | | | 2001-03-13 Christopher James Lahey <clahey@ximian.com> * gal/widgets/e-reflow.c (e_reflow_point): Made this function do something a little closer to what it is supposed to do. svn path=/trunk/; revision=8693
* Rename this from g_unichar_to_utf8 so that it doesn't conflict with theDan Winship2001-03-142-9/+9
| | | | | | | | | * gal/widgets/e-unicode.c (e_unichar_to_utf8): Rename this from g_unichar_to_utf8 so that it doesn't conflict with the function of that name exported by gnome-print (and so that it's consistent with all of the other functions in the file). svn path=/trunk/; revision=8679
* Renamed "temp" as "new_text", to avoid confusion.Jon Trowbridge2001-03-131-5/+5
| | | | | | | | | | | 2001-03-12 Jon Trowbridge <trow@ximian.com> * gal/e-text/e-text-model.c (e_text_model_real_insert_length): Renamed "temp" as "new_text", to avoid confusion. (e_text_model_real_delete): Renamed "temp" as "new_text", to avoid confusion. svn path=/trunk/; revision=8640
* New public API call, `e_table_get_cell_at()'. Also upped the GALEttore Perazzoli2001-03-082-44/+42
| | | | | | version number because of that. svn path=/trunk/; revision=8587
* Reorganize the menus to have entries always in a consistent fashion, asMiguel de Icaza2001-03-072-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-02-27 Miguel de Icaza <miguel@ximian.com> * gui/e-day-view.c (e_day_view_on_event_right_click): Reorganize the menus to have entries always in a consistent fashion, as reported to the genepool mailing list. (e_day_view_on_event_right_click): Added a FIXME comment to the FIXME comment without a FIXME. Now we use e_popup_menu. This allows us to hide/show items on demand, and to sensitize/de-sensitize items depending on their state. This will also let us add icon support (when we get nice icons for this) * gui/e-week-view.c (e_week_view_show_popup_menu): Ditto. The files popup-menu.c and popup-menu.h can now be removed. 2001-03-01 Miguel de Icaza <miguel@ximian.com> * folder-browser.c (on_right_click): Move the context menus to the toplevel code; Use enumerations for the various bitfield constants. Add support for hiding items that are not required (read/unread and delete/undelete). This requires my previous patch, as it assumes "Open" does the right thing instead of having two operations: Open and Edit. 2001-02-28 Miguel de Icaza <miguel@ximian.com> * folder-browser.c (on_right_click): Removed draft folders op here, since open_msg now does the right thing (edit or view). * folder-browser-factory.c (update_pixmaps): Removed MessageEdit from here. * mail-callbacks.c (open_msg): New function, does the "right thing" to a message (either, edit or open). * folder-browser-factory.c: Register new command here. (update_pixmaps): Rename keys that have been shuffled around. (update_pixmaps): Rename to match new updates on xml file. Rename MessageOpenNewWindow to MessageOpen. Change action from "view_message" to "open_message". * mail-callbacks.c (mark_all_as_seen): New command. Marks all messages as seen. 2001-03-06 Miguel de Icaza <miguel@ximian.com> * evolution-tasks.xml: Added "File/New/Task" as well. * evolution-mail.xml: Added "File/New/Mail Message" at the top with binding C-n. * evolution-calendar.xml: Set the binding for New Appointment to C-n * evolution-contact-editor.xml: Set the toolbar to hlook=text vlook=icon; Set all icons priority-text to 1. * evolution-addressbook.xml: Added "Contact" to the New menu. * evolution.xml: Provide an entry point to put "New" items on the first level. We are going to need some Bonobo support to "hide" objects when other objects appear (like, having Mail Message bound to C-S-X in the global space, and when we switch to Mail, we only show the entry that has C-n as the binding). 2001-02-28 Miguel de Icaza <miguel@ximian.com> * evolution.xml: Moved Importer after the Folder operations per Dan's proposal. * evolution-addressbook.xml: Renamed Settings/AddressBook Configuration to Tools/Settings. Make all the items have "Print" items that use the same icon instead of a collection of icons. * evolution-calendar.xml: Moved "Calendar Preferences" from "Settings" to "Tools/Settings". * evolution-mail.xml: Settings menu is fully gone. All things that run a dialog now end up in "Tools" while actions end up in "Actions". Hence I am right. Renamed "Mail Configuration..." to "Identieies and Servers" Move MessageMarkAsRead, MessageMarkAsUnRead to Edit menu. Add MessageMarkAllAsRead. Remove "Print Message" from Message menu. Remove "Print Preview Message" from Message menu. Leave them on the "File" menu. Renamed "Reply to Sender" to "Reply" (awaiting Ettore's permission). Renamed "Messages" to "Actions". Open Message renamed to "Open Selected Items" (as this is what it actually does). Moved "Save Message As" to "File" menu. Added "Properties" to the File/Folder submenu. Edit menu now looks like this: Message Move, Message Copy, Select All, Invert Selection, Delete, Undelete, Mark as Read, Mark as Unread. Some of them were moved from the "Messages" menu. "Forward message" shortcut changed to C-f Tools menu created. Create Rule From message moved to "Tools". * evolution.xml: Added Tools menu. Moved Edit/Customize to Tools/Customize Toolbar. Added File/Folder submenu. Duplicate "New Folder" in here. 2001-02-28 Miguel de Icaza <miguel@ximian.com> * menus/gal-view-menus.c (build_menus): Add translation string here. svn path=/trunk/; revision=8572
* Added. This is part of a change of sematics that makes things much nicerJon Trowbridge2001-03-064-28/+68
| | | | | | | | | | | | | | | | | | | | | | | 2001-03-06 Jon Trowbridge <trow@gnu.org> * gal/e-text/e-entry.c (e_entry_text_keypress): Added. This is part of a change of sematics that makes things much nicer for the user --- auto-activate the completion popup only on keypresses than also change the entry. (e_entry_proxy_changed): Record that the underlying EText has changed, and set up a timeout to clear the changed_since_keypress flag in a very short amount of time. (e_entry_init): Connect to the EText's "keypress" signal". (e_entry_destroy): If our completion_delay_tag timeout is still floating around out there when we are winding things down, remove it. * gal/e-text/e-text.c (e_text_class_init): Added keypress signal. (e_text_text_model_reposition): Removed some old cruft. (e_text_event): Emit our keypress signal after handling events of type GDK_KEY_PRESS. svn path=/trunk/; revision=8566
* Set version number to 0.5.99.5Jon Trowbridge2001-03-065-10/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-03-05 Jon Trowbridge <trow@gnu.org> * configure.in: Set version number to 0.5.99.5 * gal/e-text/e-entry.c (e_entry_class_init): Add a "popup" signal. If you have trepidations about this, see the technical argument below. (e_entry_init): Connect to the EText's popup signal. (e_entry_proxy_popup): Proxy emitter for popup signals from the EText. * gal/e-text/e-text.c (e_text_class_init): Added a "popup" signal. (e_text_event): Emit the "popup" signal on right-clicks. Now you could ask yourself: "should there be a signal named 'popup' in EText that gets emitted on right-clicks?" And this is a reasonable question, since... well, this has a funny feeling to it. But the whole point of GNOME, or at least one of the original points of GNOME, was to impose policy in a reasonable way when it made sense in order to simplify the user's experience. Convention dictates that popup menus are tied to right-clicks --- so rather than setting up some elaborate forwarding of button-press signals, why not just impose a little policy and set up a signal that is closely tied to a familiar set of semantics? Maybe it isn't the best thing to do from a aesthetics-of-the-API point of view, but I doubt anyone could condemn it as being anything more than mostly harmless. svn path=/trunk/; revision=8565
* Rebuild when the collection changes.Christopher James Lahey2001-03-062-11/+65
| | | | | | | | | 2001-03-05 Christopher James Lahey <clahey@ximian.com> * menus/gal-view-menus.c (collection_changed): Rebuild when the collection changes. svn path=/trunk/; revision=8558
* Upped the version number to 0.5.99.4.Christopher James Lahey2001-03-061-0/+1
| | | | | | | | | | 2001-03-05 Christopher James Lahey <clahey@ximian.com> * configure.in: Upped the version number to 0.5.99.4. * gal/e-text/e-text.c (e_text_draw): Fixed a crash here. svn path=/trunk/; revision=8556
* New changed signal.Christopher James Lahey2001-03-062-12/+47
| | | | | | | | | 2001-03-05 Christopher James Lahey <clahey@ximian.com> * gal-view-collection.c, gal-view-collection.h (gal_view_collection_changed): New changed signal. svn path=/trunk/; revision=8555
* pretty much working now.Damon Chaplin2001-03-053-76/+537
| | | | | | | | 2001-03-04 Damon Chaplin <damon@ximian.com> * e-cell-date-edit.c: pretty much working now. svn path=/trunk/; revision=8548
* added "editable" Arg, to stop the user from editing the text. The user canDamon Chaplin2001-03-054-5/+74
| | | | | | | | | | | | | | 2001-03-04 Damon Chaplin <damon@ximian.com> * e-cell-text.c: added "editable" Arg, to stop the user from editing the text. The user can still select the text, though. The "editable" Arg is useful for ECellCombo where we want the user to select an item in the popup but not edit the field itself. * e-cell-combo.c: updated to select the matcing item before it pops up the list. svn path=/trunk/; revision=8544
* Boost version number to 0.5.99.3.Jon Trowbridge2001-03-025-99/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-03-01 Jon Trowbridge <trow@ximian.com> * configure.in: Boost version number to 0.5.99.3. * gal/e-text/e-entry.c (e_entry_show_popup): Grab pointer when the popup is visible, and then hide the popup if any button press events occur outside of the popup. This lets up avoid most of the worst "floating popup" cases that would occur if windows are moved, desktops changed, etc. with the mouse. (Doing things like changing desktop w/ keybindings can still cause a "floating popup", but that is also true of Gtk's own combo box.) Change popup positioning to slightly offset it from the entry, rather than just plopping it down directly below. (button_press_cb): Determine if a button press occured outside of the popup when the pointer was grabbed, and unbrowse accordingly. * gal/e-text/e-completion-view.c (e_completion_view_key_press_handler): Improve keystroke handling. Allow Tabs to pass through (after hiding the pop-up) in order to allow focus change requests to work properly. (e_completion_view_construct): Disable horizontal scrollbars. * gal/e-text/e-completion-test.c (main): Reworked to use signals instead of explicit callbacks. * gal/e-text/e-completion.h: * gal/e-text/e-completion.c: Fix the awkward mix of signals and explicitly-specified callbacks by taking out the explicit callbacks. This approach is more gtk-ish, after all. svn path=/trunk/; revision=8458
* Fixed some warnings.Christopher James Lahey2001-03-028-223/+257
| | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-03-01 Christopher James Lahey <clahey@ximian.com> * e-cell-pixbuf.c: Fixed some warnings. * e-table-subset.c, e-table-subset.h: Added e_table_subset_print_debugging. 2001-02-27 Christopher James Lahey <clahey@ximian.com> * e-table-sorted-variable.c: Moved etsv_compare to etsu_compare in e-table-sorting-utils.c. Moved most of the contents of etsv_add to e_table_sorting_utils_insert in e-table-sorting-utils.c and call the function. * e-table-sorted.c: Rewrote ets_proxy_row_changed, ets_proxy_row_inserted, and ets_proxy_row_deleted. * e-table-sorting-utils.c, e-table-sorting-utils.h (etsu_compare, e_table_sorting_utils_insert): Added e_table_sorting_utils_insert. * e-table-subset-variable.c: Changed this implementation to be slightly more consistent with other code. svn path=/trunk/; revision=8453
* New class implementing a simple selection model that you add rows to andChris Lahey2001-03-012-0/+144
| | | | | | | | * gal/widgets/e-selection-model-simple.c, gal/widgets/e-selection-model-simple.h: New class implementing a simple selection model that you add rows to and remove rows from. svn path=/trunk/; revision=8443
* Added e-selection-model-simple.lo.Christopher James Lahey2001-03-014-27/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | 2001-03-01 Christopher James Lahey <clahey@ximian.com> * gal/Makefile.am (libgal_la_LIBADD): Added e-selection-model-simple.lo. * gal/widgets/Makefile.am (libwidgets_la_SOURCES): Added e-selection-model-simple.c. (libwidgetsinclude_HEADERS): Added e-selection-model-simple.h. * gal/widgets/e-reflow-sorted.c, gal/widgets/e-reflow-sorted.h: Added a gint *position argument to e_reflow_sorted_remove_item and e_reflow_sorted_get_item and two gint * arguments to e_reflow_sorted_replace_item and e_reflow_sorted_reorder_item to return the positions in the array of the items removed, gotten, or moved. * gal/widgets/e-reflow.c, gal/widgets/e-reflow.h: Added a gint *position argument to e_reflow_sorted_add_item to return the positions in the array of the item added. * gal/widgets/e-selection-model.c, gal/widgets/e-selection-model.h: Added e_selection_model_move_row. svn path=/trunk/; revision=8442
* Added new ECellPixbuf -- takes a GdkPixbuf from the model and renders itVladimir Vukicevic2001-03-011-0/+2
| | | | | | | | * e-table-extras.c: Added new ECellPixbuf -- takes a GdkPixbuf from the model and renders it centered in the table cell. svn path=/trunk/; revision=8441
* Added new ECellPixbuf -- takes a GdkPixbuf from the model and renders itVladimir Vukicevic2001-03-012-0/+289
| | | | | | | | | | | * e-cell-pixbuf.c, e-cell-pixbuf.h, Makefile.am, Makefile.am, e-table-extras.c: Added new ECellPixbuf -- takes a GdkPixbuf from the model and renders it centered in the table cell. * gal/Makefile.am: added e-cell-pixbuf.lo svn path=/trunk/; revision=8440
* New type of search bar that interacts with filter contexts to save filtersNot Zed2001-03-016-29/+672
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-03-01 Not Zed <NotZed@Ximian.com> * e-filter-bar.c: New type of search bar that interacts with filter contexts to save filters etc. Still probably needs a little cleanpu. 2001-02-28 Not Zed <NotZed@Ximian.com> * e-search-bar.c (add_dropdown): Save the dropdown menu in the struct too. Sigh, this is only so we can scan its content later, ick. (e_search_bar_set_menu_sensitive): New function to se tthe sentisitivty of menyu items based on id. (find_id): New function to find the row and widget for a specific id. (add_option): Renamed to set_option. (add_dropdown): Renamed to set_dropdown. (add_dropdown): ?New function to add a single item. (set_dropdown): Call add_dropdown to add each item. (e_search_bar_add_menu): New public function to add a single item. 2001-02-27 Not Zed <NotZed@Ximian.com> * Makefile.am (libemiscwidgets_a_SOURCES): Added filter-bar.[ch]. * e-search-bar.c (class_init): Init virtual functions. (e_search_bar_set_option): (e_search_bar_set_menu): virtualise calling. (e_search_bar_construct): Call virtual functions to setup menus. * e-search-bar.h (struct _ESearchBarClass): Virtualise add_dropdown/add_option, so certain base options can be created. svn path=/trunk/; revision=8436
* Make this more robust: do not assume that the GdkEvent will be either aMiguel de Icaza2001-02-281-1/+7
| | | | | | | | | | 2001-02-27 Miguel de Icaza <miguel@ximian.com> * gal/widgets/e-gui-utils.c (e_popup_menu): Make this more robust: do not assume that the GdkEvent will be either a GdkEventButton of some sort or a GdkEventKey: deal gracefully with other possible svn path=/trunk/; revision=8423
* Changed e_table_selection_model_clear to e_selection_model_clear.Christopher James Lahey2001-02-2817-893/+154
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-02-27 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-completion-view.c: Changed e_table_selection_model_clear to e_selection_model_clear. * tests/test-tree-3.c: Changed E_TABLE_CURSOR_LINE to E_CURSOR_LINE. From gal/e-table/ChangeLog: 2001-02-27 Christopher James Lahey <clahey@ximian.com> * e-table-click-to-add.c, e-table-group-container.c, e-table-group-container.h, e-table-group-leaf.c, e-table-group-leaf.h, e-table-item.c, e-table-item.h, e-table-specification.c, e-table-specification.h, e-table.c, e-table.h: Changed a lot of the ETableSelectionModels to ESelectionModels, a lot of the ETableSorters to ESorters, all the ETableCursorModes to ECursorModes, and all of the ETableForeachFuncs into EForeachFuncs. * e-table-defines.h: Moved ETableForeachFunc and ETableCursorMode to e-selection-model.h. * e-table-selection-model.c, e-table-selection-model.h: Made this a subclass of ESelectionModel which simple connects to an ETableModel. * e-table-sorter.c, e-table-sorter.h: Made this a subclass of ESorter so that implements the same semantics it used to. svn path=/trunk/; revision=8422
* Added e-sorter.lo and e-selection-model.lo.Christopher James Lahey2001-02-282-0/+906
| | | | | | | | | | | | | | | | | | | | | | | 2001-02-27 Christopher James Lahey <clahey@ximian.com> * gal/Makefile.am: Added e-sorter.lo and e-selection-model.lo. * gal/util/Makefile.am: Added e-sorter.c and e-sorter.h. * gal/util/e-sorter.c, gal/util/e-sorter.h: New class. This is a new simple virtual class for use with ESelectionModel. It implements the same set of methods as ETableSorter but the default behavior is as if the sorting was a no-op. * gal/widgets/Makefile.am: Added e-selection-model.c and e-selection-model.h. * gal/widgets/e-selection-model.c, gal/widgets/e-selection-model.h: New class. Implements all of the semantics of ETableSelectionModel except for the connection to the ETableModel. svn path=/trunk/; revision=8421
* Prevent `gtk_signal_disconnect()' warnings when destroying aEttore Perazzoli2001-02-271-10/+18
| | | | | | | non-grouping ETable by only disconnecting the signals that are actually connected. svn path=/trunk/; revision=8401
* new files to implement an ECell for showing and editing dates & times.Damon Chaplin2001-02-264-0/+513
| | | | | | | | | | | 2001-02-25 Damon Chaplin <damon@ximian.com> * e-cell-date-edit.[hc]: new files to implement an ECell for showing and editing dates & times. (Unfinished) * Makefile.am (libemiscwidgets_a_SOURCES): added e-cell-date-edit.[hc] svn path=/trunk/; revision=8388
* new abstract ECell subclass to be used as base class for popup ECells.Damon Chaplin2001-02-266-7/+1240
| | | | | | | | | | | | | | | | | 2001-02-25 Damon Chaplin <damon@ximian.com> * e-cell-popup.c: new abstract ECell subclass to be used as base class for popup ECells. * e-cell-combo.c: subclass of ECellPopup which pops up a simple list of strings. * e-table-item.c: Renamed eti_row_diff() to e_table_item_row_diff() and made public, since the ECellPopup subclasses need it. * Makefile.am: added e-cell-popup.[hc] and e-cell-combo.[hc] svn path=/trunk/; revision=8387
* Added e-table/e-table-sorting-utils.lo.Christopher James Lahey2001-02-2419-641/+1226
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Move the event box into the esb->dropdown_holder. Changed so it can beNot Zed2001-02-243-16/+68
| | | | | | | | | | | | | | 2001-02-24 Not Zed <NotZed@Ximian.com> * e-search-bar.c (add_dropdown): Move the event box into the esb->dropdown_holder. Changed so it can be called again on the same esb, to rebuild the menu. (e_search_bar_set_menu): New function to (re)set the menu. (add_option): Setup so it can be re-called to rebuild the option list. (e_search_bar_set_option): New function to build the menu's. svn path=/trunk/; revision=8373
* Fixed. (e_entry_select_region): Fixed. (e_entry_show_popup): Grab/ungrabJon Trowbridge2001-02-243-8/+49
| | | | | | | | | | | | | | | | | | | 2001-02-23 Jon Trowbridge <trow@ximian.com> * gal/e-text/e-entry.c (e_entry_set_position): Fixed. (e_entry_select_region): Fixed. (e_entry_show_popup): Grab/ungrab the pointer and keyboard when the popup appears/disappears. This (mostly) solves the "floating popup" problem. (button_press_cb): Added. We catch button presses outside of the popup, and hide the popup when they occur. * gal/e-text/e-completion-view.c (e_completion_view_get_type, e_completion_view_class_init): Changed base class to GtkEventBox. (e_completion_view_key_press_handler): Make Escape always cause an unbrowse, even wehen we are editting. svn path=/trunk/; revision=8369
* Doh!Chris Lahey2001-02-231-10/+10
| | | | svn path=/trunk/; revision=8362
* Added a bunch of g_return_if_fails.Christopher James Lahey2001-02-231-7/+78
| | | | | | | | 2001-02-22 Christopher James Lahey <clahey@ximian.com> * e-tree-model.c: Added a bunch of g_return_if_fails. svn path=/trunk/; revision=8360
* Added some g_return_if_fails here.Christopher James Lahey2001-02-211-0/+4
| | | | | | | | 2001-02-20 Christopher James Lahey <clahey@ximian.com> * e-cell.c (e_cell_draw): Added some g_return_if_fails here. svn path=/trunk/; revision=8310
* If we are drawing a top-level tree node, without any children then dontNot Zed2001-02-211-1/+6
| | | | | | | | | | 2001-02-02 Not Zed <NotZed@Ximian.com> * e-cell-tree.c (ect_draw): If we are drawing a top-level tree node, without any children then dont offset it for the expansion image it doesn't need. svn path=/trunk/; revision=8304
* add some more (mostly empty) api docs. (e_tree_model_node_changed): passChris Toshok2001-02-201-2/+355
| | | | | | | | | | | | 2001-02-20 Chris Toshok <toshok@ximian.com> * e-tree-model.c: add some more (mostly empty) api docs. (e_tree_model_node_changed): pass the node in the "node_changed" signal. (etree_destroy): e_tree_model_node_remove our root node here to free up the tree's storage. svn path=/trunk/; revision=8302
* Changed the version number to 0.5.99.1.Christopher James Lahey2001-02-2011-1216/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-02-19 Christopher James Lahey <clahey@ximian.com> * configure.in: Changed the version number to 0.5.99.1. * gal/Makefile.am (libgal_la_LIBADD): Change the directories for e-table-text-model.lo, e-text-event-processor.lo, and e-text-event-processor-emacs-like.lo. Reordered the e-text directory to be after the e-table directory in build order. * gal/e-text/Makefile.am: Removed e-text-event-processor-emacs-like.c, e-text-event-processor-emacs-like.h, e-text-event-processor-types.h, e-text-event-processor.c, and e-text-event-processor.h. Added e-table-text-model.c and e-table-text-model.h. * gal/e-text/e-table-text-model.c: Changed the signature of these mehtods to match the changed signature in ETextModel. * gal/e-text/e-text-event-processor-emacs-like.c, gal/e-text/e-text-event-processor-emacs-like.h, gal/e-text/e-text-event-processor-types.h, gal/e-text/e-text-event-processor.c, gal/e-text/e-text-event-processor.h: Moved these to gal/util/. * gal/e-text/e-text.c, gal/e-text/e-text.h: Changed the includes to match the moved files. * gal/util/Makefile.am: Added e-text-event-processor-emacs-like.c, e-text-event-processor-emacs-like.h, e-text-event-processor-types.h, e-text-event-processor.c, and e-text-event-processor.h. * gal/util/e-text-event-processor-emacs-like.h, gal/util/e-text-event-processor.h: Changed the includes to match the moved files. 2001-02-19 Christopher James Lahey <clahey@ximian.com> * Makefile.am: Removed e-table-text-model.c and e-table-text-model.h. * e-table-text-model.c, e-table-text-model.h: Moved these to gal/e-text/. * e-cell-text.c: Changed the include line for e-text-event-processor.h and e-text-event-processor-emacs-like.h. svn path=/trunk/; revision=8298
* Forgot to add. Doh!Jon Trowbridge2001-02-202-0/+790
| | | | svn path=/trunk/; revision=8281
* Added. Allows you to attach an ECompletion to an EEntry, and have thatJon Trowbridge2001-02-2014-623/+2483
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-02-19 Jon Trowbridge <trow@ximian.com> * gal/e-text/e-entry.c (e_entry_enable_completion_full): Added. Allows you to attach an ECompletion to an EEntry, and have that ECompletion be used for (obviously enough) completions. * gal/e-text/e-completion-view.h, gal/e-text/e-completion-view.c: Added. ECompletionView is a widget for displaying the results of a completion request in a format that is appropriate for a drop-down window. * gal/e-text/e-completion.h, gal/e-text/e-completion.c: Added. ECompletion is a "pure virtual base class" for completion-type operations. It is implemented so that completions can be either synchronous or asynchronous. * gal/e-text/e-text.c: Lots of changes to accomodate the ETextModel changes. First of all, we render embedded text objects as being underlined. We also cause the model to emit the appropriate object activation signal when an embedded object is double-clicked. Also, all of the code that moves the cursor in response to user input has been removed. Instead, the EText now listens for "reposition" events from the underlying model, and bases all cursor motions on those. (get_bounds_item_relative): Fixed bug in the handling of differently-anchored text. Being differently-anchored is not a crime or a perversion --- it is an alternative lifestyle that we have to respect. * gal/e-text/e-text-model-uri.h, gal/e-text/e-text-model-uri.c: A sample ETextModel that converts URIs into embedded objects that get opened in the browser when you double-click them. * gal/e-text/e-text-model-repos.h, gal/e-text/e-text-model-repos.c: Added. A group of simple structures & functions for handling various cursor movement rules. These are the sorts of things that are passed as arguments to ETextModel "reposition" event handlers. * gal/e-text/e-text-model.h, gal/e-text/e-text-model.c: Privitized the ETextModel struct and "methodized" all of the operations, so that derived classes can do arbitrarily respond to get/set requests in arbitrarily strange ways. Also added the concept of declaring regions of the text as "embedded text objects". Finally, caused operations that change the text to emit a "reposition" signal that passes information that can be used by a view (like an EText) to move the cursor or selection in an intelligent way in response to those changes. This means that you can now open two ETexts that look at the same ETextModel, and have the cursor in one do the right thing when you edit the other. (As opposed to producing a lot of potential segfaults, as it was before.) svn path=/trunk/; revision=8280
* Removed setting of invalid "horizontal_scrolling" argument.Christopher James Lahey2001-02-172-10/+0
| | | | | | | | | | | 2001-02-17 Christopher James Lahey <clahey@ximian.com> * e-table.c (et_real_construct): Removed setting of invalid "horizontal_scrolling" argument. * e-table-column-model.h: Removed this as it is not used. svn path=/trunk/; revision=8268
* From a patch submitted by Murray Cumming <Murray.Cumming@mybau.com>Christopher James Lahey2001-02-176-0/+25
| | | | | | | | | | | | | | 2001-02-17 Christopher James Lahey <clahey@ximian.com> From a patch submitted by Murray Cumming <Murray.Cumming@mybau.com> * gal/util/e-util.h, gal/util/e-xml-utils.h, gal/widgets/e-canvas-utils.h, gal/widgets/e-colors.h, gal/widgets/e-cursors.h, gal/widgets/e-gui-utils.h, gal/widgets/e-popup-menu.h, gal/widgets/e-printable.h, gal/widgets/gtk-combo-stack.h: Added GNOME_DECLS. svn path=/trunk/; revision=8267
* From a patch submitted by Murray Cumming <Murray.Cumming@mybau.com>Christopher James Lahey2001-02-176-0/+51
| | | | | | | | | | | | 2001-02-17 Christopher James Lahey <clahey@ximian.com> From a patch submitted by Murray Cumming <Murray.Cumming@mybau.com> * gal-define-views-model.h, gal-view-collection.h, gal-view-etable.h, gal-view-factory-etable.h, gal-view-factory.h, gal-view.h: Added GNOME_DECLS. svn path=/trunk/; revision=8266
* From a patch submitted by Murray Cumming <Murray.Cumming@mybau.com>Christopher James Lahey2001-02-1741-0/+244
| | | | | | | | | | | | | | | | | | | | | | | | 2001-02-17 Christopher James Lahey <clahey@ximian.com> From a patch submitted by Murray Cumming <Murray.Cumming@mybau.com> * e-cell-checkbox.h, e-cell-date.h, e-cell-number.h, e-cell-size.h, e-cell-text.h, e-cell-toggle.h, e-cell-tree.h, e-cell.h, e-table-click-to-add.h, e-table-col-dnd.h, e-table-col.h, e-table-column-specification.h, e-table-config-field.h, e-table-config.h, e-table-defines.h, e-table-extras.h, e-table-field-chooser-item.h, e-table-group-container.h, e-table-group-leaf.h, e-table-group.h, e-table-header-item.h, e-table-header-utils.h, e-table-header.h, e-table-item.h, e-table-model.h, e-table-one.h, e-table-selection-model.h, e-table-simple.h, e-table-sort-info.h, e-table-sorted-variable.h, e-table-sorted.h, e-table-sorter.h, e-table-specification.h, e-table-state.h, e-table-subset-variable.h, e-table-subset.h, e-table-tooltip.h, e-table-tree.h, e-tree-model.h, e-tree-simple.h, e-tree-sorted-variable.h: Added GNOME_DECLS. svn path=/trunk/; revision=8265
* Change the calculation of the maximum with of tree cell, from O(n^2) toRusty Conover2001-02-171-4/+4
| | | | | | | | | | | 2001-02-17 Rusty Conover <rconover@zootweb.com> * e-cell-tree.c (ect_max_width): Change the calculation of the maximum with of tree cell, from O(n^2) to O(n), we don't need to continually recalculate the maximum width of the subcells when calculating the width of every row. svn path=/trunk/; revision=8264
* Made it so that if you set the row or col to something not equal to -1, itChristopher James Lahey2001-02-151-0/+6
| | | | | | | | | | | 2001-02-15 Christopher James Lahey <clahey@ximian.com> * e-table-selection-model.c (e_table_selection_model_do_something): Made it so that if you set the row or col to something not equal to -1, it makes sure that the other one is also not equal to -1. svn path=/trunk/; revision=8240
* This new function updates the minimum width of all of the columns based onChristopher James Lahey2001-02-144-1/+41
| | | | | | | | | | | | | | | 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
* Set policy of scrolled window to be automatic/automatic.Christopher James Lahey2001-02-143-6/+5
| | | | | | | | | | | | 2001-02-13 Christopher James Lahey <clahey@ximian.com> * e-table-scrolled.c (e_table_scrolled_real_construct): Set policy of scrolled window to be automatic/automatic. * e-table-specification.c, e-table-specification.h (etsp_init): Added a horizontal-scrolling attribute. svn path=/trunk/; revision=8208
* Fix the crash when ETableItems are destroyed.Christopher James Lahey2001-02-141-1/+4
| | | | | | | | | 2001-02-13 Christopher James Lahey <clahey@ximian.com> * e-table-item.c (eti_destroy): Fix the crash when ETableItems are destroyed. svn path=/trunk/; revision=8207
* Made a width other than the default possible if the children have widthsChristopher James Lahey2001-02-112-5/+27
| | | | | | | | | | 2001-02-11 Christopher James Lahey <clahey@ximian.com> * gal/widgets/e-canvas-vbox.c, gal/widgets/e-canvas-vbox.h: Made a width other than the default possible if the children have widths larger than the default. svn path=/trunk/; revision=8171
* Fix selection so that changing a model row equal to 31 mod 32 works.Christopher James Lahey2001-02-111-1/+1
| | | | | | | | | 2001-02-11 Christopher James Lahey <clahey@ximian.com> * e-table-selection-model.c (change_one_row): Fix selection so that changing a model row equal to 31 mod 32 works. svn path=/trunk/; revision=8170
* Let e_canvas_item_show_area_delayed deal with a delayed area show insteadChristopher James Lahey2001-02-111-28/+8
| | | | | | | | | | 2001-02-11 Christopher James Lahey <clahey@ximian.com> * e-table-item.c (eti_cursor_change): Let e_canvas_item_show_area_delayed deal with a delayed area show instead of dealing with it ourselves. svn path=/trunk/; revision=8169
* Added this function.Christopher James Lahey2001-02-112-9/+60
| | | | | | | | | 2001-02-11 Christopher James Lahey <clahey@ximian.com> * gal/widgets/e-canvas-utils.c, gal/widgets/e-canvas-utils.h (e_canvas_item_show_area_delayed): Added this function. svn path=/trunk/; revision=8168
* Since gdkevent is a union, casting a smaller struct to a gdkevent causedJP Rosevear2001-02-101-7/+16
| | | | | | | | | | | | | 2001-02-09 JP Rosevear <jpr@ximian.com> * gal/widgets/e-canvas.c (e_canvas_key): Since gdkevent is a union, casting a smaller struct to a gdkevent caused unknown memory to be copied around. fix by copying to a full gdkevent structure before calling gdkevent. (e_canvas_focus_in): ditto (e_canvas_focus_out): ditto svn path=/trunk/; revision=8153
* 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
* Use e_format_number.Christopher James Lahey2001-02-091-1/+1
| | | | | | | | 2001-02-08 Christopher James Lahey <clahey@ximian.com> * e-cell-number.c (ecn_get_text): Use e_format_number. svn path=/trunk/; revision=8111
* Set the dnd_code on the header properly.Christopher James Lahey2001-02-091-1/+6
| | | | | | | | | 2001-02-08 Christopher James Lahey <clahey@ximian.com> * e-table.c (e_table_setup_header): Set the dnd_code on the header properly. svn path=/trunk/; revision=8110
* Commented out this function since it's not being used.Christopher James Lahey2001-02-091-0/+3
| | | | | | | | | 2001-02-08 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text-model-test.c (describe_model): Commented out this function since it's not being used. svn path=/trunk/; revision=8109
* Added a "header" argument to set the label at the top of the dialog.Christopher James Lahey2001-02-091-30/+31
| | | | | | | | | | 2001-02-08 Christopher James Lahey <clahey@ximian.com> * gal/widgets/gal-categories.glade, gal/widgets/e-categories.c (ec_set_header): Added a "header" argument to set the label at the top of the dialog. svn path=/trunk/; revision=8108
* Don't handle C-Enter.Christopher James Lahey2001-02-091-4/+4
| | | | | | | | | 2001-02-08 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text-event-processor-emacs-like.c (e_text_event_processor_emacs_like_event): Don't handle C-Enter. svn path=/trunk/; revision=8107
* Added this function. Made frozen an int so that recursive freezes andChristopher James Lahey2001-02-092-8/+26
| | | | | | | | | | 2001-02-08 Christopher James Lahey <clahey@ximian.com> * e-tree-model.c, e-tree-model.h (e_tree_model_show_node): Added this function. Made frozen an int so that recursive freezes and thaws behaves properly. svn path=/trunk/; revision=8106
* Store the whole GdkColor instead of just the pixel.Christopher James Lahey2001-02-082-13/+9
| | | | | | | | | 2001-02-07 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-text.c, gal/e-text/e-text.h (e_text_realize): Store the whole GdkColor instead of just the pixel. svn path=/trunk/; revision=8063
* Added Akira's japanese etc. encodings to e-fontLauris Kaplinski2001-02-081-5/+10
| | | | svn path=/trunk/; revision=8056
* Create the local directory when saving if it doesn't exist already.Christopher James Lahey2001-02-071-1/+2
| | | | | | | | | 2001-02-06 Christopher James Lahey <clahey@ximian.com> * gal-view-collection.c (gal_view_collection_save): Create the local directory when saving if it doesn't exist already. svn path=/trunk/; revision=8043
* Change encoding from locale encoding to utf8.Christopher James Lahey2001-02-071-4/+6
| | | | | | | | | 2001-02-06 Christopher James Lahey <clahey@ximian.com> * e-cell-date.c (ecd_get_text): Change encoding from locale encoding to utf8. svn path=/trunk/; revision=8033
* Check for nl_langinfo (CODESET). Code taken from glib 1.3 branch.Christopher James Lahey2001-02-072-2/+130
| | | | | | | | | | | | | | | | | 2001-02-06 Christopher James Lahey <clahey@ximian.com> * configure.in: Check for nl_langinfo (CODESET). Code taken from glib 1.3 branch. * gal/widgets/e-font.c, gal/widgets/e-font.h (e_locale_encoding): Added e_locale_encoding, e_iconv_from_locale, and e_iconv_to_locale. * gal/widgets/e-unicode.c, gal/widgets/e-unicode.h: Added e_utf8_from_locale_string, e_utf8_from_locale_string_sized, e_utf8_to_locale_string, e_utf8_to_locale_string_sized. svn path=/trunk/; revision=8032
* Added e-text-model-testJeffrey Stedfast2001-02-061-0/+1
| | | | | | | | 2001-02-05 Jeffrey Stedfast <fejj@ximian.com> * gal/e-text/.cvsignore: Added e-text-model-test svn path=/trunk/; revision=8015
* Ignore test-dropdown-buttonJeffrey Stedfast2001-02-062-0/+5
| | | | | | | | 2001-02-05 Jeffrey Stedfast <fejj@ximian.com> * .cvsignore: Ignore test-dropdown-button svn path=/trunk/; revision=8013
* Changed draw_borders from a gboolean to a a guint : 1.Christopher James Lahey2001-02-061-1/+1
| | | | | | | | | 2001-02-05 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-entry.h: Changed draw_borders from a gboolean to a a guint : 1. svn path=/trunk/; revision=7990
* Removed unnecessary comment about now non-existant virtual column list.Christopher James Lahey2001-02-061-7/+0
| | | | | | | | | 2001-02-05 Christopher James Lahey <clahey@ximian.com> * gal-define-views-model.h: Removed unnecessary comment about now non-existant virtual column list. svn path=/trunk/; revision=7989
* Changed the text to pop up the Field Chooser.Christopher James Lahey2001-02-061-1/+1
| | | | | | | | | 2001-02-05 Christopher James Lahey <clahey@helixcode.com> * e-table-header-item.c: Changed the text to pop up the Field Chooser. svn path=/trunk/; revision=7988
* Fixed a number of small bugs in how we were saving and loading viewChristopher James Lahey2001-02-062-7/+46
| | | | | | | | | | | | | 2001-02-05 Christopher James Lahey <clahey@helixcode.com> * gal-view-collection.c: Fixed a number of small bugs in how we were saving and loading view collections. * gal-view-etable.c (config_changed): Send the changed signal properly. (gal_view_etable_construct): Duplicate the spec's state here. svn path=/trunk/; revision=7986
* Added a "changed" signal.Christopher James Lahey2001-02-065-11/+79
| | | | | | | | | | | | | | | 2001-02-05 Christopher James Lahey <clahey@helixcode.com> * e-table-config.c, e-table-config.h (dialog_apply): Added a "changed" signal. * e-table-sort-info.c, e-table-sort-info.h (e_table_sort_info_duplicate): Added this function. * e-table.c (e_table_set_state_object): Duplicate the state's sort_info object here. svn path=/trunk/; revision=7985
* Make some private variables static in `ETableSorter'.Ettore Perazzoli2001-02-061-4/+4
| | | | svn path=/trunk/; revision=7982
* Changed the call to iconv to be char ** instead of const char **.Christopher James Lahey2001-02-051-5/+5
| | | | | | | | | | 2001-02-05 Christopher James Lahey <clahey@helixcode.com> * gal/widgets/e-font.c (e_font_to_native), gal/widgets/e-unicode.c (e_utf8_from_gtk_string_sized, e_utf8_to_gtk_string_sized): Changed the call to iconv to be char ** instead of const char **. svn path=/trunk/; revision=7970
* Make this not error out if ecol is not found, but simply return -1.Christopher James Lahey2001-02-051-3/+2
| | | | | | | | | | | 2001-02-04 Christopher James Lahey <clahey@ximian.com> * e-table-item.c (view_to_model_col): Make this not error out if ecol is not found, but simply return -1. (eti_event): Don't call view_to_model_col here as we already have a model column. svn path=/trunk/; revision=7960
* Dont overwrite the end of our bitmap array.Not Zed2001-02-021-1/+2
| | | | | | | | | 2001-02-02 Not Zed <NotZed@Ximian.com> * e-table-selection-model.c (model_row_deleted): Dont overwrite the end of our bitmap array. svn path=/trunk/; revision=7944
* make the segfault caused by double clicking into a critical warning untilLarry Ewing2001-02-011-0/+1
| | | | | | | | | 2001-01-31 Larry Ewing <lewing@ximian.com> * e-table-item.c (view_to_model_col): make the segfault caused by double clicking into a critical warning until it can be fixed. svn path=/trunk/; revision=7927
* added gboolean draw_borders to make it compile, probably some forgottenRadek Doulik2001-02-011-0/+2
| | | | | | | | | 2001-01-31 Radek Doulik <rodo@ximian.com> * gal/e-text/e-entry.h: added gboolean draw_borders to make it compile, probably some forgotten commit of e-entry.h svn path=/trunk/; revision=7926
* Fixed allocation and placement of text for no bordered text.Christopher James Lahey2001-01-311-16/+33
| | | | | | | | | 2001-01-30 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-entry.c (canvas_size_allocate, et_set_arg): Fixed allocation and placement of text for no bordered text. svn path=/trunk/; revision=7922
* Fixed allocation and placement of text window.Christopher James Lahey2001-01-312-25/+34
| | | | | | | | | | | 2001-01-30 Christopher James Lahey <clahey@ximian.com> * gal/e-text/e-entry.c (canvas_size_allocate, et_set_arg): Fixed allocation and placement of text window. * gal/e-text/e-text.c (e_text_draw): Fixed display of the text. svn path=/trunk/; revision=7920
* Reverted the latest change to EText since we're in feature freeze.Christopher James Lahey2001-01-306-333/+63
| | | | | | | | 2001-01-30 Christopher James Lahey <clahey@helixcode.com> * Reverted the latest change to EText since we're in feature freeze. svn path=/trunk/; revision=7912
* Made the contained %ETableItem have cursor_mode asChristopher James Lahey2001-01-304-34/+45
| | | | | | | | | | | | | | | | 2001-01-30 Christopher James Lahey <clahey@helixcode.com> * e-table-click-to-add.c (etcta_event): Made the contained %ETableItem have cursor_mode as %E_TABLE_CURSOR_SPREADSHEET. * e-table-defines.h, e-table-item.c, e-table-specification.c: Added a new cursor mode E_TABLE_CURSOR_SPREADSHEET. This is accessed using cursor_mode="spreadsheet" in your specification xml, as well as by the click_to_add item. It is identical to E_TABLE_CURSOR_SIMPLE, except that tab goes to the next item in the table instead of to the next widget. svn path=/trunk/; revision=7910
* Made carriage return finish editing.Christopher James Lahey2001-01-302-31/+56
| | | | | | | | | | | | 2001-01-30 Christopher James Lahey <clahey@helixcode.com> * e-table-click-to-add.c (etcta_event): Made carriage return finish editing. * e-table-item.c (eti_event): Made carriage return key press signal go out before sending it to the selection model. svn path=/trunk/; revision=7909
* Connect to the model's "position" signal. (e_text_init): Set default valueJon Trowbridge2001-01-306-63/+333
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-29 Jon Trowbridge <trow@gnu.org> * gal/e-text/e-text.c (e_text_init): Connect to the model's "position" signal. (e_text_init): Set default value for rgba_object as blue. (e_text_destroy): Disconnect model position signal. (fix_selection): Some extra sanity checking to keep the selection from spilling outside of the bounds of the text string as it expands or contracts. Should be obsolete due to the changes to objectify_uris --- but I'll leave this in here for now, in an attempt to avoid non-\0-terminated strings, segfaults, and all of that fun stuff. (e_text_text_model_position): Move our cursor according to the suggestions made by our ETextModel, via the "position" signal. (text_width_with_objects): Check that text is not NULL. (text_draw_with_objects): Accept an extra GdkGC for use in drawing objects. (e_text_set_arg): Properly handle the "position" signal when changing models. (e_text_draw): Initialize the GC for drawing objects, if necessary. (_insert): Comment out the code that adjustes text->selection_*. The cursor is now moved by the ETextModel directly via the position signal, not by the view. * gal/e-text/e-text-model-uri.c (objectify_uris): Add more sophisticated uri recognition via regular expressions. (objectify_uris): Changed to track position changes as model->text expands and contracts along with the objects. Block the objectification of any chunks of text that straddle our current position. (e_text_model_uri_set_text): Added position info to objectify_uris call. (e_text_model_uri_insert): Added position info to objectify_uris call. (e_text_model_uri_insert_length): Added position info to objectify_uris call. (e_text_model_uri_delete): Added position info to objectify_uris call. * gal/e-text/e-text-model.c (e_text_model_class_init): Added a "position" signal that allows the ETextModel to send cursor positioning information back to any view. We need this for text with objects, where the text string can grow and shrink in ways that the view doesn't expect. (e_text_model_real_insert): Added sanity checking of args and a position emission. (e_text_model_real_insert_length): Added sanity checking of args and a position emission. (e_text_model_real_delete): Added sanity checking of args. (e_text_model_suggest_position): A wrapper around the "position" signal emitter. svn path=/trunk/; revision=7894
* Added e-cell-number.loChristopher James Lahey2001-01-293-1/+101
| | | | | | | | | | | | | | | | | | | | 2001-01-29 Christopher James Lahey <clahey@ximian.com> * gal/Makefile.am (libgal_la_LIBADD): Added e-cell-number.lo From gal/e-table/Changelog: 2001-01-29 Christopher James Lahey <clahey@ximian.com> * Makefile.am: Added e-cell-number.c and e-cell-number.h. * e-cell-number.c, e-cell-number.h: A new cell for rendering numbers. * e-table-extras.c (ete_init): Added a default number cell. Made the default size cell right aligned. svn path=/trunk/; revision=7889
* Always include +1 for the size. 0*2 == 0, so malloc returns NULL, which isNot Zed2001-01-291-1/+1
| | | | | | | | | | 2001-01-29 Not Zed <NotZed@Ximian.com> * gal/widgets/e-unicode.c (e_utf8_xml1_decode): Always include +1 for the size. 0*2 == 0, so malloc returns NULL, which is not what we want. svn path=/trunk/; revision=7885
* Update copyright and add myself as the author.Ettore Perazzoli2001-01-281-2/+6
| | | | svn path=/trunk/; revision=7877
* Make the ESearchBar pretty by using the same border for the dropdownEttore Perazzoli2001-01-282-3/+31
| | | | | | | | button as the option menu, and adding the right amount of empty space on the right, to match the size of a scrollbar. (The latter is just a dirty ugly bad hack, but it's fine for now.) svn path=/trunk/; revision=7876
* Made the scrolling to show the current roll happen in a time out.Christopher James Lahey2001-01-282-2/+52
| | | | | | | | | 2001-01-28 Christopher James Lahey <clahey@helixcode.com> * e-table-item.c, e-table-item.h: Made the scrolling to show the current roll happen in a time out. svn path=/trunk/; revision=7875
* Documented.Ettore Perazzoli2001-01-281-4/+14
| | | | svn path=/trunk/; revision=7870
* Changed the EDropdownButton so that it works more like a standard menuEttore Perazzoli2001-01-283-16/+60
| | | | | | | | bar (i.e. the menu is popped up on button_press instead of button_release). Now it is also based on GtkToggleButton, so it stays pushed down when the menu is on the screen. svn path=/trunk/; revision=7869
* Make home and end keys move to the beginning and end of the row if cursorChristopher James Lahey2001-01-284-0/+62
| | | | | | | | | | | | | | | | | | | | 2001-01-27 Christopher James Lahey <clahey@helixcode.com> * e-table-item.c (eti_event): Make home and end keys move to the beginning and end of the row if cursor mode is set to E_TABLE_CURSOR_SIMPLE. Otherwise have %ETableSelectionModel handle them. * e-table-selection-model.c, e-table-selection-model.h: Added a "cursor_mode" argument. (e_table_selection_model_key_press): Made home and end keys move the beginning and end of the table if cursor_mode is E_TABLE_CURSOR_MODE_LINE. * e-table.c: Set the cursor-mode argument of our %ETableSelectionModel. svn path=/trunk/; revision=7864
* cvs remove all files in shortcut-bar/, this widget is now in gal, will beJason Leach2001-01-2719-7532/+7
| | | | | | | | | | | 2001-01-27 Jason Leach <jasonleach@usa.net> * cvs remove all files in shortcut-bar/, this widget is now in gal, will be maintained there. * Makefile.am (SUBDIRS): Remove shortcut-bar from here. svn path=/trunk/; revision=7857
* Make the ESearchBar use the new EDropdownButton widget.Ettore Perazzoli2001-01-273-146/+217
| | | | svn path=/trunk/; revision=7855
* Fix the API to EDropdownButton by removing args that don't make muchEttore Perazzoli2001-01-274-21/+13
| | | | | | sense. svn path=/trunk/; revision=7854
* ...And the ChangeLog too.Ettore Perazzoli2001-01-271-0/+4
| | | | svn path=/trunk/; revision=7853
* Ooops, forgot to commit the Makefile.Ettore Perazzoli2001-01-271-9/+27
| | | | svn path=/trunk/; revision=7852
* New, simple dropdown button widget based on the thing that Damon didEttore Perazzoli2001-01-273-0/+390
| | | | | | in `e-meeting-time-sel.c'. svn path=/trunk/; revision=7851
* Make ETable stop editing when it looses focus.Christopher James Lahey2001-01-272-8/+32
| | | | | | | | | | | | | 2001-01-27 Christopher James Lahey <clahey@helixcode.com> * e-table-item.c (eti_event): Make ETable stop editing when it looses focus. * e-table.c (et_canvas_button_press): Make ETable stop editing if you click on an unhandled area of the table canvas (The white area at the bottom for instance.) svn path=/trunk/; revision=7849
* Added; a new test program that demonstrates objects in ETexts.Jon Trowbridge2001-01-276-111/+776
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-26 Jon Trowbridge <trow@gnu.org> * gal/e-text/e-text-model-test.c: Added; a new test program that demonstrates objects in ETexts. * gal/e-text/e-text-model-uri.c: Added; a text model that converts URIs in the text into objects that are passed off to the GNOME URI handler when activated. This is actually still extremely broken; I got it just working enough to test out my EText changes. * gal/e-text/e-text.c: A whole lot of changes, designed to make ETextModel objects render properly. The basic idea of the changes is pretty simple, though. (text_width_with_objects): First of all, this function is an alternative to e_font_utf8_text_width that takes into the account the embedded \1s in the text string and properly accounts for the width of the object strings. (unicode_strlen_with_objects): Next, this function finds the proper strlen of a string, expanding the \1s. (text_draw_with_objects): Finally, this is just a replacement for e_font_draw_utf8_text that does the right thing for objects. I've gone through all of e-text.c and replace calls by those original functions with my new object-enabled alternatives. (split_into_lines): Some tweaking to get line breaking to work properly. Made \1 into a "break character", so that we can break lines between multiple adjacent objects. (Which seemed like the right thing to do, but there may be cases where that is undesireable.) (_get_position_from_xy): Fixed to properly handle embedded objects, and to get the right selection semantics for objects. (Or at least semantics that feel right to me.) Also fixed a bug that caused selection, etc. to not work properly if the text was anchored anywhere other than with GTK_ANCHOR_NORTH*. (_get_position): Hacked to cause objects to activate when they are double-clicked. There is probably a better way to do this. * gal/e-text/e-text-model.c (e_text_model_real_object_count): Provide a default implementation of an object counter. Derived classes might want to override this for efficiency reasons. (e_text_model_strdup_expanded_text): Added. Allocates and returns a string contains the model's text with the objects "expanded" within. * gal/e-text/e-text-model.h: Added obj_count, get_nth_obj, and activate_nth_obj virtual methods to ETextModelClass. svn path=/trunk/; revision=7842
* Set the GTK_CAN_FOCUS flag on the widget, since an ETable ought to beFederico Mena Quintero2001-01-262-85/+165
| | | | | | | | | | | | | | | | | | | | | | | | 2001-01-25 Federico Mena Quintero <federico@ximian.com> * e-table.c (e_table_init): Set the GTK_CAN_FOCUS flag on the widget, since an ETable ought to be focusable. (e_table_class_init): Override ::grab_focus() and ::focus(). (et_grab_focus): Since people may do gtk_widget_grab_focus() on the ETable, we have to proxy the request to the actual focusable canvas. (e_table_setup_header): Unset GTK_CAN_FOCUS for the header canvas. (et_focus): Reject focus if our child canvas already had it. * e-table-scrolled.c (e_table_scrolled_init): Set the GTK_FOCUS_FLAG on the widget. This is just so that people can easily do gtk_widget_grab_focus (my_e_table_scrolled) on their own applications. (e_table_scrolled_class_init): Override ::grab_focus() and ::focus(). (ets_grab_focus): Proxy the grab_focus to our child ETable. (ets_focus): Proxy the request to the child ETable. svn path=/trunk/; revision=7830
* Clamp the value we set here. (compute_offset): Switched to ints here.Christopher James Lahey2001-01-261-16/+16
| | | | | | | | | | 2001-01-25 Christopher James Lahey <clahey@helixcode.com> * gal/widgets/e-canvas-utils.c (e_canvas_item_show_area): Clamp the value we set here. (compute_offset): Switched to ints here. svn path=/trunk/; revision=7825
* Made this function put some space around the area shown.Christopher James Lahey2001-01-261-12/+32
| | | | | | | | | 2001-01-25 Christopher James Lahey <clahey@helixcode.com> * gal/widgets/e-canvas-utils.c (e_canvas_item_show_area): Made this function put some space around the area shown. svn path=/trunk/; revision=7820
* Made this correctly check for going off the end of the table.Christopher James Lahey2001-01-261-2/+4
| | | | | | | | | 2001-01-25 Christopher James Lahey <clahey@helixcode.com> * e-table-selection-model.c (move_selection): Made this correctly check for going off the end of the table. svn path=/trunk/; revision=7817
* Make this actually deploy the titles from the GalViewCollection and emitChristopher James Lahey2001-01-262-111/+133
| | | | | | | | | | 2001-01-25 Christopher James Lahey <clahey@helixcode.com> * menus/gal-view-menus.c: Make this actually deploy the titles from the GalViewCollection and emit the display_view signals and such. svn path=/trunk/; revision=7809
* Documented. Added a "cursor_activated" signal. Removed some unusedChristopher James Lahey2001-01-2510-129/+461
| | | | | | | | | | | | | | | | | | | | 2001-01-25 Christopher James Lahey <clahey@helixcode.com> * e-table-group-container.c, e-table-group-leaf.c, e-table-group.c, e-table-group.h, e-table-item.c, e-table-item.h: Documented. Added a "cursor_activated" signal. Removed some unused functions (e_table_group_get_count and e_table_group_get_ecol). * e-table-selection-model.c, e-table-selection-model.h: Added a "cursor_activated" signal. Call it when the user changes the selection to match the cursor. * e-table.c, e-table.h: Added a "cursor_activated" signal. Fixed the e_table_compute_location function to take into account the scrolled position. svn path=/trunk/; revision=7808
* e_calendar_item_get_date_range() now returns a boolean, which is FALSE ifDamon Chaplin2001-01-253-8/+34
| | | | | | | | | | 2001-01-25 Damon Chaplin <damon@ximian.com> * e-calendar-item.[hc]: e_calendar_item_get_date_range() now returns a boolean, which is FALSE if no dates are currently shown. Plus a couple of minor sanity checks. svn path=/trunk/; revision=7799
* Have the argument system do type checking on our "collection" argument.Christopher James Lahey2001-01-252-12/+17
| | | | | | | | | | | | | | | 2001-01-24 Christopher James Lahey <clahey@helixcode.com> * gal-define-views-dialog.c (gal_define_views_dialog_class_init): Have the argument system do type checking on our "collection" argument. Refactored the setting of the "collection" argument into a set_argument function. * gal-define-views-model.c (gal_define_views_model_class_init): Have the argument system do type checking on our "collection" argument. svn path=/trunk/; revision=7783
* Actually implement this function.Christopher James Lahey2001-01-241-2/+17
| | | | | | | | | 2001-01-24 Christopher James Lahey <clahey@helixcode.com> * gal-view-collection.c (gal_view_collection_get_view_item): Actually implement this function. svn path=/trunk/; revision=7774
* Made GalViewCollectionItem a public type. (load_single_file): Made it soChristopher James Lahey2001-01-242-41/+40
| | | | | | | | | | | | | 2001-01-23 Christopher James Lahey <clahey@helixcode.com> * gal-view-collection.c, gal-view-collection.h: Made GalViewCollectionItem a public type. (load_single_file): Made it so that the filename does not get saved with the directory structure. (gal_view_collection_get_view_item): Added this function to return a certain GalViewCollectionItem. svn path=/trunk/; revision=7773
* Fixed gal_define_views_dialog_new to be called with its proper argument.Jon Trowbridge2001-01-232-1/+6
| | | | | | | | | 2001-01-22 Jon Trowbridge <trow@gnu.org> * menus/gal-view-menus.c (define_views): Fixed gal_define_views_dialog_new to be called with its proper argument. svn path=/trunk/; revision=7707
* Initialize collection field to NULL. Set the collection on the model asChristopher James Lahey2001-01-2210-82/+343
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-22 Christopher James Lahey <clahey@helixcode.com> * gal-define-views-dialog.c, gal-define-views-dialog.h (gal_define_views_dialog_init): Initialize collection field to NULL. Set the collection on the model as soon as we create it. (gal_define_views_dialog_new): Add a GalViewCollection argument to this function. This just makes this dialog a bit easier to use through the API. (gal_define_views_dialog_set_arg): When we set the collection, set it on the dialog->model. * gal-define-views-model.c, gal-define-views-model.h: Rewrote this object to use a GalViewCollection to store the information instead of an array of GalViews. * gal-view-collection.c, gal-view-collection.h: Added gal_view_collection_get_count, gal_view_collection_get_view, gal_view_collection_append, gal_view_collection_delete_view, and gal_view_collection_copy_view. (view_changed, load_single_file): Connect to the "changed" signal on the views. (load_single_dir): Survive loading if there's no xml file. * gal-view-etable.c: Implemented get_type_code method. * gal-view-factory-etable.c: Implemented get_type_code method. * gal-view.c, gal-view.h: Added gal_view_get_type_code and "changed" signal. svn path=/trunk/; revision=7699
* Made the cursor move when rows are inserted or deleted. If in single modeChristopher James Lahey2001-01-221-0/+11
| | | | | | | | | | 2001-01-21 Christopher James Lahey <clahey@helixcode.com> * e-table-selection-model.c: Made the cursor move when rows are inserted or deleted. If in single mode and the selected row gets removed, move it up. svn path=/trunk/; revision=7691
* Use the new gal_view_set_title function.Christopher James Lahey2001-01-217-56/+311
| | | | | | | | | | | | | | | | | | | | | 2001-01-21 Christopher James Lahey <clahey@helixcode.com> * gal-define-views-model.c (gdvm_set_value_at): Use the new gal_view_set_title function. * gal-view-collection.c, gal-view-collection.h: Implemented this. Added gal_view_collection_save and gal_view_collection_load. * gal-view-etable.c: Implemented save, load, and set_title methods for this class. * gal-view-factory.c: Implemented gal_view_factory_get_type_code. * gal-view.c, gal-view.h: Replaced gal_view_save_to_node with gal_view_save. Replaced gal_view_load_from_node with gal_view_load. Added gal_view_set_title. svn path=/trunk/; revision=7676
* Made this conform to the new prototype for e_popup_menu_run.Christopher James Lahey2001-01-218-105/+341
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-21 Christopher James Lahey <clahey@helixcode.com> * e-table-header-item.c (ethi_header_context_menu): Made this conform to the new prototype for e_popup_menu_run. * e-table-item.c, e-table-item.h: Documented. (e_table_item_is_row_selected): Removed this function. (eti_draw): Changed this so that if the ETableItem is in cursor-mode="row", the cursor is draw all the way across the row. (eti_cursor_move_up, eti_cursor_move_down): Commented these out since they're no longer used. (_do_tooltip, eti_event): Commented out tooltips. (eti_event): Made it so that we call the key_press function in the %ETableSelectionModel on each key press. * e-table-selection-model.c, e-table-selection-model.h: Documented. Added a function e_table_selection_model_key_press that does whatever behavior is correct for the user having pressed the given key. Changed the behavior of this to better match windows (use selection-mode="browse"). * e-table-specification.c, e-table-specification.h: Added a draw_focus variable. * e-table.c: Decide whether to draw the focus based on the ETableSpecification. Removed the argument for setting whether to draw the focus. svn path=/trunk/; revision=7673
* Fix memory leak: Unref some stuff if we're not showing the tooltip.Iain Holmes2001-01-211-1/+2
| | | | svn path=/trunk/; revision=7667
* Unset the GTK_CAN_FOCUS flag on the ECalendar. (e_calendar_focus_in):Federico Mena Quintero2001-01-202-33/+14
| | | | | | | | | | | | | | 2001-01-19 Federico Mena Quintero <federico@ximian.com> * e-calendar.c (e_calendar_init): Unset the GTK_CAN_FOCUS flag on the ECalendar. (e_calendar_focus_in): Removed function since it did nothing. (e_calendar_focus_out): Likewise. (e_calendar_key_press): Likewise. (e_calendar_init): Turn off the GTK_CAN_FOCUS flag for both arrow buttons. svn path=/trunk/; revision=7665
* s/GdkEventButton/GdkEvent/Dan Winship2001-01-204-5/+8
| | | | | | | | | | * gal/widgets/e-popup-menu.c (e_popup_menu_run): s/GdkEventButton/GdkEvent/ * gal/widgets/e-gui-utils.c (e_popup_menu): ditto, and deal with key events as well svn path=/trunk/; revision=7660
* Do most of the work to get Grouping working, by reusing massive ammountsMiguel de Icaza2001-01-194-185/+282
| | | | | | | | | | | | | | | | | | Do most of the work to get Grouping working, by reusing massive ammounts of code from the sorting pieces. 2001-01-19 Miguel de Icaza <miguel@gnu.org> * e-table-config.c (group_entry_changed, group_ascending_toggled): New methods. (configure_group_dialog): New function, sets up the group GUI. (e_table_config_construct): Populate column names here and use in configure_group_dialog and configure_sort_dialog (sort_entry_changed, sort_ascending_toggled): renamed from entry_changed, ascending_toggled. svn path=/trunk/; revision=7637
* Keep track of the valid column names (not used right now).Miguel de Icaza2001-01-195-157/+260
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-18 Miguel de Icaza <miguel@gnu.org> * e-table-config.c (configure_sort_dialog): Keep track of the valid column names (not used right now). (config_destroy): release column names (entry_changed): Handle invalid input to mean "Next entry is grayed out". * e-table-header-item.c (ethi_popup_customize_view): Hook up to the "apply" signal on the dialog box to apply the changes. (apply_changes): New function to apply the changes from the ETableConfig object. * e-table-sort-info.c (e_table_sort_info_load_from_node): Notify of sort info changes. * e-table-header-item.c: Swapped the way arrows were done, so that they actually match the sorting that its expected. * e-table.c: Added inline documentation for a few methods. * e-table-config.h: Dropped ::spec, and temp_spec, we always use ::source_spec, as we never modify this variable. svn path=/trunk/; revision=7633
* Fixed text misplacement.Christopher James Lahey2001-01-191-10/+12
| | | | | | | | 2001-01-18 Christopher James Lahey <clahey@helixcode.com> * gal/e-text/e-entry.c: Fixed text misplacement. svn path=/trunk/; revision=7632
* Make zero the minimum number of days that can be specified.Federico Mena Quintero2001-01-192-5/+18
| | | | | | | | | | | | | | | 2001-01-17 Federico Mena Quintero <federico@ximian.com> * e-calendar-item.c (e_calendar_item_set_max_days_sel): Make zero the minimum number of days that can be specified. (e_calendar_item_set_arg): We do need an update when the maximum number of selected days is changed. (e_calendar_item_set_max_days_sel): Request an update of the canvas item. (e_calendar_item_button_press): Do not start selecting days if the max_days_selected is less than 1. svn path=/trunk/; revision=7625
* Disconnect from the etss->source's signals *before* we unref it.Federico Mena Quintero2001-01-192-10/+22
| | | | | | | | | | | | | 2001-01-18 Federico Mena Quintero <federico@ximian.com> * e-table-subset.c (etss_destroy): Disconnect from the etss->source's signals *before* we unref it. * e-table-group-container.c (e_table_group_apply_to_leafs): Ref() and unref() around the callback to protect ourselves from being unrefed in the middle of iterating through the nodes. svn path=/trunk/; revision=7621
* Make tooltip appear properly even if anchor is set.Christopher James Lahey2001-01-181-1/+1
| | | | | | | | | 2001-01-18 Christopher James Lahey <clahey@helixcode.com> * gal/e-text/e-text.c (_do_tooltip): Make tooltip appear properly even if anchor is set. svn path=/trunk/; revision=7620
* Center text vertically.Christopher James Lahey2001-01-181-10/+13
| | | | | | | | | 2001-01-18 Christopher James Lahey <clahey@helixcode.com> * gal/e-text/e-entry.c (canvas_size_allocate, et_set_arg): Center text vertically. svn path=/trunk/; revision=7619
* New function. (update_sort_config_dialog): Massive update to thisMiguel de Icaza2001-01-185-26/+230
| | | | | | | | | | | | | | | | | | | | 2001-01-18 Miguel de Icaza <miguel@gnu.org> * e-table-config.c (find_model_column_by_name): New function. (update_sort_config_dialog): Massive update to this function, it is almost complete now, it just needs a few cosmetic touchups. (config_sort_config_show): Get the main interaction working as well. (config_group_info_update): Beautify. (entry_changed): Do all the magic for the GUI for entries. (ascending_toggled): Implement callback. (configure_sort_dialog): Do also descending. (configure_sort_dialog): Hook up changed/toggled. * e-table-config.h: Put all the configuration stuff for sorting into its own structure to pass around funny functions. svn path=/trunk/; revision=7617
* Made EEntry be shrinkable.Christopher James Lahey2001-01-181-3/+6
| | | | | | | | 2001-01-17 Christopher James Lahey <clahey@helixcode.com> * gal/e-text/e-entry.c (e_entry_init): Made EEntry be shrinkable. svn path=/trunk/; revision=7604
* Make justification work properly for entries. Documented.Christopher James Lahey2001-01-182-2/+50
| | | | | | | | | 2001-01-17 Christopher James Lahey <clahey@helixcode.com> * gal/e-text/e-entry.c, gal/e-text/e-entry.h (et_set_arg): Make justification work properly for entries. Documented. svn path=/trunk/; revision=7603
* Added a collection argument to this to set the GalViewCollection.Christopher James Lahey2001-01-1811-36/+315
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-17 Christopher James Lahey <clahey@helixcode.com> * gal-define-views-dialog.c, gal-define-views-dialog.h: Added a collection argument to this to set the GalViewCollection. Connected up the modify, delete, and copy buttons. Documented. * gal-define-views-model.c, gal-define-views-model.h: Added gal_define_views_model_get_view, gal_define_views_model_delete_view, and gal_define_views_model_copy_view methods. Documented. * gal-view-collection.c: Documented. * gal-view-etable.c, gal-view-etable.h: Documented. Implemented edit and clone methods of GalView. Initialized state to a non-NULL value. Added a name parameter to gal_view_etable_new. * gal-view-factory-etable.c: Documented. Added the name argument to gal_view_etable_new. * gal-view-factory.c: Fixed the g_return_val_if_fails to check for GalViewFactory as the type instead of GalView. * gal-view.c, gal-view.h: Added the clone method. svn path=/trunk/; revision=7599
* Oops. Delete this. I never meant for this to get commit'd.Jeffrey Stedfast2001-01-182-23/+5
| | | | | | | | | 2001-01-17 Jeffrey Stedfast <fejj@ximian.com> * e-messagebox.c (e_message_box_get_id): Oops. Delete this. I never meant for this to get commit'd. svn path=/trunk/; revision=7587
* Dont remove the function, give it the proper nameJP Rosevear2001-01-172-0/+25
| | | | | | | | | 2001-01-17 JP Rosevear <jpr@ximian.com> * e-messagebox.c (e_message_box_get_id): Dont remove the function, give it the proper name svn path=/trunk/; revision=7580
* Fix the build by removing a stale function definition. Sigh.Ettore Perazzoli2001-01-172-20/+6
| | | | svn path=/trunk/; revision=7578
* Hi fejj. Using your computer to check in the files you forget to add. :-)Jeffrey Stedfast2001-01-172-0/+451
| | | | svn path=/trunk/; revision=7576
* Removed #inclusion of e-table-config-field.h.Dave Camp2001-01-171-1/+0
| | | | | | | | 2001-01-17 Dave Camp <dave@ximian.com> * e-table-config.c: Removed #inclusion of e-table-config-field.h. svn path=/trunk/; revision=7568
* Added e-messagebox to the build.Jeffrey Stedfast2001-01-172-0/+9
| | | | | | | | | | | 2001-01-17 Jeffrey Stedfast <fejj@ximian.com> * Makefile.am: Added e-messagebox to the build. * e-messagebox.[c,h]: Added a new messagebox window that contains a checkbox for "Don't show me this again." svn path=/trunk/; revision=7566
* This fixes translations of library messages compared to applicationMiguel de Icaza2001-01-174-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes translations of library messages compared to application messages. 2001-01-17 Miguel de Icaza <miguel@gnu.org> * po/POTFILES.in: update. * gal/widgets/color-palette.c: use e-i18n.h * gal/util/e-i18n.h: Avoid inclussion of the GNOME i18n file as we provide our own. 2001-01-17 Miguel de Icaza <miguel@gnu.org> * e-table-header-item.c: Use e-i18n.h here. * e-table.c (et_col_spec_to_col): Use gettext here. (et_real_construct): Use gettext too. (et_col_spec_to_col): Use gettext here. * e-cell-date.c: Use e-i18n.h here. * e-table-config.c (config_sort_info_update): Simplify column grabbing code and drop item layout code. (config_group_info_update): ditto. * e-table-config.c: Get correct translation setup working. 2001-01-17 Miguel de Icaza <miguel@gnu.org> * e-group-bar.c: Use e-i18n.h svn path=/trunk/; revision=7565
* Simplify column grabbing code and drop item layout code.Miguel de Icaza2001-01-171-34/+52
| | | | | | | | | | | | 2001-01-17 Miguel de Icaza <miguel@gnu.org> * e-table-config.c (config_sort_info_update): Simplify column grabbing code and drop item layout code. (config_group_info_update): ditto. * e-table-config.c: Get correct translation setup working. svn path=/trunk/; revision=7564
* Load frames.Miguel de Icaza2001-01-1710-370/+344
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-16 Miguel de Icaza <miguel@gnu.org> * e-table-config.c (configure_sort_dialog): Load frames. * Kill e-table-config-field.c * e-table-specification.c (e_table_specification_save_to_file): Specify version to xmlNewDoc. * e-table-state.c (e_table_state_save_to_string): Specify version to xmlNewDoc. * e-table-config.c (config_destroy): Destroy the copies. Unref the originals. (e_table_config_construct): Duplicate values of configuration here. (configure_sort_dialog): New function that populates the sort gtk combo boxes. * e-table.c (et_col_spec_to_col): Fixup use of title here. Do the actual translation here. * e-table-column-specification.c: Remove title_, it is now called title. Translation needs to take place elsewhere, not here * e-table-specification.c (e_table_specification_duplicate): Add preconditions here. (e_table_specification_save_to_node): ditto. (e_table_specification_save_to_string): ditto. (e_table_specification_save_to_file): ditto. * e-table-state.c (e_table_state_duplicate): Implement. * e-table-config.glade (dialog_sort): Change drop down menus to use GtkComboText widgets. * e-table-config.c (configure_dialog): New function, used to set up dialogs. svn path=/trunk/; revision=7563
* Added a bit of documentation. (config_sort_config_show,Christopher James Lahey2001-01-174-6/+44
| | | | | | | | | | | | | | | | | | 2001-01-16 Christopher James Lahey <clahey@helixcode.com> * e-table-config.c: Added a bit of documentation. (config_sort_config_show, config_group_config_show): gnome_dialog_set_parent on the config->dialog_toplevel instead of the config. * e-table-specification: Pass "1.0" instead of NULL to xmlNewDoc here. * e-table-state.c, e-table-state.h: Pass "1.0" instead of NULL to xmlNewDoc here. Make sure that sort_info is never NULL if this object exists. Added ETableStateDuplicate. svn path=/trunk/; revision=7542
* Moved ESearchBar from filter/ to widgets/misc/, a more appropriate home.Jacob Leach2001-01-172-0/+6
| | | | | | | Moved ESearchBar from filter/ to widgets/misc/, a more appropriate home. Bug #1060. svn path=/trunk/; revision=7536
* Emit a "changed" signal to the EText after we gtk_object_set a "model" argJason Leach2001-01-161-0/+1
| | | | | | | | | | 2001-01-16 Jason Leach <jasonleach@usa.net> * gal/e-text/e-text.c (e_text_set_arg): Emit a "changed" signal to the EText after we gtk_object_set a "model" arg and fill the EText with text from the model, which obviously changes the text. svn path=/trunk/; revision=7530
* Added e-cell-date.c, e-cell-date.h, e-cell-size.c, and e-cell-size.h.Christopher James Lahey2001-01-167-71/+366
| | | | | | | | | | | | | | | | | | | | | | | 2001-01-15 Christopher James Lahey <clahey@ximian.com> * Makefile.am: Added e-cell-date.c, e-cell-date.h, e-cell-size.c, and e-cell-size.h. * e-cell-date.c, e-cell-date.h: New cell to implement displaying a date. * e-cell-size.c, e-cell-size.h: New cell to implement displaying a file size. * e-cell-text.c, e-cell-text.h: Got rid of the filter arguments. Replaced them with the ability to subclass ECellText and override the get_text method. Added free_text to override if your get_text implementation returns allocated memory. * e-table-extras.c (ete_init): Added "size" and "date" cells to the default ETableExtras. svn path=/trunk/; revision=7523
* Step 2Miguel de Icaza2001-01-1622-31/+31
| | | | svn path=/trunk/; revision=7521
* Rename from Helix Code -> XimianMiguel de Icaza2001-01-1645-51/+52
| | | | svn path=/trunk/; revision=7520
* Document all entry points. (e_table_specification_save_to_file): ChangeMiguel de Icaza2001-01-165-121/+265
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-01-15 Miguel de Icaza <miguel@gnu.org> * e-table-specification.c: Document all entry points. (e_table_specification_save_to_file): Change prototype to return the number of bytes written. (e_table_specification_duplicate): Implement a function to duplicate nodes. (e_table_specification_save_to_node): Implement missing function. (e_table_specification_save_to_file): Enable. (e_table_specification_save_to_string): Enable. (e_table_specification_load_from_node): Just load the normal version of the click-to-add-message version, let other code translate it. (e_table_specification_load_from_string): Alter prototype to return success code. * e-table-specification.h: Do not store the translated version, store the plain version, so we can restore this later during the saving routines. * e-table.c (et_real_construct): Translate click to add message here. * e-table-header-item.c: Destroy config object if we are destroyed. svn path=/trunk/; revision=7518
* Make output pretier by using newlines when there is a lot of informationMiguel de Icaza2001-01-162-40/+46
| | | | | | | | | | | | 2001-01-15 Miguel de Icaza <miguel@ximian.com> * e-table-config.c (config_fields_info_update): Make output pretier by using newlines when there is a lot of information to display. (config_group_info_update): ditto. (config_sort_info_update): ditto. svn path=/trunk/; revision=7517
* Make output pretier by using newlines when there is a lot of informationMiguel de Icaza2001-01-151-3/+16
| | | | | | | | | | | | 2001-01-15 Miguel de Icaza <miguel@ximian.com> * e-table-config.c (config_fields_info_update): Make output pretier by using newlines when there is a lot of information to display. (config_group_info_update): ditto. (config_sort_info_update): ditto. svn path=/trunk/; revision=7497
* Work on the ETableConfigurator. Pick up where Chris left.Miguel de Icaza2001-01-158-563/+576
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Work on the ETableConfigurator. Pick up where Chris left. A lot more changes to come in the short future. 2001-01-15 Miguel de Icaza <miguel@ximian.com> * e-table-config.c (config_group_info_update): Simplify signature. (config_sort_info_update): Simplify signature. (config_fields_info_update): Implement. (e_table_config_construct): Hook up field change spec. * e-table-header-item.c (config_destroyed): Add new utility function. * e-table-config.c (config_group_info_update): Simpify routine by using g_string. Show a message if there is no grouping. * e-table-config.c: Made e-table-config dialog be a GnomePropertyBox. * e-table-header-item.c (ethi_popup_customize_view): Use the new api. * e-table-config.c (config_sort_info_update): Simplify this routine. Fix bug that was not showing "unsorted" state. (setup_gui): Load XML user interface here. (config_init): Use Glade instead of manually coded user interface. (e_table_config_raise): New api call. 2001-01-14 Miguel de Icaza <miguel@ximian.com> * e-table-config.h: Change parent to be a GtkObject from GnomeDialog. svn path=/trunk/; revision=7495
* Changed the filter function back to being args to be more consistent withChristopher James Lahey2001-01-132-42/+44
| | | | | | | | | 2001-01-12 Christopher James Lahey <clahey@helixcode.com> * e-cell-text.h, e-cell-text.h: Changed the filter function back to being args to be more consistent with the rest of the object. svn path=/trunk/; revision=7465
* New function. Tells whether a key should begin editing. (ect_event,Miguel de Icaza2001-01-122-9/+23
| | | | | | | | | | | 2001-01-12 Miguel de Icaza <miguel@ximian.com> * e-cell-text.c (key_begins_editing): New function. Tells whether a key should begin editing. (ect_event, GDK_KEY_PRESS/RELEASE): check whether we should start editing. svn path=/trunk/; revision=7445
* Implement new function API. Remove Gtk arguments for this. (ect_height):Miguel de Icaza2001-01-122-22/+32
| | | | | | | | | | | | 2001-01-12 Miguel de Icaza <miguel@ximian.com> * e-cell-text.c (e_cell_text_set_filter): Implement new function API. Remove Gtk arguments for this. (ect_height): Pass all the extra information Dan requested. (ect_print): Pass all the extra information Dan requested. (build_current_cell): ditto. svn path=/trunk/; revision=7444
* Close #758 2001-01-12 Miguel de Icaza <miguel@ximian.com>Miguel de Icaza2001-01-121-46/+64
| | | | | | | * e-table-header-item.c (ethi_change_sort_state): Moved the sort-on-click logic to its own function. svn path=/trunk/; revision=7438
* *** empty log message ***Miguel de Icaza2001-01-122-6/+119
| | | | svn path=/trunk/; revision=7437
* Added selection_mode argument.Christopher James Lahey2001-01-125-52/+114
| | | | | | | | | | | | | | | | 2001-01-11 Christopher James Lahey <clahey@helixcode.com> * e-table-selection-model.c, e-table-selection-model.h: Added selection_mode argument. * e-table-specification.c, e-table-specification.h: Added a selection_mode field that is set based on the selection-mode attribute in the ETableSpecification element. * e-table.c (et_real_construct): Set the selection model's selection mode based on the ETableSpecification. svn path=/trunk/; revision=7427
* Made this the same size as an ETableItem with all text items. Made theChristopher James Lahey2001-01-111-22/+26
| | | | | | | | | | 2001-01-10 Christopher James Lahey <clahey@helixcode.com> * e-table-click-to-add.c: Made this the same size as an ETableItem with all text items. Made the background color white. These need to be made themeable. svn path=/trunk/; revision=7370
* Added expansions field and loading and saving of that field.Christopher James Lahey2001-01-113-9/+41
| | | | | | | | | | | 2001-01-10 Christopher James Lahey <clahey@helixcode.com> * e-table-state.c, e-table-state.h: Added expansions field and loading and saving of that field. * e-table.c: Load and save expansion data. svn path=/trunk/; revision=7366
* Unfinished sorted variable model for ETree.Christopher James Lahey2001-01-102-0/+517
| | | | | | | | | 2001-01-10 Christopher James Lahey <clahey@helixcode.com> * e-tree-sorted-variable.c, e-tree-sorted-variable.h: Unfinished sorted variable model for ETree. svn path=/trunk/; revision=7355
* Removed an unused variable. (e_utf8_from_gtk_string_sized): Made ib constChristopher James Lahey2001-01-091-2/+3
| | | | | | | | | | 2001-01-06 Christopher James Lahey <clahey@helixcode.com> * gal/widgets/e-unicode.c (e_utf8_xml1_decode): Removed an unused variable. (e_utf8_from_gtk_string_sized): Made ib const here. svn path=/trunk/; revision=7307
* Fixed sorting. needs_sorting was getting set to 0 when sorted happens, butChristopher James Lahey2001-01-062-30/+3
| | | | | | | | | | | | 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
* Broke font and fontset parts of EFont into separate functions. PossiblyLauris Kaplinski2001-01-061-2/+52
| | | | | | fixed bug #857 (needs some more testing) svn path=/trunk/; revision=7279
* Fixed the border bug. Borders draw properly now.Christopher James Lahey2001-01-051-2/+2
| | | | | | | | | 2001-01-04 Christopher James Lahey <clahey@helixcode.com> * gal/e-text/e-text.c (e_text_draw): Fixed the border bug. Borders draw properly now. svn path=/trunk/; revision=7263
* bump versionJP Rosevear2001-01-051-0/+174
| | | | | | | | | | | | | | | | 2001-01-04 JP Rosevear <jpr@helixcode.com> * configure.in: bump version * gal/widgets/gal-categories.glade: Glade file for category editor * gal/widgets/e-categories.[hc]: A category editor dialog taken and renamed from evolution * gal/widgets/Makefile.am: Build new files and install glade stuff svn path=/trunk/; revision=7260
* Added functions for encoding utf8 safely into libxml brokennessLauris Kaplinski2001-01-032-0/+100
| | | | svn path=/trunk/; revision=7225
* Add support here for "cursor_pos". (et_get_arg): Handle ARG_CURSOR_POS.Miguel de Icaza2000-12-292-5/+35
| | | | | | | | | | | | | | | 2000-12-29 Miguel de Icaza <miguel@helixcode.com> * gal/e-text/e-entry.c: Add support here for "cursor_pos". (et_get_arg): Handle ARG_CURSOR_POS. (et_set_arg): ditto. * gal/e-text/e-text.c: Add new argument: "cursor_pos". (e_text_get_arg): Handle ARG_CURSOR_POS. (e_text_set_arg): Handle ARG_CURSOR_POS. (e_text_class_init): Add. svn path=/trunk/; revision=7192
* Removed a bunch of unused code.Christopher James Lahey2000-12-271-217/+0
| | | | | | | | | 2000-12-27 Christopher James Lahey <clahey@helixcode.com> * e-cell-text.c (ect_draw, ect_event): Removed a bunch of unused code. svn path=/trunk/; revision=7179
* Added a "draw_background" argument. Set the default for theChristopher James Lahey2000-12-272-2/+19
| | | | | | | | | | | | | 2000-12-26 Christopher James Lahey <clahey@helixcode.com> * gal/e-text/e-entry.c: Added a "draw_background" argument. Set the default for the "draw_background" argument to the contained EText to TRUE. * gal/e-text/e-text.c: Changed the default for the "draw_background" argument to FALSE. svn path=/trunk/; revision=7176
* Connect to the "changed" and "activate" signals on the EText to the proxyMiguel de Icaza2000-12-261-0/+22
| | | | | | | | | | | 2000-12-26 Miguel de Icaza <miguel@helixcode.com> * gal/e-text/e-entry.c: Connect to the "changed" and "activate" signals on the EText to the proxy routines. (e_entry_proxy_changed): Proxy this to our signals. (e_entry_proxy_activate): ditto. svn path=/trunk/; revision=7173
* Always have some text. Fixes crash.Miguel de Icaza2000-12-262-1/+1
| | | | | | | | | | 2000-12-25 Miguel de Icaza <miguel@helixcode.com> * gal/e-text/e-text.c (e_text_init): Always have some text. Fixes crash. * gal/widgets/e-reflow.c (set_empty): Set draw_background to FALSE. svn path=/trunk/; revision=7172
* Always have some text. Fixes crash.Miguel de Icaza2000-12-262-5/+7
| | | | | | | | 2000-12-25 Miguel de Icaza <miguel@helixcode.com> * gal/e-text/e-text.c (e_text_init): Always have some text. Fixes crash. svn path=/trunk/; revision=7171
* draw_background=FALSEMiguel de Icaza2000-12-262-0/+3
| | | | svn path=/trunk/; revision=7170
* Set draw_background to FALSE.Miguel de Icaza2000-12-252-0/+6
| | | | | | | | | 2000-12-25 Miguel de Icaza <miguel@helixcode.com> * e-meeting-time-sel.c (e_meeting_time_selector_attendee_add): Set draw_background to FALSE. svn path=/trunk/; revision=7168
* Set draw_background to FALSE.Miguel de Icaza2000-12-251-0/+1
| | | | | | | | | | | | | 2000-12-25 Miguel de Icaza <miguel@helixcode.com> * e-cell-text.c (ect_show_tooltip): Set draw_background to FALSE. * e-table-group-container.c (etgc_add): ditto. * e-table-click-to-add.c (etcta_realize): ditto. (e_table_click_to_add_commit): ditto. svn path=/trunk/; revision=7165
* Made the code CanvasItem correct: the code should not draw at arbitraryMiguel de Icaza2000-12-251-6/+16
| | | | | | | | | | | | | | | 2000-12-25 Miguel de Icaza <miguel@helixcode.com> * gal/e-text/e-text.c (e_text_draw): Made the code CanvasItem correct: the code should not draw at arbitrary positions in the GdkWindow, it should instead draw from item->x1, item->y1 to item->y1, item->y2 (Chris, we need to talk about this, I think my current fix is passable, but might not be fully correct. Specially the interpretation of the width, height arguments). (e_text_class_init): Fix name. (e_text_set_arg): Use correct name. svn path=/trunk/; revision=7163
* Pass draw_background = FALSEMiguel de Icaza2000-12-252-0/+5
| | | | | | | | 2000-12-25 Miguel de Icaza <miguel@helixcode.com> * e-icon-bar.c (e_icon_bar_add_item): Pass draw_background = FALSE svn path=/trunk/; revision=7162
* add api docs.Chris Toshok2000-12-252-0/+57
| | | | | | | | | | 2000-12-24 Chris Toshok <toshok@helixcode.com> * e-cell-tree.c: add api docs. * e-tree-simple.c: add api docs. svn path=/trunk/; revision=7161
* Handle draw background. (e_text_draw): Support both border drawing andMiguel de Icaza2000-12-253-50/+106
| | | | | | | | | | | | | 2000-12-24 Miguel de Icaza <miguel@helixcode.com> * gal/e-text/e-text.c (e_text_set_arg): Handle draw background. (e_text_draw): Support both border drawing and background drawing. * gal/e-text/e-entry.c (et_get_arg, et_set_arg): Reduce code size by casting once. (et_set_arg, et_get_arg): Add ARG_DRAW_BORDERS handling. svn path=/trunk/; revision=7159
* Destroy text and pixbuf if they exist whether or not is_pixbuf is set.Christopher James Lahey2000-12-237-27/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-12-23 Christopher James Lahey <clahey@helixcode.com> * e-table-col.c, e-table-col.h (etc_destroy): Destroy text and pixbuf if they exist whether or not is_pixbuf is set. (e_table_col_new_with_pixbuf): Make new_with_pixbuf take a title argument which is for when you can't display pixmaps. * e-table-column-specification.c (e_table_column_specification_load_from_node): Don't translate the pixbuf string attribute. * e-table-sort-info.c, e-table-sort-info.h (e_table_sort_info_load_from_node): Added a state_version parameter to the load_from_node function. This lets the loader specify which version of ETableState is being processed. If it's less than .05, use the old nested version. If it's greater, use the new flat version. (e_table_sort_info_save_to_node): Changed this to store a list of group and leaf nodes instead of nesting the group nodes and leaf nodes one inside the other. This is much easier to understand and requires less typing when creating a new ETableSpecification's initial ETableState. * e-table-state.c: Changed the state-version parameter to 0.1. (e_table_state_load_from_node): Use e_xml_get_double_prop_by_name_with_default so that we can specify a state-version default of 0.1 for people writing ETableStates by hand. Pass the state-version to e_table_sort_info_load_from_node. * e-table.c (et_col_spec_to_col): Pass the title from the ETableColumnSpecification to the ETableCol even if it's a pixbuf column. svn path=/trunk/; revision=7138
* translationsJP Rosevear2000-12-233-10/+125
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-12-22 JP Rosevear <jpr@helixcode.com> * gui/goto-dialog.glade.h: translations * gui/goto-dialog.glade: new glade file for goto dialog * gui/gnome-cal.c (setup_widgets): Set date navigator attributes * gui/calendar-commands.h: remove prototype * gui/goto.h: Add prototype * gui/Makefile.am: Add glade file stuff * gui/gnome-cal.c (setup_widgets): Use accessors to configure the calendar item properly 2000-12-22 JP Rosevear <jpr@helixcode.com> * e-calendar-item.h: add prototypes * e-calendar-item.c (e_calendar_item_init): Set max_days_selected to 1 and days_to_start_week_selection to -1 as documented in header (e_calendar_item_set_arg): use new accessor methods (e_calendar_item_get_arg): ditto (e_calendar_item_get_max_days_sel): accessor (e_calendar_item_set_max_days_sel): ditto (e_calendar_item_get_days_start_week_sel): ditto (e_calendar_item_set_days_start_week_sel): ditto (e_calendar_item_class_init): add display_popup argument (e_calendar_item_init): initialize display_popup member (e_calendar_item_get_arg): get display_popup member (e_calendar_item_set_arg): set display_popup member (e_calendar_item_button_press): only show the popup menu if the member is set (e_calendar_item_get_display_popup): acessor (e_calendar_item_set_display_popup): ditto svn path=/trunk/; revision=7132
* Set the minimum width of newly created children.Christopher James Lahey2000-12-195-42/+69
| | | | | | | | | | | | | | | | | | | | | 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
* ditto.Miguel de Icaza2000-12-191-2/+2
| | | | | | | | | | | 2000-12-19 Miguel de Icaza <miguel@helixcode.com> * gal/widgets/widget-pixmap-combo.h: ditto. * gal/widgets/widget-color-combo.h: Fix parent class. It should have been GtkComboBoxClass, not GnomeCanvasClass. svn path=/trunk/; revision=7077
* Upped the version number to 0.4.1. Bumped the GAL_REVISION to 1.Christopher James Lahey2000-12-161-8/+0
| | | | | | | | | | | | | | | | 2000-12-15 Christopher James Lahey <clahey@helixcode.com> * configure.in: Upped the version number to 0.4.1. Bumped the GAL_REVISION to 1. 2000-12-14 Christopher James Lahey <clahey@helixcode.com> * gal/widgets/e-canvas-vbox.c (e_canvas_vbox_event): Don't allow the arrow keys to let you scroll off of the table. * NEWS: Changed the NEWS format. svn path=/trunk/; revision=7049
* #include <time.h>Federico Mena Quintero2000-12-153-1/+5
| | | | | | | | 2000-12-14 Federico Mena Quintero <federico@helixcode.com> * e-dateedit.h: #include <time.h> svn path=/trunk/; revision=7034
* Removed the set cursor and get cursor methods from ETableGroup.Christopher James Lahey2000-12-155-93/+6
| | | | | | | | | | | | | | | 2000-12-14 Christopher James Lahey <clahey@helixcode.com> * e-table-group-container.c, e-table-group-leaf.c, e-table-group.c, e-table-group.h: Removed the set cursor and get cursor methods from ETableGroup. * e-table.c (e_table_get_cursor_row, e_table_set_cursor_row): Changed this to use the ETableSelection directly instead of going through the grouping structure. This seems to fix a bug in evolution's folder list for some people. svn path=/trunk/; revision=7018
* call set_style and use the appropriate style for the text to determine ifChris Toshok2000-12-151-1/+4
| | | | | | | | | | 2000-12-14 Chris Toshok <toshok@helixcode.com> * e-cell-text.c (ect_show_tooltip): call set_style and use the appropriate style for the text to determine if the tooltip should be shown. svn path=/trunk/; revision=7016
* Commented out an unused variable to fix a warning.Christopher James Lahey2000-12-151-0/+2
| | | | | | | | | 2000-12-14 Christopher James Lahey <clahey@helixcode.com> * e-table-item.c (eti_realize): Commented out an unused variable to fix a warning. svn path=/trunk/; revision=7014
* Added eti_visibility_notify. Didn't get it to work properly, so it's #ifChristopher James Lahey2000-12-141-0/+25
| | | | | | | | | 2000-12-13 Christopher James Lahey <clahey@helixcode.com> * e-table-item.c (eti_realize): Added eti_visibility_notify. Didn't get it to work properly, so it's #if 0ed out. svn path=/trunk/; revision=6991
* Changed the color from yellow to light gray.Christopher James Lahey2000-12-142-2/+7
| | | | | | | | | | | | | 2000-12-13 Christopher James Lahey <clahey@helixcode.com> * gal/e-text/e-text.c (_do_tooltip): Changed the color from yellow to light gray. * gal/widgets/e-canvas-vbox.c (e_canvas_vbox_event): Made it so that e-canvas-vbox doesn't eat all the keyboard events. This means widget navigation keys work properly. svn path=/trunk/; revision=6989
* Changed the background color of the tooltips to light gray.Christopher James Lahey2000-12-142-2/+2
| | | | | | | | | | | | 2000-12-13 Christopher James Lahey <clahey@helixcode.com> * e-cell-text.c (ect_show_tooltip): Changed the background color of the tooltips to light gray. * e-table-item.c (eti_event): Changed the tooltip timeout to 100 milliseconds. svn path=/trunk/; revision=6988
* remove the silly logic - we pop up a tooltip regardless of where the mouseChris Toshok2000-12-142-7/+30
| | | | | | | | | | | | | | | | | | | 2000-12-13 Chris Toshok <toshok@helixcode.com> * e-cell-tree.c (ect_show_tooltip): remove the silly logic - we pop up a tooltip regardless of where the mouse cursor hovers. just make sure it appears in the right place. (ect_event): reverse the change we make to the event after passing it to our subcell. this fixes the problem of the tree reacting twice to events (once with flags == 0, and once with flags == E_CELL_EDITING). * e-table-item.c (eti_event): destroy the tooltip window on a motion event. this can (and does) happen when we get a tooltip on a tree cell and the cursor isn't over the area where the tooltip pops up. svn path=/trunk/; revision=6979
* New function to calculate the extra pixels per column header.Christopher James Lahey2000-12-146-27/+82
| | | | | | | | | | | | | | | | | | | | | | 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
* only return TRUE in the BUTTON_PRESS case if the node was expandable.Chris Toshok2000-12-141-1/+1
| | | | | | | | | 2000-12-13 Chris Toshok <toshok@helixcode.com> * e-cell-tree.c (ect_event): only return TRUE in the BUTTON_PRESS case if the node was expandable. svn path=/trunk/; revision=6977
* 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
* Fixed some warnings.Christopher James Lahey2000-12-121-1/+2
| | | | | | | | 2000-12-12 Christopher James Lahey <clahey@helixcode.com> * e-search-bar.c (esb_pack_menubar): Fixed some warnings. svn path=/trunk/; revision=6940
* Made selected rows ignore their color specification.Christopher James Lahey2000-12-121-1/+1
| | | | | | | | | 2000-12-11 Christopher James Lahey <clahey@helixcode.com> * e-cell-text.c (ect_draw): Made selected rows ignore their color specification. svn path=/trunk/; revision=6935
* Emit double_click signal with the model column, not the view column.Dan Winship2000-12-121-1/+1
| | | | | | | * e-table-item.c (eti_event): Emit double_click signal with the model column, not the view column. svn path=/trunk/; revision=6909
* Split the lines in this cell before testing whether we're to the right ofChristopher James Lahey2000-12-101-8/+12
| | | | | | | | | | 2000-12-09 Christopher James Lahey <clahey@helixcode.com> * e-cell-text.c (_blink_scroll_timeout): Split the lines in this cell before testing whether we're to the right of the right edge of the text data (since that test uses the split lines.) svn path=/trunk/; revision=6892
* cell should be edit cast to a CurrentCell, not data cast to a CurrentCell.Christopher James Lahey2000-12-101-1/+1
| | | | | | | | | 2000-12-09 Christopher James Lahey <clahey@helixcode.com> * e-cell-text.c (_blink_scroll_timeout): cell should be edit cast to a CurrentCell, not data cast to a CurrentCell. Fixed this. svn path=/trunk/; revision=6890
* Added the actions parameter to ect_event. Added an actions field toChristopher James Lahey2000-12-108-62/+112
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-12-09 Christopher James Lahey <clahey@helixcode.com> * e-cell-text.c: Added the actions parameter to ect_event. Added an actions field to CellEdit. Handle CellEdit properly in the ect_event function to do grabbing and ungrabbing when appropriate. Set the actions field in CellEdit when appropriate in e_cell_text_view_command. * e-cell-toggle.c, e-cell-tree.c, e-cell.c, e-cell.h: Added a ECellActions enum, a ECellActions actions parameter to e_cell_event and added the actions parameter to all the handlers of the event method including having ECellTree pass it on to its child cell. * e-table-header-item.c: Use the NULL cursor instead of the E_CURSORS_ARROW cursor. * e-table-item.c, e-table-item.h: Added grabbed_row and grabbed_col fields to ETableItem (-1 on either means ungrabbed.) Pay attention to them in the find_cell function. Handle the actions parameter of e_cell_event and grab or ungrab the pointer to a given cell if requested. This is done using the new function eti_e_cell_event (which is internal to e-table-item.c,) instead of the old e_cell_event function call. Fake an ungrabbed table when calling find_cell from within the compute_location method. svn path=/trunk/; revision=6889
* Unref the object instead of destroying it.Federico Mena Quintero2000-12-104-4/+4
| | | | | | | | | | | | | | | 2000-12-09 Federico Mena Quintero <federico@helixcode.com> * e-table-sorted.c (e_table_sorted_new): Unref the object instead of destroying it. * e-table-sorted-variable.c (e_table_sorted_variable_new): Likewise. * e-table-subset.c (e_table_subset_new): Likewise. * e-table-subset-variable.c (e_table_subset_variable_new): Likewise. svn path=/trunk/; revision=6888
* If there are columns allocated, free them upon a destroy.JP Rosevear2000-12-092-5/+3
| | | | | | | | | | | | | 2000-12-08 JP Rosevear <jpr@helixcode.com> * e-table-state.c (etst_destroy): If there are columns allocated, free them upon a destroy. 2000-12-08 JP Rosevear <jpr@helixcode.com> * gal/widgets/e-canvas.c (e_canvas_destroy): Remove my lame "fix" svn path=/trunk/; revision=6884
* Work to get a Gtk-Doc infrastructure in place for Gal.Miguel de Icaza2000-12-099-50/+45
| | | | | | | | Work to get a Gtk-Doc infrastructure in place for Gal. Miguel. svn path=/trunk/; revision=6883
* Call the parent class destroyer as wellJP Rosevear2000-12-092-0/+8
| | | | | | | | | 2000-12-08 JP Rosevear <jpr@helixcode.com> * e-calendar.c (e_calendar_destroy): Call the parent class destroyer as well svn path=/trunk/; revision=6881
* set "sort_info" on our sorter when we get a new sort_info to keep thingsChris Toshok2000-12-082-4/+60
| | | | | | | | | | | | | | | | | | | 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
* Add column and GdkEvent * parameters to the double click signal.Christopher James Lahey2000-12-0810-330/+62
| | | | | | | | | | | | | | | | | | 2000-12-07 Christopher James Lahey <clahey@helixcode.com> * e-table-group-container.c, e-table-group-leaf.c, e-table-group.c, e-table-group.h, e-table-item.c, e-table.c, e-table.h: Add column and GdkEvent * parameters to the double click signal. * e-table-header-item: Unref the ETableFullHeader when we're done with it. * e-table-scrolled.c, e-table-scrolled.h: Remove all of the proxies and add a function e_table_scrolled_get_table and a gtk argument "table". svn path=/trunk/; revision=6850
* Destroy the gdkIC if we have oneJP Rosevear2000-12-081-0/+5
| | | | | | | | | 2000-12-07 JP Rosevear <jpr@helixcode.com> * gal/widgets/e-canvas.c (e_canvas_destroy): Destroy the gdkIC if we have one svn path=/trunk/; revision=6847
* Free the xmlDoc when we are done with it. (e_table_state_save_to_file):Federico Mena Quintero2000-12-083-5/+13
| | | | | | | | | | | | | | | | | | 2000-12-07 Federico Mena Quintero <federico@helixcode.com> * e-table-state.c (e_table_state_save_to_string): Free the xmlDoc when we are done with it. (e_table_state_save_to_file): Ditto. * e-table.c (e_table_get_state): Unref the state object; why was it being sunk instead? (e_table_save_state): Ditto. (e_table_load_state): Ditto. (e_table_set_state): Ditto. * e-table-header-item.c (ethi_destroy): Free the ethi->dnd_code. svn path=/trunk/; revision=6837
* pass along the column's width to e_cell_show_tooltip.Chris Toshok2000-12-075-17/+14
| | | | | | | | | | | | | | | | | | | | | | | 2000-12-06 Chris Toshok <toshok@helixcode.com> * e-table-item.c (_do_tooltip): pass along the column's width to e_cell_show_tooltip. * e-cell-text.c (ect_show_tooltip): add col_width argument, and set cell.width = col_width - 8 (to mimic what happens in build_current_cell, but with a possibly altered width). * e-cell.c (e_cell_show_tooltip): add col_width argument, and pass along to virtual function. (ec_show_tooltip): add col_width argument. * e-cell.h: change prototype of e_cell_show_tooltip to include a width parameter. * e-cell-tree.c (ect_show_tooltip): send the width - the subcell's offset to e_cell_show_tooltip. svn path=/trunk/; revision=6831
* Adapted these to accept the new flags parameter to e_cell_event.Christopher James Lahey2000-12-076-29/+48
| | | | | | | | | | | | | | | | 2000-12-06 Christopher James Lahey <clahey@helixcode.com> * e-cell-text.c, e-cell-toggle.c, e-cell-tree.c: Adapted these to accept the new flags parameter to e_cell_event. * e-cell.c, e-cell.h: Added a flags parameter to e_cell_event. * e-table-item.c: Send all e_cell_event calls a E_CELL_EDITABLE flag. Add a new e_cell_event to the button press event that happens before selecting the appropriate row and which does not have the E_CELL_EDITABLE flag set. svn path=/trunk/; revision=6823
* Removed incorrect e-list.h include.Christopher James Lahey2000-12-071-1/+0
| | | | | | | | 2000-12-06 Christopher James Lahey <clahey@helixcode.com> * gal-view-collection.h: Removed incorrect e-list.h include. svn path=/trunk/; revision=6819
* Missed this file during the last commit.Chris Lahey2000-12-071-2/+4
| | | | svn path=/trunk/; revision=6817
* Added a GalViewCollection argument to the new function here.Christopher James Lahey2000-12-075-30/+58
| | | | | | | | | | | | | | | 2000-12-06 Christopher James Lahey <clahey@helixcode.com> * menus/gal-view-menus.c, menus/gal-view-menus.h: Added a GalViewCollection argument to the new function here. From meeting-time-sel/ChangeLog: 2000-12-06 Christopher James Lahey <clahey@helixcode.com> * e-meeting-time-sel.c: Fixed a bunch of warnings. svn path=/trunk/; revision=6816
* Added gal-view-collection.c, gal-view-etable.c, gal-view-factory-etable.c,Christopher James Lahey2000-12-0717-157/+868
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-12-06 Christopher James Lahey <clahey@helixcode.com> * Makefile.am: Added gal-view-collection.c, gal-view-etable.c, gal-view-factory-etable.c, gal-view-factory.c, gal-view-collection.h, gal-view-etable.h, gal-view-factory-etable.h, and gal-view-factory.h. * gal-define-views-dialog.c, gal-define-views-dialog.h: Rewrote this to take a GalViewCollection. This now passes its collection to the new view dialog but still doesn't get its list of views from the collection. * gal-define-views-model.c: Changed this to use the gal_view_get_title function instead of the "title" gtk argument. * gal-define-views.glade, gal-define-views.glade.h: Changed this dialog to be a bit cleaner. * gal-view-collection.c, gal-view-collection.h: A collection of views and view factories. * gal-view-etable.c, gal-view-etable.h: An implementation of the view class. This stores an ETableSpecification and the current ETableState. * gal-view-factory-etable.c, gal-view-factory-etable.h: An implementation of the view factory class. This stores an ETableSpecification and creates GalViewEtables when requested. * gal-view-factory.c, gal-view-factory.h: A new virtual class. Its primary job is to return new GalViews. * gal-view-new-dialog.c, gal-view-new-dialog.h: Added a collection argument to the new function here so that it can get a list of factories to choose from. * gal-view-new-dialog.glade, gal-view-new-dialog.glade.h: Added a CList for the list of factories to choose from. * gal-view.c, gal-view.h: Changed this to be a virtual class. svn path=/trunk/; revision=6811
* Fixed warning in compute_elision_length.Christopher James Lahey2000-12-072-18/+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
* disconnect the "group_info_changed" signal on the old sort_info andDan Winship2000-12-071-2/+12
| | | | | | | | | * e-table.c (e_table_set_state_object): disconnect the "group_info_changed" signal on the old sort_info and connect it to the new one. (Noticed because of a gtk warning in et_destroy, but probably fixes some actual bug(s) too.) svn path=/trunk/; revision=6809
* Move the correct offset when memmoving. Patch provided by Richard HultJP Rosevear2000-12-051-1/+1
| | | | | | | | | | 2000-12-05 JP Rosevear <jpr@helixcode.com> * e-tree-model.c (e_tree_model_node_remove): Move the correct offset when memmoving. Patch provided by Richard Hult <rhult@hem.passagen.se>. svn path=/trunk/; revision=6795
* NULL-terminate gal_view_menus_apply's BonoboUIVerb array to prevent aDan Winship2000-12-052-0/+7
| | | | | | | | * menus/gal-view-menus.c: NULL-terminate gal_view_menus_apply's BonoboUIVerb array to prevent a crash. (Why are there gal* things in the evolution sources?) svn path=/trunk/; revision=6777
* need to zero out the bits corresponding to the rows not selected in theChris Toshok2000-12-041-1/+13
| | | | | | | | | | | | 2000-12-04 Chris Toshok <toshok@helixcode.com> * e-table-selection-model.c (e_table_selection_model_select_all): need to zero out the bits corresponding to the rows not selected in the last full 32 bit mask. This fixes a crash in the subscribe UI (or potentially anywhere that uses selection_model_select_all/selection_model_foreach.) svn path=/trunk/; revision=6770
* Federico gets into pixel-perfect neurosis. Xmag is my best friend.Federico Mena Quintero2000-12-036-273/+546
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-12-01 Federico Mena Quintero <federico@helixcode.com> Federico gets into pixel-perfect neurosis. Xmag is my best friend. * e-table-item.c (eti_draw): Set the focus_gc stipple origin to match the upper-left corner of the focus rectangle. This way focusing will look consistent even among rows/columns with odd pixel sizes. Also, make the focus rectangle span the whole cell; there was one blank pixel column to the left of the rectangle. * e-table-header-utils.c: New file with utilities for drawing header buttons. This is so that ETableHeaderItem and ETableFieldChooserItem can share the same code. (e_table_header_compute_height): New function to compute the height of a column button. (make_composite_pixmap): New function to composite a pixbuf against a solid background and make a pixmap out of the result. This does some ultra-fancy fading-out of the original pixbuf if the destination area is smaller than the source. (compute_elision_length): New function to compute the elision length in O(n log n) instead of O(n^2), for n = strlen (str). (e_table_header_draw_button): New function to draw a header button. (e_table_draw_elided_string): New function to draw a string elided to a maximum width. * e-table-defines.h (HEADER_PADDING): Made the default padding be 1; now a header button's height is content_height + 2 * (HEADER_PADDING + style->ythickness). This is the correct way to measure button heights. * e-table-field-chooser-item.c (etfci_find_button): Use e_table_header_compute_height(). (etfci_reflow): Likewise. (etfci_draw): Use e_table_header_draw_button(). (etfci_start_drag): Likewise. (etfci_draw): Likewise. (etfci_start_drag): Likewise. (etfci_button_height): Removed function. (draw_button): Removed function. * e-table-header-item.c (draw_button): Removed function. (e_table_header_item_get_height): Use e_table_header_compute_height(). (ethi_draw): e_table_header_draw_button(). (ethi_start_drag): Likewise. (make_shaped_window_from_xpm): Fixed misspelling in function name. (draw_button): Removed function. * Makefile.am: Added e-table-header-utils.[ch]. svn path=/trunk/; revision=6766
* Move away from unicode_iconv*. We still need libunicode for utf8Dan Winship2000-11-301-25/+9
| | | | | | | | | | | | | | | | | | | | | | | | strings functions, but that will go away eventually. * configure.in: Add a check for libiconv, which is required if your system doesn't have iconv in libc, or has glibc 2.1.2. Bump the gal version number to 0.2.99.3 * tests/Makefile.am (LDADD): add ICONV_LIBS * gal/widgets/Makefile.am (libwidgets_la_LDFLAGS): Add ICONV_LIBS * gal/widgets/e-unicode.c: Use iconv rather than libunicode for iconv()ing. (e_unicode_init): No longer needed * gal/widgets/e-font.c: Use iconv rather than libunicode for iconv()ing. (e_iconv_{from,to}_gdk_font): renamed from e_uiconv... * gal/widgets/test-e-font.c: No longer need to e_unicode_init(). svn path=/trunk/; revision=6719
* ShushJP Rosevear2000-11-291-1/+2
| | | | svn path=/trunk/; revision=6709
* updated to emit "changed" when appropriate, which turned out to beDamon Chaplin2000-11-275-465/+1185
| | | | | | | | | | | | | | | 2000-10-26 Damon Chaplin <damon@helixcode.com> * e-dateedit.[hc]: updated to emit "changed" when appropriate, which turned out to be amazingly difficult :( Also added e_date_edit_get/set_date() to get/set just the date. Added e_date_edit_date_is_valid() & e_date_edit_time_is_valid() so you can check if the user has tried to enter an invalid date. (All the get_date/time functions return the last valid date entered.) * test-dateedit.c: updated a bit. svn path=/trunk/; revision=6672
* Removed e_table_col_get_arrow and e_table_col_set_arrow.Christopher James Lahey2000-11-262-28/+0
| | | | | | | | | 2000-11-25 Christopher James Lahey <clahey@helixcode.com> * e-table-col.c: Removed e_table_col_get_arrow and e_table_col_set_arrow. svn path=/trunk/; revision=6669
* Documented.Miguel de Icaza2000-11-256-29/+212
| | | | | | | | | | | | | | | | | | 2000-11-25 Miguel de Icaza <miguel@helixcode.com> * e-cell.c: Documented. 2000-11-24 Miguel de Icaza <miguel@helixcode.com> * e-cell-toggle.c (etog_queue_redraw): Documented. * e-cell-text.c: Removed list of unused arguments. Add docs. * e-cell-checkbox.c (e_cell_checkbox_new): Add docs. * e-table-simple.c (e_table_simple_new): Add docs. svn path=/trunk/; revision=6665
* inline documentation added.Miguel de Icaza2000-11-253-152/+430
| | | | | | | | | | | | 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
* Save the children - FedericoFederico Mena Quintero2000-11-234-11/+19
| | | | svn path=/trunk/; revision=6652
* Fixed some typos to get the table to display properly.Christopher James Lahey2000-11-222-3/+3
| | | | | | | | | | | | 2000-11-22 Christopher James Lahey <clahey@helixcode.com> * gal-define-views-dialog.c: Fixed some typos to get the table to display properly. * gal-view-new-dialog.c: Fixed the string for loading the glade file for this dialog. svn path=/trunk/; revision=6649
* AdaptMiguel de Icaza2000-11-181-3/+3
| | | | svn path=/trunk/; revision=6610
* Add Makefile.am and .cvsignoreMiguel de Icaza2000-11-182-0/+19
| | | | svn path=/trunk/; revision=6609
* Added widgets/menus that contains the gal-view-menus.c code from Gal thatMiguel de Icaza2000-11-181-1/+2
| | | | | | | | | | | | | 2000-11-18 Miguel de Icaza <miguel@helixcode.com> * Added widgets/menus that contains the gal-view-menus.c code from Gal that depended on Bonobo. * configure.in: Update list of Makefiles; * widgets/Makefile.am: Update. svn path=/trunk/; revision=6608
* Removed test for Bonobo here.Miguel de Icaza2000-11-181-1/+0
| | | | | | | | | | | 2000-11-18 Miguel de Icaza <miguel@helixcode.com> * configure.in (gnomelocaledir): Removed test for Bonobo here. * gal/menus/gal-view-menus.c: Removed this file, and moved into Evolution. svn path=/trunk/; revision=6607
* Updated version number.Christopher James Lahey2000-11-143-17/+25
| | | | | | | | | | | | | 2000-11-13 Christopher James Lahey <clahey@helixcode.com> * configure.in: Updated version number. * gal/e-table/e-tree-model.c, gal/e-table/e-tree-model.h: Added freeze and thaw functions. * gal/menus/gal-define-views-dialog.c: Fixed some warnings. svn path=/trunk/; revision=6563
* Added a bunch of .lo s from the menus directory.Christopher James Lahey2000-11-1211-14/+929
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2000-11-11 Christopher James Lahey <clahey@helixcode.com> * gal/Makefile.am: Added a bunch of .lo s from the menus directory. From gal/menus: 2000-11-11 Christopher James Lahey <clahey@helixcode.com> * Makefile.am: Added gal-define-views-model.c, gal-define-views-model.h, gal-view-new-dialog.c, gal-view-new-dialog.h, gal-view-new-dialog.glade, gal-view-new-dialog.glade.h, gal-view.c, and gal-view.h. * gal-define-views-dialog.c, gal-define-views-dialog.h: Connect up the New button. Use an ETable. * gal-define-views.glade, gal-define-views.glade.h: Put in custom object for the ETable * gal-define-views-model.c, gal-define-views-model.h: New model for list of views. * gal-view-menus.c: Close the define views dialog when it's done. * gal-view-new-dialog.c, gal-view-new-dialog.glade, gal-view-new-dialog.glade.h, gal-view-new-dialog.h: New class for creating a new view. * gal-view.c, gal-view.h: New class for representing a single view in the define views model. svn path=/trunk/; revision=6544
* Made the underline show up properly in the main menu bar.Christopher James Lahey2000-11-111-3/+23
| | | | | | | | | 2000-11-10 Christopher James Lahey <clahey@helixcode.com> * e-search-bar.c: Made the underline show up properly in the main menu bar. svn path=/trunk/; revision=6532
* Switched from using gtk_menu_item_new_with_label for the menu header toChristopher James Lahey2000-11-101-1/+1
| | | | | | | | | 2000-11-10 Christopher James Lahey <clahey@helixcode.com> * e-search-bar.c: Switched from using gtk_menu_item_new_with_label for the menu header to using gnome_stock_menu_item. svn path=/trunk/; revision=6530
* Changed the gal version number and the gal so number. Added check forChristopher James Lahey2000-11-103-2/+236
| | | | | | | | | | | | | | | | | | | | | | 2000-11-09 Christopher James Lahey <clahey@helixcode.com> * configure.in: Changed the gal version number and the gal so number. Added check for bonobo. * gal/Makefile.am: Added gal-view-menus.lo. * gal/widgets/e-unicode.c: Removed some unused variables. From gal/menus/ChangeLog: 2000-11-09 Christopher James Lahey <clahey@helixcode.com> * Makefile.am: Added gal-view-menus.c and gal-view-menus.h. * gal-view-menus.c, gal-view-menus.h: New files to create the view menus. svn path=/trunk/; revision=6528
* Fixed two spacing problems: first, changed the spacing around the end ofAnna Marie Dirks2000-11-101-2/+4
| | | | | | | | | | 2000-11-08 Anna Marie Dirks <anna@helixcode.com> * e-search-bar.c: Fixed two spacing problems: first, changed the spacing around the end of the text-entry widget so that the text entry is always aligned with the beginning of the scrollbar; second, trimmed down the space between the widgets in the search bar. svn path=/trunk/; revision=6522