[chronojump] Start window with jumps, runs, power and two subcategories each



commit 192cc40b0bd151c20a0583e8bd54b98c9dd4b918
Author: Xavier de Blas <xaviblas gmail com>
Date:   Mon Aug 22 15:46:44 2016 +0200

    Start window with jumps,runs,power and two subcategories each

 glade/chronojump.glade       | 1534 +++++++++++++++++++++++++++++++++---------
 src/gui/chronojump.cs        |   90 +++-
 src/gui/movingStartWindow.cs |  173 +++++
 src/gui/usefulObjects.cs     |   50 ++
 4 files changed, 1531 insertions(+), 316 deletions(-)
---
diff --git a/glade/chronojump.glade b/glade/chronojump.glade
index 0bab301..c2bd0ec 100644
--- a/glade/chronojump.glade
+++ b/glade/chronojump.glade
@@ -630,305 +630,728 @@
                         <property name="can_focus">False</property>
                         <property name="spacing">30</property>
                         <child>
-                          <widget class="GtkHButtonBox" id="hbuttonbox1">
+                          <widget class="GtkTable" id="table4">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
+                            <property name="n_rows">3</property>
+                            <property name="n_columns">3</property>
                             <child>
-                              <widget class="GtkButton" id="button_selector_start_jumps">
+                              <widget class="GtkNotebook" id="notebook_selector_start_jumps">
+                                <property name="width_request">225</property>
+                                <property name="height_request">261</property>
                                 <property name="visible">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="receives_default">True</property>
-                                <property name="tooltip" translatable="yes">Or press '1'</property>
-                                <property name="relief">none</property>
-                                <signal name="clicked" 
handler="on_button_selector_start_jumps_simple_clicked" swapped="no"/>
-                                <accelerator key="1" signal="clicked"/>
+                                <property name="can_focus">False</property>
+                                <property name="show_tabs">False</property>
+                                <property name="show_border">False</property>
                                 <child>
-                                  <widget class="GtkVBox" id="vbox78">
+                                  <widget class="GtkButton" id="button_selector_start_jumps">
                                     <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="receives_default">True</property>
+                                    <property name="tooltip" translatable="yes">Or press '1'</property>
+                                    <property name="relief">none</property>
+                                    <signal name="clicked" handler="on_button_selector_start_jumps_clicked" 
swapped="no"/>
+                                    <accelerator key="1" signal="clicked"/>
                                     <child>
                                       <widget class="GtkImage" id="image_selector_start_jumps">
-                                        <property name="width_request">225</property>
-                                        <property name="height_request">261</property>
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
                                         <property name="stock">gtk-missing-image</property>
                                       </widget>
-                                      <packing>
-                                        <property name="expand">False</property>
-                                        <property name="fill">False</property>
-                                        <property name="position">0</property>
-                                      </packing>
                                     </child>
+                                  </widget>
+                                </child>
+                                <child>
+                                  <widget class="GtkLabel" id="label34">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="label" translatable="yes">page 1</property>
+                                  </widget>
+                                  <packing>
+                                    <property name="tab_fill">False</property>
+                                    <property name="type">tab</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <widget class="GtkViewport" id="viewport_selector_start_jumps">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">False</property>
                                     <child>
-                                      <widget class="GtkVBox" id="vbox87">
+                                      <widget class="GtkVBox" id="vbox_selector_start_jumps_2">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
+                                        <property name="border_width">12</property>
+                                        <property name="spacing">12</property>
                                         <child>
-                                          <widget class="GtkLabel" id="label59">
+                                          <widget class="GtkVBox" id="vbox84">
                                             <property name="visible">True</property>
                                             <property name="can_focus">False</property>
-                                            <property name="xpad">8</property>
-                                            <property name="ypad">8</property>
-                                            <property name="label" translatable="yes">Jumps</property>
+                                            <property name="spacing">6</property>
+                                            <child>
+                                              <widget class="GtkButton" id="button5">
+                                                <property name="height_request">75</property>
+                                                <property name="visible">True</property>
+                                                <property name="can_focus">True</property>
+                                                <property name="receives_default">True</property>
+                                                <signal name="clicked" 
handler="on_button_selector_start_jumps_simple_clicked" swapped="no"/>
+                                                <child>
+                                                  <widget class="GtkHBox" id="hbox108">
+                                                    <property name="visible">True</property>
+                                                    <property name="can_focus">False</property>
+                                                    <property name="spacing">10</property>
+                                                    <child>
+                                                      <widget class="GtkImage" id="image_mode_jumps_small">
+                                                        <property name="visible">True</property>
+                                                        <property name="can_focus">False</property>
+                                                        <property name="xpad">10</property>
+                                                        <property name="stock">gtk-missing-image</property>
+                                                        <property name="icon-size">2</property>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="fill">True</property>
+                                                        <property name="position">0</property>
+                                                      </packing>
+                                                    </child>
+                                                    <child>
+                                                      <widget class="GtkLabel" id="label32">
+                                                        <property name="visible">True</property>
+                                                        <property name="can_focus">False</property>
+                                                        <property name="label" 
translatable="yes">Simple</property>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="fill">True</property>
+                                                        <property name="position">1</property>
+                                                      </packing>
+                                                    </child>
+                                                  </widget>
+                                                </child>
+                                              </widget>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="fill">False</property>
+                                                <property name="position">0</property>
+                                              </packing>
+                                            </child>
+                                            <child>
+                                              <widget class="GtkLabel" 
id="label_selector_start_jumps_simple">
+                                                <property name="visible">True</property>
+                                                <property name="can_focus">False</property>
+                                                <property name="label">Tests have 1 flight phase</property>
+                                              </widget>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="fill">False</property>
+                                                <property name="position">1</property>
+                                              </packing>
+                                            </child>
                                           </widget>
                                           <packing>
                                             <property name="expand">True</property>
-                                            <property name="fill">True</property>
+                                            <property name="fill">False</property>
                                             <property name="position">0</property>
                                           </packing>
                                         </child>
                                         <child>
-                                          <widget class="GtkHBox" id="hbox129">
+                                          <widget class="GtkVBox" id="vbox86">
                                             <property name="visible">True</property>
                                             <property name="can_focus">False</property>
+                                            <property name="spacing">6</property>
                                             <child>
-                                              <widget class="GtkHBox" id="hbox130">
+                                              <widget class="GtkButton" id="button6">
+                                                <property name="height_request">75</property>
                                                 <property name="visible">True</property>
-                                                <property name="can_focus">False</property>
-                                                <child>
-                                                  <widget class="GtkLabel" id="label88">
-                                                    <property name="visible">True</property>
-                                                    <property name="can_focus">False</property>
-                                                    <property name="label">[</property>
-                                                  </widget>
-                                                  <packing>
-                                                    <property name="expand">False</property>
-                                                    <property name="fill">False</property>
-                                                    <property name="position">0</property>
-                                                  </packing>
-                                                </child>
-                                                <child>
-                                                  <widget class="GtkLabel" id="label89">
-                                                    <property name="visible">True</property>
-                                                    <property name="can_focus">False</property>
-                                                    <property name="xpad">8</property>
-                                                    <property name="ypad">8</property>
-                                                    <property name="label" translatable="yes">Contact 
platform</property>
-                                                  </widget>
-                                                  <packing>
-                                                    <property name="expand">False</property>
-                                                    <property name="fill">False</property>
-                                                    <property name="position">1</property>
-                                                  </packing>
-                                                </child>
+                                                <property name="can_focus">True</property>
+                                                <property name="receives_default">True</property>
+                                                <signal name="clicked" 
handler="on_button_selector_start_jumps_reactive_clicked" swapped="no"/>
                                                 <child>
-                                                  <widget class="GtkLabel" id="label93">
+                                                  <widget class="GtkHBox" id="hbox110">
                                                     <property name="visible">True</property>
                                                     <property name="can_focus">False</property>
-                                                    <property name="label">]</property>
+                                                    <property name="spacing">10</property>
+                                                    <child>
+                                                      <widget class="GtkImage" 
id="image_mode_jumps_reactive_small">
+                                                        <property name="visible">True</property>
+                                                        <property name="can_focus">False</property>
+                                                        <property name="xpad">10</property>
+                                                        <property name="stock">gtk-missing-image</property>
+                                                        <property name="icon-size">2</property>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="fill">True</property>
+                                                        <property name="position">0</property>
+                                                      </packing>
+                                                    </child>
+                                                    <child>
+                                                      <widget class="GtkLabel" id="label71">
+                                                        <property name="visible">True</property>
+                                                        <property name="can_focus">False</property>
+                                                        <property name="label" 
translatable="yes">Reactive</property>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="fill">True</property>
+                                                        <property name="position">1</property>
+                                                      </packing>
+                                                    </child>
                                                   </widget>
