network: Move GtkBuilder code from EAPMethod to subclasses

This commit is contained in:
Robert Ancell 2019-11-07 09:26:20 +13:00 committed by Georges Basile Stavracas Neto
parent b936955ff3
commit 113bead879
8 changed files with 118 additions and 80 deletions

View file

@ -38,6 +38,7 @@
struct _EAPMethodFAST {
EAPMethod parent;
GtkBuilder *builder;
GtkEntry *anon_identity_entry;
GtkLabel *anon_identity_label;
GtkGrid *grid;
@ -59,6 +60,7 @@ destroy (EAPMethod *parent)
{
EAPMethodFAST *self = (EAPMethodFAST *) parent;
g_clear_object (&self->builder);
g_clear_object (&self->size_group);
}
@ -316,6 +318,7 @@ eap_method_fast_new (WirelessSecurity *ws_parent,
NMSetting8021x *s_8021x = NULL;
const char *filename;
gboolean provisioning_enabled = TRUE;
g_autoptr(GError) error = NULL;
parent = eap_method_init (sizeof (EAPMethodFAST),
validate,
@ -325,7 +328,6 @@ eap_method_fast_new (WirelessSecurity *ws_parent,
get_widget,
get_default_field,
destroy,
"/org/gnome/ControlCenter/network/eap-method-fast.ui",
FALSE);
if (!parent)
return NULL;
@ -335,16 +337,22 @@ eap_method_fast_new (WirelessSecurity *ws_parent,
self->sec_parent = ws_parent;
self->is_editor = is_editor;
self->anon_identity_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "anon_identity_entry"));
self->anon_identity_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "anon_identity_label"));
self->grid = GTK_GRID (gtk_builder_get_object (parent->builder, "grid"));
self->inner_auth_combo = GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
self->inner_auth_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "inner_auth_label"));
self->inner_auth_box = GTK_BOX (gtk_builder_get_object (parent->builder, "inner_auth_box"));
self->pac_file_button = GTK_FILE_CHOOSER_BUTTON (gtk_builder_get_object (parent->builder, "pac_file_button"));
self->pac_file_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "pac_file_label"));
self->pac_provision_check = GTK_CHECK_BUTTON (gtk_builder_get_object (parent->builder, "pac_provision_check"));
self->pac_provision_combo = GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "pac_provision_combo"));
self->builder = gtk_builder_new ();
if (!gtk_builder_add_from_resource (self->builder, "/org/gnome/ControlCenter/network/eap-method-fast.ui", &error)) {
g_warning ("Couldn't load UI builder resource: %s", error->message);
return NULL;
}
self->anon_identity_entry = GTK_ENTRY (gtk_builder_get_object (self->builder, "anon_identity_entry"));
self->anon_identity_label = GTK_LABEL (gtk_builder_get_object (self->builder, "anon_identity_label"));
self->grid = GTK_GRID (gtk_builder_get_object (self->builder, "grid"));
self->inner_auth_combo = GTK_COMBO_BOX (gtk_builder_get_object (self->builder, "inner_auth_combo"));
self->inner_auth_label = GTK_LABEL (gtk_builder_get_object (self->builder, "inner_auth_label"));
self->inner_auth_box = GTK_BOX (gtk_builder_get_object (self->builder, "inner_auth_box"));
self->pac_file_button = GTK_FILE_CHOOSER_BUTTON (gtk_builder_get_object (self->builder, "pac_file_button"));
self->pac_file_label = GTK_LABEL (gtk_builder_get_object (self->builder, "pac_file_label"));
self->pac_provision_check = GTK_CHECK_BUTTON (gtk_builder_get_object (self->builder, "pac_provision_check"));
self->pac_provision_combo = GTK_COMBO_BOX (gtk_builder_get_object (self->builder, "pac_provision_combo"));
if (connection)
s_8021x = nm_connection_get_setting_802_1x (connection);

View file

