aboutsummaryrefslogtreecommitdiffstats
path: root/doc
Commit message (Collapse)AuthorAgeFilesLines
* Remove e_table_get_state().Matthew Barnes2013-07-021-1/+0
| | | | No longer used.
* Remove e_table_specification_load_from_string().Matthew Barnes2013-07-021-1/+0
| | | | | | | No longer used outside of e-table-specification.c. Its logic is merged into e_table_specification_load_from_file(), but that too will be removed momentarily.
* Remove e_tree_new_from_spec_file().Matthew Barnes2013-07-021-2/+0
| | | | | | Also remove e_tree_construct_from_spec_file(). Use e_tree_new() or e_tree_construct() instead.
* Remove e_table_new_from_spec_file().Matthew Barnes2013-07-021-2/+0
| | | | | | Also remove e_table_construct_from_spec_file(). Use e_table_new() or e_table_construct() instead.
* Remove ETableWithout.Matthew Barnes2013-07-023-28/+0
| | | | No longer used.
* Remove ETableMemory.Matthew Barnes2013-07-023-28/+0
| | | | No longer used.
* Remove ETableMemoryStore.Matthew Barnes2013-07-023-37/+0
| | | | No longer used.
* Add ETableColumnSelector.Matthew Barnes2013-07-023-0/+22
| | | | | A new ETable column selection and ordering widget that looks like it was written in the 21st century. Derives from ETreeViewFrame.
* Remove e_table_column_specification_load_from_node().Matthew Barnes2013-07-021-1/+0
| | | | No longer used.
* Remove e_table_specification_load_from_node().Matthew Barnes2013-07-021-1/+0
| | | | No longer used.
* Add e_table_state_parse_context_push/pop().Matthew Barnes2013-07-021-0/+2
| | | | New parser implementation that uses GMarkupParser instead of libxml2.
* Add e_table_sort_info_parse_context_push/pop().Matthew Barnes2013-07-021-0/+2
| | | | New parser implementation that uses GMarkupParser instead of libxml2.
* ETableSortInfo: Rework API to avoid exposing ETableSortColumn.Matthew Barnes2013-07-021-1/+0
| | | | | | | | Replace ETableSortColumn with separate ETableColumnSpecification and GtkSortType parameters in the "get_nth" and "set_nth" functions. Makes some other parts of the code simpler since it no longer has to translate a column number to a column specification.
* Add e_table_sort_info_sorting_remove().Matthew Barnes2013-07-021-0/+1
|
* ETableSortInfo: Add a "specification" construct-only property.Matthew Barnes2013-07-021-0/+1
| | | | | | | | | | ETableSortInfo 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_sort_info_ref_specification()
* ETableSortInfo: Add a private section.Matthew Barnes2013-07-021-0/+2
|
* ETableSortInfo cleanups.Matthew Barnes2013-07-021-3/+3
|
* Add e_table_header_get_column_by_spec().Matthew Barnes2013-07-021-0/+1
| | | | Will eventually replace e_table_header_get_column_by_col_idx().
* Add e_table_specification_get_column_index().Matthew Barnes2013-07-021-0/+1
| | | | | Lookups up the column index of an ETableColumnSpecification, returns a negative value if no match found.
* Add e_table_column_specification_equal().Matthew Barnes2013-07-021-0/+1
| | | | | Compares two ETableColumnSpecification instances for equality, which just means they both refer to the same model column number.
* ETableSpecification: Add a private section.Matthew Barnes2013-07-021-0/+2
|
* Add e_table_specification_ref_columns().Matthew Barnes2013-07-021-0/+1
|
* ETableState: Add a "specification" construct-only property.Matthew Barnes2013-07-021-0/+1
| | | | | | | | | | 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()
* ETableState: Add a private section.Matthew Barnes2013-07-021-0/+2
|
* Remove unused e_table_sort_info_freeze/thaw().Matthew Barnes2013-06-261-2/+0
|
* Remove unused e_table_column_specification_save_to_node().Matthew Barnes2013-06-261-1/+0
|
* Remove unused e_table_specification_save_to_node().Matthew Barnes2013-06-261-1/+0
|
* Remove unused e_table_specification_save_to_string().Matthew Barnes2013-06-261-1/+0
|
* Remove unused e_table_specification_duplicate().Matthew Barnes2013-06-261-1/+0
|
* Remove unused e_table_specification_save_to_file().Matthew Barnes2013-06-261-1/+0
|
* Add ETreeViewFrame.Matthew Barnes2013-06-263-0/+38
| | | | | | | | | | | | ETreeViewFrame embeds a GtkTreeView in a scrolled window and adds an inline-style toolbar beneath the scrolled window which can be hidden. The inline-style toolbar supports "add" and "remove" actions, as well as move actions if the tree view is reorderable and selection actions if the tree view supports multiple selections. The action set can be extended through e_tree_view_frame_insert_toolbar_action(). This also adds a small demo program: test-tree-view-frame
* EUrlEntry: Replace button with clickable inline icon.Matthew Barnes2013-06-241-1/+0
| | | | | | | | Replace the big, bulky "open URL" button with a clickable icon directly in the text entry field. This saves precious vertical space, especially in the contact editor. Also remove e_url_entry_get_entry() since EUrlEntry now IS a GtkEntry.
* ESorterArray: Further cleanups.Matthew Barnes2013-06-211-1/+0
|
* Convert ESorter to an interface.Matthew Barnes2013-06-211-4/+2
|
* Remove e_tree_view_to_model_row().Matthew Barnes2013-06-211-1/+0
| | | | Now that ETree no longer has an ESorter, this function is silly.
* Remove e_sorter_new().Matthew Barnes2013-06-211-1/+0
| | | | | | 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-2/+0
|
* Remove unused e_tree_get_tooltip().Matthew Barnes2013-06-211-1/+0
|
* Remove unused e_tree_model_to_view_row().Matthew Barnes2013-06-211-1/+0
|
* Remove unused e_tree_get_prev_row().Matthew Barnes2013-06-211-1/+0
|
* Remove unused e_tree_get_next_row().Matthew Barnes2013-06-211-1/+0
|
* Remove unused e_tree_get_printable().Matthew Barnes2013-06-211-1/+0
|
* Remove unused e_tree_load_state().Matthew Barnes2013-06-211-1/+0
|
* Remove unused e_tree_set_search_column().Matthew Barnes2013-06-211-1/+0
|
* Remove unused e_tree_save_state().Matthew Barnes2013-06-211-1/+0
|
* Remove e_tree_row_count().Matthew Barnes2013-06-211-1/+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-1/+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-1/+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-1/+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-1/+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-1/+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-1/+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-1/+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-1/+0
| | | | | | | 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-1/+0
| | | | | | | 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-1/+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-1/+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-1/+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-1/+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-1/+0
|
* Remove unused e_tree_drag_unhighlight().Matthew Barnes2013-06-211-1/+0
|
* Remove unused e_tree_drag_highlight().Matthew Barnes2013-06-211-1/+0
|
* Remove unused e_tree_drag_get_data().Matthew Barnes2013-06-211-1/+0
| | | | It just calls gtk_drag_get_data() anyway.
* Remove unused e_tree_drag_dest_unset().Matthew Barnes2013-06-211-1/+0
| | | | It just calls gtk_drag_dest_unset() anyway.
* Remove unused e_tree_drag_dest_set_proxy().Matthew Barnes2013-06-211-1/+0
| | | | It just calls gtk_drag_dest_set_proxy() anyway.
* Remove e_tree_drag_dest_set().Matthew Barnes2013-06-211-1/+0
| | | | Reducing API bloat. Call gtk_drag_dest_set() directly instead.
* Remove e_tree_selected_path_foreach().Matthew Barnes2013-06-211-1/+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-1/+0
| | | | | | | Reducing API bloat. Do this instead: selection = (ESelectionModel *) e_tree_get_selection_model (tree); e_selection_model_foreach (selection, callback, closure);
* Remove unused e_bit_array_invert_selection().Matthew Barnes2013-06-201-1/+0
|
* Remove unused e_selection_model_invert_selection().Matthew Barnes2013-06-201-1/+0
|
* Remove unused e_table_invert_selection().Matthew Barnes2013-06-201-1/+0
|
* Add e_tree_model_node_get_n_nodes().Matthew Barnes2013-06-201-0/+1
| | | | | Returns the total number of nodes in the tree model, including hidden nodes in collapsed tree branches.
* Update evolution-util API docs.Matthew Barnes2013-06-191-4/+4
|
* ETreeTableAdapter cleanups.Matthew Barnes2013-06-191-4/+4
| | | | | | | | | | | | | This replaces e_tree_table_adapter_construct() with construct properties and overrides GObjectClass.constructed() to finish instance construction. New functions: e_tree_table_adapter_get_source_model() Removed functions: e_tree_table_adapter_construct()
* ETable-related cleanups.Matthew Barnes2013-06-191-0/+1
|
* Remove unused ETableMemoryCallbacks.Matthew Barnes2013-06-192-27/+0
|
* Remove unused ETableMemoryStoreCustomColumn.Matthew Barnes2013-06-191-1/+0
|
* Remove e_tree_model_node_is_editable().Matthew Barnes2013-06-161-1/+0
| | | | It always returned FALSE.
* Remove e_tree_model_set_value_at().Matthew Barnes2013-06-161-1/+0
| | | | Was never called.
* Remove e_tree_model_has_get_node_by_id().Matthew Barnes2013-06-161-1/+0
| | | | It always returned TRUE.
* Remove e_tree_model_has_save_id().Matthew Barnes2013-06-161-1/+0
| | | | It always returned TRUE.
* Remove e_tree_model_icon_at().Matthew Barnes2013-06-161-1/+0
| | | | It always returned NULL.
* Convert ETreeModel to an interface.Matthew Barnes2013-06-163-61/+2
| | | | | | | | | | | | | | | | This commit does a number of things which I could not subdivide into smaller commits. * Converts ETreeModel to an interface, implemented by MessageList. * Drops ETreeMemory and ETreeMemoryCallbacks, which were ETreeModel subclasses. Their functionality is subsumed by MessageList. * MessageList drops its public ETreeModel pointer, since MessageList now implements ETreeModel as an interface. * Adds message_list_set_expanded_default(), which takes over for e_tree_memory_set_expanded_default().
* Add e_tree_memory_get_n_children().Matthew Barnes2013-06-161-1/+1
| | | | | | Replaces e_tree_memory_get_children(). The "paths" output parameter was unused, and was a bad idea anyway.
* Remove e_tree_model_has_change_pending().Matthew Barnes2013-06-161-1/+0
| | | | ETreeMemory does not implement this, so it's always FALSE.
* Remove unused e_tree_model_new().Matthew Barnes2013-06-151-1/+0
|
* Remove unused e_tree_model_node_request_collapse().Matthew Barnes2013-06-151-1/+0
|
* Remove unused e_tree_model_node_col_changed().Matthew Barnes2013-06-151-1/+0
|
* Remove unused e_tree_model_no_change().Matthew Barnes2013-06-151-1/+0
|
* Remove unused e_tree_model_node_traverse_preorder().Matthew Barnes2013-06-151-1/+0
|
* Remove unused e_tree_model_node_get_prev().Matthew Barnes2013-06-151-1/+0
|
* Remove unused e_tree_model_node_get_last_child().Matthew Barnes2013-06-151-1/+0
|
* Remove unused e_tree_memory_new().Matthew Barnes2013-06-151-1/+0
|
* Remove unused e_tree_memory_construct().Matthew Barnes2013-06-151-1/+0
|
* Remove unused e_tree_memory_set_node_destroy_func().Matthew Barnes2013-06-151-1/+0
|
* Remove unused e_tree_memory_sort_node().Matthew Barnes2013-06-151-2/+0
|
* Remove unused e_tree_memory_node_insert_before().Matthew Barnes2013-06-151-1/+0
|
* Remove unused e_tree_memory_node_insert_id().Matthew Barnes2013-06-151-1/+0
|
* Remove unused ETreeSorted.Matthew Barnes2013-06-153-28/+0
|
* Reimplement the main toolbar's "prefer-item" feature.Matthew Barnes2013-06-111-2/+0
| | | | | | | | | | | | | | | | This fixes a bug in the old implementation where the application could crash after a second shell window was created and destroyed, because a signal handler with the destroyed shell window as the closure was left connected. But moreover this simplifies the implementation by using a property binding plus transform function instead of juggling signal handlers, and also adds code comments where things get a little tricky. Removed (now unused) functions: e_shell_window_get_toolbar_new_prefer_item e_shell_window_set_toolbar_new_prefer_item
* Add e_source_selector_update_all_rows().Matthew Barnes2013-06-111-0/+1
| | | | | Calls e_source_selector_update_row() for each ESource being shown by the ESourceSelector, according to the "extension-name" property.
* EMailFormatter: Remove the header API.Matthew Barnes2013-06-081-11/+0
| | | | Use the EMailPartHeaders API instead.
* Add e_mail_part_headers_ref_print_model().Matthew Barnes2013-06-081-0/+3
| | | | | | | | Returns a GtkTreeModel of header names and values and visibility flags, built from the CamelMimeMessage. The tree model rows can be reordered and toggled prior to printing. Also add e_mail_part_headers_is_default() as a handy helper.
* EMailPartHeaders: Add a "default-headers" property.Matthew Barnes2013-06-081-0/+2
| | | | | | | | | This will replace the headers API in EMailFormatter. Need a more permanent place for headers since EMailFormatter is too disposable. Also add an ESettingsMailPartHeaders class, which binds the new property to the "show-headers" setting with a suitable mapping function to filter out disabled header names.
* EMailPart: Add "part-list" property.Matthew Barnes2013-06-061-0/+2
| | | | | | | | | | This is a weak reference to the EMailPartList to which the EMailPart has been added. The property is set by e_mail_part_list_add_part(). New functions: e_mail_part_ref_part_list() e_mail_part_set_part_list()
* Define GEnumClass types for mail formatter/parser enums.Matthew Barnes2013-06-052-1/+2
|
* Add EAutomaticActionPolicy enum.Matthew Barnes2013-06-051-0/+1
| | | | To have a proper GEnumClass registered for ask/always/never choices.
* Add e_composer_header_table_ref_source().Matthew Barnes2013-06-021-0/+1
| | | | | | Convenience function that works like e_source_registry_ref_source(), but spares the caller from digging out the ESourceRegistry from the header table.
* EComposerHeaderTable: Remove "shell" property.Matthew Barnes2013-06-021-1/+0
| | | | | | | | No longer needed. Removed functions: e_composer_header_table_get_shell()
* EComposeHeaderTable: Replace "registry" property with "client-cache".Matthew Barnes2013-06-021-1/+1
| | | | | | | | | | | | | | | | | | | | The ESourceRegistry can still be obtained from the EClientCache: client_cache = e_composer_header_table_ref_client_cache (table); registry = e_client_cache_ref_registry (client_cache); ... g_object_unref (client_cache); g_object_unref (registry); Added functions: e_composer_header_table_ref_client_cache() Removed functions: e_composer_header_table_get_registry()
* Remove e_shell_view_[un]block_update_actions().Matthew Barnes2013-06-011-2/+0
| | | | No longer needed.
* Rename libcomposer to libevolution-mail-composer.Matthew Barnes2013-05-286-0/+346
| | | | | | To make Evolution's shared libraries more consistent. Also add an evolution-mail-composer documentation module.
* Rename libemformat to libevolution-mail-formatter.Matthew Barnes2013-05-286-1/+530
| | | | | | To make Evolution's shared libraries more consistent. Also add an evolution-mail-formatter documentation module.
* Rename libeshell to libevolution-shell.Matthew Barnes2013-05-289-8/+11
| | | | | | To make Evolution's shared libraries more consistent. Also rename the documentation module to evolution-shell.
* Rename libeutil to libevolution-util.Matthew Barnes2013-05-287-11/+12
| | | | | | To make Evolution's shared libraries more consistent. Also rename the documentation module to evolution-util.
* Update libeutil API documentation.Matthew Barnes2013-05-261-7/+8
|
* Add e_activity_cancel().Matthew Barnes2013-04-251-0/+1
| | | | Convenience function cancels the activity's GCancellable.
* Reimplement EPhotoCache to use EPhotoSource.Matthew Barnes2013-04-241-1/+5
| | | | | | | | | | | | | | | | | | | | | Reimplement EPhotoCache to delegate the actual photo fetching to EPhotoSources. When a photo is requested for a given email address, all available EPhotoSources are dispatched concurrently and a photo input stream is selected from the result set. This also utilizes EDataCapture, which is affixed to the returned GInputStream to capture and cache photo data for an email address. New functions: e_photo_cache_add_photo_source() e_photo_cache_list_photo_sources() e_photo_cache_remove_photo_source() e_photo_cache_add_photo() Renamed functions: e_photo_cache_remove() --> e_photo_cache_remove_photo()
* Add EPhotoSource interface.Matthew Barnes2013-04-243-0/+17
| | | | | | | | | EPhotoSource is an interface used to extend the functionality of EPhotoCache. You can add an object implementing EPhotoSource to an EPhotoCache with e_photo_cache_add_photo_source() and remove it with e_photo_cache_remove_photo_source(). When EPhotoCache needs a photo for an email address, it will invoke e_photo_source_get_photo() on all available EPhotoSource objects simultaneously and select one photo.
* Add EDataCapture.Matthew Barnes2013-04-243-0/+21
| | | | | | | | | | EDataCapture is a GConverter that captures data until the end of the input data is seen, then emits a "finished" signal with the captured data in a GBytes instance. When used with GConverterInputStream or GConverterOutputStream, an EDataCapture can discreetly capture stream content for the purpose of caching.
* Update libeutil API docs.Matthew Barnes2013-04-241-2/+2
|
* Add e_shell_view_get_size_group().Matthew Barnes2013-04-091-0/+1
| | | | | Returns a GtkSizeGroup used to keep the search bar and sidebar banner vertically aligned.
* EShellSearchbar: Remove more Express Mode leftovers.Matthew Barnes2013-04-091-8/+0
| | | | | | | | | Remove the following properties and corresponding get/set functions: "express-mode" "filter-visible" "labels-visible" "search-visible"
* EWebView: Use a GQueue to track highlight strings.Matthew Barnes2013-04-081-1/+0
| | | | | This also removes an unused function e_web_view_get_highlights() which was returning a GSList.
* Remove e_preferences_window_filter_page().Matthew Barnes2013-04-011-1/+0
| | | | No longer used.
* Remove e_shell_hide_widgets_for_express_mode().Matthew Barnes2013-04-011-1/+0
| | | | No longer needed.
* Remove EUIManager.Matthew Barnes2013-04-013-24/+0
| | | | No longer needed. Use GtkUIManager directly.
* Add e_load_ui_manager_definition().Matthew Barnes2013-04-011-0/+1
| | | | | | | | Loads a UI definition into a GtkUIManager from Evolution's UI directory. We actually had this function for a brief period during the 2.29 series, before Express Mode was a thing. I'm reviving the function to take over for EUIManager.
* Remove e_shell_configure_ui_manager().Matthew Barnes2013-04-011-1/+0
| | | | No longer needed.
* Remove e_shell_set_startup_view().Matthew Barnes2013-04-011-1/+0
| | | | No longer needed.
* Remove e_shell_get_startup_view().Matthew Barnes2013-04-011-1/+0
| | | | No longer needed.
* EShell: Remove "meego-mode" property.Matthew Barnes2013-04-011-1/+0
| | | | | | The property is always FALSE. Remove both the property itself and any logic predicated on it.
* Remove e_shell_adapt_window_size().Matthew Barnes2013-04-011-1/+0
| | | | Its preconditions are never TRUE, and is therefore a no-op function.
* EShell: Remove "small-screen-mode" property.Matthew Barnes2013-04-011-1/+0
| | | | | | The property is always FALSE. Remove both the property itself and any logic predicated on it.
* Remove e_shell_detect_meego().Matthew Barnes2013-04-011-1/+0
| | | | No longer used.
* Remove EShellSettings.Matthew Barnes2013-03-172-32/+0
| | | | | | | | EShellSettings predates GSettings and is no longer necessary. GSettings allows binding GObject properties to GSettings keys, with optional mapping functions. That fulfills the purpose of EShellSettings.
* Add weekday conversion functions.Matthew Barnes2013-03-092-0/+5
| | | | | e_weekday_to_tm_wday() e_weekday_from_tm_wday()
* Add more weekday arithmetic functions.Matthew Barnes2013-03-081-0/+3
| | | | | | | | | | These aren't as efficient as possible, but are as clear as possible. New functions: e_weekday_add_days() e_weekday_subtract_days() e_weekday_get_days_between()
* Rename functions in previous commit.Matthew Barnes2013-03-081-2/+2
| | | | | | | Changed my mind... got more to add. e_get_next_weekday() -> e_weekday_get_next() e_get_prev_weekday() -> e_weekday_get_prev()
* Add e_get_next_weekday() and e_get_prev_weekday().Matthew Barnes2013-03-071-0/+2
| | | | | | These just cycle over the GDateWeekday enum. Trivial functions, but they help make loops a little easier to read.
* e-util-enums.h: Add EDateWeekday enum.Matthew Barnes2013-03-061-0/+1
| | | | | | This enum type is intentionally compatible with GDateWeekday. It exists only because GLib does not provide a GEnumClass for GDateWeekday. If that ever changes, this enum can go away.
* Update API documentation.Matthew Barnes2013-03-032-1/+16
|
* Use EClientComboBox where appropriate.Matthew Barnes2013-03-021-4/+4
| | | | Basically any place where we use both EClient and ESourceComboBox.
* Add EClientComboBox.Matthew Barnes2013-03-023-0/+26
|
* Add EPhotoCache.Matthew Barnes2013-02-273-0/+27
| | | | | | Caches contact photos by email address. Replaces the disastrous implementation in e-mail-utils.c.
* Add e_client_selector_ref_cached_client_by_iter().Matthew Barnes2013-02-211-0/+1
|
* Add e_source_selector_ref_source_by_iter().Matthew Barnes2013-02-211-0/+1
|
* ESourceSelector: Make source_selector_update_row() public.Matthew Barnes2013-02-211-0/+1
| | | | Gonna need to call this from the EClientSelector subclass.
* Add e_client_selector_is_backend_dead().Matthew Barnes2013-02-211-0/+1
| | | | | | | Returns TRUE if an EClient instance for the given source and the value of ESourceSelector's "extension-name" property was recently discarded after having emitted a "backend-died" signal, and a replacement EClient instance has not yet been created.
* Add e_client_cache_is_backend_dead().Matthew Barnes2013-02-211-0/+1
| | | | | | Returns TRUE if an EClient instance for the given source and extension name was recently discarded after having emitted a "backend-died" signal, and a replacement EClient instance has not yet been created.
* Add EClientSelector.Matthew Barnes2013-02-193-1/+26
| | | | | | | | EClientSelector extends the functionality of ESourceSelector by utilizing an EClientCache to display status information about the backends associated with the displayed data sources. (No backend status is displayed just yet, but that's the plan.)
* EShell: Add a read-only "client-cache" property.Matthew Barnes2013-02-171-0/+1
| | | | | | | | | Give EShell its own EClientCache. This should be used throughout Evolution, wherever an EClient is needed. New functions: e_shell_get_client_cache()
* Add EClientCache.Matthew Barnes2013-02-173-0/+25
| | | | | | | | | | | | | | | New class to help reduce code duplication and centralize some EClient handling policies. Benefits: - EClient instances can be shared across the entire application. - Centralized rebroadcasting of "backend-died" and "backend-error" signals emitted from cached EClient instances. - Automatic cache invalidation when backends crash. The EClient is discarded, and a new instance is created on the next request.
* Remove e-client-utils.[ch].Matthew Barnes2013-01-302-10/+0
|
* e-config: Remove unused functions.Matthew Barnes2012-12-171-7/+0
| | | | | | | | | | | | e_config_add_skip_check() e_config_class_remove_factory() e_config_create_window() e_config_page_get() e_config_page_next() e_config_page_prev() e_config_set_page_is_finish() Also remove E_CONFIG_ASSISTANT and all the assistant support therein.
* e-passwords: Remove unused functions.Matthew Barnes2012-12-171-4/+0
| | | | | | | e_passwords_cancel() e_passwords_clear_passwords() e_passwords_forget_passwords() e_passwords_shutdown()
* Finish adding symbols to libeutil API docs.Matthew Barnes2012-12-154-69/+3045
|
* libeshell documentation cleanups.Matthew Barnes2012-12-143-51/+24
|
* Remove unused E_SHELL_MIGRATE_ERROR domain.Matthew Barnes2012-12-141-2/+0
|
* Move the contact map widgets to addressbook/gui/widgets.Matthew Barnes2012-12-131-2/+0
| | | | | | | | | | | | Move the supporting widgets for the contact maps feature alongside EABContactDisplay. Removing them from libeutil helps isolate our usage of libchamplain so it's not imposed on the entire application, and even 3rd party software. That libchamplain is an optional dependency only further complicates the matter. Ideally I'd like to somehow isolate this feature in an extension module, but we currently lack sufficient hooks for such an extension. So this arrangement will have to suffice for now.
* Consolidate base utility libraries into libeutil.Matthew Barnes2012-12-1315-1124/+2834
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Bug 676141 - Use GtkApplication for session managementMatthew Barnes2012-10-161-2/+0
| | | | | As of GTK+ 3.4, GtkApplication now provides session management support similar to EggSMClient. So drop our copy of EggSMClient.
* Remove some obsolete documentation.Matthew Barnes2012-08-254-344/+0
| | | | These date back to Evolution 1.x era or perhaps earlier.
* Remove the last remaining usage of GConfMilan Crha2012-06-151-1/+1
|
* Adapt API documentation to the new ESource API.Matthew Barnes2012-06-036-157/+280
|
* Add missing linker flags.Matthew Barnes2012-01-191-0/+2
|
* Remove e_dialog_editable_get().Matthew Barnes2011-12-241-1/+0
| | | | | Silly function. Use gtk_entry_get_text() for a const string or else gtk_editable_get_chars() for an allocated string.
* Remove e_dialog_editable_set().Matthew Barnes2011-12-241-1/+0
| | | | Silly function. Use gtk_entry_set_text().
* Remove GConfBridge.Matthew Barnes2011-11-282-18/+0
| | | | No longer needed.
* Remove e_shell_get_gconf_client().Matthew Barnes2011-11-251-1/+0
| | | | No longer needed.
* Move some GBinding transform funcs to libedataserver.Matthew Barnes2011-11-161-2/+0
| | | | | | | | Removes: e_binding_transform_enum_value_to_nick() e_binding_transform_enum_nick_to_value() Those functions now live in libedataserver/e-data-server-util.h, which e-util.h already includes.
* Kill gtk-doc tmpl files.Matthew Barnes2011-11-0850-8547/+0
| | | | Bump our gtk-doc requirement to 1.14 and use --flavour no-tmpl.
* Let GtkFileChooser track its own last-used-folder.Matthew Barnes2011-10-063-31/+25
| | | | | | GtkFileChooser in GTK+ 3.2 now keeps track of the last-used-folder itself, even across applications, so get out of its way and let it handle it.
* GtkApplication has some new EShell-like features.Matthew Barnes2011-10-063-35/+23
| | | | | | | | | | | | | | | | | | I pushed a few EShell features up to GtkApplication for GTK+ 3.2, so we can now trim off the redundancies in EShell. 1) GtkApplication has a new "window-added" signal which replaces EShell's own "window-created" signal. 2) GtkApplication has a new "window-removed" signal which replaces EShell's own "window-destroyed" signal. 3) gtk_application_get_windows() now returns a list of windows sorted by most recently focused, replacing e_shell_get_watched_windows(). 4) GtkApplication now provides enough hooks to subclasses that we can remove e_shell_watch_window() and call gtk_application_add_window() directly.
* Simplify library dependency flags.Matthew Barnes2011-10-051-4/+4
| | | | | | | | | We have a confusing array of nearly-identical CFLAGS/LIBS definitions in configure.ac. Time to simplify. Instead let's just have one definition that includes all the libraries provided by Evolution-Data-Server (incl. Camel). That, in combination with GNOME_PLATFORM, gives us most of what we need for compliation and linking, and we can sprinkle definitions for additional library dependencies in Makefile.am's as needed.
* Miscellaneous cleanups from the account-mgmt branch.Matthew Barnes2011-09-271-0/+1
| | | | | Reducing diff noise so I can see important changes easier when comparing branches. A few API changes, but nothing that affects functionality.
* The EExtension framework is now in libebackend.Matthew Barnes2011-09-268-224/+171
| | | | | | | | The EModule, EExtensible and EExtension classes as well as the e_type_traverse() function have been moved to Evolution-Data-Server's libebackend library to replace e-data-server-module.c. Now Evolution-Data-Server modules use the same framework as Evolution.
* Gtk-Doc updates.Matthew Barnes2011-08-104-10/+17
|
* Remove e_get_subscribable_accounts().Matthew Barnes2011-05-292-10/+0
| | | | Another EAccount utility function down...
* Updated the help license from GFDL 1.2 to GFDL 1.3 and CC-BY-SA 3.0Chenthill Palanisamy2011-05-253-355/+200
| | | | | Checkout http://mail.gnome.org/archives/evolution-list/2010-December/msg00170.html for more details.
* Coding style and whitespace cleanup.Matthew Barnes2011-05-222-9/+8
|
* Remove unused e_get_gnome2_user_dir().Matthew Barnes2011-05-163-10/+8
|
* Remove e_get_account_by_source_url().Matthew Barnes2011-05-062-10/+0
| | | | Function is no longer used, or wanted.
* Remove e_get_account_by_transport_url().Matthew Barnes2011-05-032-10/+0
| | | | Function is no longer used, or wanted.
* Restore lockdown integration.Matthew Barnes2011-03-282-10/+0
| | | | | | | | | | | | | With lockdown settings available through GSettings, widgets can handle lockdown integration themselves without having to use EShellSettings. Also fixed a few places where printing or save-to-disk actions were either not properly wired up or not responding to lockdown settings, but much more work needs done. Attachments, for example, are not honoring the disable-save-to-disk setting at all. This too requires the recently-added gsettings-desktop-schemas dependency.
* Add e_shell_submit_alert().Matthew Barnes2010-12-272-0/+10
| | | | | | An easy way to broadcast application-wide alerts to shell windows. These alerts will persist in all current and future shell windows until responded to (either programmatically or by the user).
* Update API docs.Matthew Barnes2010-12-234-27/+23
|
* Revert the doc changes committed.Bharath Acharya2010-12-013-23/+25
| | | | Messed up some hunks in the doc with my previous commit. Reverting them.
* Bug #636058 - Account setup issues express mode.Punit Jain2010-12-013-25/+23
| | | | Widget name required to update.
* Add GBinding transform funcs for enum types.Matthew Barnes2010-11-052-0/+26
| | | | We'll want to store enum settings by their nicknames.
* Update API docs.Matthew Barnes2010-11-054-4/+66
|
* Utilize the new ESourceSelector:primary-selection property.Matthew Barnes2010-11-021-2/+2
|
* EActivity: Add an "alert-sink" property.Matthew Barnes2010-11-013-5/+23
| | | | | | | This is just for convenience, EActivity does not use this property. Especially useful in async function callbacks when the operation failed and now you have to do something useful with the GError.
* Bug 633172 - Folder->Subscriptions is always enabledMatthew Barnes2010-10-302-0/+10
|
* Bug 633471 - EAttachmentStore store folder name where uri is expectedMatthew Barnes2010-10-302-18/+16
|
* Simplify EActivity.Matthew Barnes2010-10-233-71/+75
| | | | | | | | | | | | | | | | | | | | | | With unintrusive error dialogs gone, we can cut some unnecessary bits out of EActivity. I'm also adding a new enum property called "state", which is one of: E_ACTIVITY_RUNNING E_ACTIVITY_WAITING E_ACTIVITY_CANCELLED E_ACTIVITY_COMPLETED The state of an activity must be explicitly changed. In particular, when the user cancels an activity the state should be set only after confirming the operation has been cancelled and not when cancellation is requested (e.g. after receiving a G_IO_ERROR_CANCELLED, not when the GCancellable emits "cancelled"). EActivityBar and EActivityProxy widgets have been updated to make this distinction clearer in the UI. E_ACTIVITY_WAITING will be used when activities have to be queued and dispatched in sequence, which I haven't written yet.
* ESignatureList cleanups.Matthew Barnes2010-10-213-6/+26
|
* Miscellaneous fixups.Matthew Barnes2010-10-191-0/+9
|
* Move more account utilities to e-account-utils.c.Matthew Barnes2010-10-192-0/+40
|
* Send errors to an EAlertSink instead of the task bar.Matthew Barnes2010-10-195-35/+100
| | | | | | This marks the end of unintrusive error dialogs, which were too unintrusive. We now show errors directly in the main window using the EAlert / EAlertSink framework.
* EAlert: Allow arbitrary actions to be added.Matthew Barnes2010-10-192-0/+6
| | | | | | | | | | | | | | You can now amend the predefined actions in an EAlert by calling e_alert_add_action(). Useful for adding actions from an existing GtkUIManager. Call e_alert_peek_actions() to obtain a combined list of predefined and custom actions. These will typically serve as "related" actions for GtkButtons (cf. gtk_activatable_set_related_action()). Also, both EShellWindow and EShellView now implement EAlertSink. Use EShellWindow for application-wide alerts, EShellView for view-specific alerts.
* Implement EAlertSinkInterface in EShellContent.Matthew Barnes2010-10-182-0/+15
| | | | Use the same alert handling policy as the composer.
* Replace EBinding with GBinding.Matthew Barnes2010-10-144-22/+163
| | | | | | GObject now does property bindings itself. Requires GLib >= 2.26.
* Bug 461769 - Add a --force-online command line optionMatthew Barnes2010-10-143-0/+26
| | | | | Use it to override network availability detection as reported by NetworkManager or other network monitoring software.
* EShellBackend: Respond to EShell::prepare-for-quit signals.Matthew Barnes2010-10-142-0/+7
| | | | | | | | | | | | Listen for "prepare-for-quit" signals from the shell and inhibit shutdown until all the activities we're tracking are finalized. Also, add a couple supporting functions: gboolean e_shell_backend_is_busy (EShellBackend *shell_backend); void e_shell_backend_cancel_all (EShellBackend *shell_backend); These will eventually replace mail_msg_active() and mail_cancel_all().
* Messin around with EAlerts.Matthew Barnes2010-09-303-48/+36
| | | | | | | | | | | | | | | | | | | Trying out a new interface called EAlertSink. The idea is to centralize how errors are shown to the user. A GtkWindow subclass would implement the EAlertSink interface, which consists of a single method: void (*submit_alert) (EAlertSink *alert_sink, EAlert *alert); The subclass has complete control over what to do with the EAlert, although I imagine we'll wind up implementing various alert-handling policies as standalone widgets such as EAlertDialog. I'd like to try an EAlertInfoBar. Code that would otherwise display an error dialog itself would instead pass the EAlert to an appropriate EAlertSink and be done with it. Nothing is final yet. Still hacking on EAlert trying to find an API that feels right for these use cases.
* Add a GCancellable to EActivity.Matthew Barnes2010-09-193-25/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | EActivity now uses a GCancellable to manage cancellations, instead of having its own redundant cancellation API. API changes are as follows: + e_activity_get_cancellable() + e_activity_set_cancellable() - e_activity_cancel() - e_activity_is_cancelled() - e_activity_get_allow_cancel() - e_activity_set_allow_cancel() EActivity's "cancelled" signal remains, but only as a repeater for GCancellable::cancelled signals. It should not be emitted directly. The presence of a GCancellable implies that cancellation is allowed. EActivity does not create its own default GCancellable, it has to be given one. If a CamelOperation (cast as a GCancellable) is given, EActivity will configure itself to listen for status updates from the CamelOperation and propagate the information to its own "primary-text" and "percent" properties. These changes allowed me to start cleaning up some of the incredibly convoluted logic in mail-mt.c -- in particular, mail_operation_status() is completely gone now. mail-mt.c is still in a transitional state -- much more significant changes coming soon.
* Gtk-Doc fussing with SGML files.Matthew Barnes2010-08-0317-34/+0
|
* Fix linker flags for API documentation.Matthew Barnes2010-08-031-4/+4
|
* Add new SGML files for API docs.Matthew Barnes2010-08-0217-0/+2684
|
* Remove unused 'preview' argument from e_import_assistant_new_simple().Matthew Barnes2010-07-301-1/+0
| | | | We preview imported files by other means now.
* Update API documentation.Matthew Barnes2010-07-197-1/+728
|
* Fix places where "~/.evolution" is hard-coded.Matthew Barnes2010-07-093-10/+8
| | | | | Also replace "$USER_DATA_DIR/cache" path constructions with e_get_user_cache_dir().
* Remove gnome-pilot integration.Matthew Barnes2010-06-162-8/+7
| | | | | | | | | | | | | | | | It just doesn't belong in Evolution anymore. We don't support syncing with more modern devices -- see Conduits or SyncEvolution for that -- so it does not make sense for older model Palm Pilot PDAs to be the lone exception. I have repackaged the Evolution-Data-Server conduit modules to be provided by gnome-pilot itself in bug #619315. This should provide eqivalent Palm Pilot syncing functionality; it's just being moved to gnome-pilot. This completely severs our dependency on deprecated GNOME 2.x libraries which were still being dragged in by way of gnome-pilot dependencies. It was also interfereing with our bundling of libgnomecanvas.
* Bug 603468 - Improve handling of --quit optionMatthew Barnes2010-06-131-0/+2
|
* Coding style and whitespace cleanups.Matthew Barnes2010-06-071-2/+0
|
* More GTK3 preparation.Matthew Barnes2010-06-041-0/+69
| | | | | This uses the new gtk_assistant_commit() I had added to GTK+ for our EImportAssistant progress page.
* Merge branch 'express2'Matthew Barnes2010-05-271-0/+10
|\
| * Merge branch 'gnome-2-30' into express2Matthew Barnes2010-05-255-9/+24
| |\
| * | Merge branch 'gnome-2-30' into express2Matthew Barnes2010-05-171-0/+1
| |\|
| | * Let Gtk-Doc do its thing.Matthew Barnes2010-04-2632-0/+112
| | |
| * | Let Gtk-Doc do its thing.Matthew Barnes2010-04-3032-0/+112
| | |
| * | Simplify the search UI for express mode.Matthew Barnes2010-04-076-19/+103
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For express mode: - Move the search bar up to the toolbar. - Hide the "filter" combo box and lock down the first item. - Hide the "scope" combo box and lock down the first item. (This is the combo box with "Current Folder" only in the mailer.) - EShellView owns the search bar widget now instead of EShellContent. - Insert several nasty hacks that will likely come back to bite me. Conflicts: doc/reference/shell/eshell-sections.txt
| * | More API documentation tweaking.Matthew Barnes2010-04-0730-5386/+21
| | |
| * | Demonstrate extending the EExtension API.Matthew Barnes2010-04-074-5/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce e_extensible_list_extensions(), which provides extensible objects access to their own extensions, or a subset of them. Convert EShellBackend to an abstract EExtension subtype. EShell will load its extensions with e_extensible_load_extensions(), and then obtain a list of EShellBackend extensions as follows: shell_backends = e_extensible_list_extensions ( E_EXTENSIBLE (shell), E_TYPE_SHELL_BACKEND); Because EShellBackend is abstract, its GType is skipped while traversing the GType hierarchy to find EShell extensions.
| * | Document EExtensible and EExtension.Matthew Barnes2010-04-075-0/+110
| |/ | | | | | | | | | | The mechanism here is simple but hard to explain without leaning heavily on object-oriented jargon. Consider this a rough draft. Illustrations would certainly help clarify.
* | Fix compiler warnings.Matthew Barnes2010-04-2134-0/+119
| |
* | Generate ChangeLog files for tarball releases.Matthew Barnes2010-04-036-1518/+1
| | | | | | | | Remove old ChangeLog files that predate our switch to git.
* | Add gtk-doc tests, but leave them disabled.Matthew Barnes2010-04-011-1/+0
| |
* | Add --name-space to MKDB_OPTIONS.Matthew Barnes2010-04-011-2/+1
| |
* | Move EPoolv back to Evolution from libedataserver.Matthew Barnes2010-04-012-0/+11
| | | | | | | | | | MessageList is the only thing still using it. EMemPool is gone now, so it uses CamelMemPool instead (same thing).
* | Update API docs.Matthew Barnes2010-03-301-3/+0
| |
* | Drop support for migrating from Evolution < 2.0.Matthew Barnes2010-03-301-28/+0
| | | | | | | | | | | | | | There's too much ancient, crufty code there that we can't realistically support anymore. A workaround for those poor users still on 1.x is to upgrade to some 2.x release first, then upgrade again to 3.x. An error dialog explaining this will be shown at startup.
* | Simplify the search UI for express mode.Matthew Barnes2010-03-276-20/+103
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For express mode: - Move the search bar up to the toolbar. - Hide the "filter" combo box and lock down the first item. - Hide the "scope" combo box and lock down the first item. (This is the combo box with "Current Folder" only in the mailer.) - EShellView owns the search bar widget now instead of EShellContent. - Insert several nasty hacks that will likely come back to bite me.
* | Bug 613639 - Evolution hard codes .gnome2Matthew Barnes2010-03-231-0/+1
| |
* | More API documentation tweaking.Matthew Barnes2010-03-2230-5386/+21
| |
* | Demonstrate extending the EExtension API.Matthew Barnes2010-03-224-5/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce e_extensible_list_extensions(), which provides extensible objects access to their own extensions, or a subset of them. Convert EShellBackend to an abstract EExtension subtype. EShell will load its extensions with e_extensible_load_extensions(), and then obtain a list of EShellBackend extensions as follows: shell_backends = e_extensible_list_extensions ( E_EXTENSIBLE (shell), E_TYPE_SHELL_BACKEND); Because EShellBackend is abstract, its GType is skipped while traversing the GType hierarchy to find EShell extensions.
* | Document EExtensible and EExtension.Matthew Barnes2010-03-225-0/+110
|/ | | | | | The mechanism here is simple but hard to explain without leaning heavily on object-oriented jargon. Consider this a rough draft. Illustrations would certainly help clarify.
* Prevent future bugs like #612792.Matthew Barnes2010-03-151-2/+0
| | | | | | Add G_GNUC_NULL_TERMINATED to EAlert functions with variable-length parameter lists and drop the unnecessary "arg0" parameter so the function attribute works correctly.
* Shell and UI manager cleanups.Matthew Barnes2010-03-144-1/+27
| | | | | | | | | | | | | | | | | | | | | | | | | Replace the EVO_EXPRESS environment variable with an --express command line option. (Note, this adds a new translatable string for --help.) Add an EUIManager class with an "express-mode" property and custom load functions that use our new "express" preprocessor. This replaces the UI manager functions in e-utils.c. (Also going to see if I can get GTK+ to add an "add_ui_from_string" method to GtkUIManagerClass that we can override. Then we could just call gtk_ui_manager_add_ui_from_string() and the preprocessor would automatically do its thing and chain up.) Add an "express-mode" read-only GObject property to EShell. Add e_shell_configure_ui_manager() to e-shell-utils.c. For now this just creates a one-way property binding: EShell:express-mode -> EUIManager:express-mode Call this immediately after e_ui_manager_new(). (EUIManager can't do this itself because it lives too low in the dependency hierarchy and doesn't know about EShell.)
* Update API documentation.Matthew Barnes2010-02-106-6/+81
| | | | Also, start fixing some Gtk-Doc warnings. There's a lot.
* Implement account-wide search scope in mail.Matthew Barnes2010-02-072-9/+13
| | | | Also, let EShellSearchbar handle search state persistence.
* Add a EShellWindow::shell-view-created signal.Matthew Barnes2010-01-232-0/+19
| | | | | | | | | | | | | The signal uses the name of the newly created shell view as the detail, so for example "shell-view-created::mail" is emitted when the "mail" view is created. Also, add e_shell_window_peek_shell_view() to obtain a shell view if it exists but without instantiating it. Using these new tools, teach the templates plugin to wait for the user to switch to the "mail" view before connecting to its "update-actions" signal. Previously is was instantiating the "mail" view itself.
* Coding style and whitespace cleanup.Matthew Barnes2010-01-041-0/+5
|
* Introduce ESelectable and EFocusTracker.Matthew Barnes2009-12-261-0/+5
| | | | | | | | | | | | | | | | | | EFocusTracker tracks the input focus within a window and helps keep the sensitivity of "selectable" actions in the main menu up-to-date. Selectable actions include Cut, Copy, Paste, Select All and Delete. EFocusTracker has built-in support for widgets that implement the GtkEditable interface such as GtkEntry and GtkTextView. It also supports custom widgets that implement the ESelectable interface, which is a subset of GtkEditable and can apply to anything that displays selectable content (esp. tree views and ETables). This commit integrates EFocusTracker with EShellWindow, CompEditor, EMsgComposer, and ESignatureManager. It also bumps the GtkHTML requirement to 2.29.5 to utilize the new GtkhtmlEditor:html constructor property.
* Refactor the EShell search API.Matthew Barnes2009-12-197-293/+623
| | | | | | | | | | | | | | | | | Move the search interface to a new widget: EShellSearchbar The current search rule is now stored in EShellView, and the search context in EShellViewClass similar to GalViewCollection (since it's class-specific, not instance-specific). Also add a couple new signals to EShellView: "clear-search" and "custom-search" ("custom" refers to an advanced search or a saved search -- something more complex than a quick search). Still working out a few kinks. The search entry is clearly trying to be too many things. We need a different way of indicating that you're looking at search results. Perhaps a search results banner similar to Nautilus.
* Introduce EMailSidebar into libevolution-mail.Matthew Barnes2009-12-155-43/+59
| | | | | | EMailSidebar is a subclass of EMFolderTree that implements the state saving and restoration feature from EMailShellSidebar. Placing this in the shared mail library allows Anjal to reuse it.
* Add an EShell:module-directory constructor property.Matthew Barnes2009-12-021-0/+1
| | | | | | | | | | | | | | | | | This tells EShell where to look for EModules. Best practice is to define the directory in your CPPFLAGS and then pass it to EShell at instantiation time, like so: Makefile.am: evolution_CPPFLAGS = \ -DMODULEDIR=\""$(moduledir)"\" ... main.c: shell = g_object_new ( E_TYPE_SHELL, "module-directory", MODULEDIR, ...);
* Add private virtual methods to EShellWindowClass.Matthew Barnes2009-12-028-42/+341
| | | | | | | | | | | | | | | | | | | | | | | So Anjal can override what it needs to for its own purpose. Also makes the EShellWindow design a little cleaner. Methods added: GtkWidget * (*construct_menubar) (EShellWindow *shell_window); GtkWidget * (*construct_toolbar) (EShellWindow *shell_window); GtkWidget * (*construct_sidebar) (EShellWindow *shell_window); GtkWidget * (*construct_content) (EShellWindow *shell_window); GtkWidget * (*construct_taskbar) (EShellWindow *shell_window); EShellView * (*create_shell_view) (EShellWindow *shell_window, const gchar *view_name); Also added some new GObject properties to help decouple actions from internal EShellWindow widgets created by these methods: EShellWindow:sidebar-visible EShellWindow:switcher-visible EShellWindow:taskbar-visible EShellWindow:toolbar-visible
* Expand the EMailReader interface so it's easier to use.Matthew Barnes2009-12-022-120/+106
| | | | | | | | Adds the following methods: CamelFolder * (*get_folder) (EMailReader *reader); const gchar * (*get_folder_uri) (EMailReader *reader); GPtrArray * (*get_selected_uids) (EMailReader *reader);