Commit Graph

204 Commits

Author SHA1 Message Date
9b86a51681 [Fix #7643, Starting new view doesn't honor "view" settings.]
* e-shell-view-menu.c (command_open_folder_in_new_window): Pass
the parent @shell_view as the @template_view arg to
`e_shell_create_view()'

* e-shell-view.c (activate_shortcut_cb): Pass the _view as the
@template_view arg to `e_shell_create_view()'.

* e-shell-folder-commands.c
(e_shell_command_open_folder_in_other_window): Pass the parent
@shell_view as the @template_view arg to `e_shell_create_view()'.

* e-shell.c (e_shell_create_view): New arg @template_view.
(impl_Shell_createNewView): Pass %NULL as @template_view when
calling it.
(e_shell_restore_from_settings): Likewise.

svn path=/trunk/; revision=13618
2001-10-12 06:29:09 +00:00
9d6d152922 Don't die if the folder_bar_popup is %NULL. Fixes #10922.
* e-shell-view.c
(reparent_storage_set_view_box_and_destroy_popup): Don't die if
the folder_bar_popup is %NULL.  Fixes #10922.

svn path=/trunk/; revision=13613
2001-10-12 04:01:22 +00:00
a19af27803 Get the right hpaned positions for when the shortcut bar and/or the folder
* e-shell-view.c (e_shell_view_save_settings): Get the right
hpaned positions for when the shortcut bar and/or the folder bar
are visible.

svn path=/trunk/; revision=13461
2001-10-05 20:03:43 +00:00
ba14e3cb74 [Fix #11326, The folder list can become detached from its parent
window.]

* e-shell-view.c (folder_context_menu_popped_down_cb): Pop down
the folder bar if it's popped up.

svn path=/trunk/; revision=13346
2001-10-02 20:31:13 +00:00
df580510c9 New, callback for the ::removed_folder signal on the shell's EStorageSet.
* e-shell-view.c (storage_set_removed_folder_callback): New,
callback for the ::removed_folder signal on the shell's
EStorageSet.
(e_shell_view_construct): Connect.
(e_shell_view_remove_control_for_uri): Removed.

* e-shell-folder-commands.c
(folder_selection_dialog_folder_selected_callback): Don't call
`e_shell_view_remove_control_for_uri()'.
(e_shell_command_delete_folder): Not here either.  And don't
display the default URI either.

svn path=/trunk/; revision=13305
2001-10-02 18:21:01 +00:00
8f338e40f9 [Fix #8434, Shortcut bar not shown properly.]
* e-shell-view.c (e_shell_view_show_shortcut_bar): Set the
hpaned_position from the EPaned *before* hiding it -- otherwise,
the position will of course always be zero.
(e_shell_view_save_settings): Save from ->hpaned_position and
->view_hpaned_position.

svn path=/trunk/; revision=13234
2001-09-28 21:18:57 +00:00
62c86e7472 New helper function. (folder_selected_cb): Call it.
* e-shell-view.c (setup_verb_sensitivity_for_folder): New helper
function.
(folder_selected_cb): Call it.
(folder_context_menu_popping_up_cb): New callback for the
"folder_context_menu_popping_up" signal on the folder bar's
EStorageSetView; set the sensitivities of the verbs according to
the right-clicked folder.
(folder_context_menu_popped_down_cb): New, callback for the
"folder_context_menu_popped_down" signal on the folder bar's
EStorageSetView; set the sensitivities of the verbs according to
the currently displayed folder.
(e_shell_view_get_folder_bar_right_click_path): Add a cast to
placate a warning.

* e-storage-set-view.c (class_init): Set up the
"folder_context_menu_popping_up" and
"folder_context_menu_popped_down" signals.
(right_click): Emit "folder_context_menu_popping_up" before
popping up the menu, "folder_context_menu_popped_down" after the
menu is gone.

* e-storage-set-view.h: New signals
"folder_context_menu_popping_up" and
"folder_context_menu_popped_down".

svn path=/trunk/; revision=13171
2001-09-26 22:55:27 +00:00
769e117e90 New helper function. (command_move_folder): Pass the @folder_path argument
* e-shell-view-menu.c (get_path_for_folder_op): New helper
function.
(command_move_folder): Pass the @folder_path argument to
`e_shell_command_move_folder' by using it.
(command_copy_folder): Pass the @folder_path argument to
`e_shell_command_copy_folder' by using it.
(command_delete_folder): Pass the @folder_path argument to
`e_shell_command_delete_folder()' by using it.
(command_add_folder_to_shortcut_bar): Pass the @folder_path
argument to `e_shell_command_add_to_shortcut_bar()' by using it.
(command_create_folder): Pass the @parent_folder_path argument to
`e_shell_command_create_new_folder()' by using it.
(command_new_folder): Use `get_path_for_folder_op()'.

* e-shell-folder-commands.c (e_shell_command_add_to_shortcut_bar):
New arg @folder_path.
(e_shell_command_copy_folder): New arg @folder_path.
(e_shell_command_move_folder): New arg @folder_path.
(e_shell_command_open_folder_in_other_window): New arg @folder_path.
(e_shell_command_create_new_folder): New arg @parent_folder_path.
(e_shell_command_delete_folder): New arg @folder_path.

* e-shell-view.c (e_shell_view_get_folder_bar_right_click_path): New.

* e-storage-set-view.c: New member `right_click_row_path'.
(init): Init to NULL.
(destroy): Free.
(right_click): Set.
(popup_folder_menu): Use `gnome_popup_menu_do_popup_modal()' so we
are stuck in here until the menu disappears.  After that, destroy
the menu and  call `e_tree_right_click_up()'.
(e_storage_set_view_get_right_click_path): New.

svn path=/trunk/; revision=13124
2001-09-25 21:27:00 +00:00
4f77a21a2a Removed. (folder_bar_popup_map_callback): Don't connect.
* e-shell-view.c (storage_set_view_box_event_cb): Removed.
(folder_bar_popup_map_callback): Don't connect.
(reparent_storage_set_view_box_and_destroy_popup): Don't ungrab
here.
(popdown_transient_folder_bar): Ungrab here.
(popdown_transient_folder_bar_idle): New.
(switch_on_folder_tree_click): Invoke it in the idle loop.  Also,
ungrab.

svn path=/trunk/; revision=13025
2001-09-20 22:59:37 +00:00
1e050bd5f7 [Fix #9060, Shell crash after mailer crash.]
* e-shell-view.c (hash_foreach_destroy_view): Renamed from
`hash_forall_destroy_view'.  Don't free `name'.
(socket_destroy_cb): Use `g_hash_table_lookup()' instead of
`g_hash_table_lookup_extended()'.  Don't free the URI.
(e_shell_view_remove_control_for_uri): Likewise.
(show_existing_view): Use view->uri as the key when inserting the
view.  Remove the old view from the hash when destroying it.
(create_new_view_for_uri): Same here.

svn path=/trunk/; revision=12913
2001-09-17 21:57:33 +00:00
8fcec5b917 Hide the storage_set_view_box *before* getting the child1_size [otherwise,
* e-shell-view.c (e_shell_view_show_folder_bar): Hide the
storage_set_view_box *before* getting the child1_size [otherwise,
the latter will, um, always be zero].

svn path=/trunk/; revision=12902
2001-09-17 17:51:01 +00:00
638ad0ba0b [Fix #5990, Remembering Evolution window geometry.]
* e-shell.c (impl_Shell_createNewView): gtk_widget_show() the new
view returned by `e_shell_create_view()'.
(e_shell_restore_from_settings): Same here, after loading the
settings.

* e-shell-view.c (activate_shortcut_cb): gtk_widget_show() the new
view returned by `e_shell_create_view()'.

* e-shell-view-menu.c (command_open_folder_in_new_window):
gtk_widget_show() the view returned by `e_shell_create_view()'.

* e-shell-folder-commands.c
(e_shell_command_open_folder_in_other_window): gtk_widget_show()
the view returned by `e_shell_create_view()'.

* e-shell.c (e_shell_create_view): Don't show the view
automatically anymore.

* e-shell-view.c (e_shell_view_save_settings): Save the width and
height of the window.
(e_shell_view_load_settings): Restore the width and the height and
gtk_window_set_default_size() based on them.

svn path=/trunk/; revision=12816
2001-09-13 23:46:03 +00:00
c788ba0faf Disable DnD on the EStorageSetView to avoid strange behaviors.
* e-shell-view.c (pop_up_folder_bar): Disable DnD on the
EStorageSetView to avoid strange behaviors.
(reparent_storage_set_view_box_and_destroy_popup): Re-enable DnD
here.
(popdown_transient_folder_bar): And here as well.

* evolution-storage-set-view-factory.c
(evolution_storage_set_view_factory_new_view): Disable DnD on the
EStorageSetView.

* e-shell-folder-selection-dialog.c
(e_shell_folder_selection_dialog_construct): Disable DnD on the
EStorageSetView.

* e-shell-folder-creation-dialog.c (add_storage_set_view): Disable
DnD on the EStorageSetView.

* e-storage-set-view.c: New member `allow_dnd' in
`EStorageSetViewPrivate'.
(init): Init to `allow_dnd' %TRUE.
(tree_start_drag): If `allow_dnd' is false, don't start the drag
and return %FALSE.
(tree_drag_motion): If `allow_dnd' is false, return %FALSE.
(e_storage_set_view_get_allow_dnd): New.
(e_storage_set_view_set_allow_dnd): New.

svn path=/trunk/; revision=12810
2001-09-13 21:11:22 +00:00
30d3750b07 Oops. Remove duplicate free.
* e-shell-view.c (socket_destroy_cb): Oops. Remove duplicate free.

svn path=/trunk/; revision=12732
2001-09-10 16:34:37 +00:00
afdc8acc65 Purify run. All small leaks.
* e-shell-folder-commands.c
	(folder_selection_dialog_folder_selected_callback): Free the
	folder_command_data when destroying the dialog.

	* e-local-storage.c (remove_folder): Free physical_uri if we
	allocated it.

	* e-shortcuts-view.c (pop_up_right_click_menu_for_group): Unref
	the popup menu, don't destroy it.
	(destroy_group_cb): Free the question string.
	(rename_group_cb): Free the new_name.

	* e-shell-importer.c (create_plugin_menu): Free the list of
	importers.
	(get_iid_for_filetype): Likewise.
	(import_druid_finish): #ifdef out some g_strdups that are only
	used by other #ifdef'ed-out code.

	* e-shell-view.c: Make sure the keys in the uri_to_view hash get
	freed.

	* e-shell-folder-title-bar.c (set_title_bar_label_style): Unref
	the style after setting it on the widget.

	* e-shell-offline-handler.c (impl_destroy): free priv.

	* e-storage-set-view.c (tree_drag_data_received): Make sure
	target_type always gets freed.

	* e-shell-folder-creation-dialog.c (add_folder_types): Don't leak
	the type names.

svn path=/trunk/; revision=12715
2001-09-09 18:24:15 +00:00
000b01e9a1 Replace "Evolution" with "Ximian Evolution" in a bunch of user-visible
places.

svn path=/trunk/; revision=12625
2001-09-05 19:27:03 +00:00
bc21d949ca [Fix #6971, Default folder should be the Summary.]
* main.c (idle_cb): s/DEFAULT_URI/E_SHELL_VIEW_DEFAULT_URI/.

* e-shell.c (e_shell_create_view):
s/DEFAULT_URI/E_SHELL_VIEW_DEFAULT_URI/.

* e-shell-view.c (socket_destroy_cb):
s/DEFAULT_URI/E_SHELL_VIEW_DEFAULT_URI/.
(e_shell_view_save_settings): Likewise.

* e-shell-folder-commands.c (e_shell_command_delete_folder):
s/DEFAULT_URI/E_SHELL_VIEW_DEFAULT_URI/.

* e-shell-view.h (DEFAULT_URI): Rename to
`E_SHELL_VIEW_DEFAULT_URI'.  Change from "evolution:/local/Inbox"
to be "evolution:/summary".

svn path=/trunk/; revision=12618
2001-09-05 00:10:03 +00:00
3b17294f86 Remove the folder from the EvolutionStorage as well as the EStorage.
2001-08-30  Peter Williams  <peterw@ximian.com>

	* e-local-storage.c (async_xfer_folder_complete): Remove the folder from
	the EvolutionStorage as well as the EStorage.

2001-08-29  Peter Williams  <peterw@ximian.com>

	* e-storage-set-view.c (etree_node_destroy_func): Only call
	remove_node_from_hash if it's not the root node.
	(removed_storage_cb): Don't remove the node from the hash here,
	because it will be removed in the node_destroyed callback.
	(removed_folder_cb): Same.

	* e-shell-view.c (e_shell_view_remove_control_for_uri): Disconnect
	from the destroy signal so as not to confuse ourselves. Also, the
	page remove in the notebook destroys the control and the socket, so don't
	do that explicitly.

	* e-shell-folder-commands.c
	(folder_selection_dialog_folder_selected_callback): Remove the control
	for the source view if we're moving.

svn path=/trunk/; revision=12578
2001-09-04 15:30:13 +00:00
d671e29102 Studlycapsize all the IDs that are not. Likewise. Updated accordingly.
* Evolution-ShellComponent.idl: Studlycapsize all the IDs that are
not.
* Evolution-common.idl: Likewise.
* evolution-activity-client.c: Updated accordingly.
* evolution-shell-component.c: Likewise.
* evolution-storage.c: Likewise.
* e-activity-handler.c: Likewise.
* e-component-registry.c: Likewise.
* e-corba-storage.c: Likewise.
* e-shell-user-creatable-items-handlers.c: Likewise.

* e-local-storage.c (remove_folder): Remove unused variable.

* e-shell-view.c (update_for_current_uri): Assign zero to
`unread_count', not NULL.

* e-shell-importer.c (import_druid_finish): Remove unused
variable.

* e-shell-user-creatable-items-handler.c: #include
"e-corba-utils.h".

* e-shell-startup-wizard.c: #include "e-shell-startup-wizard.h".

* e-shell-startup-wizard.h: #include <glib.h>

* e-summary-weather.c (weather_make_html): Make local variable
`icon_name' const.  Remove unused variable `uri'.

* e-summary.h: Reformatted in GTK+ style.
(e_summary_remove_online_connection): Added prototype.

* e-summary-preferences.c (fill_mail_shown_clist): Constify local
variable `name'.

* e-summary-mail.c: #include "e-util/e-path.h".  Updated to match
the new studlyCapsification in shell/Evolution*.idl.

* mail-local.c: Match the studlyCapsification of
shell/Evolution*.idl.

* mail-config-druid.h: Change type of `event_source' from
`Bonobo_EventSource *' to `Bonobo_EventSource'.

* mail-accounts.c (mail_delete): Remove unused local variable
`label'.

* folder-info.c (do_get_info): `#if 0' unused variables.

* gui/component/addressbook-component.c: Get rid of a warning by
initializing the closing NULL element in folder_types correctly.

* gui/component/select-names/e-select-names.c: Updated to match
the studlyCapsification of attributes in shell/Evolution*.idl.

svn path=/trunk/; revision=12495
2001-08-28 00:18:34 +00:00
17a85e8669 Ooops. Save the pointer to the control for use after the view struct is
* e-shell-view.c (e_shell_view_remove_control_for_uri): Ooops.
Save the pointer to the control for use after the view struct is
freed.

svn path=/trunk/; revision=12458
2001-08-24 21:38:15 +00:00
277ddb9abe New struct View'. Replace uri_to_control' in `EShellViewPrivate' with
* e-shell-view.c: New struct `View'.  Replace `uri_to_control' in
`EShellViewPrivate' with `uri_to_view'.
(view_new): New.
(hash_forall_destroy_view): New, replacing
`hash_forall_destroy_control'.
(destroy): Updated to match the uri_to_control -> uri_to_view
changes.
(socket_destroy_cb): Likewise.
(get_view_for_uri): Renamed from `get_control_for_uri'.  Return a
View instead of a GtkWidget.
(show_existing_view): Updated to use `get_view_from_uri', get a
@view instead of a @control.
(e_shell_view_display_uri): Updated to use `uri_to_view' instead
of `uri_to_control'.
(e_shell_view_remove_control_for_uri): Likewise.

svn path=/trunk/; revision=12457
2001-08-24 21:06:29 +00:00
34f9e86684 Changed to get a @title and a @type. (update_for_current_uri): Updated
* e-shell-view.c (update_folder_title_bar): Changed to get a
@title and a @type.
(update_for_current_uri): Updated accordingly.
(update_window_icon): Get a @type instead of a @folder.
(update_for_current_uri): Updated accordingly.

svn path=/trunk/; revision=12452
2001-08-24 20:08:30 +00:00
059103efde [Fix #5978, "If a component dies, it's toolbar buttons remain".]
* e-shell-view.c (socket_destroy_cb): If the view belongs to a
toplevel storage node, get the right type information with
`e_storage_get_toplevel_node_uri()' instead of trying to get the
[non-existing] folder for it.

svn path=/trunk/; revision=12451
2001-08-24 19:38:55 +00:00
ee21a426da Don't set the paneds' positions if the respective left-hand elements [i.e.
* e-shell-view.c (e_shell_view_load_settings): Don't set the
paneds' positions if the respective left-hand elements [i.e. the
shortcut bar and the folder bar] are hidden.
(e_shell_view_show_folder_bar): Set the paned position to zero
when hiding.
(e_shell_view_show_shortcut_bar): Likewise.

svn path=/trunk/; revision=12321
2001-08-20 19:51:59 +00:00
dea477a5a1 Make sure we display a pin when we are popped up.
* e-shell-view.c (pop_up_folder_bar): Make sure we display a pin
when we are popped up.

svn path=/trunk/; revision=12259
2001-08-20 07:31:23 +00:00
fa88272dac Don't set the paned tree position.
* e-shell-view.c (setup_widgets): Don't set the paned tree
position.

svn path=/trunk/; revision=12250
2001-08-20 05:59:16 +00:00
85a2968706 Don't show the vbox here. (setup_widgets): Don't show the
* e-shell-view.c (setup_storage_set_subwindow): Don't show the
vbox here.
(setup_widgets): Don't show the storage_set_view_box here.

svn path=/trunk/; revision=12246
2001-08-20 05:16:14 +00:00
70e6407e12 New constant `MIN_POPUP_TREE_WIDTH'. (pop_up_folder_bar): Make sure the
* e-shell-view.c: New constant `MIN_POPUP_TREE_WIDTH'.
(pop_up_folder_bar): Make sure the pop-up is always this size or
more.
(setup_widgets): Pass %FALSE for @shrink to `e_paned_pack1()'.
(reparent_storage_set_view_box_and_destroy_popup): Likewise.

svn path=/trunk/; revision=12211
2001-08-18 23:20:16 +00:00
9f79315277 New, replacing `shortcut_bar_mode_changed_cb'.
* e-shell-view-menu.c (shortcut_bar_visibility_changed_cb): New,
replacing `shortcut_bar_mode_changed_cb'.
(folder_bar_visibility_changed_cb): New, replacing
`folder_bar_mode_changed_cb'.
(command_toggle_folder_bar): Use `e_shell_view_show_folder_bar()'
instead of `e_shell_view_set_folder_bar_mode()'.
(command_toggle_shortcut_bar): Use
`e_shell_view_show_shortcut_bar()' instead of
`e_shell_view_set_shortcut_bar_mode()'.
(e_shell_view_menu_setup): Updated for the
"shortcut_bar_visibility_changed" and
"folder_bar_visibility_changed" signals and the above changes.

* e-shell-view.c: New member `folder_bar_popup' in
`EShellViewPrivate'.  Replaced `folder_bar_mode' and
`shortcut_bar_mode' with `folder_bar_shown' and
`shortcut_bar_shown', respectively.
(init): Updated to initialize these correctly.
(reparent): New helper function.
(reparent_storage_set_view_box_and_destroy_popup): New helper
function.
(popdown_transient_folder_bar): Updated to use the
`folder_bar_popup'.
(folder_bar_popup_map_callback): Renamed from
`storage_set_view_box_map_cb'.
(e_shell_view_set_shortcut_bar_mode): Removed.
(e_shell_view_set_folder_bar_mode): Removed.
(e_shell_view_show_shortcut_bar): New.  All the calls to
`e_shell_view_set_shortcut_bar_mode()' replaced with calls to this
one.
(e_shell_view_show_folder_bar): New.  All the calls to
`e_shell_view_set_folder_bar_mode()' replaced with calls to this
one.
(e_shell_view_folder_bar_shown): New.  All the calls to
`e_shell_view_get_folder_bar_mode()' replaced with calls to this
one.
(e_shell_view_shortcut_bar_shown): New.  All the calls to
`e_shell_view_get_shortcut_bar_mode()' replaced with calls to this
one.
(class_init): Replace signal `folder_bar_mode_changed' with
`folder_bar_visibility_changed' and `shortcut_bar_mode_changed'
with `shortcut_visibility_changed'.
(e_shell_view_save_settings): Use keys "ShortcutBarShown" and
"FolderBarShown" instead of "ShortcutBarMode" and "FolderBarMode",
respectively.
(e_shell_view_load_settings): Likewise.

* e-shell-view.h: Removed enum `EShellViewSubwindowMode'.  Renamed
signal `shortcut_bar_mode_changed' to
`shortcut_bar_visibility_changed' and `folder_bar_mode_changed' to
`folder_bar_visibility_changed'.

svn path=/trunk/; revision=12203
2001-08-18 19:59:59 +00:00
b82937e47c Desensitize the move/copy/delete/rename in the menus (including right
2001-08-16  Jason Leach  <jleach@ximian.com>

	* e-shell-view.c (folder_selected_cb): Desensitize the
	move/copy/delete/rename in the menus (including right click) for
	stock folders.

	* Evolution-Icon.idl: Actually remove this file from CVS (its
	contents are now in Evolution-common.idl).

svn path=/trunk/; revision=12139
2001-08-17 00:33:46 +00:00
778f9780be Add some little padding to the title bar so it looks nicer.
* e-shell-view.c (setup_widgets): Add some little padding to the
title bar so it looks nicer.

svn path=/trunk/; revision=11970
2001-08-13 22:30:12 +00:00
1285912f04 Put the folder title bar into an EGrayBar.
* e-shell-view.c (setup_widgets): Put the folder title bar into an
EGrayBar.

* e-gray-bar.c: New.
* e-gray-bar.h: New.

svn path=/trunk/; revision=11932
2001-08-12 15:34:53 +00:00
d471640fe8 Updated to display the parent folder's URI and its type as well.
* evolution-test-component.c (user_create_new_item_callback):
Updated to display the parent folder's URI and its type as well.

* evolution-shell-component.c (impl_userCreateNewItem): Updated to
get the @parent_folder_physical_uri and the @parent_folder_type.
(class_init): Update the "user_create_new_item" signal to have
@parent_folder_physical_uri and @parent_folder_type args.

* e-shell-view.c (get_type_for_folder): Don't bork on a NULL
@physical_uri_return.
(e_shell_view_get_current_physical_uri): New.
(e_shell_view_get_current_folder_type): New.

* e-shell-user-creatable-items-handler.c
(e_shell_user_creatable_items_handler_setup_menus): Replace
@ui_component arg with a @shell_view arg.  Set it on the
UIComponent using gtk_object_set_data().
(verb_fn): Pass the type and physical URI of the current folder;
retrieve that from the shell_view got with gtk_object_get_data().

* Evolution-ShellComponent.idl
(userCreateNewItem): New args @parent_folder_uri,
@parent_folder_type.

svn path=/trunk/; revision=11863
2001-08-10 01:07:46 +00:00
20801a94aa Add the menu items using the EShellUserCreatableItemsHandler.
* e-shell-view.c (e_shell_view_construct): Add the menu items
using the EShellUserCreatableItemsHandler.

* e-shell-user-creatable-items-handler.c: New.
* e-shell-user-creatable-items-handler.h: New.

* e-shell.c: New member `user_creatable_items_handler' in
`EShellPrivate'.
(init): Initialize to NULL.
(destroy): Unref.
(e_shell_construct): Create here.
(e_shell_get_user_creatable_items_handler): New accessor.
(setup_components): Add the registered components to the
user_creatable_items_handler.

* evolution-test-component.c (factory_fn): Add a couple sample
user-creatable items.
(user_create_new_item_callback): New callback for the
"user_create_new_item" signal on the EvolutionShellComponent.
(factory_fn): Connect.

* e-shell.c (e_shell_get_component_registry): New.

* evolution-shell-component.c: New enum value
`USER_CREATE_NEW_ITEM'.  New member `user_create_item_types' in
`_EvolutionShellComponentPrivate'.
(init): Init to NULL.
(impl_destroy): Free it.
(user_creatable_item_type_free): New helper function.
(user_creatable_item_type_new): New helper function.
(impl_userCreateNewItem): New, implementation for
::userCreateNewItem.
(class_init): Install the "user_create_new_item" signal and the
userCreateNewItem impl.
(impl__get_external_uri_schemas): Renamed from
`impl_ShellComponent__get_external_uri_schemas'.
(impl___get_supported_types): Renamed from
`impl_ShellComponent__get_supported_types'.
(impl__get_user_creatable_item_types): New, implementation for the
`user_creatable_item_types' attribute.
(class_init): Install it.
(evolution_shell_component_add_user_creatable_item): New.

* evolution-shell-component.h: Added signal
`user_create_new_item'.

* Evolution-ShellComponent.idl: Added typedefs
`UserCreatableItemType', `UserCreatableItemTypeList'.  New
attribute `user_creatable_item_types'.
(userCreateNewItem): New.

svn path=/trunk/; revision=11849
2001-08-09 23:37:56 +00:00
385ba85d42 [Removing Evolution::LocalStorage interface, abstracting the unread counts
2001-08-03  Jason Leach  <jleach@ximian.com>

        [Removing Evolution::LocalStorage interface, abstracting the
        unread counts from a folder's name, also abstract unread counts
        from a shortcut's name.  Fixes #4489 and #5497]

        * e-shortcuts.c (shortcut_item_new): Take an unread_count argument
        now.
        (shortcut_item_update): Ditto.

        * e-shortcuts-view-model.c (get_name_with_unread): Get a string
        containing a shortcut name and it's unread, because these are
        abstracted now.
        (load_group_into_model): Use the above function to make shortcuts
        that have unread counts.

        * e-storage-set-view.c (update_folder_with_unread_hash): Keep a
        hash of folder names with unread counts, because the folder name
        and it's unread count are to be separated, only the ETree is
        supposed to present it as one string.

        * e-shell-view.c: Renamed EShellView::view_title_bar to
        folder_title_bar, to closer match the

        * e-shell-view-menu.c (new_shortcut_dialog_folder_selected_cb):
        Make a shortcut with the unread count.

        * e-shell-folder-commands.c (e_shell_command_add_to_shortcut_bar):
        Make a shortcut with the unread count.

        * e-local-storage.c: Updated for API changes.

        * e-folder.c (e_folder_get_unread_count): New function, does what
        it says.
        (e_folder_set_unread_count): Ditto.

        * e-corba-storage.c (impl_StorageListener_new_folder): Renamed to
        match the IDL function name.
        (impl_StorageListener_update_folder): Ditto.
        (impl_StorageListener_removed_folder): Ditto.

        * Evolution-Storage.idl (struct Folder): Replace the boolean
        highlighted with a long unread_count.
        (updateFolder): Brought in from the now dead
        Evolution::LocalStorage.

        * Evolution-Shell.idl (getLocalStorage): Return a Storage instead
        of a LocalStorage.

        * Evolution-LocalStorage.idl: Removed, no longer needed, only used
        function, updateFolder, has been moved into Evolution::Storage
        interface.

        * evolution-local-storage.[ch]: Ditto.

        * evolution-storage.c (impl_Storage_updateFolder): Implementation
        of the updateFolder taken from ::LocalStorage.
        (class_init): New "update_folder" signal, taken from
        evolution-local-storage.c too.
        (evolution_storage_update_folder): Take an @unread_count int
        instead of a @highlighted boolean.
        (evolution_storage_new_folder): Same for here.
        (evolution_storage_update_folder_by_uri): And here.

        * evolution-storage-listener.h: "update_folder" signal no longer
        sends a @highlighted boolean.

2001-08-03  Jason Leach  <jleach@ximian.com>

        * e-shell-view-menu.c (update_offline_menu_item): Use Jakub's new
        "Work Online" icon and fix a typo.

svn path=/trunk/; revision=11633
2001-08-03 23:08:38 +00:00
b5c3ca3079 Make "My Evolution" a normal storage instead of being the toplevel
node that contains everything else.

svn path=/trunk/; revision=11610
2001-08-03 13:18:08 +00:00
bc6c3e5084 Set the `set_folder_uri' to NULL when freeing it.
* e-shell-view.c (switch_on_folder_tree_click): Set the
`set_folder_uri' to NULL when freeing it.

* e-task-bar.c (e_task_bar_remove_task): Just destroy the widget.
No need to `gtk_container_remove()' it.

svn path=/trunk/; revision=11597
2001-08-02 20:08:48 +00:00
fcfda658fd $(BONOBO_CONF_CFLAGS) was here twice, took out one of them.
2001-07-25  Jason Leach  <jleach@ximian.com>

	* Makefile.am (INCLUDES): $(BONOBO_CONF_CFLAGS) was here twice,
	took out one of them.

	* e-shell-view.c (socket_destroy_cb): Mem leak fix.  Thanks to the
	amazing Jacob B. Bug #5054.

svn path=/trunk/; revision=11402
2001-07-25 16:55:28 +00:00
d5a23e6131 Don't handle button events whose button number is not 1.
* e-shell-view.c (storage_set_view_box_button_release_event_cb):
Don't handle button events whose button number is not 1.

svn path=/trunk/; revision=11305
2001-07-23 17:49:55 +00:00
dd6f646f8f [Fix a crash if you start evolution with a bad URI.]
2001-07-20  Jason Leach  <jleach@ximian.com>

	[Fix a crash if you start evolution with a bad URI.]

	* e-shell.c (e_shell_create_view): If we can't display the URI,
	display the default uri.  This is because it's necessary for
	e_shell_view_display_uri() to run all the way through so corba
	interfaces get setup.

	* e-shell-view.c (e_shell_view_display_uri): If we fail to create
	a new view for a URI (happens if you pass in an invalid URI), be
	sure to return FALSE.

svn path=/trunk/; revision=11290
2001-07-20 21:42:46 +00:00
c604cce9c6 Make the local storage name "Local Folders" instead of "local", looks
2001-07-19  Jason Leach  <jleach@ximian.com>

	* e-local-storage.h: Make the local storage name "Local Folders"
	instead of "local", looks better with "My Evolution", "VFolders",
	and "Other Contacts".

	* e-shell-view.h: Put the #define DEFAULT_URI here instead of in
	e-shell-view.c.

	* main.c: Remove the duplicated #define STARTUP_URI, actually make
	use of the nice defines.

	* e-shell-folder-commands.c (e_shell_command_delete_folder): Use
	the DEFAULT_URI here instead of a hard coded string.

	* e-shortcuts.c (e_shortcuts_add_default_group): Fix the URI's
	here to use "Local Folder".

svn path=/trunk/; revision=11241
2001-07-19 21:55:47 +00:00
a8f8067a0a Line up the padding for the folder title bar labels when you have the
2001-07-19  Jason Leach  <jleach@ximian.com>

	* e-shell-folder-title-bar.c (e_shell_folder_title_bar_construct):
	Line up the padding for the folder title bar labels when you have
	the folder bar enabled or disabled (previously when disabled it
	was padding ~8 pixels to the right while the other had 0).

	* e-shell-view.c (setup_widgets): Take out a 2 pixel padding
	around the vbox containing the title bar, folder bar, message list
	and mail display.  Also remove 2 more extra pixels of padding on
	the bottom.

svn path=/trunk/; revision=11238
2001-07-19 21:41:21 +00:00
05877aea9b Fix a crash that could happen by closing one or more views, and then
clicking on the off-line button.

svn path=/trunk/; revision=11107
2001-07-15 05:18:49 +00:00
fbb2f1feb0 Make sure to create ~/evolution/config/ if it doesn't exist. (ShellView
2001-07-11  Jason Leach  <jleach@ximian.com>

	* e-shell-view.c (e_shell_view_save_settings): Make sure to create
	~/evolution/config/ if it doesn't exist.  (ShellView settings get
	saved before component settings, so when the mailer comes around
	to saving ETree stuff, this dir will be there). Fixes bug #4279.

svn path=/trunk/; revision=10991
2001-07-11 09:29:53 +00:00
39440346cf It's very possible that get_storage_set_path_from_uri() returns NULL (5 of
2001-07-09  Jason Leach  <jleach@ximian.com>

	* e-shell-view.c (updated_folder_cb): It's very possible that
	get_storage_set_path_from_uri() returns NULL (5 of the 6 return
	cases), so check that it's not NULL before trying to strcmp() it.
	Fixes a startup crash.

svn path=/trunk/; revision=10935
2001-07-09 21:54:53 +00:00
7fa7518bd6 Return a gboolean saying whether or not the shortcut changed. Use strcmp
* e-shortcuts.c (shortcut_item_update): Return a gboolean saying
	whether or not the shortcut changed. Use strcmp rather than
	pointer comparisons to determine this.
	(update_shortcut_and_emit_signal): propagate the gboolean from
	shortcut_item_update (and only emit the signal if it's TRUE).
	(update_shortcuts_by_path): Only call make_dirty if something
	changed.
	(storage_set_new_folder_callback,
	storage_set_updated_folder_callback): Don't call make_dirty:
	update_shortcuts_by_path will have called it if necessary.

	* e-shell-view.c (updated_folder_cb): Don't call
	update_for_current_uri if the folder that was updated isn't the
	one being displayed.

svn path=/trunk/; revision=10912
2001-07-09 15:20:54 +00:00
b7dede1a27 use bonobo-conf everywhere
2001-07-03  Dietmar Maurer  <dietmar@ximian.com>

	* *: use bonobo-conf everywhere

svn path=/trunk/; revision=10760
2001-07-03 18:15:31 +00:00
dcd5194f42 [Fixed #3643, Shell crash when component crashed]
* e-shell-view.c (socket_destroy_cb): Fix Jason's broken fix for
#3205 that was causing #3643.  It is not safe to strcmp() the
return value from `e_shell_view_get_current_uri()' as it might be
NULL already.

svn path=/trunk/; revision=10739
2001-07-03 11:26:20 +00:00
ac60e853cb Get the "Open in a New Window" shortcut right-click menu to actually
work (I had removed a line by mistake), and fix a crash that would
happen if user opened a new view, closed it and then created a new
folder.

svn path=/trunk/; revision=10657
2001-07-01 18:30:11 +00:00
d801d2df67 Change the internal structure for shortucts, so that it contains a
type and a name too.  The name will allow renaming shortcuts (thus
decoupling the name of the folder the shortcuts points to from the
name of the shortcut); the type member is used to cache the type of
the folder we point to so that we can still display the right icon
even if the folder is currently not in the storage (e.g. this happens
for IMAP folders when you haven't opened the corresponding IMAP node
yet).

I don't like the way this is designed at all (mainly, the
responsibility for saving the values should be moved elsewhere), but
I'll fix it later.

Also, I added an "Open in New Window" right-click menu item for
shortcuts.

svn path=/trunk/; revision=10649
2001-07-01 05:11:43 +00:00