From 76984ac55ee33ff3db782853fcf95fa14e0a9f98 Mon Sep 17 00:00:00 2001 From: Dan Breslau Date: Wed, 2 Aug 2017 03:59:35 +0100 Subject: [PATCH] Checking in moonshot-identity-dialog.c, since it gets compiled incorrectly on Centos 6 --- .gitignore | 1 - src/moonshot-identity-dialog.c | 1816 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 1816 insertions(+), 1 deletion(-) create mode 100644 src/moonshot-identity-dialog.c diff --git a/.gitignore b/.gitignore index fbc5605..04e6eb1 100755 --- a/.gitignore +++ b/.gitignore @@ -34,7 +34,6 @@ src/moonshot-custom-vbox.c src/moonshot-id.c src/moonshot-idcard-widget.c src/moonshot-idcard-store.c -src/moonshot-identity-dialog.c src/moonshot-identity-request.c src/moonshot-identity-management-view.c src/moonshot-identity-manager-app.c diff --git a/src/moonshot-identity-dialog.c b/src/moonshot-identity-dialog.c new file mode 100644 index 0000000..a332a99 --- /dev/null +++ b/src/moonshot-identity-dialog.c @@ -0,0 +1,1816 @@ +/* moonshot-identity-dialog.c generated by valac 0.10.4, the Vala compiler + * generated from moonshot-identity-dialog.vala, do not modify */ + +/* + * Copyright (c) 2016, JANET(UK) + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * 3. Neither the name of JANET(UK) nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. +*/ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +#define TYPE_IDENTITY_DIALOG (identity_dialog_get_type ()) +#define IDENTITY_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_DIALOG, IdentityDialog)) +#define IDENTITY_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_DIALOG, IdentityDialogClass)) +#define IS_IDENTITY_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_DIALOG)) +#define IS_IDENTITY_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_DIALOG)) +#define IDENTITY_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_DIALOG, IdentityDialogClass)) + +typedef struct _IdentityDialog IdentityDialog; +typedef struct _IdentityDialogClass IdentityDialogClass; +typedef struct _IdentityDialogPrivate IdentityDialogPrivate; + +#define TYPE_ID_CARD (id_card_get_type ()) +#define ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_ID_CARD, IdCard)) +#define ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_ID_CARD, IdCardClass)) +#define IS_ID_CARD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_ID_CARD)) +#define IS_ID_CARD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_ID_CARD)) +#define ID_CARD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_ID_CARD, IdCardClass)) + +typedef struct _IdCard IdCard; +typedef struct _IdCardClass IdCardClass; + +#define TYPE_MOONSHOT_LOGGER (moonshot_logger_get_type ()) +#define MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLogger)) +#define MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass)) +#define IS_MOONSHOT_LOGGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_MOONSHOT_LOGGER)) +#define IS_MOONSHOT_LOGGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_MOONSHOT_LOGGER)) +#define MOONSHOT_LOGGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_MOONSHOT_LOGGER, MoonshotLoggerClass)) + +typedef struct _MoonshotLogger MoonshotLogger; +typedef struct _MoonshotLoggerClass MoonshotLoggerClass; +#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL))) + +#define TYPE_IDENTITY_MANAGER_VIEW (identity_manager_view_get_type ()) +#define IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerView)) +#define IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass)) +#define IS_IDENTITY_MANAGER_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_IDENTITY_MANAGER_VIEW)) +#define IS_IDENTITY_MANAGER_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_IDENTITY_MANAGER_VIEW)) +#define IDENTITY_MANAGER_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_IDENTITY_MANAGER_VIEW, IdentityManagerViewClass)) + +typedef struct _IdentityManagerView IdentityManagerView; +typedef struct _IdentityManagerViewClass IdentityManagerViewClass; +#define _g_free0(var) (var = (g_free (var), NULL)) + +#define TYPE_TRUST_ANCHOR (trust_anchor_get_type ()) +#define TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_TRUST_ANCHOR, TrustAnchor)) +#define TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_TRUST_ANCHOR, TrustAnchorClass)) +#define IS_TRUST_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_TRUST_ANCHOR)) +#define IS_TRUST_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_TRUST_ANCHOR)) +#define TRUST_ANCHOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_TRUST_ANCHOR, TrustAnchorClass)) + +typedef struct _TrustAnchor TrustAnchor; +typedef struct _TrustAnchorClass TrustAnchorClass; +#define _g_list_free0(var) ((var == NULL) ? NULL : (var = (g_list_free (var), NULL))) + +#define TRUST_ANCHOR_TYPE_TRUST_ANCHOR_TYPE (trust_anchor_trust_anchor_type_get_type ()) +typedef struct _Block3Data Block3Data; +typedef struct _Block5Data Block5Data; +typedef struct _Block4Data Block4Data; +#define _g_regex_unref0(var) ((var == NULL) ? NULL : (var = (g_regex_unref (var), NULL))) +#define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL))) + +struct _IdentityDialog { + GtkDialog parent_instance; + IdentityDialogPrivate * priv; + gboolean complete; + gboolean clear_trust_anchor; +}; + +struct _IdentityDialogClass { + GtkDialogClass parent_class; +}; + +struct _IdentityDialogPrivate { + GtkEntry* displayname_entry; + GtkLabel* displayname_label; + GtkEntry* realm_entry; + GtkLabel* realm_label; + GtkEntry* username_entry; + GtkLabel* username_label; + GtkEntry* password_entry; + GtkLabel* password_label; + GtkCheckButton* remember_checkbutton; + GtkLabel* message_label; + IdCard* card; + GeeArrayList* services; + GtkLabel* selected_item; +}; + +typedef enum { + TRUST_ANCHOR_TRUST_ANCHOR_TYPE_EMPTY, + TRUST_ANCHOR_TRUST_ANCHOR_TYPE_CA_CERT, + TRUST_ANCHOR_TRUST_ANCHOR_TYPE_SERVER_CERT +} TrustAnchorTrustAnchorType; + +struct _Block3Data { + int _ref_count_; + IdentityDialog * self; + gint ncolumns; + char* ta_label_prefix; + char* none; + GtkLabel* ta_label; + GtkAttachOptions fill_and_expand; + GtkTable* ta_table; + IdCard* id; +}; + +struct _Block5Data { + int _ref_count_; + Block4Data * _data4_; + GtkLabel* label; +}; + +struct _Block4Data { + int _ref_count_; + IdentityDialog * self; + GtkButton* remove_button; + GtkTable* services_table; +}; + + +extern char* export_directory; +char* export_directory = NULL; +static GdkColor identity_dialog_white; +static GdkColor identity_dialog_white = {0}; +static GdkColor identity_dialog_selected_color; +static GdkColor identity_dialog_selected_color = {0}; +static MoonshotLogger* identity_dialog_logger; +static MoonshotLogger* identity_dialog_logger = NULL; +static gpointer identity_dialog_parent_class = NULL; + +#define CANCEL GTK_STOCK_CANCEL +GType identity_dialog_get_type (void) G_GNUC_CONST; +GType id_card_get_type (void) G_GNUC_CONST; +#define IDENTITY_DIALOG_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_IDENTITY_DIALOG, IdentityDialogPrivate)) +enum { + IDENTITY_DIALOG_DUMMY_PROPERTY, + IDENTITY_DIALOG_DISPLAY_NAME, + IDENTITY_DIALOG_ISSUER, + IDENTITY_DIALOG_USERNAME, + IDENTITY_DIALOG_PASSWORD, + IDENTITY_DIALOG_STORE_PASSWORD +}; +void make_color (guint16 red, guint16 green, guint16 blue, GdkColor* result); +GType moonshot_logger_get_type (void) G_GNUC_CONST; +MoonshotLogger* get_logger (const char* name); +#define IDENTITY_DIALOG_displayname_labeltext _ ("Display Name") +#define IDENTITY_DIALOG_realm_labeltext _ ("Realm") +#define IDENTITY_DIALOG_username_labeltext _ ("Username") +#define IDENTITY_DIALOG_password_labeltext _ ("Password") +void identity_dialog_clear_password (IdentityDialog* self); +void clear_password_entry (GtkEntry* entry); +GeeArrayList* identity_dialog_get_services (IdentityDialog* self); +GType identity_manager_view_get_type (void) G_GNUC_CONST; +IdentityDialog* identity_dialog_new (IdentityManagerView* parent); +IdentityDialog* identity_dialog_construct (GType object_type, IdentityManagerView* parent); +IdentityDialog* identity_dialog_new_with_idcard (IdCard* a_card, const char* title, IdentityManagerView* parent); +IdentityDialog* identity_dialog_construct_with_idcard (GType object_type, IdCard* a_card, const char* title, IdentityManagerView* parent); +IdCard* id_card_new (void); +IdCard* id_card_construct (GType object_type); +const char* id_card_get_display_name (IdCard* self); +const char* id_card_get_issuer (IdCard* self); +const char* id_card_get_username (IdCard* self); +gboolean id_card_get_store_password (IdCard* self); +const char* id_card_get_password (IdCard* self); +void set_atk_relation (GtkWidget* widget, GtkWidget* target_widget, AtkRelationType relationship); +static void identity_dialog_add_as_vbox (GtkBox* content_area, GtkLabel* label, GtkEntry* entry); +static void identity_dialog_on_response (IdentityDialog* self, GtkDialog* source, gint response_id); +static void _identity_dialog_on_response_gtk_dialog_response (GtkDialog* _sender, gint response_id, gpointer self); +GeeArrayList* id_card_get_services (IdCard* self); +static GtkWidget* identity_dialog_make_trust_anchor_box (IdentityDialog* self, IdCard* id); +static GtkVBox* identity_dialog_make_services_vbox (IdentityDialog* self); +gboolean id_card_is_no_identity (IdCard* self); +static void _lambda9_ (IdentityDialog* self); +void moonshot_logger_trace (MoonshotLogger* self, const char* message, GError* e); +static void __lambda9__gtk_object_destroy (GtkObject* _sender, gpointer self); +void set_bg_color (GtkWidget* w); +GType trust_anchor_get_type (void) G_GNUC_CONST; +TrustAnchor* id_card_get_trust_anchor (IdCard* self); +gboolean trust_anchor_is_empty (TrustAnchor* self); +static void _lambda5_ (GtkButton* w, Block3Data* _data3_); +gboolean warning_dialog_confirm (GtkWindow* parent, const char* message, const char* dialog_name); +static void __lambda5__gtk_button_clicked (GtkButton* _sender, gpointer self); +const char* trust_anchor_get_datetime_added (TrustAnchor* self); +GType trust_anchor_trust_anchor_type_get_type (void) G_GNUC_CONST; +TrustAnchorTrustAnchorType trust_anchor_get_anchor_type (TrustAnchor* self); +GtkWidget* make_ta_fingerprint_widget (const char* server_cert, const char* label_text); +const char* trust_anchor_get_server_cert (TrustAnchor* self); +static void _lambda6_ (GtkButton* w, Block3Data* _data3_); +static void identity_dialog_export_certificate (IdentityDialog* self, IdCard* id); +static void __lambda6__gtk_button_clicked (GtkButton* _sender, gpointer self); +const char* trust_anchor_get_subject (TrustAnchor* self); +const char* trust_anchor_get_subject_alt (TrustAnchor* self); +char* trust_anchor_get_expiration_date (TrustAnchor* self, char** err_out); +static Block3Data* block3_data_ref (Block3Data* _data3_); +static void block3_data_unref (Block3Data* _data3_); +static char* identity_dialog_update_preamble (const char* preamble); +static char* identity_dialog_update_message (const char* old_message, const char* new_item); +static void identity_dialog_check_field (const char* field, GtkLabel* label, const char* fieldname, char** preamble, char** message); +static gboolean identity_dialog_check_fields (IdentityDialog* self); +gboolean identity_dialog_get_store_password (IdentityDialog* self); +const char* identity_dialog_get_password (IdentityDialog* self); +const char* identity_dialog_get_display_name (IdentityDialog* self); +const char* identity_dialog_get_username (IdentityDialog* self); +const char* identity_dialog_get_issuer (IdentityDialog* self); +static gboolean _lambda7_ (Block5Data* _data5_); +static gboolean __lambda7__gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self); +static Block5Data* block5_data_ref (Block5Data* _data5_); +static void block5_data_unref (Block5Data* _data5_); +static void _lambda8_ (GtkButton* remove_button, Block4Data* _data4_); +static void __lambda8__gtk_button_clicked (GtkButton* _sender, gpointer self); +static Block4Data* block4_data_ref (Block4Data* _data4_); +static void block4_data_unref (Block4Data* _data4_); +const char* trust_anchor_get_ca_cert (TrustAnchor* self); +static void identity_dialog_finalize (GObject* obj); +static void identity_dialog_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec); +static int _vala_strcmp0 (const char * str1, const char * str2); + + + +/** + * Don't leave passwords in memory longer than necessary. + * This may not actually erase the password data bytes, but it seems to be the best we can do. + */ +#line 103 "moonshot-identity-dialog.vala" +void identity_dialog_clear_password (IdentityDialog* self) { +#line 103 "moonshot-identity-dialog.vala" + g_return_if_fail (self != NULL); +#line 104 "moonshot-identity-dialog.vala" + clear_password_entry (self->priv->password_entry); +#line 280 "moonshot-identity-dialog.c" +} + + +static gpointer _g_object_ref0 (gpointer self) { + return self ? g_object_ref (self) : NULL; +} + + +#line 107 "moonshot-identity-dialog.vala" +GeeArrayList* identity_dialog_get_services (IdentityDialog* self) { +#line 291 "moonshot-identity-dialog.c" + GeeArrayList* result = NULL; +#line 107 "moonshot-identity-dialog.vala" + g_return_val_if_fail (self != NULL, NULL); +#line 295 "moonshot-identity-dialog.c" + result = _g_object_ref0 (self->priv->services); +#line 109 "moonshot-identity-dialog.vala" + return result; +#line 299 "moonshot-identity-dialog.c" +} + + +#line 112 "moonshot-identity-dialog.vala" +IdentityDialog* identity_dialog_construct (GType object_type, IdentityManagerView* parent) { +#line 305 "moonshot-identity-dialog.c" + IdentityDialog * self = NULL; +#line 112 "moonshot-identity-dialog.vala" + g_return_val_if_fail (parent != NULL, NULL); +#line 114 "moonshot-identity-dialog.vala" + self = (IdentityDialog*) identity_dialog_construct_with_idcard (object_type, NULL, _ ("Add ID Card"), parent); +#line 311 "moonshot-identity-dialog.c" + return self; +} + + +#line 112 "moonshot-identity-dialog.vala" +IdentityDialog* identity_dialog_new (IdentityManagerView* parent) { +#line 112 "moonshot-identity-dialog.vala" + return identity_dialog_construct (TYPE_IDENTITY_DIALOG, parent); +#line 320 "moonshot-identity-dialog.c" +} + + +#line 1212 "glib-2.0.vapi" +static const char* string_to_string (const char* self) { +#line 326 "moonshot-identity-dialog.c" + const char* result = NULL; +#line 1212 "glib-2.0.vapi" + g_return_val_if_fail (self != NULL, NULL); +#line 330 "moonshot-identity-dialog.c" + result = self; +#line 1213 "glib-2.0.vapi" + return result; +#line 334 "moonshot-identity-dialog.c" +} + + +#line 393 "moonshot-identity-dialog.vala" +static void _identity_dialog_on_response_gtk_dialog_response (GtkDialog* _sender, gint response_id, gpointer self) { +#line 340 "moonshot-identity-dialog.c" + identity_dialog_on_response (self, _sender, response_id); +} + + +#line 209 "moonshot-identity-dialog.vala" +static void _lambda9_ (IdentityDialog* self) { +#line 210 "moonshot-identity-dialog.vala" + moonshot_logger_trace (identity_dialog_logger, "Destroying IdentityDialog; clearing its password.", NULL); +#line 211 "moonshot-identity-dialog.vala" + identity_dialog_clear_password (self); +#line 351 "moonshot-identity-dialog.c" +} + + +#line 209 "moonshot-identity-dialog.vala" +static void __lambda9__gtk_object_destroy (GtkObject* _sender, gpointer self) { +#line 357 "moonshot-identity-dialog.c" + _lambda9_ (self); +} + + +#line 117 "moonshot-identity-dialog.vala" +IdentityDialog* identity_dialog_construct_with_idcard (GType object_type, IdCard* a_card, const char* title, IdentityManagerView* parent) { +#line 364 "moonshot-identity-dialog.c" + IdentityDialog * self; + gboolean is_new_card; + IdCard* _tmp0_; + IdCard* _tmp2_; + GtkBox* content_area; + char* _tmp3_; + GtkLabel* _tmp4_; + GtkEntry* _tmp5_; + char* _tmp6_; + GtkLabel* _tmp7_; + GtkEntry* _tmp8_; + char* _tmp9_; + GtkLabel* _tmp10_; + GtkEntry* _tmp11_; + char* _tmp12_; + GtkLabel* _tmp13_; + GtkCheckButton* _tmp14_; + GtkEntry* _tmp15_; + GtkLabel* _tmp16_; + GtkHBox* remember_hbox; + GtkHBox* _tmp17_; + GeeArrayList* _tmp18_; +#line 117 "moonshot-identity-dialog.vala" + g_return_val_if_fail (title != NULL, NULL); +#line 117 "moonshot-identity-dialog.vala" + g_return_val_if_fail (parent != NULL, NULL); +#line 391 "moonshot-identity-dialog.c" + self = g_object_newv (object_type, 0, NULL); +#line 119 "moonshot-identity-dialog.vala" + is_new_card = FALSE; +#line 120 "moonshot-identity-dialog.vala" + if (a_card == NULL) { +#line 122 "moonshot-identity-dialog.vala" + is_new_card = TRUE; +#line 399 "moonshot-identity-dialog.c" + } +#line 125 "moonshot-identity-dialog.vala" + _tmp0_ = _g_object_ref0 (a_card); +#line 125 "moonshot-identity-dialog.vala" + if (_tmp0_ == NULL) { +#line 405 "moonshot-identity-dialog.c" + IdCard* _tmp1_; +#line 125 "moonshot-identity-dialog.vala" + _tmp0_ = (_tmp1_ = id_card_new (), _g_object_unref0 (_tmp0_), _tmp1_); +#line 409 "moonshot-identity-dialog.c" + } +#line 125 "moonshot-identity-dialog.vala" + self->priv->card = (_tmp2_ = _g_object_ref0 (_tmp0_), _g_object_unref0 (self->priv->card), _tmp2_); +#line 126 "moonshot-identity-dialog.vala" + gtk_window_set_title ((GtkWindow*) self, title); +#line 127 "moonshot-identity-dialog.vala" + gtk_window_set_modal ((GtkWindow*) self, TRUE); +#line 128 "moonshot-identity-dialog.vala" + gtk_window_set_transient_for ((GtkWindow*) self, (GtkWindow*) parent); +#line 130 "moonshot-identity-dialog.vala" + gtk_dialog_add_buttons ((GtkDialog*) self, CANCEL, GTK_RESPONSE_CANCEL, _ ("OK"), GTK_RESPONSE_OK, NULL); +#line 131 "moonshot-identity-dialog.vala" + content_area = _g_object_ref0 (GTK_BOX (gtk_dialog_get_content_area ((GtkDialog*) self))); +#line 133 "moonshot-identity-dialog.vala" + self->priv->displayname_label = (_tmp4_ = g_object_ref_sink ((GtkLabel*) gtk_label_new (_tmp3_ = g_strconcat (string_to_string (IDENTITY_DIALOG_displayname_labeltext), ":", NULL))), _g_object_unref0 (self->priv->displayname_label), _tmp4_); +#line 425 "moonshot-identity-dialog.c" + _g_free0 (_tmp3_); +#line 134 "moonshot-identity-dialog.vala" + gtk_misc_set_alignment ((GtkMisc*) self->priv->displayname_label, (float) 0, (float) 0.5); +#line 135 "moonshot-identity-dialog.vala" + self->priv->displayname_entry = (_tmp5_ = g_object_ref_sink ((GtkEntry*) gtk_entry_new ()), _g_object_unref0 (self->priv->displayname_entry), _tmp5_); +#line 136 "moonshot-identity-dialog.vala" + gtk_entry_set_text (self->priv->displayname_entry, id_card_get_display_name (self->priv->card)); +#line 137 "moonshot-identity-dialog.vala" + gtk_entry_set_width_chars (self->priv->displayname_entry, 40); +#line 139 "moonshot-identity-dialog.vala" + self->priv->realm_label = (_tmp7_ = g_object_ref_sink ((GtkLabel*) gtk_label_new (_tmp6_ = g_strconcat (string_to_string (IDENTITY_DIALOG_realm_labeltext), ":", NULL))), _g_object_unref0 (self->priv->realm_label), _tmp7_); +#line 437 "moonshot-identity-dialog.c" + _g_free0 (_tmp6_); +#line 140 "moonshot-identity-dialog.vala" + gtk_misc_set_alignment ((GtkMisc*) self->priv->realm_label, (float) 0, (float) 0.5); +#line 141 "moonshot-identity-dialog.vala" + self->priv->realm_entry = (_tmp8_ = g_object_ref_sink ((GtkEntry*) gtk_entry_new ()), _g_object_unref0 (self->priv->realm_entry), _tmp8_); +#line 142 "moonshot-identity-dialog.vala" + gtk_entry_set_text (self->priv->realm_entry, id_card_get_issuer (self->priv->card)); +#line 143 "moonshot-identity-dialog.vala" + gtk_entry_set_width_chars (self->priv->realm_entry, 60); +#line 145 "moonshot-identity-dialog.vala" + self->priv->username_label = (_tmp10_ = g_object_ref_sink ((GtkLabel*) gtk_label_new (_tmp9_ = g_strconcat (string_to_string (IDENTITY_DIALOG_username_labeltext), ":", NULL))), _g_object_unref0 (self->priv->username_label), _tmp10_); +#line 449 "moonshot-identity-dialog.c" + _g_free0 (_tmp9_); +#line 146 "moonshot-identity-dialog.vala" + gtk_misc_set_alignment ((GtkMisc*) self->priv->username_label, (float) 0, (float) 0.5); +#line 147 "moonshot-identity-dialog.vala" + self->priv->username_entry = (_tmp11_ = g_object_ref_sink ((GtkEntry*) gtk_entry_new ()), _g_object_unref0 (self->priv->username_entry), _tmp11_); +#line 148 "moonshot-identity-dialog.vala" + gtk_entry_set_text (self->priv->username_entry, id_card_get_username (self->priv->card)); +#line 149 "moonshot-identity-dialog.vala" + gtk_entry_set_width_chars (self->priv->username_entry, 40); +#line 151 "moonshot-identity-dialog.vala" + self->priv->password_label = (_tmp13_ = g_object_ref_sink ((GtkLabel*) gtk_label_new (_tmp12_ = g_strconcat (string_to_string (IDENTITY_DIALOG_password_labeltext), ":", NULL))), _g_object_unref0 (self->priv->password_label), _tmp13_); +#line 461 "moonshot-identity-dialog.c" + _g_free0 (_tmp12_); +#line 152 "moonshot-identity-dialog.vala" + gtk_misc_set_alignment ((GtkMisc*) self->priv->password_label, (float) 0, (float) 0.5); +#line 154 "moonshot-identity-dialog.vala" + self->priv->remember_checkbutton = (_tmp14_ = g_object_ref_sink ((GtkCheckButton*) gtk_check_button_new_with_label (_ ("Remember password"))), _g_object_unref0 (self->priv->remember_checkbutton), _tmp14_); +#line 155 "moonshot-identity-dialog.vala" + gtk_toggle_button_set_active ((GtkToggleButton*) self->priv->remember_checkbutton, id_card_get_store_password (self->priv->card)); +#line 157 "moonshot-identity-dialog.vala" + self->priv->password_entry = (_tmp15_ = g_object_ref_sink ((GtkEntry*) gtk_entry_new ()), _g_object_unref0 (self->priv->password_entry), _tmp15_); +#line 158 "moonshot-identity-dialog.vala" + gtk_entry_set_invisible_char (self->priv->password_entry, (gunichar) '*'); +#line 159 "moonshot-identity-dialog.vala" + gtk_entry_set_visibility (self->priv->password_entry, FALSE); +#line 160 "moonshot-identity-dialog.vala" + gtk_entry_set_width_chars (self->priv->password_entry, 40); +#line 161 "moonshot-identity-dialog.vala" + gtk_entry_set_text (self->priv->password_entry, id_card_get_password (self->priv->card)); +#line 163 "moonshot-identity-dialog.vala" + self->priv->message_label = (_tmp16_ = g_object_ref_sink ((GtkLabel*) gtk_label_new ("")), _g_object_unref0 (self->priv->message_label), _tmp16_); +#line 164 "moonshot-identity-dialog.vala" + gtk_widget_set_visible ((GtkWidget*) self->priv->message_label, FALSE); +#line 166 "moonshot-identity-dialog.vala" + set_atk_relation ((GtkWidget*) self->priv->displayname_label, (GtkWidget*) self->priv->displayname_entry, ATK_RELATION_LABEL_FOR); +#line 167 "moonshot-identity-dialog.vala" + set_atk_relation ((GtkWidget*) self->priv->realm_label, (GtkWidget*) self->priv->realm_entry, ATK_RELATION_LABEL_FOR); +#line 168 "moonshot-identity-dialog.vala" + set_atk_relation ((GtkWidget*) self->priv->username_label, (GtkWidget*) self->priv->username_entry, ATK_RELATION_LABEL_FOR); +#line 169 "moonshot-identity-dialog.vala" + set_atk_relation ((GtkWidget*) self->priv->password_label, (GtkWidget*) self->priv->password_entry, ATK_RELATION_LABEL_FOR); +#line 171 "moonshot-identity-dialog.vala" + gtk_box_pack_start (content_area, (GtkWidget*) self->priv->message_label, FALSE, FALSE, (guint) 6); +#line 172 "moonshot-identity-dialog.vala" + identity_dialog_add_as_vbox (content_area, self->priv->displayname_label, self->priv->displayname_entry); +#line 173 "moonshot-identity-dialog.vala" + identity_dialog_add_as_vbox (content_area, self->priv->username_label, self->priv->username_entry); +#line 174 "moonshot-identity-dialog.vala" + identity_dialog_add_as_vbox (content_area, self->priv->realm_label, self->priv->realm_entry); +#line 175 "moonshot-identity-dialog.vala" + identity_dialog_add_as_vbox (content_area, self->priv->password_label, self->priv->password_entry); +#line 177 "moonshot-identity-dialog.vala" + remember_hbox = g_object_ref_sink ((GtkHBox*) gtk_hbox_new (FALSE, 40)); +#line 178 "moonshot-identity-dialog.vala" + gtk_box_pack_start ((GtkBox*) remember_hbox, (GtkWidget*) (_tmp17_ = g_object_ref_sink ((GtkHBox*) gtk_hbox_new (FALSE, 0))), FALSE, FALSE, (guint) 0); +#line 505 "moonshot-identity-dialog.c" + _g_object_unref0 (_tmp17_); +#line 179 "moonshot-identity-dialog.vala" + gtk_box_pack_start ((GtkBox*) remember_hbox, (GtkWidget*) self->priv->remember_checkbutton, FALSE, FALSE, (guint) 0); +#line 180 "moonshot-identity-dialog.vala" + gtk_box_pack_start (content_area, (GtkWidget*) remember_hbox, FALSE, FALSE, (guint) 2); +#line 182 "moonshot-identity-dialog.vala" + g_signal_connect_object ((GtkDialog*) self, "response", (GCallback) _identity_dialog_on_response_gtk_dialog_response, self, 0); +#line 183 "moonshot-identity-dialog.vala" + gtk_container_set_border_width ((GtkContainer*) content_area, (guint) 6); +#line 185 "moonshot-identity-dialog.vala" + self->priv->services = (_tmp18_ = gee_array_list_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, g_free, NULL), _g_object_unref0 (self->priv->services), _tmp18_); +#line 186 "moonshot-identity-dialog.vala" + gee_abstract_collection_add_all ((GeeAbstractCollection*) self->priv->services, (GeeCollection*) id_card_get_services (self->priv->card)); +#line 188 "moonshot-identity-dialog.vala" + if (!is_new_card) { +#line 521 "moonshot-identity-dialog.c" + GtkWidget* trust_anchor_box; + GtkVBox* services_vbox; + GtkAlignment* services_vbox_bottom_spacer; +#line 190 "moonshot-identity-dialog.vala" + trust_anchor_box = identity_dialog_make_trust_anchor_box (self, self->priv->card); +#line 191 "moonshot-identity-dialog.vala" + gtk_box_pack_start (content_area, trust_anchor_box, FALSE, FALSE, (guint) 15); +#line 193 "moonshot-identity-dialog.vala" + services_vbox = identity_dialog_make_services_vbox (self); +#line 194 "moonshot-identity-dialog.vala" + gtk_box_pack_start (content_area, (GtkWidget*) services_vbox, TRUE, TRUE, 0); +#line 195 "moonshot-identity-dialog.vala" + services_vbox_bottom_spacer = g_object_ref_sink ((GtkAlignment*) gtk_alignment_new ((float) 0, (float) 0, (float) 0, (float) 0)); +#line 196 "moonshot-identity-dialog.vala" + gtk_widget_set_size_request ((GtkWidget*) services_vbox_bottom_spacer, 0, 12); +#line 197 "moonshot-identity-dialog.vala" + gtk_box_pack_start (content_area, (GtkWidget*) services_vbox_bottom_spacer, FALSE, FALSE, (guint) 0); +#line 539 "moonshot-identity-dialog.c" + _g_object_unref0 (services_vbox_bottom_spacer); + _g_object_unref0 (services_vbox); + _g_object_unref0 (trust_anchor_box); + } +#line 200 "moonshot-identity-dialog.vala" + if (id_card_is_no_identity (self->priv->card)) { +#line 202 "moonshot-identity-dialog.vala" + gtk_widget_set_sensitive ((GtkWidget*) self->priv->displayname_entry, FALSE); +#line 203 "moonshot-identity-dialog.vala" + gtk_widget_set_sensitive ((GtkWidget*) self->priv->realm_entry, FALSE); +#line 204 "moonshot-identity-dialog.vala" + gtk_widget_set_sensitive ((GtkWidget*) self->priv->username_entry, FALSE); +#line 205 "moonshot-identity-dialog.vala" + gtk_widget_set_sensitive ((GtkWidget*) self->priv->password_entry, FALSE); +#line 206 "moonshot-identity-dialog.vala" + gtk_widget_set_sensitive ((GtkWidget*) self->priv->remember_checkbutton, FALSE); +#line 556 "moonshot-identity-dialog.c" + } +#line 209 "moonshot-identity-dialog.vala" + g_signal_connect_object ((GtkObject*) self, "destroy", (GCallback) __lambda9__gtk_object_destroy, self, 0); +#line 215 "moonshot-identity-dialog.vala" + gtk_container_set_border_width ((GtkContainer*) self, (guint) 6); +#line 216 "moonshot-identity-dialog.vala" + gtk_window_set_resizable ((GtkWindow*) self, FALSE); +#line 217 "moonshot-identity-dialog.vala" + set_bg_color ((GtkWidget*) self); +#line 218 "moonshot-identity-dialog.vala" + gtk_widget_show_all ((GtkWidget*) self); +#line 568 "moonshot-identity-dialog.c" + _g_object_unref0 (remember_hbox); + _g_object_unref0 (content_area); + _g_object_unref0 (_tmp0_); + return self; +} + + +#line 117 "moonshot-identity-dialog.vala" +IdentityDialog* identity_dialog_new_with_idcard (IdCard* a_card, const char* title, IdentityManagerView* parent) { +#line 117 "moonshot-identity-dialog.vala" + return identity_dialog_construct_with_idcard (TYPE_IDENTITY_DIALOG, a_card, title, parent); +#line 580 "moonshot-identity-dialog.c" +} + + +#line 248 "moonshot-identity-dialog.vala" +static void _lambda5_ (GtkButton* w, Block3Data* _data3_) { +#line 586 "moonshot-identity-dialog.c" + IdentityDialog * self; + char* _tmp0_; + char* _tmp1_; + char* _tmp2_; + char* _tmp3_; + gboolean _tmp4_; + gboolean _result_; + self = _data3_->self; +#line 248 "moonshot-identity-dialog.vala" + g_return_if_fail (w != NULL); +#line 249 "moonshot-identity-dialog.vala" + _result_ = (_tmp4_ = warning_dialog_confirm ((GtkWindow*) self, _tmp3_ = g_strconcat (_tmp2_ = g_markup_printf_escaped (_tmp1_ = g_strconcat (_tmp0_ = g_strconcat ("", _ ("You are about to clear the trust anchor fingerprint for '%s'."), NULL), "", NULL), id_card_get_display_name (_data3_->id)), _ ("\n\nAre you sure you want to do this?"), NULL), "clear_trust_anchor"), _g_free0 (_tmp3_), _g_free0 (_tmp2_), _g_free0 (_tmp1_), _g_free0 (_tmp0_), _tmp4_); +#line 258 "moonshot-identity-dialog.vala" + if (_result_) { +#line 601 "moonshot-identity-dialog.c" + GList* children; + char* _tmp5_; +#line 260 "moonshot-identity-dialog.vala" + self->clear_trust_anchor = TRUE; +#line 265 "moonshot-identity-dialog.vala" + children = gtk_container_get_children ((GtkContainer*) _data3_->ta_table); +#line 608 "moonshot-identity-dialog.c" + { + GList* child_collection; + GList* child_it; +#line 266 "moonshot-identity-dialog.vala" + child_collection = children; +#line 614 "moonshot-identity-dialog.c" + for (child_it = child_collection; child_it != NULL; child_it = child_it->next) { + GtkWidget* child; +#line 266 "moonshot-identity-dialog.vala" + child = (GtkWidget*) child_it->data; +#line 619 "moonshot-identity-dialog.c" + { +#line 267 "moonshot-identity-dialog.vala" + gtk_container_remove ((GtkContainer*) _data3_->ta_table, child); +#line 623 "moonshot-identity-dialog.c" + } + } + } +#line 270 "moonshot-identity-dialog.vala" + gtk_table_resize (_data3_->ta_table, (guint) 1, (guint) _data3_->ncolumns); +#line 271 "moonshot-identity-dialog.vala" + gtk_label_set_text (_data3_->ta_label, _tmp5_ = g_strconcat (_data3_->ta_label_prefix, _data3_->none, NULL)); +#line 631 "moonshot-identity-dialog.c" + _g_free0 (_tmp5_); +#line 272 "moonshot-identity-dialog.vala" + gtk_table_attach (_data3_->ta_table, (GtkWidget*) _data3_->ta_label, (guint) 0, (guint) 1, (guint) 0, (guint) 1, _data3_->fill_and_expand, _data3_->fill_and_expand, (guint) 0, (guint) 0); +#line 635 "moonshot-identity-dialog.c" + _g_list_free0 (children); + } +} + + +#line 248 "moonshot-identity-dialog.vala" +static void __lambda5__gtk_button_clicked (GtkButton* _sender, gpointer self) { +#line 643 "moonshot-identity-dialog.c" + _lambda5_ (_sender, self); +} + + +#line 296 "moonshot-identity-dialog.vala" +static void _lambda6_ (GtkButton* w, Block3Data* _data3_) { +#line 650 "moonshot-identity-dialog.c" + IdentityDialog * self; + self = _data3_->self; +#line 296 "moonshot-identity-dialog.vala" + g_return_if_fail (w != NULL); +#line 296 "moonshot-identity-dialog.vala" + identity_dialog_export_certificate (self, _data3_->id); +#line 657 "moonshot-identity-dialog.c" +} + + +#line 296 "moonshot-identity-dialog.vala" +static void __lambda6__gtk_button_clicked (GtkButton* _sender, gpointer self) { +#line 663 "moonshot-identity-dialog.c" + _lambda6_ (_sender, self); +} + + +static Block3Data* block3_data_ref (Block3Data* _data3_) { + g_atomic_int_inc (&_data3_->_ref_count_); + return _data3_; +} + + +static void block3_data_unref (Block3Data* _data3_) { + if (g_atomic_int_dec_and_test (&_data3_->_ref_count_)) { + _g_object_unref0 (_data3_->self); + _g_object_unref0 (_data3_->ta_table); + _g_object_unref0 (_data3_->ta_label); + _g_free0 (_data3_->none); + _g_free0 (_data3_->ta_label_prefix); + _g_object_unref0 (_data3_->id); + g_slice_free (Block3Data, _data3_); + } +} + + +#line 221 "moonshot-identity-dialog.vala" +static GtkWidget* identity_dialog_make_trust_anchor_box (IdentityDialog* self, IdCard* id) { +#line 689 "moonshot-identity-dialog.c" + GtkWidget* result = NULL; + Block3Data* _data3_; + gint nrows; + GtkHBox* trust_anchor_box; + const char* _tmp0_; + char* _tmp1_; + GtkLabel* _tmp2_; + GtkAttachOptions fill; + gint row; + GtkButton* ta_clear_button; + char* _tmp3_; + GtkLabel* _tmp4_; + GtkLabel* added_label; +#line 221 "moonshot-identity-dialog.vala" + g_return_val_if_fail (self != NULL, NULL); +#line 221 "moonshot-identity-dialog.vala" + g_return_val_if_fail (id != NULL, NULL); +#line 707 "moonshot-identity-dialog.c" + _data3_ = g_slice_new0 (Block3Data); + _data3_->_ref_count_ = 1; + _data3_->self = g_object_ref (self); + _data3_->id = _g_object_ref0 (id); +#line 224 "moonshot-identity-dialog.vala" + nrows = 7; +#line 714 "moonshot-identity-dialog.c" + _data3_->ncolumns = 2; + _data3_->ta_label_prefix = g_strdup (_ ("Trust anchor: ")); + _data3_->none = g_strdup (_ ("None")); +#line 229 "moonshot-identity-dialog.vala" + trust_anchor_box = g_object_ref_sink ((GtkHBox*) gtk_hbox_new (FALSE, 0)); +#line 720 "moonshot-identity-dialog.c" + _tmp0_ = NULL; +#line 232 "moonshot-identity-dialog.vala" + if (trust_anchor_is_empty (id_card_get_trust_anchor (_data3_->id))) { +#line 232 "moonshot-identity-dialog.vala" + _tmp0_ = _data3_->none; +#line 726 "moonshot-identity-dialog.c" + } else { +#line 232 "moonshot-identity-dialog.vala" + _tmp0_ = _ ("Enterprise provisioned"); +#line 730 "moonshot-identity-dialog.c" + } + _data3_->ta_label = (_tmp2_ = g_object_ref_sink ((GtkLabel*) gtk_label_new (_tmp1_ = g_strconcat (_data3_->ta_label_prefix, _tmp0_, NULL))), _g_free0 (_tmp1_), _tmp2_); +#line 233 "moonshot-identity-dialog.vala" + gtk_misc_set_alignment ((GtkMisc*) _data3_->ta_label, (float) 0, 0.5f); +#line 235 "moonshot-identity-dialog.vala" + if (trust_anchor_is_empty (id_card_get_trust_anchor (_data3_->id))) { +#line 236 "moonshot-identity-dialog.vala" + gtk_box_pack_start ((GtkBox*) trust_anchor_box, (GtkWidget*) _data3_->ta_label, FALSE, FALSE, (guint) 0); +#line 739 "moonshot-identity-dialog.c" + result = (GtkWidget*) trust_anchor_box; + block3_data_unref (_data3_); +#line 237 "moonshot-identity-dialog.vala" + return result; +#line 744 "moonshot-identity-dialog.c" + } + _data3_->fill_and_expand = GTK_EXPAND | GTK_FILL; +#line 242 "moonshot-identity-dialog.vala" + fill = GTK_FILL; +#line 749 "moonshot-identity-dialog.c" + _data3_->ta_table = g_object_ref_sink ((GtkTable*) gtk_table_new ((guint) nrows, (guint) _data3_->ncolumns, FALSE)); +#line 245 "moonshot-identity-dialog.vala" + row = 0; +#line 247 "moonshot-identity-dialog.vala" + ta_clear_button = g_object_ref_sink ((GtkButton*) gtk_button_new_with_label (_ ("Clear Trust Anchor"))); +#line 248 "moonshot-identity-dialog.vala" + g_signal_connect_data (ta_clear_button, "clicked", (GCallback) __lambda5__gtk_button_clicked, block3_data_ref (_data3_), (GClosureNotify) block3_data_unref, 0); +#line 279 "moonshot-identity-dialog.vala" + gtk_table_attach (_data3_->ta_table, (GtkWidget*) _data3_->ta_label, (guint) 0, (guint) 1, (guint) row, (guint) (row + 1), _data3_->fill_and_expand, _data3_->fill_and_expand, (guint) 0, (guint) 0); +#line 280 "moonshot-identity-dialog.vala" + gtk_table_attach (_data3_->ta_table, (GtkWidget*) ta_clear_button, (guint) 1, (guint) 2, (guint) row, (guint) (row + 1), fill, fill, (guint) 0, (guint) 0); +#line 281 "moonshot-identity-dialog.vala" + row++; +#line 283 "moonshot-identity-dialog.vala" + added_label = (_tmp4_ = g_object_ref_sink ((GtkLabel*) gtk_label_new (_ (_tmp3_ = g_strconcat ("Added: ", trust_anchor_get_datetime_added (id_card_get_trust_anchor (_data3_->id)), NULL)))), _g_free0 (_tmp3_), _tmp4_); +#line 284 "moonshot-identity-dialog.vala" + gtk_misc_set_alignment ((GtkMisc*) added_label, (float) 0, 0.5f); +#line 285 "moonshot-identity-dialog.vala" + gtk_table_attach (_data3_->ta_table, (GtkWidget*) added_label, (guint) 0, (guint) 1, (guint) row, (guint) (row + 1), _data3_->fill_and_expand, _data3_->fill_and_expand, (guint) 20, (guint) 5); +#line 286 "moonshot-identity-dialog.vala" + row++; +#line 288 "moonshot-identity-dialog.vala" + if (trust_anchor_get_anchor_type (id_card_get_trust_anchor (_data3_->id)) == TRUST_ANCHOR_TRUST_ANCHOR_TYPE_SERVER_CERT) { +#line 773 "moonshot-identity-dialog.c" + GtkWidget* fingerprint; +#line 289 "moonshot-identity-dialog.vala" + fingerprint = make_ta_fingerprint_widget (trust_anchor_get_server_cert (id_card_get_trust_anchor (_data3_->id)), NULL); +#line 290 "moonshot-identity-dialog.vala" + gtk_table_attach (_data3_->ta_table, fingerprint, (guint) 0, (guint) 2, (guint) row, (guint) (row + 2), _data3_->fill_and_expand, _data3_->fill_and_expand, (guint) 5, (guint) 5); +#line 779 "moonshot-identity-dialog.c" + _g_object_unref0 (fingerprint); + } else { + GtkLabel* ca_cert_label; + GtkButton* export_button; + char* _tmp9_; + char* _tmp10_; + GtkLabel* _tmp11_; + GtkLabel* expiration_label; + GtkLabel* constraint_label; +#line 293 "moonshot-identity-dialog.vala" + ca_cert_label = g_object_ref_sink ((GtkLabel*) gtk_label_new (_ ("CA Certificate:"))); +#line 294 "moonshot-identity-dialog.vala" + gtk_misc_set_alignment ((GtkMisc*) ca_cert_label, (float) 0, 0.5f); +#line 295 "moonshot-identity-dialog.vala" + export_button = g_object_ref_sink ((GtkButton*) gtk_button_new_with_label (_ ("Export Certificate"))); +#line 296 "moonshot-identity-dialog.vala" + g_signal_connect_data (export_button, "clicked", (GCallback) __lambda6__gtk_button_clicked, block3_data_ref (_data3_), (GClosureNotify) block3_data_unref, 0); +#line 298 "moonshot-identity-dialog.vala" + gtk_table_attach (_data3_->ta_table, (GtkWidget*) ca_cert_label, (guint) 0, (guint) 1, (guint) row, (guint) (row + 1), _data3_->fill_and_expand, _data3_->fill_and_expand, (guint) 20, (guint) 0); +#line 299 "moonshot-identity-dialog.vala" + gtk_table_attach (_data3_->ta_table, (GtkWidget*) export_button, (guint) 1, (guint) 2, (guint) row, (guint) (row + 1), fill, fill, (guint) 0, (guint) 0); +#line 300 "moonshot-identity-dialog.vala" + row++; +#line 302 "moonshot-identity-dialog.vala" + if (_vala_strcmp0 (trust_anchor_get_subject (id_card_get_trust_anchor (_data3_->id)), "") != 0) { +#line 805 "moonshot-identity-dialog.c" + char* _tmp5_; + GtkLabel* _tmp6_; + GtkLabel* subject_label; +#line 303 "moonshot-identity-dialog.vala" + subject_label = (_tmp6_ = g_object_ref_sink ((GtkLabel*) gtk_label_new (_tmp5_ = g_strconcat (_ ("Subject: "), trust_anchor_get_subject (id_card_get_trust_anchor (_data3_->id)), NULL))), _g_free0 (_tmp5_), _tmp6_); +#line 304 "moonshot-identity-dialog.vala" + gtk_misc_set_alignment ((GtkMisc*) subject_label, (float) 0, 0.5f); +#line 305 "moonshot-identity-dialog.vala" + gtk_table_attach (_data3_->ta_table, (GtkWidget*) subject_label, (guint) 0, (guint) 1, (guint) row, (guint) (row + 1), _data3_->fill_and_expand, _data3_->fill_and_expand, (guint) 40, (guint) 5); +#line 306 "moonshot-identity-dialog.vala" + row++; +#line 817 "moonshot-identity-dialog.c" + _g_object_unref0 (subject_label); + } +#line 309 "moonshot-identity-dialog.vala" + if (_vala_strcmp0 (trust_anchor_get_subject_alt (id_card_get_trust_anchor (_data3_->id)), "") != 0) { +#line 822 "moonshot-identity-dialog.c" + char* _tmp7_; + GtkLabel* _tmp8_; + GtkLabel* subject_alt_label; +#line 310 "moonshot-identity-dialog.vala" + subject_alt_label = (_tmp8_ = g_object_ref_sink ((GtkLabel*) gtk_label_new (_tmp7_ = g_strconcat (_ ("Subject-Alt: "), trust_anchor_get_subject_alt (id_card_get_trust_anchor (_data3_->id)), NULL))), _g_free0 (_tmp7_), _tmp8_); +#line 311 "moonshot-identity-dialog.vala" + gtk_misc_set_alignment ((GtkMisc*) subject_alt_label, (float) 0, 0.5f); +#line 312 "moonshot-identity-dialog.vala" + gtk_table_attach (_data3_->ta_table, (GtkWidget*) subject_alt_label, (guint) 0, (guint) 1, (guint) row, (guint) (row + 1), _data3_->fill_and_expand, _data3_->fill_and_expand, (guint) 40, (guint) 5); +#line 313 "moonshot-identity-dialog.vala" + row++; +#line 834 "moonshot-identity-dialog.c" + _g_object_unref0 (subject_alt_label); + } +#line 316 "moonshot-identity-dialog.vala" + expiration_label = (_tmp11_ = g_object_ref_sink ((GtkLabel*) gtk_label_new (_tmp10_ = g_strconcat (_ ("Expiration date: "), _tmp9_ = trust_anchor_get_expiration_date (id_card_get_trust_anchor (_data3_->id), NULL), NULL))), _g_free0 (_tmp10_), _g_free0 (_tmp9_), _tmp11_); +#line 317 "moonshot-identity-dialog.vala" + gtk_misc_set_alignment ((GtkMisc*) expiration_label, (float) 0, 0.5f); +#line 318 "moonshot-identity-dialog.vala" + gtk_table_attach (_data3_->ta_table, (GtkWidget*) expiration_label, (guint) 0, (guint) 1, (guint) row, (guint) (row + 1), _data3_->fill_and_expand, _data3_->fill_and_expand, (guint) 40, (guint) 5); +#line 319 "moonshot-identity-dialog.vala" + row++; +#line 322 "moonshot-identity-dialog.vala" + constraint_label = g_object_ref_sink ((GtkLabel*) gtk_label_new (_ ("Constraint: "))); +#line 323 "moonshot-identity-dialog.vala" + gtk_misc_set_alignment ((GtkMisc*) constraint_label, (float) 0, 0.5f); +#line 324 "moonshot-identity-dialog.vala" + gtk_table_attach (_data3_->ta_table, (GtkWidget*) constraint_label, (guint) 0, (guint) 1, (guint) row, (guint) (row + 1), _data3_->fill_and_expand, _data3_->fill_and_expand, (guint) 20, (guint) 0); +#line 325 "moonshot-identity-dialog.vala" + row++; +#line 853 "moonshot-identity-dialog.c" + _g_object_unref0 (constraint_label); + _g_object_unref0 (expiration_label); + _g_object_unref0 (export_button); + _g_object_unref0 (ca_cert_label); + } +#line 328 "moonshot-identity-dialog.vala" + gtk_box_pack_start ((GtkBox*) trust_anchor_box, (GtkWidget*) _data3_->ta_table, FALSE, FALSE, (guint) 0); +#line 861 "moonshot-identity-dialog.c" + result = (GtkWidget*) trust_anchor_box; + _g_object_unref0 (added_label); + _g_object_unref0 (ta_clear_button); + block3_data_unref (_data3_); +#line 329 "moonshot-identity-dialog.vala" + return result; +#line 868 "moonshot-identity-dialog.c" +} + + +#line 332 "moonshot-identity-dialog.vala" +static void identity_dialog_add_as_vbox (GtkBox* content_area, GtkLabel* label, GtkEntry* entry) { +#line 874 "moonshot-identity-dialog.c" + GtkVBox* vbox; + GtkHBox* hbox; +#line 332 "moonshot-identity-dialog.vala" + g_return_if_fail (content_area != NULL); +#line 332 "moonshot-identity-dialog.vala" + g_return_if_fail (label != NULL); +#line 332 "moonshot-identity-dialog.vala" + g_return_if_fail (entry != NULL); +#line 334 "moonshot-identity-dialog.vala" + vbox = g_object_ref_sink ((GtkVBox*) gtk_vbox_new (FALSE, 2)); +#line 336 "moonshot-identity-dialog.vala" + gtk_box_pack_start ((GtkBox*) vbox, (GtkWidget*) label, FALSE, FALSE, (guint) 0); +#line 337 "moonshot-identity-dialog.vala" + gtk_box_pack_start ((GtkBox*) vbox, (GtkWidget*) entry, FALSE, FALSE, (guint) 0); +#line 340 "moonshot-identity-dialog.vala" + hbox = g_object_ref_sink ((GtkHBox*) gtk_hbox_new (FALSE, 0)); +#line 341 "moonshot-identity-dialog.vala" + gtk_box_pack_start ((GtkBox*) hbox, (GtkWidget*) vbox, FALSE, FALSE, (guint) 0); +#line 342 "moonshot-identity-dialog.vala" + gtk_box_pack_start (content_area, (GtkWidget*) hbox, FALSE, FALSE, (guint) 6); +#line 895 "moonshot-identity-dialog.c" + _g_object_unref0 (hbox); + _g_object_unref0 (vbox); +} + + +#line 345 "moonshot-identity-dialog.vala" +static char* identity_dialog_update_preamble (const char* preamble) { +#line 903 "moonshot-identity-dialog.c" + char* result = NULL; +#line 345 "moonshot-identity-dialog.vala" + g_return_val_if_fail (preamble != NULL, NULL); +#line 347 "moonshot-identity-dialog.vala" + if (_vala_strcmp0 (preamble, "") == 0) { +#line 909 "moonshot-identity-dialog.c" + result = g_strdup (_ ("Missing required field: ")); +#line 348 "moonshot-identity-dialog.vala" + return result; +#line 913 "moonshot-identity-dialog.c" + } + result = g_strdup (_ ("Missing required fields: ")); +#line 349 "moonshot-identity-dialog.vala" + return result; +#line 918 "moonshot-identity-dialog.c" +} + + +#line 352 "moonshot-identity-dialog.vala" +static char* identity_dialog_update_message (const char* old_message, const char* new_item) { +#line 924 "moonshot-identity-dialog.c" + char* result = NULL; + char* message; +#line 352 "moonshot-identity-dialog.vala" + g_return_val_if_fail (old_message != NULL, NULL); +#line 352 "moonshot-identity-dialog.vala" + g_return_val_if_fail (new_item != NULL, NULL); +#line 931 "moonshot-identity-dialog.c" + message = NULL; +#line 355 "moonshot-identity-dialog.vala" + if (_vala_strcmp0 (old_message, "") == 0) { +#line 935 "moonshot-identity-dialog.c" + char* _tmp0_; +#line 356 "moonshot-identity-dialog.vala" + message = (_tmp0_ = g_strdup (new_item), _g_free0 (message), _tmp0_); +#line 939 "moonshot-identity-dialog.c" + } else { + char* _tmp1_; + char* _tmp2_; +#line 358 "moonshot-identity-dialog.vala" + message = (_tmp2_ = g_strconcat (_tmp1_ = g_strconcat (old_message, ", ", NULL), new_item, NULL), _g_free0 (message), _tmp2_); +#line 945 "moonshot-identity-dialog.c" + _g_free0 (_tmp1_); + } + result = message; +#line 359 "moonshot-identity-dialog.vala" + return result; +#line 951 "moonshot-identity-dialog.c" +} + + +#line 362 "moonshot-identity-dialog.vala" +static void identity_dialog_check_field (const char* field, GtkLabel* label, const char* fieldname, char** preamble, char** message) { +#line 957 "moonshot-identity-dialog.c" + char* _tmp1_; + char* _tmp2_; + char* _tmp3_; +#line 362 "moonshot-identity-dialog.vala" + g_return_if_fail (field != NULL); +#line 362 "moonshot-identity-dialog.vala" + g_return_if_fail (label != NULL); +#line 362 "moonshot-identity-dialog.vala" + g_return_if_fail (fieldname != NULL); +#line 362 "moonshot-identity-dialog.vala" + g_return_if_fail (preamble != NULL); +#line 362 "moonshot-identity-dialog.vala" + g_return_if_fail (message != NULL); +#line 364 "moonshot-identity-dialog.vala" + if (_vala_strcmp0 (field, "") != 0) { +#line 973 "moonshot-identity-dialog.c" + char* _tmp0_; +#line 365 "moonshot-identity-dialog.vala" + gtk_label_set_markup (label, _tmp0_ = g_strconcat (string_to_string (fieldname), ":", NULL)); +#line 977 "moonshot-identity-dialog.c" + _g_free0 (_tmp0_); +#line 366 "moonshot-identity-dialog.vala" + return; +#line 981 "moonshot-identity-dialog.c" + } +#line 368 "moonshot-identity-dialog.vala" + gtk_label_set_markup (label, _tmp1_ = g_strconcat ("", string_to_string (fieldname), ":", NULL)); +#line 985 "moonshot-identity-dialog.c" + _g_free0 (_tmp1_); +#line 369 "moonshot-identity-dialog.vala" + *preamble = (_tmp2_ = identity_dialog_update_preamble (*preamble), _g_free0 (*preamble), _tmp2_); +#line 370 "moonshot-identity-dialog.vala" + *message = (_tmp3_ = identity_dialog_update_message (*message, fieldname), _g_free0 (*message), _tmp3_); +#line 991 "moonshot-identity-dialog.c" +} + + +#line 373 "moonshot-identity-dialog.vala" +static gboolean identity_dialog_check_fields (IdentityDialog* self) { +#line 997 "moonshot-identity-dialog.c" + gboolean result = FALSE; + char* preamble; + char* message; + const char* _tmp0_; + char* password_test; +#line 373 "moonshot-identity-dialog.vala" + g_return_val_if_fail (self != NULL, FALSE); +#line 375 "moonshot-identity-dialog.vala" + preamble = g_strdup (""); +#line 376 "moonshot-identity-dialog.vala" + message = g_strdup (""); +#line 1009 "moonshot-identity-dialog.c" + _tmp0_ = NULL; +#line 377 "moonshot-identity-dialog.vala" + if (identity_dialog_get_store_password (self)) { +#line 377 "moonshot-identity-dialog.vala" + _tmp0_ = identity_dialog_get_password (self); +#line 1015 "moonshot-identity-dialog.c" + } else { +#line 377 "moonshot-identity-dialog.vala" + _tmp0_ = "not required"; +#line 1019 "moonshot-identity-dialog.c" + } +#line 377 "moonshot-identity-dialog.vala" + password_test = g_strdup (_tmp0_); +#line 378 "moonshot-identity-dialog.vala" + if (!id_card_is_no_identity (self->priv->card)) { +#line 380 "moonshot-identity-dialog.vala" + identity_dialog_check_field (identity_dialog_get_display_name (self), self->priv->displayname_label, IDENTITY_DIALOG_displayname_labeltext, &preamble, &message); +#line 381 "moonshot-identity-dialog.vala" + identity_dialog_check_field (identity_dialog_get_username (self), self->priv->username_label, IDENTITY_DIALOG_username_labeltext, &preamble, &message); +#line 382 "moonshot-identity-dialog.vala" + identity_dialog_check_field (identity_dialog_get_issuer (self), self->priv->realm_label, IDENTITY_DIALOG_realm_labeltext, &preamble, &message); +#line 383 "moonshot-identity-dialog.vala" + identity_dialog_check_field (password_test, self->priv->password_label, IDENTITY_DIALOG_password_labeltext, &preamble, &message); +#line 1033 "moonshot-identity-dialog.c" + } +#line 385 "moonshot-identity-dialog.vala" + if (_vala_strcmp0 (message, "") != 0) { +#line 1037 "moonshot-identity-dialog.c" + char* _tmp1_; +#line 386 "moonshot-identity-dialog.vala" + gtk_widget_set_visible ((GtkWidget*) self->priv->message_label, TRUE); +#line 387 "moonshot-identity-dialog.vala" + gtk_label_set_markup (self->priv->message_label, _tmp1_ = g_strconcat ("", string_to_string (preamble), string_to_string (message), "", NULL)); +#line 1043 "moonshot-identity-dialog.c" + _g_free0 (_tmp1_); + result = FALSE; + _g_free0 (password_test); + _g_free0 (message); + _g_free0 (preamble); +#line 388 "moonshot-identity-dialog.vala" + return result; +#line 1051 "moonshot-identity-dialog.c" + } + result = TRUE; + _g_free0 (password_test); + _g_free0 (message); + _g_free0 (preamble); +#line 390 "moonshot-identity-dialog.vala" + return result; +#line 1059 "moonshot-identity-dialog.c" +} + + +#line 393 "moonshot-identity-dialog.vala" +static void identity_dialog_on_response (IdentityDialog* self, GtkDialog* source, gint response_id) { +#line 393 "moonshot-identity-dialog.vala" + g_return_if_fail (self != NULL); +#line 393 "moonshot-identity-dialog.vala" + g_return_if_fail (source != NULL); +#line 395 "moonshot-identity-dialog.vala" + switch (response_id) { +#line 1071 "moonshot-identity-dialog.c" + case GTK_RESPONSE_OK: + { +#line 397 "moonshot-identity-dialog.vala" + self->complete = identity_dialog_check_fields (self); +#line 398 "moonshot-identity-dialog.vala" + break; +#line 1078 "moonshot-identity-dialog.c" + } + case GTK_RESPONSE_CANCEL: + { +#line 400 "moonshot-identity-dialog.vala" + self->complete = TRUE; +#line 401 "moonshot-identity-dialog.vala" + break; +#line 1086 "moonshot-identity-dialog.c" + } + } +} + + +#line 461 "moonshot-identity-dialog.vala" +static gboolean _lambda7_ (Block5Data* _data5_) { +#line 1094 "moonshot-identity-dialog.c" + Block4Data* _data4_; + IdentityDialog * self; + gboolean result = FALSE; + GtkStateType state; + GEnumValue* _tmp0_; + char* _tmp1_; + char* _tmp2_; + char* _tmp3_; + char* _tmp4_; + _data4_ = _data5_->_data4_; + self = _data4_->self; +#line 463 "moonshot-identity-dialog.vala" + state = gtk_widget_get_state ((GtkWidget*) _data5_->label); +#line 464 "moonshot-identity-dialog.vala" + moonshot_logger_trace (identity_dialog_logger, _tmp4_ = g_strconcat (_tmp2_ = g_strconcat (_tmp1_ = g_strconcat ("button_press_callback: Label state=", (_tmp0_ = g_enum_get_value (g_type_class_ref (GTK_TYPE_STATE_TYPE), (int) state), (_tmp0_ != NULL) ? _tmp0_->value_name : NULL), NULL), " setting bg to ", NULL), _tmp3_ = gdk_color_to_string (&identity_dialog_white), NULL), NULL); +#line 1110 "moonshot-identity-dialog.c" + _g_free0 (_tmp4_); + _g_free0 (_tmp3_); + _g_free0 (_tmp2_); + _g_free0 (_tmp1_); +#line 466 "moonshot-identity-dialog.vala" + if (self->priv->selected_item == _data5_->label) { +#line 1117 "moonshot-identity-dialog.c" + GtkLabel* _tmp5_; +#line 469 "moonshot-identity-dialog.vala" + gtk_widget_modify_bg ((GtkWidget*) gtk_widget_get_parent ((GtkWidget*) self->priv->selected_item), state, &identity_dialog_white); +#line 470 "moonshot-identity-dialog.vala" + self->priv->selected_item = (_tmp5_ = NULL, _g_object_unref0 (self->priv->selected_item), _tmp5_); +#line 471 "moonshot-identity-dialog.vala" + gtk_widget_set_sensitive ((GtkWidget*) _data4_->remove_button, FALSE); +#line 1125 "moonshot-identity-dialog.c" + } else { + GtkLabel* _tmp7_; +#line 475 "moonshot-identity-dialog.vala" + if (self->priv->selected_item != NULL) { +#line 1130 "moonshot-identity-dialog.c" + GtkLabel* _tmp6_; +#line 478 "moonshot-identity-dialog.vala" + gtk_widget_modify_bg ((GtkWidget*) gtk_widget_get_parent ((GtkWidget*) self->priv->selected_item), state, &identity_dialog_white); +#line 479 "moonshot-identity-dialog.vala" + self->priv->selected_item = (_tmp6_ = NULL, _g_object_unref0 (self->priv->selected_item), _tmp6_); +#line 1136 "moonshot-identity-dialog.c" + } +#line 483 "moonshot-identity-dialog.vala" + self->priv->selected_item = (_tmp7_ = _g_object_ref0 (_data5_->label), _g_object_unref0 (self->priv->selected_item), _tmp7_); +#line 484 "moonshot-identity-dialog.vala" + gtk_widget_modify_bg ((GtkWidget*) gtk_widget_get_parent ((GtkWidget*) self->priv->selected_item), state, &identity_dialog_selected_color); +#line 485 "moonshot-identity-dialog.vala" + gtk_widget_set_sensitive ((GtkWidget*) _data4_->remove_button, TRUE); +#line 1144 "moonshot-identity-dialog.c" + } + result = FALSE; +#line 487 "moonshot-identity-dialog.vala" + return result; +#line 1149 "moonshot-identity-dialog.c" +} + + +#line 461 "moonshot-identity-dialog.vala" +static gboolean __lambda7__gtk_widget_button_press_event (GtkWidget* _sender, GdkEventButton* event, gpointer self) { +#line 1155 "moonshot-identity-dialog.c" + gboolean result; + result = _lambda7_ (self); + return result; +} + + +static Block5Data* block5_data_ref (Block5Data* _data5_) { + g_atomic_int_inc (&_data5_->_ref_count_); + return _data5_; +} + + +static void block5_data_unref (Block5Data* _data5_) { + if (g_atomic_int_dec_and_test (&_data5_->_ref_count_)) { + block4_data_unref (_data5_->_data4_); + _g_object_unref0 (_data5_->label); + g_slice_free (Block5Data, _data5_); + } +} + + +#line 494 "moonshot-identity-dialog.vala" +static void _lambda8_ (GtkButton* remove_button, Block4Data* _data4_) { +#line 1179 "moonshot-identity-dialog.c" + IdentityDialog * self; + char* _tmp0_; + char* _tmp1_; + char* _tmp2_; + char* _tmp3_; + gboolean _tmp4_; + gboolean _result_; + self = _data4_->self; +#line 494 "moonshot-identity-dialog.vala" + g_return_if_fail (remove_button != NULL); +#line 496 "moonshot-identity-dialog.vala" + _result_ = (_tmp4_ = warning_dialog_confirm ((GtkWindow*) self, _tmp3_ = g_strconcat (_tmp2_ = g_markup_printf_escaped (_tmp1_ = g_strconcat (_tmp0_ = g_strconcat ("", _ ("You are about to remove the service\n'%s'."), NULL), "", NULL), gtk_label_get_label (self->priv->selected_item)), _ ("\n\nAre you sure you want to do this?"), NULL), "delete_service"), _g_free0 (_tmp3_), _g_free0 (_tmp2_), _g_free0 (_tmp1_), _g_free0 (_tmp0_), _tmp4_); +#line 505 "moonshot-identity-dialog.vala" + if (_result_) { +#line 507 "moonshot-identity-dialog.vala" + if (self->priv->card != NULL) { +#line 1196 "moonshot-identity-dialog.c" + GtkLabel* _tmp5_; +#line 508 "moonshot-identity-dialog.vala" + gee_abstract_collection_remove ((GeeAbstractCollection*) self->priv->services, gtk_label_get_label (self->priv->selected_item)); +#line 509 "moonshot-identity-dialog.vala" + gtk_container_remove ((GtkContainer*) _data4_->services_table, (GtkWidget*) gtk_widget_get_parent ((GtkWidget*) self->priv->selected_item)); +#line 510 "moonshot-identity-dialog.vala" + self->priv->selected_item = (_tmp5_ = NULL, _g_object_unref0 (self->priv->selected_item), _tmp5_); +#line 511 "moonshot-identity-dialog.vala" + gtk_widget_set_sensitive ((GtkWidget*) remove_button, FALSE); +#line 1206 "moonshot-identity-dialog.c" + } + } +} + + +#line 494 "moonshot-identity-dialog.vala" +static void __lambda8__gtk_button_clicked (GtkButton* _sender, gpointer self) { +#line 1214 "moonshot-identity-dialog.c" + _lambda8_ (_sender, self); +} + + +static Block4Data* block4_data_ref (Block4Data* _data4_) { + g_atomic_int_inc (&_data4_->_ref_count_); + return _data4_; +} + + +static void block4_data_unref (Block4Data* _data4_) { + if (g_atomic_int_dec_and_test (&_data4_->_ref_count_)) { + _g_object_unref0 (_data4_->self); + _g_object_unref0 (_data4_->services_table); + _g_object_unref0 (_data4_->remove_button); + g_slice_free (Block4Data, _data4_); + } +} + + +#line 405 "moonshot-identity-dialog.vala" +static GtkVBox* identity_dialog_make_services_vbox (IdentityDialog* self) { +#line 1237 "moonshot-identity-dialog.c" + GtkVBox* result = NULL; + Block4Data* _data4_; + GtkAlignment* services_vbox_alignment; + GtkScrolledWindow* services_vscroll; + GtkHBox* table_button_hbox; + GtkVBox* fixed_height; + GtkEventBox* table_bg; + GtkLabel* services_vbox_title; + GtkVBox* services_vbox; + gint i; +#line 405 "moonshot-identity-dialog.vala" + g_return_val_if_fail (self != NULL, NULL); +#line 1250 "moonshot-identity-dialog.c" + _data4_ = g_slice_new0 (Block4Data); + _data4_->_ref_count_ = 1; + _data4_->self = g_object_ref (self); +#line 407 "moonshot-identity-dialog.vala" + moonshot_logger_trace (identity_dialog_logger, "make_services_vbox", NULL); +#line 409 "moonshot-identity-dialog.vala" + services_vbox_alignment = g_object_ref_sink ((GtkAlignment*) gtk_alignment_new ((float) 0, (float) 0, (float) 1, (float) 0)); +#line 410 "moonshot-identity-dialog.vala" + services_vscroll = g_object_ref_sink ((GtkScrolledWindow*) gtk_scrolled_window_new (NULL, NULL)); +#line 411 "moonshot-identity-dialog.vala" + gtk_scrolled_window_set_policy (services_vscroll, GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); +#line 412 "moonshot-identity-dialog.vala" + gtk_scrolled_window_set_shadow_type (services_vscroll, GTK_SHADOW_IN); +#line 413 "moonshot-identity-dialog.vala" + gtk_widget_set_size_request ((GtkWidget*) services_vscroll, 0, 60); +#line 414 "moonshot-identity-dialog.vala" + gtk_scrolled_window_add_with_viewport (services_vscroll, (GtkWidget*) services_vbox_alignment); +#line 1268 "moonshot-identity-dialog.c" + _data4_->remove_button = g_object_ref_sink ((GtkButton*) gtk_button_new_from_stock (GTK_STOCK_REMOVE)); +#line 421 "moonshot-identity-dialog.vala" + gtk_widget_set_sensitive ((GtkWidget*) _data4_->remove_button, FALSE); +#line 1272 "moonshot-identity-dialog.c" + _data4_->services_table = g_object_ref_sink ((GtkTable*) gtk_table_new ((guint) gee_collection_get_size ((GeeCollection*) id_card_get_services (self->priv->card)), (guint) 1, FALSE)); +#line 425 "moonshot-identity-dialog.vala" + gtk_table_set_row_spacings (_data4_->services_table, (guint) 1); +#line 426 "moonshot-identity-dialog.vala" + gtk_table_set_col_spacings (_data4_->services_table, (guint) 0); +#line 427 "moonshot-identity-dialog.vala" + set_bg_color ((GtkWidget*) _data4_->services_table); +#line 429 "moonshot-identity-dialog.vala" + table_button_hbox = g_object_ref_sink ((GtkHBox*) gtk_hbox_new (FALSE, 6)); +#line 430 "moonshot-identity-dialog.vala" + gtk_box_pack_start ((GtkBox*) table_button_hbox, (GtkWidget*) services_vscroll, TRUE, TRUE, (guint) 4); +#line 433 "moonshot-identity-dialog.vala" + fixed_height = g_object_ref_sink ((GtkVBox*) gtk_vbox_new (FALSE, 0)); +#line 434 "moonshot-identity-dialog.vala" + gtk_box_pack_start ((GtkBox*) fixed_height, (GtkWidget*) _data4_->remove_button, FALSE, FALSE, (guint) 0); +#line 435 "moonshot-identity-dialog.vala" + gtk_box_pack_start ((GtkBox*) table_button_hbox, (GtkWidget*) fixed_height, FALSE, FALSE, (guint) 0); +#line 439 "moonshot-identity-dialog.vala" + table_bg = g_object_ref_sink ((GtkEventBox*) gtk_event_box_new ()); +#line 440 "moonshot-identity-dialog.vala" + set_bg_color ((GtkWidget*) table_bg); +#line 441 "moonshot-identity-dialog.vala" + gtk_container_add ((GtkContainer*) table_bg, (GtkWidget*) _data4_->services_table); +#line 442 "moonshot-identity-dialog.vala" + gtk_container_add ((GtkContainer*) services_vbox_alignment, (GtkWidget*) table_bg); +#line 444 "moonshot-identity-dialog.vala" + services_vbox_title = g_object_ref_sink ((GtkLabel*) gtk_label_new (_ ("Services:"))); +#line 445 "moonshot-identity-dialog.vala" + gtk_misc_set_alignment ((GtkMisc*) services_vbox_title, (float) 0, 0.5f); +#line 447 "moonshot-identity-dialog.vala" + services_vbox = g_object_ref_sink ((GtkVBox*) gtk_vbox_new (FALSE, 6)); +#line 448 "moonshot-identity-dialog.vala" + gtk_box_pack_start ((GtkBox*) services_vbox, (GtkWidget*) services_vbox_title, FALSE, FALSE, (guint) 0); +#line 449 "moonshot-identity-dialog.vala" + gtk_box_pack_start ((GtkBox*) services_vbox, (GtkWidget*) table_button_hbox, TRUE, TRUE, (guint) 0); +#line 451 "moonshot-identity-dialog.vala" + i = 0; +#line 1310 "moonshot-identity-dialog.c" + { + GeeIterator* _service_it; +#line 452 "moonshot-identity-dialog.vala" + _service_it = gee_abstract_collection_iterator ((GeeAbstractCollection*) self->priv->services); +#line 452 "moonshot-identity-dialog.vala" + while (TRUE) { +#line 1317 "moonshot-identity-dialog.c" + Block5Data* _data5_; + char* service; + GtkEventBox* event_box; + _data5_ = g_slice_new0 (Block5Data); + _data5_->_ref_count_ = 1; + _data5_->_data4_ = block4_data_ref (_data4_); +#line 452 "moonshot-identity-dialog.vala" + if (!gee_iterator_next (_service_it)) { +#line 1326 "moonshot-identity-dialog.c" + block5_data_unref (_data5_); +#line 452 "moonshot-identity-dialog.vala" + break; +#line 1330 "moonshot-identity-dialog.c" + } +#line 452 "moonshot-identity-dialog.vala" + service = (char*) gee_iterator_get (_service_it); +#line 1334 "moonshot-identity-dialog.c" + _data5_->label = g_object_ref_sink ((GtkLabel*) gtk_label_new (service)); +#line 455 "moonshot-identity-dialog.vala" + gtk_misc_set_alignment ((GtkMisc*) _data5_->label, (float) 0, (float) 0); +#line 456 "moonshot-identity-dialog.vala" + g_object_set ((GtkMisc*) _data5_->label, "xpad", 3, NULL); +#line 458 "moonshot-identity-dialog.vala" + event_box = g_object_ref_sink ((GtkEventBox*) gtk_event_box_new ()); +#line 459 "moonshot-identity-dialog.vala" + gtk_widget_modify_bg ((GtkWidget*) event_box, GTK_STATE_NORMAL, &identity_dialog_white); +#line 460 "moonshot-identity-dialog.vala" + gtk_container_add ((GtkContainer*) event_box, (GtkWidget*) _data5_->label); +#line 461 "moonshot-identity-dialog.vala" + g_signal_connect_data ((GtkWidget*) event_box, "button-press-event", (GCallback) __lambda7__gtk_widget_button_press_event, block5_data_ref (_data5_), (GClosureNotify) block5_data_unref, 0); +#line 490 "moonshot-identity-dialog.vala" + gtk_table_attach_defaults (_data4_->services_table, (GtkWidget*) event_box, (guint) 0, (guint) 1, (guint) i, (guint) (i + 1)); +#line 491 "moonshot-identity-dialog.vala" + i++; +#line 1352 "moonshot-identity-dialog.c" + _g_object_unref0 (event_box); + _g_free0 (service); + block5_data_unref (_data5_); + } + _g_object_unref0 (_service_it); + } +#line 494 "moonshot-identity-dialog.vala" + g_signal_connect_data (_data4_->remove_button, "clicked", (GCallback) __lambda8__gtk_button_clicked, block4_data_ref (_data4_), (GClosureNotify) block4_data_unref, 0); +#line 1361 "moonshot-identity-dialog.c" + result = services_vbox; + _g_object_unref0 (services_vbox_title); + _g_object_unref0 (table_bg); + _g_object_unref0 (fixed_height); + _g_object_unref0 (table_button_hbox); + _g_object_unref0 (services_vscroll); + _g_object_unref0 (services_vbox_alignment); + block4_data_unref (_data4_); +#line 517 "moonshot-identity-dialog.vala" + return result; +#line 1372 "moonshot-identity-dialog.c" +} + + +#line 1181 "glib-2.0.vapi" +static char* string_replace (const char* self, const char* old, const char* replacement) { +#line 1378 "moonshot-identity-dialog.c" + char* result = NULL; + GError * _inner_error_ = NULL; +#line 1181 "glib-2.0.vapi" + g_return_val_if_fail (self != NULL, NULL); +#line 1181 "glib-2.0.vapi" + g_return_val_if_fail (old != NULL, NULL); +#line 1181 "glib-2.0.vapi" + g_return_val_if_fail (replacement != NULL, NULL); +#line 1387 "moonshot-identity-dialog.c" + { + char* _tmp0_; + GRegex* _tmp1_; + GRegex* regex; + char* _tmp2_; +#line 1183 "glib-2.0.vapi" + regex = (_tmp1_ = g_regex_new (_tmp0_ = g_regex_escape_string (old, -1), 0, 0, &_inner_error_), _g_free0 (_tmp0_), _tmp1_); +#line 1395 "moonshot-identity-dialog.c" + if (_inner_error_ != NULL) { + if (_inner_error_->domain == G_REGEX_ERROR) { + goto __catch9_g_regex_error; + } + g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } +#line 1184 "glib-2.0.vapi" + _tmp2_ = g_regex_replace_literal (regex, self, (gssize) (-1), 0, replacement, 0, &_inner_error_); +#line 1406 "moonshot-identity-dialog.c" + if (_inner_error_ != NULL) { + _g_regex_unref0 (regex); + if (_inner_error_->domain == G_REGEX_ERROR) { + goto __catch9_g_regex_error; + } + _g_regex_unref0 (regex); + g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } + result = _tmp2_; + _g_regex_unref0 (regex); +#line 1184 "glib-2.0.vapi" + return result; +#line 1421 "moonshot-identity-dialog.c" + } + goto __finally9; + __catch9_g_regex_error: + { + GError * e; + e = _inner_error_; + _inner_error_ = NULL; + { +#line 1186 "glib-2.0.vapi" + g_assert_not_reached (); +#line 1432 "moonshot-identity-dialog.c" + _g_error_free0 (e); + } + } + __finally9: + if (_inner_error_ != NULL) { + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return NULL; + } +} + + +static glong string_get_length (const char* self) { + glong result; + g_return_val_if_fail (self != NULL, 0L); + result = g_utf8_strlen (self, (gssize) (-1)); +#line 1194 "glib-2.0.vapi" + return result; +#line 1451 "moonshot-identity-dialog.c" +} + + +#line 1126 "glib-2.0.vapi" +static char* string_slice (const char* self, glong start, glong end) { +#line 1457 "moonshot-identity-dialog.c" + char* result = NULL; + glong string_length; + gboolean _tmp0_ = FALSE; + gboolean _tmp1_ = FALSE; + const char* start_string; +#line 1126 "glib-2.0.vapi" + g_return_val_if_fail (self != NULL, NULL); +#line 1127 "glib-2.0.vapi" + string_length = string_get_length (self); +#line 1128 "glib-2.0.vapi" + if (start < 0) { +#line 1129 "glib-2.0.vapi" + start = string_length + start; +#line 1471 "moonshot-identity-dialog.c" + } +#line 1131 "glib-2.0.vapi" + if (end < 0) { +#line 1132 "glib-2.0.vapi" + end = string_length + end; +#line 1477 "moonshot-identity-dialog.c" + } +#line 1134 "glib-2.0.vapi" + if (start >= 0) { +#line 1134 "glib-2.0.vapi" + _tmp0_ = start <= string_length; +#line 1483 "moonshot-identity-dialog.c" + } else { +#line 1134 "glib-2.0.vapi" + _tmp0_ = FALSE; +#line 1487 "moonshot-identity-dialog.c" + } +#line 1134 "glib-2.0.vapi" + g_return_val_if_fail (_tmp0_, NULL); +#line 1135 "glib-2.0.vapi" + if (end >= 0) { +#line 1135 "glib-2.0.vapi" + _tmp1_ = end <= string_length; +#line 1495 "moonshot-identity-dialog.c" + } else { +#line 1135 "glib-2.0.vapi" + _tmp1_ = FALSE; +#line 1499 "moonshot-identity-dialog.c" + } +#line 1135 "glib-2.0.vapi" + g_return_val_if_fail (_tmp1_, NULL); +#line 1136 "glib-2.0.vapi" + g_return_val_if_fail (start <= end, NULL); +#line 1137 "glib-2.0.vapi" + start_string = g_utf8_offset_to_pointer (self, start); +#line 1507 "moonshot-identity-dialog.c" + result = g_strndup (start_string, ((gchar*) g_utf8_offset_to_pointer (start_string, end - start)) - ((gchar*) start_string)); +#line 1138 "glib-2.0.vapi" + return result; +#line 1511 "moonshot-identity-dialog.c" +} + + +static guint8* string_get_data (const char* self, int* result_length1) { + guint8* result; + gint res_length1; + gint _res_size_; + guint8* _tmp0_; + guint8* res; + guint8* _tmp1_; + g_return_val_if_fail (self != NULL, NULL); + res = (_tmp0_ = (guint8*) self, res_length1 = -1, _res_size_ = res_length1, _tmp0_); +#line 1200 "glib-2.0.vapi" + res_length1 = (gint) strlen (self); +#line 1527 "moonshot-identity-dialog.c" + result = (_tmp1_ = res, *result_length1 = res_length1, _tmp1_); +#line 1201 "glib-2.0.vapi" + return result; +#line 1531 "moonshot-identity-dialog.c" +} + + +#line 520 "moonshot-identity-dialog.vala" +static void identity_dialog_export_certificate (IdentityDialog* self, IdCard* id) { +#line 1537 "moonshot-identity-dialog.c" + GtkFileChooserDialog* dialog; + char* _tmp0_; + char* _tmp1_; + char* default_filename; + GError * _inner_error_ = NULL; +#line 520 "moonshot-identity-dialog.vala" + g_return_if_fail (self != NULL); +#line 520 "moonshot-identity-dialog.vala" + g_return_if_fail (id != NULL); +#line 522 "moonshot-identity-dialog.vala" + dialog = g_object_ref_sink ((GtkFileChooserDialog*) gtk_file_chooser_dialog_new ("Save File", (GtkWindow*) self, GTK_FILE_CHOOSER_ACTION_SAVE, _ ("Cancel"), GTK_RESPONSE_CANCEL, _ ("Save"), GTK_RESPONSE_ACCEPT, NULL, NULL)); +#line 528 "moonshot-identity-dialog.vala" + gtk_file_chooser_set_do_overwrite_confirmation ((GtkFileChooser*) dialog, TRUE); +#line 529 "moonshot-identity-dialog.vala" + if (export_directory != NULL) { +#line 530 "moonshot-identity-dialog.vala" + gtk_file_chooser_set_current_folder ((GtkFileChooser*) dialog, export_directory); +#line 1555 "moonshot-identity-dialog.c" + } +#line 534 "moonshot-identity-dialog.vala" + default_filename = (_tmp1_ = string_replace (_tmp0_ = g_strconcat (id_card_get_display_name (id), ".pem", NULL), G_DIR_SEPARATOR_S, "_"), _g_free0 (_tmp0_), _tmp1_); +#line 535 "moonshot-identity-dialog.vala" + gtk_file_chooser_set_current_name ((GtkFileChooser*) dialog, default_filename); +#line 536 "moonshot-identity-dialog.vala" + if (gtk_dialog_run ((GtkDialog*) dialog) == GTK_RESPONSE_ACCEPT) { +#line 1563 "moonshot-identity-dialog.c" + char* CERT_HEADER; + char* CERT_FOOTER; + char* cert; + char* newcert; + char* _tmp7_; + char* filename; + GFile* file; + GFileOutputStream* stream; + gint _tmp8_; + GFile* _tmp9_; + char* _tmp10_; +#line 542 "moonshot-identity-dialog.vala" + CERT_HEADER = g_strdup ("-----BEGIN CERTIFICATE-----\n"); +#line 543 "moonshot-identity-dialog.vala" + CERT_FOOTER = g_strdup ("\n-----END CERTIFICATE-----\n"); +#line 546 "moonshot-identity-dialog.vala" + cert = string_replace (trust_anchor_get_ca_cert (id_card_get_trust_anchor (id)), "\n", ""); +#line 549 "moonshot-identity-dialog.vala" + newcert = g_strdup (CERT_HEADER); +#line 550 "moonshot-identity-dialog.vala" + while (TRUE) { +#line 1585 "moonshot-identity-dialog.c" + char* _tmp2_; + char* _tmp3_; + char* _tmp4_; + char* _tmp5_; +#line 550 "moonshot-identity-dialog.vala" + if (!(string_get_length (cert) > 63)) { +#line 550 "moonshot-identity-dialog.vala" + break; +#line 1594 "moonshot-identity-dialog.c" + } +#line 551 "moonshot-identity-dialog.vala" + newcert = (_tmp3_ = g_strconcat (newcert, _tmp2_ = string_slice (cert, (glong) 0, (glong) 64), NULL), _g_free0 (newcert), _tmp3_); +#line 1598 "moonshot-identity-dialog.c" + _g_free0 (_tmp2_); +#line 552 "moonshot-identity-dialog.vala" + newcert = (_tmp4_ = g_strconcat (newcert, "\n", NULL), _g_free0 (newcert), _tmp4_); +#line 553 "moonshot-identity-dialog.vala" + cert = (_tmp5_ = string_slice (cert, (glong) 64, string_get_length (cert)), _g_free0 (cert), _tmp5_); +#line 1604 "moonshot-identity-dialog.c" + } +#line 555 "moonshot-identity-dialog.vala" + if (string_get_length (cert) > 0) { +#line 1608 "moonshot-identity-dialog.c" + char* _tmp6_; +#line 556 "moonshot-identity-dialog.vala" + newcert = (_tmp6_ = g_strconcat (newcert, cert, NULL), _g_free0 (newcert), _tmp6_); +#line 1612 "moonshot-identity-dialog.c" + } +#line 558 "moonshot-identity-dialog.vala" + newcert = (_tmp7_ = g_strconcat (newcert, CERT_FOOTER, NULL), _g_free0 (newcert), _tmp7_); +#line 560 "moonshot-identity-dialog.vala" + filename = gtk_file_chooser_get_filename ((GtkFileChooser*) dialog); +#line 561 "moonshot-identity-dialog.vala" + file = g_file_new_for_path (filename); +#line 562 "moonshot-identity-dialog.vala" + stream = g_file_replace (file, NULL, FALSE, G_FILE_CREATE_PRIVATE, NULL, &_inner_error_); +#line 1622 "moonshot-identity-dialog.c" + if (_inner_error_ != NULL) { + _g_object_unref0 (file); + _g_free0 (filename); + _g_free0 (newcert); + _g_free0 (cert); + _g_free0 (CERT_FOOTER); + _g_free0 (CERT_HEADER); + _g_free0 (default_filename); + _g_object_unref0 (dialog); + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return; + } +#line 567 "moonshot-identity-dialog.vala" + g_output_stream_write ((GOutputStream*) stream, string_get_data (newcert, &_tmp8_), (gsize) string_get_length (newcert), NULL, &_inner_error_); +#line 1638 "moonshot-identity-dialog.c" + if (_inner_error_ != NULL) { + _g_object_unref0 (stream); + _g_object_unref0 (file); + _g_free0 (filename); + _g_free0 (newcert); + _g_free0 (cert); + _g_free0 (CERT_FOOTER); + _g_free0 (CERT_HEADER); + _g_free0 (default_filename); + _g_object_unref0 (dialog); + g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); + g_clear_error (&_inner_error_); + return; + } +#line 570 "moonshot-identity-dialog.vala" + export_directory = (_tmp10_ = g_file_get_path (_tmp9_ = g_file_get_parent (file)), _g_free0 (export_directory), _tmp10_); +#line 1655 "moonshot-identity-dialog.c" + _g_object_unref0 (_tmp9_); + _g_object_unref0 (stream); + _g_object_unref0 (file); + _g_free0 (filename); + _g_free0 (newcert); + _g_free0 (cert); + _g_free0 (CERT_FOOTER); + _g_free0 (CERT_HEADER); + } +#line 572 "moonshot-identity-dialog.vala" + gtk_object_destroy ((GtkObject*) dialog); +#line 1667 "moonshot-identity-dialog.c" + _g_free0 (default_filename); + _g_object_unref0 (dialog); +} + + +const char* identity_dialog_get_display_name (IdentityDialog* self) { + const char* result; + g_return_val_if_fail (self != NULL, NULL); + result = gtk_entry_get_text (self->priv->displayname_entry); +#line 80 "moonshot-identity-dialog.vala" + return result; +#line 1679 "moonshot-identity-dialog.c" +} + + +const char* identity_dialog_get_issuer (IdentityDialog* self) { + const char* result; + g_return_val_if_fail (self != NULL, NULL); + result = gtk_entry_get_text (self->priv->realm_entry); +#line 84 "moonshot-identity-dialog.vala" + return result; +#line 1689 "moonshot-identity-dialog.c" +} + + +const char* identity_dialog_get_username (IdentityDialog* self) { + const char* result; + g_return_val_if_fail (self != NULL, NULL); + result = gtk_entry_get_text (self->priv->username_entry); +#line 88 "moonshot-identity-dialog.vala" + return result; +#line 1699 "moonshot-identity-dialog.c" +} + + +const char* identity_dialog_get_password (IdentityDialog* self) { + const char* result; + g_return_val_if_fail (self != NULL, NULL); + result = gtk_entry_get_text (self->priv->password_entry); +#line 92 "moonshot-identity-dialog.vala" + return result; +#line 1709 "moonshot-identity-dialog.c" +} + + +gboolean identity_dialog_get_store_password (IdentityDialog* self) { + gboolean result; + g_return_val_if_fail (self != NULL, FALSE); + result = gtk_toggle_button_get_active ((GtkToggleButton*) self->priv->remember_checkbutton); +#line 96 "moonshot-identity-dialog.vala" + return result; +#line 1719 "moonshot-identity-dialog.c" +} + + +static void identity_dialog_class_init (IdentityDialogClass * klass) { + GdkColor _tmp0_ = {0}; + GdkColor _tmp1_ = {0}; + identity_dialog_parent_class = g_type_class_peek_parent (klass); + g_type_class_add_private (klass, sizeof (IdentityDialogPrivate)); + G_OBJECT_CLASS (klass)->get_property = identity_dialog_get_property; + G_OBJECT_CLASS (klass)->finalize = identity_dialog_finalize; + g_object_class_install_property (G_OBJECT_CLASS (klass), IDENTITY_DIALOG_DISPLAY_NAME, g_param_spec_string ("display-name", "display-name", "display-name", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), IDENTITY_DIALOG_ISSUER, g_param_spec_string ("issuer", "issuer", "issuer", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), IDENTITY_DIALOG_USERNAME, g_param_spec_string ("username", "username", "username", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), IDENTITY_DIALOG_PASSWORD, g_param_spec_string ("password", "password", "password", NULL, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE)); + g_object_class_install_property (G_OBJECT_CLASS (klass), IDENTITY_DIALOG_STORE_PASSWORD, g_param_spec_boolean ("store-password", "store-password", "store-password", FALSE, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE)); + identity_dialog_white = (make_color ((guint16) 65535, (guint16) 65535, (guint16) 65535, &_tmp0_), _tmp0_); + identity_dialog_selected_color = (make_color ((guint16) (0xd9 << 8), (guint16) (0xf7 << 8), (guint16) 65535, &_tmp1_), _tmp1_); + identity_dialog_logger = get_logger ("IdentityDialog"); +} + + +static void identity_dialog_instance_init (IdentityDialog * self) { + self->priv = IDENTITY_DIALOG_GET_PRIVATE (self); + self->priv->selected_item = NULL; + self->clear_trust_anchor = FALSE; +} + + +static void identity_dialog_finalize (GObject* obj) { + IdentityDialog * self; + self = IDENTITY_DIALOG (obj); + _g_object_unref0 (self->priv->displayname_entry); + _g_object_unref0 (self->priv->displayname_label); + _g_object_unref0 (self->priv->realm_entry); + _g_object_unref0 (self->priv->realm_label); + _g_object_unref0 (self->priv->username_entry); + _g_object_unref0 (self->priv->username_label); + _g_object_unref0 (self->priv->password_entry); + _g_object_unref0 (self->priv->password_label); + _g_object_unref0 (self->priv->remember_checkbutton); + _g_object_unref0 (self->priv->message_label); + _g_object_unref0 (self->priv->card); + _g_object_unref0 (self->priv->services); + _g_object_unref0 (self->priv->selected_item); + G_OBJECT_CLASS (identity_dialog_parent_class)->finalize (obj); +} + + +GType identity_dialog_get_type (void) { + static volatile gsize identity_dialog_type_id__volatile = 0; + if (g_once_init_enter (&identity_dialog_type_id__volatile)) { + static const GTypeInfo g_define_type_info = { sizeof (IdentityDialogClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) identity_dialog_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (IdentityDialog), 0, (GInstanceInitFunc) identity_dialog_instance_init, NULL }; + GType identity_dialog_type_id; + identity_dialog_type_id = g_type_register_static (GTK_TYPE_DIALOG, "IdentityDialog", &g_define_type_info, 0); + g_once_init_leave (&identity_dialog_type_id__volatile, identity_dialog_type_id); + } + return identity_dialog_type_id__volatile; +} + + +static void identity_dialog_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) { + IdentityDialog * self; + self = IDENTITY_DIALOG (object); + switch (property_id) { + case IDENTITY_DIALOG_DISPLAY_NAME: + g_value_set_string (value, identity_dialog_get_display_name (self)); + break; + case IDENTITY_DIALOG_ISSUER: + g_value_set_string (value, identity_dialog_get_issuer (self)); + break; + case IDENTITY_DIALOG_USERNAME: + g_value_set_string (value, identity_dialog_get_username (self)); + break; + case IDENTITY_DIALOG_PASSWORD: + g_value_set_string (value, identity_dialog_get_password (self)); + break; + case IDENTITY_DIALOG_STORE_PASSWORD: + g_value_set_boolean (value, identity_dialog_get_store_password (self)); + break; + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); + break; + } +} + + +static int _vala_strcmp0 (const char * str1, const char * str2) { + if (str1 == NULL) { + return -(str1 != str2); + } + if (str2 == NULL) { + return str1 != str2; + } + return strcmp (str1, str2); +} + + + + -- 2.1.4