-                                                  <packing>
-                                                    <property name="expand">False</property>
-                                                    <property name="fill">False</property>
-                                                    <property name="position">2</property>
-                                                  </packing>
                                                 </child>
                                               </widget>
                                               <packing>
-                                                <property name="expand">True</property>
+                                                <property name="expand">False</property>
                                                 <property name="fill">False</property>
                                                 <property name="position">0</property>
                                               </packing>
                                             </child>
+                                            <child>
+                                              <widget class="GtkLabel" 
id="label_selector_start_jumps_reactive">
+                                                <property name="visible">True</property>
+                                                <property name="can_focus">False</property>
+                                                <property name="label">Tests have &gt;1 flight 
phase</property>
+                                              </widget>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="fill">False</property>
+                                                <property name="position">1</property>
+                                              </packing>
+                                            </child>
                                           </widget>
                                           <packing>
-                                            <property name="expand">False</property>
+                                            <property name="expand">True</property>
                                             <property name="fill">False</property>
                                             <property name="position">1</property>
                                           </packing>
                                         </child>
                                       </widget>
-                                      <packing>
-                                        <property name="expand">False</property>
-                                        <property name="fill">False</property>
-                                        <property name="position">1</property>
-                                      </packing>
                                     </child>
                                   </widget>
+                                  <packing>
+                                    <property name="position">1</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <widget class="GtkLabel" id="label66">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="label" translatable="yes">page 2</property>
+                                  </widget>
+                                  <packing>
+                                    <property name="position">1</property>
+                                    <property name="tab_fill">False</property>
+                                    <property name="type">tab</property>
+                                  </packing>
+                                </child>
+                              </widget>
+                              <packing>
+                                <property name="top_attach">1</property>
+                                <property name="bottom_attach">2</property>
+                                <property name="x_options">GTK_EXPAND</property>
+                                <property name="y_options">GTK_EXPAND</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <widget class="GtkHBox" id="hbox130">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <child>
+                                  <widget class="GtkLabel" id="label88">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="label">[</property>
+                                  </widget>
+                                  <packing>
+                                    <property name="expand">False</property>
+                                    <property name="fill">False</property>
+                                    <property name="position">0</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <widget class="GtkLabel" id="label89">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="xpad">8</property>
+                                    <property name="ypad">8</property>
+                                    <property name="label" translatable="yes">Contact platform</property>
+                                  </widget>
+                                  <packing>
+                                    <property name="expand">False</property>
+                                    <property name="fill">False</property>
+                                    <property name="position">1</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <widget class="GtkLabel" id="label93">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="label">]</property>
+                                  </widget>
+                                  <packing>
+                                    <property name="expand">False</property>
+                                    <property name="fill">False</property>
+                                    <property name="position">2</property>
+                                  </packing>
                                 </child>
                               </widget>
                               <packing>
-                                <property name="expand">False</property>
-                                <property name="fill">False</property>
-                                <property name="position">0</property>
+                                <property name="top_attach">2</property>
+                                <property name="bottom_attach">3</property>
+                                <property name="x_options">GTK_EXPAND</property>
+                                <property name="y_options"/>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkButton" id="button_selector_start_runs">
+                              <widget class="GtkLabel" id="label39">
                                 <property name="visible">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="receives_default">True</property>
-                                <property name="tooltip" translatable="yes">Or press '2'</property>
-                                <property name="relief">none</property>
-                                <signal name="clicked" 
handler="on_button_selector_start_runs_simple_clicked" swapped="no"/>
-                                <accelerator key="2" signal="clicked"/>
+                                <property name="can_focus">False</property>
+                                <property name="label" translatable="yes">Jumps</property>
+                              </widget>
+                              <packing>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                              </packing>
+                            </child>
+                            <child>
+                              <widget class="GtkLabel" id="label59">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="label" translatable="yes">Runs</property>
+                              </widget>
+                              <packing>
+                                <property name="left_attach">1</property>
+                                <property name="right_attach">2</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                              </packing>
+                            </child>
+                            <child>
+                              <widget class="GtkLabel" id="label64">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="label" translatable="yes">Power</property>
+                              </widget>
+                              <packing>
+                                <property name="left_attach">2</property>
+                                <property name="right_attach">3</property>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"/>
+                              </packing>
+                            </child>
+                            <child>
+                              <widget class="GtkHBox" id="hbox127">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <child>
+                                  <widget class="GtkLabel" id="label78">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="label">[</property>
+                                  </widget>
+                                  <packing>
+                                    <property name="expand">False</property>
+                                    <property name="fill">False</property>
+                                    <property name="position">0</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <widget class="GtkLabel" id="label81">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="xpad">8</property>
+                                    <property name="ypad">8</property>
+                                    <property name="label" translatable="yes">Photocells</property>
+                                  </widget>
+                                  <packing>
+                                    <property name="expand">False</property>
+                                    <property name="fill">False</property>
+                                    <property name="position">1</property>
+                                  </packing>
+                                </child>
                                 <child>
-                                  <widget class="GtkVBox" id="vbox79">
+                                  <widget class="GtkLabel" id="label84">
                                     <property name="visible">True</property>
                                     <property name="can_focus">False</property>
+                                    <property name="label">]</property>
+                                  </widget>
+                                  <packing>
+                                    <property name="expand">False</property>
+                                    <property name="fill">False</property>
+                                    <property name="position">2</property>
+                                  </packing>
+                                </child>
+                              </widget>
+                              <packing>
+                                <property name="left_attach">1</property>
+                                <property name="right_attach">2</property>
+                                <property name="top_attach">2</property>
+                                <property name="bottom_attach">3</property>
+                                <property name="x_options">GTK_EXPAND</property>
+                                <property name="y_options"/>
+                              </packing>
+                            </child>
+                            <child>
+                              <widget class="GtkHBox" id="hbox107">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <child>
+                                  <widget class="GtkLabel" id="label247">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="label">[</property>
+                                  </widget>
+                                  <packing>
+                                    <property name="expand">False</property>
+                                    <property name="fill">False</property>
+                                    <property name="position">0</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <widget class="GtkLabel" id="label248">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="xpad">8</property>
+                                    <property name="ypad">8</property>
+                                    <property name="label" translatable="yes">Encoder</property>
+                                  </widget>
+                                  <packing>
+                                    <property name="expand">False</property>
+                                    <property name="fill">False</property>
+                                    <property name="position">1</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <widget class="GtkLabel" id="label249">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="label">]</property>
+                                  </widget>
+                                  <packing>
+                                    <property name="expand">False</property>
+                                    <property name="fill">False</property>
+                                    <property name="position">2</property>
+                                  </packing>
+                                </child>
+                              </widget>
+                              <packing>
+                                <property name="left_attach">2</property>
+                                <property name="right_attach">3</property>
+                                <property name="top_attach">2</property>
+                                <property name="bottom_attach">3</property>
+                                <property name="x_options">GTK_EXPAND</property>
+                                <property name="y_options"/>
+                              </packing>
+                            </child>
+                            <child>
+                              <widget class="GtkNotebook" id="notebook_selector_start_runs">
+                                <property name="width_request">225</property>
+                                <property name="height_request">261</property>
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="show_tabs">False</property>
+                                <property name="show_border">False</property>
+                                <child>
+                                  <widget class="GtkButton" id="button_selector_start_runs">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="receives_default">True</property>
+                                    <property name="tooltip" translatable="yes">Or press '2'</property>
+                                    <property name="relief">none</property>
+                                    <signal name="clicked" handler="on_button_selector_start_runs_clicked" 
swapped="no"/>
+                                    <accelerator key="2" signal="clicked"/>
                                     <child>
                                       <widget class="GtkImage" id="image_selector_start_runs">
