aboutsummaryrefslogtreecommitdiffstats
path: root/shell/e-folder.c
diff options
context:
space:
mode:
authorDan Winship <danw@src.gnome.org>2000-11-02 08:11:53 +0800
committerDan Winship <danw@src.gnome.org>2000-11-02 08:11:53 +0800
commit0fa29927fc5a0913388dc8fbc4a9b816c0a11119 (patch)
treef03f91bc99dfb77e3601f5c3506dde1eb025b059 /shell/e-folder.c
parentf62d997329216c7e47bb8e78724edec4dd7e72ef (diff)
downloadgsoc2013-evolution-0fa29927fc5a0913388dc8fbc4a9b816c0a11119.tar
gsoc2013-evolution-0fa29927fc5a0913388dc8fbc4a9b816c0a11119.tar.gz
gsoc2013-evolution-0fa29927fc5a0913388dc8fbc4a9b816c0a11119.tar.bz2
gsoc2013-evolution-0fa29927fc5a0913388dc8fbc4a9b816c0a11119.tar.lz
gsoc2013-evolution-0fa29927fc5a0913388dc8fbc4a9b816c0a11119.tar.xz
gsoc2013-evolution-0fa29927fc5a0913388dc8fbc4a9b816c0a11119.tar.zst
gsoc2013-evolution-0fa29927fc5a0913388dc8fbc4a9b816c0a11119.zip
Add "highligted" field to Folder. Add update_folder method to
* Evolution-Storage.idl: Add "highligted" field to Folder. Add update_folder method to StorageListener to change display_name and highlight status. * e-folder.c: Add "highlighted" to EFolder to match the Evolution::Folder type. (e_folder_get_highlighted, e_folder_set_highlighted): Added * evolution-storage-listener.c (impl_Evolution_StorageListener_update_folder, etc): * e-storage.c (e_storage_updated_folder, etc): * e-corba-storage.c (impl_StorageListener_update_folder, etc): Implement update_folder. * e-storage-set.c (storage_updated_folder_cb, etc): Re-emit updated_folder signals received from EStorage. * e-storage-set-view.c (various): Add another model column to the ETable and set it up as a bold_column based on e_folder_get_highligted. (updated_folder_cb, etc): Listen to EStorageSet update_folder signal and emit ETree node_changed signals. * evolution-storage.c (evolution_storage_update_folder): Client function to update a folder's display_name and highlighted status. * Evolution-LocalStorage.idl: * evolution-local-storage.c: * e-local-storage.c: Change set_display_name to update_folder to match Evolution::StorageListener svn path=/trunk/; revision=6328
Diffstat (limited to 'shell/e-folder.c')
-rw-r--r--shell/e-folder.c34
1 files changed, 28 insertions, 6 deletions
diff --git a/shell/e-folder.c b/shell/e-folder.c
index d490db99bf..28f72fc705 100644
--- a/shell/e-folder.c
+++ b/shell/e-folder.c
@@ -41,6 +41,7 @@ struct _EFolderPrivate {
char *type;
char *description;
char *physical_uri;
+ gboolean highlighted;
};
#define EF_CLASS(obj) \
@@ -145,6 +146,7 @@ init (EFolder *folder)
priv->name = NULL;
priv->description = NULL;
priv->physical_uri = NULL;
+ priv->highlighted = FALSE;
folder->priv = priv;
}
@@ -218,6 +220,24 @@ e_folder_get_description (EFolder *folder)
return folder->priv->description;
}
+const char *
+e_folder_get_physical_uri (EFolder *folder)
+{
+ g_return_val_if_fail (folder != NULL, NULL);
+ g_return_val_if_fail (E_IS_FOLDER (folder), NULL);
+
+ return folder->priv->physical_uri;
+}
+
+gboolean
+e_folder_get_highlighted (EFolder *folder)
+{
+ g_return_val_if_fail (folder != NULL, FALSE);
+ g_return_val_if_fail (E_IS_FOLDER (folder), FALSE);
+
+ return folder->priv->highlighted;
+}
+
void
e_folder_set_name (EFolder *folder,
@@ -275,14 +295,16 @@ e_folder_set_physical_uri (EFolder *folder,
gtk_signal_emit (GTK_OBJECT (folder), signals[CHANGED]);
}
-
-const char *
-e_folder_get_physical_uri (EFolder *folder)
+void
+e_folder_set_highlighted (EFolder *folder,
+ gboolean highlighted)
{
- g_return_val_if_fail (folder != NULL, NULL);
- g_return_val_if_fail (E_IS_FOLDER (folder), NULL);
+ g_return_if_fail (folder != NULL);
+ g_return_if_fail (E_IS_FOLDER (folder));
- return folder->priv->physical_uri;
+ folder->priv->highlighted = highlighted;
+
+ gtk_signal_emit (GTK_OBJECT (folder), signals[CHANGED]);
}