[gnome-control-center] network: Convert class property to a virtual method
- From: Georges Basile Stavracas Neto <gbsneto src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-control-center] network: Convert class property to a virtual method
- Date: Wed, 6 Nov 2019 12:37:24 +0000 (UTC)
commit 0106a4ab90b4a4e19716ad1c0267ca8b35c91e6d
Author: Robert Ancell <robert ancell canonical com>
Date: Wed Nov 6 13:38:36 2019 +1300
network: Convert class property to a virtual method
panels/network/connection-editor/ce-page-8021x-security.c | 10 ++++++++--
panels/network/connection-editor/ce-page-details.c | 12 ++++++++++--
panels/network/connection-editor/ce-page-ethernet.c | 10 ++++++++--
panels/network/connection-editor/ce-page-ip4.c | 10 ++++++++--
panels/network/connection-editor/ce-page-ip6.c | 10 ++++++++--
panels/network/connection-editor/ce-page-security.c | 10 ++++++++--
panels/network/connection-editor/ce-page-vpn.c | 11 ++++++++---
panels/network/connection-editor/ce-page-wifi.c | 10 ++++++++--
panels/network/connection-editor/ce-page.c | 7 ++-----
panels/network/connection-editor/ce-page.h | 7 +++----
10 files changed, 71 insertions(+), 26 deletions(-)
---
diff --git a/panels/network/connection-editor/ce-page-8021x-security.c
b/panels/network/connection-editor/ce-page-8021x-security.c
index fec879206..4c683c672 100644
--- a/panels/network/connection-editor/ce-page-8021x-security.c
+++ b/panels/network/connection-editor/ce-page-8021x-security.c
@@ -91,8 +91,7 @@ ce_page_8021x_security_new (NMConnection *connection,
self = CE_PAGE_8021X_SECURITY (ce_page_new (CE_TYPE_PAGE_8021X_SECURITY,
connection,
client,
-
"/org/gnome/control-center/network/8021x-security-page.ui",
- _("Security")));
+
"/org/gnome/control-center/network/8021x-security-page.ui"));
self->box = GTK_BOX (gtk_builder_get_object (CE_PAGE (self)->builder, "box"));
self->enable_8021x_switch = GTK_SWITCH (gtk_builder_get_object (CE_PAGE (self)->builder,
"enable_8021x_switch"));
@@ -109,6 +108,12 @@ ce_page_8021x_security_new (NMConnection *connection,
return CE_PAGE (self);
}
+static const gchar *
+ce_page_8021x_security_get_title (CEPage *page)
+{
+ return _("Security");
+}
+
static gboolean
ce_page_8021x_security_validate (CEPage *cepage, NMConnection *connection, GError **error)
{
@@ -176,5 +181,6 @@ ce_page_8021x_security_class_init (CEPage8021xSecurityClass *security_class)
/* virtual methods */
object_class->dispose = dispose;
+ parent_class->get_title = ce_page_8021x_security_get_title;
parent_class->validate = ce_page_8021x_security_validate;
}
diff --git a/panels/network/connection-editor/ce-page-details.c
b/panels/network/connection-editor/ce-page-details.c
index c01def0e5..d33872389 100644
--- a/panels/network/connection-editor/ce-page-details.c
+++ b/panels/network/connection-editor/ce-page-details.c
@@ -361,6 +361,12 @@ connect_details_page (CEPageDetails *self)
gtk_widget_hide (GTK_WIDGET (self->forget_button));
}
+static const gchar *
+ce_page_details_get_title (CEPage *page)
+{
+ return _("Details");
+}
+
static void
ce_page_details_init (CEPageDetails *self)
{
@@ -369,6 +375,9 @@ ce_page_details_init (CEPageDetails *self)
static void
ce_page_details_class_init (CEPageDetailsClass *class)
{
+ CEPageClass *page_class = CE_PAGE_CLASS (class);
+
+ page_class->get_title = ce_page_details_get_title;
}
CEPage *
@@ -383,8 +392,7 @@ ce_page_details_new (NMConnection *connection,
self = CE_PAGE_DETAILS (ce_page_new (CE_TYPE_PAGE_DETAILS,
connection,
client,
- "/org/gnome/control-center/network/details-page.ui",
- _("Details")));
+ "/org/gnome/control-center/network/details-page.ui"));
self->all_user_check = GTK_CHECK_BUTTON (gtk_builder_get_object (CE_PAGE (self)->builder,
"all_user_check"));
self->auto_connect_check = GTK_CHECK_BUTTON (gtk_builder_get_object (CE_PAGE (self)->builder,
"auto_connect_check"));
diff --git a/panels/network/connection-editor/ce-page-ethernet.c
b/panels/network/connection-editor/ce-page-ethernet.c
index b56335511..137c57538 100644
--- a/panels/network/connection-editor/ce-page-ethernet.c
+++ b/panels/network/connection-editor/ce-page-ethernet.c
@@ -124,6 +124,12 @@ ui_to_setting (CEPageEthernet *self)
NULL);
}
+static const gchar *
+ce_page_ethernet_get_title (CEPage *page)
+{
+ return _("Identity");
+}
+
static gboolean
ce_page_ethernet_validate (CEPage *page,
NMConnection *connection,
@@ -171,6 +177,7 @@ ce_page_ethernet_class_init (CEPageEthernetClass *class)
{
CEPageClass *page_class = CE_PAGE_CLASS (class);
+ page_class->get_title = ce_page_ethernet_get_title;
page_class->validate = ce_page_ethernet_validate;
}
@@ -183,8 +190,7 @@ ce_page_ethernet_new (NMConnection *connection,
self = CE_PAGE_ETHERNET (ce_page_new (CE_TYPE_PAGE_ETHERNET,
connection,
client,
- "/org/gnome/control-center/network/ethernet-page.ui",
- _("Identity")));
+ "/org/gnome/control-center/network/ethernet-page.ui"));
self->name = GTK_ENTRY (gtk_builder_get_object (CE_PAGE (self)->builder, "name_entry"));
self->device_mac = GTK_COMBO_BOX_TEXT (gtk_builder_get_object (CE_PAGE (self)->builder,
"mac_combo"));
diff --git a/panels/network/connection-editor/ce-page-ip4.c b/panels/network/connection-editor/ce-page-ip4.c
index ea4017e06..0dca8491b 100644
--- a/panels/network/connection-editor/ce-page-ip4.c
+++ b/panels/network/connection-editor/ce-page-ip4.c
@@ -835,6 +835,12 @@ out:
return ret;
}
+static const gchar *
+ce_page_ip4_get_title (CEPage *page)
+{
+ return _("IPv4");
+}
+
static gboolean
ce_page_ip4_validate (CEPage *self,
NMConnection *connection,
@@ -856,6 +862,7 @@ ce_page_ip4_class_init (CEPageIP4Class *class)
{
CEPageClass *page_class = CE_PAGE_CLASS (class);
+ page_class->get_title = ce_page_ip4_get_title;
page_class->validate = ce_page_ip4_validate;
}
@@ -868,8 +875,7 @@ ce_page_ip4_new (NMConnection *connection,
self = CE_PAGE_IP4 (ce_page_new (CE_TYPE_PAGE_IP4,
connection,
client,
- "/org/gnome/control-center/network/ip4-page.ui",
- _("IPv4")));
+ "/org/gnome/control-center/network/ip4-page.ui"));
self->setting = nm_connection_get_setting_ip4_config (connection);
if (!self->setting) {
diff --git a/panels/network/connection-editor/ce-page-ip6.c b/panels/network/connection-editor/ce-page-ip6.c
index ef9381b2b..2c002ccde 100644
--- a/panels/network/connection-editor/ce-page-ip6.c
+++ b/panels/network/connection-editor/ce-page-ip6.c
@@ -757,6 +757,12 @@ out:
return ret;
}
+static const gchar *
+ce_page_ip6_get_title (CEPage *page)
+{
+ return _("IPv6");
+}
+
static gboolean
ce_page_ip6_validate (CEPage *self,
NMConnection *connection,
@@ -778,6 +784,7 @@ ce_page_ip6_class_init (CEPageIP6Class *class)
{
CEPageClass *page_class = CE_PAGE_CLASS (class);
+ page_class->get_title = ce_page_ip6_get_title;
page_class->validate = ce_page_ip6_validate;
}
@@ -790,8 +797,7 @@ ce_page_ip6_new (NMConnection *connection,
self = CE_PAGE_IP6 (ce_page_new (CE_TYPE_PAGE_IP6,
connection,
client,
- "/org/gnome/control-center/network/ip6-page.ui",
- _("IPv6")));
+ "/org/gnome/control-center/network/ip6-page.ui"));
self->setting = nm_connection_get_setting_ip6_config (connection);
if (!self->setting) {
diff --git a/panels/network/connection-editor/ce-page-security.c
b/panels/network/connection-editor/ce-page-security.c
index a215d9e85..5bf979c9d 100644
--- a/panels/network/connection-editor/ce-page-security.c
+++ b/panels/network/connection-editor/ce-page-security.c
@@ -361,6 +361,12 @@ ce_page_security_dispose (GObject *object)
G_OBJECT_CLASS (ce_page_security_parent_class)->dispose (object);
}
+static const gchar *
+ce_page_security_get_title (CEPage *page)
+{
+ return _("Security");
+}
+
static gboolean
ce_page_security_validate (CEPage *page,
NMConnection *connection,
@@ -423,6 +429,7 @@ ce_page_security_class_init (CEPageSecurityClass *class)
CEPageClass *page_class = CE_PAGE_CLASS (class);
object_class->dispose = ce_page_security_dispose;
+ page_class->get_title = ce_page_security_get_title;
page_class->validate = ce_page_security_validate;
}
@@ -437,8 +444,7 @@ ce_page_security_new (NMConnection *connection,
self = CE_PAGE_SECURITY (ce_page_new (CE_TYPE_PAGE_SECURITY,
connection,
client,
- "/org/gnome/control-center/network/security-page.ui",
- _("Security")));
+ "/org/gnome/control-center/network/security-page.ui"));
sws = nm_connection_get_setting_wireless_security (connection);
if (sws)
diff --git a/panels/network/connection-editor/ce-page-vpn.c b/panels/network/connection-editor/ce-page-vpn.c
index adc7ec906..795946ef8 100644
--- a/panels/network/connection-editor/ce-page-vpn.c
+++ b/panels/network/connection-editor/ce-page-vpn.c
@@ -119,6 +119,12 @@ ce_page_vpn_dispose (GObject *object)
G_OBJECT_CLASS (ce_page_vpn_parent_class)->dispose (object);
}
+static const gchar *
+ce_page_vpn_get_title (CEPage *page)
+{
+ return _("Identity");
+}
+
static gboolean
ce_page_vpn_validate (CEPage *page,
NMConnection *connection,
@@ -151,7 +157,7 @@ ce_page_vpn_class_init (CEPageVpnClass *class)
GObjectClass *object_class = G_OBJECT_CLASS (class);
object_class->dispose = ce_page_vpn_dispose;
-
+ page_class->get_title = ce_page_vpn_get_title;
page_class->validate = ce_page_vpn_validate;
}
@@ -181,8 +187,7 @@ ce_page_vpn_new (NMConnection *connection,
self = CE_PAGE_VPN (ce_page_new (CE_TYPE_PAGE_VPN,
connection,
client,
- "/org/gnome/control-center/network/vpn-page.ui",
- _("Identity")));
+ "/org/gnome/control-center/network/vpn-page.ui"));
self->failure_label = GTK_LABEL (gtk_builder_get_object (CE_PAGE (self)->builder, "failure_label"));
self->name_entry = GTK_ENTRY (gtk_builder_get_object (CE_PAGE (self)->builder, "name_entry"));
diff --git a/panels/network/connection-editor/ce-page-wifi.c b/panels/network/connection-editor/ce-page-wifi.c
index 7f7050597..3e948d0e1 100644
--- a/panels/network/connection-editor/ce-page-wifi.c
+++ b/panels/network/connection-editor/ce-page-wifi.c
@@ -109,6 +109,12 @@ ui_to_setting (CEPageWifi *self)
NULL);
}
+static const gchar *
+ce_page_wifi_get_title (CEPage *page)
+{
+ return _("Identity");
+}
+
static gboolean
ce_page_wifi_class_validate (CEPage *parent,
NMConnection *connection,
@@ -159,6 +165,7 @@ ce_page_wifi_class_init (CEPageWifiClass *class)
{
CEPageClass *page_class= CE_PAGE_CLASS (class);
+ page_class->get_title = ce_page_wifi_get_title;
page_class->validate = ce_page_wifi_class_validate;
}
@@ -171,8 +178,7 @@ ce_page_wifi_new (NMConnection *connection,
self = CE_PAGE_WIFI (ce_page_new (CE_TYPE_PAGE_WIFI,
connection,
client,
- "/org/gnome/control-center/network/wifi-page.ui",
- _("Identity")));
+ "/org/gnome/control-center/network/wifi-page.ui"));
self->bssid_combo = GTK_COMBO_BOX_TEXT (gtk_builder_get_object (CE_PAGE (self)->builder,
"bssid_combo"));
self->cloned_mac_combo = GTK_COMBO_BOX_TEXT (gtk_builder_get_object (CE_PAGE (self)->builder,
"cloned_mac_combo"));
diff --git a/panels/network/connection-editor/ce-page.c b/panels/network/connection-editor/ce-page.c
index aa081b481..234410da9 100644
--- a/panels/network/connection-editor/ce-page.c
+++ b/panels/network/connection-editor/ce-page.c
@@ -78,7 +78,6 @@ finalize (GObject *object)
{
CEPage *self = CE_PAGE (object);
- g_clear_pointer (&self->title, g_free);
g_cancellable_cancel (self->cancellable);
g_clear_object (&self->cancellable);
@@ -98,7 +97,7 @@ ce_page_get_title (CEPage *self)
{
g_return_val_if_fail (CE_IS_PAGE (self), NULL);
- return self->title;
+ return CE_PAGE_GET_CLASS (self)->get_title (self);
}
gboolean
@@ -215,8 +214,7 @@ CEPage *
ce_page_new (GType type,
NMConnection *connection,
NMClient *client,
- const gchar *ui_resource,
- const gchar *title)
+ const gchar *ui_resource)
{
g_autoptr(CEPage) self = NULL;
g_autoptr(GError) error = NULL;
@@ -224,7 +222,6 @@ ce_page_new (GType type,
self = CE_PAGE (g_object_new (type,
"connection", connection,
NULL));
- self->title = g_strdup (title);
self->client = client;
if (ui_resource) {
diff --git a/panels/network/connection-editor/ce-page.h b/panels/network/connection-editor/ce-page.h
index 3d721432a..a8bde332d 100644
--- a/panels/network/connection-editor/ce-page.h
+++ b/panels/network/connection-editor/ce-page.h
@@ -47,7 +47,6 @@ struct _CEPage
gboolean initialized;
GtkBuilder *builder;
GtkWidget *page;
- gchar *title;
const gchar *security_setting;
NMConnection *connection;
@@ -59,7 +58,8 @@ struct _CEPageClass
{
GObjectClass parent_class;
- gboolean (*validate) (CEPage *page, NMConnection *connection, GError **error);
+ gboolean (*validate) (CEPage *page, NMConnection *connection, GError **error);
+ const gchar *(*get_title) (CEPage *page);
void (*changed) (CEPage *page);
void (*initialized) (CEPage *page, GError *error);
};
@@ -77,8 +77,7 @@ void ce_page_changed (CEPage *page);
CEPage *ce_page_new (GType type,
NMConnection *connection,
NMClient *client,
- const gchar *ui_resource,
- const gchar *title);
+ const gchar *ui_resource);
void ce_page_complete_init (CEPage *page,
const gchar *setting_name,
GVariant *variant,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]