-                                        <property name="width_request">225</property>
-                                        <property name="height_request">261</property>
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
                                         <property name="stock">gtk-missing-image</property>
                                       </widget>
-                                      <packing>
-                                        <property name="expand">False</property>
-                                        <property name="fill">False</property>
-                                        <property name="position">0</property>
-                                      </packing>
                                     </child>
+                                  </widget>
+                                </child>
+                                <child>
+                                  <widget class="GtkLabel" id="label49">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="label" translatable="yes">page 1</property>
+                                  </widget>
+                                  <packing>
+                                    <property name="tab_fill">False</property>
+                                    <property name="type">tab</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <widget class="GtkViewport" id="viewport_selector_start_runs">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">False</property>
                                     <child>
-                                      <widget class="GtkVBox" id="vbox1">
+                                      <widget class="GtkVBox" id="vbox_selector_start_runs">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
+                                        <property name="border_width">12</property>
+                                        <property name="spacing">12</property>
                                         <child>
-                                          <widget class="GtkLabel" id="label52">
+                                          <widget class="GtkVBox" id="vbox1">
                                             <property name="visible">True</property>
                                             <property name="can_focus">False</property>
-                                            <property name="xpad">8</property>
-                                            <property name="ypad">8</property>
-                                            <property name="label" translatable="yes">Runs</property>
+                                            <property name="spacing">6</property>
+                                            <child>
+                                              <widget class="GtkButton" id="button7">
+                                                <property name="height_request">75</property>
+                                                <property name="visible">True</property>
+                                                <property name="can_focus">True</property>
+                                                <property name="receives_default">True</property>
+                                                <signal name="clicked" 
handler="on_button_selector_start_runs_simple_clicked" swapped="no"/>
+                                                <child>
+                                                  <widget class="GtkHBox" id="hbox82">
+                                                    <property name="visible">True</property>
+                                                    <property name="can_focus">False</property>
+                                                    <property name="spacing">10</property>
+                                                    <child>
+                                                      <widget class="GtkImage" id="image_mode_runs_small">
+                                                        <property name="visible">True</property>
+                                                        <property name="can_focus">False</property>
+                                                        <property name="xpad">10</property>
+                                                        <property name="stock">gtk-missing-image</property>
+                                                        <property name="icon-size">2</property>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="fill">True</property>
+                                                        <property name="position">0</property>
+                                                      </packing>
+                                                    </child>
+                                                    <child>
+                                                      <widget class="GtkLabel" id="label50">
+                                                        <property name="visible">True</property>
+                                                        <property name="can_focus">False</property>
+                                                        <property name="label" 
translatable="yes">Simple</property>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="fill">True</property>
+                                                        <property name="position">1</property>
+                                                      </packing>
+                                                    </child>
+                                                  </widget>
+                                                </child>
+                                              </widget>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="fill">False</property>
+                                                <property name="position">0</property>
+                                              </packing>
+                                            </child>
+                                            <child>
+                                              <widget class="GtkLabel" id="label_selector_start_runs_simple">
+                                                <property name="visible">True</property>
+                                                <property name="can_focus">False</property>
+                                                <property name="label">Tests have 1 track</property>
+                                              </widget>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="fill">False</property>
+                                                <property name="position">1</property>
+                                              </packing>
+                                            </child>
                                           </widget>
                                           <packing>
                                             <property name="expand">True</property>
-                                            <property name="fill">True</property>
+                                            <property name="fill">False</property>
                                             <property name="position">0</property>
                                           </packing>
                                         </child>
                                         <child>
-                                          <widget class="GtkHBox" id="hbox125">
+                                          <widget class="GtkVBox" id="vbox41">
                                             <property name="visible">True</property>
                                             <property name="can_focus">False</property>
+                                            <property name="spacing">6</property>
                                             <child>
-                                              <widget class="GtkHBox" id="hbox127">
+                                              <widget class="GtkButton" id="button8">
+                                                <property name="height_request">75</property>
                                                 <property name="visible">True</property>
-                                                <property name="can_focus">False</property>
-                                                <child>
-                                                  <widget class="GtkLabel" id="label78">
-                                                    <property name="visible">True</property>
-                                                    <property name="can_focus">False</property>
-                                                    <property name="label">[</property>
-                                                  </widget>
-                                                  <packing>
-                                                    <property name="expand">False</property>
-                                                    <property name="fill">False</property>
-                                                    <property name="position">0</property>
-                                                  </packing>
-                                                </child>
-                                                <child>
-                                                  <widget class="GtkLabel" id="label81">
-                                                    <property name="visible">True</property>
-                                                    <property name="can_focus">False</property>
-                                                    <property name="xpad">8</property>
-                                                    <property name="ypad">8</property>
-                                                    <property name="label" 
translatable="yes">Photocells</property>
-                                                  </widget>
-                                                  <packing>
-                                                    <property name="expand">False</property>
-                                                    <property name="fill">False</property>
-                                                    <property name="position">1</property>
-                                                  </packing>
-                                                </child>
+                                                <property name="can_focus">True</property>
+                                                <property name="receives_default">True</property>
+                                                <signal name="clicked" 
handler="on_button_selector_start_runs_intervallic_clicked" swapped="no"/>
                                                 <child>
-                                                  <widget class="GtkLabel" id="label84">
+                                                  <widget class="GtkHBox" id="hbox105">
                                                     <property name="visible">True</property>
                                                     <property name="can_focus">False</property>
-                                                    <property name="label">]</property>
+                                                    <property name="spacing">10</property>
+                                                    <child>
+                                                      <widget class="GtkImage" 
id="image_mode_runs_intervallic_small">
+                                                        <property name="visible">True</property>
+                                                        <property name="can_focus">False</property>
+                                                        <property name="xpad">10</property>
+                                                        <property name="stock">gtk-missing-image</property>
+                                                        <property name="icon-size">2</property>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="fill">True</property>
+                                                        <property name="position">0</property>
+                                                      </packing>
+                                                    </child>
+                                                    <child>
+                                                      <widget class="GtkLabel" id="label52">
+                                                        <property name="visible">True</property>
+                                                        <property name="can_focus">False</property>
+                                                        <property name="label" 
translatable="yes">Intervallic</property>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="fill">True</property>
+                                                        <property name="position">1</property>
+                                                      </packing>
+                                                    </child>
                                                   </widget>
-                                                  <packing>
-                                                    <property name="expand">False</property>
-                                                    <property name="fill">False</property>
-                                                    <property name="position">2</property>
-                                                  </packing>
                                                 </child>
                                               </widget>
                                               <packing>
-                                                <property name="expand">True</property>
+                                                <property name="expand">False</property>
                                                 <property name="fill">False</property>
                                                 <property name="position">0</property>
                                               </packing>
                                             </child>
+                                            <child>
+                                              <widget class="GtkLabel" 
id="label_selector_start_runs_intervallic">
+                                                <property name="visible">True</property>
+                                                <property name="can_focus">False</property>
+                                                <property name="label">Tests have &gt;1 track</property>
+                                              </widget>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="fill">False</property>
+                                                <property name="position">1</property>
+                                              </packing>
+                                            </child>
                                           </widget>
                                           <packing>
-                                            <property name="expand">False</property>
+                                            <property name="expand">True</property>
                                             <property name="fill">False</property>
                                             <property name="position">1</property>
                                           </packing>
                                         </child>
                                       </widget>
-                                      <packing>
-                                        <property name="expand">False</property>
-                                        <property name="fill">False</property>
-                                        <property name="position">1</property>
-                                      </packing>
                                     </child>
                                   </widget>