@ -35,6 +35,7 @@
struct _EAPMethodLEAP {
EAPMethod parent;
GtkBuilder *builder;
GtkGrid *grid;
GtkEntry *password_entry;
GtkLabel *password_label;
@ -180,6 +181,7 @@ destroy (EAPMethod *parent)
{
EAPMethodLEAP *self = (EAPMethodLEAP *) parent;
g_clear_object (&self->builder);
g_signal_handlers_disconnect_by_data (self->grid, self);
g_signal_handlers_disconnect_by_data (self->username_entry, self->ws_parent);
g_signal_handlers_disconnect_by_data (self->password_entry, self->ws_parent);
@ -200,6 +202,7 @@ eap_method_leap_new (WirelessSecurity *ws_parent,
EAPMethodLEAP *self;
EAPMethod *parent;
NMSetting8021x *s_8021x = NULL;
g_autoptr(GError) error = NULL;
parent = eap_method_init (sizeof (EAPMethodLEAP),
validate,
@ -209,7 +212,6 @@ eap_method_leap_new (WirelessSecurity *ws_parent,
get_widget,
get_default_field,
destroy,
"/org/gnome/ControlCenter/network/eap-method-leap.ui",
FALSE);
if (!parent)
return NULL;
@ -219,12 +221,18 @@ eap_method_leap_new (WirelessSecurity *ws_parent,
self->editing_connection = secrets_only ? FALSE : TRUE;
self->ws_parent = ws_parent;
self->grid = GTK_GRID (gtk_builder_get_object (parent->builder, "grid"));
self->password_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "password_entry"));
self->password_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "password_label"));
self->show_password_check = GTK_CHECK_BUTTON (gtk_builder_get_object (parent->builder, "show_password_check"));
self->username_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "username_entry"));
self->username_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "username_label"));
self->builder = gtk_builder_new ();
if (!gtk_builder_add_from_resource (self->builder, "/org/gnome/ControlCenter/network/eap-method-leap.ui", &error)) {
g_warning ("Couldn't load UI builder resource: %s", error->message);
return NULL;
}
self->grid = GTK_GRID (gtk_builder_get_object (self->builder, "grid"));
self->password_entry = GTK_ENTRY (gtk_builder_get_object (self->builder, "password_entry"));
self->password_label = GTK_LABEL (gtk_builder_get_object (self->builder, "password_label"));
self->show_password_check = GTK_CHECK_BUTTON (gtk_builder_get_object (self->builder, "show_password_check"));
self->username_entry = GTK_ENTRY (gtk_builder_get_object (self->builder, "username_entry"));
self->username_label = GTK_LABEL (gtk_builder_get_object (self->builder, "username_label"));
g_signal_connect_swapped (self->grid, "realize", G_CALLBACK (widgets_realized), self);
g_signal_connect_swapped (self->grid, "unrealize", G_CALLBACK (widgets_unrealized), self);

View file

