/** * seahorse_prefs_new: * @parent: The #GtkWindow to set as the preferences dialog's parent * * Create a new preferences window. * * Returns: The preferences window. **/ SeahorseWidget * seahorse_prefs_new (GtkWindow *parent) { SeahorseWidget *swidget; #ifndef WITH_KEYSERVER GtkWidget *widget = NULL; #endif swidget = seahorse_widget_new ("prefs", parent); if (swidget != NULL) { #ifdef WITH_KEYSERVER setup_keyservers (swidget); #else widget = GTK_WIDGET (seahorse_widget_get_widget (swidget, "keyserver-tab")); g_return_val_if_fail (GTK_IS_WIDGET (widget), swidget); seahorse_prefs_remove_tab (swidget, widget); #endif seahorse_widget_show (swidget); } else { swidget = seahorse_widget_find ("prefs"); gtk_window_present (GTK_WINDOW (seahorse_widget_get_widget (swidget, swidget->name))); } return swidget; }
void properties_cb (GtkAction *action, SeahorseApplet *sapplet) { SeahorseWidget *swidget; GtkWidget *widget; GdkPixbuf *pixbuf; swidget = seahorse_widget_new ("applet-preferences", NULL); widget = GTK_WIDGET (seahorse_widget_get_widget (swidget, swidget->name)); pixbuf = gtk_widget_render_icon (widget, ICON_CLIPBOARD_DEFAULT, (GtkIconSize)-1, NULL); gtk_window_set_icon (GTK_WINDOW (widget), pixbuf); g_object_unref(pixbuf); /* Preferences window is already open */ if (!swidget) return; widget = GTK_WIDGET (seahorse_widget_get_widget (swidget, "show-clipboard-state")); if (widget && GTK_IS_CHECK_BUTTON (widget)) seahorse_check_button_gconf_attach (GTK_CHECK_BUTTON (widget), SHOW_CLIPBOARD_STATE_KEY); widget = GTK_WIDGET (seahorse_widget_get_widget (swidget, "display-encrypted-clipboard")); if (widget && GTK_IS_CHECK_BUTTON (widget)) seahorse_check_button_gconf_attach (GTK_CHECK_BUTTON (widget), DISPLAY_CLIPBOARD_ENC_KEY); widget = GTK_WIDGET (seahorse_widget_get_widget (swidget, "display-decrypted-clipboard")); if (widget && GTK_IS_CHECK_BUTTON (widget)) seahorse_check_button_gconf_attach (GTK_CHECK_BUTTON (widget), DISPLAY_CLIPBOARD_DEC_KEY); widget = GTK_WIDGET (seahorse_widget_get_widget (swidget, "display-verified-clipboard")); if (widget && GTK_IS_CHECK_BUTTON (widget)) seahorse_check_button_gconf_attach (GTK_CHECK_BUTTON (widget), DISPLAY_CLIPBOARD_VER_KEY); widget = GTK_WIDGET (seahorse_widget_get_widget (swidget, "close")); g_signal_connect (widget, "clicked", G_CALLBACK (close_props), swidget); widget = seahorse_widget_get_toplevel (swidget); g_signal_connect (widget, "delete-event", G_CALLBACK (win_destroyed), swidget); seahorse_widget_show (swidget); }
void seahorse_gpgme_revoke_new (SeahorseGpgmeSubkey *subkey, GtkWindow *parent) { SeahorseWidget *swidget; gchar *title; const gchar *label; GtkWidget *widget; GtkListStore *store; GtkTreeIter iter; GtkCellRenderer *renderer; g_return_if_fail (SEAHORSE_IS_GPGME_SUBKEY (subkey)); swidget = seahorse_widget_new ("revoke", parent); g_return_if_fail (swidget != NULL); label = seahorse_pgp_subkey_get_description (SEAHORSE_PGP_SUBKEY (subkey)); title = g_strdup_printf (_("Revoke: %s"), label); gtk_window_set_title (GTK_WINDOW (seahorse_widget_get_widget (swidget, swidget->name)), title); g_free (title); g_object_set_data (G_OBJECT (swidget), "subkey", subkey); /* Initialize List Store for the Combo Box */ store = gtk_list_store_new(N_COLUMNS, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INT); gtk_list_store_append (store, &iter); gtk_list_store_set (store, &iter, COLUMN_TEXT, _("No reason"), COLUMN_TOOLTIP, _("No reason for revoking key"), COLUMN_INT, REVOKE_NO_REASON, -1); gtk_list_store_append (store, &iter); gtk_list_store_set (store, &iter, COLUMN_TEXT, _("Compromised"), COLUMN_TOOLTIP, _("Key has been compromised"), COLUMN_INT, REVOKE_COMPROMISED, -1); gtk_list_store_append (store, &iter); gtk_list_store_set (store, &iter, COLUMN_TEXT, _("Superseded"), COLUMN_TOOLTIP, _("Key has been superseded"), COLUMN_INT, REVOKE_SUPERSEDED, -1); gtk_list_store_append (store, &iter); gtk_list_store_set (store, &iter, COLUMN_TEXT, _("Not Used"), COLUMN_TOOLTIP, _("Key is no longer used"), COLUMN_INT, REVOKE_NOT_USED, -1); /* Finish Setting Up Combo Box */ widget = GTK_WIDGET (seahorse_widget_get_widget (swidget, "reason")); gtk_combo_box_set_model (GTK_COMBO_BOX (widget), GTK_TREE_MODEL (store)); gtk_combo_box_set_active (GTK_COMBO_BOX (widget), 0); renderer = gtk_cell_renderer_text_new (); gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (widget), renderer, TRUE); gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (widget), renderer, "text", COLUMN_TEXT, NULL); }
/* Build the multiple file dialog */ static SeahorseWidget* prepare_dialog (FilesCtx *ctx, guint nfolders, guint nfiles, GFileInfo *info, gchar* ext) { SeahorseWidget *swidget; const gchar* pkg; GtkWidget *tog; GtkWidget *w; GtkWidget *combo; gchar *msg, *display; gboolean sep; gint i; GtkCellRenderer *cell; GtkTreeModel *store; FRFileType *save_type_list; g_assert (info); swidget = seahorse_widget_new ("multi-encrypt", NULL); g_return_val_if_fail (swidget != NULL, NULL); /* The main 'selected' message */ msg = make_message (nfolders, nfiles); w = GTK_WIDGET (seahorse_widget_get_widget (swidget, "message")); gtk_label_set_markup (GTK_LABEL(w), msg); g_free (msg); /* Setup the remote or local messages */ w = GTK_WIDGET (seahorse_widget_get_widget (swidget, ctx->remote ? "remote-options" : "local-options")); gtk_widget_show (w); tog = GTK_WIDGET (seahorse_widget_get_widget (swidget, "do-separate")); if (ctx->remote) { /* Always use the seperate option */ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (tog), TRUE); /* The local stuff */ } else { sep = g_settings_get_boolean (seahorse_tool_settings, "separate-files"); /* Setup the package */ w = GTK_WIDGET (seahorse_widget_get_widget (swidget, "package-name")); display = g_strdup (g_file_info_get_display_name (info)); pkg = seahorse_util_uri_split_last (display); gtk_entry_set_text (GTK_ENTRY (w), pkg); g_free (display); /* Setup the URI combo box */ combo = GTK_WIDGET (seahorse_widget_get_widget (swidget, "package-extension")); store = GTK_TREE_MODEL (gtk_list_store_new (1, G_TYPE_STRING)); gtk_combo_box_set_model (GTK_COMBO_BOX (combo), store); g_object_unref (store); gtk_cell_layout_clear (GTK_CELL_LAYOUT (combo)); cell = gtk_cell_renderer_text_new (); gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (combo), cell, TRUE); gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (combo), cell, "text", 0, NULL); compute_supported_archive_types (); save_type_list = save_type; for (i = 0; save_type_list[i] != FR_FILE_TYPE_NULL; i++) { gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), file_type_desc[save_type_list[i]].ext); if (strcmp(ext, file_type_desc[save_type_list[i]].ext) == 0) gtk_combo_box_set_active (GTK_COMBO_BOX (combo), i); } if(sep == FALSE) { gtk_widget_grab_focus (w); gtk_editable_select_region (GTK_EDITABLE (w), 0, strlen (pkg)); } /* Setup the main radio buttons */ gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (tog), sep); g_signal_connect (tog, "toggled", G_CALLBACK (seperate_toggled), w); seperate_toggled (tog, w); } return swidget; }