aboutsummaryrefslogtreecommitdiffstats
path: root/mail/em-account-prefs.c
diff options
context:
space:
mode:
authorNot Zed <NotZed@Ximian.com>2004-03-18 12:58:29 +0800
committerMichael Zucci <zucchi@src.gnome.org>2004-03-18 12:58:29 +0800
commit4b308cddb0efde0acf808f3a52a4e7653e9e0070 (patch)
tree07b26e695cf25781e620946712c210e5348e5c6c /mail/em-account-prefs.c
parentbc6046b8f1bb7c50cae563c08cb9d55c956ff38b (diff)
downloadgsoc2013-evolution-4b308cddb0efde0acf808f3a52a4e7653e9e0070.tar.gz
gsoc2013-evolution-4b308cddb0efde0acf808f3a52a4e7653e9e0070.tar.zst
gsoc2013-evolution-4b308cddb0efde0acf808f3a52a4e7653e9e0070.zip
started writing this, but i couldn't be fucked right now - apparently
2004-03-18 Not Zed <NotZed@Ximian.com> * mail-config.c (mail_config_writable): started writing this, but i couldn't be fucked right now - apparently gnome is supposed to use the gconf thing which just doens't work. i'll waste a few hours trying to get it to work again first before i keep going with this. 2004-03-17 Not Zed <NotZed@Ximian.com> * em-format-html.c (efh_message_deliverystatus): format as plain text too. * em-format.c (emf_message_deliverystatus): format delivery status messages as plain text, rather than as messages. since they wont be CamelMimeMessages. Maybe they should be silently hidden. * mail-offline-handler.c (store_go_online): split this, only call add_store/note_store once we've actually set the store online. (store_went_online): set the store up once we're fully online. Works around a deadlock in #55618. * em-account-prefs.c (account_cursor_change): disable editing/adding/removing accounts etc if accounts aren't editable. (em_account_prefs_construct): call above after setup. * mail-component.c (mc_quit_sync): if we have empty on exit days, check that. keep track of the last empty on exit time. * em-mailer-prefs.c (emmp_empty_trash_init): init the trash stuff here. (em_mailer_prefs_apply): save empty trash on exit frequency. svn path=/trunk/; revision=25110
Diffstat (limited to 'mail/em-account-prefs.c')
-rw-r--r--mail/em-account-prefs.c26
1 files changed, 16 insertions, 10 deletions
diff --git a/mail/em-account-prefs.c b/mail/em-account-prefs.c
index e4b3844b2b..ee0337562e 100644
--- a/mail/em-account-prefs.c
+++ b/mail/em-account-prefs.c
@@ -389,18 +389,23 @@ account_cursor_change (GtkTreeSelection *selection, EMAccountPrefs *prefs)
GtkTreeModel *model;
GtkTreeIter iter;
int state;
-
- state = gtk_tree_selection_get_selected (selection, &model, &iter);
+
+ state = gconf_client_key_is_writable(mail_config_get_gconf_client(), "/apps/evolution/mail/accounts", NULL);
if (state) {
- gtk_tree_model_get (model, &iter, 3, &account, -1);
- if (account->source && account->enabled)
- gtk_button_set_label (prefs->mail_able, _("Disable"));
- else
- gtk_button_set_label (prefs->mail_able, _("Enable"));
+ state = gtk_tree_selection_get_selected (selection, &model, &iter);
+ if (state) {
+ gtk_tree_model_get (model, &iter, 3, &account, -1);
+ if (account->source && account->enabled)
+ gtk_button_set_label (prefs->mail_able, _("Disable"));
+ else
+ gtk_button_set_label (prefs->mail_able, _("Enable"));
+ } else {
+ gtk_widget_grab_focus (GTK_WIDGET (prefs->mail_add));
+ }
} else {
- gtk_widget_grab_focus (GTK_WIDGET (prefs->mail_add));
+ gtk_widget_set_sensitive (GTK_WIDGET (prefs->mail_add), FALSE);
}
-
+
gtk_widget_set_sensitive (GTK_WIDGET (prefs->mail_edit), state);
gtk_widget_set_sensitive (GTK_WIDGET (prefs->mail_delete), state);
gtk_widget_set_sensitive (GTK_WIDGET (prefs->mail_default), state);
@@ -557,8 +562,9 @@ em_account_prefs_construct (EMAccountPrefs *prefs)
prefs->mail_able = GTK_BUTTON (glade_xml_get_widget (gui, "cmdAccountAble"));
g_signal_connect (prefs->mail_able, "clicked", G_CALLBACK (account_able_clicked), prefs);
-}
+ account_cursor_change(gtk_tree_view_get_selection(prefs->table), prefs);
+}
GtkWidget *
em_account_prefs_new (GNOME_Evolution_Shell shell)