+                                  <packing>
+                                    <property name="position">1</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <widget class="GtkLabel" id="label60">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="label" translatable="yes">page 2</property>
+                                  </widget>
+                                  <packing>
+                                    <property name="position">1</property>
+                                    <property name="tab_fill">False</property>
+                                    <property name="type">tab</property>
+                                  </packing>
                                 </child>
                               </widget>
                               <packing>
-                                <property name="expand">False</property>
-                                <property name="fill">False</property>
-                                <property name="position">1</property>
+                                <property name="left_attach">1</property>
+                                <property name="right_attach">2</property>
+                                <property name="top_attach">1</property>
+                                <property name="bottom_attach">2</property>
+                                <property name="x_options">GTK_EXPAND</property>
+                                <property name="y_options">GTK_EXPAND</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkButton" id="button_selector_start_encoder_gravitatory">
+                              <widget class="GtkNotebook" id="notebook_selector_start_encoder">
+                                <property name="width_request">225</property>
+                                <property name="height_request">261</property>
                                 <property name="visible">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="receives_default">True</property>
-                                <property name="tooltip" translatable="yes">Or press '3'</property>
-                                <property name="relief">none</property>
-                                <signal name="clicked" 
handler="on_button_selector_start_power_gravitatory_clicked" swapped="no"/>
-                                <accelerator key="3" signal="clicked"/>
+                                <property name="can_focus">False</property>
+                                <property name="show_tabs">False</property>
+                                <property name="show_border">False</property>
                                 <child>
-                                  <widget class="GtkVBox" id="vbox80">
+                                  <widget class="GtkButton" id="button_selector_start_encoder">
                                     <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <child>
-                                      <widget class="GtkLabel" id="label50">
-                                        <property name="visible">True</property>
-                                        <property name="can_focus">False</property>
-                                        <property name="xpad">8</property>
-                                        <property name="ypad">8</property>
-                                        <property name="label" translatable="yes">Power</property>
-                                      </widget>
-                                      <packing>
-                                        <property name="expand">False</property>
-                                        <property name="fill">False</property>
-                                        <property name="position">-1</property>
-                                      </packing>
-                                    </child>
+                                    <property name="can_focus">True</property>
+                                    <property name="receives_default">True</property>
+                                    <property name="tooltip" translatable="yes">Or press '3'</property>
+                                    <property name="relief">none</property>
+                                    <signal name="clicked" 
handler="on_button_selector_start_encoder_clicked" swapped="no"/>
+                                    <accelerator key="3" signal="clicked"/>
                                     <child>
                                       <widget class="GtkImage" id="image_selector_start_encoder_gravitatory">
-                                        <property name="width_request">225</property>
-                                        <property name="height_request">261</property>
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
                                         <property name="stock">gtk-missing-image</property>
                                       </widget>
-                                      <packing>
-                                        <property name="expand">False</property>
-                                        <property name="fill">False</property>
-                                        <property name="position">0</property>
-                                      </packing>
                                     </child>
+                                  </widget>
+                                </child>
+                                <child>
+                                  <widget class="GtkLabel" id="label98">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="label" translatable="yes">page 1</property>
+                                  </widget>
+                                  <packing>
+                                    <property name="tab_fill">False</property>
+                                    <property name="type">tab</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <widget class="GtkViewport" id="viewport_selector_start_encoder">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">False</property>
                                     <child>
-                                      <widget class="GtkHBox" id="hbox123">
+                                      <widget class="GtkVBox" id="vbox_selector_start_encoder">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
+                                        <property name="border_width">12</property>
+                                        <property name="spacing">12</property>
                                         <child>
-                                          <widget class="GtkHBox" id="hbox124">
+                                          <widget class="GtkVBox" id="vbox44">
                                             <property name="visible">True</property>
                                             <property name="can_focus">False</property>
+                                            <property name="spacing">6</property>
                                             <child>
-                                              <widget class="GtkLabel" id="label66">
+                                              <widget class="GtkButton" id="button9">
+                                                <property name="height_request">75</property>
                                                 <property name="visible">True</property>
-                                                <property name="can_focus">False</property>
-                                                <property name="label">[</property>
+                                                <property name="can_focus">True</property>
+                                                <property name="receives_default">True</property>
+                                                <signal name="clicked" 
handler="on_button_selector_start_encoder_gravitatory_clicked" swapped="no"/>
+                                                <child>
+                                                  <widget class="GtkHBox" id="hbox115">
+                                                    <property name="visible">True</property>
+                                                    <property name="can_focus">False</property>
+                                                    <property name="spacing">10</property>
+                                                    <child>
+                                                      <widget class="GtkImage" 
id="image_mode_encoder_gravitatory">
+                                                        <property name="visible">True</property>
+                                                        <property name="can_focus">False</property>
+                                                        <property name="xpad">10</property>
+                                                        <property name="stock">gtk-missing-image</property>
+                                                        <property name="icon-size">2</property>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="fill">True</property>
+                                                        <property name="position">0</property>
+                                                      </packing>
+                                                    </child>
+                                                    <child>
+                                                      <widget class="GtkLabel" id="label107">
+                                                        <property name="visible">True</property>
+                                                        <property name="can_focus">False</property>
+                                                        <property name="label" 
translatable="yes">Gravitatory</property>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="fill">True</property>
+                                                        <property name="position">1</property>
+                                                      </packing>
+                                                    </child>
+                                                  </widget>
+                                                </child>
                                               </widget>
                                               <packing>
                                                 <property name="expand">False</property>
@@ -937,12 +1360,10 @@
                                               </packing>
                                             </child>
                                             <child>
-                                              <widget class="GtkLabel" id="label60">
+                                              <widget class="GtkLabel" 
id="label_selector_start_encoder_gravitatory">
                                                 <property name="visible">True</property>
                                                 <property name="can_focus">False</property>
-                                                <property name="xpad">8</property>
-                                                <property name="ypad">8</property>
-                                                <property name="label" translatable="yes">Gravitatory 
encoder</property>
+                                                <property name="label">Resistance is gravity</property>
                                               </widget>
                                               <packing>
                                                 <property name="expand">False</property>
@@ -950,18 +1371,6 @@
                                                 <property name="position">1</property>
                                               </packing>
                                             </child>
-                                            <child>
-                                              <widget class="GtkLabel" id="label71">
-                                                <property name="visible">True</property>
-                                                <property name="can_focus">False</property>
-                                                <property name="label">]</property>
-                                              </widget>
-                                              <packing>
-                                                <property name="expand">False</property>
-                                                <property name="fill">False</property>
-                                                <property name="position">2</property>
-                                              </packing>
-                                            </child>
                                           </widget>
                                           <packing>
                                             <property name="expand">True</property>
@@ -969,76 +1378,51 @@
                                             <property name="position">0</property>
                                           </packing>
                                         </child>
-                                      </widget>
-                                      <packing>
-                                        <property name="expand">False</property>
-                                        <property name="fill">False</property>
-                                        <property name="position">2</property>
-                                      </packing>
-                                    </child>
-                                  </widget>
-                                </child>
-                              </widget>
-                              <packing>
-                                <property name="expand">False</property>
-                                <property name="fill">False</property>
-                                <property name="position">2</property>
-                              </packing>
-                            </child>
-                            <child>
-                              <widget class="GtkButton" id="button_selector_start_encoder_inertial">
-                                <property name="visible">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="receives_default">True</property>
-                                <property name="tooltip" translatable="yes">Or press '4'</property>
-                                <property name="relief">none</property>
-                                <signal name="clicked" 
handler="on_button_selector_start_power_inertial_clicked" swapped="no"/>
-                                <accelerator key="4" signal="clicked"/>
-                                <child>
-                                  <widget class="GtkVBox" id="vbox41">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <child>
-                                      <widget class="GtkLabel" id="label39">
-                                        <property name="visible">True</property>
-                                        <property name="can_focus">False</property>
-                                        <property name="xpad">8</property>
-                                        <property name="ypad">8</property>
-                                        <property name="label" translatable="yes">Power</property>
-                                      </widget>
-                                      <packing>
-                                        <property name="expand">False</property>
-                                        <property name="fill">False</property>
-                                        <property name="position">-1</property>
-                                      </packing>
-                                    </child>
-                                    <child>
-                                      <widget class="GtkImage" id="image_selector_start_encoder_inertial">
-                                        <property name="width_request">225</property>
-                                        <property name="height_request">261</property>
-                                        <property name="visible">True</property>
-                                        <property name="can_focus">False</property>
-                                        <property name="stock">gtk-missing-image</property>
-                                      </widget>
-                                      <packing>
-                                        <property name="expand">False</property>
-                                        <property name="fill">False</property>
-                                        <property name="position">0</property>
-                                      </packing>
-                                    </child>
-                                    <child>
-                                      <widget class="GtkHBox" id="hbox105">
-                                        <property name="visible">True</property>
-                                        <property name="can_focus">False</property>
                                         <child>