@ -37,6 +37,7 @@
struct _EAPMethodPEAP {
EAPMethod parent;
GtkBuilder *builder;
GtkEntry *anon_identity_entry;
GtkLabel *anon_identity_label;
GtkFileChooserButton *ca_cert_button;
@ -59,6 +60,7 @@ destroy (EAPMethod *parent)
{
EAPMethodPEAP *self = (EAPMethodPEAP *) parent;
g_clear_object (&self->builder);
g_clear_object (&self->size_group);
}
@ -324,6 +326,7 @@ eap_method_peap_new (WirelessSecurity *ws_parent,
GtkFileFilter *filter;
NMSetting8021x *s_8021x = NULL;
const char *filename;
g_autoptr(GError) error = NULL;
parent = eap_method_init (sizeof (EAPMethodPEAP),
validate,
@ -333,7 +336,6 @@ eap_method_peap_new (WirelessSecurity *ws_parent,
get_widget,
get_default_field,
destroy,
"/org/gnome/ControlCenter/network/eap-method-peap.ui",
FALSE);
if (!parent)
return NULL;
@ -343,17 +345,23 @@ eap_method_peap_new (WirelessSecurity *ws_parent,
self->sec_parent = ws_parent;
self->is_editor = is_editor;
self->anon_identity_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "anon_identity_entry"));
self->anon_identity_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "anon_identity_label"));
self->ca_cert_button = GTK_FILE_CHOOSER_BUTTON (gtk_builder_get_object (parent->builder, "ca_cert_button"));
self->ca_cert_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "ca_cert_label"));
self->ca_cert_not_required_check = GTK_CHECK_BUTTON (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check"));
self->grid = GTK_GRID (gtk_builder_get_object (parent->builder, "grid"));
self->inner_auth_box = GTK_BOX (gtk_builder_get_object (parent->builder, "inner_auth_box"));
self->inner_auth_combo = GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
self->inner_auth_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "inner_auth_label"));
self->version_combo = GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "version_combo"));
self->version_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "version_label"));
self->builder = gtk_builder_new ();
if (!gtk_builder_add_from_resource (self->builder, "/org/gnome/ControlCenter/network/eap-method-peap.ui", &error)) {
g_warning ("Couldn't load UI builder resource: %s", error->message);
return NULL;
}
self->anon_identity_entry = GTK_ENTRY (gtk_builder_get_object (self->builder, "anon_identity_entry"));
self->anon_identity_label = GTK_LABEL (gtk_builder_get_object (self->builder, "anon_identity_label"));
self->ca_cert_button = GTK_FILE_CHOOSER_BUTTON (gtk_builder_get_object (self->builder, "ca_cert_button"));
self->ca_cert_label = GTK_LABEL (gtk_builder_get_object (self->builder, "ca_cert_label"));
self->ca_cert_not_required_check = GTK_CHECK_BUTTON (gtk_builder_get_object (self->builder, "ca_cert_not_required_check"));
self->grid = GTK_GRID (gtk_builder_get_object (self->builder, "grid"));
self->inner_auth_box = GTK_BOX (gtk_builder_get_object (self->builder, "inner_auth_box"));
self->inner_auth_combo = GTK_COMBO_BOX (gtk_builder_get_object (self->builder, "inner_auth_combo"));
self->inner_auth_label = GTK_LABEL (gtk_builder_get_object (self->builder, "inner_auth_label"));
self->version_combo = GTK_COMBO_BOX (gtk_builder_get_object (self->builder, "version_combo"));
self->version_label = GTK_LABEL (gtk_builder_get_object (self->builder, "version_label"));
if (connection)
s_8021x = nm_connection_get_setting_802_1x (connection);

View file

