[chronojump] gui: done: reaction time and pulse



commit 3667402f712c30b0a885225e28ecea4a411d7e9f
Author: Xavier de Blas <xaviblas gmail com>
Date:   Thu Mar 31 12:52:12 2011 +0200

    gui: done: reaction time and pulse

 glade/chronojump.glade  |  719 ++++++++++++++++++++++++++---------------------
 src/gui/chronojump.cs   |  103 +++-----
 src/gui/eventExecute.cs |   11 +
 src/gui/pulse.cs        |  155 ++++-------
 src/gui/reactionTime.cs |   14 +-
 5 files changed, 512 insertions(+), 490 deletions(-)
---
diff --git a/glade/chronojump.glade b/glade/chronojump.glade
index 43ccf92..b44ddaa 100644
--- a/glade/chronojump.glade
+++ b/glade/chronojump.glade
@@ -5628,222 +5628,7 @@ suitable for agility tests)</property>
     <property name="type_hint">dialog</property>
     <signal name="delete_event" handler="on_delete_event"/>
     <child>
-      <widget class="GtkVBox" id="vbox72">
-        <property name="visible">True</property>
-        <property name="spacing">6</property>
-        <child>
-          <widget class="GtkLabel" id="label207">
-            <property name="visible">True</property>
-            <property name="label" translatable="yes">Extra data for this pulse</property>
-          </widget>
-          <packing>
-            <property name="expand">False</property>
-            <property name="fill">False</property>
-            <property name="position">0</property>
-          </packing>
-        </child>
-        <child>
-          <widget class="GtkFrame" id="frame15">
-            <property name="visible">True</property>
-            <property name="label_xalign">0</property>
-            <property name="shadow_type">none</property>
-            <child>
-              <widget class="GtkAlignment" id="alignment56">
-                <property name="visible">True</property>
-                <property name="top_padding">2</property>
-                <property name="left_padding">12</property>
-                <child>
-                  <widget class="GtkTable" id="table29">
-                    <property name="visible">True</property>
-                    <property name="n_rows">2</property>
-                    <property name="n_columns">2</property>
-                    <property name="column_spacing">6</property>
-                    <property name="row_spacing">6</property>
-                    <child>
-                      <widget class="GtkLabel" id="label211">
-                        <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="label" translatable="yes">seconds</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"></property>
-                      </packing>
-                    </child>
-                    <child>
-                      <widget class="GtkLabel" id="label213">
-                        <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="label" translatable="yes">ppm</property>
-                      </widget>
-                      <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
-                        <property name="x_options">GTK_FILL</property>
-                        <property name="y_options"></property>
-                      </packing>
-                    </child>
-                    <child>
-                      <widget class="GtkSpinButton" id="spinbutton_pulse_step">
-                        <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="adjustment">1 0 100 0.0099999997764800008 1 1</property>
-                        <property name="digits">3</property>
-                        <property name="numeric">True</property>
-                        <property name="update_policy">if-valid</property>
-                        <signal name="changed" handler="on_spinbutton_pulse_step_changed"/>
-                      </widget>
-                      <packing>
-                        <property name="x_options">GTK_FILL</property>
-                        <property name="y_options"></property>
-                      </packing>
-                    </child>
-                    <child>
-                      <widget class="GtkSpinButton" id="spinbutton_ppm">
-                        <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="adjustment">60 0 1000 1 1 1</property>
-                        <property name="digits">2</property>
-                        <property name="numeric">True</property>
-                        <property name="update_policy">if-valid</property>
-                        <signal name="changed" handler="on_spinbutton_ppm_changed"/>
-                      </widget>
-                      <packing>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
-                        <property name="x_options">GTK_FILL</property>
-                        <property name="y_options"></property>
-                      </packing>
-                    </child>
-                  </widget>
-                </child>
-              </widget>
-            </child>
-            <child>
-              <widget class="GtkLabel" id="label212">
-                <property name="visible">True</property>
-                <property name="label" translatable="yes">&lt;b&gt;pulse step&lt;/b&gt;</property>
-                <property name="use_markup">True</property>
-              </widget>
-              <packing>
-                <property name="type">label_item</property>
-              </packing>
-            </child>
-          </widget>
-          <packing>
-            <property name="position">1</property>
-          </packing>
-        </child>
-        <child>
-          <widget class="GtkHSeparator" id="hseparator11">
-            <property name="visible">True</property>
-          </widget>
-          <packing>
-            <property name="expand">False</property>
-            <property name="position">2</property>
-          </packing>
-        </child>
-        <child>
-          <widget class="GtkCheckButton" id="checkbutton_unlimited">
-            <property name="label" translatable="yes">unlimited</property>
-            <property name="visible">True</property>
-            <property name="can_focus">True</property>
-            <property name="receives_default">False</property>
-            <property name="tooltip" translatable="yes">unlimited pulses</property>
-            <property name="use_underline">True</property>
-            <property name="draw_indicator">True</property>
-            <signal name="clicked" handler="on_checkbutton_unlimited_clicked"/>
-          </widget>
-          <packing>
-            <property name="expand">False</property>
-            <property name="fill">False</property>
-            <property name="position">3</property>
-          </packing>
-        </child>
-        <child>
-          <widget class="GtkHBox" id="hbox_total_pulses">
-            <property name="visible">True</property>
-            <property name="spacing">6</property>
-            <child>
-              <widget class="GtkLabel" id="label208">
-                <property name="visible">True</property>
-                <property name="xalign">0</property>
-                <property name="label" translatable="yes">total pulses</property>
-              </widget>
-              <packing>
-                <property name="expand">False</property>
-                <property name="fill">False</property>
-                <property name="position">0</property>
-              </packing>
-            </child>
-            <child>
-              <widget class="GtkSpinButton" id="spinbutton_total_pulses">
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="adjustment">10 1 1000 1 10 10</property>
-                <property name="snap_to_ticks">True</property>
-                <property name="numeric">True</property>
-                <property name="update_policy">if-valid</property>
-              </widget>
-              <packing>
-                <property name="expand">False</property>
-                <property name="position">1</property>
-              </packing>
-            </child>
-          </widget>
-          <packing>
-            <property name="position">4</property>
-          </packing>
-        </child>
-        <child>
-          <widget class="GtkHButtonBox" id="hbuttonbox28">
-            <property name="visible">True</property>
-            <property name="layout_style">spread</property>
-            <child>
-              <widget class="GtkButton" id="button_cancel">
-                <property name="label">gtk-cancel</property>
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="can_default">True</property>
-                <property name="receives_default">False</property>
-                <property name="use_stock">True</property>
-                <signal name="clicked" handler="on_button_cancel_clicked"/>
-              </widget>
-              <packing>
-                <property name="expand">False</property>
-                <property name="fill">False</property>
-                <property name="position">0</property>
-              </packing>
-            </child>
-            <child>
-              <widget class="GtkButton" id="button_accept">
-                <property name="label">gtk-ok</property>
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="can_default">True</property>
-                <property name="receives_default">False</property>
-                <property name="use_stock">True</property>
-                <signal name="clicked" handler="on_button_accept_clicked"/>
-              </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="fill">False</property>
-            <property name="padding">10</property>
-            <property name="position">5</property>
-          </packing>
-        </child>
-      </widget>
+      <placeholder/>
     </child>
   </widget>
   <widget class="GtkDialog" id="dialog_calendar">
