aboutsummaryrefslogtreecommitdiffstats
path: root/mail/em-folder-properties.c
diff options
context:
space:
mode:
authorJeffrey Stedfast <fejj@novell.com>2008-05-15 09:40:03 +0800
committerJeffrey Stedfast <fejj@src.gnome.org>2008-05-15 09:40:03 +0800
commit0ede696fe3e0b29e808c6edb46807a2c8c3fa4a9 (patch)
tree6850eca62a79b5275b104bf0edb5d28e3aaada3e /mail/em-folder-properties.c
parent6d741eea43bd5285080eb7a24e5ac4e9e7e6a23b (diff)
downloadgsoc2013-evolution-0ede696fe3e0b29e808c6edb46807a2c8c3fa4a9.tar.gz
gsoc2013-evolution-0ede696fe3e0b29e808c6edb46807a2c8c3fa4a9.tar.zst
gsoc2013-evolution-0ede696fe3e0b29e808c6edb46807a2c8c3fa4a9.zip
Needed so that IMAP4 can allow users to configure cache expiration
2008-05-14 Jeffrey Stedfast <fejj@novell.com> Needed so that IMAP4 can allow users to configure cache expiration per-folder. * em-folder-properties.c (emfp_get_folder_item): Add support for CAMEL_ARG_INT and CAMEL_ARG_DBL. (emfp_commit): Same. svn path=/trunk/; revision=35502
Diffstat (limited to 'mail/em-folder-properties.c')
-rw-r--r--mail/em-folder-properties.c34
1 files changed, 34 insertions, 0 deletions
diff --git a/mail/em-folder-properties.c b/mail/em-folder-properties.c
index 1af52a1f47..6a926f43bb 100644
--- a/mail/em-folder-properties.c
+++ b/mail/em-folder-properties.c
@@ -97,6 +97,12 @@ emfp_commit(EConfig *ec, GSList *items, void *data)
g_free (arg->ca_str);
arg->ca_str = (char *) gtk_entry_get_text ((GtkEntry *) prop_data->widgets[i]);
break;
+ case CAMEL_ARG_INT:
+ arg->ca_int = gtk_spin_button_get_value_as_int ((GtkSpinButton *) prop_data->widgets[i]);
+ break;
+ case CAMEL_ARG_DBL:
+ arg->ca_double = gtk_spin_button_get_value ((GtkSpinButton *) prop_data->widgets[i]);
+ break;
default:
g_warning ("This shouldn't be reached\n");
break;
@@ -237,6 +243,34 @@ emfp_get_folder_item(EConfig *ec, EConfigItem *item, struct _GtkWidget *parent,
gtk_table_attach ((GtkTable *) table, w, 1, 2, row, row + 1, GTK_FILL | GTK_EXPAND, 0, 0, 0);
prop_data->widgets[i] = w;
break;
+ case CAMEL_ARG_INT:
+ label = gtk_label_new (prop->description);
+ gtk_misc_set_alignment ((GtkMisc *) label, 0.0, 0.5);
+ gtk_widget_show (label);
+ gtk_table_attach ((GtkTable *) table, label, 0, 1, row, row + 1, GTK_FILL, 0, 0, 0);
+
+ w = gtk_spin_button_new_with_range (G_MININT, G_MAXINT, 1.0);
+ gtk_spin_button_set_value ((GtkSpinButton *) w, (double) prop_data->argv->argv[i].ca_int);
+ gtk_spin_button_set_numeric ((GtkSpinButton *) w, TRUE);
+ gtk_spin_button_set_digits ((GtkSpinButton *) w, 0);
+ gtk_widget_show (w);
+ gtk_table_attach ((GtkTable *) table, w, 1, 2, row, row + 1, GTK_FILL | GTK_EXPAND, 0, 0, 0);
+ prop_data->widgets[i] = w;
+ break;
+ case CAMEL_ARG_DBL:
+ label = gtk_label_new (prop->description);
+ gtk_misc_set_alignment ((GtkMisc *) label, 0.0, 0.5);
+ gtk_widget_show (label);
+ gtk_table_attach ((GtkTable *) table, label, 0, 1, row, row + 1, GTK_FILL, 0, 0, 0);
+
+ w = gtk_spin_button_new_with_range (G_MININT, G_MAXINT, 1.0);
+ gtk_spin_button_set_value ((GtkSpinButton *) w, prop_data->argv->argv[i].ca_double);
+ gtk_spin_button_set_numeric ((GtkSpinButton *) w, TRUE);
+ gtk_spin_button_set_digits ((GtkSpinButton *) w, 2);
+ gtk_widget_show (w);
+ gtk_table_attach ((GtkTable *) table, w, 1, 2, row, row + 1, GTK_FILL | GTK_EXPAND, 0, 0, 0);
+ prop_data->widgets[i] = w;
+ break;
default:
g_warning ("This shouldn't be reached\n");
break;