-                                          <widget class="GtkHBox" id="hbox152">
+                                          <widget class="GtkVBox" id="vbox78">
                                             <property name="visible">True</property>
                                             <property name="can_focus">False</property>
+                                            <property name="spacing">6</property>
                                             <child>
-                                              <widget class="GtkLabel" id="label64">
+                                              <widget class="GtkButton" id="button10">
+                                                <property name="height_request">75</property>
                                                 <property name="visible">True</property>
-                                                <property name="can_focus">False</property>
-                                                <property name="label">[</property>
+                                                <property name="can_focus">True</property>
+                                                <property name="receives_default">True</property>
+                                                <signal name="clicked" 
handler="on_button_selector_start_encoder_inertial_clicked" swapped="no"/>
+                                                <child>
+                                                  <widget class="GtkHBox" id="hbox116">
+                                                    <property name="visible">True</property>
+                                                    <property name="can_focus">False</property>
+                                                    <property name="spacing">10</property>
+                                                    <child>
+                                                      <widget class="GtkImage" 
id="image_mode_encoder_inertial">
+                                                        <property name="visible">True</property>
+                                                        <property name="can_focus">False</property>
+                                                        <property name="xpad">10</property>
+                                                        <property name="stock">gtk-missing-image</property>
+                                                        <property name="icon-size">2</property>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="fill">True</property>
+                                                        <property name="position">0</property>
+                                                      </packing>
+                                                    </child>
+                                                    <child>
+                                                      <widget class="GtkLabel" id="label245">
+                                                        <property name="visible">True</property>
+                                                        <property name="can_focus">False</property>
+                                                        <property name="label" 
translatable="yes">Inertial</property>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="fill">True</property>
+                                                        <property name="position">1</property>
+                                                      </packing>
+                                                    </child>
+                                                  </widget>
+                                                </child>
                                               </widget>
                                               <packing>
                                                 <property name="expand">False</property>
@@ -1047,12 +1431,10 @@
                                               </packing>
                                             </child>
                                             <child>
-                                              <widget class="GtkLabel" id="label98">
+                                              <widget class="GtkLabel" 
id="label_selector_start_encoder_inertial">
                                                 <property name="visible">True</property>
                                                 <property name="can_focus">False</property>
-                                                <property name="xpad">8</property>
-                                                <property name="ypad">8</property>
-                                                <property name="label" translatable="yes">Inertial 
encoder</property>
+                                                <property name="label">Resistance is inertia</property>
                                               </widget>
                                               <packing>
                                                 <property name="expand">False</property>
@@ -1060,45 +1442,46 @@
                                                 <property name="position">1</property>
                                               </packing>
                                             </child>
-                                            <child>
-                                              <widget class="GtkLabel" id="label107">
-                                                <property name="visible">True</property>
-                                                <property name="can_focus">False</property>
-                                                <property name="label">]</property>
-                                              </widget>
-                                              <packing>
-                                                <property name="expand">False</property>
-                                                <property name="fill">False</property>
-                                                <property name="position">2</property>
-                                              </packing>
-                                            </child>
                                           </widget>
                                           <packing>
                                             <property name="expand">True</property>
                                             <property name="fill">False</property>
-                                            <property name="position">0</property>
+                                            <property name="position">1</property>
                                           </packing>
                                         </child>
                                       </widget>
-                                      <packing>
-                                        <property name="expand">False</property>
-                                        <property name="fill">False</property>
-                                        <property name="position">2</property>
-                                      </packing>
                                     </child>
                                   </widget>
+                                  <packing>
+                                    <property name="position">1</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <widget class="GtkLabel" id="label246">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="label" translatable="yes">page 2</property>
+                                  </widget>
+                                  <packing>
+                                    <property name="position">1</property>
+                                    <property name="tab_fill">False</property>
+                                    <property name="type">tab</property>
+                                  </packing>
                                 </child>
                               </widget>
                               <packing>
-                                <property name="expand">False</property>
-                                <property name="fill">False</property>
-                                <property name="position">3</property>
+                                <property name="left_attach">2</property>
+                                <property name="right_attach">3</property>
+                                <property name="top_attach">1</property>
+                                <property name="bottom_attach">2</property>
+                                <property name="x_options">GTK_EXPAND</property>
+                                <property name="y_options">GTK_EXPAND</property>
                               </packing>
                             </child>
                           </widget>
                           <packing>
                             <property name="expand">True</property>
-                            <property name="fill">True</property>
+                            <property name="fill">False</property>
                             <property name="position">0</property>
                           </packing>
                         </child>
@@ -1206,9 +1589,9 @@ Carles</property>
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
                                 <property name="receives_default">True</property>
-                                <property name="tooltip" translatable="yes">Or press '5'</property>
+                                <property name="tooltip" translatable="yes">Or press '4'</property>
                                 <signal name="clicked" handler="on_button_selector_start_other_clicked" 
swapped="no"/>
-                                <accelerator key="5" signal="clicked"/>
+                                <accelerator key="4" signal="clicked"/>
                                 <child>
                                   <widget class="GtkLabel" id="label51">
                                     <property name="visible">True</property>
@@ -1467,6 +1850,9 @@ Carles</property>
                                 <property name="position">3</property>
                               </packing>
                             </child>
+                            <child>
+                              <placeholder/>
+                            </child>
                           </widget>
                           <packing>
                             <property name="expand">False</property>
@@ -1474,6 +1860,114 @@ Carles</property>
                             <property name="position">1</property>
                           </packing>
                         </child>
+                        <child>
+                          <widget class="GtkHBox" id="hbox_start_test">
+                            <property name="can_focus">False</property>
+                            <child>
+                              <widget class="GtkAlignment" id="alignment_start_test_l">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <child>
+                                  <widget class="GtkButton" id="button_start_test_l">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="receives_default">True</property>
+                                    <child>
+                                      <widget class="GtkImage" id="image19">
+                                        <property name="visible">True</property>
+                                        <property name="can_focus">False</property>
+                                        <property name="stock">gtk-missing-image</property>
+                                      </widget>
+                                    </child>
+                                  </widget>
+                                </child>
+                              </widget>
+                              <packing>
+                                <property name="expand">False</property>
+                                <property name="fill">False</property>
+                                <property name="position">0</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <widget class="GtkAlignment" id="alignment_start_test_m">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <child>
+                                  <widget class="GtkButton" id="button_start_test_m">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="receives_default">True</property>
+                                    <child>
+                                      <widget class="GtkImage" id="image69">
+                                        <property name="visible">True</property>
+                                        <property name="can_focus">False</property>
+                                        <property name="stock">gtk-missing-image</property>
+                                      </widget>
+                                    </child>
+                                  </widget>
+                                </child>
+                              </widget>
+                              <packing>
+                                <property name="expand">False</property>
+                                <property name="fill">False</property>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <widget class="GtkAlignment" id="alignment_start_test_r">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <child>
+                                  <widget class="GtkButton" id="button_start_test_r">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="receives_default">True</property>
+                                    <child>
+                                      <widget class="GtkImage" id="image70">
+                                        <property name="visible">True</property>
+                                        <property name="can_focus">False</property>
+                                        <property name="stock">gtk-missing-image</property>
+                                      </widget>
+                                    </child>
+                                  </widget>
+                                </child>
+                              </widget>
+                              <packing>
+                                <property name="expand">False</property>
+                                <property name="fill">False</property>
+                                <property name="position">2</property>
+                              </packing>
+                            </child>
+                          </widget>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">2</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <widget class="GtkHBox" id="hbox76">
+                            <property name="can_focus">False</property>
+                            <child>
+                              <widget class="GtkButton" id="button2">
+                                <property name="label">reset</property>
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="receives_default">True</property>
+                              </widget>
+                              <packing>
+                                <property name="expand">True</property>
+                                <property name="fill">False</property>
+                                <property name="position">0</property>
+                              </packing>
+                            </child>
+                          </widget>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">3</property>
+                          </packing>
+                        </child>
                       </widget>
                       <packing>
                         <property name="expand">True</property>