@@ -13593,40 +13378,6 @@ by you</property>
                 <child>
                   <widget class="GtkMenu" id="menu_other_menu">
                     <child>
-                      <widget class="GtkMenuItem" id="menuitem_reaction_time">
-                        <property name="visible">True</property>
-                        <property name="label" translatable="yes">Reaction time</property>
-                        <property name="use_underline">True</property>
-                        <signal name="activate" handler="on_reaction_time_activate"/>
-                      </widget>
-                    </child>
-                    <child>
-                      <widget class="GtkSeparatorMenuItem" id="separador16">
-                        <property name="visible">True</property>
-                      </widget>
-                    </child>
-                    <child>
-                      <widget class="GtkMenuItem" id="menuitem_pulse_free">
-                        <property name="visible">True</property>
-                        <property name="label" translatable="yes">Free pulse</property>
-                        <property name="use_underline">True</property>
-                        <signal name="activate" handler="on_button_pulse_free_activate"/>
-                      </widget>
-                    </child>
-                    <child>
-                      <widget class="GtkMenuItem" id="menuitem_pulse_custom">
-                        <property name="visible">True</property>
-                        <property name="label" translatable="yes">Custom pulse</property>
-                        <property name="use_underline">True</property>
-                        <signal name="activate" handler="on_button_pulse_custom_activate"/>
-                      </widget>
-                    </child>
-                    <child>
-                      <widget class="GtkSeparatorMenuItem" id="separador22">
-                        <property name="visible">True</property>
-                      </widget>
-                    </child>
-                    <child>
                       <widget class="GtkMenuItem" id="menuitem_multi_chronopic_start">
                         <property name="visible">True</property>
                         <property name="label" translatable="yes">Multi Chronopic start</property>
@@ -14083,7 +13834,7 @@ by you</property>
                       <widget class="GtkViewport" id="viewport_mode">
                         <property name="visible">True</property>
                         <property name="resize_mode">queue</property>
-                        <property name="hadjustment">0 0 730 73 657 730</property>
+                        <property name="hadjustment">0 0 738 73.799999999999997 664.20000000000005 738</property>
                         <property name="shadow_type">out</property>
                         <child>
                           <widget class="GtkHButtonBox" id="hbuttonbox2">
@@ -15884,82 +15635,212 @@ Chronopic</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkHBox" id="hbox142">
+                                  <widget class="GtkFrame" id="frame8">
                                     <property name="visible">True</property>
+                                    <property name="label_xalign">0</property>
+                                    <property name="label_yalign">0.69999998807907104</property>
+                                    <property name="shadow_type">out</property>
                                     <child>
-                                      <widget class="GtkAlignment" id="alignment_reaction_time_execute">
+                                      <widget class="GtkAlignment" id="alignment4">
                                         <property name="visible">True</property>
+                                        <property name="left_padding">6</property>
                                         <child>
-                                          <widget class="GtkButton" id="button_reaction_time">
-                                            <property name="label" translatable="yes">Execute reaction time</property>
+                                          <widget class="GtkVBox" id="vbox49">
                                             <property name="visible">True</property>
-                                            <property name="can_focus">True</property>
-                                            <property name="receives_default">True</property>
-                                            <property name="use_underline">True</property>
-                                            <signal name="clicked" handler="on_reaction_time_activate"/>
-                                            <signal name="enter" handler="on_button_enter"/>
-                                          </widget>
-                                        </child>
-                                      </widget>
-                                      <packing>
-                                        <property name="expand">False</property>
-                                        <property name="fill">False</property>
-                                        <property name="position">0</property>
-                                      </packing>
-                                    </child>
-                                  </widget>
-                                  <packing>
-                                    <property name="position">4</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <widget class="GtkLabel" id="label5">
-                                    <property name="visible">True</property>
-                                    <property name="label" translatable="yes">5</property>
-                                  </widget>
-                                  <packing>
-                                    <property name="position">4</property>
-                                    <property name="tab_fill">False</property>
-                                    <property name="type">tab</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <widget class="GtkHBox" id="hbox_pulses">
-                                    <property name="visible">True</property>
-                                    <child>
-                                      <widget class="GtkButton" id="button_pulse_free">
-                                        <property name="label" translatable="yes">Free</property>
-                                        <property name="visible">True</property>
-                                        <property name="can_focus">True</property>
-                                        <property name="receives_default">True</property>
-                                        <property name="has_tooltip">True</property>
-                                        <property name="tooltip" translatable="yes">start managing pulses freely</property>
-                                        <property name="use_underline">True</property>
-                                        <signal name="clicked" handler="on_button_pulse_free_activate"/>
-                                        <signal name="enter" handler="on_button_enter"/>
-                                      </widget>
-                                      <packing>
-                                        <property name="expand">False</property>
-                                        <property name="fill">False</property>
-                                        <property name="position">0</property>
-                                      </packing>
-                                    </child>
+                                            <child>
+                                              <widget class="GtkHBox" id="hbox60">
+                                                <property name="visible">True</property>
+                                                <child>
+                                                  <widget class="GtkRadioButton" id="extra_window_radio_reaction_time">
+                                                    <property name="visible">True</property>
+                                                    <property name="can_focus">True</property>
+                                                    <property name="receives_default">False</property>
+                                                    <property name="relief">none</property>
+                                                    <property name="active">True</property>
+                                                    <property name="draw_indicator">False</property>
+                                                    <child>
+                                                      <widget class="GtkLabel" id="label_extra_window_radio_reaction_time">
+                                                        <property name="visible">True</property>
+                                                        <property name="label" translatable="yes">Execute reaction time</property>
+                                                      </widget>
+                                                    </child>
+                                                  </widget>
+                                                  <packing>
+                                                    <property name="expand">False</property>
+                                                    <property name="position">0</property>
+                                                  </packing>
+                                                </child>
+                                                <child>
+                                                  <placeholder/>
+                                                </child>
+                                              </widget>
+                                              <packing>
+                                                <property name="position">0</property>
+                                              </packing>
+                                            </child>
+                                            <child>
+                                              <widget class="GtkHBox" id="hbox61">
+                                                <property name="visible">True</property>
+                                                <property name="spacing">8</property>
+                                                <child>
+                                                  <widget class="GtkLabel" id="label60">
+                                                    <property name="visible">True</property>
+                                                    <property name="label" translatable="yes">Selected:</property>
+                                                  </widget>
+                                                  <packing>
+                                                    <property name="expand">False</property>
+                                                    <property name="position">0</property>
+                                                  </packing>
+                                                </child>
+                                                <child>
+                                                  <widget class="GtkLabel" id="extra_window_reaction_times_label_selected">
+                                                    <property name="visible">True</property>
+                                                    <property name="label" translatable="yes">&lt;b&gt;Execute reaction time&lt;/b&gt;</property>
+                                                    <property name="use_markup">True</property>
+                                                  </widget>
+                                                  <packing>
+                                                    <property name="expand">False</property>
+                                                    <property name="position">1</property>
+                                                  </packing>
+                                                </child>
+                                              </widget>
+                                              <packing>
+                                                <property name="position">1</property>
+                                              </packing>
+                                            </child>
+                                          </widget>
+                                        </child>
+                                      </widget>
+                                    </child>
                                     <child>
