aboutsummaryrefslogtreecommitdiffstats
path: root/e-util/e-tree.c
Commit message (Collapse)AuthorAgeFilesLines
* Replace GtkStyle usages with GtkStyleContextMilan Crha2014-07-071-9/+12
| | | | | | | | | | | | | | This makes evolution depend on theme-defined named colors, namely: theme_bg_color theme_base_color theme_fg_color theme_text_color theme_selected_bg_color theme_selected_fg_color theme_unfocused_selected_bg_color theme_unfocused_selected_fg_color If it's not defined, then a fallback color is used, in the worse case one of the fallbacks defined in evolution itself.
* Properly disconnect signal handlers added with e_signal_connect_notify*()Milan Crha2014-06-051-2/+2
| | | | | | | | | | | This is a follow-up for the previous commit, where e_signal_connect_notify*() functions had been added. Due to a different callback and user data being attached to the 'notify' signal, the g_signal_handlers_*() functions do not work properly, thus these e_signal_connect_notify*() functions need a different way for a signal handler disconnect. A side-change was done in e-settings-web-view-gtkhtml.c, checking for a real key change from GSettings.
* Ignore false GObject property change notificationsMilan Crha2014-06-051-3/+3
| | | | | | | | | | | | | | | | | | | | | | This is related to bug 698275, which did not cover all cases. The problem here is that the dconf can in certain situation claim that everything changed (path "/" changed), which GSettingsBinding propagates to a GObject property unconditionally and GObject's property setter (g_object_set_property()) also notifies about the property change unconditionally, despite the real descendant property setter properly checks for the value change. After all these false notifications a callback on "notify" signal is called and possibly an expensive operation is run. Checking whether the value really changed helps in performance, for which were added new e-util functions: e_signal_connect_notify() e_signal_connect_notify_after() e_signal_connect_notify_swapped() e_signal_connect_notify_object() which have the same prototype as their GLib counterparts, but they allow only "notify::..." signals and they test whether the value really changed before they call the registered callback.
* Bug #710337 - Define ETree/ETable "alternating-row-colors" style propertyMilan Crha2014-03-141-1/+22
|
* Bug #722938 - Adapt a11y code for newest gtkMike Gorse2014-03-131-1/+2
| | | | | As of gtk+ 3.2, AtkObjectFactories are no longer used to generate accessibles for gtk widgets, so our custom atk classes need refactoring.
* Miscellaneous cleanups.Matthew Barnes2014-03-031-3/+3
|
* Bug 721545 - License text contains obsolete FSF postal addressMatthew Barnes2014-01-081-10/+9
|
* Bug 710797 - Name all the timeouts added with g_timeout_add()Bastien Nocera2013-10-301-2/+4
|
* Miscellaneous cleanups.Matthew Barnes2013-09-081-4/+6
|
* Bug #699603 - Message list scrolls to cursor on style changeMilan Crha2013-08-011-0/+46
|
* Miscellaneous cleanups.Matthew Barnes2013-07-071-2/+2
|
* Remove e_tree_set_state().Matthew Barnes2013-07-021-26/+0
| | | | No longer used.
* Remove e_tree_get_state().Matthew Barnes2013-07-021-22/+0
| | | | No longer used.
* Remove e_tree_new_from_spec_file().Matthew Barnes2013-07-021-85/+0
| | | | | | Also remove e_tree_construct_from_spec_file(). Use e_tree_new() or e_tree_construct() instead.
* e_tree_new: Take an ETableSpecification parameter.Matthew Barnes2013-07-021-25/+13
| | | | | Creating an ETableSpecification is failable, so it's now up to the caller to do that and handle errors before calling e_tree_new().
* e_tree_new_from_spec_file: Remove unused "state_fn" parameter.Matthew Barnes2013-07-021-27/+5
|
* e_tree_new: Remove unused "state_str" parameter.Matthew Barnes2013-07-021-19/+5
|
* ETableState: Convert the column index array to a column spec array.Matthew Barnes2013-07-021-7/+17
|
* ETableCol: Embed an ETableColumnSpecification.Matthew Barnes2013-07-021-6/+10
| | | | Eliminates a few redundant fields.
* ETableState: Add a "specification" construct-only property.Matthew Barnes2013-07-021-4/+4
| | | | | | | | | | ETableState now keeps a weak reference on the ETableSpecification to which it's associated. The plan is to replace the column index numbers with a direct reference to an ETableColumnSpecification from the spec. New functions: e_table_state_ref_specification()
* Calendar views inline text edit with Ctrl+C/V/X does not workMilan Crha2013-06-211-0/+36
| | | | | | | | The shortcuts Ctrl+C/V/X are used for whole calendar items copy/paste/cut, not for text when editing event details inline, either in a day/week view or in a list view. By tracking the is-editing property of respective cell editor and using it when enabling/disabling clipboard actions makes the respective text operations work as expected.
* Update ETree API documentation.Matthew Barnes2013-06-211-9/+9
|
* Remove e_tree_view_to_model_row().Matthew Barnes2013-06-211-11/+0
| | | | Now that ETree no longer has an ESorter, this function is silly.
* Remove e_sorter_new().Matthew Barnes2013-06-211-13/+1
| | | | | | ESorter itself does nothing useful, so there's no reason to create one. ESorter should really be an interface.
* Remove unused e_tree_find_next().Matthew Barnes2013-06-211-78/+0
|
* Remove unused e_tree_get_tooltip().Matthew Barnes2013-06-211-8/+0
|
* Remove unused e_tree_model_to_view_row().Matthew Barnes2013-06-211-12/+0
|
* Remove unused e_tree_get_prev_row().Matthew Barnes2013-06-211-18/+0
|
* Remove unused e_tree_get_next_row().Matthew Barnes2013-06-211-27/+0
|
* Remove unused e_tree_get_printable().Matthew Barnes2013-06-211-8/+0
|
* Remove unused e_tree_load_state().Matthew Barnes2013-06-211-26/+0
|
* Remove unused e_tree_set_search_column().Matthew Barnes2013-06-211-23/+0
|
* Remove unused e_tree_save_state().Matthew Barnes2013-06-211-19/+0
|
* Remove e_tree_row_count().Matthew Barnes2013-06-211-8/+0
| | | | | | | Reducing API bloat. Do this instead: adapter = e_tree_get_table_adapter (tree); row_count = e_table_model_row_count (E_TABLE_MODEL (adapter));
* Remove e_tree_force_expanded_state().Matthew Barnes2013-06-211-12/+0
| | | | | | | Reducing API bloat. Do this instead: adapter = e_tree_get_table_adapter (tree); e_tree_table_adapter_force_expanded_state (adapter, state);
* Remove e_tree_load_expanded_state_xml().Matthew Barnes2013-06-211-10/+0
| | | | | | | Reducing API bloat. Do this instead: adapter = e_tree_get_table_adapter (tree); e_tree_table_adapter_load_expanded_state_xml (adapter, xml);
* Remove e_tree_save_expanded_state_xml().Matthew Barnes2013-06-211-8/+0
| | | | | | | Reducing API bloat. Do this instead: adapter = e_tree_get_table_adapter (tree); xml = e_tree_table_adapter_save_expanded_state_xml (adapter);
* Remove e_tree_load_expanded_state().Matthew Barnes2013-06-211-9/+0
| | | | | | | Reducing API bloat. Do this instead: adapter = e_tree_get_table_adapter (tree); e_tree_table_adapter_load_expanded_state (adapter, filename);
* Remove e_tree_save_expanded_state().Matthew Barnes2013-06-211-9/+0
| | | | | | | Reducing API bloat. Do this instead: adapter = e_tree_get_table_adapter (tree); e_tree_table_adapter_save_expanded_state (adapter, filename);
* Remove e_tree_show_node().Matthew Barnes2013-06-211-9/+0
| | | | | | | Reducing API bloat. Do this instead: adapter = e_tree_get_table_adapter (tree); e_tree_table_adapter_show_node (adapter, path);
* Remove e_tree_root_node_is_visible().Matthew Barnes2013-06-211-8/+0
| | | | | | | Reducing API bloat. Do this instead: adapter = e_tree_get_table_adapter (tree); visible = e_tree_table_adapter_root_node_is_visible (adapter);
* Remove e_tree_row_of_node().Matthew Barnes2013-06-211-11/+6
| | | | | | | Reducing API bloat. Do this instead: adapter = e_tree_get_table_adapter (tree); row = e_tree_table_adapter_row_of_node (adapter, path);
* Remove e_tree_node_at_row().Matthew Barnes2013-06-211-14/+3
| | | | | | | Reducing API bloat. Do this instead: adapter = e_tree_get_table_adapter (tree); path = e_tree_table_adapter_node_at_row (adapter, row);
* Remove e_tree_root_node_set_visible().Matthew Barnes2013-06-211-9/+0
| | | | | | | Reducing API bloat. Do this instead: adapter = e_tree_get_table_adapter (tree); e_tree_table_adapter_root_node_set_visible (adapter, visible);
* Remove e_tree_node_set_expanded_recurse().Matthew Barnes2013-06-211-10/+0
| | | | | | | Reducing API bloat. Do this instead: adapter = e_tree_get_table_adapter (tree); e_tree_table_adapter_node_set_expanded_recurse (adapter, path, expanded);
* Remove e_tree_node_set_expanded().Matthew Barnes2013-06-211-10/+0
| | | | | | | Reducing API bloat. Do this instead: adapter = e_tree_get_table_adapter (tree); e_tree_table_adapter_node_set_expanded (adapter, path, expanded);
* Remove e_tree_node_is_expanded().Matthew Barnes2013-06-211-9/+0
| | | | | | | Reducing API bloat. Do this instead: adapter = e_tree_get_table_adapter (tree); expanded = e_tree_table_adapter_node_is_expanded (adapter, path);
* Remove unused e_tree_right_click_up().Matthew Barnes2013-06-211-6/+0
|
* Remove unused e_tree_drag_unhighlight().Matthew Barnes2013-06-211-11/+0
|
* Remove unused e_tree_drag_highlight().Matthew Barnes2013-06-211-62/+0
|
* Remove unused e_tree_drag_get_data().Matthew Barnes2013-06-211-19/+0
| | | | It just calls gtk_drag_get_data() anyway.
* Remove unused e_tree_drag_dest_unset().Matthew Barnes2013-06-211-13/+0
| | | | It just calls gtk_drag_dest_unset() anyway.
* Remove unused e_tree_drag_dest_set_proxy().Matthew Barnes2013-06-211-15/+0
| | | | It just calls gtk_drag_dest_set_proxy() anyway.
* Remove e_tree_drag_dest_set().Matthew Barnes2013-06-211-17/+0
| | | | Reducing API bloat. Call gtk_drag_dest_set() directly instead.
* Remove e_tree_selected_path_foreach().Matthew Barnes2013-06-211-12/+0
| | | | | | | Reducing API bloat. Do this instead: selection = (ETreeSelectionModel *) e_tree_get_selection_model (tree); e_tree_selection_model_foreach (selection, callback, closure);
* Remove e_tree_selected_row_foreach().Matthew Barnes2013-06-211-12/+0
| | | | | | | Reducing API bloat. Do this instead: selection = (ESelectionModel *) e_tree_get_selection_model (tree); e_selection_model_foreach (selection, callback, closure);
* ETree cleanups.Matthew Barnes2013-06-211-805/+779
|
* Remove e_tree_model_has_get_node_by_id().Matthew Barnes2013-06-161-5/+4
| | | | It always returned TRUE.
* Remove e_tree_model_has_save_id().Matthew Barnes2013-06-161-2/+1
| | | | It always returned TRUE.
* e_tree_model_node_find: Remove "forward_direction" parameter.Matthew Barnes2013-06-151-4/+2
| | | | It's always TRUE.
* Update API documentation.Matthew Barnes2013-03-031-12/+6
|
* Finish adding symbols to libeutil API docs.Matthew Barnes2012-12-151-49/+3
|
* Consolidate base utility libraries into libeutil.Matthew Barnes2012-12-131-0/+3956
Evolution consists of entirely too many small utility libraries, which increases linking and loading time, places a burden on higher layers of the application (e.g. modules) which has to remember to link to all the small in-tree utility libraries, and makes it difficult to generate API documentation for these utility libraries in one Gtk-Doc module. Merge the following utility libraries under the umbrella of libeutil, and enforce a single-include policy on libeutil so we can reorganize the files as desired without disrupting its pseudo-public API. libemail-utils/libemail-utils.la libevolution-utils/libevolution-utils.la filter/libfilter.la widgets/e-timezone-dialog/libetimezonedialog.la widgets/menus/libmenus.la widgets/misc/libemiscwidgets.la widgets/table/libetable.la widgets/text/libetext.la This also merges libedataserverui from the Evolution-Data-Server module, since Evolution is its only consumer nowadays, and I'd like to make some improvements to those APIs without concern for backward-compatibility. And finally, start a Gtk-Doc module for libeutil. It's going to be a project just getting all the symbols _listed_ much less _documented_. But the skeletal structure is in place and I'm off to a good start.