[evolution] MessageList: Add a "show-deleted" property.
- From: Matthew Barnes <mbarnes src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution] MessageList: Add a "show-deleted" property.
- Date: Sat, 15 Jun 2013 03:20:38 +0000 (UTC)
commit b688b36e2d6883f475f653a4f56a160f7b9b2578
Author: Matthew Barnes <mbarnes redhat com>
Date: Fri Jun 14 15:05:43 2013 -0400
MessageList: Add a "show-deleted" property.
Bind this to the "show-deleted" GSettings key.
New functions:
message_list_get_show_deleted()
message_list_set_show_deleted()
mail/message-list.c | 53 ++++++++++++++++++++++++++++
mail/message-list.h | 3 ++
modules/settings/e-settings-message-list.c | 5 +++
3 files changed, 61 insertions(+), 0 deletions(-)
---
diff --git a/mail/message-list.c b/mail/message-list.c
index f7c58d2..77b82ef 100644
--- a/mail/message-list.c
+++ b/mail/message-list.c
@@ -102,6 +102,7 @@ struct _MessageListPrivate {
struct _MLSelection clipboard;
gboolean destroyed;
+ gboolean show_deleted;
gboolean thread_latest;
gboolean thread_subject;
gboolean any_row_changed; /* save state before regen list when this is set to true */
@@ -156,6 +157,7 @@ enum {
PROP_FOLDER,
PROP_PASTE_TARGET_LIST,
PROP_SESSION,
+ PROP_SHOW_DELETED,
PROP_THREAD_LATEST,
PROP_THREAD_SUBJECT
};
@@ -2691,6 +2693,12 @@ message_list_set_property (GObject *object,
g_value_get_object (value));
return;
+ case PROP_SHOW_DELETED:
+ message_list_set_show_deleted (
+ MESSAGE_LIST (object),
+ g_value_get_boolean (value));
+ return;
+
case PROP_THREAD_LATEST:
message_list_set_thread_latest (
MESSAGE_LIST (object),
@@ -2742,6 +2750,13 @@ message_list_get_property (GObject *object,
MESSAGE_LIST (object)));
return;
+ case PROP_SHOW_DELETED:
+ g_value_set_boolean (
+ value,
+ message_list_get_show_deleted (
+ MESSAGE_LIST (object)));
+ return;
+
case PROP_THREAD_LATEST:
g_value_set_boolean (
value,
@@ -2944,6 +2959,18 @@ message_list_class_init (MessageListClass *class)
g_object_class_install_property (
object_class,
+ PROP_SHOW_DELETED,
+ g_param_spec_boolean (
+ "show-deleted",
+ "Show Deleted",
+ "Show messages marked for deletion",
+ FALSE,
+ G_PARAM_READWRITE |
+ G_PARAM_CONSTRUCT |
+ G_PARAM_STATIC_STRINGS));
+
+ g_object_class_install_property (
+ object_class,
PROP_THREAD_LATEST,
g_param_spec_boolean (
"thread-latest",
@@ -4018,6 +4045,32 @@ message_list_get_paste_target_list (MessageList *message_list)
}
gboolean
+message_list_get_show_deleted (MessageList *message_list)
+{
+ g_return_val_if_fail (IS_MESSAGE_LIST (message_list), FALSE);
+
+ return message_list->priv->show_deleted;
+}
+
+void
+message_list_set_show_deleted (MessageList *message_list,
+ gboolean show_deleted)
+{
+ g_return_if_fail (IS_MESSAGE_LIST (message_list));
+
+ if (show_deleted == message_list->priv->show_deleted)
+ return;
+
+ message_list->priv->show_deleted = show_deleted;
+
+ g_object_notify (G_OBJECT (message_list), "show-deleted");
+
+ /* Changing this property triggers a message list regen. */
+ if (message_list->frozen == 0)
+ mail_regen_list (message_list, message_list->search, FALSE);
+}
+
+gboolean
message_list_get_thread_latest (MessageList *message_list)
{
g_return_val_if_fail (IS_MESSAGE_LIST (message_list), FALSE);
diff --git a/mail/message-list.h b/mail/message-list.h
index ec76cc6..1b05639 100644
--- a/mail/message-list.h
+++ b/mail/message-list.h
@@ -171,6 +171,9 @@ GtkTargetList * message_list_get_copy_target_list
(MessageList *message_list);
GtkTargetList * message_list_get_paste_target_list
(MessageList *message_list);
+gboolean message_list_get_show_deleted (MessageList *message_list);
+void message_list_set_show_deleted (MessageList *message_list,
+ gboolean show_deleted);
gboolean message_list_get_thread_latest (MessageList *message_list);
void message_list_set_thread_latest (MessageList *message_list,
gboolean thread_latest);
diff --git a/modules/settings/e-settings-message-list.c b/modules/settings/e-settings-message-list.c
index 35c1274..513069d 100644
--- a/modules/settings/e-settings-message-list.c
+++ b/modules/settings/e-settings-message-list.c
@@ -48,6 +48,11 @@ settings_message_list_constructed (GObject *object)
settings = g_settings_new ("org.gnome.evolution.mail");
g_settings_bind (
+ settings, "show-deleted",
+ message_list, "show-deleted",
+ G_SETTINGS_BIND_GET);
+
+ g_settings_bind (
settings, "thread-latest",
message_list, "thread-latest",
G_SETTINGS_BIND_GET);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]