-                                      <widget class="GtkButton" id="button_pulse_custom">
-                                        <property name="label" translatable="yes">Custom</property>
+                                      <widget class="GtkLabel" id="label59">
                                         <property name="visible">True</property>
-                                        <property name="can_focus">True</property>
-                                        <property name="receives_default">True</property>
-                                        <property name="has_tooltip">True</property>
-                                        <property name="tooltip" translatable="yes">define desired pulse step</property>
-                                        <property name="use_underline">True</property>
-                                        <signal name="clicked" handler="on_button_pulse_custom_activate"/>
-                                        <signal name="enter" handler="on_button_enter"/>
+                                        <property name="label" translatable="yes">&lt;b&gt;Select test&lt;/b&gt;</property>
+                                        <property name="use_markup">True</property>
                                       </widget>
                                       <packing>
-                                        <property name="expand">False</property>
-                                        <property name="fill">False</property>
-                                        <property name="position">1</property>
+                                        <property name="type">label_item</property>
+                                      </packing>
+                                    </child>
+                                  </widget>
+                                  <packing>
+                                    <property name="position">4</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <widget class="GtkLabel" id="label5">
+                                    <property name="visible">True</property>
+                                    <property name="label" translatable="yes">5</property>
+                                  </widget>
+                                  <packing>
+                                    <property name="position">4</property>
+                                    <property name="tab_fill">False</property>
+                                    <property name="type">tab</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <widget class="GtkFrame" id="frame11">
+                                    <property name="visible">True</property>
+                                    <property name="label_xalign">0</property>
+                                    <property name="label_yalign">0.69999998807907104</property>
+                                    <property name="shadow_type">out</property>
+                                    <child>
+                                      <widget class="GtkAlignment" id="alignment5">
+                                        <property name="visible">True</property>
+                                        <property name="left_padding">6</property>
+                                        <child>
+                                          <widget class="GtkVBox" id="vbox52">
+                                            <property name="visible">True</property>
+                                            <child>
+                                              <widget class="GtkHBox" id="hbox_pulses">
+                                                <property name="visible">True</property>
+                                                <child>
+                                                  <widget class="GtkRadioButton" id="extra_window_radio_pulses_free">
+                                                    <property name="visible">True</property>
+                                                    <property name="can_focus">True</property>
+                                                    <property name="receives_default">False</property>
+                                                    <property name="active">True</property>
+                                                    <property name="draw_indicator">False</property>
+                                                    <signal name="toggled" handler="on_extra_window_pulses_test_changed"/>
+                                                    <child>
+                                                      <widget class="GtkLabel" id="label_extra_window_radio_pulses_free">
+                                                        <property name="visible">True</property>
+                                                        <property name="label" translatable="yes">Free</property>
+                                                      </widget>
+                                                    </child>
+                                                  </widget>
+                                                  <packing>
+                                                    <property name="expand">False</property>
+                                                    <property name="position">0</property>
+                                                  </packing>
+                                                </child>
+                                                <child>
+                                                  <widget class="GtkRadioButton" id="extra_window_radio_pulses_custom">
+                                                    <property name="visible">True</property>
+                                                    <property name="can_focus">True</property>
+                                                    <property name="receives_default">False</property>
+                                                    <property name="active">True</property>
+                                                    <property name="draw_indicator">False</property>
+                                                    <property name="group">extra_window_radio_pulses_free</property>
+                                                    <signal name="toggled" handler="on_extra_window_pulses_test_changed"/>
+                                                    <child>
+                                                      <widget class="GtkLabel" id="label_extra_window_radio_pulses_custom">
+                                                        <property name="visible">True</property>
+                                                        <property name="label" translatable="yes">Custom</property>
+                                                      </widget>
+                                                    </child>
+                                                  </widget>
+                                                  <packing>
+                                                    <property name="expand">False</property>
+                                                    <property name="position">1</property>
+                                                  </packing>
+                                                </child>
+                                              </widget>
+                                              <packing>
+                                                <property name="position">0</property>
+                                              </packing>
+                                            </child>
+                                            <child>
+                                              <widget class="GtkHBox" id="hbox66">
+                                                <property name="visible">True</property>
+                                                <property name="spacing">8</property>
+                                                <child>
+                                                  <widget class="GtkLabel" id="label30">
+                                                    <property name="visible">True</property>
+                                                    <property name="label" translatable="yes">Selected:</property>
+                                                  </widget>
+                                                  <packing>
+                                                    <property name="expand">False</property>
+                                                    <property name="position">0</property>
+                                                  </packing>
+                                                </child>
+                                                <child>
+                                                  <widget class="GtkLabel" id="extra_window_pulses_label_selected">
+                                                    <property name="visible">True</property>
+                                                    <property name="label" translatable="yes">the selected test</property>
+                                                  </widget>
+                                                  <packing>
+                                                    <property name="expand">False</property>
+                                                    <property name="position">1</property>
+                                                  </packing>
+                                                </child>
+                                              </widget>
+                                              <packing>
+                                                <property name="position">1</property>
+                                              </packing>
+                                            </child>
+                                          </widget>
+                                        </child>
+                                      </widget>
+                                    </child>
+                                    <child>
+                                      <widget class="GtkLabel" id="label29">
+                                        <property name="visible">True</property>
+                                        <property name="label" translatable="yes">&lt;b&gt;Select test&lt;/b&gt;</property>
+                                        <property name="use_markup">True</property>
+                                      </widget>
+                                      <packing>
+                                        <property name="type">label_item</property>
                                       </packing>
                                     </child>
                                   </widget>
