diff options
author | Xavier Claessens <xclaesse@gmail.com> | 2007-10-19 20:48:29 +0800 |
---|---|---|
committer | Xavier Claessens <xclaesse@src.gnome.org> | 2007-10-19 20:48:29 +0800 |
commit | e67e130e7203f3bc99013f1814df8b2cff89d72f (patch) | |
tree | 82df81264ab85ba837d0d3923ae98674768be48d /libempathy-gtk/empathy-accounts-dialog.c | |
parent | a4b1c43fd11f07d46c207204db5e2cd8d11da7f3 (diff) | |
download | gsoc2013-empathy-e67e130e7203f3bc99013f1814df8b2cff89d72f.tar gsoc2013-empathy-e67e130e7203f3bc99013f1814df8b2cff89d72f.tar.gz gsoc2013-empathy-e67e130e7203f3bc99013f1814df8b2cff89d72f.tar.bz2 gsoc2013-empathy-e67e130e7203f3bc99013f1814df8b2cff89d72f.tar.lz gsoc2013-empathy-e67e130e7203f3bc99013f1814df8b2cff89d72f.tar.xz gsoc2013-empathy-e67e130e7203f3bc99013f1814df8b2cff89d72f.tar.zst gsoc2013-empathy-e67e130e7203f3bc99013f1814df8b2cff89d72f.zip |
set unsensitive the add button if there is no profile installed and tell
2007-10-19 Xavier Claessens <xclaesse@gmail.com>
* libempathy-gtk/empathy-profile-chooser.c:
* libempathy-gtk/empathy-profile-chooser.h:
* libempathy-gtk/empathy-accounts-dialog.c: set unsensitive the add
button if there is no profile installed and tell the user to install
some connection managers.
* libempathy-gtk/empathy-ui-utils.c: Fix indentation.
svn path=/trunk/; revision=381
Diffstat (limited to 'libempathy-gtk/empathy-accounts-dialog.c')
-rw-r--r-- | libempathy-gtk/empathy-accounts-dialog.c | 36 |
1 files changed, 24 insertions, 12 deletions
diff --git a/libempathy-gtk/empathy-accounts-dialog.c b/libempathy-gtk/empathy-accounts-dialog.c index cc8ba4f45..914e6d471 100644 --- a/libempathy-gtk/empathy-accounts-dialog.c +++ b/libempathy-gtk/empathy-accounts-dialog.c @@ -240,6 +240,8 @@ accounts_dialog_update_account (EmpathyAccountsDialog *dialog, if (!account) { GtkTreeView *view; GtkTreeModel *model; + GString *string; + gchar *str; gtk_widget_show (dialog->frame_no_account); gtk_widget_hide (dialog->vbox_details); @@ -250,25 +252,32 @@ accounts_dialog_update_account (EmpathyAccountsDialog *dialog, view = GTK_TREE_VIEW (dialog->treeview); model = gtk_tree_view_get_model (view); + if (empathy_profile_chooser_n_profiles (dialog->combobox_profile) > 0) { + string = g_string_new (_("To add a new account, you can click on the " + "'Add' button and a new entry will be created " + "for you to start configuring.")); + } else { + string = g_string_new (_("To add a new account, you first have to " + "install a backend for each protocol " + "you want to use.")); + } + if (gtk_tree_model_iter_n_children (model, NULL) > 0) { gtk_label_set_markup (GTK_LABEL (dialog->label_no_account), _("<b>No Account Selected</b>")); - gtk_label_set_markup (GTK_LABEL (dialog->label_no_account_blurb), - _("To add a new account, you can click on the " - "'Add' button and a new entry will be created " - "for you to start configuring.\n" - "\n" - "If you do not want to add an account, simply " - "click on the account you want to configure in " - "the list on the left.")); + g_string_append (string, _("\n\n" + "If you do not want to add an account, simply " + "click on the account you want to configure in " + "the list on the left.")); } else { gtk_label_set_markup (GTK_LABEL (dialog->label_no_account), _("<b>No Accounts Configured</b>")); - gtk_label_set_markup (GTK_LABEL (dialog->label_no_account_blurb), - _("To add a new account, you can click on the " - "'Add' button and a new entry will be created " - "for you to start configuring.")); } + + str = g_string_free (string, FALSE); + gtk_label_set_markup (GTK_LABEL (dialog->label_no_account_blurb), + str); + g_free (str); } else { McProfile *profile; const gchar *config_ui; @@ -1044,6 +1053,9 @@ empathy_accounts_dialog_show (GtkWindow *parent) dialog->combobox_profile, TRUE, TRUE, 0); gtk_widget_show (dialog->combobox_profile); + if (empathy_profile_chooser_n_profiles (dialog->combobox_profile) <= 0) { + gtk_widget_set_sensitive (dialog->button_add, FALSE); + } /* Set up signalling */ dialog->mc = empathy_mission_control_new (); |