aboutsummaryrefslogtreecommitdiffstats
path: root/shell/e-shortcuts-view-model.c
diff options
context:
space:
mode:
authorEttore Perazzoli <ettore@src.gnome.org>2001-08-08 05:13:52 +0800
committerEttore Perazzoli <ettore@src.gnome.org>2001-08-08 05:13:52 +0800
commit6feb0b5e5c5f9b9eac7e8dc99a3f3b4f780ee0d4 (patch)
tree5be2f3c2eaa29bc76bd348e02695920a40e86b3f /shell/e-shortcuts-view-model.c
parent98e5368deb85eee6a8772afcc456fbaf9c02016b (diff)
downloadgsoc2013-evolution-6feb0b5e5c5f9b9eac7e8dc99a3f3b4f780ee0d4.tar.gz
gsoc2013-evolution-6feb0b5e5c5f9b9eac7e8dc99a3f3b4f780ee0d4.tar.zst
gsoc2013-evolution-6feb0b5e5c5f9b9eac7e8dc99a3f3b4f780ee0d4.zip
[Updated the shortcuts view implementation to set the icons on a
per-shortcut basis (instead of a per-URL basis) according to the changes in the EShortcutBar API.] * e-shortcuts-view-model.c (load_group_into_model): Get the icon from the folder type registry. (shortcuts_new_shortcut_cb): Likewise. (shortcuts_update_shortcut_cb): Likewise. * e-shortcuts-view.c (icon_callback): Removed. (e_shortcuts_view_construct): Don't set the icon callback anymore. svn path=/trunk/; revision=11741
Diffstat (limited to 'shell/e-shortcuts-view-model.c')
-rw-r--r--shell/e-shortcuts-view-model.c31
1 files changed, 27 insertions, 4 deletions
diff --git a/shell/e-shortcuts-view-model.c b/shell/e-shortcuts-view-model.c
index 03fd22a239..43f026716e 100644
--- a/shell/e-shortcuts-view-model.c
+++ b/shell/e-shortcuts-view-model.c
@@ -62,13 +62,14 @@ load_group_into_model (EShortcutsViewModel *shortcuts_view_model,
{
EShortcutsViewModelPrivate *priv;
EStorageSet *storage_set;
+ EFolderTypeRegistry *folder_type_registry;
const GSList *shortcut_list;
const GSList *p;
priv = shortcuts_view_model->priv;
storage_set = e_shortcuts_get_storage_set (priv->shortcuts);
- g_assert (storage_set != NULL);
+ folder_type_registry = e_storage_set_get_folder_type_registry (storage_set);
shortcut_list = e_shortcuts_get_shortcuts_in_group (priv->shortcuts, group_num);
if (shortcut_list == NULL)
@@ -80,7 +81,13 @@ load_group_into_model (EShortcutsViewModel *shortcuts_view_model,
item = (const EShortcutItem *) p->data;
name_with_unread = get_name_with_unread (item);
- e_shortcut_model_add_item (E_SHORTCUT_MODEL (shortcuts_view_model), group_num, -1, item->uri, name_with_unread);
+ e_shortcut_model_add_item (E_SHORTCUT_MODEL (shortcuts_view_model),
+ group_num, -1,
+ item->uri,
+ name_with_unread,
+ e_folder_type_registry_get_icon_for_type (folder_type_registry,
+ item->type,
+ FALSE));
g_free (name_with_unread);
}
}
@@ -165,11 +172,16 @@ shortcuts_new_shortcut_cb (EShortcuts *shortcuts,
EShortcutsViewModel *shortcuts_view_model;
EShortcutsViewModelPrivate *priv;
const EShortcutItem *shortcut_item;
+ EStorageSet *storage_set;
+ EFolderTypeRegistry *folder_type_registry;
char *name_with_unread;
shortcuts_view_model = E_SHORTCUTS_VIEW_MODEL (data);
priv = shortcuts_view_model->priv;
+ storage_set = e_shortcuts_get_storage_set (priv->shortcuts);
+ folder_type_registry = e_storage_set_get_folder_type_registry (storage_set);
+
shortcut_item = e_shortcuts_get_shortcut (priv->shortcuts, group_num, item_num);
g_assert (shortcut_item != NULL);
@@ -177,7 +189,10 @@ shortcuts_new_shortcut_cb (EShortcuts *shortcuts,
e_shortcut_model_add_item (E_SHORTCUT_MODEL (shortcuts_view_model),
group_num, item_num,
shortcut_item->uri,
- name_with_unread);
+ name_with_unread,
+ e_folder_type_registry_get_icon_for_type (folder_type_registry,
+ shortcut_item->type,
+ FALSE));
g_free (name_with_unread);
}
@@ -201,12 +216,17 @@ shortcuts_update_shortcut_cb (EShortcuts *shortcuts,
{
EShortcutsViewModel *shortcuts_view_model;
EShortcutsViewModelPrivate *priv;
+ EFolderTypeRegistry *folder_type_registry;
+ EStorageSet *storage_set;
const EShortcutItem *shortcut_item;
char *name_with_unread;
shortcuts_view_model = E_SHORTCUTS_VIEW_MODEL (data);
priv = shortcuts_view_model->priv;
+ storage_set = e_shortcuts_get_storage_set (shortcuts);
+ folder_type_registry = e_storage_set_get_folder_type_registry (storage_set);
+
shortcut_item = e_shortcuts_get_shortcut (priv->shortcuts, group_num, item_num);
g_assert (shortcut_item != NULL);
@@ -214,7 +234,10 @@ shortcuts_update_shortcut_cb (EShortcuts *shortcuts,
e_shortcut_model_update_item (E_SHORTCUT_MODEL (shortcuts_view_model),
group_num, item_num,
shortcut_item->uri,
- name_with_unread);
+ name_with_unread,
+ e_folder_type_registry_get_icon_for_type (folder_type_registry,
+ shortcut_item->type,
+ FALSE));
g_free (name_with_unread);
}