@@ -16854,9 +16735,19 @@ weight</property>
                                                   </packing>
                                                 </child>
                                                 <child>
-                                                  <widget class="GtkLabel" id="label29">
+                                                  <widget class="GtkVBox" id="vbox51">
                                                     <property name="visible">True</property>
-                                                    <property name="label">c</property>
+                                                    <child>
+                                                      <widget class="GtkLabel" id="label77">
+                                                        <property name="height_request">100</property>
+                                                        <property name="visible">True</property>
+                                                        <property name="label" translatable="yes">No options</property>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="position">0</property>
+                                                      </packing>
+                                                    </child>
                                                   </widget>
                                                   <packing>
                                                     <property name="position">4</property>
@@ -16874,9 +16765,189 @@ weight</property>
                                                   </packing>
                                                 </child>
                                                 <child>
-                                                  <widget class="GtkLabel" id="label30">
+                                                  <widget class="GtkVBox" id="vbox53">
                                                     <property name="visible">True</property>
-                                                    <property name="label">c</property>
+                                                    <child>
+                                                      <widget class="GtkLabel" id="extra_window_label_pulses_no_options">
+                                                        <property name="visible">True</property>
+                                                        <property name="label" translatable="yes">No options</property>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="position">0</property>
+                                                      </packing>
+                                                    </child>
+                                                    <child>
+                                                      <widget class="GtkVBox" id="extra_window_pulses_vbox">
+                                                        <property name="visible">True</property>
+                                                        <property name="spacing">6</property>
+                                                        <child>
+                                                          <widget class="GtkFrame" id="frame15">
+                                                            <property name="visible">True</property>
+                                                            <property name="label_xalign">0</property>
+                                                            <property name="shadow_type">none</property>
+                                                            <child>
+                                                            <widget class="GtkAlignment" id="alignment56">
+                                                            <property name="visible">True</property>
+                                                            <property name="top_padding">2</property>
+                                                            <property name="left_padding">12</property>
+                                                            <child>
+                                                            <widget class="GtkTable" id="table29">
+                                                            <property name="visible">True</property>
+                                                            <property name="n_rows">2</property>
+                                                            <property name="n_columns">2</property>
+                                                            <property name="column_spacing">6</property>
+                                                            <property name="row_spacing">6</property>
+                                                            <child>
+                                                            <widget class="GtkLabel" id="label211">
+                                                            <property name="visible">True</property>
+                                                            <property name="xalign">0</property>
+                                                            <property name="label" translatable="yes">seconds</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"></property>
+                                                            </packing>
+                                                            </child>
+                                                            <child>
+                                                            <widget class="GtkLabel" id="label213">
+                                                            <property name="visible">True</property>
+                                                            <property name="xalign">0</property>
+                                                            <property name="label" translatable="yes">ppm</property>
+                                                            </widget>
+                                                            <packing>
+                                                            <property name="left_attach">1</property>
+                                                            <property name="right_attach">2</property>
+                                                            <property name="top_attach">1</property>
+                                                            <property name="bottom_attach">2</property>
+                                                            <property name="x_options">GTK_FILL</property>
+                                                            <property name="y_options"></property>
+                                                            </packing>
+                                                            </child>
+                                                            <child>
+                                                            <widget class="GtkSpinButton" id="extra_window_pulses_spinbutton_pulse_step">
+                                                            <property name="visible">True</property>
+                                                            <property name="can_focus">True</property>
+                                                            <property name="invisible_char">â??</property>
+                                                            <property name="adjustment">1 0 100 0.0099999997764800008 1 1</property>
+                                                            <property name="digits">3</property>
+                                                            <property name="numeric">True</property>
+                                                            <property name="update_policy">if-valid</property>
+                                                            <signal name="changed" handler="on_extra_window_pulses_spinbutton_pulse_step_changed"/>
+                                                            </widget>
+                                                            <packing>
+                                                            <property name="x_options">GTK_FILL</property>
+                                                            <property name="y_options"></property>
+                                                            </packing>
+                                                            </child>
+                                                            <child>
+                                                            <widget class="GtkSpinButton" id="extra_window_pulses_spinbutton_ppm">
+                                                            <property name="visible">True</property>
+                                                            <property name="can_focus">True</property>
+                                                            <property name="invisible_char">â??</property>
+                                                            <property name="adjustment">60 0 1000 1 1 1</property>
+                                                            <property name="digits">2</property>
+                                                            <property name="numeric">True</property>
+                                                            <property name="update_policy">if-valid</property>
+                                                            <signal name="changed" handler="on_extra_window_pulses_spinbutton_ppm_changed"/>
+                                                            </widget>
+                                                            <packing>
+                                                            <property name="top_attach">1</property>
+                                                            <property name="bottom_attach">2</property>
+                                                            <property name="x_options">GTK_FILL</property>
+                                                            <property name="y_options"></property>
+                                                            </packing>
+                                                            </child>
+                                                            </widget>
+                                                            </child>
+                                                            </widget>
+                                                            </child>
+                                                            <child>
+                                                            <widget class="GtkLabel" id="label212">
+                                                            <property name="visible">True</property>
+                                                            <property name="label" translatable="yes">&lt;b&gt;pulse step&lt;/b&gt;</property>
+                                                            <property name="use_markup">True</property>
+                                                            </widget>
+                                                            <packing>
+                                                            <property name="type">label_item</property>
+                                                            </packing>
+                                                            </child>
+                                                          </widget>
+                                                          <packing>
+                                                            <property name="expand">False</property>
+                                                            <property name="position">0</property>
+                                                          </packing>
+                                                        </child>
+                                                        <child>
+                                                          <widget class="GtkHSeparator" id="hseparator11">
+                                                            <property name="visible">True</property>
+                                                          </widget>
+                                                          <packing>
+                                                            <property name="expand">False</property>
+                                                            <property name="position">1</property>
+                                                          </packing>
+                                                        </child>
+                                                        <child>
+                                                          <widget class="GtkCheckButton" id="extra_window_pulses_checkbutton_unlimited">
+                                                            <property name="label" translatable="yes">unlimited</property>
+                                                            <property name="visible">True</property>
+                                                            <property name="can_focus">True</property>
+                                                            <property name="receives_default">False</property>
+                                                            <property name="has_tooltip">True</property>
+                                                            <property name="tooltip" translatable="yes">unlimited pulses</property>
+                                                            <property name="use_underline">True</property>
+                                                            <property name="draw_indicator">True</property>
+                                                            <signal name="clicked" handler="on_extra_window_pulses_checkbutton_unlimited_clicked"/>
+                                                          </widget>
+                                                          <packing>
+                                                            <property name="expand">False</property>
+                                                            <property name="fill">False</property>
+                                                            <property name="position">2</property>
+                                                          </packing>
+                                                        </child>
+                                                        <child>
+                                                          <widget class="GtkHBox" id="extra_window_pulses_hbox_total_pulses">
+                                                            <property name="visible">True</property>
+                                                            <property name="spacing">6</property>
+                                                            <child>
+                                                            <widget class="GtkLabel" id="label208">
+                                                            <property name="visible">True</property>
+                                                            <property name="xalign">0</property>
+                                                            <property name="label" translatable="yes">total pulses</property>
+                                                            </widget>
+                                                            <packing>
+                                                            <property name="expand">False</property>
+                                                            <property name="fill">False</property>
+                                                            <property name="position">0</property>
+                                                            </packing>
+                                                            </child>
+                                                            <child>
+                                                            <widget class="GtkSpinButton" id="extra_window_pulses_spinbutton_total_pulses">
+                                                            <property name="visible">True</property>
+                                                            <property name="can_focus">True</property>
+                                                            <property name="invisible_char">â??</property>
+                                                            <property name="adjustment">10 1 1000 1 10 10</property>
+                                                            <property name="snap_to_ticks">True</property>
+                                                            <property name="numeric">True</property>
+                                                            <property name="update_policy">if-valid</property>
+                                                            </widget>
+                                                            <packing>
+                                                            <property name="expand">False</property>
+                                                            <property name="position">1</property>
+                                                            </packing>
+                                                            </child>
+                                                          </widget>
+                                                          <packing>
+                                                            <property name="expand">False</property>
+                                                            <property name="position">3</property>
+                                                          </packing>
+                                                        </child>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="position">1</property>
+                                                      </packing>
+                                                    </child>
                                                   </widget>
                                                   <packing>
                                                     <property name="position">5</property>