@ -35,6 +35,7 @@
struct _EAPMethodSimple {
EAPMethod parent;
GtkBuilder *builder;
GtkGrid *grid;
GtkEntry *password_entry;
GtkLabel *password_label;
@ -273,6 +274,7 @@ destroy (EAPMethod *parent)
{
EAPMethodSimple *self = (EAPMethodSimple *) parent;
g_clear_object (&self->builder);
g_signal_handlers_disconnect_by_data (self->grid, self);
g_signal_handlers_disconnect_by_data (self->username_entry, self->ws_parent);
g_signal_handlers_disconnect_by_data (self->password_entry, self->ws_parent);
@ -297,6 +299,7 @@ eap_method_simple_new (WirelessSecurity *ws_parent,
EAPMethod *parent;
EAPMethodSimple *self;
NMSetting8021x *s_8021x = NULL;
g_autoptr(GError) error = NULL;
parent = eap_method_init (sizeof (EAPMethodSimple),
validate,
@ -306,7 +309,6 @@ eap_method_simple_new (WirelessSecurity *ws_parent,
get_widget,
get_default_field,
destroy,
"/org/gnome/ControlCenter/network/eap-method-simple.ui",
flags & EAP_METHOD_SIMPLE_FLAG_PHASE2);
if (!parent)
return NULL;
@ -318,12 +320,18 @@ eap_method_simple_new (WirelessSecurity *ws_parent,
self->type = type;
g_assert (type < EAP_METHOD_SIMPLE_TYPE_LAST);
self->grid = GTK_GRID (gtk_builder_get_object (parent->builder, "grid"));
self->password_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "password_label"));
self->username_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "username_label"));
self->password_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "password_entry"));
self->show_password_check = GTK_TOGGLE_BUTTON (gtk_builder_get_object (parent->builder, "show_password_check"));
self->username_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "username_entry"));
self->builder = gtk_builder_new ();
if (!gtk_builder_add_from_resource (self->builder, "/org/gnome/ControlCenter/network/eap-method-simple.ui", &error)) {
g_warning ("Couldn't load UI builder resource: %s", error->message);
return NULL;
}
self->grid = GTK_GRID (gtk_builder_get_object (self->builder, "grid"));
self->password_label = GTK_LABEL (gtk_builder_get_object (self->builder, "password_label"));
self->username_label = GTK_LABEL (gtk_builder_get_object (self->builder, "username_label"));
self->password_entry = GTK_ENTRY (gtk_builder_get_object (self->builder, "password_entry"));
self->show_password_check = GTK_TOGGLE_BUTTON (gtk_builder_get_object (self->builder, "show_password_check"));
self->username_entry = GTK_ENTRY (gtk_builder_get_object (self->builder, "username_entry"));
g_signal_connect_swapped (self->grid, "realize", G_CALLBACK (widgets_realized), self);
g_signal_connect_swapped (self->grid, "unrealize", G_CALLBACK (widgets_unrealized), self);

View file

@ -35,6 +35,7 @@
struct _EAPMethodTLS {
EAPMethod parent;
GtkBuilder *builder;
GtkFileChooserButton *ca_cert_button;
GtkLabel *ca_cert_label;
GtkCheckButton *ca_cert_not_required_check;
@ -53,6 +54,13 @@ struct _EAPMethodTLS {
gboolean editing_connection;
};
static void
destroy (EAPMethod *parent)
{
EAPMethodTLS *self = (EAPMethodTLS *) parent;
g_clear_object (&self->builder);
}
static void
show_toggled_cb (EAPMethodTLS *self)
@ -420,6 +428,7 @@ eap_method_tls_new (WirelessSecurity *ws_parent,
EAPMethod *parent;
NMSetting8021x *s_8021x = NULL;
gboolean ca_not_required = FALSE;
g_autoptr(GError) error = NULL;
parent = eap_method_init (sizeof (EAPMethodTLS),
validate,
@ -428,8 +437,7 @@ eap_method_tls_new (WirelessSecurity *ws_parent,
update_secrets,
get_widget,
get_default_field,
NULL,
"/org/gnome/ControlCenter/network/eap-method-tls.ui",
destroy,
phase2);
if (!parent)
return NULL;
@ -441,19 +449,25 @@ eap_method_tls_new (WirelessSecurity *ws_parent,
self->sec_parent = ws_parent;
self->editing_connection = secrets_only ? FALSE : TRUE;
self->ca_cert_button = GTK_FILE_CHOOSER_BUTTON (gtk_builder_get_object (parent->builder, "ca_cert_button"));
self->ca_cert_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "ca_cert_label"));
self->ca_cert_not_required_check = GTK_CHECK_BUTTON (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check"));
self->grid = GTK_GRID (gtk_builder_get_object (parent->builder, "grid"));
self->identity_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "identity_entry"));
self->identity_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "identity_label"));
self->private_key_button = GTK_FILE_CHOOSER_BUTTON (gtk_builder_get_object (parent->builder, "private_key_button"));
self->private_key_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "private_key_label"));
self->private_key_password_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "private_key_password_entry"));
self->private_key_password_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "private_key_password_label"));
self->show_password_check = GTK_CHECK_BUTTON (gtk_builder_get_object (parent->builder, "show_password_check"));
self->user_cert_button = GTK_FILE_CHOOSER_BUTTON (gtk_builder_get_object (parent->builder, "user_cert_button"));
self->user_cert_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "user_cert_label"));
self->builder = gtk_builder_new ();
if (!gtk_builder_add_from_resource (self->builder, "/org/gnome/ControlCenter/network/eap-method-tls.ui", &error)) {
g_warning ("Couldn't load UI builder resource: %s", error->message);
return NULL;
}
self->ca_cert_button = GTK_FILE_CHOOSER_BUTTON (gtk_builder_get_object (self->builder, "ca_cert_button"));
self->ca_cert_label = GTK_LABEL (gtk_builder_get_object (self->builder, "ca_cert_label"));
self->ca_cert_not_required_check = GTK_CHECK_BUTTON (gtk_builder_get_object (self->builder, "ca_cert_not_required_check"));
self->grid = GTK_GRID (gtk_builder_get_object (self->builder, "grid"));
self->identity_entry = GTK_ENTRY (gtk_builder_get_object (self->builder, "identity_entry"));
self->identity_label = GTK_LABEL (gtk_builder_get_object (self->builder, "identity_label"));
self->private_key_button = GTK_FILE_CHOOSER_BUTTON (gtk_builder_get_object (self->builder, "private_key_button"));
self->private_key_label = GTK_LABEL (gtk_builder_get_object (self->builder, "private_key_label"));
self->private_key_password_entry = GTK_ENTRY (gtk_builder_get_object (self->builder, "private_key_password_entry"));
self->private_key_password_label = GTK_LABEL (gtk_builder_get_object (self->builder, "private_key_password_label"));
self->show_password_check = GTK_CHECK_BUTTON (gtk_builder_get_object (self->builder, "show_password_check"));
self->user_cert_button = GTK_FILE_CHOOSER_BUTTON (gtk_builder_get_object (self->builder, "user_cert_button"));
self->user_cert_label = GTK_LABEL (gtk_builder_get_object (self->builder, "user_cert_label"));
if (connection)
s_8021x = nm_connection_get_setting_802_1x (connection);

