aboutsummaryrefslogtreecommitdiffstats
path: root/smime/gui
diff options
context:
space:
mode:
authornobody <nobody@localhost>2003-12-09 09:57:09 +0800
committernobody <nobody@localhost>2003-12-09 09:57:09 +0800
commitc38a6122c95132d3468a2bbadefac5c0dbaf28a1 (patch)
tree75bb0caf9afd4b94842023406d6a7938c5d8b2b7 /smime/gui
parent0031a7166cd0f3fc0cec0b60c468ca22a8c45b0b (diff)
downloadgsoc2013-evolution-GGV_2_6_2.tar
gsoc2013-evolution-GGV_2_6_2.tar.gz
gsoc2013-evolution-GGV_2_6_2.tar.bz2
gsoc2013-evolution-GGV_2_6_2.tar.lz
gsoc2013-evolution-GGV_2_6_2.tar.xz
gsoc2013-evolution-GGV_2_6_2.tar.zst
gsoc2013-evolution-GGV_2_6_2.zip
This commit was manufactured by cvs2svn to create tag 'GGV_2_6_2'.GGV_2_6_2
svn path=/tags/GGV_2_6_2/; revision=23746
Diffstat (limited to 'smime/gui')
-rw-r--r--smime/gui/.cvsignore3
-rw-r--r--smime/gui/Makefile.am35
-rw-r--r--smime/gui/certificate-manager.c745
-rw-r--r--smime/gui/certificate-manager.h30
-rw-r--r--smime/gui/certificate-viewer.c298
-rw-r--r--smime/gui/certificate-viewer.h31
-rw-r--r--smime/gui/e-cert-selector.c247
-rw-r--r--smime/gui/e-cert-selector.h67
-rw-r--r--smime/gui/smime-ui.glade2100
9 files changed, 0 insertions, 3556 deletions
diff --git a/smime/gui/.cvsignore b/smime/gui/.cvsignore
deleted file mode 100644
index 61a0c160f1..0000000000
--- a/smime/gui/.cvsignore
+++ /dev/null
@@ -1,3 +0,0 @@
-Makefile
-Makefile.in
-smime-ui.gladep
diff --git a/smime/gui/Makefile.am b/smime/gui/Makefile.am
deleted file mode 100644
index a15fdade86..0000000000
--- a/smime/gui/Makefile.am
+++ /dev/null
@@ -1,35 +0,0 @@
-INCLUDES = \
- -DG_LOG_DOMAIN=\"evolution-smime\" \
- -I$(top_srcdir) \
- -I$(top_srcdir)/smime/lib \
- -I$(top_srcdir)/shell \
- -I$(top_builddir) \
- -DEVOLUTION_DATADIR=\""$(datadir)"\" \
- -DEVOLUTION_GLADEDIR=\""$(gladedir)"\" \
- -DEVOLUTION_ETSPECDIR=\""$(etspecdir)"\" \
- -DEVOLUTION_IMAGESDIR=\""$(imagesdir)"\" \
- -DEVOLUTION_LOCALEDIR=\""$(localedir)"\" \
- -DEVOLUTION_UIDIR=\""$(evolutionuidir)"\" \
- -DPREFIX=\""$(prefix)"\" \
- $(EVOLUTION_ADDRESSBOOK_CFLAGS) \
- $(CERT_UI_CFLAGS)
-
-noinst_LTLIBRARIES = libevolution-smime.la
-
-libevolution_smime_la_SOURCES = \
- certificate-manager.c \
- certificate-manager.h \
- certificate-viewer.c \
- certificate-viewer.h \
- e-cert-selector.c \
- e-cert-selector.h
-
-libevolution_smime_la_LIBADD = \
- $(top_builddir)/smime/lib/libessmime.la \
- $(CERT_UI_LIBS)
-
-
-glade_DATA = smime-ui.glade
-
-EXTRA_DIST = \
- $(glade_DATA)
diff --git a/smime/gui/certificate-manager.c b/smime/gui/certificate-manager.c
deleted file mode 100644
index d2ae5e4fea..0000000000
--- a/smime/gui/certificate-manager.c
+++ /dev/null
@@ -1,745 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
-/*
- * Authors: Chris Toshok <toshok@ximian.com>
- *
- * Copyright (C) 2003 Ximian, Inc. (www.ximian.com)
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Street #330, Boston, MA 02111-1307, USA.
- *
- */
-
-#define GLADE_FILE_NAME "smime-ui.glade"
-
-#include <gtk/gtk.h>
-
-#include <libgnome/gnome-i18n.h>
-
-#include <glade/glade.h>
-#include "evolution-config-control.h"
-#include "certificate-manager.h"
-#include "certificate-viewer.h"
-
-#include "e-cert.h"
-#include "e-cert-db.h"
-#include "e-pkcs12.h"
-
-#include "nss.h"
-#include <cms.h>
-#include <cert.h>
-#include <certdb.h>
-#include <pkcs11.h>
-#include <pk11func.h>
-
-typedef struct {
- GladeXML *gui;
-
- GtkWidget *yourcerts_treeview;
- GtkTreeStore *yourcerts_treemodel;
- GHashTable *yourcerts_root_hash;
- GtkWidget *view_your_button;
- GtkWidget *backup_your_button;
- GtkWidget *backup_all_your_button;
- GtkWidget *import_your_button;
- GtkWidget *delete_your_button;
-
- GtkWidget *contactcerts_treeview;
- GtkTreeStore *contactcerts_treemodel;
- GHashTable *contactcerts_root_hash;
- GtkWidget *view_contact_button;
- GtkWidget *edit_contact_button;
- GtkWidget *import_contact_button;
- GtkWidget *delete_contact_button;
-
- GtkWidget *authoritycerts_treeview;
- GtkTreeStore *authoritycerts_treemodel;
- GHashTable *authoritycerts_root_hash;
- GtkWidget *view_ca_button;
- GtkWidget *edit_ca_button;
- GtkWidget *import_ca_button;
- GtkWidget *delete_ca_button;
-
-} CertificateManagerData;
-
-typedef void (*AddCertCb)(CertificateManagerData *cfm, ECert *cert);
-
-static void unload_certs (CertificateManagerData *cfm, ECertType type);
-static void load_certs (CertificateManagerData *cfm, ECertType type, AddCertCb add_cert);
-
-static void add_user_cert (CertificateManagerData *cfm, ECert *cert);
-static void add_contact_cert (CertificateManagerData *cfm, ECert *cert);
-static void add_ca_cert (CertificateManagerData *cfm, ECert *cert);
-
-static void
-handle_selection_changed (GtkTreeSelection *selection,
- int cert_column,
- GtkWidget *view_button,
- GtkWidget *edit_button,
- GtkWidget *delete_button)
-{
- GtkTreeIter iter;
- gboolean cert_selected = FALSE;
- GtkTreeModel *model;
-
- if (gtk_tree_selection_get_selected (selection,
- &model,
- &iter)) {
- ECert *cert;
-
- gtk_tree_model_get (model,
- &iter,
- cert_column, &cert,
- -1);
-
- if (cert) {
- cert_selected = TRUE;
- g_object_unref (cert);
- }
- }
-
- if (delete_button)
- gtk_widget_set_sensitive (delete_button, cert_selected);
- if (edit_button)
- gtk_widget_set_sensitive (edit_button, cert_selected);
- if (view_button)
- gtk_widget_set_sensitive (view_button, cert_selected);
-}
-
-static void
-import_your (GtkWidget *widget, CertificateManagerData *cfm)
-{
- GtkWidget *filesel = gtk_file_selection_new (_("Select a cert to import..."));
-
- if (GTK_RESPONSE_OK == gtk_dialog_run (GTK_DIALOG (filesel))) {
- const char *filename = gtk_file_selection_get_filename (GTK_FILE_SELECTION (filesel));
- EPKCS12 *pkcs12 = e_pkcs12_new ();
-
- if (e_pkcs12_import_from_file (pkcs12, filename, NULL /* XXX */)) {
- /* there's no telling how many certificates were added during the import,
- so we blow away the contact cert display and regenerate it. */
- unload_certs (cfm, E_CERT_USER);
- load_certs (cfm, E_CERT_USER, add_user_cert);
- }
- }
-
- gtk_widget_destroy (filesel);
-}
-
-static void
-yourcerts_selection_changed (GtkTreeSelection *selection, CertificateManagerData *cfm)
-{
- handle_selection_changed (selection,
- 4,
- cfm->view_your_button,
- cfm->backup_your_button, /* yes yes, not really "edit", it's a hack :) */
- cfm->delete_your_button);
-}
-
-static void
-initialize_yourcerts_ui (CertificateManagerData *cfm)
-{
- GtkCellRenderer *cell = gtk_cell_renderer_text_new ();
- GtkTreeSelection *selection;
-
- gtk_tree_view_append_column (GTK_TREE_VIEW (cfm->yourcerts_treeview),
- gtk_tree_view_column_new_with_attributes (_("Certificate Name"),
- cell,
- "text", 0,
- NULL));
-
- gtk_tree_view_append_column (GTK_TREE_VIEW (cfm->yourcerts_treeview),
- gtk_tree_view_column_new_with_attributes (_("Purposes"),
- cell,
- "text", 1,
- NULL));
-
- gtk_tree_view_append_column (GTK_TREE_VIEW (cfm->yourcerts_treeview),
- gtk_tree_view_column_new_with_attributes (_("Serial Number"),
- cell,
- "text", 2,
- NULL));
-
- gtk_tree_view_append_column (GTK_TREE_VIEW (cfm->yourcerts_treeview),
- gtk_tree_view_column_new_with_attributes (_("Expires"),
- cell,
- "text", 3,
- NULL));
-
- cfm->yourcerts_treemodel = gtk_tree_store_new (5,
- G_TYPE_STRING,
- G_TYPE_STRING,
- G_TYPE_STRING,
- G_TYPE_STRING,
- G_TYPE_OBJECT);
-
- gtk_tree_view_set_model (GTK_TREE_VIEW (cfm->yourcerts_treeview),
- GTK_TREE_MODEL (cfm->yourcerts_treemodel));
-
- cfm->yourcerts_root_hash = g_hash_table_new (g_str_hash, g_str_equal);
-
- selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (cfm->yourcerts_treeview));
- g_signal_connect (selection, "changed", G_CALLBACK (yourcerts_selection_changed), cfm);
-
- if (cfm->import_your_button) {
- g_signal_connect (cfm->import_your_button, "clicked", G_CALLBACK (import_your), cfm);
- }
-
- if (cfm->delete_your_button) {
- /* g_signal_connect */
- }
-
- if (cfm->view_your_button) {
- /* g_signal_connect */
- }
-
- if (cfm->backup_your_button) {
- /* g_signal_connect */
- }
-
- if (cfm->backup_all_your_button) {
- /* g_signal_connect */
- }
-}
-
-static void
-view_contact (GtkWidget *widget, CertificateManagerData *cfm)
-{
- GtkTreeIter iter;
-
- if (gtk_tree_selection_get_selected (gtk_tree_view_get_selection (GTK_TREE_VIEW(cfm->contactcerts_treeview)),
- NULL,
- &iter)) {
- ECert *cert;
-
- gtk_tree_model_get (GTK_TREE_MODEL (cfm->contactcerts_treemodel),
- &iter,
- 3, &cert,
- -1);
-
- if (cert)
- certificate_viewer_show (cert);
- }
-}
-
-static void
-import_contact (GtkWidget *widget, CertificateManagerData *cfm)
-{
- GtkWidget *filesel = gtk_file_selection_new (_("Select a cert to import..."));
-
- if (GTK_RESPONSE_OK == gtk_dialog_run (GTK_DIALOG (filesel))) {
- const char *filename = gtk_file_selection_get_filename (GTK_FILE_SELECTION (filesel));
-
- if (e_cert_db_import_certs_from_file (e_cert_db_peek (),
- filename,
- E_CERT_CONTACT,
- NULL)) {
-
- /* there's no telling how many certificates were added during the import,
- so we blow away the contact cert display and regenerate it. */
- unload_certs (cfm, E_CERT_CONTACT);
- load_certs (cfm, E_CERT_CONTACT, add_contact_cert);
- }
- }
-
- gtk_widget_destroy (filesel);
-}
-
-static void
-delete_contact (GtkWidget *widget, CertificateManagerData *cfm)
-{
- GtkTreeIter iter;
-
- if (gtk_tree_selection_get_selected (gtk_tree_view_get_selection (GTK_TREE_VIEW(cfm->contactcerts_treeview)),
- NULL,
- &iter)) {
- ECert *cert;
-
- gtk_tree_model_get (GTK_TREE_MODEL (cfm->contactcerts_treemodel),
- &iter,
- 3, &cert,
- -1);
-
- if (cert) {
- printf ("DELETE\n");
- e_cert_db_delete_cert (e_cert_db_peek (), cert);
- gtk_tree_store_remove (cfm->contactcerts_treemodel,
- &iter);
-
- /* we need two unrefs here, one to unref the
- gtk_tree_model_get above, and one to unref
- the initial ref when we created the cert
- and added it to the tree */
- g_object_unref (cert);
- g_object_unref (cert);
- }
- }
-
-}
-
-static void
-contactcerts_selection_changed (GtkTreeSelection *selection, CertificateManagerData *cfm)
-{
- handle_selection_changed (selection,
- 3,
- cfm->view_contact_button,
- cfm->edit_contact_button,
- cfm->delete_contact_button);
-}
-
-static GtkTreeStore*
-create_contactcerts_treemodel (void)
-{
- return gtk_tree_store_new (4,
- G_TYPE_STRING,
- G_TYPE_STRING,
- G_TYPE_STRING,
- G_TYPE_OBJECT);
-}
-
-static void
-initialize_contactcerts_ui (CertificateManagerData *cfm)
-{
- GtkCellRenderer *cell = gtk_cell_renderer_text_new ();
- GtkTreeSelection *selection;
-
- gtk_tree_view_append_column (GTK_TREE_VIEW (cfm->contactcerts_treeview),
- gtk_tree_view_column_new_with_attributes (_("Certificate Name"),
- cell,
- "text", 0,
- NULL));
-
- gtk_tree_view_append_column (GTK_TREE_VIEW (cfm->contactcerts_treeview),
- gtk_tree_view_column_new_with_attributes (_("E-Mail Address"),
- cell,
- "text", 1,
- NULL));
-
- gtk_tree_view_append_column (GTK_TREE_VIEW (cfm->contactcerts_treeview),
- gtk_tree_view_column_new_with_attributes (_("Purposes"),
- cell,
- "text", 2,
- NULL));
-
- gtk_tree_view_set_model (GTK_TREE_VIEW (cfm->contactcerts_treeview),
- GTK_TREE_MODEL (cfm->contactcerts_treemodel));
-
- cfm->contactcerts_root_hash = g_hash_table_new (g_str_hash, g_str_equal);
-
- selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (cfm->contactcerts_treeview));
- g_signal_connect (selection, "changed", G_CALLBACK (contactcerts_selection_changed), cfm);
-
- if (cfm->view_contact_button)
- g_signal_connect (cfm->view_contact_button, "clicked", G_CALLBACK (view_contact), cfm);
-
- if (cfm->import_contact_button)
- g_signal_connect (cfm->import_contact_button, "clicked", G_CALLBACK (import_contact), cfm);
-
- if (cfm->delete_contact_button)
- g_signal_connect (cfm->delete_contact_button, "clicked", G_CALLBACK (delete_contact), cfm);
-
-}
-
-static gint
-iter_string_compare (GtkTreeModel *model,
- GtkTreeIter *a,
- GtkTreeIter *b,
- gpointer user_data)
-{
- char *string1, *string2;
-
- gtk_tree_model_get (model, a,
- 0, &string1,
- -1);
-
- gtk_tree_model_get (model, b,
- 0, &string2,
- -1);
-
- return g_utf8_collate (string1, string2);
-}
-
-static void
-view_ca (GtkWidget *widget, CertificateManagerData *cfm)
-{
- GtkTreeIter iter;
-
- if (gtk_tree_selection_get_selected (gtk_tree_view_get_selection (GTK_TREE_VIEW(cfm->authoritycerts_treeview)),
- NULL,
- &iter)) {
- ECert *cert;
-
- gtk_tree_model_get (GTK_TREE_MODEL (cfm->authoritycerts_treemodel),
- &iter,
- 1, &cert,
- -1);
-
- if (cert)
- certificate_viewer_show (cert);
- }
-}
-
-static void
-import_ca (GtkWidget *widget, CertificateManagerData *cfm)
-{
- GtkWidget *filesel = gtk_file_selection_new (_("Select a cert to import..."));
-
- if (GTK_RESPONSE_OK == gtk_dialog_run (GTK_DIALOG (filesel))) {
- const char *filename = gtk_file_selection_get_filename (GTK_FILE_SELECTION (filesel));
-
- if (e_cert_db_import_certs_from_file (e_cert_db_peek (),
- filename,
- E_CERT_CA,
- NULL)) {
-
- /* there's no telling how many certificates were added during the import,
- so we blow away the CA cert display and regenerate it. */
- unload_certs (cfm, E_CERT_CA);
- load_certs (cfm, E_CERT_CA, add_ca_cert);
- }
- }
-
- gtk_widget_destroy (filesel);
-}
-
-static void
-delete_ca (GtkWidget *widget, CertificateManagerData *cfm)
-{
- GtkTreeIter iter;
-
- if (gtk_tree_selection_get_selected (gtk_tree_view_get_selection (GTK_TREE_VIEW(cfm->authoritycerts_treeview)),
- NULL,
- &iter)) {
- ECert *cert;
-
- gtk_tree_model_get (GTK_TREE_MODEL (cfm->authoritycerts_treemodel),
- &iter,
- 1, &cert,
- -1);
-
- if (cert) {
- printf ("DELETE\n");
- e_cert_db_delete_cert (e_cert_db_peek (), cert);
- gtk_tree_store_remove (cfm->authoritycerts_treemodel,
- &iter);
-
- /* we need two unrefs here, one to unref the
- gtk_tree_model_get above, and one to unref
- the initial ref when we created the cert
- and added it to the tree */
- g_object_unref (cert);
- g_object_unref (cert);
- }
- }
-
-}
-
-static void
-authoritycerts_selection_changed (GtkTreeSelection *selection, CertificateManagerData *cfm)
-{
- handle_selection_changed (selection,
- 1,
- cfm->view_ca_button,
- cfm->edit_ca_button,
- cfm->delete_ca_button);
-}
-
-static GtkTreeStore*
-create_authoritycerts_treemodel (void)
-{
- return gtk_tree_store_new (2,
- G_TYPE_STRING,
- G_TYPE_OBJECT);
-
-}
-
-static void
-initialize_authoritycerts_ui (CertificateManagerData *cfm)
-{
- GtkCellRenderer *cell = gtk_cell_renderer_text_new ();
- GtkTreeSelection *selection;
-
- gtk_tree_view_append_column (GTK_TREE_VIEW (cfm->authoritycerts_treeview),
- gtk_tree_view_column_new_with_attributes (_("Certificate Name"),
- cell,
- "text", 0,
- NULL));
-
- gtk_tree_sortable_set_sort_func (GTK_TREE_SORTABLE (cfm->authoritycerts_treemodel),
- 0,
- iter_string_compare, NULL, NULL);
-
- gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE (cfm->authoritycerts_treemodel),
- 0,
- GTK_SORT_ASCENDING);
-
- selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (cfm->authoritycerts_treeview));
- g_signal_connect (selection, "changed", G_CALLBACK (authoritycerts_selection_changed), cfm);
-
- if (cfm->view_ca_button)
- g_signal_connect (cfm->view_ca_button, "clicked", G_CALLBACK (view_ca), cfm);
-
- if (cfm->import_ca_button)
- g_signal_connect (cfm->import_ca_button, "clicked", G_CALLBACK (import_ca), cfm);
-
- if (cfm->delete_ca_button)
- g_signal_connect (cfm->delete_ca_button, "clicked", G_CALLBACK (delete_ca), cfm);
-}
-
-static void
-add_user_cert (CertificateManagerData *cfm, ECert *cert)
-{
- GtkTreeIter iter;
- GtkTreeIter *parent_iter = NULL;
- const char *organization = e_cert_get_org (cert);
-
- if (organization) {
- parent_iter = g_hash_table_lookup (cfm->yourcerts_root_hash, organization);
- if (!parent_iter) {
- /* create a new toplevel node */
- gtk_tree_store_append (GTK_TREE_STORE (cfm->yourcerts_treemodel), &iter, NULL);
-
- gtk_tree_store_set (GTK_TREE_STORE (cfm->yourcerts_treemodel), &iter,
- 0, organization, -1);
-
- /* now copy it off into parent_iter and insert it into
- the hashtable */
- parent_iter = gtk_tree_iter_copy (&iter);
- g_hash_table_insert (cfm->yourcerts_root_hash, g_strdup (organization), parent_iter);
- }
- }
-
- gtk_tree_store_append (GTK_TREE_STORE (cfm->yourcerts_treemodel), &iter, parent_iter);
-
- if (e_cert_get_cn (cert))
- gtk_tree_store_set (GTK_TREE_STORE (cfm->yourcerts_treemodel), &iter,
- 0, e_cert_get_cn (cert),
- 4, cert,
- -1);
- else
- gtk_tree_store_set (GTK_TREE_STORE (cfm->yourcerts_treemodel), &iter,
- 0, e_cert_get_nickname (cert),
- 4, cert,
- -1);
-}
-
-static void
-add_contact_cert (CertificateManagerData *cfm, ECert *cert)
-{
- GtkTreeIter iter;
- GtkTreeIter *parent_iter = NULL;
- const char *organization = e_cert_get_org (cert);
-
- if (organization) {
- parent_iter = g_hash_table_lookup (cfm->contactcerts_root_hash, organization);
- if (!parent_iter) {
- /* create a new toplevel node */
- gtk_tree_store_append (GTK_TREE_STORE (cfm->contactcerts_treemodel), &iter, NULL);
-
- gtk_tree_store_set (GTK_TREE_STORE (cfm->contactcerts_treemodel), &iter,
- 0, organization, -1);
-
- /* now copy it off into parent_iter and insert it into
- the hashtable */
- parent_iter = gtk_tree_iter_copy (&iter);
- g_hash_table_insert (cfm->contactcerts_root_hash, g_strdup (organization), parent_iter);
- }
- }
-
- gtk_tree_store_append (GTK_TREE_STORE (cfm->contactcerts_treemodel), &iter, parent_iter);
-
- if (e_cert_get_cn (cert))
- gtk_tree_store_set (GTK_TREE_STORE (cfm->contactcerts_treemodel), &iter,
- 0, e_cert_get_cn (cert),
- 1, e_cert_get_email (cert),
- 3, cert,
- -1);
- else
- gtk_tree_store_set (GTK_TREE_STORE (cfm->contactcerts_treemodel), &iter,
- 0, e_cert_get_nickname (cert),
- 1, e_cert_get_email (cert),
- 3, cert,
- -1);
-}
-
-static void
-add_ca_cert (CertificateManagerData *cfm, ECert *cert)
-{
- GtkTreeIter iter;
- GtkTreeIter *parent_iter = NULL;
- const char *organization = e_cert_get_org (cert);
-
- if (organization) {
- parent_iter = g_hash_table_lookup (cfm->authoritycerts_root_hash, organization);
- if (!parent_iter) {
- /* create a new toplevel node */
- gtk_tree_store_append (GTK_TREE_STORE (cfm->authoritycerts_treemodel), &iter, NULL);
-
- gtk_tree_store_set (GTK_TREE_STORE (cfm->authoritycerts_treemodel), &iter,
- 0, organization, -1);
-
- /* now copy it off into parent_iter and insert it into
- the hashtable */
- parent_iter = gtk_tree_iter_copy (&iter);
- g_hash_table_insert (cfm->authoritycerts_root_hash, g_strdup (organization), parent_iter);
- }
- }
-
-
- gtk_tree_store_append (GTK_TREE_STORE (cfm->authoritycerts_treemodel), &iter, parent_iter);
-
- if (e_cert_get_cn (cert))
- gtk_tree_store_set (GTK_TREE_STORE (cfm->authoritycerts_treemodel), &iter,
- 0, e_cert_get_cn (cert),
- 1, cert,
- -1);
- else
- gtk_tree_store_set (GTK_TREE_STORE (cfm->authoritycerts_treemodel), &iter,
- 0, e_cert_get_nickname (cert),
- 1, cert,
- -1);
-}
-
-static void
-destroy_key (gpointer data)
-{
- g_free (data);
-}
-
-static void
-destroy_value (gpointer data)
-{
- gtk_tree_iter_free (data);
-}
-
-static void
-unload_certs (CertificateManagerData *cfm,
- ECertType type)
-{
- switch (type) {
- case E_CERT_USER:
- break;
- case E_CERT_CONTACT:
- cfm->contactcerts_treemodel = create_contactcerts_treemodel ();
- gtk_tree_view_set_model (GTK_TREE_VIEW (cfm->contactcerts_treeview),
- GTK_TREE_MODEL (cfm->contactcerts_treemodel));
-
- if (cfm->contactcerts_root_hash)
- g_hash_table_destroy (cfm->contactcerts_root_hash);
-
- cfm->contactcerts_root_hash = g_hash_table_new_full (g_str_hash, g_str_equal,
- destroy_key, destroy_value);
- break;
- case E_CERT_SITE:
- break;
- case E_CERT_CA:
- cfm->authoritycerts_treemodel = create_authoritycerts_treemodel ();
- gtk_tree_view_set_model (GTK_TREE_VIEW (cfm->authoritycerts_treeview),
- GTK_TREE_MODEL (cfm->authoritycerts_treemodel));
-
- if (cfm->authoritycerts_root_hash)
- g_hash_table_destroy (cfm->authoritycerts_root_hash);
-
- cfm->authoritycerts_root_hash = g_hash_table_new_full (g_str_hash, g_str_equal,
- destroy_key, destroy_value);
-
-
- break;
- case E_CERT_UNKNOWN:
- /* nothing to do here */
- break;
- }
-}
-
-static void
-load_certs (CertificateManagerData *cfm,
- ECertType type,
- AddCertCb add_cert)
-{
- CERTCertList *certList;
- CERTCertListNode *node;
-
- certList = PK11_ListCerts (PK11CertListUnique, NULL);
-
- printf ("certList = %p\n", certList);
-
- for (node = CERT_LIST_HEAD(certList);
- !CERT_LIST_END(node, certList);
- node = CERT_LIST_NEXT(node)) {
- ECert *cert = e_cert_new ((CERTCertificate*)node->cert);
- if (e_cert_get_cert_type(cert) == type) {
- printf ("cert (nickname = '%s') matches\n", e_cert_get_nickname (cert));
- add_cert (cfm, cert);
- }
- }
-
-}
-
-static void
-populate_ui (CertificateManagerData *cfm)
-{
- unload_certs (cfm, E_CERT_USER);
- load_certs (cfm, E_CERT_USER, add_user_cert);
-
- unload_certs (cfm, E_CERT_CONTACT);
- load_certs (cfm, E_CERT_CONTACT, add_contact_cert);
-
- unload_certs (cfm, E_CERT_CA);
- load_certs (cfm, E_CERT_CA, add_ca_cert);
-}
-
-EvolutionConfigControl*
-certificate_manager_config_control_new (void)
-{
- CertificateManagerData *cfm_data;
- GtkWidget *control_widget;
-
- /* We need to peek the db here to make sure it (and NSS) are fully initialized. */
- e_cert_db_peek ();
-
- cfm_data = g_new0 (CertificateManagerData, 1);
- cfm_data->gui = glade_xml_new (EVOLUTION_GLADEDIR "/" GLADE_FILE_NAME, NULL, NULL);
-
- cfm_data->yourcerts_treeview = glade_xml_get_widget (cfm_data->gui, "yourcerts-treeview");
- cfm_data->contactcerts_treeview = glade_xml_get_widget (cfm_data->gui, "contactcerts-treeview");
- cfm_data->authoritycerts_treeview = glade_xml_get_widget (cfm_data->gui, "authoritycerts-treeview");
-
- cfm_data->view_your_button = glade_xml_get_widget (cfm_data->gui, "your-view-button");
- cfm_data->backup_your_button = glade_xml_get_widget (cfm_data->gui, "your-backup-button");
- cfm_data->backup_all_your_button = glade_xml_get_widget (cfm_data->gui, "your-backup-all-button");
- cfm_data->import_your_button = glade_xml_get_widget (cfm_data->gui, "your-import-button");
- cfm_data->delete_your_button = glade_xml_get_widget (cfm_data->gui, "your-delete-button");
-
- cfm_data->view_contact_button = glade_xml_get_widget (cfm_data->gui, "contact-view-button");
- cfm_data->edit_contact_button = glade_xml_get_widget (cfm_data->gui, "contact-edit-button");
- cfm_data->import_contact_button = glade_xml_get_widget (cfm_data->gui, "contact-import-button");
- cfm_data->delete_contact_button = glade_xml_get_widget (cfm_data->gui, "contact-delete-button");
-
- cfm_data->view_ca_button = glade_xml_get_widget (cfm_data->gui, "authority-view-button");
- cfm_data->edit_ca_button = glade_xml_get_widget (cfm_data->gui, "authority-edit-button");
- cfm_data->import_ca_button = glade_xml_get_widget (cfm_data->gui, "authority-import-button");
- cfm_data->delete_ca_button = glade_xml_get_widget (cfm_data->gui, "authority-delete-button");
-
- initialize_yourcerts_ui(cfm_data);
- initialize_contactcerts_ui(cfm_data);
- initialize_authoritycerts_ui(cfm_data);
-
- populate_ui (cfm_data);
-
- control_widget = glade_xml_get_widget (cfm_data->gui, "cert-manager-notebook");
- gtk_widget_ref (control_widget);
-
- gtk_container_remove (GTK_CONTAINER (control_widget->parent), control_widget);
-
- return evolution_config_control_new (control_widget);
-}
diff --git a/smime/gui/certificate-manager.h b/smime/gui/certificate-manager.h
deleted file mode 100644
index ee2002b159..0000000000
--- a/smime/gui/certificate-manager.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
-/*
- * Authors: Chris Toshok <toshok@ximian.com>
- *
- * Copyright (C) 2003 Ximian, Inc. (www.ximian.com)
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Street #330, Boston, MA 02111-1307, USA.
- *
- */
-
-#ifndef _CERTIFICATE_MANAGER_H_
-#define _CERTIFICATE_MANAGER_H
-
-#include "evolution-config-control.h"
-
-EvolutionConfigControl* certificate_manager_config_control_new (void);
-
-#endif /* _CERTIFICATE_MANAGER_H_ */
diff --git a/smime/gui/certificate-viewer.c b/smime/gui/certificate-viewer.c
deleted file mode 100644
index 792ccab01a..0000000000
--- a/smime/gui/certificate-viewer.c
+++ /dev/null
@@ -1,298 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
-/*
- * Authors: Chris Toshok <toshok@ximian.com>
- *
- * Copyright (C) 2003 Ximian, Inc. (www.ximian.com)
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Street #330, Boston, MA 02111-1307, USA.
- *
- */
-
-#include "certificate-viewer.h"
-
-#include "e-asn1-object.h"
-
-#include <gtk/gtk.h>
-
-#include <libgnome/gnome-i18n.h>
-#include <glade/glade.h>
-
-#define GLADE_FILE_NAME "smime-ui.glade"
-
-typedef struct {
- GladeXML *gui;
- GtkWidget *dialog;
- GtkTreeStore *hierarchy_store, *fields_store;
- GtkWidget *hierarchy_tree, *fields_tree;
- GtkWidget *field_text;
-
- GList *cert_chain;
-} CertificateViewerData;
-
-static void
-free_data (gpointer data, GObject *where_the_object_was)
-{
- CertificateViewerData *cvm = data;
-
- g_list_foreach (cvm->cert_chain, (GFunc)g_object_unref, NULL);
- g_list_free (cvm->cert_chain);
-
- g_object_unref (cvm->gui);
- g_free (cvm);
-}
-
-static void
-fill_in_general (CertificateViewerData *cvm_data, ECert *cert)
-{
- CERTCertificate *mcert = e_cert_get_internal_cert (cert);
- GtkWidget *label;
- const char *text;
-
- /* issued to */
- if (e_cert_get_cn (cert)) {
- label = glade_xml_get_widget (cvm_data->gui, "issued-to-cn");
- gtk_label_set_text (GTK_LABEL (label), e_cert_get_cn (cert));
- }
-
- if (e_cert_get_org (cert)) {
- label = glade_xml_get_widget (cvm_data->gui, "issued-to-o");
- gtk_label_set_text (GTK_LABEL (label), e_cert_get_org (cert));
- }
-
- if (e_cert_get_org_unit (cert)) {
- label = glade_xml_get_widget (cvm_data->gui, "issued-to-ou");
- gtk_label_set_text (GTK_LABEL (label), e_cert_get_org_unit (cert));
- }
-
- text = e_cert_get_serial_number (cert);
- label = glade_xml_get_widget (cvm_data->gui, "issued-to-serial");
- gtk_label_set_text (GTK_LABEL (label), text);
-
- /* issued by */
- if (e_cert_get_issuer_cn (cert)) {
- label = glade_xml_get_widget (cvm_data->gui, "issued-by-cn");
- gtk_label_set_text (GTK_LABEL (label), e_cert_get_issuer_cn (cert));
- }
-
- if (e_cert_get_issuer_org (cert)) {
- label = glade_xml_get_widget (cvm_data->gui, "issued-by-o");
- gtk_label_set_text (GTK_LABEL (label), e_cert_get_issuer_org (cert));
- }
-
- if (e_cert_get_issuer_org_unit (cert)) {
- label = glade_xml_get_widget (cvm_data->gui, "issued-by-ou");
- gtk_label_set_text (GTK_LABEL (label), e_cert_get_issuer_org_unit (cert));
- }
-
- /* validity */
- if (e_cert_get_issued_on (cert)) {
- label = glade_xml_get_widget (cvm_data->gui, "validity-issued-on");
- gtk_label_set_text (GTK_LABEL (label), e_cert_get_issued_on (cert));
- }
-
- if (e_cert_get_expires_on (cert)) {
- label = glade_xml_get_widget (cvm_data->gui, "validity-expires-on");
- gtk_label_set_text (GTK_LABEL (label), e_cert_get_expires_on (cert));
- }
-
- /* fingerprints */
- text = e_cert_get_sha1_fingerprint (cert);
- label = glade_xml_get_widget (cvm_data->gui, "fingerprints-sha1");
- gtk_label_set_text (GTK_LABEL (label), text);
-
- text = e_cert_get_md5_fingerprint (cert);
- label = glade_xml_get_widget (cvm_data->gui, "fingerprints-md5");
- gtk_label_set_text (GTK_LABEL (label), text);
-}
-
-static void
-populate_fields_tree (CertificateViewerData *cvm_data, EASN1Object *asn1, GtkTreeIter *root)
-{
- GtkTreeIter new_iter;
-
- /* first insert a node for the current asn1 */
- gtk_tree_store_insert (cvm_data->fields_store, &new_iter, root, -1);
- gtk_tree_store_set (cvm_data->fields_store, &new_iter,
- 0, e_asn1_object_get_display_name (asn1),
- 1, asn1,
- -1);
-
- if (e_asn1_object_is_valid_container (asn1)) {
- GList *children = e_asn1_object_get_children (asn1);
- if (children) {
- GList *l;
- for (l = children; l; l = l->next) {
- EASN1Object *subasn1 = l->data;
- populate_fields_tree (cvm_data, subasn1, &new_iter);
- }
- }
- g_list_foreach (children, (GFunc)g_object_unref, NULL);
- g_list_free (children);
- }
-}
-
-static void
-hierarchy_selection_changed (GtkTreeSelection *selection, CertificateViewerData *cvm_data)
-{
- GtkTreeIter iter;
- GtkTreeModel *model;
-
- if (gtk_tree_selection_get_selected (selection,
- &model,
- &iter)) {
- EASN1Object *asn1_object;
- ECert *cert;
-
- gtk_tree_model_get (model,
- &iter,
- 1, &cert,
- -1);
-
- if (!cert)
- return;
-
- /* display the cert's ASN1 structure */
- asn1_object = e_cert_get_asn1_struct (cert);
-
- /* wipe out the old model */
- cvm_data->fields_store = gtk_tree_store_new (2, G_TYPE_STRING, G_TYPE_POINTER);
- gtk_tree_view_set_model (GTK_TREE_VIEW (cvm_data->fields_tree),
- GTK_TREE_MODEL (cvm_data->fields_store));
-
- /* populate the fields from the newly selected cert */
- populate_fields_tree (cvm_data, asn1_object, NULL);
- gtk_tree_view_expand_all (GTK_TREE_VIEW (cvm_data->fields_tree));
- g_object_unref (asn1_object);
-
- /* and blow away the field value */
- gtk_text_buffer_set_text (gtk_text_view_get_buffer (GTK_TEXT_VIEW (cvm_data->field_text)),
- "", 0);
- }
-}
-
-static void
-fields_selection_changed (GtkTreeSelection *selection, CertificateViewerData *cvm_data)
-{
- GtkTreeIter iter;
- GtkTreeModel *model;
-
- if (gtk_tree_selection_get_selected (selection,
- &model,
- &iter)) {
- EASN1Object *asn1_object;
- const char *value;
-
- gtk_tree_model_get (model,
- &iter,
- 1, &asn1_object,
- -1);
-
- value = e_asn1_object_get_display_value (asn1_object);
-
- if (value)
- gtk_text_buffer_set_text (gtk_text_view_get_buffer (GTK_TEXT_VIEW (cvm_data->field_text)),
- value, strlen (value));
- else
- gtk_text_buffer_set_text (gtk_text_view_get_buffer (GTK_TEXT_VIEW (cvm_data->field_text)),
- "", 0);
- }
-}
-
-static void
-fill_in_details (CertificateViewerData *cvm_data, ECert *cert)
-{
- GList *l;
- GtkTreeIter *root = NULL;
- GtkTreeSelection *selection;
-
- /* hook up all the hierarchy tree foo */
- cvm_data->hierarchy_store = gtk_tree_store_new (2, G_TYPE_STRING, G_TYPE_OBJECT);
- cvm_data->hierarchy_tree = glade_xml_get_widget (cvm_data->gui, "cert-hierarchy-treeview");
- gtk_tree_view_set_model (GTK_TREE_VIEW (cvm_data->hierarchy_tree),
- GTK_TREE_MODEL (cvm_data->hierarchy_store));
-
- gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (cvm_data->hierarchy_tree),
- -1, "Cert", gtk_cell_renderer_text_new(),
- "text", 0, NULL);
-
- selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (cvm_data->hierarchy_tree));
- g_signal_connect (selection, "changed", G_CALLBACK (hierarchy_selection_changed), cvm_data);
-
- /* hook up all the fields tree foo */
- cvm_data->fields_tree = glade_xml_get_widget (cvm_data->gui, "cert-fields-treeview");
-
- gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW (cvm_data->fields_tree),
- -1, "Field", gtk_cell_renderer_text_new(),
- "text", 0, NULL);
-
- selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (cvm_data->fields_tree));
- g_signal_connect (selection, "changed", G_CALLBACK (fields_selection_changed), cvm_data);
-
- /* hook up all the field display foo */
- cvm_data->field_text = glade_xml_get_widget (cvm_data->gui, "cert-field-value-textview");
-
- /* initially populate the hierarchy from the cert's chain */
- cvm_data->cert_chain = e_cert_get_chain (cert);
- cvm_data->cert_chain = g_list_reverse (cvm_data->cert_chain);
- for (l = cvm_data->cert_chain; l; l = l->next) {
- ECert *c = l->data;
- const char *str;
- GtkTreeIter new_iter;
-
- str = e_cert_get_cn (c);
- if (!str)
- str = e_cert_get_subject_name (c);
-
- gtk_tree_store_insert (cvm_data->hierarchy_store, &new_iter, root, -1);
- gtk_tree_store_set (cvm_data->hierarchy_store, &new_iter,
- 0, str,
- 1, c,
- -1);
-
- root = &new_iter;
- }
-
- gtk_tree_view_expand_all (GTK_TREE_VIEW (cvm_data->hierarchy_tree));
-}
-
-GtkWidget*
-certificate_viewer_show (ECert *cert)
-{
- CertificateViewerData *cvm_data;
- char *title;
-
- cvm_data = g_new0 (CertificateViewerData, 1);
- cvm_data->gui = glade_xml_new (EVOLUTION_GLADEDIR "/" GLADE_FILE_NAME, NULL, NULL);
-
- cvm_data->dialog = glade_xml_get_widget (cvm_data->gui, "certificate-viewer-dialog");
-
- title = g_strdup_printf (_("Certificate Viewer: %s"), e_cert_get_window_title (cert));
-
- gtk_window_set_title (GTK_WINDOW (cvm_data->dialog),
- title);
-
- g_free (title);
-
- fill_in_general (cvm_data, cert);
- fill_in_details (cvm_data, cert);
-
- g_object_weak_ref (G_OBJECT (cvm_data->dialog), free_data, cvm_data);
-
- g_signal_connect (cvm_data->dialog, "response",
- G_CALLBACK (gtk_widget_destroy), NULL);
-
- gtk_widget_show (cvm_data->dialog);
- return cvm_data->dialog;
-}
diff --git a/smime/gui/certificate-viewer.h b/smime/gui/certificate-viewer.h
deleted file mode 100644
index ab60043a39..0000000000
--- a/smime/gui/certificate-viewer.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
-/*
- * Authors: Chris Toshok <toshok@ximian.com>
- *
- * Copyright (C) 2003 Ximian, Inc. (www.ximian.com)
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Street #330, Boston, MA 02111-1307, USA.
- *
- */
-
-#ifndef _CERTIFICATE_VIEWER_H_
-#define _CERTIFICATE_VIEWER_H
-
-#include <gtk/gtkwidget.h>
-#include "e-cert.h"
-
-GtkWidget* certificate_viewer_show (ECert *cert);
-
-#endif /* _CERTIFICATE_VIEWER_H_ */
diff --git a/smime/gui/e-cert-selector.c b/smime/gui/e-cert-selector.c
deleted file mode 100644
index b3fcabdc43..0000000000
--- a/smime/gui/e-cert-selector.c
+++ /dev/null
@@ -1,247 +0,0 @@
-
-/* Copyright 2003, Novell Inc.
- *
- * Author(s): Michael Zucchi <notzed@ximian.com>
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of version 2 of the GNU General Public
- * License as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- */
-
-#include <libgnome/gnome-i18n.h>
-
-#include <gal/util/e-util.h>
-
-#include <gtk/gtktextview.h>
-#include <gtk/gtkoptionmenu.h>
-#include <gtk/gtkmenuitem.h>
-#include <gtk/gtkbox.h>
-#include <gtk/gtkstock.h>
-
-#include "nss.h"
-#include "pk11func.h"
-#include "certdb.h"
-#include "cert.h"
-
-#include <glade/glade.h>
-
-#include "e-cert-selector.h"
-
-struct _ECertSelectorPrivate {
- CERTCertList *certlist;
-
- GtkWidget *menu, *description;
-};
-
-enum {
- ECS_SELECTED,
- ECS_LAST_SIGNAL
-};
-
-static guint ecs_signals[ECS_LAST_SIGNAL];
-
-static GtkDialog *ecs_parent_class;
-
-/* (this is what mozilla shows)
-Issued to:
- Subject: E=notzed@ximian.com, CN=notzed@ximian.com, O=My Company Ltd, L=Adelaide, ST=SA, C=AU
- Serial Number: 03
- Valid from 23/10/03 06:35:29 to 22/10/04 06:35:29
- Purposes: Sign,Encrypt
-Issued by:
- Subject: E=notzed@ximian.com, O=company, L=there, ST=Here, C=AU
-*/
-
-static CERTCertListNode *
-ecs_find_current(ECertSelector *ecs)
-{
- struct _ECertSelectorPrivate *p = ecs->priv;
- CERTCertListNode *node;
- int n;
-
- if (CERT_LIST_EMPTY(p->certlist))
- return NULL;
-
- n = gtk_option_menu_get_history((GtkOptionMenu *)p->menu);
- node = CERT_LIST_HEAD(p->certlist);
- while (n>0 && !CERT_LIST_END(node, p->certlist)) {
- n--;
- node = CERT_LIST_NEXT(node);
- }
-
- g_assert(!CERT_LIST_END(node, p->certlist));
-
- return node;
-}
-
-static void
-ecs_response(GtkDialog *dialog, gint button)
-{
- CERTCertListNode *node;
-
- switch (button) {
- case GTK_RESPONSE_OK:
- node = ecs_find_current((ECertSelector *)dialog);
- break;
- default:
- node = NULL;
- break;
- }
-
- g_signal_emit(dialog, ecs_signals[ECS_SELECTED], 0, node?node->cert->nickname:NULL);
-}
-
-static void
-ecs_cert_changed(GtkWidget *w, ECertSelector *ecs)
-{
- struct _ECertSelectorPrivate *p = ecs->priv;
- CERTCertListNode *node;
- GtkTextBuffer *buffer;
- GString *text;
-
- text = g_string_new("");
- node = ecs_find_current(ecs);
- if (node) {
- /* FIXME: add serial no, validity date, uses */
- g_string_append_printf(text, _("Issued to:\n Subject: %s\n"), node->cert->subjectName);
- g_string_append_printf(text, _("Issued by:\n Subject: %s\n"), node->cert->issuerName);
- }
-
- buffer = gtk_text_view_get_buffer((GtkTextView *)p->description);
- gtk_text_buffer_set_text(buffer, text->str, text->len);
- g_string_free(text, TRUE);
-}
-
-/**
- * e_cert_selector_new:
- * @type:
- * @currentid:
- *
- * Create a new ECertSelector dialog. @type specifies which type of cert to
- * be selected, E_CERT_SELECTOR_SIGNER for signing certs, and
- * E_CERT_SELECTOR_RECIPIENT for encrypting certs.
- *
- * @currentid is the nickname of the cert currently selected for this user.
- *
- * You only need to connect to a single signal "selected" which will
- * be called with either a NULL nickname if cancelled, or the newly
- * selected nickname otherwise.
- *
- * Return value: A dialogue to be shown.
- **/
-GtkWidget *
-e_cert_selector_new(int type, const char *currentid)
-{
- ECertSelector *ecs;
- struct _ECertSelectorPrivate *p;
- SECCertUsage usage;
- CERTCertList *certlist;
- CERTCertListNode *node;
- GladeXML *gui;
- GtkWidget *w, *menu;
- int n=0, active=0;
-
- ecs = g_object_new(e_cert_selector_get_type(), NULL);
- p = ecs->priv;
-
- gui = glade_xml_new(EVOLUTION_GLADEDIR "/smime-ui.glade", "cert_selector_vbox", NULL);
-
- p->menu = glade_xml_get_widget(gui, "cert_menu");
- p->description = glade_xml_get_widget(gui, "cert_description");
-
- w = glade_xml_get_widget(gui, "cert_selector_vbox");
- gtk_box_pack_start((GtkBox *)((GtkDialog *)ecs)->vbox, w, TRUE, TRUE, 3);
-
- switch (type) {
- case E_CERT_SELECTOR_SIGNER:
- default:
- usage = certUsageEmailSigner;
- break;
- case E_CERT_SELECTOR_RECIPIENT:
- usage = certUsageEmailRecipient;
- break;
- }
-
- menu = gtk_menu_new();
-
- certlist = CERT_FindUserCertsByUsage(CERT_GetDefaultCertDB(), usage, FALSE, TRUE, NULL);
- ecs->priv->certlist = certlist;
- node = CERT_LIST_HEAD(certlist);
- while (!CERT_LIST_END(node, certlist)) {
- w = gtk_menu_item_new_with_label(node->cert->nickname);
- gtk_menu_shell_append((GtkMenuShell *)menu, w);
- gtk_widget_show(w);
-
- if (currentid != NULL
- && (strcmp(node->cert->nickname, currentid) == 0
- || strcmp(node->cert->emailAddr, currentid) == 0))
- active = n;
-
- n++;
- node = CERT_LIST_NEXT(node);
- }
-
- gtk_option_menu_set_menu((GtkOptionMenu *)p->menu, menu);
- gtk_option_menu_set_history((GtkOptionMenu *)p->menu, active);
-
- g_signal_connect(p->menu, "changed", G_CALLBACK(ecs_cert_changed), ecs);
-
- g_object_unref(gui);
-
- ecs_cert_changed(p->menu, ecs);
-
- return GTK_WIDGET(ecs);
-}
-
-static void
-ecs_init(ECertSelector *ecs)
-{
- gtk_dialog_add_buttons((GtkDialog *)ecs,
- GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
- GTK_STOCK_OK, GTK_RESPONSE_OK, NULL);
-
- ecs->priv = g_malloc0(sizeof(*ecs->priv));
-}
-
-static void
-ecs_finalise(GObject *o)
-{
- ECertSelector *ecs = (ECertSelector *)o;
-
- if (ecs->priv->certlist)
- CERT_DestroyCertList(ecs->priv->certlist);
-
- g_free(ecs->priv);
-
- ((GObjectClass *)ecs_parent_class)->finalize(o);
-}
-
-static void
-ecs_class_init(ECertSelectorClass *klass)
-{
- ecs_parent_class = g_type_class_ref(gtk_dialog_get_type());
-
- ((GObjectClass *)klass)->finalize = ecs_finalise;
- ((GtkDialogClass *)klass)->response = ecs_response;
-
- ecs_signals[ECS_SELECTED] =
- g_signal_new("selected",
- G_OBJECT_CLASS_TYPE(klass),
- G_SIGNAL_RUN_LAST,
- G_STRUCT_OFFSET(ECertSelectorClass, selected),
- NULL, NULL,
- g_cclosure_marshal_VOID__POINTER,
- G_TYPE_NONE, 1, G_TYPE_POINTER);
-}
-
-E_MAKE_TYPE(e_cert_selector, "ECertSelector", ECertSelector, ecs_class_init, ecs_init, gtk_dialog_get_type())
diff --git a/smime/gui/e-cert-selector.h b/smime/gui/e-cert-selector.h
deleted file mode 100644
index 8919a3e916..0000000000
--- a/smime/gui/e-cert-selector.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */
-/* e-cert-selector.h
- *
- * Copyright (C) 2003 Novell Inc.
- *
- * Authors: Michael Zucchi
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of version 2 of the GNU General Public
- * License as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- *
- */
-
-#ifndef E_CERT_SELECTOR_H
-#define E_CERT_SELECTOR_H
-
-#include <gtk/gtkdialog.h>
-
-#ifdef cplusplus
-extern "C" {
-#pragma }
-#endif /* cplusplus */
-
-#define E_TYPE_CERT_SELECTOR (e_cert_selector_get_type ())
-#define E_CERT_SELECTOR(obj) (GTK_CHECK_CAST ((obj), E_TYPE_CERT_SELECTOR, ECertSelector))
-#define E_CERT_SELECTOR_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), E_TYPE_CERT_SELECTOR, ECertSelectorClass))
-#define E_IS_CERT_SELECTOR(obj) (GTK_CHECK_TYPE ((obj), E_TYPE_CERT_SELECTOR))
-#define E_IS_CERT_SELECTOR_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((obj), E_TYPE_CERT_SELECTOR))
-
-typedef struct _ECertSelector ECertSelector;
-typedef struct _ECertSelectorClass ECertSelectorClass;
-
-struct _ECertSelector {
- GtkDialog parent;
-
- struct _ECertSelectorPrivate *priv;
-};
-
-struct _ECertSelectorClass {
- GtkDialogClass parent_class;
-
- void (*selected)(ECertSelector *, const char *certid);
-};
-
-enum _e_cert_selector_type {
- E_CERT_SELECTOR_SIGNER,
- E_CERT_SELECTOR_RECIPIENT,
-};
-
-GtkType e_cert_selector_get_type (void);
-GtkWidget *e_cert_selector_new (int type, const char *currentid);
-
-#ifdef cplusplus
-}
-#endif /* cplusplus */
-
-#endif /* E_CERT_SELECTOR_H */
diff --git a/smime/gui/smime-ui.glade b/smime/gui/smime-ui.glade
deleted file mode 100644
index 36966f7443..0000000000
--- a/smime/gui/smime-ui.glade
+++ /dev/null
@@ -1,2100 +0,0 @@
-<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
-<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd">
-
-<glade-interface>
-
-<widget class="GtkDialog" id="certificate-viewer-dialog">
- <property name="title" translatable="yes">dialog1</property>
- <property name="type">GTK_WINDOW_TOPLEVEL</property>
- <property name="window_position">GTK_WIN_POS_NONE</property>
- <property name="modal">False</property>
- <property name="resizable">True</property>
- <property name="destroy_with_parent">False</property>
- <property name="has_separator">True</property>
-
- <child internal-child="vbox">
- <widget class="GtkVBox" id="dialog-vbox1">
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">0</property>
-
- <child internal-child="action_area">
- <widget class="GtkHButtonBox" id="dialog-action_area1">
- <property name="visible">True</property>
- <property name="layout_style">GTK_BUTTONBOX_END</property>
-
- <child>
- <widget class="GtkButton" id="closebutton1">
- <property name="visible">True</property>
- <property name="can_default">True</property>
- <property name="can_focus">True</property>
- <property name="label">gtk-close</property>
- <property name="use_stock">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="response_id">-7</property>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="pack_type">GTK_PACK_END</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkNotebook" id="notebook1">
- <property name="border_width">12</property>
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="show_tabs">True</property>
- <property name="show_border">True</property>
- <property name="tab_pos">GTK_POS_TOP</property>
- <property name="scrollable">False</property>
- <property name="enable_popup">False</property>
-
- <child>
- <widget class="GtkVBox" id="vbox1">
- <property name="border_width">6</property>
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">6</property>
-
- <child>
- <widget class="GtkFrame" id="frame1">
- <property name="visible">True</property>
- <property name="label_xalign">0</property>
- <property name="label_yalign">0.5</property>
- <property name="shadow_type">GTK_SHADOW_NONE</property>
-
- <child>
- <widget class="GtkVBox" id="vbox2">
- <property name="border_width">6</property>
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">0</property>
-
- <child>
- <widget class="GtkLabel" id="ssl-client-cert-verified-label">
- <property name="visible">True</property>
- <property name="label" translatable="yes">SSL Client Certificate</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="ssl-server-cert-verified-label">
- <property name="visible">True</property>
- <property name="label" translatable="yes">SSL Server Certificate</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="email-signer-cert-verified-label">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Email Signer Certificate</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="email-recipient-cert-verified-label">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Email Recipient Certificate</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
- </widget>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label3">
- <property name="visible">True</property>
- <property name="label" translatable="yes">&lt;b&gt;This certificate has been verified for the following uses:&lt;/b&gt;</property>
- <property name="use_underline">False</property>
- <property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="type">label_item</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkHSeparator" id="hseparator1">
- <property name="visible">True</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkTable" id="table3">
- <property name="border_width">3</property>
- <property name="visible">True</property>
- <property name="n_rows">15</property>
- <property name="n_columns">2</property>
- <property name="homogeneous">False</property>
- <property name="row_spacing">0</property>
- <property name="column_spacing">6</property>
-
- <child>
- <widget class="GtkLabel" id="label25">
- <property name="visible">True</property>
- <property name="label" translatable="yes">&lt;b&gt;Issued To&lt;/b&gt;</property>
- <property name="use_underline">False</property>
- <property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">1</property>
- <property name="xpad">0</property>
- <property name="ypad">3</property>
- </widget>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">2</property>
- <property name="top_attach">0</property>
- <property name="bottom_attach">1</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label26">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Common Name (CN)</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">6</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label27">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Organization (O)</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">6</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">2</property>
- <property name="bottom_attach">3</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label28">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Organizational Unit (OU)</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">6</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">3</property>
- <property name="bottom_attach">4</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label29">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Serial Number</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">6</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">4</property>
- <property name="bottom_attach">5</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label31">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Common Name (CN)</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">6</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">6</property>
- <property name="bottom_attach">7</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label32">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Organization (O)</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">6</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">7</property>
- <property name="bottom_attach">8</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label33">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Organizational Unit (OU)</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">6</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">8</property>
- <property name="bottom_attach">9</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label36">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Issued On</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">6</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">10</property>
- <property name="bottom_attach">11</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label37">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Expires On</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">6</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">11</property>
- <property name="bottom_attach">12</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label30">
- <property name="visible">True</property>
- <property name="label" translatable="yes">&lt;b&gt;Issued By&lt;/b&gt;</property>
- <property name="use_underline">False</property>
- <property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">1</property>
- <property name="xpad">0</property>
- <property name="ypad">3</property>
- </widget>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">2</property>
- <property name="top_attach">5</property>
- <property name="bottom_attach">6</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label35">
- <property name="visible">True</property>
- <property name="label" translatable="yes">&lt;b&gt;Fingerprints&lt;/b&gt;</property>
- <property name="use_underline">False</property>
- <property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">3</property>
- </widget>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">2</property>
- <property name="top_attach">12</property>
- <property name="bottom_attach">13</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label38">
- <property name="visible">True</property>
- <property name="label" translatable="yes">SHA1 Fingerprint</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">6</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">13</property>
- <property name="bottom_attach">14</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label39">
- <property name="visible">True</property>
- <property name="label" translatable="yes">MD5 Fingerprint</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">6</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">1</property>
- <property name="top_attach">14</property>
- <property name="bottom_attach">15</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="issued-to-o">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">&lt;Not Part of Certificate&gt;</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">True</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">2</property>
- <property name="bottom_attach">3</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="issued-to-ou">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">&lt;Not Part of Certificate&gt;</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">True</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">3</property>
- <property name="bottom_attach">4</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="issued-to-serial">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">&lt;Not Part of Certificate&gt;</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">True</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">4</property>
- <property name="bottom_attach">5</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="issued-by-cn">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">&lt;Not Part of Certificate&gt;</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">True</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">6</property>
- <property name="bottom_attach">7</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="issued-by-o">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">&lt;Not Part of Certificate&gt;</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">True</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">7</property>
- <property name="bottom_attach">8</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="issued-by-ou">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">&lt;Not Part of Certificate&gt;</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">True</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">8</property>
- <property name="bottom_attach">9</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="validity-issued-on">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">&lt;Not Part of Certificate&gt;</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">True</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">10</property>
- <property name="bottom_attach">11</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="validity-expires-on">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">&lt;Not Part of Certificate&gt;</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">True</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">11</property>
- <property name="bottom_attach">12</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="fingerprints-sha1">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">&lt;Not Part of Certificate&gt;</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">True</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">13</property>
- <property name="bottom_attach">14</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="fingerprints-md5">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">&lt;Not Part of Certificate&gt;</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">True</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">14</property>
- <property name="bottom_attach">15</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="issued-to-cn">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">&lt;Not Part of Certificate&gt;</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">True</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label34">
- <property name="visible">True</property>
- <property name="label" translatable="yes">&lt;b&gt;Validity&lt;/b&gt;</property>
- <property name="use_underline">False</property>
- <property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">3</property>
- </widget>
- <packing>
- <property name="left_attach">0</property>
- <property name="right_attach">2</property>
- <property name="top_attach">9</property>
- <property name="bottom_attach">10</property>
- <property name="x_options">fill</property>
- <property name="y_options"></property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="tab_expand">False</property>
- <property name="tab_fill">True</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label1">
- <property name="visible">True</property>
- <property name="label" translatable="yes">General</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="type">tab</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkVBox" id="vbox3">
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">0</property>
-
- <child>
- <widget class="GtkFrame" id="frame4">
- <property name="visible">True</property>
- <property name="label_xalign">0</property>
- <property name="label_yalign">0.5</property>
- <property name="shadow_type">GTK_SHADOW_NONE</property>
-
- <child>
- <widget class="GtkScrolledWindow" id="scrolledwindow1">
- <property name="border_width">6</property>
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="shadow_type">GTK_SHADOW_IN</property>
- <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
-
- <child>
- <widget class="GtkTreeView" id="cert-hierarchy-treeview">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="headers_visible">False</property>
- <property name="rules_hint">False</property>
- <property name="reorderable">False</property>
- <property name="enable_search">True</property>
- </widget>
- </child>
- </widget>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label51">
- <property name="visible">True</property>
- <property name="label" translatable="yes">&lt;b&gt;Certificate Hierarchy&lt;/b&gt;</property>
- <property name="use_underline">False</property>
- <property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="type">label_item</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkFrame" id="frame5">
- <property name="visible">True</property>
- <property name="label_xalign">0</property>
- <property name="label_yalign">0.5</property>
- <property name="shadow_type">GTK_SHADOW_NONE</property>
-
- <child>
- <widget class="GtkScrolledWindow" id="scrolledwindow2">
- <property name="border_width">6</property>
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="shadow_type">GTK_SHADOW_IN</property>
- <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
-
- <child>
- <widget class="GtkTreeView" id="cert-fields-treeview">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="headers_visible">False</property>
- <property name="rules_hint">False</property>
- <property name="reorderable">False</property>
- <property name="enable_search">True</property>
- </widget>
- </child>
- </widget>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label52">
- <property name="visible">True</property>
- <property name="label" translatable="yes">&lt;b&gt;Certificate Fields&lt;/b&gt;</property>
- <property name="use_underline">False</property>
- <property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="type">label_item</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkFrame" id="frame6">
- <property name="visible">True</property>
- <property name="label_xalign">0</property>
- <property name="label_yalign">0.5</property>
- <property name="shadow_type">GTK_SHADOW_NONE</property>
-
- <child>
- <widget class="GtkScrolledWindow" id="scrolledwindow3">
- <property name="border_width">6</property>
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
- <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
-
- <child>
- <widget class="GtkTextView" id="cert-field-value-textview">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="editable">False</property>
- <property name="justification">GTK_JUSTIFY_LEFT</property>
- <property name="wrap_mode">GTK_WRAP_NONE</property>
- <property name="cursor_visible">False</property>
- <property name="pixels_above_lines">0</property>
- <property name="pixels_below_lines">0</property>
- <property name="pixels_inside_wrap">0</property>
- <property name="left_margin">0</property>
- <property name="right_margin">0</property>
- <property name="indent">0</property>
- <property name="text" translatable="yes"></property>
- </widget>
- </child>
- </widget>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label53">
- <property name="visible">True</property>
- <property name="label" translatable="yes">&lt;b&gt;Field Value&lt;/b&gt;</property>
- <property name="use_underline">False</property>
- <property name="use_markup">True</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="type">label_item</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="tab_expand">False</property>
- <property name="tab_fill">True</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label2">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Details</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="type">tab</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
- </packing>
- </child>
- </widget>
- </child>
-</widget>
-
-<widget class="GtkWindow" id="cert-manager-config-control">
- <property name="title" translatable="yes">window1</property>
- <property name="type">GTK_WINDOW_TOPLEVEL</property>
- <property name="window_position">GTK_WIN_POS_NONE</property>
- <property name="modal">False</property>
- <property name="resizable">True</property>
- <property name="destroy_with_parent">False</property>
-
- <child>
- <widget class="GtkNotebook" id="cert-manager-notebook">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="show_tabs">True</property>
- <property name="show_border">True</property>
- <property name="tab_pos">GTK_POS_TOP</property>
- <property name="scrollable">False</property>
- <property name="enable_popup">False</property>
-
- <child>
- <widget class="GtkVBox" id="vbox4">
- <property name="border_width">6</property>
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">6</property>
-
- <child>
- <widget class="GtkLabel" id="label57">
- <property name="visible">True</property>
- <property name="label" translatable="yes">You have certificates from these organizations that identify you:</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkScrolledWindow" id="scrolledwindow4">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="shadow_type">GTK_SHADOW_IN</property>
- <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
-
- <child>
- <widget class="GtkTreeView" id="yourcerts-treeview">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="headers_visible">True</property>
- <property name="rules_hint">False</property>
- <property name="reorderable">False</property>
- <property name="enable_search">True</property>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkHButtonBox" id="hbuttonbox1">
- <property name="visible">True</property>
- <property name="layout_style">GTK_BUTTONBOX_DEFAULT_STYLE</property>
- <property name="spacing">6</property>
-
- <child>
- <widget class="GtkButton" id="your-view-button">
- <property name="visible">True</property>
- <property name="sensitive">False</property>
- <property name="can_default">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">View</property>
- <property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- </widget>
- </child>
-
- <child>
- <widget class="GtkButton" id="your-backup-button">
- <property name="visible">True</property>
- <property name="sensitive">False</property>
- <property name="can_default">True</property>
- <property name="can_focus">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
-
- <child>
- <widget class="GtkAlignment" id="alignment2">
- <property name="visible">True</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xscale">0</property>
- <property name="yscale">0</property>
-
- <child>
- <widget class="GtkHBox" id="hbox2">
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">2</property>
-
- <child>
- <widget class="GtkImage" id="image2">
- <property name="visible">True</property>
- <property name="stock">gtk-save</property>
- <property name="icon_size">4</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label59">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Backup</property>
- <property name="use_underline">True</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- </child>
- </widget>
- </child>
-
- <child>
- <widget class="GtkButton" id="your-backup-all-button">
- <property name="visible">True</property>
- <property name="can_default">True</property>
- <property name="can_focus">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
-
- <child>
- <widget class="GtkAlignment" id="alignment1">
- <property name="visible">True</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xscale">0</property>
- <property name="yscale">0</property>
-
- <child>
- <widget class="GtkHBox" id="hbox1">
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">2</property>
-
- <child>
- <widget class="GtkImage" id="image1">
- <property name="visible">True</property>
- <property name="stock">gtk-save</property>
- <property name="icon_size">4</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label58">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Backup All</property>
- <property name="use_underline">True</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- </child>
- </widget>
- </child>
-
- <child>
- <widget class="GtkButton" id="your-import-button">
- <property name="visible">True</property>
- <property name="can_default">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">Import</property>
- <property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- </widget>
- </child>
-
- <child>
- <widget class="GtkButton" id="your-delete-button">
- <property name="visible">True</property>
- <property name="sensitive">False</property>
- <property name="can_default">True</property>
- <property name="can_focus">True</property>
- <property name="label">gtk-delete</property>
- <property name="use_stock">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="tab_expand">False</property>
- <property name="tab_fill">True</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label54">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Your Certificates</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="type">tab</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkVBox" id="vbox5">
- <property name="border_width">6</property>
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">6</property>
-
- <child>
- <widget class="GtkLabel" id="label60">
- <property name="visible">True</property>
- <property name="label" translatable="yes">You have certificates on file that identify these people:</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkScrolledWindow" id="scrolledwindow5">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="shadow_type">GTK_SHADOW_IN</property>
- <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
-
- <child>
- <widget class="GtkTreeView" id="contactcerts-treeview">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="headers_visible">True</property>
- <property name="rules_hint">False</property>
- <property name="reorderable">False</property>
- <property name="enable_search">True</property>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkHButtonBox" id="hbuttonbox2">
- <property name="visible">True</property>
- <property name="layout_style">GTK_BUTTONBOX_DEFAULT_STYLE</property>
- <property name="spacing">0</property>
-
- <child>
- <widget class="GtkButton" id="contact-view-button">
- <property name="visible">True</property>
- <property name="sensitive">False</property>
- <property name="can_default">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">View</property>
- <property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- </widget>
- </child>
-
- <child>
- <widget class="GtkButton" id="contact-edit-button">
- <property name="visible">True</property>
- <property name="sensitive">False</property>
- <property name="can_default">True</property>
- <property name="can_focus">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
-
- <child>
- <widget class="GtkAlignment" id="alignment3">
- <property name="visible">True</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xscale">0</property>
- <property name="yscale">0</property>
-
- <child>
- <widget class="GtkHBox" id="hbox3">
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">2</property>
-
- <child>
- <widget class="GtkImage" id="image3">
- <property name="visible">True</property>
- <property name="stock">gtk-properties</property>
- <property name="icon_size">4</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label61">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Edit</property>
- <property name="use_underline">True</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- </child>
- </widget>
- </child>
-
- <child>
- <widget class="GtkButton" id="contact-import-button">
- <property name="visible">True</property>
- <property name="can_default">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">Import</property>
- <property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- </widget>
- </child>
-
- <child>
- <widget class="GtkButton" id="contact-delete-button">
- <property name="visible">True</property>
- <property name="sensitive">False</property>
- <property name="can_default">True</property>
- <property name="can_focus">True</property>
- <property name="label">gtk-delete</property>
- <property name="use_stock">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="tab_expand">False</property>
- <property name="tab_fill">True</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label55">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Contact Certificates</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="type">tab</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkVBox" id="vbox6">
- <property name="border_width">6</property>
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">6</property>
-
- <child>
- <widget class="GtkLabel" id="label62">
- <property name="visible">True</property>
- <property name="label" translatable="yes">You have certificates on file that identify these certificate authorities:</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkScrolledWindow" id="scrolledwindow6">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="shadow_type">GTK_SHADOW_IN</property>
- <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
-
- <child>
- <widget class="GtkTreeView" id="authoritycerts-treeview">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="headers_visible">True</property>
- <property name="rules_hint">False</property>
- <property name="reorderable">False</property>
- <property name="enable_search">True</property>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkHButtonBox" id="hbuttonbox3">
- <property name="visible">True</property>
- <property name="layout_style">GTK_BUTTONBOX_DEFAULT_STYLE</property>
- <property name="spacing">0</property>
-
- <child>
- <widget class="GtkButton" id="authority-view-button">
- <property name="visible">True</property>
- <property name="sensitive">False</property>
- <property name="can_default">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">View</property>
- <property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- </widget>
- </child>
-
- <child>
- <widget class="GtkButton" id="authority-edit-button">
- <property name="visible">True</property>
- <property name="sensitive">False</property>
- <property name="can_default">True</property>
- <property name="can_focus">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
-
- <child>
- <widget class="GtkAlignment" id="alignment4">
- <property name="visible">True</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xscale">0</property>
- <property name="yscale">0</property>
-
- <child>
- <widget class="GtkHBox" id="hbox4">
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">2</property>
-
- <child>
- <widget class="GtkImage" id="image4">
- <property name="visible">True</property>
- <property name="stock">gtk-properties</property>
- <property name="icon_size">4</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label63">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Edit</property>
- <property name="use_underline">True</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- </child>
- </widget>
- </child>
-
- <child>
- <widget class="GtkButton" id="authority-import-button">
- <property name="visible">True</property>
- <property name="can_default">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">Import</property>
- <property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- </widget>
- </child>
-
- <child>
- <widget class="GtkButton" id="authority-delete-button">
- <property name="visible">True</property>
- <property name="sensitive">False</property>
- <property name="can_default">True</property>
- <property name="can_focus">True</property>
- <property name="label">gtk-delete</property>
- <property name="use_stock">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="tab_expand">False</property>
- <property name="tab_fill">True</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label56">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Authorities</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="type">tab</property>
- </packing>
- </child>
- </widget>
- </child>
-</widget>
-
-<widget class="GtkDialog" id="ca-trust-dialog">
- <property name="title" translatable="yes">Certificate Authority Trust</property>
- <property name="type">GTK_WINDOW_TOPLEVEL</property>
- <property name="window_position">GTK_WIN_POS_NONE</property>
- <property name="modal">False</property>
- <property name="resizable">True</property>
- <property name="destroy_with_parent">False</property>
- <property name="has_separator">True</property>
-
- <child internal-child="vbox">
- <widget class="GtkVBox" id="dialog-vbox2">
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">0</property>
-
- <child internal-child="action_area">
- <widget class="GtkHButtonBox" id="dialog-action_area2">
- <property name="visible">True</property>
- <property name="layout_style">GTK_BUTTONBOX_END</property>
-
- <child>
- <widget class="GtkButton" id="cancelbutton1">
- <property name="visible">True</property>
- <property name="can_default">True</property>
- <property name="can_focus">True</property>
- <property name="label">gtk-cancel</property>
- <property name="use_stock">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="response_id">-6</property>
- </widget>
- </child>
-
- <child>
- <widget class="GtkButton" id="okbutton1">
- <property name="visible">True</property>
- <property name="can_default">True</property>
- <property name="can_focus">True</property>
- <property name="label">gtk-ok</property>
- <property name="use_stock">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="response_id">-5</property>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="pack_type">GTK_PACK_END</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label64">
- <property name="visible">True</property>
- <property name="label" translatable="yes">You have been asked to trust a new Certificate Authority (CA).</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label65">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Do you want to trust &quot;%s&quot; for the following purposes?</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkVBox" id="vbox7">
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">0</property>
-
- <child>
- <widget class="GtkCheckButton" id="checkbutton1">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">Trust this CA to identify web sites.</property>
- <property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="active">False</property>
- <property name="inconsistent">False</property>
- <property name="draw_indicator">True</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkCheckButton" id="checkbutton2">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">Trust this CA to identify email users.</property>
- <property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="active">False</property>
- <property name="inconsistent">False</property>
- <property name="draw_indicator">True</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkCheckButton" id="checkbutton3">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">Trust this CA to identify software developers.</property>
- <property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- <property name="active">False</property>
- <property name="inconsistent">False</property>
- <property name="draw_indicator">True</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label66">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Before trusting this CA for any purpose, you should examine its certificate and its policy and procedures (if available).</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">True</property>
- <property name="selectable">False</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkAlignment" id="alignment5">
- <property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="yalign">0.5</property>
- <property name="xscale">0</property>
- <property name="yscale">1</property>
-
- <child>
- <widget class="GtkButton" id="button1">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="label" translatable="yes">View Certificate</property>
- <property name="use_underline">True</property>
- <property name="relief">GTK_RELIEF_NORMAL</property>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
- </widget>
- </child>
-</widget>
-
-<widget class="GtkWindow" id="cert_selector">
- <property name="title" translatable="yes">Dummy window only</property>
- <property name="type">GTK_WINDOW_TOPLEVEL</property>
- <property name="window_position">GTK_WIN_POS_NONE</property>
- <property name="modal">False</property>
- <property name="resizable">True</property>
- <property name="destroy_with_parent">False</property>
-
- <child>
- <widget class="GtkVBox" id="cert_selector_vbox">
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">0</property>
-
- <child>
- <widget class="GtkHBox" id="hbox5">
- <property name="border_width">6</property>
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="spacing">6</property>
-
- <child>
- <widget class="GtkLabel" id="label67">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Certificate</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkOptionMenu" id="cert_menu">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="history">-1</property>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">False</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">False</property>
- <property name="fill">True</property>
- </packing>
- </child>
-
- <child>
- <widget class="GtkFrame" id="frame7">
- <property name="visible">True</property>
- <property name="label_xalign">0</property>
- <property name="label_yalign">0.5</property>
- <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
-
- <child>
- <widget class="GtkScrolledWindow" id="scrolledwindow7">
- <property name="border_width">6</property>
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
- <property name="shadow_type">GTK_SHADOW_IN</property>
- <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
-
- <child>
- <widget class="GtkTextView" id="cert_description">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="editable">True</property>
- <property name="justification">GTK_JUSTIFY_LEFT</property>
- <property name="wrap_mode">GTK_WRAP_NONE</property>
- <property name="cursor_visible">True</property>
- <property name="pixels_above_lines">0</property>
- <property name="pixels_below_lines">0</property>
- <property name="pixels_inside_wrap">0</property>
- <property name="left_margin">0</property>
- <property name="right_margin">0</property>
- <property name="indent">0</property>
- <property name="text" translatable="yes"></property>
- </widget>
- </child>
- </widget>
- </child>
-
- <child>
- <widget class="GtkLabel" id="label68">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Certificate details</property>
- <property name="use_underline">False</property>
- <property name="use_markup">False</property>
- <property name="justify">GTK_JUSTIFY_LEFT</property>
- <property name="wrap">False</property>
- <property name="selectable">False</property>
- <property name="xalign">0.5</property>
- <property name="yalign">0.5</property>
- <property name="xpad">0</property>
- <property name="ypad">0</property>
- </widget>
- <packing>
- <property name="type">label_item</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="padding">0</property>
- <property name="expand">True</property>
- <property name="fill">True</property>
- </packing>
- </child>
- </widget>
- </child>
-</widget>
-
-</glade-interface>