@@ -17225,6 +17296,7 @@ weight</property>
                                                     <property name="can_focus">True</property>
                                                     <property name="can_default">True</property>
                                                     <property name="receives_default">True</property>
+                                                    <property name="tooltip" translatable="yes">Cancel test</property>
                                                     <property name="use_stock">True</property>
                                                     <signal name="clicked" handler="on_event_execute_button_cancel_clicked"/>
                                                   </widget>
@@ -17242,7 +17314,7 @@ weight</property>
                                                     <property name="can_default">True</property>
                                                     <property name="receives_default">True</property>
                                                     <property name="has_tooltip">True</property>
-                                                    <property name="tooltip" translatable="yes">Finish jump (save jump until this moment)</property>
+                                                    <property name="tooltip" translatable="yes">Finish test (save test until this moment)</property>
                                                     <property name="use_underline">True</property>
                                                     <signal name="clicked" handler="on_event_execute_finish_clicked"/>
                                                   </widget>
@@ -17349,6 +17421,7 @@ weight</property>
                                                     <property name="visible">True</property>
                                                     <property name="can_focus">True</property>
                                                     <property name="receives_default">True</property>
+                                                    <property name="tooltip" translatable="yes">Configure connection with external hardware.</property>
                                                     <signal name="clicked" handler="on_chronopic_clicked"/>
                                                   </widget>
                                                   <packing>
diff --git a/src/gui/chronojump.cs b/src/gui/chronojump.cs
index d32e7b6..ad9a212 100644
--- a/src/gui/chronojump.cs
+++ b/src/gui/chronojump.cs
@@ -129,13 +129,10 @@ public partial class ChronoJumpWindow
 
 	//other
 	//reaction time
-	[Widget] Gtk.MenuItem menuitem_reaction_time;
 	[Widget] Gtk.Button button_edit_selected_reaction_time;
 	[Widget] Gtk.Button button_video_play_selected_reaction_time;
 	[Widget] Gtk.Button button_delete_selected_reaction_time;
 	//pulse
-	[Widget] Gtk.MenuItem menuitem_pulse_free;
-	[Widget] Gtk.MenuItem menuitem_pulse_custom;
 	[Widget] Gtk.Button button_edit_selected_pulse;
 	[Widget] Gtk.Button button_video_play_selected_pulse;
 	[Widget] Gtk.Button button_delete_selected_pulse;
@@ -191,10 +188,6 @@ public partial class ChronoJumpWindow
 	[Widget] Gtk.Button button_run_interval_unlimited;
 	[Widget] Gtk.Button button_run_interval_mtgug;
 	[Widget] Gtk.Button button_reaction_time_execute;
-	[Widget] Gtk.Button button_pulse_free;
-	[Widget] Gtk.Button button_pulse_custom;
-	[Widget] Gtk.Button button_reaction_time;
-	//[Widget] Gtk.Button button_pulse_more;
 
 	
 	[Widget] Gtk.Notebook notebook_execute;
@@ -304,6 +297,7 @@ public partial class ChronoJumpWindow
 	bool thisRunIsSimple;	//needed on updating
 	bool lastRunIsSimple;	//needed on update
 	private static PulseType currentPulseType;
+	private static ReactionTimeType currentReactionTimeType;
 	private static MultiChronopicType currentMultiChronopicType;
 	private static Report report;
 