View file

@ -37,6 +37,7 @@
struct _EAPMethodTTLS {
EAPMethod parent;
GtkBuilder *builder;
GtkEntry *anon_identity_entry;
GtkLabel *anon_identity_label;
GtkFileChooserButton *ca_cert_button;
@ -59,6 +60,7 @@ destroy (EAPMethod *parent)
{
EAPMethodTTLS *self = (EAPMethodTTLS *) parent;
g_clear_object (&self->builder);
g_clear_object (&self->size_group);
}
@ -377,6 +379,7 @@ eap_method_ttls_new (WirelessSecurity *ws_parent,
GtkFileFilter *filter;
NMSetting8021x *s_8021x = NULL;
const char *filename;
g_autoptr(GError) error = NULL;
parent = eap_method_init (sizeof (EAPMethodTTLS),
validate,
@ -386,7 +389,6 @@ eap_method_ttls_new (WirelessSecurity *ws_parent,
get_widget,
get_default_field,
destroy,
"/org/gnome/ControlCenter/network/eap-method-ttls.ui",
FALSE);
if (!parent)
return NULL;
@ -396,17 +398,23 @@ eap_method_ttls_new (WirelessSecurity *ws_parent,
self->sec_parent = ws_parent;
self->is_editor = is_editor;
self->anon_identity_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "anon_identity_entry"));
self->anon_identity_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "anon_identity_label"));
self->ca_cert_button = GTK_FILE_CHOOSER_BUTTON (gtk_builder_get_object (parent->builder, "ca_cert_button"));
self->ca_cert_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "ca_cert_label"));
self->ca_cert_not_required_check = GTK_CHECK_BUTTON (gtk_builder_get_object (parent->builder, "ca_cert_not_required_check"));
self->domain_match_entry = GTK_ENTRY (gtk_builder_get_object (parent->builder, "domain_match_entry"));
self->domain_match_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "domain_match_label"));
self->grid = GTK_GRID (gtk_builder_get_object (parent->builder, "grid"));
self->inner_auth_combo = GTK_COMBO_BOX (gtk_builder_get_object (parent->builder, "inner_auth_combo"));
self->inner_auth_label = GTK_LABEL (gtk_builder_get_object (parent->builder, "inner_auth_label"));
self->inner_auth_box = GTK_BOX (gtk_builder_get_object (parent->builder, "inner_auth_box"));
self->builder = gtk_builder_new ();
if (!gtk_builder_add_from_resource (self->builder, "/org/gnome/ControlCenter/network/eap-method-ttls.ui", &error)) {
g_warning ("Couldn't load UI builder resource: %s", error->message);
return NULL;
}
self->anon_identity_entry = GTK_ENTRY (gtk_builder_get_object (self->builder, "anon_identity_entry"));
self->anon_identity_label = GTK_LABEL (gtk_builder_get_object (self->builder, "anon_identity_label"));
self->ca_cert_button = GTK_FILE_CHOOSER_BUTTON (gtk_builder_get_object (self->builder, "ca_cert_button"));
self->ca_cert_label = GTK_LABEL (gtk_builder_get_object (self->builder, "ca_cert_label"));
self->ca_cert_not_required_check = GTK_CHECK_BUTTON (gtk_builder_get_object (self->builder, "ca_cert_not_required_check"));
self->domain_match_entry = GTK_ENTRY (gtk_builder_get_object (self->builder, "domain_match_entry"));
self->domain_match_label = GTK_LABEL (gtk_builder_get_object (self->builder, "domain_match_label"));
self->grid = GTK_GRID (gtk_builder_get_object (self->builder, "grid"));
self->inner_auth_combo = GTK_COMBO_BOX (gtk_builder_get_object (self->builder, "inner_auth_combo"));
self->inner_auth_label = GTK_LABEL (gtk_builder_get_object (self->builder, "inner_auth_label"));
self->inner_auth_box = GTK_BOX (gtk_builder_get_object (self->builder, "inner_auth_box"));
if (connection)
s_8021x = nm_connection_get_setting_802_1x (connection);

