gboolean alarm_dialog_run (GtkWidget *parent, ECalClient *cal_client, ECalComponentAlarm *alarm) { Dialog dialog; GtkWidget *container; gint response_id; g_return_val_if_fail (alarm != NULL, FALSE); dialog.alarm = alarm; dialog.cal_client = cal_client; dialog.builder = gtk_builder_new (); e_load_ui_builder_definition (dialog.builder, "alarm-dialog.ui"); if (!get_widgets (&dialog)) { g_object_unref (dialog.builder); return FALSE; } if (!setup_select_names (&dialog)) { g_object_unref (dialog.builder); return FALSE; } init_widgets (&dialog); alarm_to_dialog (&dialog); gtk_widget_ensure_style (dialog.toplevel); container = gtk_dialog_get_action_area (GTK_DIALOG (dialog.toplevel)); gtk_container_set_border_width (GTK_CONTAINER (container), 12); container = gtk_dialog_get_content_area (GTK_DIALOG (dialog.toplevel)); gtk_container_set_border_width (GTK_CONTAINER (container), 0); gtk_window_set_icon_name ( GTK_WINDOW (dialog.toplevel), "x-office-calendar"); gtk_window_set_transient_for ( GTK_WINDOW (dialog.toplevel), GTK_WINDOW (parent)); response_id = gtk_dialog_run (GTK_DIALOG (dialog.toplevel)); if (response_id == GTK_RESPONSE_OK) dialog_to_alarm (&dialog); if (dialog.name_selector) { e_name_selector_cancel_loading (dialog.name_selector); g_object_unref (dialog.name_selector); } gtk_widget_destroy (dialog.toplevel); g_object_unref (dialog.builder); return response_id == GTK_RESPONSE_OK ? TRUE : FALSE; }
GtkWidget * ca_trust_dialog_show (ECert *cert, gboolean importing) { CATrustDialogData *ctd_data; GtkDialog *dialog; GtkWidget *action_area; GtkWidget *content_area; GtkWidget *w; gchar *txt; ctd_data = g_new0 (CATrustDialogData, 1); ctd_data->builder = gtk_builder_new (); e_load_ui_builder_definition (ctd_data->builder, "smime-ui.ui"); ctd_data->dialog = e_builder_get_widget (ctd_data->builder, "ca-trust-dialog"); gtk_widget_ensure_style (ctd_data->dialog); dialog = GTK_DIALOG (ctd_data->dialog); action_area = gtk_dialog_get_action_area (dialog); content_area = gtk_dialog_get_content_area (dialog); gtk_container_set_border_width (GTK_CONTAINER (action_area), 12); gtk_container_set_border_width (GTK_CONTAINER (content_area), 0); ctd_data->cert = g_object_ref (cert); ctd_data->ssl_checkbutton = e_builder_get_widget (ctd_data->builder, "ssl_trust_checkbutton"); ctd_data->email_checkbutton = e_builder_get_widget (ctd_data->builder, "email_trust_checkbutton"); ctd_data->objsign_checkbutton = e_builder_get_widget (ctd_data->builder, "objsign_trust_checkbutton"); w = e_builder_get_widget(ctd_data->builder, "ca-trust-label"); txt = g_strdup_printf(_("Certificate '%s' is a CA certificate.\n\nEdit trust settings:"), e_cert_get_cn(cert)); gtk_label_set_text ((GtkLabel *) w, txt); g_free (txt); g_signal_connect (ctd_data->dialog, "response", G_CALLBACK (catd_response), ctd_data); g_object_set_data_full (G_OBJECT (ctd_data->dialog), "CATrustDialogData", ctd_data, free_data); return ctd_data->dialog; }
static void gal_view_new_dialog_init (GalViewNewDialog *dialog) { GtkWidget *content_area; GtkWidget *parent; GtkWidget *widget; dialog->builder = gtk_builder_new (); e_load_ui_builder_definition ( dialog->builder, "gal-view-new-dialog.ui"); widget = e_builder_get_widget (dialog->builder, "table-top"); if (!widget) { return; } g_object_ref (widget); parent = gtk_widget_get_parent (widget); gtk_container_remove (GTK_CONTAINER (parent), widget); content_area = gtk_dialog_get_content_area (GTK_DIALOG (dialog)); gtk_box_pack_start (GTK_BOX (content_area), widget, TRUE, TRUE, 0); g_object_unref (widget); gtk_dialog_add_buttons ( GTK_DIALOG (dialog), GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_OK, GTK_RESPONSE_OK, NULL); gtk_window_set_resizable (GTK_WINDOW (dialog), TRUE); gtk_window_set_modal (GTK_WINDOW (dialog), TRUE); gtk_window_set_title (GTK_WINDOW(dialog), _("Define New View")); dialog->collection = NULL; dialog->selected_factory = NULL; }
static void em_network_prefs_construct (EMNetworkPrefs *prefs) { GtkWidget *toplevel; GSList *l, *ignore; gchar *buf; EMConfig *ec; EMConfigTargetPrefs *target; gboolean locked; gint i, val, port; prefs->gconf = gconf_client_get_default (); /* Make sure our custom widget classes are registered with * GType before we load the GtkBuilder definition file. */ E_TYPE_MAIL_JUNK_OPTIONS; EM_TYPE_FOLDER_SELECTION_BUTTON; prefs->builder = gtk_builder_new (); e_load_ui_builder_definition (prefs->builder, "mail-config.ui"); /** @HookPoint-EMConfig: Network Preferences * @Id: org.gnome.evolution.mail.networkPrefs * @Type: E_CONFIG_BOOK * @Class: org.gnome.evolution.mail.config:1.0 * @Target: EMConfigTargetPrefs * * The network preferences settings page. */ ec = em_config_new(E_CONFIG_BOOK, "org.gnome.evolution.mail.networkPrefs"); l = NULL; for (i = 0; i < G_N_ELEMENTS (emnp_items); i++) l = g_slist_prepend (l, &emnp_items[i]); e_config_add_items ((EConfig *) ec, l, emnp_free, prefs); /* Proxy tab */ /* Default Behavior */ locked = !gconf_client_key_is_writable (prefs->gconf, GCONF_E_PROXY_TYPE_KEY, NULL); val = gconf_client_get_int (prefs->gconf, GCONF_E_PROXY_TYPE_KEY, NULL); /* no auto-proxy at the moment */ if (val == NETWORK_PROXY_AUTOCONFIG) val = NETWORK_PROXY_SYS_SETTINGS; prefs->sys_proxy = GTK_TOGGLE_BUTTON (e_builder_get_widget (prefs->builder, "rdoSysSettings")); gtk_toggle_button_set_active (prefs->sys_proxy, val == NETWORK_PROXY_SYS_SETTINGS); if (locked) gtk_widget_set_sensitive ((GtkWidget *) prefs->sys_proxy, FALSE); d(g_print ("Sys settings ----!!! \n")); prefs->no_proxy = GTK_TOGGLE_BUTTON (e_builder_get_widget (prefs->builder, "rdoNoProxy")); gtk_toggle_button_set_active (prefs->no_proxy, val == NETWORK_PROXY_DIRECT_CONNECTION); if (locked) gtk_widget_set_sensitive ((GtkWidget *) prefs->no_proxy, FALSE); d(g_print ("No proxy settings ----!!! \n")); /* no auto-proxy at the moment */ #if 0 prefs->auto_proxy = GTK_TOGGLE_BUTTON (e_builder_get_widget (prefs->builder, "rdoAutoConfig")); prefs->auto_proxy_url = GTK_ENTRY (e_builder_get_widget (prefs->builder, "txtAutoConfigUrl")); gtk_toggle_button_set_active (prefs->auto_proxy, val == NETWORK_PROXY_AUTOCONFIG); g_signal_connect (prefs->auto_proxy_url, "changed", G_CALLBACK(widget_entry_changed_cb), GCONF_E_AUTOCONFIG_URL_KEY); if (locked) gtk_widget_set_sensitive ((GtkWidget *) prefs->auto_proxy, FALSE); #endif d(g_print ("Auto config settings ----!!! \n")); prefs->manual_proxy = GTK_TOGGLE_BUTTON (e_builder_get_widget (prefs->builder, "rdoManualProxy")); prefs->http_host = GTK_ENTRY (e_builder_get_widget (prefs->builder, "txtHttpHost")); prefs->https_host = GTK_ENTRY (e_builder_get_widget (prefs->builder, "txtHttpsHost")); prefs->socks_host = GTK_ENTRY (e_builder_get_widget (prefs->builder, "txtSocksHost")); prefs->ignore_hosts = GTK_ENTRY (e_builder_get_widget (prefs->builder, "txtIgnoreHosts")); prefs->http_port = GTK_SPIN_BUTTON (e_builder_get_widget (prefs->builder, "spnHttpPort")); prefs->https_port = GTK_SPIN_BUTTON (e_builder_get_widget (prefs->builder, "spnHttpsPort")); prefs->socks_port = GTK_SPIN_BUTTON (e_builder_get_widget (prefs->builder, "spnSocksPort")); prefs->lbl_http_host = GTK_LABEL (e_builder_get_widget (prefs->builder, "lblHttpHost")); prefs->lbl_http_port = GTK_LABEL (e_builder_get_widget (prefs->builder, "lblHttpPort")); prefs->lbl_https_host = GTK_LABEL (e_builder_get_widget (prefs->builder, "lblHttpsHost")); prefs->lbl_https_port = GTK_LABEL (e_builder_get_widget (prefs->builder, "lblHttpsPort")); prefs->lbl_socks_host = GTK_LABEL (e_builder_get_widget (prefs->builder, "lblSocksHost")); prefs->lbl_socks_port = GTK_LABEL (e_builder_get_widget (prefs->builder, "lblSocksPort")); prefs->lbl_ignore_hosts = GTK_LABEL (e_builder_get_widget (prefs->builder, "lblIgnoreHosts")); prefs->use_auth = GTK_TOGGLE_BUTTON (e_builder_get_widget (prefs->builder, "chkUseAuth")); toggle_button_init (prefs, prefs->use_auth, GCONF_E_USE_AUTH_KEY); prefs->lbl_auth_user = GTK_LABEL (e_builder_get_widget (prefs->builder, "lblAuthUser")); prefs->lbl_auth_pwd = GTK_LABEL (e_builder_get_widget (prefs->builder, "lblAuthPwd")); prefs->auth_user = GTK_ENTRY (e_builder_get_widget (prefs->builder, "txtAuthUser")); prefs->auth_pwd = GTK_ENTRY (e_builder_get_widget (prefs->builder, "txtAuthPwd")); /* Manual proxy options */ g_signal_connect (prefs->http_host, "changed", G_CALLBACK (widget_entry_changed_cb), (gpointer) GCONF_E_HTTP_HOST_KEY); g_signal_connect (prefs->https_host, "changed", G_CALLBACK (widget_entry_changed_cb), (gpointer) GCONF_E_HTTPS_HOST_KEY); g_signal_connect (prefs->ignore_hosts, "changed", G_CALLBACK (ignore_hosts_entry_changed_cb), (gpointer) GCONF_E_IGNORE_HOSTS_KEY); g_signal_connect (prefs->http_port, "value_changed", G_CALLBACK (widget_entry_changed_cb), (gpointer) GCONF_E_HTTP_PORT_KEY); g_signal_connect (prefs->https_port, "value_changed", G_CALLBACK (widget_entry_changed_cb), (gpointer) GCONF_E_HTTPS_PORT_KEY); g_signal_connect (prefs->socks_host, "changed", G_CALLBACK (widget_entry_changed_cb), (gpointer) GCONF_E_SOCKS_HOST_KEY); g_signal_connect (prefs->socks_port, "value_changed", G_CALLBACK (widget_entry_changed_cb), (gpointer) GCONF_E_SOCKS_PORT_KEY); g_signal_connect (prefs->auth_user, "changed", G_CALLBACK (widget_entry_changed_cb), (gpointer) GCONF_E_AUTH_USER_KEY); g_signal_connect (prefs->auth_pwd, "changed", G_CALLBACK (widget_entry_changed_cb), (gpointer) GCONF_E_AUTH_PWD_KEY); gtk_toggle_button_set_active (prefs->manual_proxy, val == NETWORK_PROXY_MANUAL); g_signal_connect (prefs->sys_proxy, "toggled", G_CALLBACK (notify_proxy_type_changed), prefs); g_signal_connect (prefs->no_proxy, "toggled", G_CALLBACK (notify_proxy_type_changed), prefs); #if 0 g_signal_connect (prefs->auto_proxy, "toggled", G_CALLBACK (notify_proxy_type_changed), prefs); #endif g_signal_connect (prefs->manual_proxy, "toggled", G_CALLBACK (notify_proxy_type_changed), prefs); if (locked) gtk_widget_set_sensitive ((GtkWidget *) prefs->manual_proxy, FALSE); d(g_print ("Manual settings ----!!! \n")); buf = gconf_client_get_string (prefs->gconf, GCONF_E_HTTP_HOST_KEY, NULL); gtk_entry_set_text (prefs->http_host, buf ? buf : ""); g_free (buf); buf = gconf_client_get_string (prefs->gconf, GCONF_E_HTTPS_HOST_KEY, NULL); gtk_entry_set_text (prefs->https_host, buf ? buf : ""); g_free (buf); buf = gconf_client_get_string (prefs->gconf, GCONF_E_SOCKS_HOST_KEY, NULL); gtk_entry_set_text (prefs->socks_host, buf ? buf : ""); g_free (buf); buf = NULL; ignore = gconf_client_get_list (prefs->gconf, GCONF_E_IGNORE_HOSTS_KEY, GCONF_VALUE_STRING, NULL); if (ignore) { /* reconstruct comma-separated list */ GSList *sl; GString *str = NULL; for (sl = ignore; sl; sl = sl->next) { const gchar *value = sl->data; if (value && *value) { if (!str) { str = g_string_new (value); } else { g_string_append (str, ","); g_string_append (str, value); } } } g_slist_foreach (ignore, (GFunc) g_free, NULL); g_slist_free (ignore); if (str) buf = g_string_free (str, FALSE); } gtk_entry_set_text (prefs->ignore_hosts, buf ? buf : ""); g_free (buf); buf = gconf_client_get_string (prefs->gconf, GCONF_E_AUTH_USER_KEY, NULL); gtk_entry_set_text (prefs->auth_user, buf ? buf : ""); g_free (buf); buf = gconf_client_get_string (prefs->gconf, GCONF_E_AUTH_PWD_KEY, NULL); gtk_entry_set_text (prefs->auth_pwd, buf ? buf : ""); g_free (buf); port = gconf_client_get_int (prefs->gconf, GCONF_E_HTTP_PORT_KEY, NULL); gtk_spin_button_set_value (prefs->http_port, (gdouble) port); port = gconf_client_get_int (prefs->gconf, GCONF_E_HTTPS_PORT_KEY, NULL); gtk_spin_button_set_value (prefs->https_port, (gdouble) port); port = gconf_client_get_int (prefs->gconf, GCONF_E_SOCKS_PORT_KEY, NULL); gtk_spin_button_set_value (prefs->socks_port, (gdouble) port); emnp_set_markups (prefs); if (val == NETWORK_PROXY_DIRECT_CONNECTION || val == NETWORK_PROXY_SYS_SETTINGS) { emnp_set_sensitiveness (prefs, NETWORK_PROXY_MANUAL, FALSE); emnp_set_sensitiveness (prefs, NETWORK_PROXY_AUTOCONFIG, FALSE); } else if (val == NETWORK_PROXY_AUTOCONFIG) { emnp_set_sensitiveness (prefs, NETWORK_PROXY_MANUAL, FALSE); emnp_set_sensitiveness (prefs, NETWORK_PROXY_AUTOCONFIG, TRUE); } else if (val == NETWORK_PROXY_MANUAL) { emnp_set_sensitiveness (prefs, NETWORK_PROXY_AUTOCONFIG, FALSE); emnp_set_sensitiveness (prefs, NETWORK_PROXY_MANUAL, TRUE); } /* get our toplevel widget */ target = em_config_target_new_prefs (ec, prefs->gconf); e_config_set_target ((EConfig *) ec, (EConfigTarget *) target); toplevel = e_config_create_widget ((EConfig *) ec); gtk_container_add (GTK_CONTAINER (prefs), toplevel); }
static void secure_button_clicked_cb (GtkWidget *widget, CamelCipherValidity *validity) { GtkBuilder *builder; GtkWidget *grid, *w; GtkWidget *dialog; g_return_if_fail (validity != NULL); builder = gtk_builder_new (); e_load_ui_builder_definition (builder, "mail-dialogs.ui"); dialog = e_builder_get_widget (builder, "message_security_dialog"); grid = e_builder_get_widget (builder, "signature_grid"); w = gtk_label_new (_(smime_sign_table[validity->sign.status].description)); gtk_misc_set_alignment ((GtkMisc *) w, 0.0, 0.5); gtk_label_set_line_wrap ((GtkLabel *) w, TRUE); gtk_container_add (GTK_CONTAINER (grid), w); if (validity->sign.description) { GtkTextBuffer *buffer; buffer = gtk_text_buffer_new (NULL); gtk_text_buffer_set_text ( buffer, validity->sign.description, strlen (validity->sign.description)); w = g_object_new ( gtk_scrolled_window_get_type (), "hscrollbar_policy", GTK_POLICY_AUTOMATIC, "vscrollbar_policy", GTK_POLICY_AUTOMATIC, "shadow_type", GTK_SHADOW_IN, "expand", TRUE, "child", g_object_new (gtk_text_view_get_type (), "buffer", buffer, "cursor_visible", FALSE, "editable", FALSE, "width_request", 500, "height_request", 160, NULL), NULL); g_object_unref (buffer); gtk_container_add (GTK_CONTAINER (grid), w); } if (!g_queue_is_empty (&validity->sign.signers)) add_cert_table ( grid, &validity->sign.signers, NULL); gtk_widget_show_all (grid); grid = e_builder_get_widget (builder, "encryption_grid"); w = gtk_label_new (_(smime_encrypt_table[validity->encrypt.status].description)); gtk_misc_set_alignment ((GtkMisc *) w, 0.0, 0.5); gtk_label_set_line_wrap ((GtkLabel *) w, TRUE); gtk_container_add (GTK_CONTAINER (grid), w); if (validity->encrypt.description) { GtkTextBuffer *buffer; buffer = gtk_text_buffer_new (NULL); gtk_text_buffer_set_text ( buffer, validity->encrypt.description, strlen (validity->encrypt.description)); w = g_object_new ( gtk_scrolled_window_get_type (), "hscrollbar_policy", GTK_POLICY_AUTOMATIC, "vscrollbar_policy", GTK_POLICY_AUTOMATIC, "shadow_type", GTK_SHADOW_IN, "expand", TRUE, "child", g_object_new (gtk_text_view_get_type (), "buffer", buffer, "cursor_visible", FALSE, "editable", FALSE, "width_request", 500, "height_request", 160, NULL), NULL); g_object_unref (buffer); gtk_container_add (GTK_CONTAINER (grid), w); } if (!g_queue_is_empty (&validity->encrypt.encrypters)) add_cert_table (grid, &validity->encrypt.encrypters, NULL); gtk_widget_show_all (grid); g_object_unref (builder); g_signal_connect ( dialog, "response", G_CALLBACK (info_response), NULL); gtk_widget_show (dialog); }