@@ -334,7 +328,7 @@ public partial class ChronoJumpWindow
 	EditReactionTimeWindow editReactionTimeWin;
 
 	EditPulseWindow editPulseWin;
-	PulseExtraWindow pulseExtraWin;
+//	PulseExtraWindow pulseExtraWin;
 	RepairPulseWindow repairPulseWin;
 	
 	EditMultiChronopicWindow editMultiChronopicWin;
@@ -454,6 +448,8 @@ public partial class ChronoJumpWindow
 		on_extra_window_jumps_rj_test_changed(new object(), new EventArgs());
 		on_extra_window_runs_test_changed(new object(), new EventArgs());
 		on_extra_window_runs_interval_test_changed(new object(), new EventArgs());
+		on_extra_window_reaction_times_test_changed(new object(), new EventArgs());
+		on_extra_window_pulses_test_changed(new object(), new EventArgs());
 		changeTestImage("", "", "LOGO");
 
 		
@@ -623,6 +619,15 @@ public partial class ChronoJumpWindow
 		UtilGtk.ColorsRadio(extra_window_radio_run_interval_mtgug);
 		UtilGtk.ColorsRadio(extra_window_radio_run_interval_more);
 
+		//reaction times changes
+		UtilGtk.ColorsTestLabel(label_extra_window_radio_reaction_time);
+		UtilGtk.ColorsRadio(extra_window_radio_reaction_time);
+
+		//pulses changes
+		UtilGtk.ColorsTestLabel(label_extra_window_radio_pulses_free);
+		UtilGtk.ColorsTestLabel(label_extra_window_radio_pulses_custom);
+		UtilGtk.ColorsRadio(extra_window_radio_pulses_free);
+		UtilGtk.ColorsRadio(extra_window_radio_pulses_custom);
 
 
 		//persons buttons
@@ -2882,6 +2887,12 @@ Console.WriteLine("X");
 			
 			on_run_interval_activate(o, args);
 		}
+		else if(radio_mode_reaction_times.Active) {
+			on_reaction_time_activate (o, args);
+		}
+		else if(radio_mode_pulses.Active) {
+			on_pulse_activate (o, args);
+		}
 	}
 
 
@@ -3653,22 +3664,8 @@ Console.WriteLine("X");
 	//suitable for reaction times
 	private void on_reaction_time_activate (object o, EventArgs args) 
 	{
-/*
-		if(o == (object) button_free || o == (object) menuitem_jump_free) {
-			currentJumpType = new JumpType("Free");
-		}else if(o == (object) button_sj || o == (object) sj) {
-			currentJumpType = new JumpType("SJ");
-		} else if (o == (object) button_cmj || o == (object) cmj) {
-			currentJumpType = new JumpType("CMJ");
-		} else if (o == (object) button_abk || o == (object) abk) {
-			currentJumpType = new JumpType("ABK");
-		} else {
-		}
-			
-*/			
 		//used by cancel and finish
 		currentEventType = new ReactionTimeType();
-		//currentEventType = currentReactionTimeType;
 			
 		//hide jumping buttons
 		sensitiveGuiEventDoing();
@@ -3722,6 +3719,8 @@ Console.WriteLine("X");
 		
 		currentEventExecute.Manage();
 
+		currentEventExecute.FakeButtonUpdateGraph.Clicked += 
+			new EventHandler(on_event_execute_update_graph_in_progress_clicked);
 		currentEventExecute.FakeButtonEventEnded.Clicked += new EventHandler(on_event_execute_EventEnded);
 		currentEventExecute.FakeButtonFinished.Clicked += new EventHandler(on_reaction_time_finished);
 	}	
@@ -3768,50 +3767,13 @@ Console.WriteLine("X");
 	 *  --------------------------------------------------------
 	 */
 
-	/*
-	private void on_button_pulse_more_clicked (object o, EventArgs args) 
-	{
-	}
-	*/
-	
-	private void on_more_pulse_accepted (object o, EventArgs args) 
-	{
 		/*
-		runsIntervalMoreWin.Button_accept.Clicked -= new EventHandler(on_more_runs_interval_accepted);
-		
-		currentRunType = new RunType(
-				runsIntervalMoreWin.SelectedRunType,	//name
-				true,					//hasIntervals
-				runsIntervalMoreWin.SelectedDistance,
-				runsIntervalMoreWin.SelectedTracksLimited,
-				runsIntervalMoreWin.SelectedLimitedValue,
-				runsIntervalMoreWin.SelectedUnlimited
-				);
-				
-		//go to run extra if we need something to define
-		if( currentRunType.Distance == 0 || 
-				(currentRunType.FixedValue == 0 && ! runsIntervalMoreWin.SelectedUnlimited) ) {
-			on_run_extra_activate(o, args);
-		} else {
-			on_run_interval_accepted(o, args);
-		}
-		*/
-	}
-
-	/*	
-	private void on_button_pulse_last_clicked (object o, EventArgs args) 
-	{
-	}
-	*/
-	
 	private void on_button_pulse_free_activate (object o, EventArgs args) 
 	{
 		currentPulseType = new PulseType("Free");
 		on_pulse_accepted(o, args);
 	}
 	
-	//interval runs clicked from user interface
-	//(not suitable for the other runs we found in "more")
 	private void on_button_pulse_custom_activate (object o, EventArgs args) 
 	{
 		currentPulseType = new PulseType("Custom");
@@ -3819,8 +3781,9 @@ Console.WriteLine("X");
 		pulseExtraWin = PulseExtraWindow.Show(app1, currentPulseType);
 		pulseExtraWin.Button_accept.Clicked += new EventHandler(on_pulse_accepted);
 	}
+		*/
 	
-	private void on_pulse_accepted (object o, EventArgs args)
+	private void on_pulse_activate (object o, EventArgs args)
 	{
 		Log.WriteLine("pulse accepted");
 	
@@ -3831,8 +3794,12 @@ Console.WriteLine("X");
 			pulseStep = currentPulseType.FixedPulse; // -1
 			totalPulses = currentPulseType.TotalPulsesNum; //-1
 		} else { //custom (info comes from Extra Window
-			pulseStep = pulseExtraWin.PulseStep;
-			totalPulses = pulseExtraWin.TotalPulses; //-1: unlimited; or 'n': limited by 'n' pulses
+			pulseStep = extra_window_pulses_spinbutton_pulse_step.Value;
+			if(extra_window_pulses_checkbutton_unlimited.Active)
+				totalPulses = currentPulseType.TotalPulsesNum; //-1
+			else
+				totalPulses = Convert.ToInt32(
+						extra_window_pulses_spinbutton_total_pulses.Value); //-1: unlimited; or 'n': limited by 'n' pulses
 		}
 
 		//used by cancel and finish
