Paired Samples Dialog: Fix broken logic
authorJohn Darrington <john@darrington.wattle.id.au>
Mon, 7 Dec 2015 21:08:14 +0000 (22:08 +0100)
committerJohn Darrington <john@darrington.wattle.id.au>
Mon, 7 Dec 2015 21:08:14 +0000 (22:08 +0100)
src/ui/gui/paired-samples.ui
src/ui/gui/psppire-dialog-action-paired.c
src/ui/gui/psppire-dialog-action-two-sample.c

index 107f5fb38a50a1b3d286534c7a443acc21c99c40..ee9520b6afdff9e8946f4bb79e93921a4dddabf3 100644 (file)
             <property name="margin_top">5</property>
             <property name="margin_bottom">5</property>
             <property name="row_spacing">5</property>
-            <child>
-              <object class="GtkFrame" id="frame4">
-                <property name="visible">True</property>
-                <property name="can_focus">False</property>
-                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                <property name="hexpand">True</property>
-                <property name="vexpand">True</property>
-                <property name="label_xalign">0</property>
-                <property name="shadow_type">none</property>
-                <child>
-                      <object class="GtkScrolledWindow" id="scrolledwindow1">
-                        <property name="visible">True</property>
-                       <property name="margin-start">12</property>
-                        <property name="can_focus">True</property>
-                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="shadow_type">etched-in</property>
-                        <child>
-                          <object class="PsppireVarView" id="paired-samples-t-test-treeview2">
-                            <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                            <property name="border_width">0</property>
-                            <property name="headers_clickable">False</property>
-                            <property name="enable_search">False</property>
-                            <property name="n_cols">2</property>
-                            <child internal-child="selection">
-                              <object class="GtkTreeSelection" id="psppire-var-view-selection"/>
-                            </child>
-                          </object>
-                    </child>
-                  </object>
-                </child>
-                <child type="label">
-                  <object class="GtkLabel" id="label13">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                    <property name="label" translatable="yes">_Test Pair(s):</property>
-                    <property name="use_markup">True</property>
-                    <property name="use_underline">True</property>
-                    <property name="mnemonic_widget">paired-samples-t-test-treeview2</property>
-                  </object>
-                </child>
-              </object>
-              <packing>
-                <property name="left_attach">2</property>
-                <property name="top_attach">0</property>
-              </packing>
-            </child>
             <child>
               <object class="PsppireSelector" id="psppire-selector3">
                 <property name="visible">True</property>
               </packing>
             </child>
             <child>
-              <object class="GtkButtonBox" id="buttonbox1">
+              <object class="GtkBox" id="dynamic-populate">
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
                 <property name="hexpand">True</property>
+                <property name="vexpand">True</property>
                 <property name="orientation">vertical</property>
-                <property name="layout_style">start</property>
                 <child>
-                  <object class="GtkButton" id="option-button">
-                    <property name="label" translatable="yes">O_ptions...</property>
+                  <object class="GtkFrame" id="frame4">
                     <property name="visible">True</property>
-                    <property name="can_focus">True</property>
-                    <property name="receives_default">True</property>
-                    <property name="use_underline">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                    <property name="hexpand">True</property>
+                    <property name="vexpand">True</property>
+                    <property name="label_xalign">0</property>
+                    <property name="shadow_type">none</property>
+                    <child>
+                      <object class="GtkScrolledWindow" id="scrolledwindow1">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="margin_left">12</property>
+                        <property name="margin_start">12</property>
+                        <property name="shadow_type">etched-in</property>
+                        <child>
+                          <object class="PsppireVarView" id="paired-samples-t-test-treeview2">
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                            <property name="border_width">0</property>
+                            <property name="headers_clickable">False</property>
+                            <property name="enable_search">False</property>
+                            <property name="n_cols">2</property>
+                            <child internal-child="selection">
+                              <object class="GtkTreeSelection" id="psppire-var-view-selection"/>
+                            </child>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
+                    <child type="label">
+                      <object class="GtkLabel" id="label13">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="label" translatable="yes">_Test Pair(s):</property>
+                        <property name="use_markup">True</property>
+                        <property name="use_underline">True</property>
+                        <property name="mnemonic_widget">paired-samples-t-test-treeview2</property>
+                      </object>
+                    </child>
                   </object>
                   <packing>
-                    <property name="expand">True</property>
+                    <property name="expand">False</property>
                     <property name="fill">True</property>
                     <property name="position">0</property>
                   </packing>
                 </child>
+                <child>
+                  <placeholder/>
+                </child>
               </object>
               <packing>
                 <property name="left_attach">2</property>