@@ -17761,6 +18255,30 @@ Concentric</property>
                                                             <child>
                                                             <placeholder/>
                                                             </child>
+                                                            <child>
+                                                            <placeholder/>
+                                                            </child>
+                                                            <child>
+                                                            <placeholder/>
+                                                            </child>
+                                                            <child>
+                                                            <placeholder/>
+                                                            </child>
+                                                            <child>
+                                                            <placeholder/>
+                                                            </child>
+                                                            <child>
+                                                            <placeholder/>
+                                                            </child>
+                                                            <child>
+                                                            <placeholder/>
+                                                            </child>
+                                                            <child>
+                                                            <placeholder/>
+                                                            </child>
+                                                            <child>
+                                                            <placeholder/>
+                                                            </child>
                                                             </widget>
                                                             <packing>
                                                             <property name="expand">False</property>
@@ -22585,6 +23103,30 @@ by you</property>
                         <child>
                           <placeholder/>
                         </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
                       </widget>
                     </child>
                   </widget>
@@ -23890,6 +24432,30 @@ by you</property>
                         <child>
                           <placeholder/>
                         </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
                       </widget>
                     </child>
                   </widget>
@@ -25687,6 +26253,30 @@ by you</property>
               <placeholder/>
             </child>
             <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
               <widget class="GtkButton" id="button_video_url">
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
@@ -26541,6 +27131,30 @@ by you</property>
             <child>
               <placeholder/>
             </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <placeholder/>
+            </child>
           </widget>
           <packing>
             <property name="expand">True</property>
@@ -39899,6 +40513,150 @@ options</property>
                             <child>
                               <placeholder/>
                             </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
                           </widget>
                         </child>
                       </widget>
@@ -43082,6 +43840,102 @@ To differentiate between male and female, use the values 1/0, or m/f, or M/F on
                     <child>
                       <placeholder/>
                     </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
                   </widget>
                 </child>
               </widget>
@@ -44181,30 +45035,6 @@ To differentiate between male and female, use the values 1/0, or m/f, or M/F on
                                       <placeholder/>
                                     </child>
                                     <child>
-                                      <placeholder/>
-                                    </child>
-                                    <child>
-                                      <placeholder/>
-                                    </child>
-                                    <child>
-                                      <placeholder/>
-                                    </child>
-                                    <child>
-                                      <placeholder/>
-                                    </child>
-                                    <child>
-                                      <placeholder/>
-                                    </child>
-                                    <child>
-                                      <placeholder/>
-                                    </child>
-                                    <child>
-                                      <placeholder/>
-                                    </child>
-                                    <child>
-                                      <placeholder/>
-                                    </child>
-                                    <child>
                                       <widget class="GtkLabel" id="label218">
                                         <property name="visible">True</property>
                                         <property name="can_focus">False</property>
@@ -45509,6 +46339,30 @@ To differentiate between male and female, use the values 1/0, or m/f, or M/F on
                                     <child>
                                       <placeholder/>
                                     </child>
+                                    <child>
+                                      <placeholder/>
+                                    </child>
+                                    <child>
+                                      <placeholder/>
+                                    </child>
+                                    <child>
+                                      <placeholder/>
+                                    </child>
+                                    <child>
+                                      <placeholder/>
+                                    </child>
+                                    <child>
+                                      <placeholder/>
+                                    </child>
+                                    <child>
+                                      <placeholder/>
+                                    </child>
+                                    <child>
+                                      <placeholder/>
+                                    </child>
+                                    <child>
+                                      <placeholder/>
+                                    </child>
                                   </widget>
                                 </child>
                               </widget>
@@ -50397,6 +51251,30 @@ Other</property>
                         <child>
                           <placeholder/>
                         </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
                       </widget>
                       <packing>
                         <property name="left_attach">2</property>
@@ -51366,6 +52244,30 @@ Other</property>
                     <child>
                       <placeholder/>
                     </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
                   </widget>
                 </child>
               </widget>
@@ -52350,6 +53252,30 @@ Other</property>
                     <child>
                       <placeholder/>
                     </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
                   </widget>
                 </child>
               </widget>
diff --git a/src/gui/chronojump.cs b/src/gui/chronojump.cs
index 6047cf9..9cedd21 100644
--- a/src/gui/chronojump.cs
+++ b/src/gui/chronojump.cs
@@ -69,22 +69,37 @@ public partial class ChronoJumpWindow
        
        [Widget] Gtk.Label label_version;
        [Widget] Gtk.Image image_logo;
+       [Widget] Gtk.Button button_selector_start_jumps;
+       [Widget] Gtk.Button button_selector_start_runs;
+       [Widget] Gtk.Button button_selector_start_encoder;
+       [Widget] Gtk.Button button_selector_start_other;
        [Widget] Gtk.Image image_selector_start_jumps;
        [Widget] Gtk.Image image_selector_start_runs;
        [Widget] Gtk.Image image_selector_start_encoder_gravitatory;
-       [Widget] Gtk.Image image_selector_start_encoder_inertial;
+       //[Widget] Gtk.Image image_selector_start_encoder_inertial;
+       
+       [Widget] Gtk.Notebook notebook_selector_start_jumps;
+       [Widget] Gtk.Viewport viewport_selector_start_jumps;
+       [Widget] Gtk.Label label_selector_start_jumps_simple;
+       [Widget] Gtk.Label label_selector_start_jumps_reactive;
+       [Widget] Gtk.Notebook notebook_selector_start_runs;
+       [Widget] Gtk.Viewport viewport_selector_start_runs;
+       [Widget] Gtk.Label label_selector_start_runs_simple;
+       [Widget] Gtk.Label label_selector_start_runs_intervallic;
+       [Widget] Gtk.Notebook notebook_selector_start_encoder;
+       [Widget] Gtk.Viewport viewport_selector_start_encoder;
+       [Widget] Gtk.Label label_selector_start_encoder_gravitatory;
+       [Widget] Gtk.Label label_selector_start_encoder_inertial;
        
        [Widget] Gtk.RadioButton radio_mode_reaction_times_small;
        [Widget] Gtk.RadioButton radio_mode_pulses_small;
        [Widget] Gtk.RadioButton radio_mode_multi_chronopic_small;
        [Widget] Gtk.RadioButton radio_mode_encoder_capture_small;
        [Widget] Gtk.RadioButton radio_mode_encoder_analyze_small;
-       /*
        [Widget] Gtk.Image image_mode_jumps_small;
        [Widget] Gtk.Image image_mode_jumps_reactive_small;
        [Widget] Gtk.Image image_mode_runs_small;
        [Widget] Gtk.Image image_mode_runs_intervallic_small;
-       */
        [Widget] Gtk.Image image_mode_reaction_times_small;
        [Widget] Gtk.Image image_mode_pulses_small;
        [Widget] Gtk.Image image_mode_multi_chronopic_small;
@@ -634,8 +649,9 @@ public partial class ChronoJumpWindow
                string buildDate = " (b)";
                label_version.Text = progVersion + buildDate;
                LogB.Information("Build date:" + buildDate);
