summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Ancell <robert.ancell@canonical.com>2019-10-15 12:25:48 +1300
committerGeorges Basile Stavracas Neto <georges.stavracas@gmail.com>2019-10-22 20:11:45 +0000
commit8b6e3fb7365072da84cf45e97cd8f91ea64b75ce (patch)
tree25bb499f038e2e77e2905c3ed6b5719843cde532
parentb331d75df5b1bce5222ff5a722037af4566d15ca (diff)
downloadgnome-control-center-8b6e3fb7365072da84cf45e97cd8f91ea64b75ce.tar.gz
network: Store widgets inside objects
This is a step towards replacing GtkBuilder with GtkTemplate
-rw-r--r--panels/network/connection-editor/ce-page-8021x-security.c23
-rw-r--r--panels/network/connection-editor/ce-page-8021x-security.h5
-rw-r--r--panels/network/connection-editor/ce-page-details.c105
-rw-r--r--panels/network/connection-editor/ce-page-details.h23
-rw-r--r--panels/network/connection-editor/ce-page-ip4.c135
-rw-r--r--panels/network/connection-editor/ce-page-ip4.h24
-rw-r--r--panels/network/connection-editor/ce-page-ip6.c150
-rw-r--r--panels/network/connection-editor/ce-page-ip6.h21
-rw-r--r--panels/network/connection-editor/ce-page-security.c32
-rw-r--r--panels/network/connection-editor/ce-page-security.h4
-rw-r--r--panels/network/connection-editor/ce-page-vpn.c19
-rw-r--r--panels/network/connection-editor/ce-page-vpn.h7
-rw-r--r--panels/network/connection-editor/ce-page-wifi.c59
-rw-r--r--panels/network/connection-editor/ce-page-wifi.h5
-rw-r--r--panels/network/net-device-ethernet.c91
-rw-r--r--panels/network/net-device-mobile.c146
-rw-r--r--panels/network/net-device-simple.c59
-rw-r--r--panels/network/net-device-wifi.c147
-rw-r--r--panels/network/net-proxy.c182
-rw-r--r--panels/network/net-vpn.c50
-rw-r--r--panels/network/wireless-security/eap-method-fast.c199
-rw-r--r--panels/network/wireless-security/eap-method-leap.c85
-rw-r--r--panels/network/wireless-security/eap-method-peap.c191
-rw-r--r--panels/network/wireless-security/eap-method-simple.c84
-rw-r--r--panels/network/wireless-security/eap-method-tls.c219
-rw-r--r--panels/network/wireless-security/eap-method-ttls.c185
-rw-r--r--panels/network/wireless-security/ws-dynamic-wep.c33
-rw-r--r--panels/network/wireless-security/ws-leap.c90
-rw-r--r--panels/network/wireless-security/ws-wep-key.c146
-rw-r--r--panels/network/wireless-security/ws-wpa-eap.c33
-rw-r--r--panels/network/wireless-security/ws-wpa-psk.c86
31 files changed, 1205 insertions, 1433 deletions
diff --git a/panels/network/connection-editor/ce-page-8021x-security.c b/panels/network/connection-editor/ce-page-8021x-security.c
index 33b2379e6..fc9e6c7a0 100644
--- a/panels/network/connection-editor/ce-page-8021x-security.c
+++ b/panels/network/connection-editor/ce-page-8021x-security.c
@@ -39,7 +39,7 @@ G_DEFINE_TYPE (CEPage8021xSecurity, ce_page_8021x_security, CE_TYPE_PAGE)
static void
enable_toggled (CEPage8021xSecurity *page)
{
- gtk_widget_set_sensitive (page->security_widget, gtk_switch_get_active (page->enabled));
+ gtk_widget_set_sensitive (page->security_widget, gtk_switch_get_active (page->enable_8021x_switch));
ce_page_changed (CE_PAGE (page));
}
@@ -53,15 +53,10 @@ static void
finish_setup (CEPage8021xSecurity *page, gpointer unused, GError *error, gpointer user_data)
{
GtkWidget *parent;
- GtkWidget *vbox;
- GtkWidget *heading;
if (error)
return;
- vbox = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "box"));
- heading = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "security_label"));
-
page->group = gtk_size_group_new (GTK_SIZE_GROUP_HORIZONTAL);
page->security = (WirelessSecurity *) ws_wpa_eap_new (CE_PAGE (page)->connection, TRUE, FALSE);
@@ -76,14 +71,14 @@ finish_setup (CEPage8021xSecurity *page, gpointer unused, GError *error, gpointe
if (parent)
gtk_container_remove (GTK_CONTAINER (parent), page->security_widget);
- gtk_switch_set_active (page->enabled, page->initial_have_8021x);
- g_signal_connect_swapped (page->enabled, "notify::active", G_CALLBACK (enable_toggled), page);
+ gtk_switch_set_active (page->enable_8021x_switch, page->initial_have_8021x);
+ g_signal_connect_swapped (page->enable_8021x_switch, "notify::active", G_CALLBACK (enable_toggled), page);
gtk_widget_set_sensitive (page->security_widget, page->initial_have_8021x);
- gtk_size_group_add_widget (page->group, heading);
+ gtk_size_group_add_widget (page->group, GTK_WIDGET (page->security_label));
wireless_security_add_to_size_group (page->security, page->group);
- gtk_container_add (GTK_CONTAINER (vbox), page->security_widget);
+ gtk_container_add (GTK_CONTAINER (page->box), page->security_widget);
}
@@ -99,11 +94,13 @@ ce_page_8021x_security_new (NMConnection *connection,
"/org/gnome/control-center/network/8021x-security-page.ui",
_("Security")));
+ page->box = GTK_BOX (gtk_builder_get_object (CE_PAGE (page)->builder, "box"));
+ page->enable_8021x_switch = GTK_SWITCH (gtk_builder_get_object (CE_PAGE (page)->builder, "enable_8021x_switch"));
+ page->security_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "security_label"));
+
if (nm_connection_get_setting_802_1x (connection))
page->initial_have_8021x = TRUE;
- page->enabled = GTK_SWITCH (gtk_builder_get_object (CE_PAGE (page)->builder, "enable_8021x_switch"));
-
g_signal_connect (page, "initialized", G_CALLBACK (finish_setup), NULL);
if (page->initial_have_8021x)
@@ -118,7 +115,7 @@ validate (CEPage *cepage, NMConnection *connection, GError **error)
CEPage8021xSecurity *page = CE_PAGE_8021X_SECURITY (cepage);
gboolean valid = TRUE;
- if (gtk_switch_get_active (page->enabled)) {
+ if (gtk_switch_get_active (page->enable_8021x_switch)) {
NMSetting *s_8021x;
/* FIXME: get failed property and error out of wireless security objects */
diff --git a/panels/network/connection-editor/ce-page-8021x-security.h b/panels/network/connection-editor/ce-page-8021x-security.h
index 3bbac2a05..e3fbef0a1 100644
--- a/panels/network/connection-editor/ce-page-8021x-security.h
+++ b/panels/network/connection-editor/ce-page-8021x-security.h
@@ -44,7 +44,10 @@ typedef struct CEPage8021xSecurityClass CEPage8021xSecurityClass;
struct CEPage8021xSecurity {
CEPage parent;
- GtkSwitch *enabled;
+ GtkBox *box;
+ GtkSwitch *enable_8021x_switch;
+ GtkLabel *security_label;
+
GtkWidget *security_widget;
WirelessSecurity *security;
GtkSizeGroup *group;
diff --git a/panels/network/connection-editor/ce-page-details.c b/panels/network/connection-editor/ce-page-details.c
index dc30807b0..eabec00a6 100644
--- a/panels/network/connection-editor/ce-page-details.c
+++ b/panels/network/connection-editor/ce-page-details.c
@@ -86,7 +86,6 @@ update_last_used (CEPageDetails *page, NMConnection *connection)
GTimeSpan diff;
guint64 timestamp;
NMSettingConnection *s_con;
- GtkWidget *heading, *widget;
s_con = nm_connection_get_setting_connection (connection);
if (s_con == NULL)
@@ -110,9 +109,7 @@ update_last_used (CEPageDetails *page, NMConnection *connection)
else
last_used = g_strdup_printf (ngettext ("%i day ago", "%i days ago", days), days);
out:
- heading = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "last_used_heading_label"));
- widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "last_used_label"));
- panel_set_device_widget_details (GTK_LABEL (heading), GTK_LABEL (widget), last_used);
+ panel_set_device_widget_details (page->last_used_heading_label, page->last_used_label, last_used);
}
static void
@@ -122,7 +119,7 @@ all_user_changed (CEPageDetails *page)
NMSettingConnection *sc;
sc = nm_connection_get_setting_connection (CE_PAGE (page)->connection);
- all_users = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON ((gtk_builder_get_object (CE_PAGE (page)->builder, "all_user_check"))));
+ all_users = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->all_user_check));
g_object_set (sc, "permissions", NULL, NULL);
if (!all_users)
@@ -137,7 +134,7 @@ restrict_data_changed (CEPageDetails *page)
s_con = nm_connection_get_setting_connection (CE_PAGE (page)->connection);
- if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "restrict_data_check"))))
+ if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->restrict_data_check)))
metered = NM_METERED_YES;
else
metered = NM_METERED_NO;
@@ -150,7 +147,6 @@ update_restrict_data (CEPageDetails *page)
{
NMSettingConnection *s_con;
NMMetered metered;
- GtkWidget *widget;
const gchar *type;
s_con = nm_connection_get_setting_connection (CE_PAGE (page)->connection);
@@ -166,20 +162,18 @@ update_restrict_data (CEPageDetails *page)
metered = nm_setting_connection_get_metered (s_con);
- widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "restrict_data_check"));
- gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (widget),
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (page->restrict_data_check),
metered == NM_METERED_YES || metered == NM_METERED_GUESS_YES);
- gtk_widget_show (widget);
+ gtk_widget_show (GTK_WIDGET (page->restrict_data_check));
- g_signal_connect_swapped (widget, "notify::active", G_CALLBACK (restrict_data_changed), page);
- g_signal_connect_swapped (widget, "notify::active", G_CALLBACK (ce_page_changed), page);
+ g_signal_connect_swapped (page->restrict_data_check, "notify::active", G_CALLBACK (restrict_data_changed), page);
+ g_signal_connect_swapped (page->restrict_data_check, "notify::active", G_CALLBACK (ce_page_changed), page);
}
static void
connect_details_page (CEPageDetails *page)
{
NMSettingConnection *sc;
- GtkWidget *heading, *widget;
guint speed;
guint strength;
NMDeviceState state;
@@ -224,24 +218,18 @@ connect_details_page (CEPageDetails *page)
}
if (speed > 0)
speed_label = g_strdup_printf (_("%d Mb/s"), speed);
- heading = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "speed_heading_label"));
- widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "speed_label"));
- panel_set_device_widget_details (GTK_LABEL (heading), GTK_LABEL (widget), speed_label);
+ panel_set_device_widget_details (page->speed_heading_label, page->speed_label, speed_label);
if (NM_IS_DEVICE_WIFI (page->device))
hw_address = nm_device_wifi_get_hw_address (NM_DEVICE_WIFI (page->device));
else if (NM_IS_DEVICE_ETHERNET (page->device))
hw_address = nm_device_ethernet_get_hw_address (NM_DEVICE_ETHERNET (page->device));
- heading = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "mac_heading_label"));
- widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "mac_label"));
- panel_set_device_widget_details (GTK_LABEL (heading), GTK_LABEL (widget), hw_address);
+ panel_set_device_widget_details (page->mac_heading_label, page->mac_label, hw_address);
if (device_is_active && active_ap)
security_string = get_ap_security_string (active_ap);
- heading = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "security_heading_label"));
- widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "security_label"));
- panel_set_device_widget_details (GTK_LABEL (heading), GTK_LABEL (widget), security_string);
+ panel_set_device_widget_details (page->security_heading_label, page->security_label, security_string);
strength = 0;
if (page->ap != NULL)
@@ -259,65 +247,51 @@ connect_details_page (CEPageDetails *page)
strength_label = C_("Signal strength", "Good");
else
strength_label = C_("Signal strength", "Excellent");
- heading = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "strength_heading_label"));
- widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "strength_label"));
- panel_set_device_widget_details (GTK_LABEL (heading), GTK_LABEL (widget), strength_label);
+ panel_set_device_widget_details (page->strength_heading_label, page->strength_label, strength_label);
/* set IP entries */
- panel_set_device_widgets (GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "ipv4_heading_label")),
- GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "ipv4_label")),
- GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "ipv6_heading_label")),
- GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "ipv6_label")),
- GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "dns_heading_label")),
- GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "dns_label")),
- GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "route_heading_label")),
- GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "route_label")),
+ panel_set_device_widgets (page->ipv4_heading_label, page->ipv4_label,
+ page->ipv6_heading_label, page->ipv6_label,
+ page->dns_heading_label, page->dns_label,
+ page->route_heading_label, page->route_label,
device_is_active ? page->device : NULL);
if (!device_is_active && CE_PAGE (page)->connection)
update_last_used (page, CE_PAGE (page)->connection);
- else {
- heading = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "last_used_heading_label"));
- widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "last_used_label"));
- panel_set_device_widget_details (GTK_LABEL (heading), GTK_LABEL (widget), NULL);
- }
+ else
+ panel_set_device_widget_details (page->last_used_heading_label, page->last_used_label, NULL);
/* Auto connect check */
- widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder,
- "auto_connect_check"));
if (g_str_equal (type, NM_SETTING_VPN_SETTING_NAME)) {
- gtk_widget_hide (widget);
+ gtk_widget_hide (GTK_WIDGET (page->auto_connect_check));
} else {
g_object_bind_property (sc, "autoconnect",
- widget, "active",
+ page->auto_connect_check, "active",
G_BINDING_BIDIRECTIONAL | G_BINDING_SYNC_CREATE);
- g_signal_connect_swapped (widget, "toggled", G_CALLBACK (ce_page_changed), page);
+ g_signal_connect_swapped (page->auto_connect_check, "toggled", G_CALLBACK (ce_page_changed), page);
}
/* All users check */
- widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder,
- "all_user_check"));
- gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (widget),
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (page->all_user_check),
nm_setting_connection_get_num_permissions (sc) == 0);
- g_signal_connect_swapped (widget, "toggled",
+ g_signal_connect_swapped (page->all_user_check, "toggled",
G_CALLBACK (all_user_changed), page);
- g_signal_connect_swapped (widget, "toggled", G_CALLBACK (ce_page_changed), page);
+ g_signal_connect_swapped (page->all_user_check, "toggled", G_CALLBACK (ce_page_changed), page);
/* Restrict Data check */
update_restrict_data (page);
/* Forget button */
- widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "forget_button"));
- g_signal_connect_swapped (widget, "clicked", G_CALLBACK (forget_cb), page);
+ g_signal_connect_swapped (page->forget_button, "clicked", G_CALLBACK (forget_cb), page);
if (g_str_equal (type, NM_SETTING_WIRELESS_SETTING_NAME))
- gtk_button_set_label (GTK_BUTTON (widget), _("Forget Connection"));
+ gtk_button_set_label (page->forget_button, _("Forget Connection"));
else if (g_str_equal (type, NM_SETTING_WIRED_SETTING_NAME))
- gtk_button_set_label (GTK_BUTTON (widget), _("Remove Connection Profile"));
+ gtk_button_set_label (page->forget_button, _("Remove Connection Profile"));
else if (g_str_equal (type, NM_SETTING_VPN_SETTING_NAME))
- gtk_button_set_label (GTK_BUTTON (widget), _("Remove VPN"));
+ gtk_button_set_label (page->forget_button, _("Remove VPN"));
else
- gtk_widget_hide (widget);
+ gtk_widget_hide (GTK_WIDGET (page->forget_button));
}
static void
@@ -345,6 +319,29 @@ ce_page_details_new (NMConnection *connection,
"/org/gnome/control-center/network/details-page.ui",
_("Details")));
+ page->all_user_check = GTK_CHECK_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "all_user_check"));
+ page->auto_connect_check = GTK_CHECK_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "auto_connect_check"));
+ page->dns_heading_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "dns_heading_label"));
+ page->dns_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "dns_label"));
+ page->forget_button = GTK_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "forget_button"));
+ page->ipv4_heading_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "ipv4_heading_label"));
+ page->ipv4_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "ipv4_label"));
+ page->ipv6_heading_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "ipv6_heading_label"));
+ page->ipv6_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "ipv6_label"));
+ page->last_used_heading_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "last_used_heading_label"));
+ page->last_used_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "last_used_label"));
+ page->mac_heading_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "mac_heading_label"));
+ page->mac_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "mac_label"));
+ page->restrict_data_check = GTK_CHECK_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "restrict_data_check"));
+ page->route_heading_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "route_heading_label"));
+ page->route_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "route_label"));
+ page->security_heading_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "security_heading_label"));
+ page->security_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "security_label"));
+ page->speed_heading_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "speed_heading_label"));
+ page->speed_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "speed_label"));
+ page->strength_heading_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "strength_heading_label"));
+ page->strength_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "strength_label"));
+
page->editor = editor;
page->device = device;
page->ap = ap;
diff --git a/panels/network/connection-editor/ce-page-details.h b/panels/network/connection-editor/ce-page-details.h
index fb85a2585..d337c8b88 100644
--- a/panels/network/connection-editor/ce-page-details.h
+++ b/panels/network/connection-editor/ce-page-details.h
@@ -44,6 +44,29 @@ struct _CEPageDetails
{
CEPage parent;
+ GtkCheckButton *all_user_check;
+ GtkCheckButton *auto_connect_check;
+ GtkLabel *dns_heading_label;
+ GtkLabel *dns_label;
+ GtkButton *forget_button;
+ GtkLabel *ipv4_heading_label;
+ GtkLabel *ipv4_label;
+ GtkLabel *ipv6_heading_label;
+ GtkLabel *ipv6_label;
+ GtkLabel *last_used_heading_label;
+ GtkLabel *last_used_label;
+ GtkLabel *mac_heading_label;
+ GtkLabel *mac_label;
+ GtkCheckButton *restrict_data_check;
+ GtkLabel *route_heading_label;
+ GtkLabel *route_label;
+ GtkLabel *security_heading_label;
+ GtkLabel *security_label;
+ GtkLabel *speed_heading_label;
+ GtkLabel *speed_label;
+ GtkLabel *strength_heading_label;
+ GtkLabel *strength_label;
+
NMDevice *device;
NMAccessPoint *ap;
NetConnectionEditor *editor;
diff --git a/panels/network/connection-editor/ce-page-ip4.c b/panels/network/connection-editor/ce-page-ip4.c
index 76726adb4..add4e84e7 100644
--- a/panels/network/connection-editor/ce-page-ip4.c
+++ b/panels/network/connection-editor/ce-page-ip4.c
@@ -32,8 +32,6 @@
#include "ce-page-ip4.h"
#include "ui-helpers.h"
-#define RADIO_IS_ACTIVE(x) (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (gtk_builder_get_object(CE_PAGE (page)->builder, x))))
-
static void ensure_empty_address_row (CEPageIP4 *page);
static void ensure_empty_routes_row (CEPageIP4 *page);
@@ -58,23 +56,21 @@ method_changed (CEPageIP4 *page)
gboolean addr_enabled;
gboolean dns_enabled;
gboolean routes_enabled;
- GtkWidget *widget;
- if (RADIO_IS_ACTIVE ("disabled_radio")) {
+ if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->disabled_radio))) {
addr_enabled = FALSE;
dns_enabled = FALSE;
routes_enabled = FALSE;
} else {
- addr_enabled = RADIO_IS_ACTIVE ("manual_radio");
- dns_enabled = !RADIO_IS_ACTIVE ("local_radio");
- routes_enabled = !RADIO_IS_ACTIVE ("local_radio");
+ addr_enabled = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->manual_radio));
+ dns_enabled = !gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->local_radio));
+ routes_enabled = !gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->local_radio));
}
- widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "address_box"));
- gtk_widget_set_visible (widget, addr_enabled);
- gtk_widget_set_sensitive (page->dns_entry, dns_enabled);
- gtk_widget_set_sensitive (page->routes_list, routes_enabled);
- gtk_widget_set_sensitive (page->never_default, routes_enabled);
+ gtk_widget_set_visible (GTK_WIDGET (page->address_box), addr_enabled);
+ gtk_widget_set_sensitive (GTK_WIDGET (page->dns_entry), dns_enabled);
+ gtk_widget_set_sensitive (GTK_WIDGET (page->routes_list), routes_enabled);
+ gtk_widget_set_sensitive (GTK_WIDGET (page->never_default_check), routes_enabled);
ce_page_changed (CE_PAGE (page));
}
@@ -196,7 +192,6 @@ add_address_row (CEPageIP4 *page,
const gchar *network,
const gchar *gateway)
{
- GtkSizeGroup *group;
GtkWidget *row;
GtkWidget *row_box;
GtkWidget *widget;
@@ -245,8 +240,7 @@ add_address_row (CEPageIP4 *page,
gtk_container_add (GTK_CONTAINER (row_box), delete_button);
g_object_set_data (G_OBJECT (row), "delete-button", delete_button);
- group = GTK_SIZE_GROUP (gtk_builder_get_object (CE_PAGE (page)->builder, "address_sizegroup"));
- gtk_size_group_add_widget (group, delete_button);
+ gtk_size_group_add_widget (page->address_sizegroup, delete_button);
gtk_container_add (GTK_CONTAINER (row), row_box);
gtk_widget_show_all (row);
@@ -277,17 +271,14 @@ ensure_empty_address_row (CEPageIP4 *page)
static void
add_address_box (CEPageIP4 *page)
{
- GtkWidget *widget;
GtkWidget *list;
gint i;
- widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "address_box"));
-
page->address_list = list = gtk_list_box_new ();
gtk_list_box_set_selection_mode (GTK_LIST_BOX (list), GTK_SELECTION_NONE);
gtk_list_box_set_header_func (GTK_LIST_BOX (list), cc_list_box_update_header_func, NULL, NULL);
gtk_list_box_set_sort_func (GTK_LIST_BOX (list), (GtkListBoxSortFunc)sort_first_last, NULL, NULL);
- gtk_container_add (GTK_CONTAINER (widget), list);
+ gtk_container_add (GTK_CONTAINER (page->address_box), list);
for (i = 0; i < nm_setting_ip_config_get_num_addresses (page->setting); i++) {
NMIPAddress *addr;
@@ -309,22 +300,18 @@ add_address_box (CEPageIP4 *page)
if (nm_setting_ip_config_get_num_addresses (page->setting) == 0)
ensure_empty_address_row (page);
- gtk_widget_show_all (widget);
+ gtk_widget_show_all (GTK_WIDGET (page->address_box));
}
static void
add_dns_section (CEPageIP4 *page)
{
- GtkEntry *entry;
GString *string;
gint i;
- page->auto_dns = GTK_SWITCH (gtk_builder_get_object (CE_PAGE (page)->builder, "auto_dns_switch"));
- gtk_switch_set_active (page->auto_dns, !nm_setting_ip_config_get_ignore_auto_dns (page->setting));
- g_signal_connect_swapped (page->auto_dns, "notify::active", G_CALLBACK (ce_page_changed), page);
+ gtk_switch_set_active (page->auto_dns_switch, !nm_setting_ip_config_get_ignore_auto_dns (page->setting));
+ g_signal_connect_swapped (page->auto_dns_switch, "notify::active", G_CALLBACK (ce_page_changed), page);
- page->dns_entry = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "dns_entry"));
- entry = GTK_ENTRY (page->dns_entry);
string = g_string_new ("");
for (i = 0; i < nm_setting_ip_config_get_num_dns (page->setting); i++) {
@@ -338,9 +325,9 @@ add_dns_section (CEPageIP4 *page)
g_string_append (string, address);
}
- gtk_entry_set_text (entry, string->str);
+ gtk_entry_set_text (page->dns_entry, string->str);
- g_signal_connect_swapped (entry, "notify::text", G_CALLBACK (ce_page_changed), page);
+ g_signal_connect_swapped (page->dns_entry, "notify::text", G_CALLBACK (ce_page_changed), page);
g_string_free (string, TRUE);
}
@@ -352,7 +339,6 @@ add_route_row (CEPageIP4 *page,
const gchar *gateway,
gint metric)
{
- GtkSizeGroup *group;
GtkWidget *row;
GtkWidget *row_box;
GtkWidget *widget;
@@ -403,8 +389,7 @@ add_route_row (CEPageIP4 *page,
gtk_widget_set_hexpand (widget, TRUE);
gtk_container_add (GTK_CONTAINER (row_box), widget);
- group = GTK_SIZE_GROUP (gtk_builder_get_object (CE_PAGE (page)->builder, "routes_metric_sizegroup"));
- gtk_size_group_add_widget (group, widget);
+ gtk_size_group_add_widget (page->routes_metric_sizegroup, widget);
delete_button = gtk_button_new ();
gtk_style_context_add_class (gtk_widget_get_style_context (delete_button), "image-button");
@@ -417,8 +402,7 @@ add_route_row (CEPageIP4 *page,
gtk_container_add (GTK_CONTAINER (row_box), delete_button);
g_object_set_data (G_OBJECT (row), "delete-button", delete_button);
- group = GTK_SIZE_GROUP (gtk_builder_get_object (CE_PAGE (page)->builder, "routes_sizegroup"));
- gtk_size_group_add_widget (group, delete_button);
+ gtk_size_group_add_widget (page->routes_sizegroup, delete_button);
gtk_container_add (GTK_CONTAINER (row), row_box);
gtk_widget_show_all (row);
@@ -448,20 +432,16 @@ ensure_empty_routes_row (CEPageIP4 *page)
static void
add_routes_box (CEPageIP4 *page)
{
- GtkWidget *widget;
GtkWidget *list;
gint i;
- widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "routes_box"));
-
page->routes_list = list = gtk_list_box_new ();
gtk_list_box_set_selection_mode (GTK_LIST_BOX (list), GTK_SELECTION_NONE);
gtk_list_box_set_header_func (GTK_LIST_BOX (list), cc_list_box_update_header_func, NULL, NULL);
gtk_list_box_set_sort_func (GTK_LIST_BOX (list), (GtkListBoxSortFunc)sort_first_last, NULL, NULL);
- gtk_container_add (GTK_CONTAINER (widget), list);
- page->auto_routes = GTK_SWITCH (gtk_builder_get_object (CE_PAGE (page)->builder, "auto_routes_switch"));
- gtk_switch_set_active (page->auto_routes, !nm_setting_ip_config_get_ignore_auto_routes (page->setting));
- g_signal_connect_swapped (page->auto_routes, "notify::active", G_CALLBACK (ce_page_changed), page);
+ gtk_container_add (GTK_CONTAINER (page->routes_box), list);
+ gtk_switch_set_active (page->auto_routes_switch, !nm_setting_ip_config_get_ignore_auto_routes (page->setting));
+ g_signal_connect_swapped (page->auto_routes_switch, "notify::active", G_CALLBACK (ce_page_changed), page);
for (i = 0; i < nm_setting_ip_config_get_num_routes (page->setting); i++) {
@@ -485,7 +465,7 @@ add_routes_box (CEPageIP4 *page)
if (nm_setting_ip_config_get_num_routes (page->setting) == 0)
ensure_empty_routes_row (page);
- gtk_widget_show_all (widget);
+ gtk_widget_show_all (GTK_WIDGET (page->routes_box));
}
enum
@@ -500,25 +480,35 @@ enum
static void
connect_ip4_page (CEPageIP4 *page)
{
- GtkToggleButton *radios[N_RADIO];
- GtkWidget *content;
const gchar *str_method;
gboolean disabled;
- guint method, i;
+ guint method;
+
+ page->address_box = GTK_BOX (gtk_builder_get_object (CE_PAGE (page)->builder, "address_box"));
+ page->address_sizegroup = GTK_SIZE_GROUP (gtk_builder_get_object (CE_PAGE (page)->builder, "address_sizegroup"));
+ page->auto_dns_switch = GTK_SWITCH (gtk_builder_get_object (CE_PAGE (page)->builder, "auto_dns_switch"));
+ page->auto_routes_switch = GTK_SWITCH (gtk_builder_get_object (CE_PAGE (page)->builder, "auto_routes_switch"));
+ page->automatic_radio = GTK_RADIO_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "automatic_radio"));
+ page->content_box = GTK_BOX (gtk_builder_get_object (CE_PAGE (page)->builder, "content_box"));
+ page->disabled_radio = GTK_RADIO_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "disabled_radio"));
+ page->dns_entry = GTK_ENTRY (gtk_builder_get_object (CE_PAGE (page)->builder, "dns_entry"));
+ page->local_radio = GTK_RADIO_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "local_radio"));
+ page->manual_radio = GTK_RADIO_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "manual_radio"));
+ page->never_default_check = GTK_CHECK_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "never_default_check"));
+ page->routes_box = GTK_BOX (gtk_builder_get_object (CE_PAGE (page)->builder, "routes_box"));
+ page->routes_metric_sizegroup = GTK_SIZE_GROUP (gtk_builder_get_object (CE_PAGE (page)->builder, "routes_metric_sizegroup"));
+ page->routes_sizegroup = GTK_SIZE_GROUP (gtk_builder_get_object (CE_PAGE (page)->builder, "routes_sizegroup"));
add_address_box (page);
add_dns_section (page);
add_routes_box (page);
- page->disabled = GTK_TOGGLE_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "disabled_radio"));
-
str_method = nm_setting_ip_config_get_method (page->setting);
disabled = g_strcmp0 (str_method, NM_SETTING_IP4_CONFIG_METHOD_DISABLED) == 0;
- gtk_toggle_button_set_active (page->disabled, disabled);
- g_signal_connect_swapped (page->disabled, "notify::active", G_CALLBACK (ce_page_changed), page);
- content = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "content_box"));
- g_object_bind_property (page->disabled, "active",
- content, "sensitive",
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (page->disabled_radio), disabled);
+ g_signal_connect_swapped (page->disabled_radio, "notify::active", G_CALLBACK (ce_page_changed), page);
+ g_object_bind_property (page->disabled_radio, "active",
+ page->content_box, "sensitive",
G_BINDING_SYNC_CREATE | G_BINDING_INVERT_BOOLEAN);
method = IP4_METHOD_AUTO;
@@ -532,32 +522,27 @@ connect_ip4_page (CEPageIP4 *page)
method = IP4_METHOD_DISABLED;
}
- page->never_default = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "never_default_check"));
- gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (page->never_default),
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (page->never_default_check),
nm_setting_ip_config_get_never_default (page->setting));
- g_signal_connect_swapped (page->never_default, "toggled", G_CALLBACK (ce_page_changed), page);
-
- /* Connect radio buttons */
- radios[RADIO_AUTOMATIC] = GTK_TOGGLE_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "automatic_radio"));
- radios[RADIO_LOCAL] = GTK_TOGGLE_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "local_radio"));
- radios[RADIO_MANUAL] = GTK_TOGGLE_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "manual_radio"));
- radios[RADIO_DISABLED] = page->disabled;
+ g_signal_connect_swapped (page->never_default_check, "toggled", G_CALLBACK (ce_page_changed), page);
- for (i = RADIO_AUTOMATIC; i < RADIO_DISABLED; i++)
- g_signal_connect_swapped (radios[i], "toggled", G_CALLBACK (method_changed), page);
+ g_signal_connect_swapped (page->automatic_radio, "toggled", G_CALLBACK (method_changed), page);
+ g_signal_connect_swapped (page->local_radio, "toggled", G_CALLBACK (method_changed), page);
+ g_signal_connect_swapped (page->manual_radio, "toggled", G_CALLBACK (method_changed), page);
+ g_signal_connect_swapped (page->disabled_radio, "toggled", G_CALLBACK (method_changed), page);
switch (method) {
case IP4_METHOD_AUTO:
- gtk_toggle_button_set_active (radios[RADIO_AUTOMATIC], TRUE);
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (page->automatic_radio), TRUE);
break;
case IP4_METHOD_LINK_LOCAL:
- gtk_toggle_button_set_active (radios[RADIO_LOCAL], TRUE);
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (page->local_radio), TRUE);
break;
case IP4_METHOD_MANUAL:
- gtk_toggle_button_set_active (radios[RADIO_MANUAL], TRUE);
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (page->manual_radio), TRUE);
break;
case IP4_METHOD_DISABLED:
- gtk_toggle_button_set_active (radios[RADIO_DISABLED], TRUE);
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (page->disabled_radio), TRUE);
break;
default:
break;
@@ -609,14 +594,14 @@ ui_to_setting (CEPageIP4 *page)
gchar *dns_text = NULL;
guint i;
- if (gtk_toggle_button_get_active (page->disabled)) {
+ if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->disabled_radio))) {
method = NM_SETTING_IP4_CONFIG_METHOD_DISABLED;
} else {
- if (RADIO_IS_ACTIVE ("automatic_radio"))
+ if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->automatic_radio)))
method = NM_SETTING_IP4_CONFIG_METHOD_AUTO;
- else if (RADIO_IS_ACTIVE ("local_radio"))
+ else if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->local_radio)))
method = NM_SETTING_IP4_CONFIG_METHOD_LINK_LOCAL;
- else if (RADIO_IS_ACTIVE ("manual_radio"))
+ else if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->manual_radio)))
method = NM_SETTING_IP4_CONFIG_METHOD_MANUAL;
}
@@ -716,11 +701,11 @@ ui_to_setting (CEPageIP4 *page)
if (!nm_utils_ipaddr_valid (AF_INET, text)) {
g_ptr_array_remove_range (dns_servers, 0, dns_servers->len);
- widget_set_error (page->dns_entry);
+ widget_set_error (GTK_WIDGET (page->dns_entry));
ret = FALSE;
break;
} else {
- widget_unset_error (page->dns_entry);
+ widget_unset_error (GTK_WIDGET (page->dns_entry));
g_ptr_array_add (dns_servers, g_strdup (text));
}
}
@@ -820,9 +805,9 @@ ui_to_setting (CEPageIP4 *page)
if (!ret)
goto out;
- ignore_auto_dns = !gtk_switch_get_active (page->auto_dns);
- ignore_auto_routes = !gtk_switch_get_active (page->auto_routes);
- never_default = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->never_default));
+ ignore_auto_dns = !gtk_switch_get_active (page->auto_dns_switch);
+ ignore_auto_routes = !gtk_switch_get_active (page->auto_routes_switch);
+ never_default = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->never_default_check));
g_object_set (page->setting,
NM_SETTING_IP_CONFIG_METHOD, method,
diff --git a/panels/network/connection-editor/ce-page-ip4.h b/panels/network/connection-editor/ce-page-ip4.h
index 31a8eb601..2ae087fd7 100644
--- a/panels/network/connection-editor/ce-page-ip4.h
+++ b/panels/network/connection-editor/ce-page-ip4.h
@@ -43,15 +43,25 @@ struct _CEPageIP4
{
CEPage parent;
+ GtkBox *address_box;
+ GtkSizeGroup *address_sizegroup;
+ GtkSwitch *auto_dns_switch;
+ GtkSwitch *auto_routes_switch;
+ GtkRadioButton *automatic_radio;
+ GtkBox *content_box;
+ GtkRadioButton *disabled_radio;
+ GtkEntry *dns_entry;
+ GtkRadioButton *local_radio;
+ GtkRadioButton *manual_radio;
+ GtkCheckButton *never_default_check;
+ GtkBox *routes_box;
+ GtkSizeGroup *routes_metric_sizegroup;
+ GtkSizeGroup *routes_sizegroup;
+
NMSettingIPConfig *setting;
- GtkToggleButton *disabled;
- GtkWidget *address_list;
- GtkSwitch *auto_dns;
- GtkWidget *dns_entry;
- GtkSwitch *auto_routes;
- GtkWidget *routes_list;
- GtkWidget *never_default;
+ GtkWidget *address_list;
+ GtkWidget *routes_list;
};
struct _CEPageIP4Class
diff --git a/panels/network/connection-editor/ce-page-ip6.c b/panels/network/connection-editor/ce-page-ip6.c
index ab07166cb..524c1e285 100644
--- a/panels/network/connection-editor/ce-page-ip6.c
+++ b/panels/network/connection-editor/ce-page-ip6.c
@@ -32,8 +32,6 @@
#include "ce-page-ip6.h"
#include "ui-helpers.h"
-#define RADIO_IS_ACTIVE(x) (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (gtk_builder_get_object(CE_PAGE (page)->builder, x))))
-
static void ensure_empty_address_row (CEPageIP6 *page);
static void ensure_empty_routes_row (CEPageIP6 *page);
@@ -59,23 +57,21 @@ method_changed (CEPageIP6 *page)
gboolean addr_enabled;
gboolean dns_enabled;
gboolean routes_enabled;
- GtkWidget *widget;
- if (RADIO_IS_ACTIVE ("disabled_radio")) {
+ if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->disabled_radio))) {
addr_enabled = FALSE;
dns_enabled = FALSE;
routes_enabled = FALSE;
} else {
- addr_enabled = RADIO_IS_ACTIVE ("manual_radio");
- dns_enabled = !RADIO_IS_ACTIVE ("local_radio");
- routes_enabled = !RADIO_IS_ACTIVE ("local_radio");
+ addr_enabled = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->manual_radio));
+ dns_enabled = !gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->local_radio));
+ routes_enabled = !gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->local_radio));
}
- widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "address_box"));
- gtk_widget_set_visible (widget, addr_enabled);
- gtk_widget_set_sensitive (page->dns_entry, dns_enabled);
- gtk_widget_set_sensitive (page->routes_list, routes_enabled);
- gtk_widget_set_sensitive (page->never_default, routes_enabled);
+ gtk_widget_set_visible (GTK_WIDGET (page->address_box), addr_enabled);
+ gtk_widget_set_sensitive (GTK_WIDGET (page->dns_entry), dns_enabled);
+ gtk_widget_set_sensitive (GTK_WIDGET (page->routes_list), routes_enabled);
+ gtk_widget_set_sensitive (GTK_WIDGET (page->never_default_check), routes_enabled);
ce_page_changed (CE_PAGE (page));
}
@@ -175,7 +171,6 @@ add_address_row (CEPageIP6 *page,
const gchar *network,
const gchar *gateway)
{
- GtkSizeGroup *group;
GtkWidget *row;
GtkWidget *row_box;
GtkWidget *widget;
@@ -224,8 +219,7 @@ add_address_row (CEPageIP6 *page,
gtk_container_add (GTK_CONTAINER (row_box), delete_button);
g_object_set_data (G_OBJECT (row), "delete-button", delete_button);
- group = GTK_SIZE_GROUP (gtk_builder_get_object (CE_PAGE (page)->builder, "address_sizegroup"));
- gtk_size_group_add_widget (group, delete_button);
+ gtk_size_group_add_widget (page->address_sizegroup, delete_button);
gtk_container_add (GTK_CONTAINER (row), row_box);
gtk_widget_show_all (row);
@@ -255,17 +249,14 @@ ensure_empty_address_row (CEPageIP6 *page)
static void
add_address_box (CEPageIP6 *page)
{
- GtkWidget *widget;
GtkWidget *list;
gint i;
- widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "address_box"));
-
page->address_list = list = gtk_list_box_new ();
gtk_list_box_set_selection_mode (GTK_LIST_BOX (list), GTK_SELECTION_NONE);
gtk_list_box_set_header_func (GTK_LIST_BOX (list), cc_list_box_update_header_func, NULL, NULL);
gtk_list_box_set_sort_func (GTK_LIST_BOX (list), (GtkListBoxSortFunc)sort_first_last, NULL, NULL);
- gtk_container_add (GTK_CONTAINER (widget), list);
+ gtk_container_add (GTK_CONTAINER (page->address_box), list);
for (i = 0; i < nm_setting_ip_config_get_num_addresses (page->setting); i++) {
NMIPAddress *addr;
@@ -279,22 +270,18 @@ add_address_box (CEPageIP6 *page)
if (nm_setting_ip_config_get_num_addresses (page->setting) == 0)
ensure_empty_address_row (page);
- gtk_widget_show_all (widget);
+ gtk_widget_show_all (GTK_WIDGET (page->address_box));
}
static void
add_dns_section (CEPageIP6 *page)
{
- GtkEntry *entry;
GString *string;
gint i;
- page->auto_dns = GTK_SWITCH (gtk_builder_get_object (CE_PAGE (page)->builder, "auto_dns_switch"));
- gtk_switch_set_active (page->auto_dns, !nm_setting_ip_config_get_ignore_auto_dns (page->setting));
- g_signal_connect_swapped (page->auto_dns, "notify::active", G_CALLBACK (ce_page_changed), page);
+ gtk_switch_set_active (page->auto_dns_switch, !nm_setting_ip_config_get_ignore_auto_dns (page->setting));
+ g_signal_connect_swapped (page->auto_dns_switch, "notify::active", G_CALLBACK (ce_page_changed), page);
- page->dns_entry = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "dns_entry"));
- entry = GTK_ENTRY (page->dns_entry);
string = g_string_new ("");
for (i = 0; i < nm_setting_ip_config_get_num_dns (page->setting); i++) {
@@ -309,7 +296,7 @@ add_dns_section (CEPageIP6 *page)
}
- gtk_entry_set_text (entry, string->str);
+ gtk_entry_set_text (page->dns_entry, string->str);
g_signal_connect_swapped (page->dns_entry, "notify::text", G_CALLBACK (ce_page_changed), page);
@@ -323,7 +310,6 @@ add_route_row (CEPageIP6 *page,
const gchar *gateway,
const gchar *metric)
{
- GtkSizeGroup *group;
GtkWidget *row;
GtkWidget *row_box;
GtkWidget *widget;
@@ -371,8 +357,7 @@ add_route_row (CEPageIP6 *page,
gtk_widget_set_hexpand (widget, TRUE);
gtk_container_add (GTK_CONTAINER (row_box), widget);
- group = GTK_SIZE_GROUP (gtk_builder_get_object (CE_PAGE (page)->builder, "routes_metric_sizegroup"));
- gtk_size_group_add_widget (group, widget);
+ gtk_size_group_add_widget (page->routes_metric_sizegroup, widget);
delete_button = gtk_button_new ();
gtk_style_context_add_class (gtk_widget_get_style_context (delete_button), "image-button");
@@ -385,8 +370,7 @@ add_route_row (CEPageIP6 *page,
gtk_container_add (GTK_CONTAINER (row_box), delete_button);
g_object_set_data (G_OBJECT (row), "delete-button", delete_button);
- group = GTK_SIZE_GROUP (gtk_builder_get_object (CE_PAGE (page)->builder, "routes_sizegroup"));
- gtk_size_group_add_widget (group, delete_button);
+ gtk_size_group_add_widget (page->routes_sizegroup, delete_button);
gtk_container_add (GTK_CONTAINER (row), row_box);
gtk_widget_show_all (row);
@@ -422,20 +406,16 @@ add_empty_route_row (CEPageIP6 *page)
static void
add_routes_box (CEPageIP6 *page)
{
- GtkWidget *widget;
GtkWidget *list;
gint i;
- widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "routes_box"));
-
page->routes_list = list = gtk_list_box_new ();
gtk_list_box_set_selection_mode (GTK_LIST_BOX (list), GTK_SELECTION_NONE);
gtk_list_box_set_header_func (GTK_LIST_BOX (list), cc_list_box_update_header_func, NULL, NULL);
gtk_list_box_set_sort_func (GTK_LIST_BOX (list), (GtkListBoxSortFunc)sort_first_last, NULL, NULL);
- gtk_container_add (GTK_CONTAINER (widget), list);
- page->auto_routes = GTK_SWITCH (gtk_builder_get_object (CE_PAGE (page)->builder, "auto_routes_switch"));
- gtk_switch_set_active (page->auto_routes, !nm_setting_ip_config_get_ignore_auto_routes (page->setting));
- g_signal_connect_swapped (page->auto_routes, "notify::active", G_CALLBACK (ce_page_changed), page);
+ gtk_container_add (GTK_CONTAINER (page->routes_box), list);
+ gtk_switch_set_active (page->auto_routes_switch, !nm_setting_ip_config_get_ignore_auto_routes (page->setting));
+ g_signal_connect_swapped (page->auto_routes_switch, "notify::active", G_CALLBACK (ce_page_changed), page);
for (i = 0; i < nm_setting_ip_config_get_num_routes (page->setting); i++) {
NMIPRoute *route;
@@ -453,41 +433,42 @@ add_routes_box (CEPageIP6 *page)
if (nm_setting_ip_config_get_num_routes (page->setting) == 0)
add_empty_route_row (page);
- gtk_widget_show_all (widget);
+ gtk_widget_show_all (GTK_WIDGET (page->routes_box));
}
-enum
-{
- RADIO_AUTOMATIC,
- RADIO_DHCP,
- RADIO_LOCAL,
- RADIO_MANUAL,
- RADIO_DISABLED,
- N_RADIO
-};
-
static void
connect_ip6_page (CEPageIP6 *page)
{
- GtkToggleButton *radios[N_RADIO];
- GtkWidget *content;
const gchar *str_method;
gboolean disabled;
- guint method, i;
+ guint method;
+
+ page->address_box = GTK_BOX (gtk_builder_get_object (CE_PAGE (page)->builder, "address_box"));
+ page->address_sizegroup = GTK_SIZE_GROUP (gtk_builder_get_object (CE_PAGE (page)->builder, "address_sizegroup"));
+ page->auto_dns_switch = GTK_SWITCH (gtk_builder_get_object (CE_PAGE (page)->builder, "auto_dns_switch"));
+ page->auto_routes_switch = GTK_SWITCH (gtk_builder_get_object (CE_PAGE (page)->builder, "auto_routes_switch"));
+ page->automatic_radio = GTK_RADIO_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "automatic_radio"));
+ page->content_box = GTK_BOX (gtk_builder_get_object (CE_PAGE (page)->builder, "content_box"));
+ page->dhcp_radio = GTK_RADIO_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "dhcp_radio"));
+ page->disabled_radio = GTK_RADIO_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "disabled_radio"));
+ page->dns_entry = GTK_ENTRY (gtk_builder_get_object (CE_PAGE (page)->builder, "dns_entry"));
+ page->local_radio = GTK_RADIO_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "local_radio"));
+ page->manual_radio = GTK_RADIO_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "manual_radio"));
+ page->never_default_check = GTK_CHECK_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "never_default_check"));
+ page->routes_box = GTK_BOX (gtk_builder_get_object (CE_PAGE (page)->builder, "routes_box"));
+ page->routes_metric_sizegroup = GTK_SIZE_GROUP (gtk_builder_get_object (CE_PAGE (page)->builder, "routes_metric_sizegroup"));
+ page->routes_sizegroup = GTK_SIZE_GROUP (gtk_builder_get_object (CE_PAGE (page)->builder, "routes_sizegroup"));
add_address_box (page);
add_dns_section (page);
add_routes_box (page);
- page->disabled = GTK_TOGGLE_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "disabled_radio"));
-
str_method = nm_setting_ip_config_get_method (page->setting);
disabled = g_strcmp0 (str_method, NM_SETTING_IP6_CONFIG_METHOD_IGNORE) == 0;
- gtk_toggle_button_set_active (page->disabled, disabled);
- g_signal_connect_swapped (page->disabled, "notify::active", G_CALLBACK (ce_page_changed), page);
- content = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "content_box"));
- g_object_bind_property (page->disabled, "active",
- content, "sensitive",
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (page->disabled_radio), disabled);
+ g_signal_connect_swapped (page->disabled_radio, "notify::active", G_CALLBACK (ce_page_changed), page);
+ g_object_bind_property (page->disabled_radio, "active",
+ page->content_box, "sensitive",
G_BINDING_SYNC_CREATE | G_BINDING_INVERT_BOOLEAN);
method = IP6_METHOD_AUTO;
@@ -503,37 +484,32 @@ connect_ip6_page (CEPageIP6 *page)
method = IP6_METHOD_IGNORE;
}
- page->never_default = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "never_default_check"));
- gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (page->never_default),
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (page->never_default_check),
nm_setting_ip_config_get_never_default (page->setting));
- g_signal_connect_swapped (page->never_default, "toggled", G_CALLBACK (ce_page_changed), page);
-
+ g_signal_connect_swapped (page->never_default_check, "toggled", G_CALLBACK (ce_page_changed), page);
- /* Connect radio buttons */
- radios[RADIO_AUTOMATIC] = GTK_TOGGLE_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "automatic_radio"));
- radios[RADIO_DHCP] = GTK_TOGGLE_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "dhcp_radio"));
- radios[RADIO_LOCAL] = GTK_TOGGLE_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "local_radio"));
- radios[RADIO_MANUAL] = GTK_TOGGLE_BUTTON (gtk_builder_get_object (CE_PAGE (page)->builder, "manual_radio"));
- radios[RADIO_DISABLED] = page->disabled;
- for (i = RADIO_AUTOMATIC; i < RADIO_DISABLED; i++)
- g_signal_connect_swapped (radios[i], "toggled", G_CALLBACK (method_changed), page);
+ g_signal_connect_swapped (page->automatic_radio, "toggled", G_CALLBACK (method_changed), page);
+ g_signal_connect_swapped (page->dhcp_radio, "toggled", G_CALLBACK (method_changed), page);
+ g_signal_connect_swapped (page->local_radio, "toggled", G_CALLBACK (method_changed), page);
+ g_signal_connect_swapped (page->manual_radio, "toggled", G_CALLBACK (method_changed), page);
+ g_signal_connect_swapped (page->disabled_radio, "toggled", G_CALLBACK (method_changed), page);
switch (method) {
case IP6_METHOD_AUTO:
- gtk_toggle_button_set_active (radios[RADIO_AUTOMATIC], TRUE);
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (page->automatic_radio), TRUE);
break;
case IP6_METHOD_DHCP:
- gtk_toggle_button_set_active (radios[RADIO_DHCP], TRUE);
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (page->dhcp_radio), TRUE);
break;
case IP6_METHOD_LINK_LOCAL:
- gtk_toggle_button_set_active (radios[RADIO_LOCAL], TRUE);
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (page->local_radio), TRUE);
break;
case IP6_METHOD_MANUAL:
- gtk_toggle_button_set_active (radios[RADIO_MANUAL], TRUE);
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (page->manual_radio), TRUE);
break;
case IP6_METHOD_IGNORE:
- gtk_toggle_button_set_active (radios[RADIO_DISABLED], TRUE);
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (page->disabled_radio), TRUE);
break;
default:
break;
@@ -555,16 +531,16 @@ ui_to_setting (CEPageIP6 *page)
gchar *dns_text = NULL;
guint i;
- if (gtk_toggle_button_get_active (page->disabled)) {
+ if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->disabled_radio))) {
method = NM_SETTING_IP6_CONFIG_METHOD_IGNORE;
} else {
- if (RADIO_IS_ACTIVE ("manual_radio")) {
+ if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->manual_radio))) {
method = NM_SETTING_IP6_CONFIG_METHOD_MANUAL;
- } else if (RADIO_IS_ACTIVE ("local_radio")) {
+ } else if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->local_radio))) {
method = NM_SETTING_IP6_CONFIG_METHOD_LINK_LOCAL;
- } else if (RADIO_IS_ACTIVE ("dhcp_radio")) {
+ } else if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->dhcp_radio))) {
method = NM_SETTING_IP6_CONFIG_METHOD_DHCP;
- } else if (RADIO_IS_ACTIVE ("automatic_radio")) {
+ } else if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->automatic_radio))) {
method = NM_SETTING_IP6_CONFIG_METHOD_AUTO;
}
}
@@ -666,11 +642,11 @@ ui_to_setting (CEPageIP6 *page)
if (inet_pton (AF_INET6, text, &tmp_addr) <= 0) {
g_clear_pointer (&dns_addresses, g_strfreev);
- widget_set_error (page->dns_entry);
+ widget_set_error (GTK_WIDGET (page->dns_entry));
ret = FALSE;
break;
} else {
- widget_unset_error (page->dns_entry);
+ widget_unset_error (GTK_WIDGET (page->dns_entry));
nm_setting_ip_config_add_dns (page->setting, text);
}
}
@@ -763,9 +739,9 @@ ui_to_setting (CEPageIP6 *page)
if (!ret)
goto out;
- ignore_auto_dns = !gtk_switch_get_active (page->auto_dns);
- ignore_auto_routes = !gtk_switch_get_active (page->auto_routes);
- never_default = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->never_default));
+ ignore_auto_dns = !gtk_switch_get_active (page->auto_dns_switch);
+ ignore_auto_routes = !gtk_switch_get_active (page->auto_routes_switch);
+ never_default = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (page->never_default_check));
g_object_set (page->setting,
NM_SETTING_IP_CONFIG_METHOD, method,
diff --git a/panels/network/connection-editor/ce-page-ip6.h b/panels/network/connection-editor/ce-page-ip6.h
index 57933b7e5..e6c1c2ac9 100644
--- a/panels/network/connection-editor/ce-page-ip6.h
+++ b/panels/network/connection-editor/ce-page-ip6.h
@@ -43,15 +43,26 @@ struct _CEPageIP6
{
CEPage parent;
+ GtkBox *address_box;
+ GtkSizeGroup *address_sizegroup;
+ GtkSwitch *auto_dns_switch;
+ GtkSwitch *auto_routes_switch;
+ GtkRadioButton *automatic_radio;
+ GtkBox *content_box;
+ GtkRadioButton *dhcp_radio;
+ GtkRadioButton *disabled_radio;
+ GtkEntry *dns_entry;
+ GtkRadioButton *local_radio;
+ GtkRadioButton *manual_radio;
+ GtkCheckButton *never_default_check;
+ GtkBox *routes_box;
+ GtkSizeGroup *routes_metric_sizegroup;
+ GtkSizeGroup *routes_sizegroup;
+
NMSettingIPConfig *setting;
- GtkToggleButton *disabled;
GtkWidget *address_list;
- GtkSwitch *auto_dns;
- GtkWidget *dns_entry;
- GtkSwitch *auto_routes;
GtkWidget *routes_list;
- GtkWidget *never_default;
};
struct _CEPageIP6Class
diff --git a/panels/network/connection-editor/ce-page-security.c b/panels/network/connection-editor/ce-page-security.c
index 9e72f2184..8ff86288c 100644
--- a/panels/network/connection-editor/ce-page-security.c
+++ b/panels/network/connection-editor/ce-page-security.c
@@ -126,16 +126,14 @@ wsec_size_group_clear (GtkSizeGroup *group)
static void
security_combo_changed (CEPageSecurity *page)
{
- GtkWidget *vbox;
GList *l, *children;
g_autoptr(WirelessSecurity) sec = NULL;
wsec_size_group_clear (page->group);
- vbox = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "box"));
- children = gtk_container_get_children (GTK_CONTAINER (vbox));
+ children = gtk_container_get_children (GTK_CONTAINER (page->box));
for (l = children; l; l = l->next) {
- gtk_container_remove (GTK_CONTAINER (vbox), GTK_WIDGET (l->data));
+ gtk_container_remove (GTK_CONTAINER (page->box), GTK_WIDGET (l->data));
}
sec = security_combo_get_active (page);
@@ -149,10 +147,10 @@ security_combo_changed (CEPageSecurity *page)
if (parent)
gtk_container_remove (GTK_CONTAINER (parent), sec_widget);
- gtk_size_group_add_widget (page->group, page->security_heading);
+ gtk_size_group_add_widget (page->group, GTK_WIDGET (page->security_label));
wireless_security_add_to_size_group (sec, page->group);
- gtk_container_add (GTK_CONTAINER (vbox), sec_widget);
+ gtk_container_add (GTK_CONTAINER (page->box), sec_widget);
}
ce_page_changed (CE_PAGE (page));
@@ -213,7 +211,6 @@ finish_setup (CEPageSecurity *page)
NMUtilsSecurityType default_type = NMU_SEC_NONE;
int active = -1;
int item = 0;
- GtkComboBox *combo;
GtkCellRenderer *renderer;
sw = nm_connection_get_setting_wireless (connection);
@@ -221,8 +218,9 @@ finish_setup (CEPageSecurity *page)
page->group = gtk_size_group_new (GTK_SIZE_GROUP_HORIZONTAL);
- page->security_heading = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "security_label"));
- page->security_combo = combo = GTK_COMBO_BOX (gtk_builder_get_object (CE_PAGE (page)->builder, "security_combo"));
+ page->box = GTK_BOX (gtk_builder_get_object (CE_PAGE (page)->builder, "box"));
+ page->security_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "security_label"));
+ page->security_combo = GTK_COMBO_BOX (gtk_builder_get_object (CE_PAGE (page)->builder, "security_combo"));
dev_caps = NM_WIFI_DEVICE_CAP_CIPHER_WEP40
| NM_WIFI_DEVICE_CAP_CIPHER_WEP104
@@ -338,20 +336,18 @@ finish_setup (CEPageSecurity *page)
}
}
- gtk_combo_box_set_model (combo, GTK_TREE_MODEL (sec_model));
- gtk_cell_layout_clear (GTK_CELL_LAYOUT (combo));
+ gtk_combo_box_set_model (page->security_combo, GTK_TREE_MODEL (sec_model));
+ gtk_cell_layout_clear (GTK_CELL_LAYOUT (page->security_combo));
renderer = gtk_cell_renderer_text_new ();
- gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (combo), renderer, TRUE);
- gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (combo), renderer, "text", S_NAME_COLUMN, NULL);
- gtk_cell_layout_set_cell_data_func (GTK_CELL_LAYOUT (combo), renderer, set_sensitive, &page->adhoc, NULL);
+ gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (page->security_combo), renderer, TRUE);
+ gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (page->security_combo), renderer, "text", S_NAME_COLUMN, NULL);
+ gtk_cell_layout_set_cell_data_func (GTK_CELL_LAYOUT (page->security_combo), renderer, set_sensitive, &page->adhoc, NULL);
- gtk_combo_box_set_active (combo, active < 0 ? 0 : (guint32) active);
-
- page->security_combo = combo;
+ gtk_combo_box_set_active (page->security_combo, active < 0 ? 0 : (guint32) active);
security_combo_changed (page);
- g_signal_connect_swapped (combo, "changed",
+ g_signal_connect_swapped (page->security_combo, "changed",
G_CALLBACK (security_combo_changed), page);
}
diff --git a/panels/network/connection-editor/ce-page-security.h b/panels/network/connection-editor/ce-page-security.h
index fa7e731a1..d71c1d97b 100644
--- a/panels/network/connection-editor/ce-page-security.h
+++ b/panels/network/connection-editor/ce-page-security.h
@@ -43,8 +43,10 @@ struct _CEPageSecurity
{
CEPage parent;
+ GtkBox *box;
GtkComboBox *security_combo;
- GtkWidget *security_heading;
+ GtkLabel *security_label;
+
GtkSizeGroup *group;
gboolean adhoc;
};
diff --git a/panels/network/connection-editor/ce-page-vpn.c b/panels/network/connection-editor/ce-page-vpn.c
index f8f20c099..5f004d112 100644
--- a/panels/network/connection-editor/ce-page-vpn.c
+++ b/panels/network/connection-editor/ce-page-vpn.c
@@ -75,8 +75,7 @@ vpn_gnome3ify_editor (GtkWidget *widget)
static void
load_vpn_plugin (CEPageVpn *page, NMConnection *connection)
{
- CEPage *parent = CE_PAGE (page);
- GtkWidget *ui_widget, *failure;
+ GtkWidget *ui_widget;
page->editor = nm_vpn_editor_plugin_get_editor (page->plugin,
connection,
@@ -92,10 +91,9 @@ load_vpn_plugin (CEPageVpn *page, NMConnection *connection)
}
vpn_gnome3ify_editor (ui_widget);
- failure = GTK_WIDGET (gtk_builder_get_object (parent->builder, "failure_label"));
- gtk_widget_destroy (failure);
+ gtk_widget_destroy (GTK_WIDGET (page->failure_label));
- gtk_box_pack_start (page->box, ui_widget, TRUE, TRUE, 0);
+ gtk_box_pack_start (page->page, ui_widget, TRUE, TRUE, 0);
gtk_widget_show_all (ui_widget);
g_signal_connect_swapped (page->editor, "changed", G_CALLBACK (ce_page_changed), page);
@@ -107,8 +105,8 @@ connect_vpn_page (CEPageVpn *page)
const gchar *name;
name = nm_setting_connection_get_id (page->setting_connection);
- gtk_entry_set_text (page->name, name);
- g_signal_connect_swapped (page->name, "changed", G_CALLBACK (ce_page_changed), page);
+ gtk_entry_set_text (page->name_entry, name);
+ g_signal_connect_swapped (page->name_entry, "changed", G_CALLBACK (ce_page_changed), page);
}
static gboolean
@@ -119,7 +117,7 @@ validate (CEPage *page,
CEPageVpn *self = CE_PAGE_VPN (page);
g_object_set (self->setting_connection,
- NM_SETTING_CONNECTION_ID, gtk_entry_get_text (self->name),
+ NM_SETTING_CONNECTION_ID, gtk_entry_get_text (self->name_entry),
NULL);
if (!nm_setting_verify (NM_SETTING (self->setting_connection), NULL, error))
@@ -186,8 +184,9 @@ ce_page_vpn_new (NMConnection *connection,
"/org/gnome/control-center/network/vpn-page.ui",
_("Identity")));
- page->name = GTK_ENTRY (gtk_builder_get_object (CE_PAGE (page)->builder, "name_entry"));
- page->box = GTK_BOX (gtk_builder_get_object (CE_PAGE (page)->builder, "page"));
+ page->failure_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (page)->builder, "failure_label"));
+ page->name_entry = GTK_ENTRY (gtk_builder_get_object (CE_PAGE (page)->builder, "name_entry"));
+ page->page = GTK_BOX (gtk_builder_get_object (CE_PAGE (page)->builder, "page"));
g_signal_connect (page, "initialized", G_CALLBACK (finish_setup), NULL);
diff --git a/panels/network/connection-editor/ce-page-vpn.h b/panels/network/connection-editor/ce-page-vpn.h
index 9fa706656..4c95f75f6 100644
--- a/panels/network/connection-editor/ce-page-vpn.h
+++ b/panels/network/connection-editor/ce-page-vpn.h
@@ -45,12 +45,13 @@ struct _CEPageVpn
{
CEPage parent;
+ GtkLabel *failure_label;
+ GtkEntry *name_entry;
+ GtkBox *page;
+
NMSettingConnection *setting_connection;
NMSettingVpn *setting_vpn;
- GtkEntry *name;
- GtkBox *box;
-
NMVpnEditorPlugin *plugin;
NMVpnEditor *editor;
};
diff --git a/panels/network/connection-editor/ce-page-wifi.c b/panels/network/connection-editor/ce-page-wifi.c
index 50ca048f9..3efe41623 100644
--- a/panels/network/connection-editor/ce-page-wifi.c
+++ b/panels/network/connection-editor/ce-page-wifi.c
@@ -36,7 +36,6 @@ G_DEFINE_TYPE (CEPageWifi, ce_page_wifi, CE_TYPE_PAGE)
static void
connect_wifi_page (CEPageWifi *page)
{
- GtkWidget *widget;
GBytes *ssid;
g_autofree gchar *utf8_ssid = NULL;
GPtrArray *bssid_array;
@@ -47,20 +46,14 @@ connect_wifi_page (CEPageWifi *page)
const gchar *cloned_mac;
gint i;
- widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder,
- "ssid_entry"));
-
ssid = nm_setting_wireless_get_ssid (page->setting);
if (ssid)
utf8_ssid = nm_utils_ssid_to_utf8 (g_bytes_get_data (ssid, NULL), g_bytes_get_size (ssid));
else
utf8_ssid = g_strdup ("");
- gtk_entry_set_text (GTK_ENTRY (widget), utf8_ssid);
-
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (ce_page_changed), page);
+ gtk_entry_set_text (page->ssid_entry, utf8_ssid);
- widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder,
- "bssid_combo"));
+ g_signal_connect_swapped (page->ssid_entry, "changed", G_CALLBACK (ce_page_changed), page);
bssid_array = g_ptr_array_new ();
for (i = 0; i < nm_setting_wireless_get_num_seen_bssids (page->setting); i++) {
@@ -69,25 +62,20 @@ connect_wifi_page (CEPageWifi *page)
g_ptr_array_add (bssid_array, NULL);
bssid_list = (gchar **) g_ptr_array_free (bssid_array, FALSE);
s_bssid_str = nm_setting_wireless_get_bssid (page->setting);
- ce_page_setup_mac_combo (GTK_COMBO_BOX_TEXT (widget), s_bssid_str, bssid_list);
+ ce_page_setup_mac_combo (page->bssid_combo, s_bssid_str, bssid_list);
g_strfreev (bssid_list);
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (ce_page_changed), page);
+ g_signal_connect_swapped (page->bssid_combo, "changed", G_CALLBACK (ce_page_changed), page);
- widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder,
- "mac_combo"));
mac_list = ce_page_get_mac_list (CE_PAGE (page)->client, NM_TYPE_DEVICE_WIFI,
NM_DEVICE_WIFI_PERMANENT_HW_ADDRESS);
s_mac_str = nm_setting_wireless_get_mac_address (page->setting);
- ce_page_setup_mac_combo (GTK_COMBO_BOX_TEXT (widget), s_mac_str, mac_list);
+ ce_page_setup_mac_combo (page->mac_combo, s_mac_str, mac_list);
g_strfreev (mac_list);
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (ce_page_changed), page);
+ g_signal_connect_swapped (page->mac_combo, "changed", G_CALLBACK (ce_page_changed), page);
-
- widget = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder,
- "cloned_mac_combo"));
cloned_mac = nm_setting_wireless_get_cloned_mac_address (page->setting);
- ce_page_setup_cloned_mac_combo (GTK_COMBO_BOX_TEXT (widget), cloned_mac);
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (ce_page_changed), page);
+ ce_page_setup_cloned_mac_combo (page->cloned_mac_combo, cloned_mac);
+ g_signal_connect_swapped (page->cloned_mac_combo, "changed", G_CALLBACK (ce_page_changed), page);
}
static void
@@ -96,25 +84,22 @@ ui_to_setting (CEPageWifi *page)
g_autoptr(GBytes) ssid = NULL;
const gchar *utf8_ssid, *bssid;
GtkWidget *entry;
- GtkComboBoxText *combo;
g_autofree gchar *device_mac = NULL;
g_autofree gchar *cloned_mac = NULL;
- entry = GTK_WIDGET (gtk_builder_get_object (CE_PAGE (page)->builder, "ssid_entry"));
- utf8_ssid = gtk_entry_get_text (GTK_ENTRY (entry));
+ utf8_ssid = gtk_entry_get_text (page->ssid_entry);
if (!utf8_ssid || !*utf8_ssid)
ssid = NULL;
else {
ssid = g_bytes_new_static (utf8_ssid, strlen (utf8_ssid));
}
- entry = gtk_bin_get_child (GTK_BIN (gtk_builder_get_object (CE_PAGE (page)->builder, "bssid_combo")));
+ entry = gtk_bin_get_child (GTK_BIN (page->bssid_combo));
bssid = gtk_entry_get_text (GTK_ENTRY (entry));
if (*bssid == '\0')
bssid = NULL;
- entry = gtk_bin_get_child (GTK_BIN (gtk_builder_get_object (CE_PAGE (page)->builder, "mac_combo")));
+ entry = gtk_bin_get_child (GTK_BIN (page->mac_combo));
device_mac = ce_page_trim_address (gtk_entry_get_text (GTK_ENTRY (entry)));
- combo = GTK_COMBO_BOX_TEXT (gtk_builder_get_object (CE_PAGE (page)->builder, "cloned_mac_combo"));
- cloned_mac = ce_page_cloned_mac_get (combo);
+ cloned_mac = ce_page_cloned_mac_get (page->cloned_mac_combo);
g_object_set (page->setting,
NM_SETTING_WIRELESS_SSID, ssid,
@@ -125,15 +110,15 @@ ui_to_setting (CEPageWifi *page)
}
static gboolean
-validate (CEPage *page,
+validate (CEPage *parent,
NMConnection *connection,
GError **error)
{
+ CEPageWifi *page = (CEPageWifi *) parent;
GtkWidget *entry;
- GtkComboBoxText *combo;
gboolean ret = TRUE;
- entry = gtk_bin_get_child (GTK_BIN (gtk_builder_get_object (page->builder, "bssid_combo")));
+ entry = gtk_bin_get_child (GTK_BIN (page->bssid_combo));
if (!ce_page_address_is_valid (gtk_entry_get_text (GTK_ENTRY (entry)))) {
widget_set_error (entry);
ret = FALSE;
@@ -141,7 +126,7 @@ validate (CEPage *page,
widget_unset_error (entry);
}
- entry = gtk_bin_get_child (GTK_BIN (gtk_builder_get_object (page->builder, "mac_combo")));
+ entry = gtk_bin_get_child (GTK_BIN (page->mac_combo));
if (!ce_page_address_is_valid (gtk_entry_get_text (GTK_ENTRY (entry)))) {
widget_set_error (entry);
ret = FALSE;
@@ -149,12 +134,11 @@ validate (CEPage *page,
widget_unset_error (entry);
}
- combo = GTK_COMBO_BOX_TEXT (gtk_builder_get_object (page->builder, "cloned_mac_combo"));
- if (!ce_page_cloned_mac_combo_valid (combo)) {
- widget_set_error (gtk_bin_get_child (GTK_BIN (combo)));
+ if (!ce_page_cloned_mac_combo_valid (page->cloned_mac_combo)) {
+ widget_set_error (gtk_bin_get_child (GTK_BIN (page->cloned_mac_combo)));
ret = FALSE;
} else {
- widget_unset_error (gtk_bin_get_child (GTK_BIN (combo)));
+ widget_unset_error (gtk_bin_get_child (GTK_BIN (page->cloned_mac_combo)));
}
if (!ret)
@@ -190,6 +174,11 @@ ce_page_wifi_new (NMConnection *connection,
"/org/gnome/control-center/network/wifi-page.ui",
_("Identity")));
+ page->bssid_combo = GTK_COMBO_BOX_TEXT (gtk_builder_get_object (CE_PAGE (page)->builder, "bssid_combo"));
+ page->cloned_mac_combo = GTK_COMBO_BOX_TEXT (gtk_builder_get_object (CE_PAGE (page)->builder, "cloned_mac_combo"));
+ page->mac_combo = GTK_COMBO_BOX_TEXT (gtk_builder_get_object (CE_PAGE (page)->builder, "mac_combo"));
+ page->ssid_entry = GTK_ENTRY (gtk_builder_get_object (CE_PAGE (page)->builder, "ssid_entry"));
+
page->setting = nm_connection_get_setting_wireless (connection);
connect_wifi_page (page);
diff --git a/panels/network/connection-editor/ce-page-wifi.h b/panels/network/connection-editor/ce-page-wifi.h
index 28c3024f0..e7764fc99 100644
--- a/panels/network/connection-editor/ce-page-wifi.h
+++ b/panels/network/connection-editor/ce-page-wifi.h
@@ -43,6 +43,11 @@ struct _CEPageWifi
{
CEPage parent;
+ GtkComboBoxText *bssid_combo;
+ GtkComboBoxText *cloned_mac_combo;
+ GtkComboBoxText *mac_combo;
+ GtkEntry *ssid_entry;
+
NMSettingWireless *setting;
};
diff --git a/panels/network/net-device-ethernet.c b/panels/network/net-device-ethernet.c
index 2e84e46ae..4d9b94a73 100644
--- a/panels/network/net-device-ethernet.c
+++ b/panels/network/net-device-ethernet.c
@@ -39,14 +39,18 @@ struct _NetDeviceEthernet
{
NetDeviceSimple parent;
- GtkBuilder *builder;
-
- GtkWidget *list;
- GtkWidget *scrolled_window;
- GtkWidget *details;
- GtkWidget *details_button;
- GtkWidget *add_profile_button;
- gboolean updating_device;
+ GtkBuilder *builder;
+ GtkButton *add_profile_button;
+ GtkBox *box;
+ GtkButton *details_button;
+ GtkFrame *details_frame;
+ HdyActionRow *details_row;
+ GtkLabel *device_label;
+ GtkSwitch *device_off_switch;
+ GtkScrolledWindow *scrolled_window;
+
+ GtkListBox *list;
+ gboolean updating_device;
GHashTable *connections;
};
@@ -75,11 +79,9 @@ device_ethernet_add_to_stack (NetObject *object,
GtkSizeGroup *heading_size_group)
{
NetDeviceEthernet *device = NET_DEVICE_ETHERNET (object);
- GtkWidget *vbox;
- vbox = GTK_WIDGET (gtk_builder_get_object (device->builder, "box"));
- gtk_stack_add_named (stack, vbox, net_object_get_id (object));
- return vbox;
+ gtk_stack_add_named (stack, GTK_WIDGET (device->box), net_object_get_id (object));
+ return GTK_WIDGET (device->box);
}
static void
@@ -203,29 +205,25 @@ device_ethernet_refresh_ui (NetDeviceEthernet *device)
{
NMDevice *nm_device;
NMDeviceState state;
- GtkWidget *widget;
g_autofree gchar *speed = NULL;
g_autofree gchar *status = NULL;
nm_device = net_device_get_nm_device (NET_DEVICE (device));
- widget = GTK_WIDGET (gtk_builder_get_object (device->builder, "device_label"));
- gtk_label_set_label (GTK_LABEL (widget), net_object_get_title (NET_OBJECT (device)));
+ gtk_label_set_label (device->device_label, net_object_get_title (NET_OBJECT (device)));
- widget = GTK_WIDGET (gtk_builder_get_object (device->builder, "device_off_switch"));
state = nm_device_get_state (nm_device);
- gtk_widget_set_sensitive (widget,
+ gtk_widget_set_sensitive (GTK_WIDGET (device->device_off_switch),
state != NM_DEVICE_STATE_UNAVAILABLE
&& state != NM_DEVICE_STATE_UNMANAGED);
device->updating_device = TRUE;
- gtk_switch_set_active (GTK_SWITCH (widget), device_state_to_off_switch (state));
+ gtk_switch_set_active (device->device_off_switch, device_state_to_off_switch (state));
device->updating_device = FALSE;
if (state != NM_DEVICE_STATE_UNAVAILABLE)
speed = net_device_simple_get_speed (NET_DEVICE_SIMPLE (device));
- widget = GTK_WIDGET (gtk_builder_get_object (device->builder, "details_row"));
status = panel_device_status_to_localized_string (nm_device, speed);
- hdy_action_row_set_title (HDY_ACTION_ROW (widget), status);
+ hdy_action_row_set_title (device->details_row, status);
populate_ui (device);
}
@@ -246,7 +244,7 @@ show_details (NetDeviceEthernet *device, GtkButton *button, const gchar *title)
NMClient *client;
NMDevice *nmdev;
- window = gtk_widget_get_toplevel (GTK_WIDGET (gtk_builder_get_object (device->builder, "vbox6")));
+ window = gtk_widget_get_toplevel (GTK_WIDGET (device->box));
row = g_object_get_data (G_OBJECT (button), "row");
connection = NM_CONNECTION (g_object_get_data (G_OBJECT (row), "connection"));
@@ -274,7 +272,7 @@ show_details_for_wired (NetDeviceEthernet *device)
* profile. It is also used to display ethernet in the
* device list.
*/
- show_details (device, GTK_BUTTON (device->details_button), _("Wired"));
+ show_details (device, device->details_button, _("Wired"));
}
static void
@@ -386,22 +384,22 @@ populate_ui (NetDeviceEthernet *device)
n_connections = g_slist_length (connections);
if (n_connections > 1) {
- gtk_widget_hide (device->details);
+ gtk_widget_hide (GTK_WIDGET (device->details_frame));
for (l = connections; l; l = l->next) {
NMConnection *connection = l->data;
add_row (device, connection);
}
- gtk_widget_show (device->scrolled_window);
+ gtk_widget_show (GTK_WIDGET (device->scrolled_window));
} else if (n_connections == 1) {
connection = connections->data;
- gtk_widget_hide (device->scrolled_window);
- gtk_widget_show_all (device->details);
+ gtk_widget_hide (GTK_WIDGET (device->scrolled_window));
+ gtk_widget_show_all (GTK_WIDGET (device->details_frame));
g_object_set_data (G_OBJECT (device->details_button), "row", device->details_button);
g_object_set_data (G_OBJECT (device->details_button), "connection", connection);
} else {
- gtk_widget_hide (device->scrolled_window);
- gtk_widget_hide (device->details);
+ gtk_widget_hide (GTK_WIDGET (device->scrolled_window));
+ gtk_widget_hide (GTK_WIDGET (device->details_frame));
}
g_slist_free (connections);
@@ -445,7 +443,7 @@ add_profile (NetDeviceEthernet *device)
nm_connection_add_setting (connection, nm_setting_wired_new ());
- window = gtk_widget_get_toplevel (GTK_WIDGET (gtk_builder_get_object (device->builder, "vbox6")));
+ window = gtk_widget_get_toplevel (GTK_WIDGET (device->box));
nmdev = net_device_get_nm_device (NET_DEVICE (device));
editor = net_connection_editor_new (GTK_WINDOW (window), connection, nmdev, NULL, client);
@@ -466,7 +464,7 @@ device_off_toggled (NetDeviceEthernet *device)
client = net_object_get_client (NET_OBJECT (device));
nm_device = net_device_get_nm_device (NET_DEVICE (device));
- if (gtk_switch_get_active (GTK_SWITCH (gtk_builder_get_object (device->builder, "device_off_switch")))) {
+ if (gtk_switch_get_active (device->device_off_switch)) {
connection = net_device_get_find_connection (NET_DEVICE (device));
if (connection != NULL) {
nm_client_activate_connection_async (client,
@@ -512,31 +510,21 @@ device_ethernet_constructed (GObject *object)
{
NetDeviceEthernet *device = NET_DEVICE_ETHERNET (object);
NMClient *client;
- GtkWidget *list;
- GtkWidget *swin;
- GtkWidget *widget;
- widget = GTK_WIDGET (gtk_builder_get_object (device->builder,
- "device_off_switch"));
- g_signal_connect_swapped (widget, "notify::active",
+ g_signal_connect_swapped (device->device_off_switch, "notify::active",
G_CALLBACK (device_off_toggled), device);
- device->scrolled_window = swin = GTK_WIDGET (gtk_builder_get_object (device->builder, "scrolled_window"));
- device->list = list = GTK_WIDGET (gtk_list_box_new ());
- gtk_list_box_set_selection_mode (GTK_LIST_BOX (list), GTK_SELECTION_NONE);
- gtk_list_box_set_header_func (GTK_LIST_BOX (list), cc_list_box_update_header_func, NULL, NULL);
- gtk_container_add (GTK_CONTAINER (swin), list);
- g_signal_connect_swapped (list, "row-activated",
+ device->list = GTK_LIST_BOX (gtk_list_box_new ());
+ gtk_list_box_set_selection_mode (device->list, GTK_SELECTION_NONE);
+ gtk_list_box_set_header_func (device->list, cc_list_box_update_header_func, NULL, NULL);
+ gtk_container_add (GTK_CONTAINER (device->scrolled_window), GTK_WIDGET (device->list));
+ g_signal_connect_swapped (device->list, "row-activated",
G_CALLBACK (connection_activated), device);
- gtk_widget_show (list);
-
- device->details = GTK_WIDGET (gtk_builder_get_object (device->builder, "details_frame"));
+ gtk_widget_show (GTK_WIDGET (device->list));
- device->details_button = GTK_WIDGET (gtk_builder_get_object (device->builder, "details_button"));
g_signal_connect_swapped (device->details_button, "clicked",
G_CALLBACK (show_details_for_wired), device);
- device->add_profile_button = GTK_WIDGET (gtk_builder_get_object (device->builder, "add_profile_button"));
g_signal_connect_swapped (device->add_profile_button, "clicked",
G_CALLBACK (add_profile), device);
@@ -595,6 +583,15 @@ net_device_ethernet_init (NetDeviceEthernet *device)
return;
}
+ device->add_profile_button = GTK_BUTTON (gtk_builder_get_object (device->builder, "add_profile_button"));
+ device->box = GTK_BOX (gtk_builder_get_object (device->builder, "box"));
+ device->details_button = GTK_BUTTON (gtk_builder_get_object (device->builder, "details_button"));
+ device->details_frame = GTK_FRAME (gtk_builder_get_object (device->builder, "details_frame"));
+ device->details_row = HDY_ACTION_ROW (gtk_builder_get_object (device->builder, "details_row"));
+ device->device_label = GTK_LABEL (gtk_builder_get_object (device->builder, "device_label"));
+ device->device_off_switch = GTK_SWITCH (gtk_builder_get_object (device->builder, "device_off_switch"));
+ device->scrolled_window = GTK_SCROLLED_WINDOW (gtk_builder_get_object (device->builder, "scrolled_window"));
+
device->connections = g_hash_table_new (NULL, NULL);
g_signal_connect (device, "notify::title", G_CALLBACK (device_title_changed), NULL);
diff --git a/panels/network/net-device-mobile.c b/panels/network/net-device-mobile.c
index 7c00d0c78..cf3c98f05 100644
--- a/panels/network/net-device-mobile.c
+++ b/panels/network/net-device-mobile.c
@@ -38,7 +38,29 @@ static void nm_device_mobile_refresh_ui (NetDeviceMobile *device_mobile);
struct _NetDeviceMobile
{
NetDevice parent;
- GtkBuilder *builder;
+
+ GtkBuilder *builder;
+ GtkBox *box;
+ GtkLabel *device_label;
+ GtkSwitch *device_off_switch;
+ GtkLabel *dns_heading_label;
+ GtkLabel *dns_label;
+ GtkLabel *imei_heading_label;
+ GtkLabel *imei_label;
+ GtkLabel *ipv4_heading_label;
+ GtkLabel *ipv4_label;
+ GtkLabel *ipv6_heading_label;
+ GtkLabel *ipv6_label;
+ GtkListStore *mobile_connections_list_store;
+ GtkComboBox *network_combo;
+ GtkLabel *network_label;
+ GtkButton *options_button;
+ GtkLabel *provider_heading_label;
+ GtkLabel *provider_label;
+ GtkLabel *route_heading_label;
+ GtkLabel *route_label;
+ GtkLabel *status_label;
+
gboolean updating_device;
/* Old MM < 0.7 support */
@@ -71,21 +93,14 @@ device_mobile_proxy_add_to_stack (NetObject *object,
GtkStack *stack,
GtkSizeGroup *heading_size_group)
{
- GtkWidget *widget;
NetDeviceMobile *device_mobile = NET_DEVICE_MOBILE (object);
/* add widgets to size group */
- widget = GTK_WIDGET (gtk_builder_get_object (device_mobile->builder,
- "imei_heading_label"));
- gtk_size_group_add_widget (heading_size_group, widget);
- widget = GTK_WIDGET (gtk_builder_get_object (device_mobile->builder,
- "network_label"));
- gtk_size_group_add_widget (heading_size_group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (device_mobile->builder,
- "box"));
- gtk_stack_add_named (stack, widget, net_object_get_id (object));
- return widget;
+ gtk_size_group_add_widget (heading_size_group, GTK_WIDGET (device_mobile->imei_heading_label));
+ gtk_size_group_add_widget (heading_size_group, GTK_WIDGET (device_mobile->network_label));
+
+ gtk_stack_add_named (stack, GTK_WIDGET (device_mobile->box), net_object_get_id (object));
+ return GTK_WIDGET (device_mobile->box);
}
static void
@@ -117,7 +132,7 @@ mobile_connection_changed_cb (NetDeviceMobile *device_mobile)
if (device_mobile->updating_device)
return;
- ret = gtk_combo_box_get_active_iter (GTK_COMBO_BOX (gtk_builder_get_object (device_mobile->builder, "combobox_network")), &iter);
+ ret = gtk_combo_box_get_active_iter (device_mobile->network_combo, &iter);
if (!ret)
return;
@@ -127,7 +142,7 @@ mobile_connection_changed_cb (NetDeviceMobile *device_mobile)
client = net_object_get_client (NET_OBJECT (device_mobile));
/* get entry */
- model = gtk_combo_box_get_model (GTK_COMBO_BOX (gtk_builder_get_object (device_mobile->builder, "combobox_network")));
+ model = gtk_combo_box_get_model (device_mobile->network_combo);
gtk_tree_model_get (model, &iter,
COLUMN_ID, &object_path,
-1);
@@ -158,7 +173,6 @@ static void
mobilebb_enabled_toggled (NetDeviceMobile *device_mobile)
{
gboolean enabled = FALSE;
- GtkSwitch *sw;
NMDevice *device;
device = net_device_get_nm_device (NET_DEVICE (device_mobile));
@@ -181,11 +195,8 @@ mobilebb_enabled_toggled (NetDeviceMobile *device_mobile)
}
}
- sw = GTK_SWITCH (gtk_builder_get_object (device_mobile->builder,
- "device_off_switch"));
-
device_mobile->updating_device = TRUE;
- gtk_switch_set_active (sw, enabled);
+ gtk_switch_set_active (device_mobile->device_off_switch, enabled);
device_mobile->updating_device = FALSE;
}
@@ -238,7 +249,6 @@ static void
device_mobile_refresh_equipment_id (NetDeviceMobile *device_mobile)
{
const gchar *equipment_id = NULL;
- GtkWidget *heading, *widget;
if (device_mobile->mm_object != NULL) {
MMModem *modem;
@@ -259,9 +269,7 @@ device_mobile_refresh_equipment_id (NetDeviceMobile *device_mobile)
"ControlCenter::EquipmentIdentifier");
}
- heading = GTK_WIDGET (gtk_builder_get_object (device_mobile->builder, "imei_heading_label"));
- widget = GTK_WIDGET (gtk_builder_get_object (device_mobile->builder, "imei_label"));
- panel_set_device_widget_details (GTK_LABEL (heading), GTK_LABEL (widget), equipment_id);
+ panel_set_device_widget_details (device_mobile->imei_heading_label, device_mobile->imei_label, equipment_id);
}
static gchar *
@@ -306,11 +314,6 @@ device_mobile_find_provider (NetDeviceMobile *device_mobile,
static void
device_mobile_refresh_operator_name (NetDeviceMobile *device_mobile)
{
- GtkWidget *heading, *widget;
-
- heading = GTK_WIDGET (gtk_builder_get_object (device_mobile->builder, "provider_heading_label"));
- widget = GTK_WIDGET (gtk_builder_get_object (device_mobile->builder, "provider_label"));
-
if (device_mobile->mm_object != NULL) {
g_autofree gchar *operator_name = NULL;
MMModem3gpp *modem_3gpp;
@@ -347,7 +350,7 @@ device_mobile_refresh_operator_name (NetDeviceMobile *device_mobile)
operator_name);
}
- panel_set_device_widget_details (GTK_LABEL (heading), GTK_LABEL (widget), operator_name);
+ panel_set_device_widget_details (device_mobile->provider_heading_label, device_mobile->provider_label, operator_name);
} else {
const gchar *gsm;
const gchar *cdma;
@@ -360,13 +363,13 @@ device_mobile_refresh_operator_name (NetDeviceMobile *device_mobile)
if (gsm != NULL && cdma != NULL) {
g_autofree gchar *both = g_strdup_printf ("%s, %s", gsm, cdma);
- panel_set_device_widget_details (GTK_LABEL (heading), GTK_LABEL (widget), both);
+ panel_set_device_widget_details (device_mobile->provider_heading_label, device_mobile->provider_label, both);
} else if (gsm != NULL) {
- panel_set_device_widget_details (GTK_LABEL (heading), GTK_LABEL (widget), gsm);
+ panel_set_device_widget_details (device_mobile->provider_heading_label, device_mobile->provider_label, gsm);
} else if (cdma != NULL) {
- panel_set_device_widget_details (GTK_LABEL (heading), GTK_LABEL (widget), cdma);
+ panel_set_device_widget_details (device_mobile->provider_heading_label, device_mobile->provider_label, cdma);
} else {
- panel_set_device_widget_details (GTK_LABEL (heading), GTK_LABEL (widget), NULL);
+ panel_set_device_widget_details (device_mobile->provider_heading_label, device_mobile->provider_label, NULL);
}
}
}
@@ -375,8 +378,6 @@ static void
nm_device_mobile_refresh_ui (NetDeviceMobile *device_mobile)
{
gboolean is_connected;
- GtkListStore *liststore;
- GtkWidget *widget;
NMDeviceModemCapabilities caps;
NMDevice *nm_device;
g_autofree gchar *status = NULL;
@@ -384,24 +385,19 @@ nm_device_mobile_refresh_ui (NetDeviceMobile *device_mobile)
nm_device = net_device_get_nm_device (NET_DEVICE (device_mobile));
/* set device kind */
- widget = GTK_WIDGET (gtk_builder_get_object (device_mobile->builder, "device_label"));
- g_object_bind_property (device_mobile, "title", widget, "label", 0);
+ g_object_bind_property (device_mobile, "title", device_mobile->device_label, "label", 0);
/* set up the device on/off switch */
- widget = GTK_WIDGET (gtk_builder_get_object (device_mobile->builder, "device_off_switch"));
- gtk_widget_show (widget);
+ gtk_widget_show (GTK_WIDGET (device_mobile->device_off_switch));
mobilebb_enabled_toggled (device_mobile);
/* set device state, with status */
- widget = GTK_WIDGET (gtk_builder_get_object (device_mobile->builder, "status_label"));
status = panel_device_status_to_localized_string (nm_device, NULL);
- gtk_label_set_label (GTK_LABEL (widget), status);
+ gtk_label_set_label (device_mobile->status_label, status);
/* sensitive for other connection types if the device is currently connected */
- widget = GTK_WIDGET (gtk_builder_get_object (device_mobile->builder,
- "options_button"));
is_connected = net_device_get_find_connection (NET_DEVICE (device_mobile)) != NULL;
- gtk_widget_set_sensitive (widget, is_connected);
+ gtk_widget_set_sensitive (GTK_WIDGET (device_mobile->options_button), is_connected);
caps = nm_device_modem_get_current_capabilities (NM_DEVICE_MODEM (nm_device));
if ((caps & NM_DEVICE_MODEM_CAPABILITY_GSM_UMTS) ||
@@ -412,23 +408,16 @@ nm_device_mobile_refresh_ui (NetDeviceMobile *device_mobile)
}
/* add possible connections to device */
- liststore = GTK_LIST_STORE (gtk_builder_get_object (device_mobile->builder,
- "mobile_connections_list_store"));
- widget = GTK_WIDGET (gtk_builder_get_object (device_mobile->builder, "network_combo"));
device_add_device_connections (device_mobile,
nm_device,
- liststore,
- GTK_COMBO_BOX (widget));
+ device_mobile->mobile_connections_list_store,
+ device_mobile->network_combo);
/* set IP entries */
- panel_set_device_widgets (GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "ipv4_heading_label")),
- GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "ipv4_label")),
- GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "ipv6_heading_label")),
- GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "ipv6_label")),
- GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "dns_heading_label")),
- GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "dns_label")),
- GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "route_heading_label")),
- GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "route_label")),
+ panel_set_device_widgets (device_mobile->ipv4_heading_label, device_mobile->ipv4_label,
+ device_mobile->ipv6_heading_label, device_mobile->ipv6_label,
+ device_mobile->dns_heading_label, device_mobile->dns_label,
+ device_mobile->route_heading_label, device_mobile->route_label,
nm_device);
}
@@ -452,7 +441,7 @@ device_off_toggled (NetDeviceMobile *device_mobile)
if (device_mobile->updating_device)
return;
- active = gtk_switch_get_active (GTK_SWITCH (gtk_builder_get_object (device_mobile->builder, "device_off_switch")));
+ active = gtk_switch_get_active (device_mobile->device_off_switch);
if (active) {
client = net_object_get_client (NET_OBJECT (device_mobile));
connection = net_device_get_find_connection (NET_DEVICE (device_mobile));
@@ -875,9 +864,7 @@ static void
net_device_mobile_init (NetDeviceMobile *device_mobile)
{
g_autoptr(GError) error = NULL;
- GtkWidget *widget;
GtkCellRenderer *renderer;
- GtkComboBox *combobox;
device_mobile->builder = gtk_builder_new ();
gtk_builder_add_from_resource (device_mobile->builder,
@@ -888,27 +875,42 @@ net_device_mobile_init (NetDeviceMobile *device_mobile)
return;
}
+ device_mobile->box = GTK_BOX (gtk_builder_get_object (device_mobile->builder, "box"));
+ device_mobile->device_label = GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "device_label"));
+ device_mobile->device_off_switch = GTK_SWITCH (gtk_builder_get_object (device_mobile->builder, "device_off_switch"));
+ device_mobile->dns_heading_label = GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "dns_heading_label"));
+ device_mobile->dns_label = GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "dns_label"));
+ device_mobile->imei_heading_label = GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "imei_heading_label"));
+ device_mobile->imei_label = GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "imei_label"));
+ device_mobile->ipv4_heading_label = GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "ipv4_heading_label"));
+ device_mobile->ipv4_label = GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "ipv4_label"));
+ device_mobile->ipv6_heading_label = GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "ipv6_heading_label"));
+ device_mobile->ipv6_label = GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "ipv6_label"));
+ device_mobile->mobile_connections_list_store = GTK_LIST_STORE (gtk_builder_get_object (device_mobile->builder, "mobile_connections_list_store"));
+ device_mobile->network_combo = GTK_COMBO_BOX (gtk_builder_get_object (device_mobile->builder, "network_combo"));
+ device_mobile->network_label = GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "network_label"));
+ device_mobile->options_button = GTK_BUTTON (gtk_builder_get_object (device_mobile->builder, "options_button"));
+ device_mobile->provider_heading_label = GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "provider_heading_label"));
+ device_mobile->provider_label = GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "provider_label"));
+ device_mobile->route_heading_label = GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "route_heading_label"));
+ device_mobile->route_label = GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "route_label"));
+ device_mobile->status_label = GTK_LABEL (gtk_builder_get_object (device_mobile->builder, "status_label"));
+
/* setup mobile combobox model */
- combobox = GTK_COMBO_BOX (gtk_builder_get_object (device_mobile->builder,
- "network_combo"));
- g_signal_connect_swapped (combobox, "changed",
+ g_signal_connect_swapped (device_mobile->network_combo, "changed",
G_CALLBACK (mobile_connection_changed_cb),
device_mobile);
renderer = gtk_cell_renderer_text_new ();
- gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (combobox),
+ gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (device_mobile->network_combo),
renderer,
FALSE);
- gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (combobox), renderer,
+ gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (device_mobile->network_combo), renderer,
"text", COLUMN_TITLE,
NULL);
- widget = GTK_WIDGET (gtk_builder_get_object (device_mobile->builder,
- "device_off_switch"));
- g_signal_connect_swapped (widget, "notify::active",
+ g_signal_connect_swapped (device_mobile->device_off_switch, "notify::active",
G_CALLBACK (device_off_toggled), device_mobile);
- widget = GTK_WIDGET (gtk_builder_get_object (device_mobile->builder,
- "options_button"));
- g_signal_connect_swapped (widget, "clicked",
+ g_signal_connect_swapped (device_mobile->options_button, "clicked",
G_CALLBACK (edit_connection), device_mobile);
}
diff --git a/panels/network/net-device-simple.c b/panels/network/net-device-simple.c
index 18749647c..5ee92aa72 100644
--- a/panels/network/net-device-simple.c
+++ b/panels/network/net-device-simple.c
@@ -33,7 +33,14 @@
typedef struct
{
- GtkBuilder *builder;
+ GtkBuilder *builder;
+ GtkBox *box;
+ GtkLabel *device_label;
+ GtkSwitch *device_off_switch;
+ GtkGrid *grid;
+ GtkButton *options_button;
+ GtkSeparator *separator;
+
gboolean updating_device;
} NetDeviceSimplePrivate;
@@ -44,11 +51,9 @@ net_device_simple_set_show_separator (NetDeviceSimple *device_simple,
gboolean show_separator)
{
NetDeviceSimplePrivate *priv = net_device_simple_get_instance_private (device_simple);
- GtkWidget *widget;
/* add widgets to size group */
- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "separator"));
- gtk_widget_set_visible (widget, show_separator);
+ gtk_widget_set_visible (GTK_WIDGET (priv->separator), show_separator);
}
static GtkWidget *
@@ -56,15 +61,12 @@ device_simple_proxy_add_to_stack (NetObject *object,
GtkStack *stack,
GtkSizeGroup *heading_size_group)
{
- GtkWidget *widget;
NetDeviceSimple *device_simple = NET_DEVICE_SIMPLE (object);
NetDeviceSimplePrivate *priv = net_device_simple_get_instance_private (device_simple);
/* add widgets to size group */
- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder,
- "box"));
- gtk_stack_add_named (stack, widget, net_object_get_id (object));
- return widget;
+ gtk_stack_add_named (stack, GTK_WIDGET (priv->box), net_object_get_id (object));
+ return GTK_WIDGET (priv->box);
}
static void
@@ -94,27 +96,23 @@ static void
nm_device_simple_refresh_ui (NetDeviceSimple *device_simple)
{
NetDeviceSimplePrivate *priv = net_device_simple_get_instance_private (device_simple);
- GtkWidget *widget;
NMDevice *nm_device;
NMDeviceState state;
nm_device = net_device_get_nm_device (NET_DEVICE (device_simple));
/* set device kind */
- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "device_label"));
- g_object_bind_property (device_simple, "title", widget, "label", 0);
+ g_object_bind_property (device_simple, "title", priv->device_label, "label", 0);
/* set up the device on/off switch */
- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "device_off_switch"));
state = nm_device_get_state (nm_device);
- gtk_widget_set_visible (widget,
+ gtk_widget_set_visible (GTK_WIDGET (priv->device_off_switch),
state != NM_DEVICE_STATE_UNAVAILABLE
&& state != NM_DEVICE_STATE_UNMANAGED);
- update_off_switch_from_device_state (GTK_SWITCH (widget), state, device_simple);
+ update_off_switch_from_device_state (priv->device_off_switch, state, device_simple);
/* set up the Options button */
- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder, "options_button"));
- gtk_widget_set_visible (widget, state != NM_DEVICE_STATE_UNMANAGED);
+ gtk_widget_set_visible (GTK_WIDGET (priv->options_button), state != NM_DEVICE_STATE_UNMANAGED);
}
static void
@@ -138,7 +136,7 @@ device_off_toggled (NetDeviceSimple *device_simple)
if (priv->updating_device)
return;
- active = gtk_switch_get_active (GTK_SWITCH (gtk_builder_get_object (priv->builder, "device_off_switch")));
+ active = gtk_switch_get_active (priv->device_off_switch);
if (active) {
client = net_object_get_client (NET_OBJECT (device_simple));
connection = net_device_get_find_connection (NET_DEVICE (device_simple));
@@ -219,7 +217,6 @@ net_device_simple_init (NetDeviceSimple *device_simple)
{
NetDeviceSimplePrivate *priv = net_device_simple_get_instance_private (device_simple);
g_autoptr(GError) error = NULL;
- GtkWidget *widget;
priv->builder = gtk_builder_new ();
gtk_builder_add_from_resource (priv->builder,
@@ -230,15 +227,18 @@ net_device_simple_init (NetDeviceSimple *device_simple)
return;
}
+ priv->box = GTK_BOX (gtk_builder_get_object (priv->builder, "box"));
+ priv->device_label = GTK_LABEL (gtk_builder_get_object (priv->builder, "device_label"));
+ priv->device_off_switch = GTK_SWITCH (gtk_builder_get_object (priv->builder, "device_off_switch"));
+ priv->grid = GTK_GRID (gtk_builder_get_object (priv->builder, "grid"));
+ priv->options_button = GTK_BUTTON (gtk_builder_get_object (priv->builder, "options_button"));
+ priv->separator = GTK_SEPARATOR (gtk_builder_get_object (priv->builder, "separator"));
+
/* setup simple combobox model */
- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder,
- "device_off_switch"));
- g_signal_connect_swapped (widget, "notify::active",
+ g_signal_connect_swapped (priv->device_off_switch, "notify::active",
G_CALLBACK (device_off_toggled), device_simple);
- widget = GTK_WIDGET (gtk_builder_get_object (priv->builder,
- "options_button"));
- g_signal_connect_swapped (widget, "clicked",
+ g_signal_connect_swapped (priv->options_button, "clicked",
G_CALLBACK (edit_connection), device_simple);
}
@@ -256,22 +256,19 @@ net_device_simple_add_row (NetDeviceSimple *device_simple,
const char *property_name)
{
NetDeviceSimplePrivate *priv = net_device_simple_get_instance_private (device_simple);
- GtkGrid *grid;
GtkWidget *label, *value;
GtkStyleContext *context;
gint top_attach;
- grid = GTK_GRID (gtk_builder_get_object (priv->builder, "grid"));
-
label = gtk_label_new (label_string);
gtk_widget_set_halign (label, GTK_ALIGN_END);
- gtk_container_add (GTK_CONTAINER (grid), label);
+ gtk_container_add (GTK_CONTAINER (priv->grid), label);
context = gtk_widget_get_style_context (label);
gtk_style_context_add_class (context, "dim-label");
gtk_widget_show (label);
- gtk_container_child_get (GTK_CONTAINER (grid), label,
+ gtk_container_child_get (GTK_CONTAINER (priv->grid), label,
"top-attach", &top_attach,
NULL);
@@ -279,7 +276,7 @@ net_device_simple_add_row (NetDeviceSimple *device_simple,
gtk_widget_set_halign (value, GTK_ALIGN_START);
g_object_bind_property (device_simple, property_name, value, "label", 0);
gtk_label_set_mnemonic_widget (GTK_LABEL (label), value);
- gtk_grid_attach (grid, value, 1, top_attach, 1, 1);
+ gtk_grid_attach (priv->grid, value, 1, top_attach, 1, 1);
gtk_widget_show (value);
}
diff --git a/panels/network/net-device-wifi.c b/panels/network/net-device-wifi.c
index ce1126725..54a8a147f 100644
--- a/panels/network/net-device-wifi.c
+++ b/panels/network/net-device-wifi.c
@@ -59,7 +59,26 @@ struct _NetDeviceWifi
NetDevice parent;
GtkBuilder *builder;
- GtkSwitch *hotspot_switch;
+ GtkBox *center_box;
+ GtkButton *connect_hidden_button;
+ GtkSwitch *device_off_switch;
+ GtkBox *header_box;
+ GtkButton *history_button;
+ GtkLabel *hotspot_connected_heading_label;
+ GtkLabel *hotspot_connected_label;
+ GtkLabel *hotspot_network_name_heading_label;
+ GtkLabel *hotspot_network_name_label;
+ GtkSwitch *hotspot_off_switch;
+ GtkLabel *hotspot_security_heading_label;
+ GtkLabel *hotspot_security_key_heading_label;
+ GtkLabel *hotspot_security_key_label;
+ GtkLabel *hotspot_security_label;
+ GtkBox *listbox_box;
+ GtkNotebook *notebook;
+ GtkButton *start_hotspot_button;
+ GtkLabel *status_label;
+ GtkLabel *title_label;
+
gboolean updating_device;
gchar *selected_ssid_title;
gchar *selected_connection_id;
@@ -85,13 +104,13 @@ G_DEFINE_TYPE (NetDeviceWifi, net_device_wifi, NET_TYPE_DEVICE)
GtkWidget *
net_device_wifi_get_header_widget (NetDeviceWifi *device_wifi)
{
- return GTK_WIDGET (gtk_builder_get_object (device_wifi->builder, "header_box"));
+ return GTK_WIDGET (device_wifi->header_box);
}
GtkWidget *
net_device_wifi_get_title_widget (NetDeviceWifi *device_wifi)
{
- return GTK_WIDGET (gtk_builder_get_object (device_wifi->builder, "center_box"));
+ return GTK_WIDGET (device_wifi->center_box);
}
static GtkWidget *
@@ -100,18 +119,15 @@ device_wifi_proxy_add_to_stack (NetObject *object,
GtkSizeGroup *heading_size_group)
{
NMDevice *nmdevice;
- GtkWidget *widget;
NetDeviceWifi *device_wifi = NET_DEVICE_WIFI (object);
nmdevice = net_device_get_nm_device (NET_DEVICE (object));
- widget = GTK_WIDGET (gtk_builder_get_object (device_wifi->builder,
- "notebook"));
- gtk_stack_add_titled (stack, widget,
+ gtk_stack_add_titled (stack, GTK_WIDGET (device_wifi->notebook),
net_object_get_id (object),
nm_device_get_description (nmdevice));
- return widget;
+ return GTK_WIDGET (device_wifi->notebook);
}
static void
@@ -132,7 +148,6 @@ static void
wireless_enabled_toggled (NetDeviceWifi *device_wifi)
{
gboolean enabled;
- GtkSwitch *sw;
NMDevice *device;
device = net_device_get_nm_device (NET_DEVICE (device_wifi));
@@ -140,11 +155,9 @@ wireless_enabled_toggled (NetDeviceWifi *device_wifi)
return;
enabled = nm_client_wireless_get_enabled (net_object_get_client (NET_OBJECT (device_wifi)));
- sw = GTK_SWITCH (gtk_builder_get_object (device_wifi->builder,
- "device_off_switch"));
device_wifi->updating_device = TRUE;
- gtk_switch_set_active (sw, enabled);
+ gtk_switch_set_active (device_wifi->device_off_switch, enabled);
if (!enabled)
disable_scan_timeout (device_wifi);
device_wifi->updating_device = FALSE;
@@ -304,7 +317,6 @@ nm_device_wifi_refresh_hotspot (NetDeviceWifi *device_wifi)
g_autofree gchar *hotspot_security = NULL;
g_autofree gchar *hotspot_ssid = NULL;
NMDevice *nm_device;
- GtkWidget *heading, *widget;
/* refresh hotspot ui */
nm_device = net_device_get_nm_device (NET_DEVICE (device_wifi));
@@ -319,18 +331,10 @@ nm_device_wifi_refresh_hotspot (NetDeviceWifi *device_wifi)
g_debug ("Refreshing hotspot labels to name: '%s', security key: '%s', security: '%s'",
hotspot_ssid, hotspot_secret, hotspot_security);
- heading = GTK_WIDGET (gtk_builder_get_object (device_wifi->builder, "hotspot_network_name_heading_label"));
- widget = GTK_WIDGET (gtk_builder_get_object (device_wifi->builder, "hotspot_network_name_label"));
- panel_set_device_widget_details (GTK_LABEL (heading), GTK_LABEL (widget), hotspot_ssid);
- heading = GTK_WIDGET (gtk_builder_get_object (device_wifi->builder, "hotspot_security_key_heading_label"));
- widget = GTK_WIDGET (gtk_builder_get_object (device_wifi->builder, "hotspot_security_key_label"));
- panel_set_device_widget_details (GTK_LABEL (heading), GTK_LABEL (widget), hotspot_secret);
- heading = GTK_WIDGET (gtk_builder_get_object (device_wifi->builder, "hotspot_security_heading_label"));
- widget = GTK_WIDGET (gtk_builder_get_object (device_wifi->builder, "hotspot_security_label"));
- panel_set_device_widget_details (GTK_LABEL (heading), GTK_LABEL (widget), hotspot_security);
- heading = GTK_WIDGET (gtk_builder_get_object (device_wifi->builder, "hotspot_connected_heading_label"));
- widget = GTK_WIDGET (gtk_builder_get_object (device_wifi->builder, "hotspot_connected_label"));
- panel_set_device_widget_details (GTK_LABEL (heading), GTK_LABEL (widget), NULL);
+ panel_set_device_widget_details (device_wifi->hotspot_network_name_heading_label, device_wifi->hotspot_network_name_label, hotspot_ssid);
+ panel_set_device_widget_details (device_wifi->hotspot_security_key_heading_label, device_wifi->hotspot_security_key_label, hotspot_secret);
+ panel_set_device_widget_details (device_wifi->hotspot_security_heading_label, device_wifi->hotspot_security_label, hotspot_security);
+ panel_set_device_widget_details (device_wifi->hotspot_connected_heading_label, device_wifi->hotspot_connected_label, NULL);
}
static void
@@ -398,7 +402,6 @@ nm_device_wifi_refresh_ui (NetDeviceWifi *device_wifi)
{
NMDevice *nm_device;
NMClient *client;
- GtkWidget *widget;
g_autofree gchar *status = NULL;
if (device_is_hotspot (device_wifi)) {
@@ -422,9 +425,8 @@ nm_device_wifi_refresh_ui (NetDeviceWifi *device_wifi)
/* keep this in sync with the signal handler setup in cc_network_panel_init */
wireless_enabled_toggled (device_wifi);
- widget = GTK_WIDGET (gtk_builder_get_object (device_wifi->builder, "status_label"));
status = panel_device_status_to_localized_string (nm_device, NULL);
- gtk_label_set_label (GTK_LABEL (widget), status);
+ gtk_label_set_label (device_wifi->status_label, status);
/* update list of APs */
show_wifi_list (device_wifi);
@@ -447,7 +449,7 @@ device_off_toggled (NetDeviceWifi *device_wifi)
return;
client = net_object_get_client (NET_OBJECT (device_wifi));
- active = gtk_switch_get_active (GTK_SWITCH (gtk_builder_get_object (device_wifi->builder, "device_off_switch")));
+ active = gtk_switch_get_active (device_wifi->device_off_switch);
nm_client_wireless_set_enabled (client, active);
if (!active)
disable_scan_timeout (device_wifi);
@@ -668,15 +670,12 @@ is_hotspot_connection (NMConnection *connection)
static void
show_hotspot_ui (NetDeviceWifi *device_wifi)
{
- GtkWidget *widget;
-
/* show hotspot tab */
- widget = GTK_WIDGET (gtk_builder_get_object (device_wifi->builder, "notebook"));
- gtk_notebook_set_current_page (GTK_NOTEBOOK (widget), 1);
+ gtk_notebook_set_current_page (device_wifi->notebook, 1);
/* force switch to on as this succeeded */
device_wifi->updating_device = TRUE;
- gtk_switch_set_active (device_wifi->hotspot_switch, TRUE);
+ gtk_switch_set_active (device_wifi->hotspot_off_switch, TRUE);
device_wifi->updating_device = FALSE;
}
@@ -791,7 +790,7 @@ start_hotspot (NetDeviceWifi *device_wifi)
client = net_object_get_client (NET_OBJECT (device_wifi));
device = net_device_get_nm_device (NET_DEVICE (device_wifi));
- window = gtk_widget_get_toplevel (GTK_WIDGET (gtk_builder_get_object (device_wifi->builder, "notebook_view")));
+ window = gtk_widget_get_toplevel (GTK_WIDGET (device_wifi->notebook));
if (!device_wifi->hotspot_dialog)
device_wifi->hotspot_dialog = cc_wifi_hotspot_dialog_new (GTK_WINDOW (window));
@@ -859,7 +858,7 @@ stop_shared_connection (NetDeviceWifi *device_wifi)
if (!found) {
g_warning ("Could not stop hotspot connection as no connection attached to the device could be found.");
device_wifi->updating_device = TRUE;
- gtk_switch_set_active (device_wifi->hotspot_switch, TRUE);
+ gtk_switch_set_active (device_wifi->hotspot_off_switch, TRUE);
device_wifi->updating_device = FALSE;
return;
}
@@ -874,7 +873,7 @@ stop_hotspot_response_cb (NetDeviceWifi *device_wifi, gint response, GtkWidget *
stop_shared_connection (device_wifi);
} else {
device_wifi->updating_device = TRUE;
- gtk_switch_set_active (device_wifi->hotspot_switch, TRUE);
+ gtk_switch_set_active (device_wifi->hotspot_off_switch, TRUE);
device_wifi->updating_device = FALSE;
}
gtk_widget_destroy (dialog);
@@ -909,9 +908,7 @@ switch_hotspot_changed_cb (NetDeviceWifi *device_wifi)
static void
show_wifi_list (NetDeviceWifi *device_wifi)
{
- GtkWidget *widget;
- widget = GTK_WIDGET (gtk_builder_get_object (device_wifi->builder, "notebook"));
- gtk_notebook_set_current_page (GTK_NOTEBOOK (widget), 0);
+ gtk_notebook_set_current_page (device_wifi->notebook, 0);
}
static void
@@ -922,9 +919,7 @@ net_device_wifi_constructed (GObject *object)
NMClientPermissionResult perm;
NMDevice *nm_device;
NMDeviceWifiCapabilities caps;
- GtkWidget *list_container;
GtkWidget *list;
- GtkWidget *widget;
G_OBJECT_CLASS (net_device_wifi_parent_class)->constructed (object);
@@ -934,10 +929,9 @@ net_device_wifi_constructed (GObject *object)
nm_device = net_device_get_nm_device (NET_DEVICE (device_wifi));
- list_container = GTK_WIDGET (gtk_builder_get_object (device_wifi->builder, "listbox_box"));
list = GTK_WIDGET (cc_wifi_connection_list_new (client, NM_DEVICE_WIFI (nm_device), TRUE, TRUE, FALSE));
gtk_widget_show (list);
- gtk_container_add (GTK_CONTAINER (list_container), list);
+ gtk_container_add (GTK_CONTAINER (device_wifi->listbox_box), list);
gtk_list_box_set_header_func (GTK_LIST_BOX (list), cc_list_box_update_header_func, NULL, NULL);
gtk_list_box_set_sort_func (GTK_LIST_BOX (list), (GtkListBoxSortFunc)ap_sort, NULL, NULL);
@@ -949,22 +943,19 @@ net_device_wifi_constructed (GObject *object)
device_wifi);
/* only enable the button if the user can create a hotspot */
- widget = GTK_WIDGET (gtk_builder_get_object (device_wifi->builder,
- "start_hotspot_button"));
perm = nm_client_get_permission_result (client, NM_CLIENT_PERMISSION_WIFI_SHARE_OPEN);
caps = nm_device_wifi_get_capabilities (NM_DEVICE_WIFI (nm_device));
if (perm != NM_CLIENT_PERMISSION_RESULT_YES &&
perm != NM_CLIENT_PERMISSION_RESULT_AUTH) {
- gtk_widget_set_tooltip_text (widget, _("System policy prohibits use as a Hotspot"));
- gtk_widget_set_sensitive (widget, FALSE);
+ gtk_widget_set_tooltip_text (GTK_WIDGET (device_wifi->start_hotspot_button), _("System policy prohibits use as a Hotspot"));
+ gtk_widget_set_sensitive (GTK_WIDGET (device_wifi->start_hotspot_button), FALSE);
} else if (!(caps & (NM_WIFI_DEVICE_CAP_AP | NM_WIFI_DEVICE_CAP_ADHOC))) {
- gtk_widget_set_tooltip_text (widget, _("Wireless device does not support Hotspot mode"));
- gtk_widget_set_sensitive (widget, FALSE);
+ gtk_widget_set_tooltip_text (GTK_WIDGET (device_wifi->start_hotspot_button), _("Wireless device does not support Hotspot mode"));
+ gtk_widget_set_sensitive (GTK_WIDGET (device_wifi->start_hotspot_button), FALSE);
} else
- gtk_widget_set_sensitive (widget, TRUE);
+ gtk_widget_set_sensitive (GTK_WIDGET (device_wifi->start_hotspot_button), TRUE);
- widget = GTK_WIDGET (gtk_builder_get_object (device_wifi->builder, "title_label"));
- g_object_bind_property (device_wifi, "title", widget, "label", 0);
+ g_object_bind_property (device_wifi, "title", device_wifi->title_label, "label", 0);
nm_device_wifi_refresh_ui (device_wifi);
}
@@ -1404,7 +1395,6 @@ static void
net_device_wifi_init (NetDeviceWifi *device_wifi)
{
g_autoptr(GError) error = NULL;
- GtkWidget *widget;
device_wifi->builder = gtk_builder_new ();
gtk_builder_add_from_resource (device_wifi->builder,
@@ -1415,38 +1405,45 @@ net_device_wifi_init (NetDeviceWifi *device_wifi)
return;
}
+ device_wifi->center_box = GTK_BOX (gtk_builder_get_object (device_wifi->builder, "center_box"));
+ device_wifi->connect_hidden_button = GTK_BUTTON (gtk_builder_get_object (device_wifi->builder, "connect_hidden_button"));
+ device_wifi->device_off_switch = GTK_SWITCH (gtk_builder_get_object (device_wifi->builder, "device_off_switch"));
+ device_wifi->header_box = GTK_BOX (gtk_builder_get_object (device_wifi->builder, "header_box"));
+ device_wifi->history_button = GTK_BUTTON (gtk_builder_get_object (device_wifi->builder, "history_button"));
+ device_wifi->hotspot_connected_heading_label = GTK_LABEL (gtk_builder_get_object (device_wifi->builder, "hotspot_connected_heading_label"));
+ device_wifi->hotspot_connected_label = GTK_LABEL (gtk_builder_get_object (device_wifi->builder, "hotspot_connected_label"));
+ device_wifi->hotspot_network_name_heading_label = GTK_LABEL (gtk_builder_get_object (device_wifi->builder, "hotspot_network_name_heading_label"));
+ device_wifi->hotspot_network_name_label = GTK_LABEL (gtk_builder_get_object (device_wifi->builder, "hotspot_network_name_label"));
+ device_wifi->hotspot_off_switch = GTK_SWITCH (gtk_builder_get_object (device_wifi->builder, "hotspot_off_switch"));
+ device_wifi->hotspot_security_heading_label = GTK_LABEL (gtk_builder_get_object (device_wifi->builder, "hotspot_security_heading_label"));
+ device_wifi->hotspot_security_key_heading_label = GTK_LABEL (gtk_builder_get_object (device_wifi->builder, "hotspot_security_key_heading_label"));
+ device_wifi->hotspot_security_key_label = GTK_LABEL (gtk_builder_get_object (device_wifi->builder, "hotspot_security_key_label"));
+ device_wifi->hotspot_security_label = GTK_LABEL (gtk_builder_get_object (device_wifi->builder, "hotspot_security_label"));
+ device_wifi->listbox_box = GTK_BOX (gtk_builder_get_object (device_wifi->builder, "listbox_box"));
+ device_wifi->notebook = GTK_NOTEBOOK (gtk_builder_get_object (device_wifi->builder, "notebook"));
+ device_wifi->start_hotspot_button = GTK_BUTTON (gtk_builder_get_object (device_wifi->builder, "start_hotspot_button"));
+ device_wifi->status_label = GTK_LABEL (gtk_builder_get_object (device_wifi->builder, "status_label"));
+ device_wifi->title_label = GTK_LABEL (gtk_builder_get_object (device_wifi->builder, "title_label"));
+
device_wifi->cancellable = g_cancellable_new ();
/* setup wifi views */
- widget = GTK_WIDGET (gtk_builder_get_object (device_wifi->builder,
- "device_off_switch"));
- g_signal_connect_swapped (widget, "notify::active",
+ g_signal_connect_swapped (device_wifi->device_off_switch, "notify::active",
G_CALLBACK (device_off_toggled), device_wifi);
/* setup view */
- widget = GTK_WIDGET (gtk_builder_get_object (device_wifi->builder,
- "notebook"));
- gtk_notebook_set_show_tabs (GTK_NOTEBOOK (widget), FALSE);
- gtk_notebook_set_current_page (GTK_NOTEBOOK (widget), 0);
-
- widget = GTK_WIDGET (gtk_builder_get_object (device_wifi->builder,
- "start_hotspot_button"));
- g_signal_connect_swapped (widget, "clicked",
+ gtk_notebook_set_show_tabs (device_wifi->notebook, FALSE);
+ gtk_notebook_set_current_page (device_wifi->notebook, 0);
+
+ g_signal_connect_swapped (device_wifi->start_hotspot_button, "clicked",
G_CALLBACK (start_hotspot), device_wifi);
- widget = GTK_WIDGET (gtk_builder_get_object (device_wifi->builder,
- "connect_hidden_button"));
- g_signal_connect_swapped (widget, "clicked",
+ g_signal_connect_swapped (device_wifi->connect_hidden_button, "clicked",
G_CALLBACK (connect_to_hidden_network), device_wifi);
- widget = GTK_WIDGET (gtk_builder_get_object (device_wifi->builder,
- "history_button"));
- g_signal_connect_swapped (widget, "clicked",
+ g_signal_connect_swapped (device_wifi->history_button, "clicked",
G_CALLBACK (open_history), device_wifi);
- widget = GTK_WIDGET (gtk_builder_get_object (device_wifi->builder,
- "hotspot_off_switch"));
- device_wifi->hotspot_switch = GTK_SWITCH (widget);
- g_signal_connect_swapped (widget, "notify::active",
+ g_signal_connect_swapped (device_wifi->hotspot_off_switch, "notify::active",
G_CALLBACK (switch_hotspot_changed_cb), device_wifi);
}
diff --git a/panels/network/net-proxy.c b/panels/network/net-proxy.c
index 362789399..b4938e59d 100644
--- a/panels/network/net-proxy.c
+++ b/panels/network/net-proxy.c
@@ -31,17 +31,35 @@ typedef enum
{
MODE_DISABLED,
MODE_MANUAL,
- MODE_AUTOMATIC,
- N_MODES
+ MODE_AUTOMATIC
} ProxyMode;
struct _NetProxy
{
NetObject parent;
- GSettings *settings;
GtkBuilder *builder;
- GtkRadioButton *mode_radios[3];
+ GtkRadioButton *automatic_radio;
+ GtkDialog *dialog;
+ GtkButton *dialog_button;
+ GtkFrame *main_widget;
+ GtkRadioButton *manual_radio;
+ GtkRadioButton *none_radio;
+ GtkEntry *proxy_ftp_entry;
+ GtkEntry *proxy_http_entry;
+ GtkEntry *proxy_https_entry;
+ GtkEntry *proxy_ignore_entry;
+ GtkAdjustment *proxy_port_ftp_adjustment;
+ GtkAdjustment *proxy_port_http_adjustment;
+ GtkAdjustment *proxy_port_https_adjustment;
+ GtkAdjustment *proxy_port_socks_adjustment;
+ GtkEntry *proxy_socks_entry;
+ GtkEntry *proxy_url_entry;
+ GtkLabel *proxy_warning_label;
+ GtkStack *stack;
+ GtkLabel *status_label;
+
+ GSettings *settings;
};
G_DEFINE_TYPE (NetProxy, net_proxy, NET_TYPE_OBJECT)
@@ -65,17 +83,12 @@ static inline void
panel_update_status_label (NetProxy *self,
ProxyMode mode)
{
- GtkLabel *label;
-
- /* update the label */
- label = GTK_LABEL (gtk_builder_get_object (self->builder, "status_label"));
- gtk_label_set_label (label, panel_get_string_for_value (mode));
+ gtk_label_set_label (self->status_label, panel_get_string_for_value (mode));
}
static void
check_wpad_warning (NetProxy *proxy)
{
- GtkWidget *widget;
g_autofree gchar *autoconfig_url = NULL;
GString *string = NULL;
gboolean ret = FALSE;
@@ -110,10 +123,8 @@ check_wpad_warning (NetProxy *proxy)
g_string_append (string, _("This is not recommended for untrusted public networks."));
g_string_append (string, "</small>");
out:
- widget = GTK_WIDGET (gtk_builder_get_object (proxy->builder,
- "proxy_warning_label"));
- gtk_label_set_markup (GTK_LABEL (widget), string->str);
- gtk_widget_set_visible (widget, (string->len > 0));
+ gtk_label_set_markup (proxy->proxy_warning_label, string->str);
+ gtk_widget_set_visible (GTK_WIDGET (proxy->proxy_warning_label), (string->len > 0));
g_string_free (string, TRUE);
}
@@ -127,20 +138,16 @@ settings_changed_cb (NetProxy *proxy)
static void
panel_proxy_mode_setup_widgets (NetProxy *proxy, ProxyMode value)
{
- GtkStack *stack;
-
- stack = GTK_STACK (gtk_builder_get_object (proxy->builder, "stack"));
-
/* hide or show the PAC text box */
switch (value) {
case MODE_DISABLED:
- gtk_stack_set_visible_child_name (stack, "disabled");
+ gtk_stack_set_visible_child_name (proxy->stack, "disabled");
break;
case MODE_MANUAL:
- gtk_stack_set_visible_child_name (stack, "manual");
+ gtk_stack_set_visible_child_name (proxy->stack, "manual");
break;
case MODE_AUTOMATIC:
- gtk_stack_set_visible_child_name (stack, "automatic");
+ gtk_stack_set_visible_child_name (proxy->stack, "automatic");
break;
default:
g_assert_not_reached ();
@@ -159,11 +166,11 @@ panel_proxy_mode_radio_changed_cb (NetProxy *proxy, GtkRadioButton *radio)
return;
/* get selected radio */
- if (radio == proxy->mode_radios[MODE_DISABLED])
+ if (radio == proxy->none_radio)
value = MODE_DISABLED;
- else if (radio == proxy->mode_radios[MODE_MANUAL])
+ else if (radio == proxy->manual_radio)
value = MODE_MANUAL;
- else if (radio == proxy->mode_radios[MODE_AUTOMATIC])
+ else if (radio == proxy->automatic_radio)
value = MODE_AUTOMATIC;
else
g_assert_not_reached ();
@@ -181,14 +188,8 @@ panel_proxy_mode_radio_changed_cb (NetProxy *proxy, GtkRadioButton *radio)
static void
show_dialog_cb (NetProxy *self)
{
- GtkWidget *toplevel;
- GtkWindow *dialog;
-
- toplevel = gtk_widget_get_toplevel (GTK_WIDGET (gtk_builder_get_object (self->builder, "main_widget")));
- dialog = GTK_WINDOW (gtk_builder_get_object (self->builder, "dialog"));
-
- gtk_window_set_transient_for (dialog, GTK_WINDOW (toplevel));
- gtk_window_present (dialog);
+ gtk_window_set_transient_for (GTK_WINDOW (self->dialog), GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (self->main_widget))));
+ gtk_window_present (GTK_WINDOW (self->dialog));
}
static GtkWidget *
@@ -196,24 +197,19 @@ net_proxy_add_to_stack (NetObject *object,
GtkStack *stack,
GtkSizeGroup *heading_size_group)
{
- GtkWidget *widget;
NetProxy *proxy = NET_PROXY (object);
- widget = GTK_WIDGET (gtk_builder_get_object (proxy->builder,
- "main_widget"));
- gtk_size_group_add_widget (heading_size_group, widget);
- gtk_stack_add_named (stack, widget, net_object_get_id (object));
- return widget;
+ gtk_size_group_add_widget (heading_size_group, GTK_WIDGET (proxy->main_widget));
+ gtk_stack_add_named (stack, GTK_WIDGET (proxy->main_widget), net_object_get_id (object));
+ return GTK_WIDGET (proxy->main_widget);
}
static void
net_proxy_finalize (GObject *object)
{
NetProxy *proxy = NET_PROXY (object);
- GtkWidget *widget;
- widget = GTK_WIDGET (gtk_builder_get_object (proxy->builder, "dialog"));
- gtk_widget_destroy (widget);
+ gtk_widget_destroy (GTK_WIDGET (proxy->dialog));
g_clear_object (&proxy->settings);
g_clear_object (&proxy->builder);
@@ -282,15 +278,12 @@ set_ignore_hosts (const GValue *value,
static void
net_proxy_init (NetProxy *proxy)
{
- GtkAdjustment *adjustment;
g_autoptr(GSettings) http_settings = NULL;
g_autoptr(GSettings) https_settings = NULL;
g_autoptr(GSettings) ftp_settings = NULL;
g_autoptr(GSettings) socks_settings = NULL;
ProxyMode value;
- GtkWidget *widget;
g_autoptr(GError) error = NULL;
- guint i;
proxy->builder = gtk_builder_new ();
gtk_builder_add_from_resource (proxy->builder,
@@ -301,6 +294,26 @@ net_proxy_init (NetProxy *proxy)
return;
}
+ proxy->automatic_radio = GTK_RADIO_BUTTON (gtk_builder_get_object (proxy->builder, "automatic_radio"));
+ proxy->dialog = GTK_DIALOG (gtk_builder_get_object (proxy->builder, "dialog"));
+ proxy->dialog_button = GTK_BUTTON (gtk_builder_get_object (proxy->builder, "dialog_button"));
+ proxy->main_widget = GTK_FRAME (gtk_builder_get_object (proxy->builder, "main_widget"));
+ proxy->manual_radio = GTK_RADIO_BUTTON (gtk_builder_get_object (proxy->builder, "manual_radio"));
+ proxy->none_radio = GTK_RADIO_BUTTON (gtk_builder_get_object (proxy->builder, "none_radio"));
+ proxy->proxy_ftp_entry = GTK_ENTRY (gtk_builder_get_object (proxy->builder, "proxy_ftp_entry"));
+ proxy->proxy_http_entry = GTK_ENTRY (gtk_builder_get_object (proxy->builder, "proxy_http_entry"));
+ proxy->proxy_https_entry = GTK_ENTRY (gtk_builder_get_object (proxy->builder, "proxy_https_entry"));
+ proxy->proxy_ignore_entry = GTK_ENTRY (gtk_builder_get_object (proxy->builder, "proxy_ignore_entry"));
+ proxy->proxy_port_ftp_adjustment = GTK_ADJUSTMENT (gtk_builder_get_object (proxy->builder, "proxy_port_ftp_adjustment"));
+ proxy->proxy_port_http_adjustment = GTK_ADJUSTMENT (gtk_builder_get_object (proxy->builder, "proxy_port_http_adjustment"));
+ proxy->proxy_port_https_adjustment = GTK_ADJUSTMENT (gtk_builder_get_object (proxy->builder, "proxy_port_https_adjustment"));
+ proxy->proxy_port_socks_adjustment = GTK_ADJUSTMENT (gtk_builder_get_object (proxy->builder, "proxy_port_socks_adjustment"));
+ proxy->proxy_socks_entry = GTK_ENTRY (gtk_builder_get_object (proxy->builder, "proxy_socks_entry"));
+ proxy->proxy_url_entry = GTK_ENTRY (gtk_builder_get_object (proxy->builder, "proxy_url_entry"));
+ proxy->proxy_warning_label = GTK_LABEL (gtk_builder_get_object (proxy->builder, "proxy_warning_label"));
+ proxy->stack = GTK_STACK (gtk_builder_get_object (proxy->builder, "stack"));
+ proxy->status_label = GTK_LABEL (gtk_builder_get_object (proxy->builder, "status_label"));
+
proxy->settings = g_settings_new ("org.gnome.system.proxy");
g_signal_connect_swapped (proxy->settings,
"changed",
@@ -311,107 +324,84 @@ net_proxy_init (NetProxy *proxy)
value = g_settings_get_enum (proxy->settings, "mode");
/* bind the proxy values */
- widget = GTK_WIDGET (gtk_builder_get_object (proxy->builder,
- "proxy_url_entry"));
g_settings_bind (proxy->settings, "autoconfig-url",
- widget, "text",
+ proxy->proxy_url_entry, "text",
G_SETTINGS_BIND_DEFAULT);
/* bind the HTTP proxy values */
http_settings = g_settings_get_child (proxy->settings, "http");
- widget = GTK_WIDGET (gtk_builder_get_object (proxy->builder,
- "proxy_http_entry"));
g_settings_bind (http_settings, "host",
- widget, "text",
+ proxy->proxy_http_entry, "text",
G_SETTINGS_BIND_DEFAULT);
- adjustment = GTK_ADJUSTMENT (gtk_builder_get_object (proxy->builder,
- "proxy_port_http_adjustment"));
g_settings_bind (http_settings, "port",
- adjustment, "value",
+ proxy->proxy_port_http_adjustment, "value",
G_SETTINGS_BIND_DEFAULT);
/* bind the HTTPS proxy values */
https_settings = g_settings_get_child (proxy->settings, "https");
- widget = GTK_WIDGET (gtk_builder_get_object (proxy->builder,
- "proxy_https_entry"));
g_settings_bind (https_settings, "host",
- widget, "text",
+ proxy->proxy_https_entry, "text",
G_SETTINGS_BIND_DEFAULT);
- adjustment = GTK_ADJUSTMENT (gtk_builder_get_object (proxy->builder,
- "proxy_port_https_adjustment"));
g_settings_bind (https_settings, "port",
- adjustment, "value",
+ proxy->proxy_port_https_adjustment, "value",
G_SETTINGS_BIND_DEFAULT);
/* bind the FTP proxy values */
ftp_settings = g_settings_get_child (proxy->settings, "ftp");
- widget = GTK_WIDGET (gtk_builder_get_object (proxy->builder,
- "proxy_ftp_entry"));
g_settings_bind (ftp_settings, "host",
- widget, "text",
+ proxy->proxy_ftp_entry, "text",
G_SETTINGS_BIND_DEFAULT);
- adjustment = GTK_ADJUSTMENT (gtk_builder_get_object (proxy->builder,
- "proxy_port_ftp_adjustment"));
g_settings_bind (ftp_settings, "port",
- adjustment, "value",
+ proxy->proxy_port_ftp_adjustment, "value",
G_SETTINGS_BIND_DEFAULT);
/* bind the SOCKS proxy values */
socks_settings = g_settings_get_child (proxy->settings, "socks");
- widget = GTK_WIDGET (gtk_builder_get_object (proxy->builder,
- "proxy_socks_entry"));
g_settings_bind (socks_settings, "host",
- widget, "text",
+ proxy->proxy_socks_entry, "text",
G_SETTINGS_BIND_DEFAULT);
- adjustment = GTK_ADJUSTMENT (gtk_builder_get_object (proxy->builder,
- "proxy_port_socks_adjustment"));
g_settings_bind (socks_settings, "port",
- adjustment, "value",
+ proxy->proxy_port_socks_adjustment, "value",
G_SETTINGS_BIND_DEFAULT);
/* bind the proxy ignore hosts */
- widget = GTK_WIDGET (gtk_builder_get_object (proxy->builder,
- "proxy_ignore_entry"));
g_settings_bind_with_mapping (proxy->settings, "ignore-hosts",
- widget, "text",
+ proxy->proxy_ignore_entry, "text",
G_SETTINGS_BIND_DEFAULT, get_ignore_hosts, set_ignore_hosts,
NULL, NULL);
- /* radio buttons */
- proxy->mode_radios[MODE_DISABLED] =
- GTK_RADIO_BUTTON (gtk_builder_get_object (proxy->builder, "none_radio"));
- proxy->mode_radios[MODE_MANUAL] =
- GTK_RADIO_BUTTON (gtk_builder_get_object (proxy->builder, "manual_radio"));
- proxy->mode_radios[MODE_AUTOMATIC] =
- GTK_RADIO_BUTTON (gtk_builder_get_object (proxy->builder, "automatic_radio"));
-
/* setup the radio before connecting to the :toggled signal */
- gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (proxy->mode_radios[value]), TRUE);
+ switch (value) {
+ case MODE_DISABLED:
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (proxy->none_radio), TRUE);
+ break;
+ case MODE_MANUAL:
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (proxy->manual_radio), TRUE);
+ break;
+ case MODE_AUTOMATIC:
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (proxy->automatic_radio), TRUE);
+ break;
+ default:
+ g_assert_not_reached ();
+ }
panel_proxy_mode_setup_widgets (proxy, value);
panel_update_status_label (proxy, value);
- for (i = MODE_DISABLED; i < N_MODES; i++) {
- g_signal_connect_swapped (proxy->mode_radios[i],
- "toggled",
- G_CALLBACK (panel_proxy_mode_radio_changed_cb),
- proxy);
- }
+ g_signal_connect_swapped (proxy->none_radio, "toggled", G_CALLBACK (panel_proxy_mode_radio_changed_cb), proxy);
+ g_signal_connect_swapped (proxy->manual_radio, "toggled", G_CALLBACK (panel_proxy_mode_radio_changed_cb), proxy);
+ g_signal_connect_swapped (proxy->automatic_radio, "toggled", G_CALLBACK (panel_proxy_mode_radio_changed_cb), proxy);
/* show dialog button */
- widget = GTK_WIDGET (gtk_builder_get_object (proxy->builder, "dialog_button"));
-
- g_signal_connect_swapped (widget,
+ g_signal_connect_swapped (proxy->dialog_button,
"clicked",
G_CALLBACK (show_dialog_cb),
proxy);
/* prevent the dialog from being destroyed */
- widget = GTK_WIDGET (gtk_builder_get_object (proxy->builder, "dialog"));
-
- g_signal_connect (widget,
+ g_signal_connect (proxy->dialog,
"delete-event",
G_CALLBACK (gtk_widget_hide_on_delete),
- widget);
+ proxy->dialog);
}
NetProxy *
diff --git a/panels/network/net-vpn.c b/panels/network/net-vpn.c
index 0b8e0c31d..d6f761857 100644
--- a/panels/network/net-vpn.c
+++ b/panels/network/net-vpn.c
@@ -37,6 +37,12 @@ struct _NetVpn
NetObject parent;
GtkBuilder *builder;
+ GtkBox *box;
+ GtkLabel *device_label;
+ GtkSwitch *device_off_switch;
+ GtkButton *options_button;
+ GtkSeparator *separator;
+
NMConnection *connection;
NMActiveConnection *active_connection;
gchar *service_type;
@@ -58,10 +64,7 @@ void
net_vpn_set_show_separator (NetVpn *self,
gboolean show_separator)
{
- GtkWidget *separator;
-
- separator = GTK_WIDGET (gtk_builder_get_object (self->builder, "separator"));
- gtk_widget_set_visible (separator, show_separator);
+ gtk_widget_set_visible (GTK_WIDGET (self->separator), show_separator);
}
static void
@@ -132,21 +135,16 @@ vpn_proxy_add_to_stack (NetObject *object,
GtkStack *stack,
GtkSizeGroup *heading_size_group)
{
- GtkWidget *widget;
NetVpn *vpn = NET_VPN (object);
/* add widgets to size group */
- widget = GTK_WIDGET (gtk_builder_get_object (vpn->builder,
- "box"));
- gtk_stack_add_named (stack, widget, net_object_get_id (object));
- return widget;
+ gtk_stack_add_named (stack, GTK_WIDGET (vpn->box), net_object_get_id (object));
+ return GTK_WIDGET (vpn->box);
}
static void
nm_device_refresh_vpn_ui (NetVpn *vpn)
{
- GtkWidget *widget;
- GtkWidget *sw;
const GPtrArray *acs;
NMActiveConnection *a;
gint i;
@@ -155,15 +153,13 @@ nm_device_refresh_vpn_ui (NetVpn *vpn)
NMClient *client;
/* update title */
- widget = GTK_WIDGET (gtk_builder_get_object (vpn->builder,
- "device_label"));
/* Translators: this is the title of the connection details
* window for vpn connections, it is also used to display
* vpn connections in the device list.
*/
title = g_strdup_printf (_("%s VPN"), nm_connection_get_id (vpn->connection));
net_object_set_title (NET_OBJECT (vpn), title);
- gtk_label_set_label (GTK_LABEL (widget), title);
+ gtk_label_set_label (vpn->device_label, title);
if (vpn->active_connection) {
g_signal_handlers_disconnect_by_func (vpn->active_connection,
@@ -199,8 +195,7 @@ nm_device_refresh_vpn_ui (NetVpn *vpn)
}
vpn->updating_device = TRUE;
- sw = GTK_WIDGET (gtk_builder_get_object (vpn->builder, "device_off_switch"));
- gtk_switch_set_active (GTK_SWITCH (sw),
+ gtk_switch_set_active (vpn->device_off_switch,
state != NM_VPN_CONNECTION_STATE_FAILED &&
state != NM_VPN_CONNECTION_STATE_DISCONNECTED);
vpn->updating_device = FALSE;
@@ -231,7 +226,7 @@ device_off_toggled (NetVpn *vpn)
if (vpn->updating_device)
return;
- active = gtk_switch_get_active (GTK_SWITCH (gtk_builder_get_object (vpn->builder, "device_off_switch")));
+ active = gtk_switch_get_active (vpn->device_off_switch);
if (active) {
client = net_object_get_client (NET_OBJECT (vpn));
nm_client_activate_connection_async (client,
@@ -270,14 +265,12 @@ static void
vpn_proxy_edit (NetObject *object)
{
NetVpn *vpn = NET_VPN (object);
- GtkWidget *button, *window;
+ GtkWidget *window;
NetConnectionEditor *editor;
NMClient *client;
g_autofree gchar *title = NULL;
- button = GTK_WIDGET (gtk_builder_get_object (vpn->builder,
- "options_button"));
- window = gtk_widget_get_toplevel (button);
+ window = gtk_widget_get_toplevel (GTK_WIDGET (vpn->options_button));
client = net_object_get_client (object);
@@ -403,7 +396,6 @@ static void
net_vpn_init (NetVpn *vpn)
{
g_autoptr(GError) error = NULL;
- GtkWidget *widget;
vpn->builder = gtk_builder_new ();
gtk_builder_add_from_resource (vpn->builder,
@@ -414,13 +406,15 @@ net_vpn_init (NetVpn *vpn)
return;
}
- widget = GTK_WIDGET (gtk_builder_get_object (vpn->builder,
- "device_off_switch"));
- g_signal_connect_swapped (widget, "notify::active",
+ vpn->box = GTK_BOX (gtk_builder_get_object (vpn->builder, "box"));
+ vpn->device_label = GTK_LABEL (gtk_builder_get_object (vpn->builder, "device_label"));
+ vpn->device_off_switch = GTK_SWITCH (gtk_builder_get_object (vpn->builder, "device_off_switch"));
+ vpn->options_button = GTK_BUTTON (gtk_builder_get_object (vpn->builder, "options_button"));
+ vpn->separator = GTK_SEPARATOR (gtk_builder_get_object (vpn->builder, "separator"));
+
+ g_signal_connect_swapped (vpn->device_off_switch, "notify::active",
G_CALLBACK (device_off_toggled), vpn);
- widget = GTK_WIDGET (gtk_builder_get_object (vpn->builder,
- "options_button"));
- g_signal_connect_swapped (widget, "clicked",
+ g_signal_connect_swapped (vpn->options_button, "clicked",
G_CALLBACK (edit_connection), vpn);
}
diff --git a/panels/network/wireless-security/eap-method-fast.c b/panels/network/wireless-security/eap-method-fast.c
index 84ccfc0e9..3d789d6a5 100644
--- a/panels/network/wireless-security/eap-method-fast.c
+++ b/panels/network/wireless-security/eap-method-fast.c
@@ -36,6 +36,16 @@
struct _EAPMethodFAST {
EAPMethod parent;
+ GtkEntry *anon_identity_entry;
+ GtkLabel *anon_identity_label;
+ GtkComboBox *inner_auth_combo;
+ GtkLabel *inner_auth_label;
+ GtkBox *inner_auth_box;
+ GtkFileChooserButton *pac_file_button;
+ GtkLabel *pac_file_label;
+ GtkCheckButton *pac_provision_check;
+ GtkComboBox *pac_provision_combo;
+
GtkSizeGroup *size_group;
WirelessSecurity *sec_parent;
gboolean is_editor;
@@ -53,7 +63,7 @@ destroy (EAPMethod *parent)
static gboolean
validate (EAPMethod *parent, GError **error)
{
- GtkWidget *widget;
+ EAPMethodFAST *self = (EAPMethodFAST *) parent;
GtkTreeModel *model;
GtkTreeIter iter;
g_autoptr(EAPMethod) eap = NULL;
@@ -61,23 +71,17 @@ validate (EAPMethod *parent, GError **error)
gboolean provisioning;
gboolean valid = TRUE;
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "pac_provision_check"));
- g_assert (widget);
- provisioning = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget));
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "pac_file_button"));
- g_assert (widget);
- file = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (widget));
+ provisioning = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (self->pac_provision_check));
+ file = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (self->pac_file_button));
if (!provisioning && !file) {
- widget_set_error (widget);
+ widget_set_error (GTK_WIDGET (self->pac_file_button));
g_set_error_literal (error, NMA_ERROR, NMA_ERROR_GENERIC, _("missing EAP-FAST PAC file"));
valid = FALSE;
} else
- widget_unset_error (widget);
+ widget_unset_error (GTK_WIDGET (self->pac_file_button));
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
- g_assert (widget);
- model = gtk_combo_box_get_model (GTK_COMBO_BOX (widget));
- gtk_combo_box_get_active_iter (GTK_COMBO_BOX (widget), &iter);
+ model = gtk_combo_box_get_model (self->inner_auth_combo);
+ gtk_combo_box_get_active_iter (self->inner_auth_combo, &iter);
gtk_tree_model_get (model, &iter, I_METHOD_COLUMN, &eap, -1);
g_assert (eap);
valid = eap_method_validate (eap, valid ? error : NULL) && valid;
@@ -88,7 +92,6 @@ static void
add_to_size_group (EAPMethod *parent, GtkSizeGroup *group)
{
EAPMethodFAST *method = (EAPMethodFAST *) parent;
- GtkWidget *widget;
GtkTreeModel *model;
GtkTreeIter iter;
g_autoptr(EAPMethod) eap = NULL;
@@ -97,27 +100,13 @@ add_to_size_group (EAPMethod *parent, GtkSizeGroup *group)
g_object_unref (method->size_group);
method->size_group = g_object_ref (group);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "anon_identity_label"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "pac_file_label"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "pac_provision_check"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
+ gtk_size_group_add_widget (group, GTK_WIDGET (method->anon_identity_label));
+ gtk_size_group_add_widget (group, GTK_WIDGET (method->pac_file_label));
+ gtk_size_group_add_widget (group, GTK_WIDGET (method->pac_provision_check));
+ gtk_size_group_add_widget (group, GTK_WIDGET (method->inner_auth_label));
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_label"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
- g_assert (widget);
-
- model = gtk_combo_box_get_model (GTK_COMBO_BOX (widget));
- gtk_combo_box_get_active_iter (GTK_COMBO_BOX (widget), &iter);
+ model = gtk_combo_box_get_model (method->inner_auth_combo);
+ gtk_combo_box_get_active_iter (method->inner_auth_combo, &iter);
gtk_tree_model_get (model, &iter, I_METHOD_COLUMN, &eap, -1);
g_assert (eap);
eap_method_add_to_size_group (eap, group);
@@ -126,8 +115,8 @@ add_to_size_group (EAPMethod *parent, GtkSizeGroup *group)
static void
fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFlags flags)
{
+ EAPMethodFAST *self = (EAPMethodFAST *) parent;
NMSetting8021x *s_8021x;
- GtkWidget *widget;
const char *text;
char *filename;
g_autoptr(EAPMethod) eap = NULL;
@@ -141,25 +130,19 @@ fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFla
nm_setting_802_1x_add_eap_method (s_8021x, "fast");
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "anon_identity_entry"));
- g_assert (widget);
- text = gtk_entry_get_text (GTK_ENTRY (widget));
+ text = gtk_entry_get_text (self->anon_identity_entry);
if (text && strlen (text))
g_object_set (s_8021x, NM_SETTING_802_1X_ANONYMOUS_IDENTITY, text, NULL);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "pac_file_button"));
- g_assert (widget);
- filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (widget));
+ filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (self->pac_file_button));
g_object_set (s_8021x, NM_SETTING_802_1X_PAC_FILE, filename, NULL);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "pac_provision_check"));
- enabled = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget));
+ enabled = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (self->pac_provision_check));
if (!enabled)
g_object_set (G_OBJECT (s_8021x), NM_SETTING_802_1X_PHASE1_FAST_PROVISIONING, "0", NULL);
else {
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "pac_provision_combo"));
- pac_provisioning = gtk_combo_box_get_active (GTK_COMBO_BOX (widget));
+ pac_provisioning = gtk_combo_box_get_active (self->pac_provision_combo);
switch (pac_provisioning) {
case 0: /* Anonymous */
@@ -177,9 +160,8 @@ fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFla
}
}
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
- model = gtk_combo_box_get_model (GTK_COMBO_BOX (widget));
- gtk_combo_box_get_active_iter (GTK_COMBO_BOX (widget), &iter);
+ model = gtk_combo_box_get_model (self->inner_auth_combo);
+ gtk_combo_box_get_active_iter (self->inner_auth_combo, &iter);
gtk_tree_model_get (model, &iter, I_METHOD_COLUMN, &eap, -1);
g_assert (eap);
@@ -189,26 +171,20 @@ fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFla
static void
inner_auth_combo_changed_cb (EAPMethodFAST *self)
{
- EAPMethod *parent = (EAPMethod *) self;
- GtkWidget *combo, *vbox;
g_autoptr(EAPMethod) eap = NULL;
GList *elt, *children;
GtkTreeModel *model;
GtkTreeIter iter;
GtkWidget *eap_widget;
- combo = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
- vbox = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_box"));
- g_assert (vbox);
-
/* Remove any previous wireless security widgets */
- children = gtk_container_get_children (GTK_CONTAINER (vbox));
+ children = gtk_container_get_children (GTK_CONTAINER (self->inner_auth_box));
for (elt = children; elt; elt = g_list_next (elt))
- gtk_container_remove (GTK_CONTAINER (vbox), GTK_WIDGET (elt->data));
+ gtk_container_remove (GTK_CONTAINER (self->inner_auth_box), GTK_WIDGET (elt->data));
g_list_free (children);
- model = gtk_combo_box_get_model (GTK_COMBO_BOX (combo));
- gtk_combo_box_get_active_iter (GTK_COMBO_BOX (combo), &iter);
+ model = gtk_combo_box_get_model (self->inner_auth_combo);
+ gtk_combo_box_get_active_iter (self->inner_auth_combo, &iter);
gtk_tree_model_get (model, &iter, I_METHOD_COLUMN, &eap, -1);
g_assert (eap);
@@ -218,19 +194,17 @@ inner_auth_combo_changed_cb (EAPMethodFAST *self)
if (self->size_group)
eap_method_add_to_size_group (eap, self->size_group);
- gtk_container_add (GTK_CONTAINER (vbox), eap_widget);
+ gtk_container_add (GTK_CONTAINER (self->inner_auth_box), eap_widget);
wireless_security_notify_changed (self->sec_parent);
}
-static GtkWidget *
+static void
inner_auth_combo_init (EAPMethodFAST *method,
NMConnection *connection,
NMSetting8021x *s_8021x,
gboolean secrets_only)
{
- EAPMethod *parent = (EAPMethod *) method;
- GtkWidget *combo;
g_autoptr(GtkListStore) auth_model = NULL;
GtkTreeIter iter;
g_autoptr(EAPMethodSimple) em_gtc = NULL;
@@ -282,40 +256,29 @@ inner_auth_combo_init (EAPMethodFAST *method,
if (phase2_auth && !strcasecmp (phase2_auth, "mschapv2"))
active = 1;
- combo = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
- g_assert (combo);
-
- gtk_combo_box_set_model (GTK_COMBO_BOX (combo), GTK_TREE_MODEL (auth_model));
- gtk_combo_box_set_active (GTK_COMBO_BOX (combo), active);
+ gtk_combo_box_set_model (method->inner_auth_combo, GTK_TREE_MODEL (auth_model));
+ gtk_combo_box_set_active (method->inner_auth_combo, active);
- g_signal_connect_swapped (combo, "changed", G_CALLBACK (inner_auth_combo_changed_cb), method);
- return combo;
+ g_signal_connect_swapped (method->inner_auth_combo, "changed", G_CALLBACK (inner_auth_combo_changed_cb), method);
}
static void
update_secrets (EAPMethod *parent, NMConnection *connection)
{
+ EAPMethodFAST *self = (EAPMethodFAST *) parent;
eap_method_phase2_update_secrets_helper (parent,
connection,
- GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "inner_auth_combo")),
+ self->inner_auth_combo,
I_METHOD_COLUMN);
}
static void
pac_toggled_cb (EAPMethodFAST *self)
{
- GtkWidget *widget;
- EAPMethod *parent = (EAPMethod *) self;
gboolean enabled = FALSE;
- GtkWidget *provision_combo;
-
- provision_combo = GTK_WIDGET (gtk_builder_get_object (parent->builder, "pac_provision_combo"));
- g_return_if_fail (provision_combo);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "pac_provision_check"));
- enabled = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget));
-
- gtk_widget_set_sensitive (provision_combo, enabled);
+ enabled = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (self->pac_provision_check));
+ gtk_widget_set_sensitive (GTK_WIDGET (self->pac_provision_combo), enabled);
wireless_security_notify_changed (self->sec_parent);
}
@@ -334,7 +297,6 @@ eap_method_fast_new (WirelessSecurity *ws_parent,
{
EAPMethod *parent;
EAPMethodFAST *method;
- GtkWidget *widget;
GtkFileFilter *filter;
NMSetting8021x *s_8021x = NULL;
const char *filename;
@@ -358,13 +320,20 @@ eap_method_fast_new (WirelessSecurity *ws_parent,
method->sec_parent = ws_parent;
method->is_editor = is_editor;
+ method->anon_identity_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "anon_identity_entry"));
+ method->anon_identity_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "anon_identity_label"));
+ method->inner_auth_combo = GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
+ method->inner_auth_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "inner_auth_label"));
+ method->inner_auth_box = GTK_BOX (gtk_builder_get_object (parent->builder, "inner_auth_box"));
+ method->pac_file_button = GTK_FILE_CHOOSER_BUTTON (gtk_builder_get_object (parent->builder, "pac_file_button"));
+ method->pac_file_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "pac_file_label"));
+ method->pac_provision_check = GTK_CHECK_BUTTON (gtk_builder_get_object (parent->builder, "pac_provision_check"));
+ method->pac_provision_combo = GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "pac_provision_combo"));
+
if (connection)
s_8021x = nm_connection_get_setting_802_1x (connection);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "pac_provision_combo"));
- g_assert (widget);
- gtk_combo_box_set_active (GTK_COMBO_BOX (widget), 0);
+ gtk_combo_box_set_active (method->pac_provision_combo, 0);
if (s_8021x) {
const char *fast_prov;
@@ -373,67 +342,55 @@ eap_method_fast_new (WirelessSecurity *ws_parent,
if (!strcmp (fast_prov, "0"))
provisioning_enabled = FALSE;
else if (!strcmp (fast_prov, "1"))
- gtk_combo_box_set_active (GTK_COMBO_BOX (widget), 0);
+ gtk_combo_box_set_active (method->pac_provision_combo, 0);
else if (!strcmp (fast_prov, "2"))
- gtk_combo_box_set_active (GTK_COMBO_BOX (widget), 1);
+ gtk_combo_box_set_active (method->pac_provision_combo, 1);
else if (!strcmp (fast_prov, "3"))
- gtk_combo_box_set_active (GTK_COMBO_BOX (widget), 2);
+ gtk_combo_box_set_active (method->pac_provision_combo, 2);
}
}
- gtk_widget_set_sensitive (widget, provisioning_enabled);
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (changed_cb), method);
+ gtk_widget_set_sensitive (GTK_WIDGET (method->pac_provision_combo), provisioning_enabled);
+ g_signal_connect_swapped (method->pac_provision_combo, "changed", G_CALLBACK (changed_cb), method);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "pac_provision_check"));
- gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (widget), provisioning_enabled);
- g_signal_connect_swapped (widget, "toggled", G_CALLBACK (pac_toggled_cb), method);
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (method->pac_provision_check), provisioning_enabled);
+ g_signal_connect_swapped (method->pac_provision_check, "toggled", G_CALLBACK (pac_toggled_cb), method);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "anon_identity_entry"));
if (s_8021x && nm_setting_802_1x_get_anonymous_identity (s_8021x))
- gtk_entry_set_text (GTK_ENTRY (widget), nm_setting_802_1x_get_anonymous_identity (s_8021x));
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (changed_cb), method);
+ gtk_entry_set_text (method->anon_identity_entry, nm_setting_802_1x_get_anonymous_identity (s_8021x));
+ g_signal_connect_swapped (method->anon_identity_entry, "changed", G_CALLBACK (changed_cb), method);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "pac_file_button"));
- g_assert (widget);
- gtk_file_chooser_set_local_only (GTK_FILE_CHOOSER (widget), TRUE);
- gtk_file_chooser_button_set_title (GTK_FILE_CHOOSER_BUTTON (widget),
+ gtk_file_chooser_set_local_only (GTK_FILE_CHOOSER (method->pac_file_button), TRUE);
+ gtk_file_chooser_button_set_title (method->pac_file_button,
_("Choose a PAC file"));
- g_signal_connect_swapped (widget, "selection-changed", G_CALLBACK (changed_cb), method);
+ g_signal_connect_swapped (method->pac_file_button, "selection-changed", G_CALLBACK (changed_cb), method);
filter = gtk_file_filter_new ();
gtk_file_filter_add_pattern (filter, "*.pac");
gtk_file_filter_set_name (filter, _("PAC files (*.pac)"));
- gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (widget), filter);
+ gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (method->pac_file_button), filter);
filter = gtk_file_filter_new ();
gtk_file_filter_add_pattern (filter, "*");
gtk_file_filter_set_name (filter, _("All files"));
- gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (widget), filter);
+ gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (method->pac_file_button), filter);
if (connection && s_8021x) {
filename = nm_setting_802_1x_get_pac_file (s_8021x);
if (filename)
- gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (widget), filename);
+ gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (method->pac_file_button), filename);
}
- widget = inner_auth_combo_init (method, connection, s_8021x, secrets_only);
+ inner_auth_combo_init (method, connection, s_8021x, secrets_only);
inner_auth_combo_changed_cb (method);
if (secrets_only) {
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "anon_identity_label"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "anon_identity_entry"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "pac_provision_check"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "pac_provision_combo"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "pac_file_label"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "pac_file_button"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_label"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
- gtk_widget_hide (widget);
+ gtk_widget_hide (GTK_WIDGET (method->anon_identity_label));
+ gtk_widget_hide (GTK_WIDGET (method->anon_identity_entry));
+ gtk_widget_hide (GTK_WIDGET (method->pac_provision_check));
+ gtk_widget_hide (GTK_WIDGET (method->pac_provision_combo));
+ gtk_widget_hide (GTK_WIDGET (method->pac_file_label));
+ gtk_widget_hide (GTK_WIDGET (method->pac_file_button));
+ gtk_widget_hide (GTK_WIDGET (method->inner_auth_label));
+ gtk_widget_hide (GTK_WIDGET (method->inner_auth_combo));
}
return method;
diff --git a/panels/network/wireless-security/eap-method-leap.c b/panels/network/wireless-security/eap-method-leap.c
index 43ea0e021..2466625a7 100644
--- a/panels/network/wireless-security/eap-method-leap.c
+++ b/panels/network/wireless-security/eap-method-leap.c
@@ -34,24 +34,23 @@
struct _EAPMethodLEAP {
EAPMethod parent;
+ GtkGrid *grid;
+ GtkEntry *password_entry;
+ GtkLabel *password_label;
+ GtkCheckButton *show_password_check;
+ GtkEntry *username_entry;
+ GtkLabel *username_label;
+
WirelessSecurity *ws_parent;
gboolean editing_connection;
-
- GtkEntry *username_entry;
- GtkEntry *password_entry;
- GtkToggleButton *show_password;
};
static void
show_toggled_cb (EAPMethodLEAP *method)
{
- EAPMethod *parent = (EAPMethod *) method;
- GtkWidget *widget;
gboolean visible;
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "show_password_check"));
- visible = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget));
+ visible = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (method->show_password_check));
gtk_entry_set_visibility (method->password_entry, visible);
}
@@ -86,15 +85,9 @@ validate (EAPMethod *parent, GError **error)
static void
add_to_size_group (EAPMethod *parent, GtkSizeGroup *group)
{
- GtkWidget *widget;
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "username_label"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "password_label"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
+ EAPMethodLEAP *self = (EAPMethodLEAP *) parent;
+ gtk_size_group_add_widget (group, GTK_WIDGET (self->username_label));
+ gtk_size_group_add_widget (group, GTK_WIDGET (self->password_label));
}
static void
@@ -103,7 +96,6 @@ fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFla
EAPMethodLEAP *method = (EAPMethodLEAP *) parent;
NMSetting8021x *s_8021x;
NMSettingSecretFlags secret_flags;
- GtkWidget *passwd_entry;
s_8021x = nm_connection_get_setting_802_1x (connection);
g_assert (s_8021x);
@@ -113,25 +105,23 @@ fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFla
g_object_set (s_8021x, NM_SETTING_802_1X_IDENTITY, gtk_entry_get_text (method->username_entry), NULL);
g_object_set (s_8021x, NM_SETTING_802_1X_PASSWORD, gtk_entry_get_text (method->password_entry), NULL);
- passwd_entry = GTK_WIDGET (gtk_builder_get_object (parent->builder, "password_entry"));
- g_assert (passwd_entry);
-
/* Save 802.1X password flags to the connection */
- secret_flags = nma_utils_menu_to_secret_flags (passwd_entry);
+ secret_flags = nma_utils_menu_to_secret_flags (GTK_WIDGET (method->password_entry));
nm_setting_set_secret_flags (NM_SETTING (s_8021x), parent->password_flags_name,
secret_flags, NULL);
/* Update secret flags and popup when editing the connection */
if (method->editing_connection)
- nma_utils_update_password_storage (passwd_entry, secret_flags,
+ nma_utils_update_password_storage (GTK_WIDGET (method->password_entry), secret_flags,
NM_SETTING (s_8021x), parent->password_flags_name);
}
static void
update_secrets (EAPMethod *parent, NMConnection *connection)
{
+ EAPMethodLEAP *self = (EAPMethodLEAP *) parent;
helper_fill_secret_entry (connection,
- GTK_ENTRY (gtk_builder_get_object (parent->builder, "password_entry")),
+ self->password_entry,
NM_TYPE_SETTING_802_1X,
(HelperSecretFunc) nm_setting_802_1x_get_password);
}
@@ -151,7 +141,7 @@ set_userpass_ui (EAPMethodLEAP *method)
else
gtk_entry_set_text (method->password_entry, "");
- gtk_toggle_button_set_active (method->show_password, wireless_security_get_show_password (method->ws_parent));
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (method->show_password_check), wireless_security_get_show_password (method->ws_parent));
}
static void
@@ -167,22 +157,18 @@ widgets_unrealized (EAPMethodLEAP *method)
gtk_entry_get_text (method->username_entry),
gtk_entry_get_text (method->password_entry),
(gboolean) -1,
- gtk_toggle_button_get_active (method->show_password));
+ gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (method->show_password_check)));
}
static void
destroy (EAPMethod *parent)
{
EAPMethodLEAP *method = (EAPMethodLEAP *) parent;
- GtkWidget *widget;
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "grid"));
- g_assert (widget);
- g_signal_handlers_disconnect_by_data (widget, method);
+ g_signal_handlers_disconnect_by_data (method->grid, method);
g_signal_handlers_disconnect_by_data (method->username_entry, method->ws_parent);
g_signal_handlers_disconnect_by_data (method->password_entry, method->ws_parent);
- g_signal_handlers_disconnect_by_data (method->show_password, method);
+ g_signal_handlers_disconnect_by_data (method->show_password_check, method);
}
static void
@@ -198,7 +184,6 @@ eap_method_leap_new (WirelessSecurity *ws_parent,
{
EAPMethodLEAP *method;
EAPMethod *parent;
- GtkWidget *widget;
NMSetting8021x *s_8021x = NULL;
parent = eap_method_init (sizeof (EAPMethodLEAP),
@@ -219,34 +204,30 @@ eap_method_leap_new (WirelessSecurity *ws_parent,
method->editing_connection = secrets_only ? FALSE : TRUE;
method->ws_parent = ws_parent;
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "grid"));
- g_assert (widget);
- g_signal_connect_swapped (widget, "realize", G_CALLBACK (widgets_realized), method);
- g_signal_connect_swapped (widget, "unrealize", G_CALLBACK (widgets_unrealized), method);
+ method->grid = GTK_GRID (gtk_builder_get_object (parent->builder, "grid"));
+ method->password_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "password_entry"));
+ method->password_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "password_label"));
+ method->show_password_check = GTK_CHECK_BUTTON (gtk_builder_get_object (parent->builder, "show_password_check"));
+ method->username_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "username_entry"));
+ method->username_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "username_label"));
+
+ g_signal_connect_swapped (method->grid, "realize", G_CALLBACK (widgets_realized), method);
+ g_signal_connect_swapped (method->grid, "unrealize", G_CALLBACK (widgets_unrealized), method);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "username_entry"));
- g_assert (widget);
- method->username_entry = GTK_ENTRY (widget);
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (changed_cb), method);
+ g_signal_connect_swapped (method->username_entry, "changed", G_CALLBACK (changed_cb), method);
if (secrets_only)
- gtk_widget_set_sensitive (widget, FALSE);
+ gtk_widget_set_sensitive (GTK_WIDGET (method->username_entry), FALSE);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "password_entry"));
- g_assert (widget);
- method->password_entry = GTK_ENTRY (widget);
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (changed_cb), method);
+ g_signal_connect_swapped (method->password_entry, "changed", G_CALLBACK (changed_cb), method);
/* Create password-storage popup menu for password entry under entry's secondary icon */
if (connection)
s_8021x = nm_connection_get_setting_802_1x (connection);
- nma_utils_setup_password_storage (widget, 0, (NMSetting *) s_8021x, parent->password_flags_name,
+ nma_utils_setup_password_storage (GTK_WIDGET (method->password_entry), 0, (NMSetting *) s_8021x, parent->password_flags_name,
FALSE, secrets_only);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "show_password_check"));
- g_assert (widget);
- method->show_password = GTK_TOGGLE_BUTTON (widget);
- g_signal_connect_swapped (widget, "toggled", G_CALLBACK (show_toggled_cb), method);
+ g_signal_connect_swapped (method->show_password_check, "toggled", G_CALLBACK (show_toggled_cb), method);
/* Initialize the UI fields with the security settings from method->ws_parent.
* This will be done again when the widget gets realized. It must be done here as well,
diff --git a/panels/network/wireless-security/eap-method-peap.c b/panels/network/wireless-security/eap-method-peap.c
index 8a4095b76..a202ad3b8 100644
--- a/panels/network/wireless-security/eap-method-peap.c
+++ b/panels/network/wireless-security/eap-method-peap.c
@@ -35,6 +35,17 @@
struct _EAPMethodPEAP {
EAPMethod parent;
+ GtkEntry *anon_identity_entry;
+ GtkLabel *anon_identity_label;
+ GtkFileChooserButton *ca_cert_button;
+ GtkLabel *ca_cert_label;
+ GtkCheckButton *ca_cert_not_required_check;
+ GtkBox *inner_auth_box;
+ GtkComboBox *inner_auth_combo;
+ GtkLabel *inner_auth_label;
+ GtkComboBox *version_combo;
+ GtkLabel *version_label;
+
GtkSizeGroup *size_group;
WirelessSecurity *sec_parent;
gboolean is_editor;
@@ -52,29 +63,26 @@ destroy (EAPMethod *parent)
static gboolean
validate (EAPMethod *parent, GError **error)
{
- GtkWidget *widget;
+ EAPMethodPEAP *self = (EAPMethodPEAP *) parent;
GtkTreeModel *model;
GtkTreeIter iter;
g_autoptr(EAPMethod) eap = NULL;
gboolean valid = FALSE;
g_autoptr(GError) local_error = NULL;
- if (!eap_method_validate_filepicker (GTK_FILE_CHOOSER (gtk_builder_get_object (parent->builder, "ca_cert_button")),
+ if (!eap_method_validate_filepicker (GTK_FILE_CHOOSER (self->ca_cert_button),
TYPE_CA_CERT, NULL, NULL, &local_error)) {
g_set_error (error, NMA_ERROR, NMA_ERROR_GENERIC, _("invalid EAP-PEAP CA certificate: %s"), local_error->message);
return FALSE;
}
- if (eap_method_ca_cert_required (GTK_TOGGLE_BUTTON (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check")),
- GTK_FILE_CHOOSER (gtk_builder_get_object (parent->builder, "ca_cert_button")))) {
+ if (eap_method_ca_cert_required (GTK_TOGGLE_BUTTON (self->ca_cert_not_required_check),
+ GTK_FILE_CHOOSER (self->ca_cert_button))) {
g_set_error_literal (error, NMA_ERROR, NMA_ERROR_GENERIC, _("invalid EAP-PEAP CA certificate: no certificate specified"));
return FALSE;
}
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
- g_assert (widget);
-
- model = gtk_combo_box_get_model (GTK_COMBO_BOX (widget));
- gtk_combo_box_get_active_iter (GTK_COMBO_BOX (widget), &iter);
+ model = gtk_combo_box_get_model (self->inner_auth_combo);
+ gtk_combo_box_get_active_iter (self->inner_auth_combo, &iter);
gtk_tree_model_get (model, &iter, I_METHOD_COLUMN, &eap, -1);
g_assert (eap);
valid = eap_method_validate (eap, error);
@@ -84,10 +92,8 @@ validate (EAPMethod *parent, GError **error)
static void
ca_cert_not_required_toggled (EAPMethodPEAP *self)
{
- EAPMethod *parent = (EAPMethod *) self;
-
- eap_method_ca_cert_not_required_toggled (GTK_TOGGLE_BUTTON (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check")),
- GTK_FILE_CHOOSER (gtk_builder_get_object (parent->builder, "ca_cert_button")));
+ eap_method_ca_cert_not_required_toggled (GTK_TOGGLE_BUTTON (self->ca_cert_not_required_check),
+ GTK_FILE_CHOOSER (self->ca_cert_button));
wireless_security_notify_changed (self->sec_parent);
}
@@ -95,7 +101,6 @@ static void
add_to_size_group (EAPMethod *parent, GtkSizeGroup *group)
{
EAPMethodPEAP *method = (EAPMethodPEAP *) parent;
- GtkWidget *widget;
GtkTreeModel *model;
GtkTreeIter iter;
g_autoptr(EAPMethod) eap = NULL;
@@ -104,31 +109,14 @@ add_to_size_group (EAPMethod *parent, GtkSizeGroup *group)
g_object_unref (method->size_group);
method->size_group = g_object_ref (group);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "anon_identity_label"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_label"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "version_label"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_label"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
+ gtk_size_group_add_widget (group, GTK_WIDGET (method->ca_cert_not_required_check));
+ gtk_size_group_add_widget (group, GTK_WIDGET (method->anon_identity_label));
+ gtk_size_group_add_widget (group, GTK_WIDGET (method->ca_cert_label));
+ gtk_size_group_add_widget (group, GTK_WIDGET (method->version_label));
+ gtk_size_group_add_widget (group, GTK_WIDGET (method->inner_auth_label));
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
- g_assert (widget);
-
- model = gtk_combo_box_get_model (GTK_COMBO_BOX (widget));
- gtk_combo_box_get_active_iter (GTK_COMBO_BOX (widget), &iter);
+ model = gtk_combo_box_get_model (method->inner_auth_combo);
+ gtk_combo_box_get_active_iter (method->inner_auth_combo, &iter);
gtk_tree_model_get (model, &iter, I_METHOD_COLUMN, &eap, -1);
g_assert (eap);
eap_method_add_to_size_group (eap, group);
@@ -137,9 +125,9 @@ add_to_size_group (EAPMethod *parent, GtkSizeGroup *group)
static void
fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFlags flags)
{
+ EAPMethodPEAP *self = (EAPMethodPEAP *) parent;
NMSetting8021x *s_8021x;
NMSetting8021xCKFormat format = NM_SETTING_802_1X_CK_FORMAT_UNKNOWN;
- GtkWidget *widget;
const char *text;
g_autofree gchar *filename = NULL;
g_autoptr(EAPMethod) eap = NULL;
@@ -154,23 +142,18 @@ fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFla
nm_setting_802_1x_add_eap_method (s_8021x, "peap");
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "anon_identity_entry"));
- g_assert (widget);
- text = gtk_entry_get_text (GTK_ENTRY (widget));
+ text = gtk_entry_get_text (self->anon_identity_entry);
if (text && strlen (text))
g_object_set (s_8021x, NM_SETTING_802_1X_ANONYMOUS_IDENTITY, text, NULL);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_button"));
- g_assert (widget);
- filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (widget));
+ filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (self->ca_cert_button));
if (!nm_setting_802_1x_set_ca_cert (s_8021x, filename, NM_SETTING_802_1X_CK_SCHEME_PATH, &format, &error)) {
g_warning ("Couldn't read CA certificate '%s': %s", filename, error ? error->message : "(unknown)");
ca_cert_error = TRUE;
}
eap_method_ca_cert_ignore_set (parent, connection, filename, ca_cert_error);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "version_combo"));
- peapver_active = gtk_combo_box_get_active (GTK_COMBO_BOX (widget));
+ peapver_active = gtk_combo_box_get_active (self->version_combo);
switch (peapver_active) {
case 1: /* PEAP v0 */
g_object_set (G_OBJECT (s_8021x), NM_SETTING_802_1X_PHASE1_PEAPVER, "0", NULL);
@@ -183,36 +166,30 @@ fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFla
break;
}
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
- model = gtk_combo_box_get_model (GTK_COMBO_BOX (widget));
- gtk_combo_box_get_active_iter (GTK_COMBO_BOX (widget), &iter);
+ model = gtk_combo_box_get_model (self->inner_auth_combo);
+ gtk_combo_box_get_active_iter (self->inner_auth_combo, &iter);
gtk_tree_model_get (model, &iter, I_METHOD_COLUMN, &eap, -1);
g_assert (eap);
eap_method_fill_connection (eap, connection, flags);
}
+
static void
inner_auth_combo_changed_cb (EAPMethodPEAP *self)
{
- EAPMethod *parent = (EAPMethod *) self;
- GtkWidget *combo, *box;
g_autoptr(EAPMethod) eap = NULL;
GList *elt, *children;
GtkTreeModel *model;
GtkTreeIter iter;
GtkWidget *eap_widget;
- box = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_box"));
- g_assert (box);
-
/* Remove any previous wireless security widgets */
- children = gtk_container_get_children (GTK_CONTAINER (box));
+ children = gtk_container_get_children (GTK_CONTAINER (self->inner_auth_box));
for (elt = children; elt; elt = g_list_next (elt))
- gtk_container_remove (GTK_CONTAINER (box), GTK_WIDGET (elt->data));
+ gtk_container_remove (GTK_CONTAINER (self->inner_auth_box), GTK_WIDGET (elt->data));
- combo = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
- model = gtk_combo_box_get_model (GTK_COMBO_BOX (combo));
- gtk_combo_box_get_active_iter (GTK_COMBO_BOX (combo), &iter);
+ model = gtk_combo_box_get_model (self->inner_auth_combo);
+ gtk_combo_box_get_active_iter (self->inner_auth_combo, &iter);
gtk_tree_model_get (model, &iter, I_METHOD_COLUMN, &eap, -1);
g_assert (eap);
@@ -222,19 +199,17 @@ inner_auth_combo_changed_cb (EAPMethodPEAP *self)
if (self->size_group)
eap_method_add_to_size_group (eap, self->size_group);
- gtk_container_add (GTK_CONTAINER (box), eap_widget);
+ gtk_container_add (GTK_CONTAINER (self->inner_auth_box), eap_widget);
wireless_security_notify_changed (self->sec_parent);
}
-static GtkWidget *
+static void
inner_auth_combo_init (EAPMethodPEAP *method,
NMConnection *connection,
NMSetting8021x *s_8021x,
gboolean secrets_only)
{
- EAPMethod *parent = (EAPMethod *) method;
- GtkWidget *combo;
g_autoptr(GtkListStore) auth_model = NULL;
GtkTreeIter iter;
g_autoptr(EAPMethodSimple) em_mschap_v2 = NULL;
@@ -301,22 +276,19 @@ inner_auth_combo_init (EAPMethodPEAP *method,
if (phase2_auth && !strcasecmp (phase2_auth, "gtc"))
active = 2;
- combo = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
- g_assert (combo);
-
- gtk_combo_box_set_model (GTK_COMBO_BOX (combo), GTK_TREE_MODEL (auth_model));
- gtk_combo_box_set_active (GTK_COMBO_BOX (combo), active);
+ gtk_combo_box_set_model (method->inner_auth_combo, GTK_TREE_MODEL (auth_model));
+ gtk_combo_box_set_active (method->inner_auth_combo, active);
- g_signal_connect_swapped (combo, "changed", G_CALLBACK (inner_auth_combo_changed_cb), method);
- return combo;
+ g_signal_connect_swapped (method->inner_auth_combo, "changed", G_CALLBACK (inner_auth_combo_changed_cb), method);
}
static void
update_secrets (EAPMethod *parent, NMConnection *connection)
{
+ EAPMethodPEAP *self = (EAPMethodPEAP *) parent;
eap_method_phase2_update_secrets_helper (parent,
connection,
- GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "inner_auth_combo")),
+ self->inner_auth_combo,
I_METHOD_COLUMN);
}
@@ -334,7 +306,6 @@ eap_method_peap_new (WirelessSecurity *ws_parent,
{
EAPMethod *parent;
EAPMethodPEAP *method;
- GtkWidget *widget, *widget_ca_not_required_checkbox;
GtkFileFilter *filter;
NMSetting8021x *s_8021x = NULL;
const char *filename;
@@ -357,39 +328,43 @@ eap_method_peap_new (WirelessSecurity *ws_parent,
method->sec_parent = ws_parent;
method->is_editor = is_editor;
+ method->anon_identity_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "anon_identity_entry"));
+ method->anon_identity_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "anon_identity_label"));
+ method->ca_cert_button = GTK_FILE_CHOOSER_BUTTON (gtk_builder_get_object (parent->builder, "ca_cert_button"));
+ method->ca_cert_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "ca_cert_label"));
+ method->ca_cert_not_required_check = GTK_CHECK_BUTTON (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check"));
+ method->inner_auth_combo = GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
+ method->inner_auth_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "inner_auth_label"));
+ method->inner_auth_box = GTK_BOX (gtk_builder_get_object (parent->builder, "inner_auth_box"));
+ method->version_combo = GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "version_combo"));
+ method->version_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "version_label"));
+
if (connection)
s_8021x = nm_connection_get_setting_802_1x (connection);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check"));
- g_assert (widget);
- g_signal_connect_swapped (widget, "toggled", G_CALLBACK (ca_cert_not_required_toggled), method);
- widget_ca_not_required_checkbox = widget;
+ g_signal_connect_swapped (method->ca_cert_not_required_check, "toggled", G_CALLBACK (ca_cert_not_required_toggled), method);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_button"));
- g_assert (widget);
- gtk_file_chooser_set_local_only (GTK_FILE_CHOOSER (widget), TRUE);
- gtk_file_chooser_button_set_title (GTK_FILE_CHOOSER_BUTTON (widget),
+ gtk_file_chooser_set_local_only (GTK_FILE_CHOOSER (method->ca_cert_button), TRUE);
+ gtk_file_chooser_button_set_title (method->ca_cert_button,
_("Choose a Certificate Authority certificate"));
- g_signal_connect_swapped (widget, "selection-changed", G_CALLBACK (changed_cb), method);
+ g_signal_connect_swapped (method->ca_cert_button, "selection-changed", G_CALLBACK (changed_cb), method);
filter = eap_method_default_file_chooser_filter_new (FALSE);
- gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (widget), filter);
+ gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (method->ca_cert_button), filter);
if (connection && s_8021x) {
filename = NULL;
if (nm_setting_802_1x_get_ca_cert_scheme (s_8021x) == NM_SETTING_802_1X_CK_SCHEME_PATH) {
filename = nm_setting_802_1x_get_ca_cert_path (s_8021x);
if (filename)
- gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (widget), filename);
+ gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (method->ca_cert_button), filename);
}
- gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (widget_ca_not_required_checkbox),
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (method->ca_cert_not_required_check),
!filename && eap_method_ca_cert_ignore_get (parent, connection));
}
- widget = inner_auth_combo_init (method, connection, s_8021x, secrets_only);
+ inner_auth_combo_init (method, connection, s_8021x, secrets_only);
inner_auth_combo_changed_cb (method);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "version_combo"));
- g_assert (widget);
- gtk_combo_box_set_active (GTK_COMBO_BOX (widget), 0);
+ gtk_combo_box_set_active (method->version_combo, 0);
if (s_8021x) {
const char *peapver;
@@ -397,37 +372,27 @@ eap_method_peap_new (WirelessSecurity *ws_parent,
if (peapver) {
/* Index 0 is "Automatic" */
if (!strcmp (peapver, "0"))
- gtk_combo_box_set_active (GTK_COMBO_BOX (widget), 1);
+ gtk_combo_box_set_active (method->version_combo, 1);
else if (!strcmp (peapver, "1"))
- gtk_combo_box_set_active (GTK_COMBO_BOX (widget), 2);
+ gtk_combo_box_set_active (method->version_combo, 2);
}
}
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (changed_cb), method);
+ g_signal_connect_swapped (method->version_combo, "changed", G_CALLBACK (changed_cb), method);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "anon_identity_entry"));
if (s_8021x && nm_setting_802_1x_get_anonymous_identity (s_8021x))
- gtk_entry_set_text (GTK_ENTRY (widget), nm_setting_802_1x_get_anonymous_identity (s_8021x));
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (changed_cb), method);
+ gtk_entry_set_text (method->anon_identity_entry, nm_setting_802_1x_get_anonymous_identity (s_8021x));
+ g_signal_connect_swapped (method->anon_identity_entry, "changed", G_CALLBACK (changed_cb), method);
if (secrets_only) {
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "anon_identity_label"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "anon_identity_entry"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_label"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_button"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_label"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "version_label"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "version_combo"));
- gtk_widget_hide (widget);
+ gtk_widget_hide (GTK_WIDGET (method->anon_identity_label));
+ gtk_widget_hide (GTK_WIDGET (method->anon_identity_entry));
+ gtk_widget_hide (GTK_WIDGET (method->ca_cert_label));
+ gtk_widget_hide (GTK_WIDGET (method->ca_cert_button));
+ gtk_widget_hide (GTK_WIDGET (method->ca_cert_not_required_check));
+ gtk_widget_hide (GTK_WIDGET (method->inner_auth_label));
+ gtk_widget_hide (GTK_WIDGET (method->inner_auth_combo));
+ gtk_widget_hide (GTK_WIDGET (method->version_label));
+ gtk_widget_hide (GTK_WIDGET (method->version_combo));
}
return method;
diff --git a/panels/network/wireless-security/eap-method-simple.c b/panels/network/wireless-security/eap-method-simple.c
index 434d2f6da..8c4ca4edc 100644
--- a/panels/network/wireless-security/eap-method-simple.c
+++ b/panels/network/wireless-security/eap-method-simple.c
@@ -34,26 +34,27 @@
struct _EAPMethodSimple {
EAPMethod parent;
+ GtkGrid *grid;
+ GtkEntry *password_entry;
+ GtkLabel *password_label;
+ GtkToggleButton *show_password_check;
+ GtkEntry *username_entry;
+ GtkLabel *username_label;
+
WirelessSecurity *ws_parent;
EAPMethodSimpleType type;
EAPMethodSimpleFlags flags;
- GtkEntry *username_entry;
- GtkEntry *password_entry;
- GtkToggleButton *show_password;
guint idle_func_id;
};
static void
show_toggled_cb (EAPMethodSimple *self)
{
- EAPMethod *parent = (EAPMethod *) self;
- GtkWidget *widget;
gboolean visible;
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "show_password_check"));
- visible = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget));
+ visible = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (self->show_password_check));
gtk_entry_set_visibility (self->password_entry, visible);
}
@@ -100,15 +101,9 @@ validate (EAPMethod *parent, GError **error)
static void
add_to_size_group (EAPMethod *parent, GtkSizeGroup *group)
{
- GtkWidget *widget;
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "username_label"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "password_label"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
+ EAPMethodSimple *self = (EAPMethodSimple *) parent;
+ gtk_size_group_add_widget (group, GTK_WIDGET (self->username_label));
+ gtk_size_group_add_widget (group, GTK_WIDGET (self->password_label));
}
typedef struct {
@@ -180,10 +175,7 @@ fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFla
/* Update secret flags and popup when editing the connection */
if (!(method->flags & EAP_METHOD_SIMPLE_FLAG_SECRETS_ONLY)) {
- GtkWidget *passwd_entry = GTK_WIDGET (gtk_builder_get_object (parent->builder, "password_entry"));
- g_assert (passwd_entry);
-
- nma_utils_update_password_storage (passwd_entry, flags,
+ nma_utils_update_password_storage (GTK_WIDGET (method->password_entry), flags,
NM_SETTING (s_8021x), parent->password_flags_name);
}
}
@@ -191,8 +183,9 @@ fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFla
static void
update_secrets (EAPMethod *parent, NMConnection *connection)
{
+ EAPMethodSimple *self = (EAPMethodSimple *) parent;
helper_fill_secret_entry (connection,
- GTK_ENTRY (gtk_builder_get_object (parent->builder, "password_entry")),
+ self->password_entry,
NM_TYPE_SETTING_802_1X,
(HelperSecretFunc) nm_setting_802_1x_get_password);
}
@@ -216,10 +209,10 @@ password_storage_changed (EAPMethodSimple *method)
if (always_ask && !secrets_only) {
/* we always clear this button and do not restore it
* (because we want to hide the password). */
- gtk_toggle_button_set_active (method->show_password, FALSE);
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (method->show_password_check), FALSE);
}
- gtk_widget_set_sensitive (GTK_WIDGET (method->show_password),
+ gtk_widget_set_sensitive (GTK_WIDGET (method->show_password_check),
!always_ask || secrets_only);
if (!method->idle_func_id)
@@ -241,7 +234,7 @@ set_userpass_ui (EAPMethodSimple *method)
else
gtk_entry_set_text (method->password_entry, "");
- gtk_toggle_button_set_active (method->show_password, wireless_security_get_show_password (method->ws_parent));
+ gtk_toggle_button_set_active (method->show_password_check, wireless_security_get_show_password (method->ws_parent));
}
static void
@@ -257,23 +250,19 @@ widgets_unrealized (EAPMethodSimple *method)
gtk_entry_get_text (method->username_entry),
gtk_entry_get_text (method->password_entry),
always_ask_selected (method->password_entry),
- gtk_toggle_button_get_active (method->show_password));
+ gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (method->show_password_check)));
}
static void
destroy (EAPMethod *parent)
{
EAPMethodSimple *method = (EAPMethodSimple *) parent;
- GtkWidget *widget;
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "grid"));
- g_assert (widget);
- g_signal_handlers_disconnect_by_data (widget, method);
+ g_signal_handlers_disconnect_by_data (method->grid, method);
g_signal_handlers_disconnect_by_data (method->username_entry, method->ws_parent);
g_signal_handlers_disconnect_by_data (method->password_entry, method->ws_parent);
g_signal_handlers_disconnect_by_data (method->password_entry, method);
- g_signal_handlers_disconnect_by_data (method->show_password, method);
+ g_signal_handlers_disconnect_by_data (method->show_password_check, method);
nm_clear_g_source (&method->idle_func_id);
}
@@ -292,7 +281,6 @@ eap_method_simple_new (WirelessSecurity *ws_parent,
{
EAPMethod *parent;
EAPMethodSimple *method;
- GtkWidget *widget;
NMSetting8021x *s_8021x = NULL;
parent = eap_method_init (sizeof (EAPMethodSimple),
@@ -315,36 +303,32 @@ eap_method_simple_new (WirelessSecurity *ws_parent,
method->type = type;
g_assert (type < EAP_METHOD_SIMPLE_TYPE_LAST);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "grid"));
- g_assert (widget);
- g_signal_connect_swapped (widget, "realize", G_CALLBACK (widgets_realized), method);
- g_signal_connect_swapped (widget, "unrealize", G_CALLBACK (widgets_unrealized), method);
+ method->grid = GTK_GRID (gtk_builder_get_object (parent->builder, "grid"));
+ method->password_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "password_label"));
+ method->username_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "username_label"));
+ method->password_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "password_entry"));
+ method->show_password_check = GTK_TOGGLE_BUTTON (gtk_builder_get_object (parent->builder, "show_password_check"));
+ method->username_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "username_entry"));
+
+ g_signal_connect_swapped (method->grid, "realize", G_CALLBACK (widgets_realized), method);
+ g_signal_connect_swapped (method->grid, "unrealize", G_CALLBACK (widgets_unrealized), method);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "username_entry"));
- g_assert (widget);
- method->username_entry = GTK_ENTRY (widget);
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (changed_cb), method);
+ g_signal_connect_swapped (method->username_entry, "changed", G_CALLBACK (changed_cb), method);
if (method->flags & EAP_METHOD_SIMPLE_FLAG_SECRETS_ONLY)
- gtk_widget_set_sensitive (widget, FALSE);
+ gtk_widget_set_sensitive (GTK_WIDGET (method->username_entry), FALSE);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "password_entry"));
- g_assert (widget);
- method->password_entry = GTK_ENTRY (widget);
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (changed_cb), method);
+ g_signal_connect_swapped (method->password_entry, "changed", G_CALLBACK (changed_cb), method);
/* Create password-storage popup menu for password entry under entry's secondary icon */
if (connection)
s_8021x = nm_connection_get_setting_802_1x (connection);
- nma_utils_setup_password_storage (widget, 0, (NMSetting *) s_8021x, parent->password_flags_name,
+ nma_utils_setup_password_storage (GTK_WIDGET (method->password_entry), 0, (NMSetting *) s_8021x, parent->password_flags_name,
FALSE, flags & EAP_METHOD_SIMPLE_FLAG_SECRETS_ONLY);
g_signal_connect_swapped (method->password_entry, "notify::secondary-icon-name", G_CALLBACK (password_storage_changed), method);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "show_password_check"));
- g_assert (widget);
- method->show_password = GTK_TOGGLE_BUTTON (widget);
- g_signal_connect_swapped (widget, "toggled", G_CALLBACK (show_toggled_cb), method);
+ g_signal_connect_swapped (method->show_password_check, "toggled", G_CALLBACK (show_toggled_cb), method);
/* Initialize the UI fields with the security settings from method->ws_parent.
* This will be done again when the widget gets realized. It must be done here as well,
diff --git a/panels/network/wireless-security/eap-method-tls.c b/panels/network/wireless-security/eap-method-tls.c
index 5d261ddb8..3e722b844 100644
--- a/panels/network/wireless-security/eap-method-tls.c
+++ b/panels/network/wireless-security/eap-method-tls.c
@@ -34,6 +34,19 @@
struct _EAPMethodTLS {
EAPMethod parent;
+ GtkFileChooserButton *ca_cert_button;
+ GtkLabel *ca_cert_label;
+ GtkCheckButton *ca_cert_not_required_check;
+ GtkEntry *identity_entry;
+ GtkLabel *identity_label;
+ GtkFileChooserButton *private_key_button;
+ GtkLabel *private_key_label;
+ GtkEntry *private_key_password_entry;
+ GtkLabel *private_key_password_label;
+ GtkCheckButton *show_password_check;
+ GtkFileChooserButton *user_cert_button;
+ GtkLabel *user_cert_label;
+
WirelessSecurity *sec_parent;
gboolean editing_connection;
};
@@ -42,60 +55,51 @@ struct _EAPMethodTLS {
static void
show_toggled_cb (EAPMethodTLS *self)
{
- EAPMethod *method = (EAPMethod *) self;
- GtkWidget *widget;
gboolean visible;
- widget = GTK_WIDGET (gtk_builder_get_object (method->builder, "show_password_check"));
- visible = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget));
-
- widget = GTK_WIDGET (gtk_builder_get_object (method->builder, "private_key_password_entry"));
- gtk_entry_set_visibility (GTK_ENTRY (widget), visible);
+ visible = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (self->show_password_check));
+ gtk_entry_set_visibility (self->private_key_password_entry, visible);
}
static gboolean
validate (EAPMethod *parent, GError **error)
{
+ EAPMethodTLS *self = (EAPMethodTLS *) parent;
NMSetting8021xCKFormat format = NM_SETTING_802_1X_CK_FORMAT_UNKNOWN;
- GtkWidget *widget;
const char *password, *identity;
g_autoptr(GError) ca_cert_error = NULL;
g_autoptr(GError) private_key_error = NULL;
g_autoptr(GError) user_cert_error = NULL;
gboolean ret = TRUE;
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "identity_entry"));
- g_assert (widget);
- identity = gtk_entry_get_text (GTK_ENTRY (widget));
+ identity = gtk_entry_get_text (self->identity_entry);
if (!identity || !strlen (identity)) {
- widget_set_error (widget);
+ widget_set_error (GTK_WIDGET (self->identity_entry));
g_set_error_literal (error, NMA_ERROR, NMA_ERROR_GENERIC, _("missing EAP-TLS identity"));
ret = FALSE;
} else {
- widget_unset_error (widget);
+ widget_unset_error (GTK_WIDGET (self->identity_entry));
}
- if (!eap_method_validate_filepicker (GTK_FILE_CHOOSER (gtk_builder_get_object (parent->builder, "ca_cert_button")),
+ if (!eap_method_validate_filepicker (GTK_FILE_CHOOSER (self->ca_cert_button),
TYPE_CA_CERT, NULL, NULL, &ca_cert_error)) {
- widget_set_error (GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_button")));
+ widget_set_error (GTK_WIDGET (self->ca_cert_button));
if (ret) {
g_set_error (error, NMA_ERROR, NMA_ERROR_GENERIC, _("invalid EAP-TLS CA certificate: %s"), ca_cert_error->message);
ret = FALSE;
}
- } else if (eap_method_ca_cert_required (GTK_TOGGLE_BUTTON (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check")),
- GTK_FILE_CHOOSER (gtk_builder_get_object (parent->builder, "ca_cert_button")))) {
- widget_set_error (GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_button")));
+ } else if (eap_method_ca_cert_required (GTK_TOGGLE_BUTTON (self->ca_cert_not_required_check),
+ GTK_FILE_CHOOSER (self->ca_cert_button))) {
+ widget_set_error (GTK_WIDGET (self->ca_cert_button));
if (ret) {
g_set_error_literal (error, NMA_ERROR, NMA_ERROR_GENERIC, _("invalid EAP-TLS CA certificate: no certificate specified"));
ret = FALSE;
}
}
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "private_key_password_entry"));
- g_assert (widget);
- password = gtk_entry_get_text (GTK_ENTRY (widget));
+ password = gtk_entry_get_text (self->private_key_password_entry);
- if (!eap_method_validate_filepicker (GTK_FILE_CHOOSER (gtk_builder_get_object (parent->builder, "private_key_button")),
+ if (!eap_method_validate_filepicker (GTK_FILE_CHOOSER (self->private_key_button),
TYPE_PRIVATE_KEY,
password,
&format,
@@ -104,17 +108,17 @@ validate (EAPMethod *parent, GError **error)
g_set_error (error, NMA_ERROR, NMA_ERROR_GENERIC, _("invalid EAP-TLS private-key: %s"), private_key_error->message);
ret = FALSE;
}
- widget_set_error (GTK_WIDGET (gtk_builder_get_object (parent->builder, "private_key_button")));
+ widget_set_error (GTK_WIDGET (self->private_key_button));
}
if (format != NM_SETTING_802_1X_CK_FORMAT_PKCS12) {
- if (!eap_method_validate_filepicker (GTK_FILE_CHOOSER (gtk_builder_get_object (parent->builder, "user_cert_button")),
+ if (!eap_method_validate_filepicker (GTK_FILE_CHOOSER (self->user_cert_button),
TYPE_CLIENT_CERT, NULL, NULL, &user_cert_error)) {
if (ret) {
g_set_error (error, NMA_ERROR, NMA_ERROR_GENERIC, _("invalid EAP-TLS user-certificate: %s"), user_cert_error->message);
ret = FALSE;
}
- widget_set_error (GTK_WIDGET (gtk_builder_get_object (parent->builder, "user_cert_button")));
+ widget_set_error (GTK_WIDGET (self->user_cert_button));
}
}
@@ -124,41 +128,22 @@ validate (EAPMethod *parent, GError **error)
static void
ca_cert_not_required_toggled (EAPMethodTLS *self)
{
- EAPMethod *parent = (EAPMethod *) self;
-
- eap_method_ca_cert_not_required_toggled (GTK_TOGGLE_BUTTON (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check")),
- GTK_FILE_CHOOSER (gtk_builder_get_object (parent->builder, "ca_cert_button")));
+ eap_method_ca_cert_not_required_toggled (GTK_TOGGLE_BUTTON (self->ca_cert_not_required_check),
+ GTK_FILE_CHOOSER (self->ca_cert_button));
wireless_security_notify_changed (self->sec_parent);
}
static void
add_to_size_group (EAPMethod *parent, GtkSizeGroup *group)
{
- GtkWidget *widget;
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "identity_label"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "user_cert_label"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_label"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "private_key_label"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "private_key_password_label"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
+ EAPMethodTLS *self = (EAPMethodTLS *) parent;
+
+ gtk_size_group_add_widget (group, GTK_WIDGET (self->ca_cert_not_required_check));
+ gtk_size_group_add_widget (group, GTK_WIDGET (self->identity_label));
+ gtk_size_group_add_widget (group, GTK_WIDGET (self->user_cert_label));
+ gtk_size_group_add_widget (group, GTK_WIDGET (self->ca_cert_label));
+ gtk_size_group_add_widget (group, GTK_WIDGET (self->private_key_label));
+ gtk_size_group_add_widget (group, GTK_WIDGET (self->private_key_password_label));
}
static void
@@ -168,7 +153,6 @@ fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFla
NMSetting8021xCKFormat format = NM_SETTING_802_1X_CK_FORMAT_UNKNOWN;
NMSetting8021x *s_8021x;
NMSettingSecretFlags secret_flags;
- GtkWidget *widget, *passwd_entry;
g_autofree gchar *ca_filename = NULL;
g_autofree gchar *pk_filename = NULL;
const char *password = NULL;
@@ -182,20 +166,12 @@ fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFla
else
nm_setting_802_1x_add_eap_method (s_8021x, "tls");
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "identity_entry"));
- g_assert (widget);
- g_object_set (s_8021x, NM_SETTING_802_1X_IDENTITY, gtk_entry_get_text (GTK_ENTRY (widget)), NULL);
+ g_object_set (s_8021x, NM_SETTING_802_1X_IDENTITY, gtk_entry_get_text (method->identity_entry), NULL);
/* TLS private key */
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "private_key_password_entry"));
- g_assert (widget);
- password = gtk_entry_get_text (GTK_ENTRY (widget));
- g_assert (password);
- passwd_entry = widget;
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "private_key_button"));
- g_assert (widget);
- pk_filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (widget));
+ password = gtk_entry_get_text (method->private_key_password_entry);
+
+ pk_filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (method->private_key_button));
g_assert (pk_filename);
if (parent->phase2) {
@@ -209,13 +185,13 @@ fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFla
}
/* Save 802.1X password flags to the connection */
- secret_flags = nma_utils_menu_to_secret_flags (passwd_entry);
+ secret_flags = nma_utils_menu_to_secret_flags (GTK_WIDGET (method->private_key_password_entry));
nm_setting_set_secret_flags (NM_SETTING (s_8021x), parent->password_flags_name,
secret_flags, NULL);
/* Update secret flags and popup when editing the connection */
if (method->editing_connection) {
- nma_utils_update_password_storage (passwd_entry, secret_flags,
+ nma_utils_update_password_storage (GTK_WIDGET (method->private_key_password_entry), secret_flags,
NM_SETTING (s_8021x), parent->password_flags_name);
}
@@ -226,9 +202,7 @@ fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFla
/* If the key is pkcs#12 nm_setting_802_1x_set_private_key() already
* set the client certificate for us.
*/
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "user_cert_button"));
- g_assert (widget);
- cc_filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (widget));
+ cc_filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (method->user_cert_button));
g_assert (cc_filename);
format = NM_SETTING_802_1X_CK_FORMAT_UNKNOWN;
@@ -244,9 +218,7 @@ fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFla
}
/* TLS CA certificate */
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_button"));
- g_assert (widget);
- ca_filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (widget));
+ ca_filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (method->ca_cert_button));
format = NM_SETTING_802_1X_CK_FORMAT_UNKNOWN;
if (parent->phase2) {
@@ -268,25 +240,22 @@ fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFla
static void
private_key_picker_helper (EAPMethod *parent, const char *filename, gboolean changed)
{
+ EAPMethodTLS *self = (EAPMethodTLS *) parent;
g_autoptr(NMSetting8021x) setting = NULL;
NMSetting8021xCKFormat cert_format = NM_SETTING_802_1X_CK_FORMAT_UNKNOWN;
const char *password;
- GtkWidget *widget;
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "private_key_password_entry"));
- g_assert (widget);
- password = gtk_entry_get_text (GTK_ENTRY (widget));
+ password = gtk_entry_get_text (self->private_key_password_entry);
setting = (NMSetting8021x *) nm_setting_802_1x_new ();
nm_setting_802_1x_set_private_key (setting, filename, password, NM_SETTING_802_1X_CK_SCHEME_PATH, &cert_format, NULL);
/* With PKCS#12, the client cert must be the same as the private key */
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "user_cert_button"));
if (cert_format == NM_SETTING_802_1X_CK_FORMAT_PKCS12) {
- gtk_file_chooser_unselect_all (GTK_FILE_CHOOSER (widget));
- gtk_widget_set_sensitive (widget, FALSE);
+ gtk_file_chooser_unselect_all (GTK_FILE_CHOOSER (self->user_cert_button));
+ gtk_widget_set_sensitive (GTK_WIDGET (self->user_cert_button), FALSE);
} else if (changed)
- gtk_widget_set_sensitive (widget, TRUE);
+ gtk_widget_set_sensitive (GTK_WIDGET (self->user_cert_button), TRUE);
/* Warn the user if the private key is unencrypted */
if (!eap_method_is_encrypted_private_key (filename)) {
@@ -394,12 +363,12 @@ setup_filepicker (GtkFileChooserButton *button,
static void
update_secrets (EAPMethod *parent, NMConnection *connection)
{
+ EAPMethodTLS *self = (EAPMethodTLS *) parent;
NMSetting8021x *s_8021x;
HelperSecretFunc password_func;
SchemeFunc scheme_func;
PathFunc path_func;
const char *filename;
- GtkWidget *widget;
if (parent->phase2) {
password_func = (HelperSecretFunc) nm_setting_802_1x_get_phase2_private_key_password;
@@ -412,7 +381,7 @@ update_secrets (EAPMethod *parent, NMConnection *connection)
}
helper_fill_secret_entry (connection,
- GTK_ENTRY (gtk_builder_get_object (parent->builder, "private_key_password_entry")),
+ self->private_key_password_entry,
NM_TYPE_SETTING_802_1X,
password_func);
@@ -420,11 +389,8 @@ update_secrets (EAPMethod *parent, NMConnection *connection)
s_8021x = nm_connection_get_setting_802_1x (connection);
if (s_8021x && (scheme_func (s_8021x) == NM_SETTING_802_1X_CK_SCHEME_PATH)) {
filename = path_func (s_8021x);
- if (filename) {
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "private_key_button"));
- g_assert (widget);
- gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (widget), filename);
- }
+ if (filename)
+ gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (self->private_key_button), filename);
}
}
@@ -436,7 +402,6 @@ eap_method_tls_new (WirelessSecurity *ws_parent,
{
EAPMethodTLS *method;
EAPMethod *parent;
- GtkWidget *widget;
NMSetting8021x *s_8021x = NULL;
gboolean ca_not_required = FALSE;
@@ -460,78 +425,72 @@ eap_method_tls_new (WirelessSecurity *ws_parent,
method->sec_parent = ws_parent;
method->editing_connection = secrets_only ? FALSE : TRUE;
+ method->ca_cert_button = GTK_FILE_CHOOSER_BUTTON (gtk_builder_get_object (parent->builder, "ca_cert_button"));
+ method->ca_cert_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "ca_cert_label"));
+ method->ca_cert_not_required_check = GTK_CHECK_BUTTON (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check"));
+ method->identity_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "identity_entry"));
+ method->identity_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "identity_label"));
+ method->private_key_button = GTK_FILE_CHOOSER_BUTTON (gtk_builder_get_object (parent->builder, "private_key_button"));
+ method->private_key_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "private_key_label"));
+ method->private_key_password_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "private_key_password_entry"));
+ method->private_key_password_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "private_key_password_label"));
+ method->show_password_check = GTK_CHECK_BUTTON (gtk_builder_get_object (parent->builder, "show_password_check"));
+ method->user_cert_button = GTK_FILE_CHOOSER_BUTTON (gtk_builder_get_object (parent->builder, "user_cert_button"));
+ method->user_cert_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "user_cert_label"));
+
if (connection)
s_8021x = nm_connection_get_setting_802_1x (connection);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check"));
- g_assert (widget);
- g_signal_connect_swapped (widget, "toggled", G_CALLBACK (ca_cert_not_required_toggled), method);
+ g_signal_connect_swapped (method->ca_cert_not_required_check, "toggled", G_CALLBACK (ca_cert_not_required_toggled), method);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "identity_entry"));
- g_assert (widget);
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (changed_cb), method);
+ g_signal_connect_swapped (method->identity_entry, "changed", G_CALLBACK (changed_cb), method);
if (s_8021x && nm_setting_802_1x_get_identity (s_8021x))
- gtk_entry_set_text (GTK_ENTRY (widget), nm_setting_802_1x_get_identity (s_8021x));
+ gtk_entry_set_text (method->identity_entry, nm_setting_802_1x_get_identity (s_8021x));
- setup_filepicker (GTK_FILE_CHOOSER_BUTTON (gtk_builder_get_object (parent->builder, "user_cert_button")),
+ setup_filepicker (method->user_cert_button,
_("Choose your personal certificate"),
ws_parent, parent, s_8021x,
phase2 ? nm_setting_802_1x_get_phase2_client_cert_scheme : nm_setting_802_1x_get_client_cert_scheme,
phase2 ? nm_setting_802_1x_get_phase2_client_cert_path : nm_setting_802_1x_get_client_cert_path,
FALSE, TRUE);
- setup_filepicker (GTK_FILE_CHOOSER_BUTTON (gtk_builder_get_object (parent->builder, "ca_cert_button")),
+ setup_filepicker (method->ca_cert_button,
_("Choose a Certificate Authority certificate"),
ws_parent, parent, s_8021x,
phase2 ? nm_setting_802_1x_get_phase2_ca_cert_scheme : nm_setting_802_1x_get_ca_cert_scheme,
phase2 ? nm_setting_802_1x_get_phase2_ca_cert_path : nm_setting_802_1x_get_ca_cert_path,
FALSE, FALSE);
- setup_filepicker (GTK_FILE_CHOOSER_BUTTON (gtk_builder_get_object (parent->builder, "private_key_button")),
+ setup_filepicker (method->private_key_button,
_("Choose your private key"),
ws_parent, parent, s_8021x,
phase2 ? nm_setting_802_1x_get_phase2_private_key_scheme : nm_setting_802_1x_get_private_key_scheme,
phase2 ? nm_setting_802_1x_get_phase2_private_key_path : nm_setting_802_1x_get_private_key_path,
TRUE, FALSE);
- if (connection && eap_method_ca_cert_ignore_get (parent, connection)) {
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_button"));
- ca_not_required = !gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (widget));
- }
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check"));
- gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (widget), ca_not_required);
+ if (connection && eap_method_ca_cert_ignore_get (parent, connection))
+ ca_not_required = !gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (method->ca_cert_button));
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (method->ca_cert_not_required_check), ca_not_required);
/* Fill secrets, if any */
if (connection)
update_secrets (parent, connection);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "private_key_password_entry"));
- g_assert (widget);
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (changed_cb), method);
+ g_signal_connect_swapped (method->private_key_password_entry, "changed", G_CALLBACK (changed_cb), method);
/* Create password-storage popup menu for password entry under entry's secondary icon */
- nma_utils_setup_password_storage (widget, 0, (NMSetting *) s_8021x, parent->password_flags_name,
+ nma_utils_setup_password_storage (GTK_WIDGET (method->private_key_password_entry), 0, (NMSetting *) s_8021x, parent->password_flags_name,
FALSE, secrets_only);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "show_password_check"));
- g_assert (widget);
- g_signal_connect_swapped (widget, "toggled", G_CALLBACK (show_toggled_cb), method);
+ g_signal_connect_swapped (method->show_password_check, "toggled", G_CALLBACK (show_toggled_cb), method);
if (secrets_only) {
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "identity_entry"));
- gtk_widget_set_sensitive (widget, FALSE);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "user_cert_label"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "user_cert_button"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "private_key_label"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "private_key_button"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_label"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_button"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check"));
- gtk_widget_hide (widget);
+ gtk_widget_set_sensitive (GTK_WIDGET (method->identity_entry), FALSE);
+ gtk_widget_hide (GTK_WIDGET (method->user_cert_label));
+ gtk_widget_hide (GTK_WIDGET (method->user_cert_button));
+ gtk_widget_hide (GTK_WIDGET (method->private_key_label));
+ gtk_widget_hide (GTK_WIDGET (method->private_key_button));
+ gtk_widget_hide (GTK_WIDGET (method->ca_cert_label));
+ gtk_widget_hide (GTK_WIDGET (method->ca_cert_button));
+ gtk_widget_hide (GTK_WIDGET (method->ca_cert_not_required_check));
}
return method;
diff --git a/panels/network/wireless-security/eap-method-ttls.c b/panels/network/wireless-security/eap-method-ttls.c
index 81ebc1553..c5ce84378 100644
--- a/panels/network/wireless-security/eap-method-ttls.c
+++ b/panels/network/wireless-security/eap-method-ttls.c
@@ -35,6 +35,17 @@
struct _EAPMethodTTLS {
EAPMethod parent;
+ GtkEntry *anon_identity_entry;
+ GtkLabel *anon_identity_label;
+ GtkFileChooserButton *ca_cert_button;
+ GtkLabel *ca_cert_label;
+ GtkCheckButton *ca_cert_not_required_check;
+ GtkEntry *domain_match_entry;
+ GtkLabel *domain_match_label;
+ GtkComboBox *inner_auth_combo;
+ GtkLabel *inner_auth_label;
+ GtkBox *inner_auth_box;
+
GtkSizeGroup *size_group;
WirelessSecurity *sec_parent;
gboolean is_editor;
@@ -52,29 +63,26 @@ destroy (EAPMethod *parent)
static gboolean
validate (EAPMethod *parent, GError **error)
{
- GtkWidget *widget;
+ EAPMethodTTLS *self = (EAPMethodTTLS *) parent;
GtkTreeModel *model;
GtkTreeIter iter;
g_autoptr(EAPMethod) eap = NULL;
gboolean valid = FALSE;
g_autoptr(GError) local_error = NULL;
- if (!eap_method_validate_filepicker (GTK_FILE_CHOOSER (gtk_builder_get_object (parent->builder, "ca_cert_button")),
+ if (!eap_method_validate_filepicker (GTK_FILE_CHOOSER (self->ca_cert_button),
TYPE_CA_CERT, NULL, NULL, &local_error)) {
g_set_error (error, NMA_ERROR, NMA_ERROR_GENERIC, _("invalid EAP-TTLS CA certificate: %s"), local_error->message);
return FALSE;
}
- if (eap_method_ca_cert_required (GTK_TOGGLE_BUTTON (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check")),
- GTK_FILE_CHOOSER (gtk_builder_get_object (parent->builder, "ca_cert_button")))) {
+ if (eap_method_ca_cert_required (GTK_TOGGLE_BUTTON (self->ca_cert_not_required_check),
+ GTK_FILE_CHOOSER (self->ca_cert_button))) {
g_set_error_literal (error, NMA_ERROR, NMA_ERROR_GENERIC, _("invalid EAP-TTLS CA certificate: no certificate specified"));
return FALSE;
}
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
- g_assert (widget);
-
- model = gtk_combo_box_get_model (GTK_COMBO_BOX (widget));
- gtk_combo_box_get_active_iter (GTK_COMBO_BOX (widget), &iter);
+ model = gtk_combo_box_get_model (self->inner_auth_combo);
+ gtk_combo_box_get_active_iter (self->inner_auth_combo, &iter);
gtk_tree_model_get (model, &iter, I_METHOD_COLUMN, &eap, -1);
g_assert (eap);
valid = eap_method_validate (eap, error);
@@ -84,9 +92,8 @@ validate (EAPMethod *parent, GError **error)
static void
ca_cert_not_required_toggled (EAPMethodTTLS *self)
{
- EAPMethod *parent = (EAPMethod *) self;
- eap_method_ca_cert_not_required_toggled (GTK_TOGGLE_BUTTON (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check")),
- GTK_FILE_CHOOSER (gtk_builder_get_object (parent->builder, "ca_cert_button")));
+ eap_method_ca_cert_not_required_toggled (GTK_TOGGLE_BUTTON (self->ca_cert_not_required_check),
+ GTK_FILE_CHOOSER (self->ca_cert_button));
wireless_security_notify_changed (self->sec_parent);
}
@@ -94,7 +101,6 @@ static void
add_to_size_group (EAPMethod *parent, GtkSizeGroup *group)
{
EAPMethodTTLS *method = (EAPMethodTTLS *) parent;
- GtkWidget *widget;
GtkTreeModel *model;
GtkTreeIter iter;
g_autoptr(EAPMethod) eap = NULL;
@@ -103,31 +109,14 @@ add_to_size_group (EAPMethod *parent, GtkSizeGroup *group)
g_object_unref (method->size_group);
method->size_group = g_object_ref (group);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "anon_identity_label"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "domain_match_label"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_label"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_label"));
- g_assert (widget);
- gtk_size_group_add_widget (group, widget);
+ gtk_size_group_add_widget (group, GTK_WIDGET (method->ca_cert_not_required_check));
+ gtk_size_group_add_widget (group, GTK_WIDGET (method->anon_identity_label));
+ gtk_size_group_add_widget (group, GTK_WIDGET (method->domain_match_label));
+ gtk_size_group_add_widget (group, GTK_WIDGET (method->ca_cert_label));
+ gtk_size_group_add_widget (group, GTK_WIDGET (method->inner_auth_label));
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
- g_assert (widget);
-
- model = gtk_combo_box_get_model (GTK_COMBO_BOX (widget));
- gtk_combo_box_get_active_iter (GTK_COMBO_BOX (widget), &iter);
+ model = gtk_combo_box_get_model (method->inner_auth_combo);
+ gtk_combo_box_get_active_iter (method->inner_auth_combo, &iter);
gtk_tree_model_get (model, &iter, I_METHOD_COLUMN, &eap, -1);
g_assert (eap);
eap_method_add_to_size_group (eap, group);
@@ -136,9 +125,9 @@ add_to_size_group (EAPMethod *parent, GtkSizeGroup *group)
static void
fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFlags flags)
{
+ EAPMethodTTLS *self = (EAPMethodTTLS *) parent;
NMSetting8021x *s_8021x;
NMSetting8021xCKFormat format = NM_SETTING_802_1X_CK_FORMAT_UNKNOWN;
- GtkWidget *widget;
const char *text;
g_autofree gchar *filename = NULL;
g_autoptr(EAPMethod) eap = NULL;
@@ -152,30 +141,23 @@ fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFla
nm_setting_802_1x_add_eap_method (s_8021x, "ttls");
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "anon_identity_entry"));
- g_assert (widget);
- text = gtk_entry_get_text (GTK_ENTRY (widget));
+ text = gtk_entry_get_text (self->anon_identity_entry);
if (text && strlen (text))
g_object_set (s_8021x, NM_SETTING_802_1X_ANONYMOUS_IDENTITY, text, NULL);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "domain_match_entry"));
- g_assert (widget);
- text = gtk_entry_get_text (GTK_ENTRY (widget));
+ text = gtk_entry_get_text (self->domain_match_entry);
if (text && strlen (text))
g_object_set (s_8021x, NM_SETTING_802_1X_DOMAIN_SUFFIX_MATCH, text, NULL);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_button"));
- g_assert (widget);
- filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (widget));
+ filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (self->ca_cert_button));
if (!nm_setting_802_1x_set_ca_cert (s_8021x, filename, NM_SETTING_802_1X_CK_SCHEME_PATH, &format, &error)) {
g_warning ("Couldn't read CA certificate '%s': %s", filename, error ? error->message : "(unknown)");
ca_cert_error = TRUE;
}
eap_method_ca_cert_ignore_set (parent, connection, filename, ca_cert_error);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
- model = gtk_combo_box_get_model (GTK_COMBO_BOX (widget));
- gtk_combo_box_get_active_iter (GTK_COMBO_BOX (widget), &iter);
+ model = gtk_combo_box_get_model (self->inner_auth_combo);
+ gtk_combo_box_get_active_iter (self->inner_auth_combo, &iter);
gtk_tree_model_get (model, &iter, I_METHOD_COLUMN, &eap, -1);
g_assert (eap);
@@ -185,26 +167,20 @@ fill_connection (EAPMethod *parent, NMConnection *connection, NMSettingSecretFla
static void
inner_auth_combo_changed_cb (EAPMethodTTLS *self)
{
- EAPMethod *parent = (EAPMethod *) self;
- GtkWidget *combo, *box;
g_autoptr(EAPMethod) eap = NULL;
GList *elt, *children;
GtkTreeModel *model;
GtkTreeIter iter;
GtkWidget *eap_widget;
- combo = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
- box = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_box"));
- g_assert (box);
-
/* Remove any previous wireless security widgets */
- children = gtk_container_get_children (GTK_CONTAINER (box));
+ children = gtk_container_get_children (GTK_CONTAINER (self->inner_auth_box));
for (elt = children; elt; elt = g_list_next (elt))
- gtk_container_remove (GTK_CONTAINER (box), GTK_WIDGET (elt->data));
+ gtk_container_remove (GTK_CONTAINER (self->inner_auth_box), GTK_WIDGET (elt->data));
g_list_free (children);
- model = gtk_combo_box_get_model (GTK_COMBO_BOX (combo));
- gtk_combo_box_get_active_iter (GTK_COMBO_BOX (combo), &iter);
+ model = gtk_combo_box_get_model (self->inner_auth_combo);
+ gtk_combo_box_get_active_iter (self->inner_auth_combo, &iter);
gtk_tree_model_get (model, &iter, I_METHOD_COLUMN, &eap, -1);
g_assert (eap);
@@ -214,19 +190,17 @@ inner_auth_combo_changed_cb (EAPMethodTTLS *self)
if (self->size_group)
eap_method_add_to_size_group (eap, self->size_group);
- gtk_container_add (GTK_CONTAINER (box), eap_widget);
+ gtk_container_add (GTK_CONTAINER (self->inner_auth_box), eap_widget);
wireless_security_notify_changed (self->sec_parent);
}
-static GtkWidget *
+static void
inner_auth_combo_init (EAPMethodTTLS *method,
NMConnection *connection,
NMSetting8021x *s_8021x,
gboolean secrets_only)
{
- EAPMethod *parent = (EAPMethod *) method;
- GtkWidget *combo;
g_autoptr(GtkListStore) auth_model = NULL;
GtkTreeIter iter;
g_autoptr(EAPMethodSimple) em_pap = NULL;
@@ -355,22 +329,19 @@ inner_auth_combo_init (EAPMethodTTLS *method,
if (phase2_auth && !strcasecmp (phase2_auth, "gtc"))
active = 6;
- combo = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
- g_assert (combo);
+ gtk_combo_box_set_model (method->inner_auth_combo, GTK_TREE_MODEL (auth_model));
+ gtk_combo_box_set_active (method->inner_auth_combo, active);
- gtk_combo_box_set_model (GTK_COMBO_BOX (combo), GTK_TREE_MODEL (auth_model));
- gtk_combo_box_set_active (GTK_COMBO_BOX (combo), active);
-
- g_signal_connect_swapped (combo, "changed", G_CALLBACK (inner_auth_combo_changed_cb), method);
- return combo;
+ g_signal_connect_swapped (method->inner_auth_combo, "changed", G_CALLBACK (inner_auth_combo_changed_cb), method);
}
static void
update_secrets (EAPMethod *parent, NMConnection *connection)
{
+ EAPMethodTTLS *self = (EAPMethodTTLS *) parent;
eap_method_phase2_update_secrets_helper (parent,
connection,
- GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "inner_auth_combo")),
+ self->inner_auth_combo,
I_METHOD_COLUMN);
}
@@ -388,7 +359,6 @@ eap_method_ttls_new (WirelessSecurity *ws_parent,
{
EAPMethod *parent;
EAPMethodTTLS *method;
- GtkWidget *widget, *widget_ca_not_required_checkbox;
GtkFileFilter *filter;
NMSetting8021x *s_8021x = NULL;
const char *filename;
@@ -411,64 +381,59 @@ eap_method_ttls_new (WirelessSecurity *ws_parent,
method->sec_parent = ws_parent;
method->is_editor = is_editor;
+ method->anon_identity_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "anon_identity_entry"));
+ method->anon_identity_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "anon_identity_label"));
+ method->ca_cert_button = GTK_FILE_CHOOSER_BUTTON (gtk_builder_get_object (parent->builder, "ca_cert_button"));
+ method->ca_cert_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "ca_cert_label"));
+ method->ca_cert_not_required_check = GTK_CHECK_BUTTON (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check"));
+ method->domain_match_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "domain_match_entry"));
+ method->domain_match_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "domain_match_label"));
+ method->inner_auth_combo = GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
+ method->inner_auth_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "inner_auth_label"));
+ method->inner_auth_box = GTK_BOX (gtk_builder_get_object (parent->builder, "inner_auth_box"));
+
if (connection)
s_8021x = nm_connection_get_setting_802_1x (connection);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check"));
- g_assert (widget);
- g_signal_connect_swapped (widget, "toggled", G_CALLBACK (ca_cert_not_required_toggled), method);
- widget_ca_not_required_checkbox = widget;
+ g_signal_connect_swapped (method->ca_cert_not_required_check, "toggled", G_CALLBACK (ca_cert_not_required_toggled), method);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_button"));
- g_assert (widget);
- gtk_file_chooser_set_local_only (GTK_FILE_CHOOSER (widget), TRUE);
- gtk_file_chooser_button_set_title (GTK_FILE_CHOOSER_BUTTON (widget),
+ gtk_file_chooser_set_local_only (GTK_FILE_CHOOSER (method->ca_cert_button), TRUE);
+ gtk_file_chooser_button_set_title (method->ca_cert_button,
_("Choose a Certificate Authority certificate"));
- g_signal_connect_swapped (widget, "selection-changed", G_CALLBACK (changed_cb), method);
+ g_signal_connect_swapped (method->ca_cert_button, "selection-changed", G_CALLBACK (changed_cb), method);
filter = eap_method_default_file_chooser_filter_new (FALSE);
- gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (widget), filter);
+ gtk_file_chooser_add_filter (GTK_FILE_CHOOSER (method->ca_cert_button), filter);
if (connection && s_8021x) {
filename = NULL;
if (nm_setting_802_1x_get_ca_cert_scheme (s_8021x) == NM_SETTING_802_1X_CK_SCHEME_PATH) {
filename = nm_setting_802_1x_get_ca_cert_path (s_8021x);
if (filename)
- gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (widget), filename);
+ gtk_file_chooser_set_filename (GTK_FILE_CHOOSER (method->ca_cert_button), filename);
}
- gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (widget_ca_not_required_checkbox),
+ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (method->ca_cert_not_required_check),
!filename && eap_method_ca_cert_ignore_get (parent, connection));
}
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "anon_identity_entry"));
if (s_8021x && nm_setting_802_1x_get_anonymous_identity (s_8021x))
- gtk_entry_set_text (GTK_ENTRY (widget), nm_setting_802_1x_get_anonymous_identity (s_8021x));
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (changed_cb), method);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "domain_match_entry"));
+ gtk_entry_set_text (method->anon_identity_entry, nm_setting_802_1x_get_anonymous_identity (s_8021x));
+ g_signal_connect_swapped (method->anon_identity_entry, "changed", G_CALLBACK (changed_cb), method);
if (s_8021x && nm_setting_802_1x_get_domain_suffix_match (s_8021x))
- gtk_entry_set_text (GTK_ENTRY (widget), nm_setting_802_1x_get_domain_suffix_match (s_8021x));
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (changed_cb), method);
+ gtk_entry_set_text (method->domain_match_entry, nm_setting_802_1x_get_domain_suffix_match (s_8021x));
+ g_signal_connect_swapped (method->domain_match_entry, "changed", G_CALLBACK (changed_cb), method);
- widget = inner_auth_combo_init (method, connection, s_8021x, secrets_only);
+ inner_auth_combo_init (method, connection, s_8021x, secrets_only);
inner_auth_combo_changed_cb (method);
if (secrets_only) {
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "anon_identity_label"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "anon_identity_entry"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "domain_match_label"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "domain_match_entry"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_label"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_button"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_label"));
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
- gtk_widget_hide (widget);
+ gtk_widget_hide (GTK_WIDGET (method->anon_identity_label));
+ gtk_widget_hide (GTK_WIDGET (method->anon_identity_entry));
+ gtk_widget_hide (GTK_WIDGET (method->domain_match_label));
+ gtk_widget_hide (GTK_WIDGET (method->domain_match_entry));
+ gtk_widget_hide (GTK_WIDGET (method->ca_cert_label));
+ gtk_widget_hide (GTK_WIDGET (method->ca_cert_button));
+ gtk_widget_hide (GTK_WIDGET (method->ca_cert_not_required_check));
+ gtk_widget_hide (GTK_WIDGET (method->inner_auth_label));
+ gtk_widget_hide (GTK_WIDGET (method->inner_auth_combo));
}
return method;
diff --git a/panels/network/wireless-security/ws-dynamic-wep.c b/panels/network/wireless-security/ws-dynamic-wep.c
index 2d28295d7..f4a1fad58 100644
--- a/panels/network/wireless-security/ws-dynamic-wep.c
+++ b/panels/network/wireless-security/ws-dynamic-wep.c
@@ -32,6 +32,11 @@
struct _WirelessSecurityDynamicWEP {
WirelessSecurity parent;
+ GtkComboBox *auth_combo;
+ GtkLabel *auth_label;
+ GtkGrid *grid;
+ GtkBox *method_box;
+
GtkSizeGroup *size_group;
};
@@ -47,13 +52,15 @@ destroy (WirelessSecurity *parent)
static GtkWidget *
get_widget (WirelessSecurity *parent)
{
- return GTK_WIDGET (gtk_builder_get_object (parent->builder, "grid"));
+ WirelessSecurityDynamicWEP *self = (WirelessSecurityDynamicWEP *) parent;
+ return GTK_WIDGET (self->grid);
}
static gboolean
validate (WirelessSecurity *parent, GError **error)
{
- return ws_802_1x_validate (GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "auth_combo")), error);
+ WirelessSecurityDynamicWEP *self = (WirelessSecurityDynamicWEP *) parent;
+ return ws_802_1x_validate (self->auth_combo, error);
}
static void
@@ -65,17 +72,16 @@ add_to_size_group (WirelessSecurity *parent, GtkSizeGroup *group)
g_object_unref (sec->size_group);
sec->size_group = g_object_ref (group);
- ws_802_1x_add_to_size_group (sec->size_group,
- GTK_LABEL (gtk_builder_get_object (parent->builder, "auth_label")),
- GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "auth_combo")));
+ ws_802_1x_add_to_size_group (sec->size_group, sec->auth_label, sec->auth_combo);
}
static void
fill_connection (WirelessSecurity *parent, NMConnection *connection)
{
+ WirelessSecurityDynamicWEP *self = (WirelessSecurityDynamicWEP *) parent;
NMSettingWirelessSecurity *s_wireless_sec;
- ws_802_1x_fill_connection (GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "auth_combo")), connection);
+ ws_802_1x_fill_connection (self->auth_combo, connection);
s_wireless_sec = nm_connection_get_setting_wireless_security (connection);
g_assert (s_wireless_sec);
@@ -91,7 +97,7 @@ auth_combo_changed_cb (GtkWidget *combo, gpointer user_data)
ws_802_1x_auth_combo_changed (combo,
parent,
- GTK_BOX (gtk_builder_get_object (parent->builder, "method_box")),
+ sec->method_box,
sec->size_group);
}
@@ -101,6 +107,7 @@ ws_dynamic_wep_new (NMConnection *connection,
gboolean secrets_only)
{
WirelessSecurity *parent;
+ WirelessSecurityDynamicWEP *self;
parent = wireless_security_init (sizeof (WirelessSecurityDynamicWEP),
get_widget,
@@ -111,18 +118,24 @@ ws_dynamic_wep_new (NMConnection *connection,
"/org/gnome/ControlCenter/network/ws-dynamic-wep.ui");
if (!parent)
return NULL;
+ self = (WirelessSecurityDynamicWEP *) parent;
+
+ self->auth_combo = GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "auth_combo"));
+ self->auth_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "auth_label"));
+ self->grid = GTK_GRID (gtk_builder_get_object (parent->builder, "grid"));
+ self->method_box = GTK_BOX (gtk_builder_get_object (parent->builder, "method_box"));
wireless_security_set_adhoc_compatible (parent, FALSE);
wireless_security_set_hotspot_compatible (parent, FALSE);
ws_802_1x_auth_combo_init (parent,
- GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "auth_combo")),
- GTK_LABEL (gtk_builder_get_object (parent->builder, "auth_label")),
+ self->auth_combo,
+ self->auth_label,
(GCallback) auth_combo_changed_cb,
connection,
is_editor,
secrets_only);
- auth_combo_changed_cb (GTK_WIDGET (gtk_builder_get_object (parent->builder, "auth_combo")), (gpointer) parent);
+ auth_combo_changed_cb (GTK_WIDGET (self->auth_combo), (gpointer) parent);
return (WirelessSecurityDynamicWEP *) parent;
}
diff --git a/panels/network/wireless-security/ws-leap.c b/panels/network/wireless-security/ws-leap.c
index 860883bb6..0abbbcbba 100644
--- a/panels/network/wireless-security/ws-leap.c
+++ b/panels/network/wireless-security/ws-leap.c
@@ -32,6 +32,14 @@
struct _WirelessSecurityLEAP {
WirelessSecurity parent;
+
+ GtkGrid *grid;
+ GtkEntry *password_entry;
+ GtkLabel *password_label;
+ GtkCheckButton *show_password_check;
+ GtkEntry *username_entry;
+ GtkLabel *username_label;
+
gboolean editing_connection;
const char *password_flags_name;
};
@@ -39,51 +47,43 @@ struct _WirelessSecurityLEAP {
static void
show_toggled_cb (WirelessSecurityLEAP *self)
{
- WirelessSecurity *sec = (WirelessSecurity *) self;
- GtkWidget *widget;
gboolean visible;
- widget = GTK_WIDGET (gtk_builder_get_object (sec->builder, "show_password_check"));
- visible = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget));
-
- widget = GTK_WIDGET (gtk_builder_get_object (sec->builder, "password_entry"));
- gtk_entry_set_visibility (GTK_ENTRY (widget), visible);
+ visible = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (self->show_password_check));
+ gtk_entry_set_visibility (self->password_entry, visible);
}
static GtkWidget *
get_widget (WirelessSecurity *parent)
{
- return GTK_WIDGET (gtk_builder_get_object (parent->builder, "grid"));
+ WirelessSecurityLEAP *self = (WirelessSecurityLEAP *) parent;
+ return GTK_WIDGET (self->grid);
}
static gboolean
validate (WirelessSecurity *parent, GError **error)
{
- GtkWidget *entry;
+ WirelessSecurityLEAP *self = (WirelessSecurityLEAP *) parent;
const char *text;
gboolean ret = TRUE;
- entry = GTK_WIDGET (gtk_builder_get_object (parent->builder, "username_entry"));
- g_assert (entry);
- text = gtk_entry_get_text (GTK_ENTRY (entry));
+ text = gtk_entry_get_text (self->username_entry);
if (!text || !strlen (text)) {
- widget_set_error (entry);
+ widget_set_error (GTK_WIDGET (self->username_entry));
g_set_error_literal (error, NMA_ERROR, NMA_ERROR_GENERIC, _("missing leap-username"));
ret = FALSE;
} else
- widget_unset_error (entry);
+ widget_unset_error (GTK_WIDGET (self->username_entry));
- entry = GTK_WIDGET (gtk_builder_get_object (parent->builder, "password_entry"));
- g_assert (entry);
- text = gtk_entry_get_text (GTK_ENTRY (entry));
+ text = gtk_entry_get_text (self->password_entry);
if (!text || !strlen (text)) {
- widget_set_error (entry);
+ widget_set_error (GTK_WIDGET (self->password_entry));
if (ret) {
g_set_error_literal (error, NMA_ERROR, NMA_ERROR_GENERIC, _("missing leap-password"));
ret = FALSE;
}
} else
- widget_unset_error (entry);
+ widget_unset_error (GTK_WIDGET (self->password_entry));
return ret;
}
@@ -91,13 +91,9 @@ validate (WirelessSecurity *parent, GError **error)
static void
add_to_size_group (WirelessSecurity *parent, GtkSizeGroup *group)
{
- GtkWidget *widget;
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "username_label"));
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "password_label"));
- gtk_size_group_add_widget (group, widget);
+ WirelessSecurityLEAP *sec = (WirelessSecurityLEAP *) parent;
+ gtk_size_group_add_widget (group, GTK_WIDGET (sec->username_label));
+ gtk_size_group_add_widget (group, GTK_WIDGET (sec->password_label));
}
static void
@@ -106,19 +102,14 @@ fill_connection (WirelessSecurity *parent, NMConnection *connection)
WirelessSecurityLEAP *sec = (WirelessSecurityLEAP *) parent;
NMSettingWirelessSecurity *s_wireless_sec;
NMSettingSecretFlags secret_flags;
- GtkWidget *widget, *passwd_entry;
const char *leap_password = NULL, *leap_username = NULL;
/* Blow away the old security setting by adding a clear one */
s_wireless_sec = (NMSettingWirelessSecurity *) nm_setting_wireless_security_new ();
nm_connection_add_setting (connection, (NMSetting *) s_wireless_sec);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "username_entry"));
- leap_username = gtk_entry_get_text (GTK_ENTRY (widget));
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "password_entry"));
- passwd_entry = widget;
- leap_password = gtk_entry_get_text (GTK_ENTRY (widget));
+ leap_username = gtk_entry_get_text (sec->username_entry);
+ leap_password = gtk_entry_get_text (sec->password_entry);
g_object_set (s_wireless_sec,
NM_SETTING_WIRELESS_SECURITY_KEY_MGMT, "ieee8021x",
@@ -128,21 +119,22 @@ fill_connection (WirelessSecurity *parent, NMConnection *connection)
NULL);
/* Save LEAP_PASSWORD_FLAGS to the connection */
- secret_flags = nma_utils_menu_to_secret_flags (passwd_entry);
+ secret_flags = nma_utils_menu_to_secret_flags (GTK_WIDGET (sec->password_entry));
nm_setting_set_secret_flags (NM_SETTING (s_wireless_sec), sec->password_flags_name,
secret_flags, NULL);
/* Update secret flags and popup when editing the connection */
if (sec->editing_connection)
- nma_utils_update_password_storage (passwd_entry, secret_flags,
+ nma_utils_update_password_storage (GTK_WIDGET (sec->password_entry), secret_flags,
NM_SETTING (s_wireless_sec), sec->password_flags_name);
}
static void
update_secrets (WirelessSecurity *parent, NMConnection *connection)
{
+ WirelessSecurityLEAP *self = (WirelessSecurityLEAP *) parent;
helper_fill_secret_entry (connection,
- GTK_ENTRY (gtk_builder_get_object (parent->builder, "password_entry")),
+ self->password_entry,
NM_TYPE_SETTING_WIRELESS_SECURITY,
(HelperSecretFunc) nm_setting_wireless_security_get_leap_password);
}
@@ -158,7 +150,6 @@ ws_leap_new (NMConnection *connection, gboolean secrets_only)
{
WirelessSecurity *parent;
WirelessSecurityLEAP *sec;
- GtkWidget *widget;
NMSettingWirelessSecurity *wsec = NULL;
parent = wireless_security_init (sizeof (WirelessSecurityLEAP),
@@ -189,29 +180,30 @@ ws_leap_new (NMConnection *connection, gboolean secrets_only)
sec->editing_connection = secrets_only ? FALSE : TRUE;
sec->password_flags_name = NM_SETTING_WIRELESS_SECURITY_LEAP_PASSWORD;
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "password_entry"));
- g_assert (widget);
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (changed_cb), sec);
+ sec->grid = GTK_GRID (gtk_builder_get_object (parent->builder, "grid"));
+ sec->password_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "password_entry"));
+ sec->password_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "password_label"));
+ sec->show_password_check = GTK_CHECK_BUTTON (gtk_builder_get_object (parent->builder, "show_password_check"));
+ sec->username_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "username_entry"));
+ sec->username_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "username_label"));
+
+ g_signal_connect_swapped (sec->password_entry, "changed", G_CALLBACK (changed_cb), sec);
/* Create password-storage popup menu for password entry under entry's secondary icon */
- nma_utils_setup_password_storage (widget, 0, (NMSetting *) wsec, sec->password_flags_name,
+ nma_utils_setup_password_storage (GTK_WIDGET (sec->password_entry), 0, (NMSetting *) wsec, sec->password_flags_name,
FALSE, secrets_only);
if (wsec)
update_secrets (WIRELESS_SECURITY (sec), connection);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "username_entry"));
- g_assert (widget);
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (changed_cb), sec);
+ g_signal_connect_swapped (sec->username_entry, "changed", G_CALLBACK (changed_cb), sec);
if (wsec)
- gtk_entry_set_text (GTK_ENTRY (widget), nm_setting_wireless_security_get_leap_username (wsec));
+ gtk_entry_set_text (sec->username_entry, nm_setting_wireless_security_get_leap_username (wsec));
if (secrets_only)
- gtk_widget_hide (widget);
+ gtk_widget_hide (GTK_WIDGET (sec->username_entry));
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "show_password_check"));
- g_assert (widget);
- g_signal_connect_swapped (widget, "toggled", G_CALLBACK (show_toggled_cb), sec);
+ g_signal_connect_swapped (sec->show_password_check, "toggled", G_CALLBACK (show_toggled_cb), sec);
return sec;
}
diff --git a/panels/network/wireless-security/ws-wep-key.c b/panels/network/wireless-security/ws-wep-key.c
index fd3c07b22..4d84d5eb6 100644
--- a/panels/network/wireless-security/ws-wep-key.c
+++ b/panels/network/wireless-security/ws-wep-key.c
@@ -33,6 +33,15 @@
struct _WirelessSecurityWEPKey {
WirelessSecurity parent;
+ GtkComboBox *auth_method_combo;
+ GtkLabel *auth_method_label;
+ GtkGrid *grid;
+ GtkEntry *key_entry;
+ GtkComboBox *key_index_combo;
+ GtkLabel *key_index_label;
+ GtkLabel *key_label;
+ GtkCheckButton *show_key_check;
+
gboolean editing_connection;
const char *password_flags_name;
@@ -44,44 +53,34 @@ struct _WirelessSecurityWEPKey {
static void
show_toggled_cb (WirelessSecurityWEPKey *self)
{
- WirelessSecurity *parent = (WirelessSecurity *) self;
- GtkWidget *widget, *button;
gboolean visible;
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "key_entry"));
- g_assert (widget);
-
- button = GTK_WIDGET (gtk_builder_get_object (parent->builder, "show_key_check"));
- visible = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (button));
- gtk_entry_set_visibility (GTK_ENTRY (widget), visible);
+ visible = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (self->show_key_check));
+ gtk_entry_set_visibility (self->key_entry, visible);
}
static void
key_index_combo_changed_cb (WirelessSecurityWEPKey *self)
{
- WirelessSecurity *parent = (WirelessSecurity *) self;
- GtkWidget *combo, *entry;
const char *key;
int key_index;
/* Save WEP key for old key index */
- entry = GTK_WIDGET (gtk_builder_get_object (parent->builder, "key_entry"));
- key = gtk_entry_get_text (GTK_ENTRY (entry));
+ key = gtk_entry_get_text (self->key_entry);
if (key)
g_strlcpy (self->keys[self->cur_index], key, sizeof (self->keys[self->cur_index]));
else
memset (self->keys[self->cur_index], 0, sizeof (self->keys[self->cur_index]));
- combo = GTK_WIDGET (gtk_builder_get_object (parent->builder, "key_index_combo"));
- key_index = gtk_combo_box_get_active (GTK_COMBO_BOX (combo));
+ key_index = gtk_combo_box_get_active (self->key_index_combo);
g_return_if_fail (key_index <= 3);
g_return_if_fail (key_index >= 0);
/* Populate entry with key from new index */
- gtk_entry_set_text (GTK_ENTRY (entry), self->keys[key_index]);
+ gtk_entry_set_text (self->key_entry, self->keys[key_index]);
self->cur_index = key_index;
- wireless_security_notify_changed (parent);
+ wireless_security_notify_changed ((WirelessSecurity *) self);
}
static void
@@ -97,23 +96,20 @@ destroy (WirelessSecurity *parent)
static GtkWidget *
get_widget (WirelessSecurity *parent)
{
- return GTK_WIDGET (gtk_builder_get_object (parent->builder, "grid"));
+ WirelessSecurityWEPKey *self = (WirelessSecurityWEPKey *) parent;
+ return GTK_WIDGET (self->grid);
}
static gboolean
validate (WirelessSecurity *parent, GError **error)
{
WirelessSecurityWEPKey *sec = (WirelessSecurityWEPKey *) parent;
- GtkWidget *entry;
const char *key;
int i;
- entry = GTK_WIDGET (gtk_builder_get_object (parent->builder, "key_entry"));
- g_assert (entry);
-
- key = gtk_entry_get_text (GTK_ENTRY (entry));
+ key = gtk_entry_get_text (sec->key_entry);
if (!key) {
- widget_set_error (entry);
+ widget_set_error (GTK_WIDGET (sec->key_entry));
g_set_error_literal (error, NMA_ERROR, NMA_ERROR_GENERIC, _("missing wep-key"));
return FALSE;
}
@@ -122,7 +118,7 @@ validate (WirelessSecurity *parent, GError **error)
if ((strlen (key) == 10) || (strlen (key) == 26)) {
for (i = 0; i < strlen (key); i++) {
if (!g_ascii_isxdigit (key[i])) {
- widget_set_error (entry);
+ widget_set_error (GTK_WIDGET (sec->key_entry));
g_set_error (error, NMA_ERROR, NMA_ERROR_GENERIC, _("invalid wep-key: key with a length of %zu must contain only hex-digits"), strlen (key));
return FALSE;
}
@@ -130,19 +126,19 @@ validate (WirelessSecurity *parent, GError **error)
} else if ((strlen (key) == 5) || (strlen (key) == 13)) {
for (i = 0; i < strlen (key); i++) {
if (!g_ascii_isprint (key[i])) {
- widget_set_error (entry);
+ widget_set_error (GTK_WIDGET (sec->key_entry));
g_set_error (error, NMA_ERROR, NMA_ERROR_GENERIC, _("invalid wep-key: key with a length of %zu must contain only ascii characters"), strlen (key));
return FALSE;
}
}
} else {
- widget_set_error (entry);
+ widget_set_error (GTK_WIDGET (sec->key_entry));
g_set_error (error, NMA_ERROR, NMA_ERROR_GENERIC, _("invalid wep-key: wrong key length %zu. A key must be either of length 5/13 (ascii) or 10/26 (hex)"), strlen (key));
return FALSE;
}
} else if (sec->type == NM_WEP_KEY_TYPE_PASSPHRASE) {
if (!*key || (strlen (key) > 64)) {
- widget_set_error (entry);
+ widget_set_error (GTK_WIDGET (sec->key_entry));
if (!*key)
g_set_error_literal (error, NMA_ERROR, NMA_ERROR_GENERIC, _("invalid wep-key: passphrase must be non-empty"));
else
@@ -150,7 +146,7 @@ validate (WirelessSecurity *parent, GError **error)
return FALSE;
}
}
- widget_unset_error (entry);
+ widget_unset_error (GTK_WIDGET (sec->key_entry));
return TRUE;
}
@@ -158,16 +154,10 @@ validate (WirelessSecurity *parent, GError **error)
static void
add_to_size_group (WirelessSecurity *parent, GtkSizeGroup *group)
{
- GtkWidget *widget;
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "auth_method_label"));
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "key_label"));
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "key_index_label"));
- gtk_size_group_add_widget (group, widget);
+ WirelessSecurityWEPKey *self = (WirelessSecurityWEPKey *) parent;
+ gtk_size_group_add_widget (group, GTK_WIDGET (self->auth_method_label));
+ gtk_size_group_add_widget (group, GTK_WIDGET (self->key_label));
+ gtk_size_group_add_widget (group, GTK_WIDGET (self->key_index_label));
}
static void
@@ -176,17 +166,13 @@ fill_connection (WirelessSecurity *parent, NMConnection *connection)
WirelessSecurityWEPKey *sec = (WirelessSecurityWEPKey *) parent;
NMSettingWirelessSecurity *s_wsec;
NMSettingSecretFlags secret_flags;
- GtkWidget *widget, *passwd_entry;
gint auth_alg;
const char *key;
int i;
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "auth_method_combo"));
- auth_alg = gtk_combo_box_get_active (GTK_COMBO_BOX (widget));
+ auth_alg = gtk_combo_box_get_active (sec->auth_method_combo);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "key_entry"));
- passwd_entry = widget;
- key = gtk_entry_get_text (GTK_ENTRY (widget));
+ key = gtk_entry_get_text (sec->key_entry);
g_strlcpy (sec->keys[sec->cur_index], key, sizeof (sec->keys[sec->cur_index]));
/* Blow away the old security setting by adding a clear one */
@@ -206,12 +192,12 @@ fill_connection (WirelessSecurity *parent, NMConnection *connection)
}
/* Save WEP_KEY_FLAGS to the connection */
- secret_flags = nma_utils_menu_to_secret_flags (passwd_entry);
+ secret_flags = nma_utils_menu_to_secret_flags (GTK_WIDGET (sec->key_entry));
g_object_set (s_wsec, NM_SETTING_WIRELESS_SECURITY_WEP_KEY_FLAGS, secret_flags, NULL);
/* Update secret flags and popup when editing the connection */
if (sec->editing_connection)
- nma_utils_update_password_storage (passwd_entry, secret_flags,
+ nma_utils_update_password_storage (GTK_WIDGET (sec->key_entry), secret_flags,
NM_SETTING (s_wsec), sec->password_flags_name);
}
@@ -221,10 +207,6 @@ wep_entry_filter_cb (WirelessSecurityWEPKey *self,
gint length,
gint *position)
{
- WirelessSecurity *parent = (WirelessSecurity *) self;
- GtkWidget *widget;
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "key_entry"));
if (self->type == NM_WEP_KEY_TYPE_KEY) {
int i, count = 0;
g_autofree gchar *result = g_new (gchar, length+1);
@@ -236,11 +218,11 @@ wep_entry_filter_cb (WirelessSecurityWEPKey *self,
result[count] = 0;
if (count > 0) {
- g_signal_handlers_block_by_func (widget, G_CALLBACK (wep_entry_filter_cb), self);
- gtk_editable_insert_text (GTK_EDITABLE (widget), result, count, position);
- g_signal_handlers_unblock_by_func (widget, G_CALLBACK (wep_entry_filter_cb), self);
+ g_signal_handlers_block_by_func (self->key_entry, G_CALLBACK (wep_entry_filter_cb), self);
+ gtk_editable_insert_text (GTK_EDITABLE (self->key_entry), result, count, position);
+ g_signal_handlers_unblock_by_func (self->key_entry, G_CALLBACK (wep_entry_filter_cb), self);
}
- g_signal_stop_emission_by_name (widget, "insert-text");
+ g_signal_stop_emission_by_name (self->key_entry, "insert-text");
}
}
@@ -249,7 +231,6 @@ update_secrets (WirelessSecurity *parent, NMConnection *connection)
{
WirelessSecurityWEPKey *sec = (WirelessSecurityWEPKey *) parent;
NMSettingWirelessSecurity *s_wsec;
- GtkWidget *widget;
const char *tmp;
int i;
@@ -260,9 +241,8 @@ update_secrets (WirelessSecurity *parent, NMConnection *connection)
g_strlcpy (sec->keys[i], tmp, sizeof (sec->keys[i]));
}
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "key_entry"));
if (strlen (sec->keys[sec->cur_index]))
- gtk_entry_set_text (GTK_ENTRY (widget), sec->keys[sec->cur_index]);
+ gtk_entry_set_text (sec->key_entry, sec->keys[sec->cur_index]);
}
static void
@@ -279,7 +259,6 @@ ws_wep_key_new (NMConnection *connection,
{
WirelessSecurity *parent;
WirelessSecurityWEPKey *sec;
- GtkWidget *widget;
NMSettingWirelessSecurity *s_wsec = NULL;
NMSetting *setting = NULL;
guint8 default_key_idx = 0;
@@ -295,20 +274,27 @@ ws_wep_key_new (NMConnection *connection,
"/org/gnome/ControlCenter/network/ws-wep-key.ui");
if (!parent)
return NULL;
-
sec = (WirelessSecurityWEPKey *) parent;
+
+ sec->auth_method_combo = GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "auth_method_combo"));
+ sec->auth_method_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "auth_method_label"));
+ sec->grid = GTK_GRID (gtk_builder_get_object (parent->builder, "grid"));
+ sec->key_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "key_entry"));
+ sec->key_index_combo = GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "key_index_combo"));
+ sec->key_index_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "key_index_label"));
+ sec->key_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "key_label"));
+ sec->show_key_check = GTK_CHECK_BUTTON (gtk_builder_get_object (parent->builder, "show_key_check"));
+
sec->editing_connection = secrets_only ? FALSE : TRUE;
sec->password_flags_name = NM_SETTING_WIRELESS_SECURITY_WEP_KEY0;
sec->type = type;
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "key_entry"));
- g_assert (widget);
- gtk_entry_set_width_chars (GTK_ENTRY (widget), 28);
+ gtk_entry_set_width_chars (sec->key_entry, 28);
/* Create password-storage popup menu for password entry under entry's secondary icon */
if (connection)
setting = (NMSetting *) nm_connection_get_setting_wireless_security (connection);
- nma_utils_setup_password_storage (widget, 0, setting, sec->password_flags_name,
+ nma_utils_setup_password_storage (GTK_WIDGET (sec->key_entry), 0, setting, sec->password_flags_name,
FALSE, secrets_only);
if (connection) {
@@ -328,40 +314,35 @@ ws_wep_key_new (NMConnection *connection,
}
}
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (changed_cb), sec);
- g_signal_connect_swapped (widget, "insert-text", G_CALLBACK (wep_entry_filter_cb), sec);
+ g_signal_connect_swapped (sec->key_entry, "changed", G_CALLBACK (changed_cb), sec);
+ g_signal_connect_swapped (sec->key_entry, "insert-text", G_CALLBACK (wep_entry_filter_cb), sec);
if (sec->type == NM_WEP_KEY_TYPE_KEY)
- gtk_entry_set_max_length (GTK_ENTRY (widget), 26);
+ gtk_entry_set_max_length (sec->key_entry, 26);
else if (sec->type == NM_WEP_KEY_TYPE_PASSPHRASE)
- gtk_entry_set_max_length (GTK_ENTRY (widget), 64);
+ gtk_entry_set_max_length (sec->key_entry, 64);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "key_index_combo"));
if (connection && s_wsec)
default_key_idx = nm_setting_wireless_security_get_wep_tx_keyidx (s_wsec);
- gtk_combo_box_set_active (GTK_COMBO_BOX (widget), default_key_idx);
+ gtk_combo_box_set_active (sec->key_index_combo, default_key_idx);
sec->cur_index = default_key_idx;
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (key_index_combo_changed_cb), sec);
+ g_signal_connect_swapped (sec->key_index_combo, "changed", G_CALLBACK (key_index_combo_changed_cb), sec);
/* Key index is useless with adhoc networks */
if (is_adhoc || secrets_only) {
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "key_index_label"));
- gtk_widget_hide (widget);
+ gtk_widget_hide (GTK_WIDGET (sec->key_index_combo));
+ gtk_widget_hide (GTK_WIDGET (sec->key_index_label));
}
/* Fill the key entry with the key for that index */
if (connection)
update_secrets (WIRELESS_SECURITY (sec), connection);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "show_key_check"));
- g_assert (widget);
- g_signal_connect_swapped (widget, "toggled", G_CALLBACK (show_toggled_cb), sec);
+ g_signal_connect_swapped (sec->show_key_check, "toggled", G_CALLBACK (show_toggled_cb), sec);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "auth_method_combo"));
- gtk_combo_box_set_active (GTK_COMBO_BOX (widget), is_shared_key ? 1 : 0);
+ gtk_combo_box_set_active (sec->auth_method_combo, is_shared_key ? 1 : 0);
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (changed_cb), sec);
+ g_signal_connect_swapped (sec->auth_method_combo, "changed", G_CALLBACK (changed_cb), sec);
/* Don't show auth method for adhoc (which always uses open-system) or
* when in "simple" mode.
@@ -369,10 +350,9 @@ ws_wep_key_new (NMConnection *connection,
if (is_adhoc || secrets_only) {
/* Ad-Hoc connections can't use Shared Key auth */
if (is_adhoc)
- gtk_combo_box_set_active (GTK_COMBO_BOX (widget), 0);
- gtk_widget_hide (widget);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "auth_method_label"));
- gtk_widget_hide (widget);
+ gtk_combo_box_set_active (sec->auth_method_combo, 0);
+ gtk_widget_hide (GTK_WIDGET (sec->auth_method_combo));
+ gtk_widget_hide (GTK_WIDGET (sec->auth_method_label));
}
return sec;
diff --git a/panels/network/wireless-security/ws-wpa-eap.c b/panels/network/wireless-security/ws-wpa-eap.c
index 1a8e791ae..312074cbf 100644
--- a/panels/network/wireless-security/ws-wpa-eap.c
+++ b/panels/network/wireless-security/ws-wpa-eap.c
@@ -32,6 +32,11 @@
struct _WirelessSecurityWPAEAP {
WirelessSecurity parent;
+ GtkComboBox *auth_combo;
+ GtkLabel *auth_label;
+ GtkGrid *grid;
+ GtkBox *method_box;
+
GtkSizeGroup *size_group;
};
@@ -48,13 +53,15 @@ destroy (WirelessSecurity *parent)
static GtkWidget *
get_widget (WirelessSecurity *parent)
{
- return GTK_WIDGET (gtk_builder_get_object (parent->builder, "grid"));
+ WirelessSecurityWPAEAP *self = (WirelessSecurityWPAEAP *) parent;
+ return GTK_WIDGET (self->grid);
}
static gboolean
validate (WirelessSecurity *parent, GError **error)
{
- return ws_802_1x_validate (GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "auth_combo")), error);
+ WirelessSecurityWPAEAP *self = (WirelessSecurityWPAEAP *) parent;
+ return ws_802_1x_validate (self->auth_combo, error);
}
static void
@@ -66,17 +73,16 @@ add_to_size_group (WirelessSecurity *parent, GtkSizeGroup *group)
g_object_unref (sec->size_group);
sec->size_group = g_object_ref (group);
- ws_802_1x_add_to_size_group (sec->size_group,
- GTK_LABEL (gtk_builder_get_object (parent->builder, "auth_label")),
- GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "auth_combo")));
+ ws_802_1x_add_to_size_group (sec->size_group, sec->auth_label, sec->auth_combo);
}
static void
fill_connection (WirelessSecurity *parent, NMConnection *connection)
{
+ WirelessSecurityWPAEAP *self = (WirelessSecurityWPAEAP *) parent;
NMSettingWirelessSecurity *s_wireless_sec;
- ws_802_1x_fill_connection (GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "auth_combo")), connection);
+ ws_802_1x_fill_connection (self->auth_combo, connection);
s_wireless_sec = nm_connection_get_setting_wireless_security (connection);
g_assert (s_wireless_sec);
@@ -92,7 +98,7 @@ auth_combo_changed_cb (GtkWidget *combo, gpointer user_data)
ws_802_1x_auth_combo_changed (combo,
parent,
- GTK_BOX (gtk_builder_get_object (parent->builder, "method_box")),
+ sec->method_box,
sec->size_group);
}
@@ -102,6 +108,7 @@ ws_wpa_eap_new (NMConnection *connection,
gboolean secrets_only)
{
WirelessSecurity *parent;
+ WirelessSecurityWPAEAP *self;
parent = wireless_security_init (sizeof (WirelessSecurityWPAEAP),
get_widget,
@@ -112,18 +119,24 @@ ws_wpa_eap_new (NMConnection *connection,
"/org/gnome/ControlCenter/network/ws-wpa-eap.ui");
if (!parent)
return NULL;
+ self = (WirelessSecurityWPAEAP *) parent;
+
+ self->auth_combo = GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "auth_combo"));
+ self->auth_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "auth_label"));
+ self->grid = GTK_GRID (gtk_builder_get_object (parent->builder, "grid"));
+ self->method_box = GTK_BOX (gtk_builder_get_object (parent->builder, "method_box"));
wireless_security_set_adhoc_compatible (parent, FALSE);
wireless_security_set_hotspot_compatible (parent, FALSE);
ws_802_1x_auth_combo_init (parent,
- GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "auth_combo")),
- GTK_LABEL (gtk_builder_get_object (parent->builder, "auth_label")),
+ self->auth_combo,
+ self->auth_label,
(GCallback) auth_combo_changed_cb,
connection,
is_editor,
secrets_only);
- auth_combo_changed_cb (GTK_WIDGET (gtk_builder_get_object (parent->builder, "auth_combo")), parent);
+ auth_combo_changed_cb (GTK_WIDGET (self->auth_combo), parent);
return (WirelessSecurityWPAEAP *) parent;
}
diff --git a/panels/network/wireless-security/ws-wpa-psk.c b/panels/network/wireless-security/ws-wpa-psk.c
index a02d38c5e..4e1ba3006 100644
--- a/panels/network/wireless-security/ws-wpa-psk.c
+++ b/panels/network/wireless-security/ws-wpa-psk.c
@@ -36,6 +36,13 @@
struct _WirelessSecurityWPAPSK {
WirelessSecurity parent;
+ GtkGrid *grid;
+ GtkEntry *password_entry;
+ GtkLabel *password_label;
+ GtkCheckButton *show_password_check;
+ GtkComboBox *type_combo;
+ GtkLabel *type_label;
+
gboolean editing_connection;
const char *password_flags_name;
};
@@ -43,38 +50,31 @@ struct _WirelessSecurityWPAPSK {
static GtkWidget *
get_widget (WirelessSecurity *parent)
{
- return GTK_WIDGET (gtk_builder_get_object (parent->builder, "grid"));
+ WirelessSecurityWPAPSK *self = (WirelessSecurityWPAPSK *) parent;
+ return GTK_WIDGET (self->grid);
}
static void
show_toggled_cb (WirelessSecurityWPAPSK *self)
{
- WirelessSecurity *sec = (WirelessSecurity *) self;
- GtkWidget *widget;
gboolean visible;
- widget = GTK_WIDGET (gtk_builder_get_object (sec->builder, "show_password_check"));
- visible = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget));
-
- widget = GTK_WIDGET (gtk_builder_get_object (sec->builder, "password_entry"));
- gtk_entry_set_visibility (GTK_ENTRY (widget), visible);
+ visible = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (self->show_password_check));
+ gtk_entry_set_visibility (self->password_entry, visible);
}
static gboolean
validate (WirelessSecurity *parent, GError **error)
{
- GtkWidget *entry;
+ WirelessSecurityWPAPSK *self = (WirelessSecurityWPAPSK *) parent;
const char *key;
gsize len;
int i;
- entry = GTK_WIDGET (gtk_builder_get_object (parent->builder, "password_entry"));
- g_assert (entry);
-
- key = gtk_entry_get_text (GTK_ENTRY (entry));
+ key = gtk_entry_get_text (self->password_entry);
len = key ? strlen (key) : 0;
if ((len < 8) || (len > 64)) {
- widget_set_error (entry);
+ widget_set_error (GTK_WIDGET (self->password_entry));
g_set_error (error, NMA_ERROR, NMA_ERROR_GENERIC, _("invalid wpa-psk: invalid key-length %zu. Must be [8,63] bytes or 64 hex digits"), len);
return FALSE;
}
@@ -83,13 +83,13 @@ validate (WirelessSecurity *parent, GError **error)
/* Hex PSK */
for (i = 0; i < len; i++) {
if (!isxdigit (key[i])) {
- widget_set_error (entry);
+ widget_set_error (GTK_WIDGET (self->password_entry));
g_set_error_literal (error, NMA_ERROR, NMA_ERROR_GENERIC, _("invalid wpa-psk: cannot interpret key with 64 bytes as hex"));
return FALSE;
}
}
}
- widget_unset_error (entry);
+ widget_unset_error (GTK_WIDGET (self->password_entry));
/* passphrase can be between 8 and 63 characters inclusive */
@@ -99,20 +99,15 @@ validate (WirelessSecurity *parent, GError **error)
static void
add_to_size_group (WirelessSecurity *parent, GtkSizeGroup *group)
{
- GtkWidget *widget;
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "type_label"));
- gtk_size_group_add_widget (group, widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "password_label"));
- gtk_size_group_add_widget (group, widget);
+ WirelessSecurityWPAPSK *self = (WirelessSecurityWPAPSK *) parent;
+ gtk_size_group_add_widget (group, GTK_WIDGET (self->type_label));
+ gtk_size_group_add_widget (group, GTK_WIDGET (self->password_label));
}
static void
fill_connection (WirelessSecurity *parent, NMConnection *connection)
{
WirelessSecurityWPAPSK *wpa_psk = (WirelessSecurityWPAPSK *) parent;
- GtkWidget *widget, *passwd_entry;
const char *key;
NMSettingWireless *s_wireless;
NMSettingWirelessSecurity *s_wireless_sec;
@@ -131,19 +126,17 @@ fill_connection (WirelessSecurity *parent, NMConnection *connection)
s_wireless_sec = (NMSettingWirelessSecurity *) nm_setting_wireless_security_new ();
nm_connection_add_setting (connection, (NMSetting *) s_wireless_sec);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "password_entry"));
- passwd_entry = widget;
- key = gtk_entry_get_text (GTK_ENTRY (widget));
+ key = gtk_entry_get_text (wpa_psk->password_entry);
g_object_set (s_wireless_sec, NM_SETTING_WIRELESS_SECURITY_PSK, key, NULL);
/* Save PSK_FLAGS to the connection */
- secret_flags = nma_utils_menu_to_secret_flags (passwd_entry);
+ secret_flags = nma_utils_menu_to_secret_flags (GTK_WIDGET (wpa_psk->password_entry));
nm_setting_set_secret_flags (NM_SETTING (s_wireless_sec), NM_SETTING_WIRELESS_SECURITY_PSK,
secret_flags, NULL);
/* Update secret flags and popup when editing the connection */
if (wpa_psk->editing_connection)
- nma_utils_update_password_storage (passwd_entry, secret_flags,
+ nma_utils_update_password_storage (GTK_WIDGET (wpa_psk->password_entry), secret_flags,
NM_SETTING (s_wireless_sec), wpa_psk->password_flags_name);
wireless_security_clear_ciphers (connection);
@@ -169,8 +162,9 @@ fill_connection (WirelessSecurity *parent, NMConnection *connection)
static void
update_secrets (WirelessSecurity *parent, NMConnection *connection)
{
+ WirelessSecurityWPAPSK *self = (WirelessSecurityWPAPSK *) parent;
helper_fill_secret_entry (connection,
- GTK_ENTRY (gtk_builder_get_object (parent->builder, "password_entry")),
+ self->password_entry,
NM_TYPE_SETTING_WIRELESS_SECURITY,
(HelperSecretFunc) nm_setting_wireless_security_get_psk);
}
@@ -187,7 +181,6 @@ ws_wpa_psk_new (NMConnection *connection, gboolean secrets_only)
WirelessSecurity *parent;
WirelessSecurityWPAPSK *sec;
NMSetting *setting = NULL;
- GtkWidget *widget;
parent = wireless_security_init (sizeof (WirelessSecurityWPAPSK),
get_widget,
@@ -198,42 +191,41 @@ ws_wpa_psk_new (NMConnection *connection, gboolean secrets_only)
"/org/gnome/ControlCenter/network/ws-wpa-psk.ui");
if (!parent)
return NULL;
+ sec = (WirelessSecurityWPAPSK *) parent;
+
+ sec->grid = GTK_GRID (gtk_builder_get_object (parent->builder, "grid"));
+ sec->password_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "password_entry"));
+ sec->password_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "password_label"));
+ sec->show_password_check = GTK_CHECK_BUTTON (gtk_builder_get_object (parent->builder, "show_password_check"));
+ sec->type_combo = GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "type_combo"));
+ sec->type_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "type_label"));
wireless_security_set_adhoc_compatible (parent, FALSE);
- sec = (WirelessSecurityWPAPSK *) parent;
+
sec->editing_connection = secrets_only ? FALSE : TRUE;
sec->password_flags_name = NM_SETTING_WIRELESS_SECURITY_PSK;
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "password_entry"));
- g_assert (widget);
- g_signal_connect_swapped (widget, "changed", G_CALLBACK (changed_cb), sec);
- gtk_entry_set_width_chars (GTK_ENTRY (widget), 28);
+ g_signal_connect_swapped (sec->password_entry, "changed", G_CALLBACK (changed_cb), sec);
+ gtk_entry_set_width_chars (sec->password_entry, 28);
/* Create password-storage popup menu for password entry under entry's secondary icon */
if (connection)
setting = (NMSetting *) nm_connection_get_setting_wireless_security (connection);
- nma_utils_setup_password_storage (widget, 0, setting, sec->password_flags_name,
+ nma_utils_setup_password_storage (GTK_WIDGET (sec->password_entry), 0, setting, sec->password_flags_name,
FALSE, secrets_only);
/* Fill secrets, if any */
if (connection)
update_secrets (WIRELESS_SECURITY (sec), connection);
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "show_password_check"));
- g_assert (widget);
- g_signal_connect_swapped (widget, "toggled", G_CALLBACK (show_toggled_cb), sec);
+ g_signal_connect_swapped (sec->show_password_check, "toggled", G_CALLBACK (show_toggled_cb), sec);
/* Hide WPA/RSN for now since this can be autodetected by NM and the
* supplicant when connecting to the AP.
*/
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "type_combo"));
- g_assert (widget);
- gtk_widget_hide (widget);
-
- widget = GTK_WIDGET (gtk_builder_get_object (parent->builder, "type_label"));
- g_assert (widget);
- gtk_widget_hide (widget);
+ gtk_widget_hide (GTK_WIDGET (sec->type_combo));
+ gtk_widget_hide (GTK_WIDGET (sec->type_label));
return sec;
}