View file

@ -134,14 +134,11 @@ eap_method_init (gsize obj_size,
EMGetWidgetFunc get_widget,
EMGetWidgetFunc get_default_field,
EMDestroyFunc destroy,
const char *ui_resource,
gboolean phase2)
{
g_autoptr(EAPMethod) self = NULL;
g_autoptr(GError) error = NULL;
g_return_val_if_fail (obj_size > 0, NULL);
g_return_val_if_fail (ui_resource != NULL, NULL);
self = g_slice_alloc0 (obj_size);
g_assert (self);
@ -155,14 +152,6 @@ eap_method_init (gsize obj_size,
self->get_widget = get_widget;
self->get_default_field = get_default_field;
self->phase2 = phase2;
self->builder = gtk_builder_new ();
if (!gtk_builder_add_from_resource (self->builder, ui_resource, &error)) {
g_warning ("Couldn't load UI builder resource %s: %s",
ui_resource, error->message);
return NULL;
}
self->destroy = destroy;
return g_steal_pointer (&self);
@ -190,8 +179,6 @@ eap_method_unref (EAPMethod *self)
if (self->destroy)
self->destroy (self);
g_clear_object (&self->builder);
g_slice_free1 (self->obj_size, self);
}
}

View file

@ -38,8 +38,6 @@ struct _EAPMethod {
guint32 refcount;
gsize obj_size;
GtkBuilder *builder;
const char *password_flags_name;
gboolean phase2;
@ -84,7 +82,6 @@ EAPMethod *eap_method_init (gsize obj_size,
EMGetWidgetFunc get_widget,
EMGetWidgetFunc get_default_field,
EMDestroyFunc destroy,
const char *ui_resource,
gboolean phase2);
GtkFileFilter * eap_method_default_file_chooser_filter_new (gboolean privkey);