-       }
        
+               //moveStartTestInitial();
+       }
 
 
 /*
@@ -701,8 +717,18 @@ public partial class ChronoJumpWindow
                /*
                 * gui for small screens
                 */
+               viewport_selector_start_jumps.ModifyBg(StateType.Normal, new Gdk.Color(0x0b,0x48,0x6b));
+               label_selector_start_jumps_simple.ModifyFg(StateType.Normal, new Gdk.Color(0xff,0xff,0xff));
+               label_selector_start_jumps_reactive.ModifyFg(StateType.Normal, new Gdk.Color(0xff,0xff,0xff));
+               
+               viewport_selector_start_runs.ModifyBg(StateType.Normal, new Gdk.Color(0x3b,0x86,0x86));
+               label_selector_start_runs_simple.ModifyFg(StateType.Normal, new Gdk.Color(0xff,0xff,0xff));
+               label_selector_start_runs_intervallic.ModifyFg(StateType.Normal, new 
Gdk.Color(0xff,0xff,0xff));
+               
+               viewport_selector_start_encoder.ModifyBg(StateType.Normal, new Gdk.Color(0x79,0xbd,0x98));
+               label_selector_start_encoder_gravitatory.ModifyFg(StateType.Normal, new 
Gdk.Color(0xff,0xff,0xff));
+               label_selector_start_encoder_inertial.ModifyFg(StateType.Normal, new 
Gdk.Color(0xff,0xff,0xff));
 
-               /*
                pixbuf = new Pixbuf (null, Util.GetImagePath(false) + Constants.FileNameJumps);
                image_mode_jumps_small.Pixbuf = pixbuf;
                pixbuf = new Pixbuf (null, Util.GetImagePath(false) + Constants.FileNameJumpsRJ);
@@ -711,7 +737,7 @@ public partial class ChronoJumpWindow
                image_mode_runs_small.Pixbuf = pixbuf;
                pixbuf = new Pixbuf (null, Util.GetImagePath(false) + Constants.FileNameRunsInterval);
                image_mode_runs_intervallic_small.Pixbuf = pixbuf;
-               */
+               
                pixbuf = new Pixbuf (null, Util.GetImagePath(false) + Constants.FileNameReactionTime);
                image_mode_reaction_times_small.Pixbuf = pixbuf;
                pixbuf = new Pixbuf (null, Util.GetImagePath(false) + Constants.FileNamePulse);
@@ -904,8 +930,8 @@ public partial class ChronoJumpWindow
                image_selector_start_runs.Pixbuf = pixbuf;
                pixbuf = new Pixbuf (null, Util.GetImagePath(false) + 
Constants.FileNameSelectorEncoderGravitatory);
                image_selector_start_encoder_gravitatory.Pixbuf = pixbuf;
-               pixbuf = new Pixbuf (null, Util.GetImagePath(false) + 
Constants.FileNameSelectorEncoderInertial);
-               image_selector_start_encoder_inertial.Pixbuf = pixbuf;
+               //pixbuf = new Pixbuf (null, Util.GetImagePath(false) + 
Constants.FileNameSelectorEncoderInertial);
+               //image_selector_start_encoder_inertial.Pixbuf = pixbuf;
 
                pixbuf = new Pixbuf (null, Util.GetImagePath(false) + Constants.FileNameLogo);
                image_logo.Pixbuf = pixbuf;
@@ -3046,7 +3072,9 @@ public partial class ChronoJumpWindow
         * menu test selectors
         */
 
