[evolution/gtk-builder] Deal with custom widgets in filter.ui.



commit ee890121a8cf3921eb2807f2601e256daa58537d
Author: Matthew Barnes <mbarnes redhat com>
Date:   Sat Oct 31 01:44:02 2009 -0400

    Deal with custom widgets in filter.ui.

 filter/e-rule-editor.c |  122 +++-----
 filter/filter.ui       |  881 +++++++++++++++++++++---------------------------
 2 files changed, 425 insertions(+), 578 deletions(-)
---
diff --git a/filter/e-rule-editor.c b/filter/e-rule-editor.c
index 4e64d7f..119c27a 100644
--- a/filter/e-rule-editor.c
+++ b/filter/e-rule-editor.c
@@ -763,7 +763,7 @@ double_click (GtkTreeView *treeview, GtkTreePath *path, GtkTreeViewColumn *colum
 
 static void
 rule_able_toggled (GtkCellRendererToggle *renderer,
-                   gchar *arg1,
+                   gchar *path_string,
                    gpointer user_data)
 {
 	GtkWidget *table = user_data;
@@ -772,7 +772,7 @@ rule_able_toggled (GtkCellRendererToggle *renderer,
 	GtkTreePath *path;
 	GtkTreeIter iter;
 
-	path = gtk_tree_path_new_from_string (arg1);
+	path = gtk_tree_path_new_from_string (path_string);
 	model = gtk_tree_view_get_model (GTK_TREE_VIEW (table));
 	selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (table));
 
@@ -790,67 +790,6 @@ rule_able_toggled (GtkCellRendererToggle *renderer,
 	gtk_tree_path_free (path);
 }
 
-GtkWidget *
-rule_editor_treeview_new (gchar *widget_name,
-                          gchar *string1,
-                          gchar *string2,
-                          gint int1,
-                          gint int2);
-
-GtkWidget *
-rule_editor_treeview_new (gchar *widget_name,
-                          gchar *string1,
-                          gchar *string2,
-                          gint int1,
-                          gint int2)
-{
-	GtkWidget *table, *scrolled;
-	GtkTreeSelection *selection;
-	GtkCellRenderer *renderer;
-	GtkListStore *model;
-	GtkTreeViewColumn *column;
-
-	scrolled = gtk_scrolled_window_new (NULL, NULL);
-	gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolled), GTK_SHADOW_IN);
-	gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled),
-					GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
-
-	model = gtk_list_store_new (3, G_TYPE_STRING, G_TYPE_POINTER, G_TYPE_BOOLEAN);
-	table = gtk_tree_view_new_with_model ((GtkTreeModel *) model);
-	gtk_tree_view_set_headers_visible ((GtkTreeView *) table, FALSE);
-
-	renderer = gtk_cell_renderer_toggle_new ();
-	g_object_set (G_OBJECT (renderer), "activatable", TRUE, NULL);
-	gtk_tree_view_insert_column_with_attributes ((GtkTreeView *) table, -1,
-						     _("Enabled"), renderer,
-						     "active", 2, NULL);
-	g_signal_connect (renderer, "toggled", G_CALLBACK (rule_able_toggled), table);
-
-	/* hide enable column by default */
-	column = gtk_tree_view_get_column (GTK_TREE_VIEW (table), 0);
-	gtk_tree_view_column_set_visible (column, FALSE);
-
-	renderer = gtk_cell_renderer_text_new ();
-	gtk_tree_view_insert_column_with_attributes ((GtkTreeView *) table, -1,
-						     _("Rule name"), renderer,
-						     "text", 0, NULL);
-
-	selection = gtk_tree_view_get_selection ((GtkTreeView *) table);
-	gtk_tree_selection_set_mode (selection, GTK_SELECTION_SINGLE);
-
-	gtk_container_add (GTK_CONTAINER (scrolled), table);
-
-	g_object_set_data ((GObject *) scrolled, "table", table);
-	g_object_set_data ((GObject *) scrolled, "model", model);
-
-	gtk_widget_show (scrolled);
-	gtk_widget_show (table);
-
-	g_object_unref (model);
-
-	return scrolled;
-}
-
 void
 e_rule_editor_construct (ERuleEditor *editor,
                          ERuleContext *context,
@@ -858,9 +797,14 @@ e_rule_editor_construct (ERuleEditor *editor,
                          const gchar *source,
                          const gchar *label)
 {
-	GtkWidget *w;
+	GtkWidget *widget;
 	GtkWidget *action_area;
 	GtkWidget *content_area;
+	GtkTreeViewColumn *column;
+	GtkCellRenderer *renderer;
+	GtkTreeSelection *selection;
+	GObject *object;
+	GList *list;
 	gint i;
 	gchar *tmp;
 
@@ -878,28 +822,52 @@ e_rule_editor_construct (ERuleEditor *editor,
 	gtk_widget_realize ((GtkWidget *) editor);
 	gtk_container_set_border_width (GTK_CONTAINER (action_area), 12);
 
-	w = e_builder_get_widget(builder, "rule_editor");
-	gtk_box_pack_start (GTK_BOX (content_area), w, TRUE, TRUE, 3);
+	widget = e_builder_get_widget (builder, "rule_editor");
+	gtk_box_pack_start (GTK_BOX (content_area), widget, TRUE, TRUE, 0);
 
 	for (i = 0; i < BUTTON_LAST; i++) {
-		editor->priv->buttons[i] = (GtkButton *) (w = e_builder_get_widget (builder, edit_buttons[i].name));
-		g_signal_connect (w, "clicked", edit_buttons[i].func, editor);
+		widget = e_builder_get_widget (builder, edit_buttons[i].name);
+		editor->priv->buttons[i] = GTK_BUTTON (widget);
+		g_signal_connect (
+			widget, "clicked",
+			G_CALLBACK (edit_buttons[i].func), editor);
 	}
 
-	w = e_builder_get_widget (builder, "rule_list");
-	editor->list = (GtkTreeView *) g_object_get_data ((GObject *) w, "table");
-	editor->model = (GtkListStore *) g_object_get_data ((GObject *) w, "model");
+	object = gtk_builder_get_object (builder, "rule_tree_view");
+	editor->list = GTK_TREE_VIEW (object);
+
+	column = gtk_tree_view_get_column (GTK_TREE_VIEW (object), 0);
+	list = gtk_cell_layout_get_cells (GTK_CELL_LAYOUT (column));
+	renderer = GTK_CELL_RENDERER (list->data);
+	g_warn_if_fail (GTK_IS_CELL_RENDERER_TOGGLE (renderer));
+
+	g_signal_connect (
+		renderer, "toggled",
+		G_CALLBACK (rule_able_toggled), editor->list);
+
+	selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (object));
+	gtk_tree_selection_set_mode (selection, GTK_SELECTION_SINGLE);
+
+	object = gtk_builder_get_object (builder, "rule_list_store");
+	editor->model = GTK_LIST_STORE (object);
 
-	g_signal_connect (editor->list, "cursor-changed", G_CALLBACK (cursor_changed), editor);
-	g_signal_connect (editor->list, "row-activated", G_CALLBACK (double_click), editor);
+	g_signal_connect (
+		editor->list, "cursor-changed",
+		G_CALLBACK (cursor_changed), editor);
+	g_signal_connect (
+		editor->list, "row-activated",
+		G_CALLBACK (double_click), editor);
 
-	w = e_builder_get_widget (builder, "rule_label");
+	widget = e_builder_get_widget (builder, "rule_label");
 	tmp = alloca(strlen(label)+8);
 	sprintf(tmp, "<b>%s</b>", label);
-	gtk_label_set_label((GtkLabel *)w, tmp);
-	gtk_label_set_mnemonic_widget ((GtkLabel *) w, (GtkWidget *) editor->list);
+	gtk_label_set_label (GTK_LABEL (widget), tmp);
+	gtk_label_set_mnemonic_widget (
+		GTK_LABEL (widget), GTK_WIDGET (editor->list));
 
-	g_signal_connect (editor, "response", G_CALLBACK (editor_response), editor);
+	g_signal_connect (
+		editor, "response",
+		G_CALLBACK (editor_response), editor);
 	rule_editor_set_source (editor, source);
 
 	gtk_dialog_set_has_separator ((GtkDialog *) editor, FALSE);
diff --git a/filter/filter.ui b/filter/filter.ui
index 6403446..d879162 100644
--- a/filter/filter.ui
+++ b/filter/filter.ui
@@ -1,16 +1,16 @@
 <?xml version="1.0"?>
-<!--*- mode: xml -*-->
 <interface>
+  <!-- interface-requires gtk+ 2.12 -->
+  <!-- interface-naming-policy toplevel-contextual -->
   <object class="GtkAdjustment" id="adjustment1">
+    <property name="value">1</property>
     <property name="upper">1000</property>
-    <property name="lower">0</property>
-    <property name="page_increment">10</property>
     <property name="step_increment">1</property>
-    <property name="page_size">0</property>
-    <property name="value">1</property>
+    <property name="page_increment">10</property>
   </object>
   <object class="GtkListStore" id="model1">
     <columns>
+      <!-- column-name gchararray -->
       <column type="gchararray"/>
     </columns>
     <data>
@@ -21,6 +21,7 @@
   </object>
   <object class="GtkListStore" id="model2">
     <columns>
+      <!-- column-name gchararray -->
       <column type="gchararray"/>
     </columns>
     <data>
@@ -37,6 +38,7 @@
   </object>
   <object class="GtkListStore" id="model3">
     <columns>
+      <!-- column-name gchararray -->
       <column type="gchararray"/>
     </columns>
     <data>
@@ -65,6 +67,7 @@
   </object>
   <object class="GtkListStore" id="model4">
     <columns>
+      <!-- column-name gchararray -->
       <column type="gchararray"/>
     </columns>
     <data>
@@ -76,633 +79,509 @@
       </row>
     </data>
   </object>
-  <object class="GtkWindow" id="rule-editor">
+  <object class="GtkListStore" id="rule_list_store">
+    <columns>
+      <!-- column-name column1 -->
+      <column type="gchararray"/>
+      <!-- column-name column2 -->
+      <column type="gpointer"/>
+      <!-- column-name column3 -->
+      <column type="gboolean"/>
+    </columns>
+  </object>
+  <object class="GtkVBox" id="rule_editor">
     <property name="visible">True</property>
-    <property name="title">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>
+    <property name="border_width">12</property>
+    <property name="orientation">vertical</property>
+    <property name="spacing">6</property>
     <child>
-      <object class="GtkVBox" id="rule_editor">
-        <property name="border_width">12</property>
+      <object class="GtkLabel" id="label17">
         <property name="visible">True</property>
-        <property name="homogeneous">False</property>
-        <property name="spacing">6</property>
+        <property name="xalign">0</property>
+        <property name="label" translatable="yes">Show filters for mail:</property>
+      </object>
+      <packing>
+        <property name="expand">False</property>
+        <property name="fill">False</property>
+        <property name="position">0</property>
+      </packing>
+    </child>
+    <child>
+      <object class="GtkComboBox" id="filter_source_combobox">
+        <property name="visible">True</property>
+        <property name="model">model1</property>
         <child>
-          <object class="GtkLabel" id="label17">
-            <property name="visible">True</property>
-            <property name="label" translatable="yes">Show filters for mail:</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>
-            <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>
-          </object>
-          <packing>
-            <property name="padding">0</property>
-            <property name="expand">False</property>
-            <property name="fill">False</property>
-          </packing>
+          <object class="GtkCellRendererText" id="renderer1"/>
+          <attributes>
+            <attribute name="text">0</attribute>
+          </attributes>
         </child>
+      </object>
+      <packing>
+        <property name="expand">False</property>
+        <property name="fill">False</property>
+        <property name="position">1</property>
+      </packing>
+    </child>
+    <child>
+      <object class="GtkVBox" id="rule_frame">
+        <property name="visible">True</property>
+        <property name="orientation">vertical</property>
+        <property name="spacing">6</property>
         <child>
-          <object class="GtkComboBox" id="filter_source_combobox">
+          <object class="GtkLabel" id="rule_label">
             <property name="visible">True</property>
-            <property name="add_tearoffs">False</property>
-            <property name="focus_on_click">True</property>
-            <property name="model">model1</property>
-            <child>
-              <object class="GtkCellRendererText" id="renderer1"/>
-              <attributes>
-                <attribute name="text">0</attribute>
-              </attributes>
-            </child>
+            <property name="xalign">0</property>
+            <property name="label" translatable="yes">&lt;b&gt;_Filter Rules&lt;/b&gt;</property>
+            <property name="use_markup">True</property>
+            <property name="use_underline">True</property>
           </object>
           <packing>
-            <property name="padding">0</property>
             <property name="expand">False</property>
             <property name="fill">False</property>
+            <property name="position">0</property>
           </packing>
         </child>
         <child>
-          <object class="GtkVBox" id="rule_frame">
+          <object class="GtkHBox" id="hbox10">
             <property name="visible">True</property>
-            <property name="homogeneous">False</property>
-            <property name="spacing">6</property>
+            <property name="spacing">12</property>
             <child>
-              <object class="GtkLabel" id="rule_label">
+              <object class="GtkLabel" id="label16">
                 <property name="visible">True</property>
-                <property name="label" translatable="yes">&lt;b&gt;_Filter Rules&lt;/b&gt;</property>
-                <property name="use_underline">True</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">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>
               </object>
               <packing>
-                <property name="padding">0</property>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
+                <property name="position">0</property>
               </packing>
             </child>
             <child>
-              <object class="GtkHBox" id="hbox10">
+              <object class="GtkHBox" id="hbox4">
                 <property name="visible">True</property>
-                <property name="homogeneous">False</property>
-                <property name="spacing">12</property>
+                <property name="spacing">6</property>
                 <child>
-                  <object class="GtkLabel" id="label16">
+                  <object class="GtkScrolledWindow" id="rule_scrolled_window">
                     <property name="visible">True</property>
-                    <property name="label" translatable="yes"/>
-                    <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>
-                    <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>
+                    <property name="can_focus">True</property>
+                    <property name="hscrollbar_policy">automatic</property>
+                    <property name="vscrollbar_policy">automatic</property>
+                    <property name="shadow_type">in</property>
+                    <child>
+                      <object class="GtkTreeView" id="rule_tree_view">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="model">rule_list_store</property>
+                        <property name="headers_visible">False</property>
+                        <child>
+                          <object class="GtkTreeViewColumn" id="column_enabled">
+                            <property name="visible">False</property>
+                            <property name="title">Enabled</property>
+                            <child>
+                              <object class="GtkCellRendererToggle" id="cell_renderer_enabled"/>
+                              <attributes>
+                                <attribute name="active">2</attribute>
+                              </attributes>
+                            </child>
+                          </object>
+                        </child>
+                        <child>
+                          <object class="GtkTreeViewColumn" id="column_rule_name">
+                            <property name="title">Rule Name</property>
+                            <child>
+                              <object class="GtkCellRendererText" id="cell_renderer_rule_name"/>
+                              <attributes>
+                                <attribute name="text">0</attribute>
+                              </attributes>
+                            </child>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
                   </object>
                   <packing>
-                    <property name="padding">0</property>
-                    <property name="expand">False</property>
-                    <property name="fill">False</property>
+                    <property name="position">0</property>
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkHBox" id="hbox4">
+                  <object class="GtkVBox" id="vbox5">
                     <property name="visible">True</property>
-                    <property name="homogeneous">False</property>
                     <property name="spacing">6</property>
                     <child>
-                      <object class="Custom" id="rule_list">
+                      <object class="GtkVButtonBox" id="vbuttonbox4">
                         <property name="visible">True</property>
-                        <property name="creation_function">rule_editor_treeview_new</property>
-                        <property name="int1">0</property>
-                        <property name="int2">0</property>
-                        <property name="last_modification_time">Thu, 12 Dec 2002 23:50:05 GMT</property>
-                      </object>
-                      <packing>
-                        <property name="padding">0</property>
-                        <property name="expand">True</property>
-                        <property name="fill">True</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkVBox" id="vbox5">
-                        <property name="visible">True</property>
-                        <property name="homogeneous">False</property>
+                        <property name="orientation">vertical</property>
                         <property name="spacing">6</property>
                         <child>
-                          <object class="GtkVButtonBox" id="vbuttonbox4">
+                          <object class="GtkButton" id="rule_add">
+                            <property name="label">gtk-add</property>
                             <property name="visible">True</property>
-                            <property name="layout_style">GTK_BUTTONBOX_DEFAULT_STYLE</property>
-                            <property name="spacing">6</property>
-                            <child>
-                              <object class="GtkButton" id="rule_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>
-                              </object>
-                            </child>
-                            <child>
-                              <object class="GtkButton" id="rule_edit">
-                                <property name="visible">True</property>
-                                <property name="can_default">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="label" translatable="yes">_Edit</property>
-                                <property name="use_underline">True</property>
-                                <property name="relief">GTK_RELIEF_NORMAL</property>
-                                <property name="focus_on_click">True</property>
-                              </object>
-                            </child>
-                            <child>
-                              <object class="GtkButton" id="rule_delete">
-                                <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>
-                              </object>
-                            </child>
-                            <child>
-                              <object class="GtkButton" id="rule_top">
-                                <property name="visible">True</property>
-                                <property name="can_default">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="label">gtk-goto-top</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="rule_up">
-                                <property name="visible">True</property>
-                                <property name="can_default">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="label">gtk-go-up</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="rule_down">
-                                <property name="visible">True</property>
-                                <property name="can_default">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="label">gtk-go-down</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="rule_bottom">
-                                <property name="visible">True</property>
-                                <property name="can_default">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="label">gtk-goto-bottom</property>
-                                <property name="use_stock">True</property>
-                                <property name="relief">GTK_RELIEF_NORMAL</property>
-                                <property name="focus_on_click">True</property>
-                              </object>
-                            </child>
+                            <property name="can_focus">True</property>
+                            <property name="can_default">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_stock">True</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkButton" id="rule_edit">
+                            <property name="label" translatable="yes">_Edit</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="can_default">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_underline">True</property>
                           </object>
                           <packing>
-                            <property name="padding">0</property>
                             <property name="expand">False</property>
                             <property name="fill">False</property>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkButton" id="rule_delete">
+                            <property name="label">gtk-remove</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="can_default">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_stock">True</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">2</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkButton" id="rule_top">
+                            <property name="label">gtk-goto-top</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="can_default">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_stock">True</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">3</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkButton" id="rule_up">
+                            <property name="label">gtk-go-up</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="can_default">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_stock">True</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">4</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkButton" id="rule_down">
+                            <property name="label">gtk-go-down</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="can_default">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_stock">True</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">5</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkButton" id="rule_bottom">
+                            <property name="label">gtk-goto-bottom</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="can_default">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_stock">True</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">6</property>
                           </packing>
                         </child>
                       </object>
                       <packing>
-                        <property name="padding">0</property>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
+                        <property name="position">0</property>
                       </packing>
                     </child>
                   </object>
                   <packing>
-                    <property name="padding">0</property>
-                    <property name="expand">True</property>
-                    <property name="fill">True</property>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                    <property name="position">1</property>
                   </packing>
                 </child>
               </object>
               <packing>
-                <property name="padding">0</property>
-                <property name="expand">True</property>
-                <property name="fill">True</property>
+                <property name="position">1</property>
               </packing>
             </child>
           </object>
           <packing>
-            <property name="padding">3</property>
-            <property name="expand">True</property>
-            <property name="fill">True</property>
+            <property name="position">1</property>
           </packing>
         </child>
       </object>
+      <packing>
+        <property name="padding">3</property>
+        <property name="position">2</property>
+      </packing>
     </child>
   </object>
-  <object class="GtkWindow" id="filter_datespec_win">
-    <property name="border_width">6</property>
+  <object class="GtkVBox" id="filter_datespec">
     <property name="visible">True</property>
-    <property name="title">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>
+    <property name="orientation">vertical</property>
+    <property name="spacing">6</property>
     <child>
-      <object class="GtkVBox" id="filter_datespec">
+      <object class="GtkHBox" id="hbox5">
         <property name="visible">True</property>
-        <property name="homogeneous">False</property>
+        <property name="border_width">4</property>
         <property name="spacing">6</property>
         <child>
-          <object class="GtkHBox" id="hbox5">
-            <property name="border_width">4</property>
+          <object class="GtkLabel" id="label4">
             <property name="visible">True</property>
-            <property name="homogeneous">False</property>
-            <property name="spacing">6</property>
+            <property name="label" translatable="yes">Compare against</property>
+            <property name="justify">center</property>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">False</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkComboBox" id="combobox_type">
+            <property name="visible">True</property>
+            <property name="model">model2</property>
             <child>
-              <object class="GtkLabel" id="label4">
-                <property name="visible">True</property>
-                <property name="label" translatable="yes">Compare against</property>
-                <property name="use_underline">False</property>
-                <property name="use_markup">False</property>
-                <property name="justify">GTK_JUSTIFY_CENTER</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>
-                <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>
-              </object>
-              <packing>
-                <property name="padding">0</property>
-                <property name="expand">False</property>
-                <property name="fill">False</property>
-              </packing>
+              <object class="GtkCellRendererText" id="renderer2"/>
+              <attributes>
+                <attribute name="text">0</attribute>
+              </attributes>
             </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">False</property>
+            <property name="position">1</property>
+          </packing>
+        </child>
+      </object>
+      <packing>
+        <property name="expand">False</property>
+        <property name="fill">False</property>
+        <property name="position">0</property>
+      </packing>
+    </child>
+    <child>
+      <object class="GtkHSeparator" id="hseparator1">
+        <property name="visible">True</property>
+      </object>
+      <packing>
+        <property name="expand">False</property>
+        <property name="padding">1</property>
+        <property name="position">1</property>
+      </packing>
+    </child>
+    <child>
+      <object class="GtkNotebook" id="notebook_type">
+        <property name="visible">True</property>
+        <property name="show_tabs">False</property>
+        <property name="show_border">False</property>
+        <child>
+          <object class="GtkVBox" id="vbox9">
+            <property name="visible">True</property>
+            <property name="orientation">vertical</property>
             <child>
-              <object class="GtkComboBox" id="combobox_type">
+              <object class="GtkLabel" id="label5">
                 <property name="visible">True</property>
-                <property name="add_tearoffs">False</property>
-                <property name="focus_on_click">True</property>
-                <property name="model">model2</property>
-                <child>
-                  <object class="GtkCellRendererText" id="renderer2"/>
-                  <attributes>
-                    <attribute name="text">0</attribute>
-                  </attributes>
-                </child>
+                <property name="label" translatable="yes">The message's date will be compared against
+current time when filtering occurs.</property>
+                <property name="justify">center</property>
               </object>
               <packing>
-                <property name="padding">0</property>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
+                <property name="position">0</property>
               </packing>
             </child>
           </object>
           <packing>
-            <property name="padding">0</property>
-            <property name="expand">False</property>
-            <property name="fill">False</property>
+            <property name="tab_fill">False</property>
           </packing>
         </child>
-        <child>
-          <object class="GtkHSeparator" id="hseparator1">
+        <child type="tab">
+          <object class="GtkLabel" id="label1">
             <property name="visible">True</property>
+            <property name="label" translatable="yes">label1</property>
+            <property name="justify">center</property>
           </object>
           <packing>
-            <property name="padding">1</property>
-            <property name="expand">False</property>
-            <property name="fill">True</property>
+            <property name="tab_fill">False</property>
           </packing>
         </child>
         <child>
-          <object class="GtkNotebook" id="notebook_type">
+          <object class="GtkVBox" id="vbox7">
             <property name="visible">True</property>
-            <property name="show_tabs">False</property>
-            <property name="show_border">False</property>
-            <property name="tab_pos">GTK_POS_TOP</property>
-            <property name="scrollable">False</property>
-            <property name="enable_popup">False</property>
+            <property name="orientation">vertical</property>
             <child>
-              <object class="GtkVBox" id="vbox9">
+              <object class="GtkLabel" id="label6">
                 <property name="visible">True</property>
-                <property name="homogeneous">False</property>
-                <property name="spacing">0</property>
-                <child>
-                  <object class="GtkLabel" id="label5">
-                    <property name="visible">True</property>
-                    <property name="label" translatable="yes">The message's date will be compared against
-the current time when filtering occurs.</property>
-                    <property name="use_underline">False</property>
-                    <property name="use_markup">False</property>
-                    <property name="justify">GTK_JUSTIFY_CENTER</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>
-                    <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>
-                  </object>
-                  <packing>
-                    <property name="padding">0</property>
-                    <property name="expand">False</property>
-                    <property name="fill">False</property>
-                  </packing>
-                </child>
+                <property name="label" translatable="yes">The message's date will be compared against
+0am of the date specified.</property>
+                <property name="justify">center</property>
               </object>
               <packing>
-                <property name="tab_expand">False</property>
-                <property name="tab_fill">False</property>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
               </packing>
             </child>
-            <child type="tab">
-              <object class="GtkLabel" id="label1">
-                <property name="visible">True</property>
-                <property name="label" translatable="yes">label1</property>
-                <property name="use_underline">False</property>
-                <property name="use_markup">False</property>
-                <property name="justify">GTK_JUSTIFY_CENTER</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>
-                <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>
-              </object>
-            </child>
             <child>
-              <object class="GtkVBox" id="vbox7">
+              <object class="GtkCalendar" id="calendar_specify">
                 <property name="visible">True</property>
-                <property name="homogeneous">False</property>
-                <property name="spacing">0</property>
-                <child>
-                  <object class="GtkLabel" id="label6">
-                    <property name="visible">True</property>
-                    <property name="label" translatable="yes">The message's date will be compared against
-12:00am of the date specified.</property>
-                    <property name="use_underline">False</property>
-                    <property name="use_markup">False</property>
-                    <property name="justify">GTK_JUSTIFY_CENTER</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>
-                    <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>
-                  </object>
-                  <packing>
-                    <property name="padding">0</property>
-                    <property name="expand">False</property>
-                    <property name="fill">False</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkCalendar" id="calendar_specify">
-                    <property name="visible">True</property>
-                    <property name="can_focus">True</property>
-                    <property name="display_options">GTK_CALENDAR_SHOW_HEADING|GTK_CALENDAR_SHOW_DAY_NAMES</property>
-                  </object>
-                  <packing>
-                    <property name="padding">0</property>
-                    <property name="expand">True</property>
-                    <property name="fill">True</property>
-                  </packing>
-                </child>
+                <property name="can_focus">True</property>
               </object>
               <packing>
-                <property name="tab_expand">False</property>
-                <property name="tab_fill">True</property>
+                <property name="position">1</property>
               </packing>
             </child>
-            <child type="tab">
-              <object class="GtkLabel" id="label2">
+          </object>
+          <packing>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child type="tab">
+          <object class="GtkLabel" id="label2">
+            <property name="visible">True</property>
+            <property name="label" translatable="yes">label2</property>
+            <property name="justify">center</property>
+          </object>
+          <packing>
+            <property name="position">1</property>
+            <property name="tab_fill">False</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkVBox" id="vbox8">
+            <property name="visible">True</property>
+            <property name="orientation">vertical</property>
+            <child>
+              <object class="GtkLabel" id="label7">
                 <property name="visible">True</property>
-                <property name="label" translatable="yes">label2</property>
-                <property name="use_underline">False</property>
-                <property name="use_markup">False</property>
-                <property name="justify">GTK_JUSTIFY_CENTER</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>
-                <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>
+                <property name="ypad">15</property>
+                <property name="label" translatable="yes">The message's date will be compared against
+me relative to when filtering occurs.</property>
+                <property name="justify">center</property>
               </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
             </child>
             <child>
-              <object class="GtkVBox" id="vbox8">
+              <object class="GtkAlignment" id="alignment1">
                 <property name="visible">True</property>
-                <property name="homogeneous">False</property>
-                <property name="spacing">0</property>
-                <child>
-                  <object class="GtkLabel" id="label7">
-                    <property name="visible">True</property>
-                    <property name="label" translatable="yes">The message's date will be compared against
-a time relative to when filtering occurs.</property>
-                    <property name="use_underline">False</property>
-                    <property name="use_markup">False</property>
-                    <property name="justify">GTK_JUSTIFY_CENTER</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">15</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>
-                  </object>
-                  <packing>
-                    <property name="padding">0</property>
-                    <property name="expand">False</property>
-                    <property name="fill">False</property>
-                  </packing>
-                </child>
+                <property name="top_padding">5</property>
+                <property name="left_padding">58</property>
                 <child>
-                  <object class="GtkAlignment" id="alignment1">
+                  <object class="GtkHBox" id="hbox6">
                     <property name="visible">True</property>
-                    <property name="xalign">0.5</property>
-                    <property name="yalign">0.5</property>
-                    <property name="xscale">1</property>
-                    <property name="yscale">1</property>
-                    <property name="top_padding">5</property>
-                    <property name="bottom_padding">0</property>
-                    <property name="left_padding">58</property>
-                    <property name="right_padding">0</property>
+                    <property name="homogeneous">True</property>
+                    <child>
+                      <object class="GtkSpinButton" id="spin_relative">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="adjustment">adjustment1</property>
+                        <property name="climb_rate">1</property>
+                      </object>
+                      <packing>
+                        <property name="position">0</property>
+                      </packing>
+                    </child>
                     <child>
-                      <object class="GtkHBox" id="hbox6">
+                      <object class="GtkComboBox" id="combobox_relative">
                         <property name="visible">True</property>
-                        <property name="homogeneous">True</property>
-                        <property name="spacing">0</property>
+                        <property name="model">model3</property>
                         <child>
-                          <object class="GtkSpinButton" id="spin_relative">
-                            <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="climb_rate">1</property>
-                            <property name="digits">0</property>
-                            <property name="numeric">False</property>
-                            <property name="update_policy">GTK_UPDATE_ALWAYS</property>
-                            <property name="snap_to_ticks">False</property>
-                            <property name="wrap">False</property>
-                            <property name="adjustment">adjustment1</property>
-                          </object>
-                          <packing>
-                            <property name="padding">0</property>
-                            <property name="expand">True</property>
-                            <property name="fill">True</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkComboBox" id="combobox_relative">
-                            <property name="visible">True</property>
-                            <property name="add_tearoffs">False</property>
-                            <property name="focus_on_click">True</property>
-                            <property name="model">model3</property>
-                            <child>
-                              <object class="GtkCellRendererText" id="renderer3"/>
-                              <attributes>
-                                <attribute name="text">0</attribute>
-                              </attributes>
-                            </child>
-                          </object>
-                          <packing>
-                            <property name="padding">0</property>
-                            <property name="expand">False</property>
-                            <property name="fill">False</property>
-                          </packing>
+                          <object class="GtkCellRendererText" id="renderer3"/>
+                          <attributes>
+                            <attribute name="text">0</attribute>
+                          </attributes>
                         </child>
+                      </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="fill">False</property>
+                        <property name="position">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkComboBox" id="combobox_past_future">
+                        <property name="visible">True</property>
+                        <property name="model">model4</property>
                         <child>
-                          <object class="GtkComboBox" id="combobox_past_future">
-                            <property name="visible">True</property>
-                            <property name="add_tearoffs">False</property>
-                            <property name="focus_on_click">True</property>
-                            <property name="model">model4</property>
-                            <child>
-                              <object class="GtkCellRendererText" id="renderer4"/>
-                              <attributes>
-                                <attribute name="text">0</attribute>
-                              </attributes>
-                            </child>
-                          </object>
-                          <packing>
-                            <property name="padding">0</property>
-                            <property name="expand">False</property>
-                            <property name="fill">True</property>
-                          </packing>
+                          <object class="GtkCellRendererText" id="renderer4"/>
+                          <attributes>
+                            <attribute name="text">0</attribute>
+                          </attributes>
                         </child>
                       </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="position">2</property>
+                      </packing>
                     </child>
                   </object>
-                  <packing>
-                    <property name="padding">2</property>
-                    <property name="expand">False</property>
-                    <property name="fill">True</property>
-                  </packing>
                 </child>
               </object>
               <packing>
-                <property name="tab_expand">False</property>
-                <property name="tab_fill">True</property>
+                <property name="expand">False</property>
+                <property name="padding">2</property>
+                <property name="position">1</property>
               </packing>
             </child>
-            <child type="tab">
-              <object class="GtkLabel" id="label3">
-                <property name="visible">True</property>
-                <property name="label" translatable="yes">label3</property>
-                <property name="use_underline">False</property>
-                <property name="use_markup">False</property>
-                <property name="justify">GTK_JUSTIFY_CENTER</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>
-                <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>
-              </object>
-            </child>
           </object>
           <packing>
-            <property name="padding">0</property>
-            <property name="expand">True</property>
-            <property name="fill">True</property>
+            <property name="position">2</property>
+          </packing>
+        </child>
+        <child type="tab">
+          <object class="GtkLabel" id="label3">
+            <property name="visible">True</property>
+            <property name="label" translatable="yes">label3</property>
+            <property name="justify">center</property>
+          </object>
+          <packing>
+            <property name="position">2</property>
+            <property name="tab_fill">False</property>
           </packing>
         </child>
       </object>
+      <packing>
+        <property name="position">2</property>
+      </packing>
     </child>
   </object>
 </interface>



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]