diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2009-09-25 06:04:36 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2009-11-17 08:33:32 +0800 |
commit | 054c0881696a85f537e93b4950a28f505a3dc0f7 (patch) | |
tree | e63cfece426e2de5898c926eb6737cff229bb38b /plugins/email-custom-header | |
parent | 6348266ee635db59a12d75497f980dd85d0fcf58 (diff) | |
download | gsoc2013-evolution-054c0881696a85f537e93b4950a28f505a3dc0f7.tar.gz gsoc2013-evolution-054c0881696a85f537e93b4950a28f505a3dc0f7.tar.zst gsoc2013-evolution-054c0881696a85f537e93b4950a28f505a3dc0f7.zip |
BugĀ 589153 - Use GtkBuilder instead of libglade
Diffstat (limited to 'plugins/email-custom-header')
-rw-r--r-- | plugins/email-custom-header/Makefile.am | 11 | ||||
-rw-r--r-- | plugins/email-custom-header/email-custom-header.c | 110 | ||||
-rw-r--r-- | plugins/email-custom-header/email-custom-header.glade | 176 | ||||
-rw-r--r-- | plugins/email-custom-header/org-gnome-email-custom-header.glade | 104 | ||||
-rw-r--r-- | plugins/email-custom-header/org-gnome-email-custom-header.ui | 96 |
5 files changed, 178 insertions, 319 deletions
diff --git a/plugins/email-custom-header/Makefile.am b/plugins/email-custom-header/Makefile.am index d38ac68230..3f67f845ed 100644 --- a/plugins/email-custom-header/Makefile.am +++ b/plugins/email-custom-header/Makefile.am @@ -14,8 +14,8 @@ liborg_gnome_email_custom_header_la_CPPFLAGS = \ -I$(top_builddir)/composer \ $(GNOME_PLATFORM_CFLAGS) \ $(EVOLUTION_MAIL_CFLAGS) \ - -DEVOLUTION_GLADEDIR=\""$(gladedir)"\" \ - -DCONNECTOR_GLADEDIR=\""$(gladedir)"\" + -DEVOLUTION_UIDIR=\""$(uidir)"\" \ + -DCONNECTOR_UIDIR=\""$(uidir)"\" liborg_gnome_email_custom_header_la_SOURCES = \ email-custom-header.c \ @@ -57,14 +57,13 @@ install-data-local: fi endif -glade_DATA = \ - org-gnome-email-custom-header.glade \ - email-custom-header.glade +ui_DATA = \ + org-gnome-email-custom-header.ui EXTRA_DIST = \ org-gnome-email-custom-header.eplug.xml \ $(schema_in_files) \ - $(glade_DATA) + $(ui_DATA) BUILT_SOURCES = \ org-gnome-email-custom-header.eplug \ diff --git a/plugins/email-custom-header/email-custom-header.c b/plugins/email-custom-header/email-custom-header.c index dad324aa02..d30a40afa6 100644 --- a/plugins/email-custom-header/email-custom-header.c +++ b/plugins/email-custom-header/email-custom-header.c @@ -28,7 +28,6 @@ #include <glib/gi18n.h> #include <gconf/gconf-client.h> #include <e-util/e-error.h> -#include <glade/glade.h> #include "mail/em-utils.h" #include "mail/em-event.h" #include "composer/e-msg-composer.h" @@ -41,7 +40,6 @@ #define GCONF_KEY_CUSTOM_HEADER "/apps/evolution/eplugin/email_custom_header/customHeader" typedef struct { - GladeXML *xml; GConfClient *gconf; GtkWidget *treeview; GtkWidget *header_add; @@ -57,8 +55,7 @@ enum { }; struct _EmailCustomHeaderOptionsDialogPrivate { - /* Glade XML data */ - GladeXML *xml; + GtkBuilder *builder; /*Widgets*/ GtkWidget *main; GtkWidget *page; @@ -119,7 +116,7 @@ epech_get_widgets (CustomHeaderOptionsDialog *mch) EmailCustomHeaderOptionsDialogPrivate *priv; priv = mch->priv; -#define EMAIL_CUSTOM_HEADER(name) glade_xml_get_widget (priv->xml, name) +#define EMAIL_CUSTOM_HEADER(name) e_builder_get_widget (priv->builder, name) priv->main = EMAIL_CUSTOM_HEADER ("email-custom-header-dialog"); if (!priv->main) @@ -207,7 +204,7 @@ epech_header_options_cb (GtkDialog *dialog, gint state, gpointer func_data) case GTK_RESPONSE_CANCEL: gtk_widget_hide (priv->main); gtk_widget_destroy (priv->main); - g_object_unref (priv->xml); + g_object_unref (priv->builder); break; case GTK_RESPONSE_HELP: e_display_help ( @@ -224,24 +221,17 @@ epech_dialog_run (CustomHeaderOptionsDialog *mch, GtkWidget *parent) { EmailCustomHeaderOptionsDialogPrivate *priv; GtkWidget *toplevel; - gchar *filename; g_return_val_if_fail (mch != NULL || EMAIL_CUSTOM_HEADER_OPTIONS_IS_DIALOG (mch), FALSE); priv = mch->priv; epech_get_header_list (mch); - filename = g_build_filename (EVOLUTION_GLADEDIR, - "org-gnome-email-custom-header.glade", - NULL); - priv->xml = glade_xml_new (filename, NULL, NULL); - g_free (filename); - - if (!priv->xml) { - d (printf ("\n Could not load the Glade XML file\n")); - } + priv->builder = gtk_builder_new (); + e_load_ui_builder_definition ( + priv->builder, "org-gnome-email-custom-header.ui"); if (!epech_get_widgets(mch)) { - g_object_unref (priv->xml); + g_object_unref (priv->builder); d (printf ("\n Could not get the Widgets\n")); } @@ -424,7 +414,7 @@ epech_dialog_init (GObject *object) mch = EMAIL_CUSTOM_HEADEROPTIONS_DIALOG (object); priv = g_new0 (EmailCustomHeaderOptionsDialogPrivate, 1); mch->priv = priv; - priv->xml = NULL; + priv->builder = NULL; priv->main = NULL; priv->page = NULL; priv->header_table = NULL; @@ -861,7 +851,6 @@ destroy_cd_data (gpointer data) if (!cd) return; - g_object_unref (cd->xml); g_object_unref (cd->gconf); g_free (cd); } @@ -880,22 +869,77 @@ e_plugin_lib_get_configure_widget (EPlugin *epl) gchar *buffer; GtkTreeViewColumn *col; gint col_pos; - GConfClient *client = gconf_client_get_default(); - ConfigData *cd = g_new0 (ConfigData, 1); - gchar *gladefile; - - gladefile = g_build_filename (EVOLUTION_GLADEDIR, - "email-custom-header.glade", - NULL); - cd->xml = glade_xml_new (gladefile, "ech_configuration_box", NULL); - g_free (gladefile); + GtkWidget *ech_configuration_box; + GtkWidget *vbox2; + GtkWidget *label1; + GtkWidget *header_configuration_box; + GtkWidget *header_container; + GtkWidget *scrolledwindow1; + GtkWidget *header_treeview; + GtkWidget *vbuttonbox1; + GtkWidget *header_add; + GtkWidget *header_edit; + GtkWidget *header_remove; + + ech_configuration_box = gtk_vbox_new (FALSE, 0); + gtk_widget_show (ech_configuration_box); + + vbox2 = gtk_vbox_new (FALSE, 0); + gtk_widget_show (vbox2); + gtk_box_pack_start (GTK_BOX (ech_configuration_box), vbox2, FALSE, FALSE, 0); + + /* To translators: This string is used while adding a new message header to configuration, to specifying the format of the key values */ + label1 = gtk_label_new (_("The format for specifying a Custom Header key value is:\nName of the Custom Header key values separated by \";\".")); + gtk_widget_show (label1); + gtk_box_pack_start (GTK_BOX (vbox2), label1, FALSE, TRUE, 0); + gtk_label_set_justify (GTK_LABEL (label1), GTK_JUSTIFY_CENTER); + gtk_label_set_line_wrap (GTK_LABEL (label1), TRUE); + + header_configuration_box = gtk_vbox_new (FALSE, 5); + gtk_widget_show (header_configuration_box); + gtk_box_pack_start (GTK_BOX (ech_configuration_box), header_configuration_box, TRUE, TRUE, 0); + + header_container = gtk_hbox_new (FALSE, 6); + gtk_widget_show (header_container); + gtk_box_pack_start (GTK_BOX (header_configuration_box), header_container, TRUE, TRUE, 0); + + scrolledwindow1 = gtk_scrolled_window_new (NULL, NULL); + gtk_widget_show (scrolledwindow1); + gtk_box_pack_start (GTK_BOX (header_container), scrolledwindow1, TRUE, TRUE, 0); + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow1), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); + + header_treeview = gtk_tree_view_new (); + gtk_widget_show (header_treeview); + gtk_container_add (GTK_CONTAINER (scrolledwindow1), header_treeview); + gtk_container_set_border_width (GTK_CONTAINER (header_treeview), 1); + + vbuttonbox1 = gtk_vbutton_box_new (); + gtk_widget_show (vbuttonbox1); + gtk_box_pack_start (GTK_BOX (header_container), vbuttonbox1, FALSE, TRUE, 0); + gtk_button_box_set_layout (GTK_BUTTON_BOX (vbuttonbox1), GTK_BUTTONBOX_START); + gtk_box_set_spacing (GTK_BOX (vbuttonbox1), 6); + + header_add = gtk_button_new_from_stock ("gtk-add"); + gtk_widget_show (header_add); + gtk_container_add (GTK_CONTAINER (vbuttonbox1), header_add); + GTK_WIDGET_SET_FLAGS (header_add, GTK_CAN_DEFAULT); + + header_edit = gtk_button_new_from_stock ("gtk-edit"); + gtk_widget_show (header_edit); + gtk_container_add (GTK_CONTAINER (vbuttonbox1), header_edit); + GTK_WIDGET_SET_FLAGS (header_edit, GTK_CAN_DEFAULT); + + header_remove = gtk_button_new_from_stock ("gtk-remove"); + gtk_widget_show (header_remove); + gtk_container_add (GTK_CONTAINER (vbuttonbox1), header_remove); + GTK_WIDGET_SET_FLAGS (header_remove, GTK_CAN_DEFAULT); cd->gconf = gconf_client_get_default (); - cd->treeview = glade_xml_get_widget (cd->xml, "header_treeview"); + cd->treeview = header_treeview; cd->store = gtk_list_store_new (HEADER_N_COLUMNS, G_TYPE_STRING, G_TYPE_STRING); @@ -927,14 +971,14 @@ e_plugin_lib_get_configure_widget (EPlugin *epl) g_signal_connect (G_OBJECT (selection), "changed", G_CALLBACK (selection_changed), cd); gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (cd->treeview), TRUE); - cd->header_add = glade_xml_get_widget (cd->xml, "header_add"); + cd->header_add = header_add; g_signal_connect (G_OBJECT (cd->header_add), "clicked", G_CALLBACK (header_add_clicked), cd); - cd->header_remove = glade_xml_get_widget (cd->xml, "header_remove"); + cd->header_remove = header_remove; g_signal_connect (G_OBJECT (cd->header_remove), "clicked", G_CALLBACK (header_remove_clicked), cd); gtk_widget_set_sensitive (cd->header_remove, FALSE); - cd->header_edit = glade_xml_get_widget (cd->xml, "header_edit"); + cd->header_edit = header_edit; g_signal_connect (G_OBJECT (cd->header_edit), "clicked", G_CALLBACK (header_edit_clicked), cd); gtk_widget_set_sensitive (cd->header_edit, FALSE); @@ -968,7 +1012,7 @@ e_plugin_lib_get_configure_widget (EPlugin *epl) hbox = gtk_vbox_new (FALSE, 0); - gtk_box_pack_start (GTK_BOX (hbox), glade_xml_get_widget (cd->xml, "ech_configuration_box"), TRUE, TRUE, 0); + gtk_box_pack_start (GTK_BOX (hbox), ech_configuration_box, TRUE, TRUE, 0); /* to let free data properly on destroy of configuration widget */ g_object_set_data_full (G_OBJECT (hbox), "mycd-data", cd, destroy_cd_data); diff --git a/plugins/email-custom-header/email-custom-header.glade b/plugins/email-custom-header/email-custom-header.glade deleted file mode 100644 index 14a618f977..0000000000 --- a/plugins/email-custom-header/email-custom-header.glade +++ /dev/null @@ -1,176 +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="GtkWindow" id="window1"> - <property name="visible">True</property> - <property name="title" translatable="no">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> - <property name="decorated">True</property> - <property name="skip_taskbar_hint">False</property> - <property name="skip_pager_hint">False</property> - <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property> - <property name="gravity">GDK_GRAVITY_NORTH_WEST</property> - <property name="focus_on_map">True</property> - <property name="urgency_hint">False</property> - - <child> - <widget class="GtkVBox" id="ech_configuration_box"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">0</property> - - <child> - <widget class="GtkVBox" id="vbox2"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">0</property> - - <child> - <widget class="GtkLabel" id="label1"> - <property name="visible">True</property> - <property name="label" translatable="yes" comments="To translators: This string is used while adding a new message header to configuration, to specifying the format of the key values">The format for specifying a Custom Header key value is: -Name of the Custom Header key values separated by ";".</property> - <property name="use_underline">False</property> - <property name="use_markup">False</property> - <property name="justify">GTK_JUSTIFY_CENTER</property> - <property name="wrap">True</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> - <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> - <property name="width_chars">-1</property> - <property name="single_line_mode">False</property> - <property name="angle">0</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">True</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="GtkVBox" id="header_configuration_box"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">5</property> - - <child> - <widget class="GtkHBox" id="header_container"> - <property name="visible">True</property> - <property name="homogeneous">False</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkScrolledWindow" id="scrolledwindow1"> - <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_NONE</property> - <property name="window_placement">GTK_CORNER_TOP_LEFT</property> - - <child> - <widget class="GtkTreeView" id="header_treeview"> - <property name="border_width">1</property> - <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> - <property name="fixed_height_mode">False</property> - <property name="hover_selection">False</property> - <property name="hover_expand">False</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="GtkVButtonBox" id="vbuttonbox1"> - <property name="visible">True</property> - <property name="layout_style">GTK_BUTTONBOX_START</property> - <property name="spacing">6</property> - - <child> - <widget class="GtkButton" id="header_add"> - <property name="visible">True</property> - <property name="can_default">True</property> - <property name="can_focus">True</property> - <property name="label">gtk-add</property> - <property name="use_stock">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - </widget> - </child> - - <child> - <widget class="GtkButton" id="header_edit"> - <property name="visible">True</property> - <property name="can_default">True</property> - <property name="can_focus">True</property> - <property name="label">gtk-edit</property> - <property name="use_stock">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - </widget> - </child> - - <child> - <widget class="GtkButton" id="header_remove"> - <property name="visible">True</property> - <property name="can_default">True</property> - <property name="can_focus">True</property> - <property name="label">gtk-remove</property> - <property name="use_stock">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</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="padding">0</property> - <property name="expand">True</property> - <property name="fill">True</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> diff --git a/plugins/email-custom-header/org-gnome-email-custom-header.glade b/plugins/email-custom-header/org-gnome-email-custom-header.glade deleted file mode 100644 index 142f0b7408..0000000000 --- a/plugins/email-custom-header/org-gnome-email-custom-header.glade +++ /dev/null @@ -1,104 +0,0 @@ -<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*--> -<!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd"> - -<glade-interface> -<requires lib="gnome"/> - -<widget class="GtkDialog" id="email-custom-header-dialog"> - <property name="visible">True</property> - <property name="can_default">True</property> - <property name="title" translatable="yes">Email Custom Header</property> - <property name="type">GTK_WINDOW_TOPLEVEL</property> - <property name="window_position">GTK_WIN_POS_MOUSE</property> - <property name="modal">False</property> - <property name="resizable">False</property> - <property name="destroy_with_parent">False</property> - <property name="decorated">True</property> - <property name="skip_taskbar_hint">False</property> - <property name="skip_pager_hint">False</property> - <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property> - <property name="gravity">GDK_GRAVITY_NORTH_WEST</property> - <property name="focus_on_map">True</property> - <property name="urgency_hint">False</property> - <property name="has_separator">True</property> - - <child internal-child="vbox"> - <widget class="GtkVBox" id="email-custom-header-vbox"> - <property name="visible">True</property> - <property name="can_default">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="helpbutton1"> - <property name="visible">True</property> - <property name="can_default">True</property> - <property name="can_focus">True</property> - <property name="label">gtk-help</property> - <property name="use_stock">True</property> - <property name="relief">GTK_RELIEF_NORMAL</property> - <property name="focus_on_click">True</property> - <property name="response_id">-11</property> - </widget> - </child> - - <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="focus_on_click">True</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="focus_on_click">True</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="GtkTable" id="email-custom-header-options"> - <property name="border_width">12</property> - <property name="visible">True</property> - <property name="n_rows">4</property> - <property name="n_columns">4</property> - <property name="homogeneous">False</property> - <property name="row_spacing">12</property> - <property name="column_spacing">12</property> - </widget> - <packing> - <property name="padding">0</property> - <property name="expand">False</property> - <property name="fill">False</property> - </packing> - </child> - </widget> - </child> -</widget> - -</glade-interface> diff --git a/plugins/email-custom-header/org-gnome-email-custom-header.ui b/plugins/email-custom-header/org-gnome-email-custom-header.ui new file mode 100644 index 0000000000..e1d347df8c --- /dev/null +++ b/plugins/email-custom-header/org-gnome-email-custom-header.ui @@ -0,0 +1,96 @@ +<?xml version="1.0"?> +<!--*- mode: xml -*--> +<interface> + <object class="GtkDialog" id="email-custom-header-dialog"> + <property name="visible">True</property> + <property name="can_default">True</property> + <property name="title" translatable="yes">Email Custom Header</property> + <property name="type">GTK_WINDOW_TOPLEVEL</property> + <property name="window_position">GTK_WIN_POS_MOUSE</property> + <property name="modal">False</property> + <property name="resizable">False</property> + <property name="destroy_with_parent">False</property> + <property name="decorated">True</property> + <property name="skip_taskbar_hint">False</property> + <property name="skip_pager_hint">False</property> + <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property> + <property name="gravity">GDK_GRAVITY_NORTH_WEST</property> + <property name="focus_on_map">True</property> + <property name="urgency_hint">False</property> + <property name="has_separator">True</property> + <child internal-child="vbox"> + <object class="GtkVBox" id="email-custom-header-vbox"> + <property name="visible">True</property> + <property name="can_default">True</property> + <property name="homogeneous">False</property> + <property name="spacing">0</property> + <child internal-child="action_area"> + <object class="GtkHButtonBox" id="dialog-action_area1"> + <property name="visible">True</property> + <property name="layout_style">GTK_BUTTONBOX_END</property> + <child> + <object class="GtkButton" id="helpbutton1"> + <property name="visible">True</property> + <property name="can_default">True</property> + <property name="can_focus">True</property> + <property name="label">gtk-help</property> + <property name="use_stock">True</property> + <property name="relief">GTK_RELIEF_NORMAL</property> + <property name="focus_on_click">True</property> + </object> + </child> + <child> + <object 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="focus_on_click">True</property> + </object> + </child> + <child> + <object 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="focus_on_click">True</property> + </object> + </child> + </object> + <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> + <object class="GtkTable" id="email-custom-header-options"> + <property name="border_width">12</property> + <property name="visible">True</property> + <property name="n_rows">4</property> + <property name="n_columns">4</property> + <property name="homogeneous">False</property> + <property name="row_spacing">12</property> + <property name="column_spacing">12</property> + </object> + <packing> + <property name="padding">0</property> + <property name="expand">False</property> + <property name="fill">False</property> + </packing> + </child> + </object> + </child> + <action-widgets> + <action-widget response="-11">helpbutton1</action-widget> + <action-widget response="-6">cancelbutton1</action-widget> + <action-widget response="-5">okbutton1</action-widget> + </action-widgets> + </object> +</interface> |