-                <property name="top_attach">1</property>
+                <property name="top_attach">0</property>
+                <property name="height">2</property>
               </packing>
             </child>
           </object>
index 558e86f52c70688cff95474142228f669f2eafd2..fdd9a2b34df352fa412507214b6b5c5ab32ef3bc 100644 (file)
@@ -161,34 +161,41 @@ psppire_dialog_action_paired_activate (GtkAction *a)
     {
       xml = builder_new ("paired-samples.ui");
       g_hash_table_insert (thing, a, xml);
-    }
+      
+      GtkWidget *selector = get_widget_assert (xml, "psppire-selector3");
+      GtkWidget *bb = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL);
+      GtkWidget *button = gtk_button_new_with_mnemonic (_("O_ptions..."));
+      GtkWidget *box = get_widget_assert (xml, "dynamic-populate");
 
-  GtkWidget *selector = get_widget_assert (xml, "psppire-selector3");
-  GtkWidget *button = get_widget_assert (xml, "option-button");
+      pda->dialog = get_widget_assert   (xml, "t-test-paired-samples-dialog");
+      pda->source = get_widget_assert   (xml, "paired-samples-t-test-treeview1");
 
-  pda->dialog = get_widget_assert   (xml, "t-test-paired-samples-dialog");
-  pda->source = get_widget_assert   (xml, "paired-samples-t-test-treeview1");
+      gtk_window_set_title (GTK_WINDOW (pda->dialog), _("Paired Samples T Test"));
 
-  gtk_window_set_title (GTK_WINDOW (pda->dialog), _("Paired Samples T Test"));
+      act->pairs_treeview = get_widget_assert (xml, "paired-samples-t-test-treeview2");
+      act->list_store = GTK_LIST_STORE (gtk_tree_view_get_model (GTK_TREE_VIEW (act->pairs_treeview)));
 
-  act->pairs_treeview = get_widget_assert (xml, "paired-samples-t-test-treeview2");
-  act->list_store = GTK_LIST_STORE (gtk_tree_view_get_model (GTK_TREE_VIEW (act->pairs_treeview)));
+      act->opt = tt_options_dialog_create (GTK_WINDOW (pda->toplevel));
 
-  act->opt = tt_options_dialog_create (GTK_WINDOW (pda->toplevel));
+      g_signal_connect_swapped (button, "clicked", G_CALLBACK (tt_options_dialog_run), act->opt);
 
-  g_signal_connect_swapped (button, "clicked", G_CALLBACK (tt_options_dialog_run), act->opt);
 
+      gtk_box_pack_start (GTK_BOX (bb), button, TRUE, TRUE, 5);
+      gtk_box_pack_start (GTK_BOX (box), bb, FALSE, FALSE, 5);
+      gtk_widget_show_all (box);
  
-  psppire_dialog_action_set_valid_predicate (pda, dialog_state_valid);
-  psppire_dialog_action_set_refresh (pda, refresh);
 
-  g_object_set (pda->source,
-               "predicate", var_is_numeric,
-               NULL);
+      psppire_dialog_action_set_valid_predicate (pda, dialog_state_valid);
+      psppire_dialog_action_set_refresh (pda, refresh);
+
+      g_object_set (pda->source,
+                   "predicate", var_is_numeric,
+                   NULL);
 
-  psppire_selector_set_select_func (PSPPIRE_SELECTOR (selector),
-                                   select_as_pair_member,
-                                   act);
+      psppire_selector_set_select_func (PSPPIRE_SELECTOR (selector),
+                                       select_as_pair_member,
+                                       act);
+    }
   
   if (PSPPIRE_DIALOG_ACTION_CLASS (psppire_dialog_action_paired_parent_class)->activate)
     PSPPIRE_DIALOG_ACTION_CLASS (psppire_dialog_action_paired_parent_class)->activate (pda);
index c570993b843ca52368f8b0e2ca84f07ddfdab935..ce08e05271bbc9c782aab1a3bd4bc6127cdac758 100644 (file)
@@ -185,7 +185,7 @@ psppire_dialog_action_two_sample_activate (GtkAction *a)
       /* NPAR Specific options */
       GtkWidget *frame = gtk_frame_new (_("Test Type"));
       GtkWidget *bb = gtk_button_box_new (GTK_ORIENTATION_VERTICAL);
-      GtkWidget *box = get_widget_assert (xml, "vbox3");
+      GtkWidget *box = get_widget_assert (xml, "dynamic-populate");
 
 
       strcpy (act->nts[NT_WILCOXON].syntax, "/WILCOXON");