@@ -3886,6 +3853,9 @@ Console.WriteLine("X");
 			currentEventExecute.SimulateInitValues(rand);
 		
 		currentEventExecute.Manage();
+		
+		currentEventExecute.FakeButtonUpdateGraph.Clicked += 
+			new EventHandler(on_event_execute_update_graph_in_progress_clicked);
 		currentEventExecute.FakeButtonEventEnded.Clicked += new EventHandler(on_event_execute_EventEnded);
 		currentEventExecute.FakeButtonFinished.Clicked += new EventHandler(on_pulse_finished);
 	}
@@ -5024,6 +4994,12 @@ Console.WriteLine("X");
 		else if(notebook_execute.CurrentPage == 3)
 			changeTestImage(EventType.Types.RUN.ToString(), 
 					currentRunIntervalType.Name, currentRunIntervalType.ImageFileName);
+		else if(notebook_execute.CurrentPage == 4)
+			changeTestImage(EventType.Types.REACTIONTIME.ToString(), 
+					currentReactionTimeType.Name, currentReactionTimeType.ImageFileName);
+		else if(notebook_execute.CurrentPage == 5)
+			changeTestImage(EventType.Types.PULSE.ToString(), 
+					currentPulseType.Name, currentPulseType.ImageFileName);
 
 		stats_win_change_test_type(notebook_execute.CurrentPage);
 	}
@@ -5133,9 +5109,6 @@ Console.WriteLine("X");
 
 	private void menuOtherSensitive(bool option)
 	{
-		menuitem_reaction_time.Sensitive = option;
-		menuitem_pulse_free.Sensitive = option;
-		menuitem_pulse_custom.Sensitive = option;
 		menuitem_multi_chronopic_start.Sensitive = option;
 		menuitem_run_analysis.Sensitive = option;
 	}
diff --git a/src/gui/eventExecute.cs b/src/gui/eventExecute.cs
index e0d7804..62f1012 100644
--- a/src/gui/eventExecute.cs
+++ b/src/gui/eventExecute.cs
@@ -1852,6 +1852,17 @@ Log.WriteLine("Preparing reactive A");
 							volumeOn, repetitiveConditionsWin);
 				}
 				break;
+			case EventType.Types.REACTIONTIME:
+					Log.Write("update graph: REACTIONTIME");
+					PrepareReactionTimeGraph(
+							currentEventExecute.PrepareEventGraphReactionTimeObject.time);
+				break;
+			case EventType.Types.PULSE:
+					Log.Write("update graph: PULSE");
+					PreparePulseGraph(
+							currentEventExecute.PrepareEventGraphPulseObject.lastTime,
+							currentEventExecute.PrepareEventGraphPulseObject.timesString);
+				break;
 		}
 
 	}
diff --git a/src/gui/pulse.cs b/src/gui/pulse.cs
index 29fb341..cf97c61 100644
--- a/src/gui/pulse.cs
+++ b/src/gui/pulse.cs
@@ -15,7 +15,7 @@
  *  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-2009   Xavier de Blas <xaviblas gmail com> 
+ * Copyright (C) 2004-2011   Xavier de Blas <xaviblas gmail com> 
  */
 
 using System;
@@ -119,128 +119,81 @@ public class EditPulseWindow : EditEventWindow
 //---------------- pulse extra WIDGET --------------------
 //--------------------------------------------------------
 
