diff options
author | Jason Leach <jasonleach@usa.net> | 2001-01-19 15:36:55 +0800 |
---|---|---|
committer | Jacob Leach <jleach@src.gnome.org> | 2001-01-19 15:36:55 +0800 |
commit | fb06ffa383cd7f2398ff9332438d78a4921b5fc1 (patch) | |
tree | 12c046a50be55304bafb5a7ed577a826e1344ddb /shell/e-local-storage.c | |
parent | 788351db0a44bbbb19c2bc4b3962e5abfd001c69 (diff) | |
download | gsoc2013-evolution-fb06ffa383cd7f2398ff9332438d78a4921b5fc1.tar.gz gsoc2013-evolution-fb06ffa383cd7f2398ff9332438d78a4921b5fc1.tar.zst gsoc2013-evolution-fb06ffa383cd7f2398ff9332438d78a4921b5fc1.zip |
(Bug #883: Shortcut bar does not update when a folders display name
2001-01-17 Jason Leach <jasonleach@usa.net>
(Bug #883: Shortcut bar does not update when a folders display
name changes)
* e-local-storage.c (class_init): Define a new "folder_updated"
signal here.
(bonobo_interface_update_folder_cb): Emit the new folder_updated
signal here.
* e-shell-view.c (e_shell_view_construct): Connect the
EShell::ELocalStorage folder_updated signal here. Also connect
the updated_folder signal coming from EShell::EStorageSet to the
new callback.
* e-shell-view.c (folder_updated_cb): Callback that actually
initiates the shell updating.
* e-shortcuts.c (e_shortcuts_update_shortcut_by_uri): New
function. Given a uri for a shortcut bar item, we'll update it.
* e-shortcuts.c (e_shortcuts_remove_shortcut_by_uri): New
function. Given a uri for a shortcut bar item, we'll remove it.
* e-shortcuts.c (removed_folder_cb): Connect this callback that
will remove a renamed vfolder from the shortcut bar. Temporary
fix to the problem of renaming vfolders and having the shortcut
bar think the old vfolder still exists.
(Bug #1168: Shortcut bar and icon size persistence)
* e-shell-view.c (save_shortcut_bar_icon_modes): New static
function, save the icon modes (for all shortcut bar groups, even
though we only have one group now).
(load_shortcut_bar_icon_modes): New static function, load the
saved shortcut bar group icon modes and apply them to our
shortcut bar.
svn path=/trunk/; revision=7639
Diffstat (limited to 'shell/e-local-storage.c')
-rw-r--r-- | shell/e-local-storage.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/shell/e-local-storage.c b/shell/e-local-storage.c index a149e21fca..2ab98555da 100644 --- a/shell/e-local-storage.c +++ b/shell/e-local-storage.c @@ -69,6 +69,13 @@ struct _ELocalStoragePrivate { EvolutionLocalStorage *bonobo_interface; }; +enum { + FOLDER_UPDATED, + LAST_SIGNAL +}; + +static guint signals[LAST_SIGNAL] = { 0 }; + /* Utility functions. */ @@ -548,6 +555,8 @@ bonobo_interface_update_folder_cb (EvolutionLocalStorage *bonobo_local_storage, e_folder_set_name (folder, display_name); e_folder_set_highlighted (folder, highlighted); + + gtk_signal_emit (GTK_OBJECT (local_storage), signals[FOLDER_UPDATED], path); } @@ -568,6 +577,17 @@ class_init (ELocalStorageClass *class) storage_class->get_name = impl_get_name; storage_class->async_create_folder = impl_async_create_folder; storage_class->async_remove_folder = impl_async_remove_folder; + + signals[FOLDER_UPDATED] = + gtk_signal_new ("folder_updated", + GTK_RUN_LAST, + object_class->type, + GTK_SIGNAL_OFFSET (ELocalStorageClass, folder_updated), + gtk_marshal_NONE__STRING, + GTK_TYPE_NONE, 1, + GTK_TYPE_STRING); + + gtk_object_class_add_signals (object_class, signals, LAST_SIGNAL); } static void |