[gnome-control-center/wip/gbsneto/new-goa-panel: 3/25] online-accounts: use the ui file to connect to signals



commit bfae88937d9fb63fb5c0878329839abf5399f6af
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date:   Wed Nov 9 15:00:37 2016 -0200

    online-accounts: use the ui file to connect to signals
    
    Simplify the code by using the GtkBuilder file to connect to
    the signals instead of manually doing it in the code.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=774222

 panels/online-accounts/cc-online-accounts-panel.c |   16 +++-------------
 panels/online-accounts/online-accounts.ui         |    3 +++
 2 files changed, 6 insertions(+), 13 deletions(-)
---
diff --git a/panels/online-accounts/cc-online-accounts-panel.c 
b/panels/online-accounts/cc-online-accounts-panel.c
index 72e420c..1622e01 100644
--- a/panels/online-accounts/cc-online-accounts-panel.c
+++ b/panels/online-accounts/cc-online-accounts-panel.c
@@ -227,22 +227,9 @@ cc_goa_panel_init (CcGoaPanel *panel)
   g_object_bind_property (monitor, "network-available",
                           panel->toolbar_add_button, "sensitive",
                           G_BINDING_SYNC_CREATE);
-  g_signal_connect (panel->toolbar_add_button,
-                    "clicked",
-                    G_CALLBACK (on_toolbar_add_button_clicked),
-                    panel);
-  g_signal_connect (panel->toolbar_remove_button,
-                    "clicked",
-                    G_CALLBACK (on_toolbar_remove_button_clicked),
-                    panel);
-
   g_object_bind_property (monitor, "network-available",
                           panel->add_account_button, "sensitive",
                           G_BINDING_SYNC_CREATE);
-  g_signal_connect (panel->add_account_button,
-                    "clicked",
-                    G_CALLBACK (on_add_button_clicked),
-                    panel);
 
   /* TODO: probably want to avoid _sync() ... */
   error = NULL;
@@ -306,7 +293,10 @@ cc_goa_panel_class_init (CcGoaPanelClass *klass)
   gtk_widget_class_bind_template_child (widget_class, CcGoaPanel, toolbar_add_button);
   gtk_widget_class_bind_template_child (widget_class, CcGoaPanel, toolbar_remove_button);
 
+  gtk_widget_class_bind_template_callback (widget_class, on_add_button_clicked);
   gtk_widget_class_bind_template_callback (widget_class, on_listbox_selection_changed);
+  gtk_widget_class_bind_template_callback (widget_class, on_toolbar_add_button_clicked);
+  gtk_widget_class_bind_template_callback (widget_class, on_toolbar_remove_button_clicked);
 }
 
 /* ---------------------------------------------------------------------------------------------------- */
diff --git a/panels/online-accounts/online-accounts.ui b/panels/online-accounts/online-accounts.ui
index 6b5516b..2167db2 100644
--- a/panels/online-accounts/online-accounts.ui
+++ b/panels/online-accounts/online-accounts.ui
@@ -74,6 +74,7 @@
                     <property name="use_action_appearance">False</property>
                     <property name="icon_name">list-add-symbolic</property>
                     <property name="label" translatable="yes">Add Account</property>
+                    <signal name="clicked" handler="on_toolbar_add_button_clicked" object="CcGoaPanel" 
swapped="no" />
                   </object>
                   <packing>
                     <property name="expand">False</property>
@@ -87,6 +88,7 @@
                     <property name="use_action_appearance">False</property>
                     <property name="icon_name">list-remove-symbolic</property>
                     <property name="label" translatable="yes">Remove Account</property>
+                    <signal name="clicked" handler="on_toolbar_remove_button_clicked" object="CcGoaPanel" 
swapped="no" />
                   </object>
                   <packing>
                     <property name="expand">False</property>
@@ -130,6 +132,7 @@
                         <property name="receives_default">True</property>
                         <property name="halign">center</property>
                         <property name="use_action_appearance">False</property>
+                        <signal name="clicked" handler="on_add_button_clicked" object="CcGoaPanel" 
swapped="no" />
                       </object>
                       <packing>
                         <property name="expand">False</property>


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