-public class PulseExtraWindow 
+public partial class ChronoJumpWindow 
 {
-	[Widget] Gtk.Window pulse_extra;
-	[Widget] Gtk.SpinButton spinbutton_pulse_step;
-	[Widget] Gtk.SpinButton spinbutton_ppm;
-	[Widget] Gtk.SpinButton spinbutton_total_pulses;
-	[Widget] Gtk.CheckButton checkbutton_unlimited;
-	[Widget] Gtk.HBox hbox_total_pulses;
-	[Widget] Gtk.Button button_accept;
-
-	static double pulseStep = 1.000;
-	static bool unlimited = true;
-	static int totalPulses = 10;
+	[Widget] Gtk.RadioButton extra_window_radio_pulses_custom;
+	[Widget] Gtk.RadioButton extra_window_radio_pulses_free;
 	
-	static PulseExtraWindow PulseExtraWindowBox;
-	Gtk.Window parent;
+	[Widget] Gtk.Label label_extra_window_radio_pulses_custom;
+	[Widget] Gtk.Label label_extra_window_radio_pulses_free;
+	
+	[Widget] Gtk.Label extra_window_pulses_label_selected;
+
+	[Widget] Gtk.VBox extra_window_pulses_vbox;
+	[Widget] Gtk.SpinButton extra_window_pulses_spinbutton_pulse_step;
+	[Widget] Gtk.SpinButton extra_window_pulses_spinbutton_ppm;
+	[Widget] Gtk.SpinButton extra_window_pulses_spinbutton_total_pulses;
+	[Widget] Gtk.CheckButton extra_window_pulses_checkbutton_unlimited;
+	[Widget] Gtk.HBox extra_window_pulses_hbox_total_pulses;
+	
+	[Widget] Gtk.Label extra_window_label_pulses_no_options;
 
-	PulseExtraWindow (Gtk.Window parent) {
-		Glade.XML gladeXML;
-		gladeXML = Glade.XML.FromAssembly (Util.GetGladePath() + "chronojump.glade", "pulse_extra", null);
-		gladeXML.Autoconnect(this);
-		this.parent = parent;
-		
-		//put an icon to window
-		UtilGtk.IconWindow(pulse_extra);
-	}
+	double extra_window_pulseStep = 1.000;
+	bool extra_window_unlimited = true;
+	int extra_window_totalPulses = 10;
 	
-	static public PulseExtraWindow Show (Gtk.Window parent, PulseType myPulseType) 
+	private void on_extra_window_pulses_test_changed(object o, EventArgs args)
 	{
-		if (PulseExtraWindowBox == null) {
-			PulseExtraWindowBox = new PulseExtraWindow (parent);
-		}
+		if(extra_window_radio_pulses_free.Active) currentPulseType = new PulseType("Free");
+		else if (extra_window_radio_pulses_custom.Active) currentPulseType = new PulseType("Custom");
 		
-		//put default values or values from previous pulse
-		PulseExtraWindowBox.spinbutton_pulse_step.Value = pulseStep;
-		if(totalPulses == -1)
-			totalPulses = 10;
-		
-		PulseExtraWindowBox.spinbutton_total_pulses.Value = totalPulses;
-		
-		if(unlimited) 
-			PulseExtraWindowBox.checkbutton_unlimited.Active = true;
-		
-		PulseExtraWindowBox.pulse_extra.Show ();
-
-		return PulseExtraWindowBox;
+		extra_window_pulses_initialize(currentPulseType);
 	}
-	
-	
-	void on_button_cancel_clicked (object o, EventArgs args)
+
+	private void extra_window_pulses_initialize(PulseType myPulseType) 
 	{
-		PulseExtraWindowBox.pulse_extra.Hide();
-		PulseExtraWindowBox = null;
+		extra_window_pulses_label_selected.Text = "<b>" + Catalog.GetString(myPulseType.Name) + "</b>";
+		extra_window_pulses_label_selected.UseMarkup = true; 
+		currentEventType = myPulseType;
+		changeTestImage(EventType.Types.PULSE.ToString(), myPulseType.Name, myPulseType.ImageFileName);
+		bool hasOptions = false;
+
+		if(myPulseType.Name == "Custom") {
+			hasOptions = true;
+			extra_window_pulses_spinbutton_pulse_step.Value = extra_window_pulseStep;
+			extra_window_pulses_spinbutton_total_pulses.Value = extra_window_totalPulses;
+		}
+
+		extra_window_pulses_showNoOptions(hasOptions);
 	}
 	
-	void on_delete_event (object o, DeleteEventArgs args)
-	{
-		PulseExtraWindowBox.pulse_extra.Hide();
-		PulseExtraWindowBox = null;
+	private void extra_window_pulses_showNoOptions(bool hasOptions) {
+		extra_window_label_pulses_no_options.Visible = ! hasOptions;
+		extra_window_pulses_vbox.Visible = hasOptions;
 	}
 	
-	void on_button_accept_clicked (object o, EventArgs args)
-	{
-		pulseStep = (double) PulseExtraWindowBox.spinbutton_pulse_step.Value;
-		Log.WriteLine(string.Format("pulsestep: {0}", pulseStep));
-		if(checkbutton_unlimited.Active) {
-			totalPulses = -1;
-			unlimited = true;
-		}
-		else {
-			totalPulses = (int) PulseExtraWindowBox.spinbutton_total_pulses.Value;
-			unlimited = false;
-		}
-		
-		PulseExtraWindowBox.pulse_extra.Hide();
-		PulseExtraWindowBox = null;
-	}
 
-	
-	void on_checkbutton_unlimited_clicked (object o, EventArgs args)
+	void on_extra_window_pulses_checkbutton_unlimited_clicked (object o, EventArgs args)
 	{
-		if(checkbutton_unlimited.Active) {
-			hbox_total_pulses.Hide();
-		} else {
-			hbox_total_pulses.Show();
-		}
+		extra_window_pulses_hbox_total_pulses.Visible = ! extra_window_pulses_checkbutton_unlimited.Active;
 	}
 
-	void on_spinbutton_pulse_step_changed (object o, EventArgs args)
+	void on_extra_window_pulses_spinbutton_pulse_step_changed (object o, EventArgs args)
 	{
-		if((double) PulseExtraWindowBox.spinbutton_pulse_step.Value == 0) 
-			PulseExtraWindowBox.spinbutton_ppm.Value = 0;
+		if((double) extra_window_pulses_spinbutton_pulse_step.Value == 0) 
+			extra_window_pulses_spinbutton_ppm.Value = 0;
 		else 
-			PulseExtraWindowBox.spinbutton_ppm.Value = 60 / 
-				(double) PulseExtraWindowBox.spinbutton_pulse_step.Value;
+			extra_window_pulses_spinbutton_ppm.Value = 60 / 
+				(double) extra_window_pulses_spinbutton_pulse_step.Value;
 	}
 
-	void on_spinbutton_ppm_changed (object o, EventArgs args)
+	void on_extra_window_pulses_spinbutton_ppm_changed (object o, EventArgs args)
 	{
-		if((int) PulseExtraWindowBox.spinbutton_ppm.Value == 0)
-			PulseExtraWindowBox.spinbutton_pulse_step.Value = 0;
+		if((int) extra_window_pulses_spinbutton_ppm.Value == 0)
+			extra_window_pulses_spinbutton_pulse_step.Value = 0;
 		else
-			PulseExtraWindowBox.spinbutton_pulse_step.Value = 60 / 
-				(double) PulseExtraWindowBox.spinbutton_ppm.Value;
-	}
-
-
-		
-	public Button Button_accept 
-	{
-		set { button_accept = value;	}
-		get { return button_accept;	}
-	}
-
-	public double PulseStep
-	{
-		get { return pulseStep;	}
-	}
-	
-	public int TotalPulses
-	{
-		get { return totalPulses;	}
+			extra_window_pulses_spinbutton_pulse_step.Value = 60 / 
+				(double) extra_window_pulses_spinbutton_ppm.Value;
 	}
 	
 }
diff --git a/src/gui/reactionTime.cs b/src/gui/reactionTime.cs
index 2b9f16a..f8d3bc2 100644
--- a/src/gui/reactionTime.cs
+++ b/src/gui/reactionTime.cs
@@ -15,7 +15,7 @@
  *  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-2009   Xavier de Blas <xaviblas gmail com> 
+ * Copyright (C) 2004-2011   Xavier de Blas <xaviblas gmail com> 
  */
 
 using System;
@@ -27,6 +27,18 @@ using System.Collections; //ArrayList
 using System.Threading;
 using Mono.Unix;
 
+public partial class ChronoJumpWindow 
+{
+	[Widget] Gtk.Label label_extra_window_radio_reaction_time;
+	[Widget] Gtk.RadioButton extra_window_radio_reaction_time;
+	
+	private void on_extra_window_reaction_times_test_changed(object o, EventArgs args)
+	{
+		if(extra_window_radio_reaction_time.Active)
+			currentReactionTimeType = new ReactionTimeType("reactionTime");
+	}
+}
+
 //--------------------------------------------------------
 //---------------- EDIT REACTION TIME WIDGET -------------
 //--------------------------------------------------------



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