[empathy] empathy-accounts-dialog: Use radio buttons instead of a checkbox for the 'reuse existing account' UI



commit 58c031e979d623fdf447351713ffb0fafb801ce6
Author: Guillaume Desmottes <guillaume desmottes collabora co uk>
Date:   Wed Jun 10 16:03:29 2009 +0100

    empathy-accounts-dialog: Use radio buttons instead of a checkbox for the 'reuse existing account' UI
---
 src/empathy-accounts-dialog.c  |   20 ++++++++++++--------
 src/empathy-accounts-dialog.ui |   38 +++++++++++++++++++++++++++++++-------
 2 files changed, 43 insertions(+), 15 deletions(-)

diff --git a/src/empathy-accounts-dialog.c b/src/empathy-accounts-dialog.c
index dcf6bcc..1dcde45 100644
--- a/src/empathy-accounts-dialog.c
+++ b/src/empathy-accounts-dialog.c
@@ -72,7 +72,8 @@ typedef struct {
 	GtkWidget        *hbox_type;
 	GtkWidget        *button_create;
 	GtkWidget        *button_back;
-	GtkWidget        *checkbutton_register;
+	GtkWidget        *radiobutton_reuse;
+	GtkWidget        *radiobutton_register;
 
 	GtkWidget        *image_type;
 	GtkWidget        *label_name;
@@ -842,8 +843,8 @@ accounts_dialog_button_create_clicked_cb (GtkWidget             *button,
 	if (cap & MC_PROFILE_CAPABILITY_REGISTRATION_UI) {
 		gboolean active;
 
-		active = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (dialog->checkbutton_register));
-		if (!active) {
+		active = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (dialog->radiobutton_register));
+		if (active) {
 			mc_account_set_param_boolean (account, "register", TRUE);
 		}
 	}
@@ -877,9 +878,11 @@ accounts_dialog_profile_changed_cb (GtkWidget             *widget,
 	cap = mc_profile_get_capabilities (profile);
 
 	if (cap & MC_PROFILE_CAPABILITY_REGISTRATION_UI) {
-		gtk_widget_show (dialog->checkbutton_register);
+		gtk_widget_show (dialog->radiobutton_register);
+		gtk_widget_show (dialog->radiobutton_reuse);
 	} else {
-		gtk_widget_hide (dialog->checkbutton_register);
+		gtk_widget_hide (dialog->radiobutton_register);
+		gtk_widget_hide (dialog->radiobutton_reuse);
 	}
 	g_object_unref (profile);
 }
@@ -910,8 +913,8 @@ accounts_dialog_button_add_clicked_cb (GtkWidget             *button,
 		gtk_widget_hide (dialog->button_back);
 	}
 
-	accounts_dialog_profile_changed_cb (dialog->checkbutton_register, dialog);
-	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (dialog->checkbutton_register),
+	accounts_dialog_profile_changed_cb (dialog->radiobutton_register, dialog);
+	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (dialog->radiobutton_reuse),
 				      TRUE);
 	gtk_combo_box_set_active (GTK_COMBO_BOX (dialog->combobox_profile), 0);
 	gtk_widget_grab_focus (dialog->combobox_profile);
@@ -1071,7 +1074,8 @@ empathy_accounts_dialog_show (GtkWindow *parent,
 				       "hbox_type", &dialog->hbox_type,
 				       "button_create", &dialog->button_create,
 				       "button_back", &dialog->button_back,
-				       "checkbutton_register", &dialog->checkbutton_register,
+				       "radiobutton_reuse", &dialog->radiobutton_reuse,
+				       "radiobutton_register", &dialog->radiobutton_register,
 				       "image_type", &dialog->image_type,
 				       "label_name", &dialog->label_name,
 				       "button_add", &dialog->button_add,
diff --git a/src/empathy-accounts-dialog.ui b/src/empathy-accounts-dialog.ui
index 74a7e94..bb95191 100644
--- a/src/empathy-accounts-dialog.ui
+++ b/src/empathy-accounts-dialog.ui
@@ -255,14 +255,38 @@
                               </packing>
                             </child>
                             <child>
-                              <object class="GtkCheckButton" id="checkbutton_register">
-                                <property name="label" translatable="yes">I already have an account I want to use</property>
+                              <object class="GtkVBox" id="vbox2">
                                 <property name="visible">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="receives_default">False</property>
-                                <property name="use_underline">True</property>
-                                <property name="active">True</property>
-                                <property name="draw_indicator">True</property>
+                                <property name="orientation">vertical</property>
+                                <child>
+                                  <object class="GtkRadioButton" id="radiobutton_reuse">
+                                    <property name="label" translatable="yes">_Reuse an existing account</property>
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="receives_default">False</property>
+                                    <property name="use_underline">True</property>
+                                    <property name="active">True</property>
+                                    <property name="draw_indicator">True</property>
+                                  </object>
+                                  <packing>
+                                    <property name="position">0</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <object class="GtkRadioButton" id="radiobutton_register">
+                                    <property name="label" translatable="yes">_Create a new account</property>
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="receives_default">False</property>
+                                    <property name="use_underline">True</property>
+                                    <property name="active">True</property>
+                                    <property name="draw_indicator">True</property>
+                                    <property name="group">radiobutton_reuse</property>
+                                  </object>
+                                  <packing>
+                                    <property name="position">1</property>
+                                  </packing>
+                                </child>
                               </object>
                               <packing>
                                 <property name="position">2</property>



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]