-       private void on_menuitem_mode_main_menu_activate (object o, EventArgs args) {
+       private void on_menuitem_mode_main_menu_activate (object o, EventArgs args) 
+       {
+               reset_buttons_selector_start();
                notebook_start.CurrentPage = 0;
                
                //don't show menu bar on start page
@@ -3419,6 +3447,20 @@ public partial class ChronoJumpWindow
                        return Constants.Menuitem_modes.OTHER;
        }
 
+       private void reset_buttons_selector_start_from_gui(object o, EventArgs args) {
+               reset_buttons_selector_start();
+       }
+       private void reset_buttons_selector_start()
+       {
+               button_selector_start_jumps.Sensitive = true;
+               button_selector_start_runs.Sensitive = true;
+               button_selector_start_encoder.Sensitive = true;
+               button_selector_start_other.Sensitive = true;
+               notebook_selector_start_jumps.CurrentPage = 0;
+               notebook_selector_start_runs.CurrentPage = 0;
+               notebook_selector_start_encoder.CurrentPage = 0;
+       }
+
        private void on_radio_menuitem_mode_activate(object o, EventArgs args) 
        {
                //togglebutton sends signal two times (deactivate/activate), just get the good signal
@@ -3429,6 +3471,13 @@ public partial class ChronoJumpWindow
                select_menuitem_mode_toggled(getMenuItemMode());
        }
 
+       private void on_button_selector_start_jumps_clicked(object o, EventArgs args) 
+       {
+               button_selector_start_runs.Sensitive = false;
+               button_selector_start_encoder.Sensitive = false;
+               button_selector_start_other.Sensitive = false;
+               notebook_selector_start_jumps.CurrentPage = 1;
+       }
        private void on_button_selector_start_jumps_simple_clicked(object o, EventArgs args) 
        {
                if(radio_menuitem_mode_jumps_simple.Active) {
@@ -3445,7 +3494,15 @@ public partial class ChronoJumpWindow
                else
                        radio_menuitem_mode_jumps_reactive.Active = true;
        }
-       private void on_button_selector_start_runs_simple_clicked(object o, EventArgs args) 
+       
+       private void on_button_selector_start_runs_clicked(object o, EventArgs args) 
+       {
+               button_selector_start_jumps.Sensitive = false;
+               button_selector_start_encoder.Sensitive = false;
+               button_selector_start_other.Sensitive = false;
+               notebook_selector_start_runs.CurrentPage = 1;
+       }
+       private void on_button_selector_start_runs_simple_clicked(object o, EventArgs args)
        {
                if(radio_menuitem_mode_runs_simple.Active)
                        select_menuitem_mode_toggled(Constants.Menuitem_modes.RUNSSIMPLE);
@@ -3459,20 +3516,29 @@ public partial class ChronoJumpWindow
                else
                        radio_menuitem_mode_runs_intervallic.Active = true;
        }
-       private void on_button_selector_start_power_gravitatory_clicked(object o, EventArgs args) 
+       
+       private void on_button_selector_start_encoder_clicked(object o, EventArgs args) 
+       {
+               button_selector_start_jumps.Sensitive = false;
+               button_selector_start_runs.Sensitive = false;
+               button_selector_start_other.Sensitive = false;
+               notebook_selector_start_encoder.CurrentPage = 1;
+       }
+       private void on_button_selector_start_encoder_gravitatory_clicked(object o, EventArgs args) 
        {
                if(radio_menuitem_mode_power_gravitatory.Active)
                        select_menuitem_mode_toggled(Constants.Menuitem_modes.POWERGRAVITATORY);
                else
                        radio_menuitem_mode_power_gravitatory.Active = true;
        }
-       private void on_button_selector_start_power_inertial_clicked(object o, EventArgs args) 
+       private void on_button_selector_start_encoder_inertial_clicked(object o, EventArgs args) 
        {
                if(radio_menuitem_mode_power_inertial.Active)
                        select_menuitem_mode_toggled(Constants.Menuitem_modes.POWERINERTIAL);
                else
                        radio_menuitem_mode_power_inertial.Active = true;
        }
+       
        private void on_button_selector_start_other_clicked(object o, EventArgs args) 
        {
                if(radio_menuitem_mode_other.Active)
diff --git a/src/gui/movingStartWindow.cs b/src/gui/movingStartWindow.cs
new file mode 100644
index 0000000..e9eb229
--- /dev/null
+++ b/src/gui/movingStartWindow.cs
@@ -0,0 +1,173 @@
+/*
+ * This file is part of ChronoJump
+ *
+ * Chronojump is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *   the Free Software Foundation; either version 2 of the License, or   
+ *    (at your option) any later version.
+ *    
+ * Chronojump is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
+ *    GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ *
+ * Copyright (C) 2004-2016   Xavier de Blas <xaviblas gmail com> 
+ */
+
+
+using System;
+using Gtk;
+
+/*
+ * Unused because moving doesn't look nice on big buttons, store here for the future
+ *
+public partial class ChronoJumpWindow 
+{
+       [Widget] Gtk.HBox hbox_start_test;
+       [Widget] Gtk.Alignment alignment_start_test_l;
+       [Widget] Gtk.Alignment alignment_start_test_m;
+       [Widget] Gtk.Alignment alignment_start_test_r;
+       [Widget] Gtk.Button button_start_test_l;
+       [Widget] Gtk.Button button_start_test_m;
+       [Widget] Gtk.Button button_start_test_r;
+
+       MovingStartButton msb_l;        
+       MovingStartButton msb_m;        
+       MovingStartButton msb_r;        
+       int msb_l_pos;
+       int msb_m_pos;
+       int msb_r_pos;
+       bool timerStartTest_l;
+       bool timerStartTest_m;
+       bool timerStartTest_r;
+
+       private void moveStartTestInitial() 
+       {
+               int emptySpace = hbox_start_test.Allocation.Width - 
+                       (button_start_test_l.Allocation.Width + button_start_test_m.Allocation.Width + 
button_start_test_r.Allocation.Width);
+               int leftSpace = Convert.ToInt32(emptySpace / 4); //4: left, between 1-2, between 2-3, right
+               msb_l_pos = leftSpace;
+               msb_m_pos = leftSpace;
+               msb_r_pos = leftSpace;
+               alignment_start_test_l.SetPadding(0,0,Convert.ToUInt32(msb_l_pos),0);
+               alignment_start_test_m.SetPadding(0,0,Convert.ToUInt32(msb_m_pos),0);
+               alignment_start_test_r.SetPadding(0,0,Convert.ToUInt32(msb_r_pos),0);
+       }
+       
+       private void on_alignment_start_l_clicked(object o, EventArgs args)
+       {
+               msb_m = new MovingStartButton(msb_m_pos, 
+                               //600, 
+                               hbox_start_test.Allocation.Width - button_start_test_m.Allocation.Width - 
button_start_test_r.Allocation.Width,
+                               MovingStartButton.Dirs.R);
+               timerStartTest_l = true;
+               GLib.Timeout.Add(1, new GLib.TimeoutHandler(OnTimerStartTest_l));
+       }
+       //moving m to right will move also r, make him move to left until they collide
+       bool OnTimerStartTest_l()
+       {
+               if (! timerStartTest_l)
+                       return false;
+
+               if(msb_m != null)
+                       msb_m.Next();
+                       
+               if(msb_m.Moving) {
+                       msb_m_pos = msb_m.Pos;
+
+                       if( msb_r_pos - msb_m.Speed >= 1)
+                               msb_r_pos -= msb_m.Speed;
+                       else
+                               msb_r_pos = 1;
+
+                       alignment_start_test_m.SetPadding(0,0,Convert.ToUInt32(msb_m_pos),0);
+                       alignment_start_test_r.SetPadding(0,0,Convert.ToUInt32(msb_r_pos),0);
+
+                       LogB.Information("mpos: " + msb_m.Pos + "; mspeed: " + msb_m.Speed + "; rpos: " + 
msb_r_pos);
+                       return true;
+               } else
+                       return false;
+       }
+       
+       private void on_alignment_start_m_clicked(object o, EventArgs args)
+       {
+               msb_l = new MovingStartButton(msb_l_pos, 1, MovingStartButton.Dirs.L);
+               timerStartTest_m = true;
+               GLib.Timeout.Add(1, new GLib.TimeoutHandler(OnTimerStartTest_m));
+       }
+       //this will move l left, m right to maintain position, r right to the end
+       bool OnTimerStartTest_m()
+       {
+               if (! timerStartTest_m)
+                       return false;
+
+               if(msb_l != null)
+                       msb_l.Next();
+                       
+               if(msb_l.Moving) {
+                       msb_l_pos = msb_l.Pos;
+
+                       msb_m_pos += msb_l.Speed;
+                       msb_r_pos += msb_l.Speed;
+
+                       alignment_start_test_l.SetPadding(0,0,Convert.ToUInt32(msb_l_pos),0);
+                       alignment_start_test_m.SetPadding(0,0,Convert.ToUInt32(msb_m_pos),0);
+                       alignment_start_test_r.SetPadding(0,0,Convert.ToUInt32(msb_r_pos),0);
+
+                       return true;
+               } else
+                       return false;
+       }
+       
+       private void on_alignment_start_r_clicked(object o, EventArgs args)
+       {
+               msb_m = new MovingStartButton(msb_m_pos, -200, MovingStartButton.Dirs.L);
+               timerStartTest_r = true;
+               GLib.Timeout.Add(1, new GLib.TimeoutHandler(OnTimerStartTest_r));
+       }
+       //moving m to left but when colliding with l, move it also
+       bool OnTimerStartTest_r()
+       {
+               if (! timerStartTest_r)
+                       return false;
+
+               if(msb_m != null)
+                       msb_m.Next();
+                       
+               if(msb_m.Moving) {
+                       int msb_l_pos_old = msb_l_pos;
+                       int msb_m_pos_old = msb_m_pos;
+
+                       msb_m_pos = msb_m.Pos;
+
+                       if(msb_m_pos <= 1) {
+                               msb_m_pos = 1;
+                               msb_l_pos -= msb_m.Speed;
+                       }
+
+                       if(msb_l_pos <= 0) {
+                               timerStartTest_r = false;
+                               return false;
+                       }
+                       
+                       msb_r_pos += (msb_l_pos_old - msb_l_pos) + (msb_m_pos_old - msb_m_pos);
+                       
+                       alignment_start_test_l.SetPadding(0,0,Convert.ToUInt32(msb_l_pos),0);
+                       alignment_start_test_m.SetPadding(0,0,Convert.ToUInt32(msb_m_pos),0);
+                       alignment_start_test_r.SetPadding(0,0,Convert.ToUInt32(msb_r_pos),0);
+
+                       return true;
+               } else
+                       return false;
+       }
+       
+       private void on_alignment_start_reset_clicked(object o, EventArgs args)
+       {
+               moveStartTestInitial();
+       }
+}
+*/
diff --git a/src/gui/usefulObjects.cs b/src/gui/usefulObjects.cs
index 4d1e828..a156b02 100644
--- a/src/gui/usefulObjects.cs
+++ b/src/gui/usefulObjects.cs
@@ -321,6 +321,56 @@ public class UpdateProgressBar {
        ~UpdateProgressBar() {}
 }
 
+//start window buttons
+public class MovingStartButton
+{
+       public bool Moving;
+
+       private double pos;
+       private double speed;
+       private int end;
+       public enum Dirs { R, L }
+       private Dirs dir;
+
+
+       public MovingStartButton(int start, int end, Dirs dir)
+       {
+               pos = start;
+               this.end = end;
+               this.dir = dir;
+               Moving = true;
+       }
+       
+       public bool Next()
+       {
+               if(dir == Dirs.R) {
+                       if( pos >= end )
+                               Moving = false;
+                       else {
+                               speed = Math.Ceiling(Math.Abs(end-pos)/25.0);
+                               pos += speed;
+                       }
+               } else {
+                       if( pos <= end )
+                               Moving = false;
+                       else {
+                               speed = Math.Ceiling(Math.Abs(end-pos)/25.0);
+                               pos -= speed;
+                       }
+               }
+
+               //LogB.Information("pos: " + pos + "; speed: " + speed);
+               return true;
+       }
+
+       public int Pos {
+               get { return Convert.ToInt32(pos); }
+       }
+       public int Speed {
+               get { return Convert.ToInt32(speed); }
+       }
+}
+
 //for animate last jump, run, pulse on a bar graph
 public class MovingBar 
 {


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