[chronojump] Better gui encoder capture



commit f02ea5c451b5783c04ba2f2bf453ca2ead539c35
Author: Xavier de Blas <xaviblas gmail com>
Date:   Tue Oct 29 21:44:42 2013 +0100

    Better gui encoder capture

 glade/chronojump.glade | 1802 ++++++++++++++++++++++++------------------------
 src/gui/chronojump.cs  |    5 -
 src/gui/encoder.cs     |  147 ++++-
 3 files changed, 1042 insertions(+), 912 deletions(-)
---
diff --git a/glade/chronojump.glade b/glade/chronojump.glade
index 5a8721e..7047706 100644
--- a/glade/chronojump.glade
+++ b/glade/chronojump.glade
@@ -11986,122 +11986,137 @@ on current Chronojump version.</property>
                                         <property name="can_focus">False</property>
                                         <property name="spacing">4</property>
                                         <child>
-                                          <widget class="GtkHBox" id="hbox96">
+                                          <widget class="GtkVBox" id="vbox2">
                                             <property name="visible">True</property>
                                             <property name="can_focus">False</property>
-                                            <property name="spacing">12</property>
                                             <child>
-                                              <widget class="GtkAlignment" id="alignment21">
+                                              <widget class="GtkHBox" id="hbox117">
                                                 <property name="visible">True</property>
                                                 <property name="can_focus">False</property>
-                                                <property name="top_padding">2</property>
+                                                <property name="border_width">8</property>
+                                                <property name="spacing">4</property>
                                                 <child>
-                                                  <widget class="GtkNotebook" id="notebook2">
+                                                  <widget class="GtkLabel" id="label90">
                                                     <property name="visible">True</property>
-                                                    <property name="can_focus">True</property>
-                                                    <property name="tab_pos">left</property>
-                                                    <property name="tab_hborder">10</property>
+                                                    <property name="can_focus">False</property>
+                                                    <property name="label" 
translatable="yes">Encoder:</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="hbox90">
+                                                    <property name="visible">True</property>
+                                                    <property name="can_focus">False</property>
+                                                    <property name="spacing">4</property>
+                                                    <child>
+                                                      <widget class="GtkRadioButton" 
id="radiobutton_encoder_capture_linear">
+                                                        <property name="label" 
translatable="yes">Linear</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">Linear 
encoder (default)</property>
+                                                        <property 
name="use_action_appearance">False</property>
+                                                        <property name="active">True</property>
+                                                        <property name="draw_indicator">True</property>
+                                                        <signal name="toggled" 
handler="on_radiobutton_encoder_capture_l_r_toggled" swapped="no"/>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="fill">False</property>
+                                                        <property name="position">0</property>
+                                                      </packing>
+                                                    </child>
+                                                    <child>
+                                                      <widget class="GtkRadioButton" 
id="radiobutton_encoder_capture_rotary">
+                                                        <property name="label" 
translatable="yes">Rotary</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">Rotary 
encoder</property>
+                                                        <property 
name="use_action_appearance">False</property>
+                                                        <property name="draw_indicator">True</property>
+                                                        <property 
name="group">radiobutton_encoder_capture_linear</property>
+                                                        <signal name="toggled" 
handler="on_radiobutton_encoder_capture_l_r_toggled" swapped="no"/>
+                                                      </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="position">1</property>
+                                                  </packing>
+                                                </child>
+                                                <child>
+                                                  <widget class="GtkHBox" id="hbox116">
+                                                    <property name="visible">True</property>
+                                                    <property name="can_focus">False</property>
+                                                    <property name="spacing">2</property>
                                                     <child>
-                                                      <widget class="GtkTable" id="table10">
+                                                      <widget class="GtkHBox" 
id="hbox_checkbutton_encoder_capture_inverted">
                                                         <property name="visible">True</property>
                                                         <property name="can_focus">False</property>
-                                                        <property name="border_width">8</property>
-                                                        <property name="n_rows">2</property>
-                                                        <property name="n_columns">2</property>
-                                                        <property name="column_spacing">8</property>
-                                                        <property name="row_spacing">8</property>
+                                                        <property name="spacing">4</property>
                                                         <child>
-                                                          <widget class="GtkHBox" id="hbox75">
+                                                          <widget class="GtkVSeparator" id="vseparator6">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
-                                                            <property name="spacing">10</property>
-                                                            <child>
-                                                            <widget class="GtkHBox" id="hbox90">
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">False</property>
-                                                            <property name="spacing">4</property>
-                                                            <child>
-                                                            <widget class="GtkLabel" id="label84">
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">False</property>
-                                                            <property name="label" 
translatable="yes">Type:</property>
-                                                            </widget>
-                                                            <packing>
+                                                          </widget>
+                                                          <packing>
                                                             <property name="expand">False</property>
-                                                            <property name="fill">False</property>
+                                                            <property name="fill">True</property>
                                                             <property name="position">0</property>
-                                                            </packing>
-                                                            </child>
-                                                            <child>
-                                                            <widget class="GtkRadioButton" 
id="radiobutton_encoder_capture_linear">
-                                                            <property name="label" 
translatable="yes">Linear</property>
+                                                          </packing>
+                                                        </child>
+                                                        <child>
+                                                          <widget class="GtkCheckButton" 
id="checkbutton_encoder_capture_inverted">
+                                                            <property name="label" 
translatable="yes">Inverted</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">Linear encoder (default)</property>
                                                             <property 
name="use_action_appearance">False</property>
-                                                            <property name="active">True</property>
                                                             <property name="draw_indicator">True</property>
-                                                            <signal name="toggled" 
handler="on_radiobutton_encoder_capture_l_r_toggled" swapped="no"/>
-                                                            </widget>
-                                                            <packing>
+                                                          </widget>
+                                                          <packing>
                                                             <property name="expand">False</property>
                                                             <property name="fill">False</property>
                                                             <property name="position">1</property>
-                                                            </packing>
-                                                            </child>
-                                                            <child>
-                                                            <widget class="GtkRadioButton" 
id="radiobutton_encoder_capture_rotary">
-                                                            <property name="label" 
translatable="yes">Rotary</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">Rotary encoder</property>
-                                                            <property 
name="use_action_appearance">False</property>
-                                                            <property name="draw_indicator">True</property>
-                                                            <property 
name="group">radiobutton_encoder_capture_linear</property>
-                                                            <signal name="toggled" 
handler="on_radiobutton_encoder_capture_l_r_toggled" swapped="no"/>
-                                                            </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">True</property>
-                                                            <property name="position">0</property>
-                                                            </packing>
-                                                            </child>
-                                                            <child>
-                                                            <widget class="GtkHBox" id="hbox116">
+                                                          </packing>
+                                                        </child>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="fill">False</property>
+                                                        <property name="position">0</property>
+                                                      </packing>
+                                                    </child>
+                                                    <child>
+                                                      <widget class="GtkHBox" 
id="hbox_encoder_capture_rotary_f_a">
+                                                        <property name="can_focus">False</property>
+                                                        <property name="spacing">4</property>
+                                                        <child>
+                                                          <widget class="GtkVSeparator" id="vseparator5">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
-                                                            <child>
-                                                            <widget class="GtkCheckButton" 
id="checkbutton_encoder_capture_inverted">
-                                                            <property name="label" 
translatable="yes">Inverted</property>
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">True</property>
-                                                            <property 
name="receives_default">False</property>
-                                                            <property 
name="use_action_appearance">False</property>
-                                                            <property name="draw_indicator">True</property>
-                                                            </widget>
-                                                            <packing>
+                                                          </widget>
+                                                          <packing>
                                                             <property name="expand">False</property>
-                                                            <property name="fill">False</property>
+                                                            <property name="fill">True</property>
                                                             <property name="position">0</property>
-                                                            </packing>
-                                                            </child>
-                                                            <child>
-                                                            <widget class="GtkHBox" 
id="hbox_encoder_capture_rotary_f_a">
-                                                            <property name="can_focus">False</property>
-                                                            <property name="spacing">4</property>
-                                                            <child>
-                                                            <widget class="GtkRadioButton" 
id="radiobutton_encoder_capture_rotary_friction">
+                                                          </packing>
+                                                        </child>
+                                                        <child>
+                                                          <widget class="GtkRadioButton" 
id="radiobutton_encoder_capture_rotary_friction">
                                                             <property name="label" 
translatable="yes">Friction</property>
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">True</property>
@@ -12110,296 +12125,322 @@ on current Chronojump version.</property>
                                                             <property name="active">True</property>
                                                             <property name="draw_indicator">True</property>
                                                             <signal name="toggled" 
handler="on_radiobutton_encoder_capture_rotary_friction_or_axis_toggled" swapped="no"/>
-                                                            </widget>
-                                                            <packing>
+                                                          </widget>
+                                                          <packing>
                                                             <property name="expand">True</property>
                                                             <property name="fill">True</property>
-                                                            <property name="position">0</property>
-                                                            </packing>
-                                                            </child>
-                                                            <child>
-                                                            <widget class="GtkRadioButton" 
id="radiobutton_encoder_capture_rotary_axis">
+                                                            <property name="position">1</property>
+                                                          </packing>
+                                                        </child>
+                                                        <child>
+                                                          <widget class="GtkRadioButton" 
id="radiobutton_encoder_capture_rotary_axis">
                                                             <property name="label" 
translatable="yes">Axis</property>
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">True</property>
                                                             <property 
name="receives_default">False</property>
                                                             <property 
name="use_action_appearance">False</property>
-                                                            <property name="active">True</property>
                                                             <property name="draw_indicator">True</property>
                                                             <property 
name="group">radiobutton_encoder_capture_rotary_friction</property>
                                                             <signal name="toggled" 
handler="on_radiobutton_encoder_capture_rotary_friction_or_axis_toggled" swapped="no"/>
-                                                            </widget>
-                                                            <packing>
-                                                            <property name="expand">True</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">1</property>
-                                                            </packing>
-                                                            </child>
-                                                            </widget>
-                                                            <packing>
+                                                          </widget>
+                                                          <packing>
                                                             <property name="expand">True</property>
                                                             <property name="fill">True</property>
-                                                            <property name="position">1</property>
-                                                            </packing>
-                                                            </child>
-                                                          </widget>
+                                                            <property name="position">2</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="expand">False</property>
+                                                    <property name="fill">False</property>
+                                                    <property name="position">2</property>
+                                                  </packing>
+                                                </child>
+                                                <child>
+                                                  <widget class="GtkHBox" id="hbox_encoder_capture_inertial">
+                                                    <property name="visible">True</property>
+                                                    <property name="can_focus">False</property>
+                                                    <property name="spacing">4</property>
+                                                    <child>
+                                                      <widget class="GtkVSeparator" id="vseparator3">
+                                                        <property name="visible">True</property>
+                                                        <property name="can_focus">False</property>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="fill">True</property>
+                                                        <property name="position">0</property>
+                                                      </packing>
+                                                    </child>
+                                                    <child>
+                                                      <widget class="GtkCheckButton" 
id="checkbutton_encoder_capture_inertial">
+                                                        <property name="label" 
translatable="yes">Inertial</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">Inertial 
machine (Yoyo, VersaPulley)</property>
+                                                        <property 
name="use_action_appearance">False</property>
+                                                        <property name="draw_indicator">True</property>
+                                                        <signal name="clicked" 
handler="on_checkbutton_encoder_capture_inertial_clicked" swapped="no"/>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="fill">False</property>
+                                                        <property name="position">1</property>
+                                                      </packing>
+                                                    </child>
+                                                    <child>
+                                                      <widget class="GtkSpinButton" 
id="spin_encoder_capture_inertial">
+                                                        <property name="can_focus">True</property>
+                                                        <property name="has_tooltip">True</property>
+                                                        <property name="tooltip">Inertia Momentum in 
Kg*cm^2</property>
+                                                        <property name="invisible_char">●</property>
+                                                        <property name="invisible_char_set">True</property>
+                                                        <property 
name="primary_icon_activatable">False</property>
+                                                        <property 
name="secondary_icon_activatable">False</property>
+                                                        <property 
name="primary_icon_sensitive">True</property>
+                                                        <property 
name="secondary_icon_sensitive">True</property>
+                                                        <property name="adjustment">100 0 5000 1 10 
0</property>
+                                                        <property name="climb_rate">1</property>
+                                                        <property name="snap_to_ticks">True</property>
+                                                        <property name="numeric">True</property>
+                                                      </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_encoder_capture_inertial">
+                                                        <property name="can_focus">True</property>
+                                                        <property name="receives_default">True</property>
+                                                        <property name="has_tooltip">True</property>
+                                                        <property name="tooltip" translatable="yes">Calcule 
inertial momentum</property>
+                                                        <property 
name="use_action_appearance">False</property>
                                                         <child>
-                                                          <widget class="GtkHBox" id="hbox58">
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">False</property>
-                                                            <child>
-                                                            <widget class="GtkHBox" 
id="hbox_encoder_capture_inertial">
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">False</property>
-                                                            <property name="spacing">4</property>
-                                                            <child>
-                                                            <widget class="GtkCheckButton" 
id="checkbutton_encoder_capture_inertial">
-                                                            <property name="label" 
translatable="yes">Inertial</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">Inertial machine (Yoyo, VersaPulley)</property>
-                                                            <property 
name="use_action_appearance">False</property>
-                                                            <property name="draw_indicator">True</property>
-                                                            <signal name="clicked" 
handler="on_checkbutton_encoder_capture_inertial_clicked" swapped="no"/>
-                                                            </widget>
-                                                            <packing>
-                                                            <property name="expand">False</property>
-                                                            <property name="fill">False</property>
-                                                            <property name="position">0</property>
-                                                            </packing>
-                                                            </child>
-                                                            <child>
-                                                            <widget class="GtkSpinButton" 
id="spin_encoder_capture_inertial">
-                                                            <property name="can_focus">True</property>
-                                                            <property name="has_tooltip">True</property>
-                                                            <property name="tooltip">Inertia Momentum in 
Kg*cm^2</property>
-                                                            <property name="invisible_char">●</property>
-                                                            <property 
name="invisible_char_set">True</property>
-                                                            <property 
name="primary_icon_activatable">False</property>
-                                                            <property 
name="secondary_icon_activatable">False</property>
-                                                            <property 
name="primary_icon_sensitive">True</property>
-                                                            <property 
name="secondary_icon_sensitive">True</property>
-                                                            <property name="adjustment">100 0 5000 1 10 
0</property>
-                                                            <property name="climb_rate">1</property>
-                                                            <property name="snap_to_ticks">True</property>
-                                                            <property name="numeric">True</property>
-                                                            </widget>
-                                                            <packing>
-                                                            <property name="expand">False</property>
-                                                            <property name="fill">False</property>
-                                                            <property name="position">1</property>
-                                                            </packing>
-                                                            </child>
-                                                            <child>
-                                                            <widget class="GtkButton" 
id="button_encoder_capture_inertial">
-                                                            <property name="can_focus">True</property>
-                                                            <property name="receives_default">True</property>
-                                                            <property name="has_tooltip">True</property>
-                                                            <property name="tooltip" 
translatable="yes">Calcule inertial momentum</property>
-                                                            <property 
name="use_action_appearance">False</property>
-                                                            <child>
-                                                            <widget class="GtkImage" id="image32">
+                                                          <widget class="GtkImage" id="image32">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
                                                             <property name="stock">gtk-execute</property>
-                                                            </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">True</property>
-                                                            <property name="fill">True</property>
-                                                            <property name="position">0</property>
-                                                            </packing>
-                                                            </child>
-                                                            <child>
-                                                            <widget class="GtkHBox" 
id="hbox_encoder_capture_diameter">
-                                                            <property name="can_focus">False</property>
-                                                            <property name="spacing">4</property>
-                                                            <child>
-                                                            <widget class="GtkLabel" id="label118">
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">False</property>
-                                                            <property name="label" 
translatable="yes">Diameter</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="spin_encoder_capture_diameter">
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">True</property>
-                                                            <property name="has_tooltip">True</property>
-                                                            <property name="tooltip" 
translatable="yes">Diameter of inertia machine axis</property>
-                                                            <property name="invisible_char">●</property>
-                                                            <property 
name="invisible_char_set">True</property>
-                                                            <property 
name="primary_icon_activatable">False</property>
-                                                            <property 
name="secondary_icon_activatable">False</property>
-                                                            <property 
name="primary_icon_sensitive">True</property>
-                                                            <property 
name="secondary_icon_sensitive">True</property>
-                                                            <property name="adjustment">4 0 40 1 10 
0</property>
-                                                            <property name="climb_rate">1</property>
-                                                            <property name="digits">1</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="fill">False</property>
-                                                            <property name="position">1</property>
-                                                            </packing>
-                                                            </child>
-                                                            <child>
-                                                            <widget class="GtkLabel" id="label120">
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">False</property>
-                                                            <property name="label" 
translatable="yes">cm</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">True</property>
-                                                            <property name="position">1</property>
-                                                            </packing>
-                                                            </child>
                                                           </widget>
-                                                          <packing>
-                                                            <property name="top_attach">1</property>
-                                                            <property name="bottom_attach">2</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">False</property>
+                                                    <property name="fill">False</property>
+                                                    <property name="position">3</property>
+                                                  </packing>
+                                                </child>
+                                                <child>
+                                                  <widget class="GtkHBox" id="hbox_encoder_capture_diameter">
+                                                    <property name="can_focus">False</property>
+                                                    <property name="spacing">4</property>
+                                                    <child>
+                                                      <widget class="GtkVSeparator" id="vseparator2">
+                                                        <property name="visible">True</property>
+                                                        <property name="can_focus">False</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="label118">
+                                                        <property name="visible">True</property>
+                                                        <property name="can_focus">False</property>
+                                                        <property name="label" 
translatable="yes">Diameter</property>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="fill">False</property>
+                                                        <property name="position">1</property>
+                                                      </packing>
+                                                    </child>
+                                                    <child>
+                                                      <widget class="GtkSpinButton" 
id="spin_encoder_capture_diameter">
+                                                        <property name="visible">True</property>
+                                                        <property name="can_focus">True</property>
+                                                        <property name="has_tooltip">True</property>
+                                                        <property name="tooltip" translatable="yes">Diameter 
of inertia machine axis</property>
+                                                        <property name="invisible_char">●</property>
+                                                        <property name="invisible_char_set">True</property>
+                                                        <property 
name="primary_icon_activatable">False</property>
+                                                        <property 
name="secondary_icon_activatable">False</property>
+                                                        <property 
name="primary_icon_sensitive">True</property>
+                                                        <property 
name="secondary_icon_sensitive">True</property>
+                                                        <property name="adjustment">4 0 40 1 10 0</property>
+                                                        <property name="climb_rate">1</property>
+                                                        <property name="digits">1</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="fill">False</property>
+                                                        <property name="position">2</property>
+                                                      </packing>
+                                                    </child>
+                                                    <child>
+                                                      <widget class="GtkLabel" id="label120">
+                                                        <property name="visible">True</property>
+                                                        <property name="can_focus">False</property>
+                                                        <property name="label" 
translatable="yes">cm</property>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="fill">False</property>
+                                                        <property name="position">3</property>
+                                                      </packing>
+                                                    </child>
+                                                  </widget>
+                                                  <packing>
+                                                    <property name="expand">False</property>
+                                                    <property name="fill">False</property>
+                                                    <property name="position">4</property>
+                                                  </packing>
+                                                </child>
+                                                <child>
+                                                  <widget class="GtkHBox" id="hbox111">
+                                                    <property name="visible">True</property>
+                                                    <property name="can_focus">False</property>
+                                                    <property name="spacing">4</property>
+                                                    <child>
+                                                      <widget class="GtkButton" id="button_encoder_help">
+                                                        <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">Help on 
encoder types</property>
+                                                        <property 
name="use_action_appearance">False</property>
                                                         <child>
-                                                          <widget class="GtkButton" id="button_encoder_help">
-                                                            <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">Help 
on encoder types</property>
-                                                            <property 
name="use_action_appearance">False</property>
-                                                            <child>
-                                                            <widget class="GtkImage" id="image24">
+                                                          <widget class="GtkImage" id="image24">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
                                                             <property name="stock">gtk-help</property>
-                                                            </widget>
-                                                            </child>
                                                           </widget>
-                                                          <packing>
-                                                            <property name="left_attach">1</property>
-                                                            <property name="right_attach">2</property>
-                                                            <property name="x_options">GTK_FILL</property>
-                                                          </packing>
                                                         </child>
+                                                      </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_encoder_load_encoder">
+                                                        <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">Load 
encoder configuration</property>
+                                                        <property 
name="use_action_appearance">False</property>
                                                         <child>
-                                                          <widget class="GtkHBox" id="hbox111">
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">False</property>
-                                                            <property name="spacing">4</property>
-                                                            <child>
-                                                            <widget class="GtkButton" 
id="button_encoder_load_encoder">
-                                                            <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">Load 
encoder configuration</property>
-                                                            <property 
name="use_action_appearance">False</property>
-                                                            <child>
-                                                            <widget class="GtkImage" 
id="image_encoder_capture_open1">
+                                                          <widget class="GtkImage" 
id="image_encoder_capture_open1">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
                                                             <property name="stock">gtk-open</property>
-                                                            </widget>
-                                                            </child>
-                                                            </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_encoder_save_encoder">
-                                                            <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">Save 
encoder configuration</property>
-                                                            <property 
name="use_action_appearance">False</property>
-                                                            <child>
-                                                            <widget class="GtkImage" id="image10">
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">False</property>
-                                                            <property name="stock">gtk-save</property>
-                                                            </widget>
-                                                            </child>
-                                                            </widget>
-                                                            <packing>
-                                                            <property name="expand">False</property>
-                                                            <property name="fill">False</property>
-                                                            <property name="position">1</property>
-                                                            </packing>
-                                                            </child>
                                                           </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"/>
-                                                          </packing>
                                                         </child>
                                                       </widget>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="fill">False</property>
+                                                        <property name="position">1</property>
+                                                      </packing>
                                                     </child>
                                                     <child>
-                                                      <widget class="GtkLabel" id="label90">
+                                                      <widget class="GtkButton" 
id="button_encoder_save_encoder">
                                                         <property name="visible">True</property>
-                                                        <property name="can_focus">False</property>
-                                                        <property name="label" 
translatable="yes">Encoder</property>
+                                                        <property name="can_focus">True</property>
+                                                        <property name="receives_default">True</property>
+                                                        <property name="has_tooltip">True</property>
+                                                        <property name="tooltip" translatable="yes">Save 
encoder configuration</property>
+                                                        <property 
name="use_action_appearance">False</property>
+                                                        <child>
+                                                          <widget class="GtkImage" id="image10">
+                                                            <property name="visible">True</property>
+                                                            <property name="can_focus">False</property>
+                                                            <property name="stock">gtk-save</property>
+                                                          </widget>
+                                                        </child>
                                                       </widget>
                                                       <packing>
-                                                        <property name="tab_fill">False</property>
-                                                        <property name="type">tab</property>
+                                                        <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">True</property>
+                                                    <property name="pack_type">end</property>
+                                                    <property name="position">5</property>
+                                                  </packing>
+                                                </child>
+                                              </widget>
+                                              <packing>
+                                                <property name="expand">True</property>
+                                                <property name="fill">True</property>
+                                                <property name="position">0</property>
+                                              </packing>
+                                            </child>
+                                            <child>
+                                              <widget class="GtkAlignment" id="alignment21">
+                                                <property name="visible">True</property>
+                                                <property name="can_focus">False</property>
+                                                <property name="left_padding">8</property>
+                                                <property name="right_padding">8</property>
+                                                <child>
+                                                  <widget class="GtkHSeparator" id="hseparator8">
+                                                    <property name="visible">True</property>
+                                                    <property name="can_focus">False</property>
+                                                  </widget>
+                                                </child>
+                                              </widget>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="fill">True</property>
+                                                <property name="position">1</property>
+                                              </packing>
+                                            </child>
+                                            <child>
+                                              <widget class="GtkHBox" id="hbox96">
+                                                <property name="visible">True</property>
+                                                <property name="can_focus">False</property>
+                                                <property name="spacing">12</property>
+                                                <child>
+                                                  <widget class="GtkHBox" id="hbox79">
+                                                    <property name="visible">True</property>
+                                                    <property name="can_focus">False</property>
+                                                    <property name="border_width">8</property>
+                                                    <property name="spacing">4</property>
                                                     <child>
-                                                      <widget class="GtkHBox" id="hbox79">
+                                                      <widget class="GtkVBox" id="vbox18">
                                                         <property name="visible">True</property>
                                                         <property name="can_focus">False</property>
-                                                        <property name="border_width">8</property>
-                                                        <property name="spacing">4</property>
+                                                        <property name="spacing">8</property>
                                                         <child>
-                                                          <widget class="GtkVBox" id="vbox2">
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">False</property>
-                                                            <property name="spacing">8</property>
-                                                            <child>
-                                                            <widget class="GtkHBox" id="hbox86">
+                                                          <widget class="GtkHBox" id="hbox86">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
                                                             <property name="spacing">4</property>
@@ -12463,15 +12504,15 @@ on current Chronojump version.</property>
                                                             <property name="position">2</property>
                                                             </packing>
                                                             </child>
-                                                            </widget>
-                                                            <packing>
+                                                          </widget>
+                                                          <packing>
                                                             <property name="expand">True</property>
                                                             <property name="fill">True</property>
                                                             <property name="position">0</property>
-                                                            </packing>
-                                                            </child>
-                                                            <child>
-                                                            <widget class="GtkHBox" id="hbox112">
+                                                          </packing>
+                                                        </child>
+                                                        <child>
+                                                          <widget class="GtkHBox" id="hbox112">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
                                                             <property name="spacing">4</property>
@@ -12503,41 +12544,41 @@ on current Chronojump version.</property>
                                                             <property name="position">1</property>
                                                             </packing>
                                                             </child>
-                                                            </widget>
-                                                            <packing>
-                                                            <property name="expand">True</property>
-                                                            <property name="fill">True</property>
-                                                            <property name="position">1</property>
-                                                            </packing>
-                                                            </child>
                                                           </widget>
                                                           <packing>
                                                             <property name="expand">True</property>
                                                             <property name="fill">True</property>
-                                                            <property name="position">0</property>
-                                                          </packing>
-                                                        </child>
-                                                        <child>
-                                                          <widget class="GtkVSeparator" id="vseparator4">
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">False</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">True</property>
+                                                        <property name="fill">True</property>
+                                                        <property name="position">0</property>
+                                                      </packing>
+                                                    </child>
+                                                    <child>
+                                                      <widget class="GtkVSeparator" id="vseparator4">
+                                                        <property name="visible">True</property>
+                                                        <property name="can_focus">False</property>
+                                                      </widget>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="fill">True</property>
+                                                        <property name="position">1</property>
+                                                      </packing>
+                                                    </child>
+                                                    <child>
+                                                      <widget class="GtkTable" id="table11">
+                                                        <property name="visible">True</property>
+                                                        <property name="can_focus">False</property>
+                                                        <property name="n_rows">2</property>
+                                                        <property name="n_columns">3</property>
+                                                        <property name="column_spacing">4</property>
+                                                        <property name="row_spacing">8</property>
                                                         <child>
-                                                          <widget class="GtkTable" id="table11">
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">False</property>
-                                                            <property name="n_rows">2</property>
-                                                            <property name="n_columns">3</property>
-                                                            <property name="column_spacing">4</property>
-                                                            <property name="row_spacing">8</property>
-                                                            <child>
-                                                            <widget class="GtkLabel" id="label88">
+                                                          <widget class="GtkLabel" id="label88">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
                                                             <property name="has_tooltip">True</property>
@@ -12545,10 +12586,10 @@ on current Chronojump version.</property>
                                                             <property name="xalign">1</property>
                                                             <property name="label" translatable="yes">Extra 
weight</property>
                                                             <property name="use_markup">True</property>
-                                                            </widget>
-                                                            </child>
-                                                            <child>
-                                                            <widget class="GtkLabel" id="label78">
+                                                          </widget>
+                                                        </child>
+                                                        <child>
+                                                          <widget class="GtkLabel" id="label78">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
                                                             <property name="has_tooltip">True</property>
@@ -12556,15 +12597,15 @@ on current Chronojump version.</property>
                                                             <property name="xalign">1</property>
                                                             <property name="label" 
translatable="yes">Displaced</property>
                                                             <property name="use_markup">True</property>
-                                                            </widget>
-                                                            <packing>
+                                                          </widget>
+                                                          <packing>
                                                             <property name="left_attach">1</property>
                                                             <property name="right_attach">2</property>
                                                             <property name="x_options"/>
-                                                            </packing>
-                                                            </child>
-                                                            <child>
-                                                            <widget class="GtkHBox" id="hbox110">
+                                                          </packing>
+                                                        </child>
+                                                        <child>
+                                                          <widget class="GtkHBox" id="hbox110">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
                                                             <property name="spacing">4</property>
@@ -12598,7 +12639,6 @@ on current Chronojump version.</property>
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
                                                             <property name="stock">gtk-dialog-info</property>
-                                                            <property name="icon-size">2</property>
                                                             </widget>
                                                             </child>
                                                             </widget>
@@ -12608,15 +12648,15 @@ on current Chronojump version.</property>
                                                             <property name="position">1</property>
                                                             </packing>
                                                             </child>
-                                                            </widget>
-                                                            <packing>
+                                                          </widget>
+                                                          <packing>
                                                             <property name="left_attach">2</property>
                                                             <property name="right_attach">3</property>
                                                             <property name="x_options"/>
-                                                            </packing>
-                                                            </child>
-                                                            <child>
-                                                            <widget class="GtkSpinButton" 
id="spin_encoder_1RM_percent">
+                                                          </packing>
+                                                        </child>
+                                                        <child>
+                                                          <widget class="GtkSpinButton" 
id="spin_encoder_1RM_percent">
                                                             <property name="visible">True</property>
                                                             <property name="sensitive">False</property>
                                                             <property name="can_focus">True</property>
@@ -12632,17 +12672,17 @@ on current Chronojump version.</property>
                                                             <property name="digits">2</property>
                                                             <property name="snap_to_ticks">True</property>
                                                             <property name="numeric">True</property>
-                                                            </widget>
-                                                            <packing>
+                                                          </widget>
+                                                          <packing>
                                                             <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"/>
-                                                            </packing>
-                                                            </child>
-                                                            <child>
-                                                            <widget class="GtkSpinButton" 
id="spin_encoder_displaced_weight">
+                                                          </packing>
+                                                        </child>
+                                                        <child>
+                                                          <widget class="GtkSpinButton" 
id="spin_encoder_displaced_weight">
                                                             <property name="visible">True</property>
                                                             <property name="sensitive">False</property>
                                                             <property name="can_focus">True</property>
@@ -12657,17 +12697,17 @@ on current Chronojump version.</property>
                                                             <property name="climb_rate">1</property>
                                                             <property name="snap_to_ticks">True</property>
                                                             <property name="numeric">True</property>
-                                                            </widget>
-                                                            <packing>
+                                                          </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"/>
-                                                            </packing>
-                                                            </child>
-                                                            <child>
-                                                            <widget class="GtkSpinButton" 
id="spin_encoder_extra_weight">
+                                                          </packing>
+                                                        </child>
+                                                        <child>
+                                                          <widget class="GtkSpinButton" 
id="spin_encoder_extra_weight">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">True</property>
                                                             <property name="invisible_char">●</property>
@@ -12683,272 +12723,163 @@ on current Chronojump version.</property>
                                                             <property name="numeric">True</property>
                                                             <property 
name="update_policy">if-valid</property>
                                                             <signal name="value_changed" 
handler="on_spin_encoder_extra_weight_value_changed" swapped="no"/>
-                                                            </widget>
-                                                            <packing>
+                                                          </widget>
+                                                          <packing>
                                                             <property name="top_attach">1</property>
                                                             <property name="bottom_attach">2</property>
                                                             <property name="x_options"/>
-                                                            </packing>
-                                                            </child>
-                                                          </widget>
-                                                          <packing>
-                                                            <property name="expand">True</property>
-                                                            <property name="fill">True</property>
-                                                            <property name="position">2</property>
                                                           </packing>
                                                         </child>
                                                       </widget>
                                                       <packing>
-                                                        <property name="position">1</property>
-                                                      </packing>
-                                                    </child>
-                                                    <child>
-                                                      <widget class="GtkLabel" id="label108">
-                                                        <property name="visible">True</property>
-                                                        <property name="can_focus">False</property>
-                                                        <property name="label" 
translatable="yes">Exercise</property>
-                                                      </widget>
-                                                      <packing>
-                                                        <property name="position">1</property>
-                                                        <property name="tab_fill">False</property>
-                                                        <property name="type">tab</property>
+                                                        <property name="expand">True</property>
+                                                        <property name="fill">True</property>
+                                                        <property name="position">2</property>
                                                       </packing>
                                                     </child>
+                                                  </widget>
+                                                  <packing>
+                                                    <property name="expand">True</property>
+                                                    <property name="fill">True</property>
+                                                    <property name="position">0</property>
+                                                  </packing>
+                                                </child>
+                                                <child>
+                                                  <widget class="GtkVBox" id="vbox88">
+                                                    <property name="visible">True</property>
+                                                    <property name="can_focus">False</property>
+                                                    <property name="border_width">8</property>
+                                                    <property name="spacing">8</property>
                                                     <child>
-                                                      <widget class="GtkVBox" id="vbox19">
+                                                      <widget class="GtkHBox" id="hbox77">
                                                         <property name="visible">True</property>
                                                         <property name="can_focus">False</property>
-                                                        <property name="border_width">8</property>
+                                                        <property name="spacing">8</property>
                                                         <child>
-                                                          <widget class="GtkHBox" id="hbox76">
+                                                          <widget class="GtkHBox" id="hbox107">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
-                                                            <property name="spacing">10</property>
+                                                            <property name="spacing">2</property>
                                                             <child>
-                                                            <widget class="GtkHBox" id="hbox102">
+                                                            <widget class="GtkButton" 
id="button_encoder_capture_options">
                                                             <property name="visible">True</property>
-                                                            <property name="can_focus">False</property>
-                                                            <property name="spacing">12</property>
+                                                            <property name="can_focus">True</property>
+                                                            <property name="can_default">True</property>
+                                                            <property name="receives_default">True</property>
+                                                            <property name="has_tooltip">True</property>
+                                                            <property name="tooltip" 
translatable="yes">Options</property>
+                                                            <property 
name="use_action_appearance">False</property>
+                                                            <property name="use_underline">True</property>
+                                                            <signal name="clicked" 
handler="on_button_encoder_capture_options_clicked" swapped="no"/>
                                                             <child>
-                                                            <widget class="GtkLabel" id="label93">
+                                                            <widget class="GtkImage" id="image19">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
-                                                            <property name="label" 
translatable="yes">Type</property>
+                                                            <property name="stock">gtk-preferences</property>
                                                             </widget>
-                                                            <packing>
-                                                            <property name="expand">True</property>
-                                                            <property name="fill">True</property>
-                                                            <property name="position">0</property>
-                                                            </packing>
                                                             </child>
-                                                            <child>
-                                                            <widget class="GtkRadioButton" 
id="radiobutton_encoder_capture_safe">
-                                                            <property name="label" 
translatable="yes">Safe</property>
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">True</property>
-                                                            <property 
name="receives_default">False</property>
-                                                            <property 
name="use_action_appearance">False</property>
-                                                            <property name="active">True</property>
-                                                            <property name="draw_indicator">True</property>
                                                             </widget>
                                                             <packing>
                                                             <property name="expand">False</property>
                                                             <property name="fill">False</property>
-                                                            <property name="position">1</property>
+                                                            <property name="position">0</property>
                                                             </packing>
                                                             </child>
                                                             <child>
-                                                            <widget class="GtkRadioButton" 
id="radiobutton_encoder_capture_external">
-                                                            <property name="label" 
translatable="yes">External</property>
+                                                            <widget class="GtkButton" 
id="button_encoder_capture">
+                                                            <property name="label" 
translatable="yes">Capture</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">External</property>
+                                                            <property name="can_default">True</property>
+                                                            <property name="receives_default">True</property>
                                                             <property 
name="use_action_appearance">False</property>
-                                                            <property name="image_position">right</property>
-                                                            <property name="draw_indicator">True</property>
-                                                            <property 
name="group">radiobutton_encoder_capture_safe</property>
-                                                            </widget>
-                                                            <packing>
-                                                            <property name="expand">False</property>
-                                                            <property name="fill">False</property>
-                                                            <property name="position">2</property>
-                                                            </packing>
-                                                            </child>
+                                                            <property name="use_underline">True</property>
+                                                            <signal name="clicked" 
handler="on_button_encoder_capture_clicked" swapped="no"/>
                                                             </widget>
                                                             <packing>
-                                                            <property name="expand">False</property>
-                                                            <property name="fill">False</property>
-                                                            <property name="position">0</property>
-                                                            </packing>
-                                                            </child>
-                                                            <child>
-                                                            <placeholder/>
-                                                            </child>
-                                                          </widget>
-                                                          <packing>
                                                             <property name="expand">True</property>
                                                             <property name="fill">True</property>
-                                                            <property name="position">0</property>
-                                                          </packing>
-                                                        </child>
-                                                        <child>
-                                                          <widget class="GtkHBox" id="hbox113">
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">False</property>
-                                                            <property name="spacing">10</property>
-                                                            <child>
-                                                            <widget class="GtkHBox" id="hbox114">
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">False</property>
-                                                            <property name="spacing">4</property>
-                                                            <child>
-                                                            <widget class="GtkLabel" id="label111">
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">False</property>
-                                                            <property name="label" 
translatable="yes">Recording time</property>
-                                                            </widget>
-                                                            <packing>
-                                                            <property name="expand">False</property>
-                                                            <property name="fill">False</property>
-                                                            <property name="position">0</property>
+                                                            <property name="position">1</property>
                                                             </packing>
                                                             </child>
                                                             <child>
-                                                            <widget class="GtkSpinButton" 
id="spin_encoder_capture_time">
+                                                            <widget class="GtkButton" 
id="button_encoder_capture_cancel">
                                                             <property name="visible">True</property>
+                                                            <property name="sensitive">False</property>
                                                             <property name="can_focus">True</property>
+                                                            <property name="can_default">True</property>
+                                                            <property name="receives_default">True</property>
                                                             <property name="has_tooltip">True</property>
-                                                            <property name="tooltip" 
translatable="yes">Recording time</property>
-                                                            <property name="invisible_char">●</property>
-                                                            <property name="width_chars">3</property>
-                                                            <property 
name="invisible_char_set">True</property>
-                                                            <property 
name="primary_icon_activatable">False</property>
-                                                            <property 
name="secondary_icon_activatable">False</property>
-                                                            <property 
name="primary_icon_sensitive">True</property>
-                                                            <property 
name="secondary_icon_sensitive">True</property>
-                                                            <property name="adjustment">5 5 180 1 10 
0</property>
-                                                            <property name="climb_rate">1</property>
-                                                            <property name="snap_to_ticks">True</property>
-                                                            <property name="numeric">True</property>
-                                                            </widget>
-                                                            <packing>
-                                                            <property name="expand">False</property>
-                                                            <property name="fill">False</property>
-                                                            <property name="position">1</property>
-                                                            </packing>
-                                                            </child>
+                                                            <property name="tooltip" 
translatable="yes">Cancel process</property>
+                                                            <property 
name="use_action_appearance">False</property>
+                                                            <property name="use_underline">True</property>
+                                                            <signal name="clicked" 
handler="on_button_encoder_cancel_clicked" swapped="no"/>
                                                             <child>
-                                                            <widget class="GtkLabel" id="label71">
+                                                            <widget class="GtkImage" id="image8">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
-                                                            <property name="xalign">0</property>
-                                                            <property name="label" 
translatable="yes">s</property>
-                                                            <property name="use_markup">True</property>
-                                                            </widget>
-                                                            <packing>
-                                                            <property name="expand">False</property>
-                                                            <property name="fill">False</property>
-                                                            <property name="position">2</property>
-                                                            </packing>
-                                                            </child>
+                                                            <property name="stock">gtk-cancel</property>
                                                             </widget>
-                                                            <packing>
-                                                            <property name="expand">True</property>
-                                                            <property name="fill">True</property>
-                                                            <property name="position">0</property>
-                                                            </packing>
                                                             </child>
-                                                            <child>
-                                                            <widget class="GtkHBox" id="hbox115">
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">False</property>
-                                                            <property name="spacing">4</property>
-                                                            <child>
-                                                            <widget class="GtkLabel" id="label113">
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">False</property>
-                                                            <property name="label" 
translatable="yes">Minimal height</property>
                                                             </widget>
                                                             <packing>
                                                             <property name="expand">False</property>
                                                             <property name="fill">False</property>
-                                                            <property name="position">0</property>
+                                                            <property name="position">2</property>
                                                             </packing>
                                                             </child>
                                                             <child>
-                                                            <widget class="GtkSpinButton" 
id="spin_encoder_capture_min_height">
+                                                            <widget class="GtkButton" 
id="button_encoder_capture_finish">
                                                             <property name="visible">True</property>
+                                                            <property name="sensitive">False</property>
                                                             <property name="can_focus">True</property>
+                                                            <property name="can_default">True</property>
+                                                            <property name="receives_default">True</property>
                                                             <property name="has_tooltip">True</property>
-                                                            <property name="tooltip" 
translatable="yes">Minimal height</property>
-                                                            <property name="invisible_char">●</property>
-                                                            <property name="width_chars">3</property>
-                                                            <property 
name="invisible_char_set">True</property>
-                                                            <property 
name="primary_icon_activatable">False</property>
-                                                            <property 
name="secondary_icon_activatable">False</property>
-                                                            <property 
name="primary_icon_sensitive">True</property>
-                                                            <property 
name="secondary_icon_sensitive">True</property>
-                                                            <property name="adjustment">20 1 300 1 10 
0</property>
-                                                            <property name="climb_rate">1</property>
-                                                            <property name="snap_to_ticks">True</property>
-                                                            <property name="numeric">True</property>
-                                                            </widget>
-                                                            <packing>
-                                                            <property name="expand">False</property>
-                                                            <property name="fill">False</property>
-                                                            <property name="position">1</property>
-                                                            </packing>
-                                                            </child>
+                                                            <property name="tooltip" 
translatable="yes">Finish capture</property>
+                                                            <property 
name="use_action_appearance">False</property>
+                                                            <property name="use_underline">True</property>
+                                                            <signal name="clicked" 
handler="on_button_encoder_capture_finish_clicked" swapped="no"/>
                                                             <child>
-                                                            <widget class="GtkLabel" id="label81">
+                                                            <widget class="GtkImage" id="image13">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
-                                                            <property name="xalign">1</property>
-                                                            <property name="label" 
translatable="yes">cm</property>
-                                                            <property name="use_markup">True</property>
+                                                            <property name="stock">gtk-goto-last</property>
+                                                            </widget>
+                                                            </child>
                                                             </widget>
                                                             <packing>
                                                             <property name="expand">False</property>
                                                             <property name="fill">False</property>
-                                                            <property name="position">2</property>
+                                                            <property name="position">3</property>
                                                             </packing>
                                                             </child>
-                                                            </widget>
-                                                            <packing>
+                                                          </widget>
+                                                          <packing>
                                                             <property name="expand">True</property>
                                                             <property name="fill">True</property>
-                                                            <property name="position">1</property>
-                                                            </packing>
-                                                            </child>
-                                                            <child>
-                                                            <widget class="GtkButton" 
id="button_encoder_bells">
+                                                            <property name="position">0</property>
+                                                          </packing>
+                                                        </child>
+                                                        <child>
+                                                          <widget class="GtkButton" 
id="button_encoder_load_signal">
                                                             <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">Bells</property>
+                                                            <property name="tooltip" translatable="yes">Load 
signal</property>
                                                             <property 
name="use_action_appearance">False</property>
-                                                            <signal name="clicked" 
handler="on_button_encoder_bells_clicked" swapped="no"/>
+                                                            <signal name="clicked" 
handler="on_button_encoder_load_signal_clicked" swapped="no"/>
                                                             <child>
-                                                            <widget class="GtkImage" id="image_encoder_bell">
+                                                            <widget class="GtkImage" 
id="image_encoder_capture_open">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
-                                                            <property 
name="stock">gtk-missing-image</property>
+                                                            <property name="stock">gtk-open</property>
                                                             </widget>
                                                             </child>
-                                                            </widget>
-                                                            <packing>
-                                                            <property name="expand">False</property>
-                                                            <property name="fill">False</property>
-                                                            <property name="pack_type">end</property>
-                                                            <property name="position">2</property>
-                                                            </packing>
-                                                            </child>
                                                           </widget>
                                                           <packing>
-                                                            <property name="expand">True</property>
+                                                            <property name="expand">False</property>
                                                             <property name="fill">True</property>
                                                             <property name="pack_type">end</property>
                                                             <property name="position">1</property>
@@ -12956,276 +12887,97 @@ on current Chronojump version.</property>
                                                         </child>
                                                       </widget>
                                                       <packing>
-                                                        <property name="position">2</property>
-                                                        <property name="tab_fill">False</property>
-                                                      </packing>
-                                                    </child>
-                                                    <child>
-                                                      <widget class="GtkLabel" id="label89">
-                                                        <property name="visible">True</property>
-                                                        <property name="can_focus">False</property>
-                                                        <property name="label" 
translatable="yes">Capture</property>
-                                                      </widget>
-                                                      <packing>
-                                                        <property name="position">2</property>
-                                                        <property name="tab_fill">False</property>
-                                                        <property name="type">tab</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="GtkVBox" id="vbox18">
-                                                <property name="visible">True</property>
-                                                <property name="can_focus">False</property>
-                                                <child>
-                                                  <widget class="GtkHBox" id="hbox95">
-                                                    <property name="visible">True</property>
-                                                    <property name="can_focus">False</property>
-                                                    <property name="spacing">4</property>
-                                                    <child>
-                                                      <widget class="GtkLabel" 
id="label_video_feedback_encoder">
-                                                        <property name="visible">True</property>
-                                                        <property name="can_focus">False</property>
-                                                      </widget>
-                                                      <packing>
                                                         <property name="expand">True</property>
                                                         <property name="fill">True</property>
                                                         <property name="position">0</property>
                                                       </packing>
                                                     </child>
                                                     <child>
-                                                      <widget class="GtkCheckButton" 
id="checkbutton_video_encoder">
+                                                      <widget class="GtkHBox" id="hbox82">
                                                         <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">Record 
video (on / off)</property>
-                                                        <property 
name="use_action_appearance">False</property>
-                                                        <property name="relief">none</property>
-                                                        <property name="active">True</property>
-                                                        <property name="draw_indicator">True</property>
-                                                        <signal name="clicked" 
handler="on_checkbutton_video_encoder_clicked" swapped="no"/>
+                                                        <property name="can_focus">False</property>
+                                                        <property name="spacing">8</property>
                                                         <child>
-                                                          <widget class="GtkHBox" id="hbox94">
+                                                          <widget class="GtkHBox" id="hbox58">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
                                                             <property name="spacing">2</property>
                                                             <child>
-                                                            <widget class="GtkImage" 
id="image_video_yes_encoder">
-                                                            <property name="width_request">16</property>
-                                                            <property name="height_request">16</property>
+                                                            <widget class="GtkProgressBar" 
id="encoder_pulsebar_capture">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
-                                                            <property 
name="stock">gtk-media-record</property>
-                                                            <property name="icon-size">1</property>
+                                                            <property name="activity_mode">True</property>
+                                                            <property name="show_text">True</property>
+                                                            <property 
name="pulse_step">0.10000000149</property>
                                                             </widget>
                                                             <packing>
-                                                            <property name="expand">False</property>
-                                                            <property name="fill">False</property>
+                                                            <property name="expand">True</property>
+                                                            <property name="fill">True</property>
                                                             <property name="position">0</property>
                                                             </packing>
                                                             </child>
                                                             <child>
-                                                            <widget class="GtkImage" 
id="image_video_no_encoder">
-                                                            <property name="width_request">16</property>
-                                                            <property name="height_request">16</property>
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">False</property>
-                                                            <property name="stock">gtk-no</property>
-                                                            <property name="icon-size">1</property>
-                                                            </widget>
-                                                            <packing>
-                                                            <property name="expand">False</property>
-                                                            <property name="fill">False</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">1</property>
-                                                      </packing>
-                                                    </child>
-                                                    <child>
-                                                      <widget class="GtkButton" 
id="button_video_play_this_test_encoder">
-                                                        <property name="visible">True</property>
-                                                        <property name="sensitive">False</property>
-                                                        <property name="can_focus">True</property>
-                                                        <property name="receives_default">True</property>
-                                                        <property name="has_tooltip">True</property>
-                                                        <property name="tooltip" translatable="yes">Play 
Video (v)</property>
-                                                        <property 
name="use_action_appearance">False</property>
-                                                        <signal name="clicked" 
handler="on_video_play_this_test_encoder_clicked" swapped="no"/>
-                                                        <accelerator key="v" signal="clicked"/>
-                                                        <child>
-                                                          <widget class="GtkImage" id="image2">
+                                                            <widget class="GtkButton" 
id="button_encoder_recalculate">
                                                             <property name="visible">True</property>
-                                                            <property name="can_focus">False</property>
-                                                            <property name="stock">gtk-media-play</property>
-                                                            <property name="icon-size">1</property>
-                                                          </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">0</property>
-                                                  </packing>
-                                                </child>
-                                                <child>
-                                                  <widget class="GtkHBox" id="hbox_video_capture_encoder">
-                                                    <property name="width_request">120</property>
-                                                    <property name="visible">True</property>
-                                                    <property name="can_focus">False</property>
-                                                    <child>
-                                                      <placeholder/>
-                                                    </child>
-                                                  </widget>
-                                                  <packing>
-                                                    <property name="expand">True</property>
-                                                    <property name="fill">True</property>
-                                                    <property name="position">1</property>
-                                                  </packing>
-                                                </child>
-                                              </widget>
-                                              <packing>
-                                                <property name="expand">False</property>
-                                                <property name="fill">True</property>
-                                                <property name="padding">6</property>
-                                                <property name="pack_type">end</property>
-                                                <property name="position">1</property>
-                                              </packing>
-                                            </child>
-                                            <child>
-                                              <widget class="GtkVBox" id="vbox87">
-                                                <property name="visible">True</property>
-                                                <property name="can_focus">False</property>
-                                                <property name="spacing">4</property>
-                                                <child>
-                                                  <widget class="GtkHBox" id="hbox77">
-                                                    <property name="visible">True</property>
-                                                    <property name="can_focus">False</property>
-                                                    <property name="spacing">8</property>
-                                                    <child>
-                                                      <widget class="GtkHBox" id="hbox107">
-                                                        <property name="visible">True</property>
-                                                        <property name="can_focus">False</property>
-                                                        <property name="spacing">2</property>
-                                                        <child>
-                                                          <widget class="GtkButton" 
id="button_encoder_capture">
-                                                            <property name="label" 
translatable="yes">Capture</property>
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">True</property>
-                                                            <property name="can_default">True</property>
-                                                            <property name="receives_default">True</property>
-                                                            <property 
name="use_action_appearance">False</property>
-                                                            <property name="use_underline">True</property>
-                                                            <signal name="clicked" 
handler="on_button_encoder_capture_clicked" swapped="no"/>
-                                                          </widget>
-                                                          <packing>
-                                                            <property name="expand">True</property>
-                                                            <property name="fill">True</property>
-                                                            <property name="position">0</property>
-                                                          </packing>
-                                                        </child>
-                                                        <child>
-                                                          <widget class="GtkButton" 
id="button_encoder_capture_cancel">
-                                                            <property name="visible">True</property>
-                                                            <property name="sensitive">False</property>
                                                             <property name="can_focus">True</property>
                                                             <property name="can_default">True</property>
                                                             <property name="receives_default">True</property>
                                                             <property name="has_tooltip">True</property>
-                                                            <property name="tooltip" 
translatable="yes">Cancel process</property>
+                                                            <property name="tooltip" 
translatable="yes">Recalculate signal with changed parameters</property>
                                                             <property 
name="use_action_appearance">False</property>
                                                             <property name="use_underline">True</property>
-                                                            <signal name="clicked" 
handler="on_button_encoder_cancel_clicked" swapped="no"/>
+                                                            <signal name="clicked" 
handler="on_button_encoder_recalculate_clicked" swapped="no"/>
                                                             <child>
-                                                            <widget class="GtkImage" id="image8">
+                                                            <widget class="GtkImage" id="image23">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
-                                                            <property name="stock">gtk-cancel</property>
+                                                            <property name="stock">gtk-refresh</property>
                                                             </widget>
                                                             </child>
-                                                          </widget>
-                                                          <packing>
+                                                            </widget>
+                                                            <packing>
                                                             <property name="expand">False</property>
                                                             <property name="fill">False</property>
+                                                            <property name="pack_type">end</property>
                                                             <property name="position">1</property>
+                                                            </packing>
+                                                            </child>
+                                                          </widget>
+                                                          <packing>
+                                                            <property name="expand">True</property>
+                                                            <property name="fill">True</property>
+                                                            <property name="position">0</property>
                                                           </packing>
                                                         </child>
                                                         <child>
-                                                          <widget class="GtkButton" 
id="button_encoder_capture_finish">
+                                                          <widget class="GtkButton" 
id="button_encoder_delete_signal">
                                                             <property name="visible">True</property>
                                                             <property name="sensitive">False</property>
                                                             <property name="can_focus">True</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 capture</property>
+                                                            <property name="tooltip" 
translatable="yes">Delete signal</property>
                                                             <property 
name="use_action_appearance">False</property>
-                                                            <property name="use_underline">True</property>
-                                                            <signal name="clicked" 
handler="on_button_encoder_capture_finish_clicked" swapped="no"/>
+                                                            <signal name="clicked" 
handler="on_button_encoder_delete_signal_clicked" swapped="no"/>
                                                             <child>
-                                                            <widget class="GtkImage" id="image13">
+                                                            <widget class="GtkImage" 
id="image_encoder_signal_delete">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
-                                                            <property name="stock">gtk-goto-last</property>
+                                                            <property name="stock">gtk-delete</property>
                                                             </widget>
                                                             </child>
                                                           </widget>
                                                           <packing>
                                                             <property name="expand">False</property>
-                                                            <property name="fill">False</property>
-                                                            <property name="position">2</property>
+                                                            <property name="fill">True</property>
+                                                            <property name="pack_type">end</property>
+                                                            <property name="position">1</property>
                                                           </packing>
                                                         </child>
                                                       </widget>
                                                       <packing>
                                                         <property name="expand">True</property>
                                                         <property name="fill">True</property>
-                                                        <property name="position">0</property>
-                                                      </packing>
-                                                    </child>
-                                                    <child>
-                                                      <widget class="GtkButton" 
id="button_encoder_load_signal">
-                                                        <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">Load 
signal</property>
-                                                        <property 
name="use_action_appearance">False</property>
-                                                        <signal name="clicked" 
handler="on_button_encoder_load_signal_clicked" swapped="no"/>
-                                                        <child>
-                                                          <widget class="GtkImage" 
id="image_encoder_capture_open">
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">False</property>
-                                                            <property name="stock">gtk-open</property>
-                                                          </widget>
-                                                        </child>
-                                                      </widget>
-                                                      <packing>
-                                                        <property name="expand">False</property>
-                                                        <property name="fill">True</property>
-                                                        <property name="pack_type">end</property>
                                                         <property name="position">1</property>
                                                       </packing>
                                                     </child>
@@ -13233,147 +12985,139 @@ on current Chronojump version.</property>
                                                   <packing>
                                                     <property name="expand">True</property>
                                                     <property name="fill">True</property>
-                                                    <property name="position">0</property>
+                                                    <property name="position">1</property>
                                                   </packing>
                                                 </child>
                                                 <child>
-                                                  <widget class="GtkHBox" id="hbox82">
+                                                  <widget class="GtkVBox" id="vbox87">
                                                     <property name="visible">True</property>
                                                     <property name="can_focus">False</property>
-                                                    <property name="spacing">8</property>
                                                     <child>
-                                                      <widget class="GtkProgressBar" 
id="encoder_pulsebar_capture">
+                                                      <widget class="GtkHBox" id="hbox95">
                                                         <property name="visible">True</property>
                                                         <property name="can_focus">False</property>
-                                                        <property name="activity_mode">True</property>
-                                                        <property name="show_text">True</property>
-                                                        <property name="pulse_step">0.10000000149</property>
-                                                      </widget>
-                                                      <packing>
-                                                        <property name="expand">True</property>
-                                                        <property name="fill">True</property>
-                                                        <property name="position">0</property>
-                                                      </packing>
-                                                    </child>
-                                                    <child>
-                                                      <widget class="GtkButton" 
id="button_encoder_recalculate">
-                                                        <property name="visible">True</property>
-                                                        <property name="can_focus">True</property>
-                                                        <property name="can_default">True</property>
-                                                        <property name="receives_default">True</property>
-                                                        <property name="has_tooltip">True</property>
-                                                        <property name="tooltip" 
translatable="yes">Recalculate signal with changed parameters</property>
-                                                        <property 
name="use_action_appearance">False</property>
-                                                        <property name="use_underline">True</property>
-                                                        <signal name="clicked" 
handler="on_button_encoder_recalculate_clicked" swapped="no"/>
+                                                        <property name="spacing">4</property>
                                                         <child>
-                                                          <widget class="GtkImage" id="image23">
+                                                          <widget class="GtkLabel" 
id="label_video_feedback_encoder">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
-                                                            <property name="stock">gtk-refresh</property>
                                                           </widget>
+                                                          <packing>
+                                                            <property name="expand">True</property>
+                                                            <property name="fill">True</property>
+                                                            <property name="position">0</property>
+                                                          </packing>
                                                         </child>
-                                                      </widget>
-                                                      <packing>
-                                                        <property name="expand">False</property>
-                                                        <property name="fill">False</property>
-                                                        <property name="pack_type">end</property>
-                                                        <property name="position">1</property>
-                                                      </packing>
-                                                    </child>
-                                                  </widget>
-                                                  <packing>
-                                                    <property name="expand">True</property>
-                                                    <property name="fill">True</property>
-                                                    <property name="position">1</property>
-                                                  </packing>
-                                                </child>
-                                                <child>
-                                                  <widget class="GtkHBox" id="hbox87">
-                                                    <property name="visible">True</property>
-                                                    <property name="can_focus">False</property>
-                                                    <property name="spacing">8</property>
-                                                    <child>
-                                                      <widget class="GtkHBox" id="hbox85">
-                                                        <property name="width_request">150</property>
-                                                        <property name="visible">True</property>
-                                                        <property name="can_focus">False</property>
-                                                        <property name="spacing">2</property>
                                                         <child>
-                                                          <widget class="GtkEntry" 
id="entry_encoder_signal_comment">
+                                                          <widget class="GtkCheckButton" 
id="checkbutton_video_encoder">
+                                                            <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">Add 
a comment</property>
-                                                            <property name="invisible_char">●</property>
-                                                            <property 
name="invisible_char_set">True</property>
-                                                            <property 
name="primary_icon_activatable">False</property>
-                                                            <property 
name="secondary_icon_activatable">False</property>
-                                                            <property 
name="primary_icon_sensitive">True</property>
-                                                            <property 
name="secondary_icon_sensitive">True</property>
+                                                            <property name="tooltip" 
translatable="yes">Record video (on / off)</property>
+                                                            <property 
name="use_action_appearance">False</property>
+                                                            <property name="relief">none</property>
+                                                            <property name="active">True</property>
+                                                            <property name="draw_indicator">True</property>
+                                                            <signal name="clicked" 
handler="on_checkbutton_video_encoder_clicked" swapped="no"/>
+                                                            <child>
+                                                            <widget class="GtkHBox" id="hbox94">
+                                                            <property name="visible">True</property>
+                                                            <property name="can_focus">False</property>
+                                                            <property name="spacing">2</property>
+                                                            <child>
+                                                            <widget class="GtkImage" 
id="image_video_yes_encoder">
+                                                            <property name="width_request">16</property>
+                                                            <property name="height_request">16</property>
+                                                            <property name="visible">True</property>
+                                                            <property name="can_focus">False</property>
+                                                            <property 
name="stock">gtk-media-record</property>
+                                                            <property name="icon-size">1</property>
+                                                            </widget>
+                                                            <packing>
+                                                            <property name="expand">False</property>
+                                                            <property name="fill">False</property>
+                                                            <property name="position">0</property>
+                                                            </packing>
+                                                            </child>
+                                                            <child>
+                                                            <widget class="GtkImage" 
id="image_video_no_encoder">
+                                                            <property name="width_request">16</property>
+                                                            <property name="height_request">16</property>
+                                                            <property name="visible">True</property>
+                                                            <property name="can_focus">False</property>
+                                                            <property name="stock">gtk-no</property>
+                                                            <property name="icon-size">1</property>
+                                                            </widget>
+                                                            <packing>
+                                                            <property name="expand">False</property>
+                                                            <property name="fill">False</property>
+                                                            <property name="position">1</property>
+                                                            </packing>
+                                                            </child>
+                                                            </widget>
+                                                            </child>
                                                           </widget>
                                                           <packing>
-                                                            <property name="expand">True</property>
-                                                            <property name="fill">True</property>
-                                                            <property name="position">0</property>
+                                                            <property name="expand">False</property>
+                                                            <property name="fill">False</property>
+                                                            <property name="position">1</property>
                                                           </packing>
                                                         </child>
                                                         <child>
-                                                          <widget class="GtkButton" 
id="button_encoder_update_signal">
+                                                          <widget class="GtkButton" 
id="button_video_play_this_test_encoder">
+                                                            <property name="visible">True</property>
+                                                            <property name="sensitive">False</property>
                                                             <property name="can_focus">True</property>
                                                             <property name="receives_default">True</property>
                                                             <property name="has_tooltip">True</property>
-                                                            <property name="tooltip" 
translatable="yes">Update signal (save it again if changed)</property>
+                                                            <property name="tooltip" translatable="yes">Play 
Video (v)</property>
                                                             <property 
name="use_action_appearance">False</property>
-                                                            <signal name="clicked" 
handler="on_button_encoder_save_clicked" swapped="no"/>
+                                                            <signal name="clicked" 
handler="on_video_play_this_test_encoder_clicked" swapped="no"/>
+                                                            <accelerator key="v" signal="clicked"/>
                                                             <child>
-                                                            <widget class="GtkImage" id="image19">
+                                                            <widget class="GtkImage" id="image2">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
-                                                            <property name="stock">gtk-save</property>
+                                                            <property name="stock">gtk-media-play</property>
+                                                            <property name="icon-size">1</property>
                                                             </widget>
                                                             </child>
                                                           </widget>
                                                           <packing>
                                                             <property name="expand">False</property>
                                                             <property name="fill">False</property>
-                                                            <property name="position">1</property>
+                                                            <property name="position">2</property>
                                                           </packing>
                                                         </child>
                                                       </widget>
                                                       <packing>
-                                                        <property name="expand">True</property>
-                                                        <property name="fill">True</property>
+                                                        <property name="expand">False</property>
+                                                        <property name="fill">False</property>
                                                         <property name="position">0</property>
                                                       </packing>
                                                     </child>
                                                     <child>
-                                                      <widget class="GtkButton" 
id="button_encoder_delete_signal">
+                                                      <widget class="GtkHBox" 
id="hbox_video_capture_encoder">
+                                                        <property name="width_request">120</property>
                                                         <property name="visible">True</property>
-                                                        <property name="sensitive">False</property>
-                                                        <property name="can_focus">True</property>
-                                                        <property name="receives_default">True</property>
-                                                        <property name="has_tooltip">True</property>
-                                                        <property name="tooltip" translatable="yes">Delete 
signal</property>
-                                                        <property 
name="use_action_appearance">False</property>
-                                                        <signal name="clicked" 
handler="on_button_encoder_delete_signal_clicked" swapped="no"/>
+                                                        <property name="can_focus">False</property>
                                                         <child>
-                                                          <widget class="GtkImage" 
id="image_encoder_signal_delete">
-                                                            <property name="visible">True</property>
-                                                            <property name="can_focus">False</property>
-                                                            <property name="stock">gtk-delete</property>
-                                                          </widget>
+                                                          <placeholder/>
                                                         </child>
                                                       </widget>
                                                       <packing>
-                                                        <property name="expand">False</property>
+                                                        <property name="expand">True</property>
                                                         <property name="fill">True</property>
                                                         <property name="position">1</property>
                                                       </packing>
                                                     </child>
                                                   </widget>
                                                   <packing>
-                                                    <property name="expand">True</property>
+                                                    <property name="expand">False</property>
                                                     <property name="fill">True</property>
+                                                    <property name="padding">6</property>
+                                                    <property name="pack_type">end</property>
                                                     <property name="position">2</property>
                                                   </packing>
                                                 </child>
@@ -20723,6 +20467,298 @@ comments</property>
       </widget>
     </child>
   </widget>
+  <widget class="GtkWindow" id="encoder_capture_options">
+    <property name="visible">True</property>
+    <property name="can_focus">False</property>
+    <property name="border_width">10</property>
+    <property name="title" translatable="yes">Encoder capture options</property>
+    <property name="resizable">False</property>
+    <property name="type_hint">dialog</property>
+    <signal name="delete_event" handler="on_delete_event" swapped="no"/>
+    <child>
+      <widget class="GtkVBox" id="vbox27">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="spacing">16</property>
+        <child>
+          <widget class="GtkTable" id="table7">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="n_rows">4</property>
+            <property name="n_columns">2</property>
+            <property name="column_spacing">12</property>
+            <property name="row_spacing">8</property>
+            <child>
+              <widget class="GtkLabel" id="label1">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">Mode</property>
+              </widget>
+            </child>
+            <child>
+              <widget class="GtkHBox" id="hbox102">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="spacing">10</property>
+                <child>
+                  <widget class="GtkRadioButton" id="radiobutton_encoder_capture_safe">
+                    <property name="label" translatable="yes">Safe</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">Safe</property>
+                    <property name="use_action_appearance">False</property>
+                    <property name="active">True</property>
+                    <property name="draw_indicator">True</property>
+                  </widget>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                    <property name="position">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <widget class="GtkRadioButton" id="radiobutton_encoder_capture_external">
+                    <property name="label" translatable="yes">External</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">External</property>
+                    <property name="use_action_appearance">False</property>
+                    <property name="image_position">right</property>
+                    <property name="draw_indicator">True</property>
+                    <property name="group">radiobutton_encoder_capture_safe</property>
+                  </widget>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+              </widget>
+              <packing>
+                <property name="left_attach">1</property>
+                <property name="right_attach">2</property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkLabel" id="label2">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">Recording time</property>
+              </widget>
+              <packing>
+                <property name="top_attach">1</property>
+                <property name="bottom_attach">2</property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkLabel" id="label3">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">Minimal height</property>
+              </widget>
+              <packing>
+                <property name="top_attach">2</property>
+                <property name="bottom_attach">3</property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkLabel" id="label4">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">Feedback</property>
+              </widget>
+              <packing>
+                <property name="top_attach">3</property>
+                <property name="bottom_attach">4</property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkHBox" id="hbox114">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="spacing">4</property>
+                <child>
+                  <widget class="GtkSpinButton" id="spin_encoder_capture_time">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="has_tooltip">True</property>
+                    <property name="tooltip" translatable="yes">Recording time</property>
+                    <property name="invisible_char">●</property>
+                    <property name="width_chars">3</property>
+                    <property name="invisible_char_set">True</property>
+                    <property name="primary_icon_activatable">False</property>
+                    <property name="secondary_icon_activatable">False</property>
+                    <property name="primary_icon_sensitive">True</property>
+                    <property name="secondary_icon_sensitive">True</property>
+                    <property name="adjustment">5 5 180 1 10 0</property>
+                    <property name="climb_rate">1</property>
+                    <property name="snap_to_ticks">True</property>
+                    <property name="numeric">True</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="label71">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">s</property>
+                    <property name="use_markup">True</property>
+                  </widget>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+              </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>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkHBox" id="hbox115">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="spacing">4</property>
+                <child>
+                  <widget class="GtkSpinButton" id="spin_encoder_capture_min_height">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="has_tooltip">True</property>
+                    <property name="tooltip" translatable="yes">Minimal height</property>
+                    <property name="invisible_char">●</property>
+                    <property name="width_chars">3</property>
+                    <property name="invisible_char_set">True</property>
+                    <property name="primary_icon_activatable">False</property>
+                    <property name="secondary_icon_activatable">False</property>
+                    <property name="primary_icon_sensitive">True</property>
+                    <property name="secondary_icon_sensitive">True</property>
+                    <property name="adjustment">20 1 300 1 10 0</property>
+                    <property name="climb_rate">1</property>
+                    <property name="snap_to_ticks">True</property>
+                    <property name="numeric">True</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="xalign">1</property>
+                    <property name="label" translatable="yes">cm</property>
+                    <property name="use_markup">True</property>
+                  </widget>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                    <property name="position">1</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>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkHBox" id="hbox1">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <child>
+                  <widget class="GtkButton" id="button_encoder_bells">
+                    <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">Bells</property>
+                    <property name="use_action_appearance">False</property>
+                    <property name="xalign">0</property>
+                    <signal name="clicked" handler="on_button_encoder_bells_clicked" swapped="no"/>
+                    <child>
+                      <widget class="GtkImage" id="image_encoder_bell">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="stock">gtk-missing-image</property>
+                      </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="left_attach">1</property>
+                <property name="right_attach">2</property>
+                <property name="top_attach">3</property>
+                <property name="bottom_attach">4</property>
+                <property name="x_options">GTK_FILL</property>
+              </packing>
+            </child>
+          </widget>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">False</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+        <child>
+          <widget class="GtkHButtonBox" id="hbuttonbox17">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="layout_style">spread</property>
+            <child>
+              <widget class="GtkButton" id="button_close">
+                <property name="label">gtk-close</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="receives_default">True</property>
+                <property name="use_action_appearance">False</property>
+                <property name="use_stock">True</property>
+                <signal name="clicked" handler="on_button_close_clicked" swapped="no"/>
+              </widget>
+              <packing>
+                <property name="expand">False</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="pack_type">end</property>
+            <property name="position">1</property>
+          </packing>
+        </child>
+      </widget>
+    </child>
+  </widget>
   <widget class="GtkDialog" id="error_dialog">
     <property name="visible">True</property>
     <property name="can_focus">False</property>
diff --git a/src/gui/chronojump.cs b/src/gui/chronojump.cs
index b0c80e0..ff426de 100644
--- a/src/gui/chronojump.cs
+++ b/src/gui/chronojump.cs
@@ -733,7 +733,6 @@ public partial class ChronoJumpWindow
                pixbuf = new Pixbuf (null, Util.GetImagePath(false) + "stock_bell.png");
                image_jump_reactive_bell.Pixbuf = pixbuf;
                image_run_interval_bell.Pixbuf = pixbuf;
-               image_encoder_bell.Pixbuf = pixbuf;
                
                pixbuf = new Pixbuf (null, Util.GetImagePath(false) + "preferences-system.png");
                image_jump_reactive_repair.Pixbuf = pixbuf;
@@ -5381,10 +5380,6 @@ Console.WriteLine("X");
                repetitiveConditionsWin.View(Constants.BellModes.RUNS, volumeOn);
        }
        
-       private void on_button_encoder_bells_clicked(object o, EventArgs args) {
-               repetitiveConditionsWin.View(Constants.BellModes.ENCODER, volumeOn);
-       }
-               
        private void on_repetitive_conditions_closed(object o, EventArgs args) {
                //treeview_encoder should be updated (to colorize some cells)
                //only if there was data
diff --git a/src/gui/encoder.cs b/src/gui/encoder.cs
index dcc3de3..f6167e1 100644
--- a/src/gui/encoder.cs
+++ b/src/gui/encoder.cs
@@ -41,6 +41,7 @@ public partial class ChronoJumpWindow
        [Widget] Gtk.RadioButton radiobutton_encoder_capture_rotary;
        [Widget] Gtk.RadioButton radiobutton_encoder_capture_rotary_friction;
        [Widget] Gtk.RadioButton radiobutton_encoder_capture_rotary_axis;
+       [Widget] Gtk.Box hbox_checkbutton_encoder_capture_inverted;
        [Widget] Gtk.CheckButton checkbutton_encoder_capture_inverted;
        [Widget] Gtk.CheckButton checkbutton_encoder_capture_inertial;
        [Widget] Gtk.Box hbox_encoder_capture_rotary_f_a;
@@ -53,8 +54,6 @@ public partial class ChronoJumpWindow
        [Widget] Gtk.Box hbox_encoder_capture_diameter;
 
        [Widget] Gtk.Button button_encoder_capture;
-       [Widget] Gtk.RadioButton radiobutton_encoder_capture_safe;
-       [Widget] Gtk.RadioButton radiobutton_encoder_capture_external;
        [Widget] Gtk.Button button_encoder_bells;
        [Widget] Gtk.Button button_encoder_capture_cancel;
        [Widget] Gtk.Button button_encoder_capture_finish;
@@ -62,14 +61,11 @@ public partial class ChronoJumpWindow
        [Widget] Gtk.Button button_encoder_load_signal;
        [Widget] Gtk.Button button_video_play_this_test_encoder;
        [Widget] Gtk.Viewport viewport_image_encoder_capture;
-       [Widget] Gtk.Image image_encoder_bell;
-       [Widget] Gtk.SpinButton spin_encoder_capture_time;
-       [Widget] Gtk.SpinButton spin_encoder_capture_min_height;
        [Widget] Gtk.SpinButton spin_encoder_capture_curves_height_range;
        [Widget] Gtk.Image image_encoder_capture;
        [Widget] Gtk.Image image_encoder_capture_open;
        [Widget] Gtk.ProgressBar encoder_pulsebar_capture;
-       [Widget] Gtk.Entry entry_encoder_signal_comment;
+       //[Widget] Gtk.Entry entry_encoder_signal_comment;
        [Widget] Gtk.Entry entry_encoder_curve_comment;
        [Widget] Gtk.Button button_encoder_delete_curve;
        [Widget] Gtk.Button button_encoder_save_curve;
@@ -167,6 +163,8 @@ public partial class ChronoJumpWindow
 
        bool lastRecalculateWasInverted;
        //bool capturingRotaryInertial;
+               
+       EncoderCaptureOptionsWindow encoderCaptureOptionsWin;
 
        /* 
         * this contains last EncoderSQL captured, recalculated or loaded
@@ -225,8 +223,20 @@ public partial class ChronoJumpWindow
                
                spin_encoder_capture_inertial.Value = Convert.ToDouble(Util.ChangeDecimalSeparator(
                                        SqlitePreferences.Select("inertialmomentum"))) * 10000;
+               
+               encoderCaptureOptionsWin = EncoderCaptureOptionsWindow.Create();
+               encoderCaptureOptionsWin.FakeButtonClose.Clicked += new 
EventHandler(on_encoder_capture_options_closed);
+       }
+       
+       
+       void on_button_encoder_capture_options_clicked (object o, EventArgs args) {
+               encoderCaptureOptionsWin.View(repetitiveConditionsWin, volumeOn);
        }
        
+       private void on_encoder_capture_options_closed(object o, EventArgs args) {
+               Log.WriteLine("closed");
+       }
+
        void on_button_encoder_capture_clicked (object o, EventArgs args) 
        {
                if(chronopicWin.GetEncoderPort() == Util.GetDefaultPort()) {
@@ -279,8 +289,8 @@ public partial class ChronoJumpWindow
                string exerciseNameShown = UtilGtk.ComboGetActive(combo_encoder_exercise);
                //capture data
                EncoderParams ep = new EncoderParams(
-                               (int) spin_encoder_capture_time.Value, 
-                               (int) spin_encoder_capture_min_height.Value, 
+                               (int) encoderCaptureOptionsWin.spin_encoder_capture_time.Value, 
+                               (int) encoderCaptureOptionsWin.spin_encoder_capture_min_height.Value, 
                                getExercisePercentBodyWeightFromCombo (),
                                Util.ConvertToPoint(findMassFromCombo(true)),
                                Util.ConvertToPoint(encoderSmoothCon),                  //R decimal: '.'
@@ -309,7 +319,7 @@ public partial class ChronoJumpWindow
                SqlitePreferences.Update("inertialmomentum", 
                                Util.ConvertToPoint((double) spin_encoder_capture_inertial.Value / 10000), 
false);
 
-               if (radiobutton_encoder_capture_external.Active) {
+               if (encoderCaptureOptionsWin.radiobutton_encoder_capture_external.Active) {
                        encoderStartVideoRecord();
                
                        //wait to ensure label "Rec" has been shown
@@ -323,20 +333,20 @@ public partial class ChronoJumpWindow
                                        Util.ConvertToPoint(findMassFromCombo(true)) + "Kg)",
                                        es, chronopicWin.GetEncoderPort());
                        
-                       entry_encoder_signal_comment.Text = "";
+                       //entry_encoder_signal_comment.Text = "";
                        
                        encoderStopVideoRecord();
                        
                        calculeCurves();
                }
-               else if (radiobutton_encoder_capture_safe.Active) {
+               else if (encoderCaptureOptionsWin.radiobutton_encoder_capture_safe.Active) {
                        if(notebook_encoder_capture.CurrentPage == 1)
                                notebook_encoder_capture.PrevPage();
 
                        Log.WriteLine("AAAAAAAAAAAAAAA");
                        encoderThreadStart(encoderModes.CAPTURE);
                        
-                       entry_encoder_signal_comment.Text = "";
+                       //entry_encoder_signal_comment.Text = "";
 
                        Log.WriteLine("ZZZZZZZZZZZZZZZ");
                }
@@ -350,12 +360,12 @@ public partial class ChronoJumpWindow
        
        void on_radiobutton_encoder_capture_l_r_toggled (object o, EventArgs args) {
                if(radiobutton_encoder_capture_linear.Active) {
-                       checkbutton_encoder_capture_inverted.Visible = true;
+                       hbox_checkbutton_encoder_capture_inverted.Visible = true;
                        hbox_encoder_capture_rotary_f_a.Visible = false;
                        
                        hbox_encoder_capture_diameter.Visible = (checkbutton_encoder_capture_inertial.Active);
                } else {
-                       checkbutton_encoder_capture_inverted.Visible = false;
+                       hbox_checkbutton_encoder_capture_inverted.Visible = false;
                        hbox_encoder_capture_rotary_f_a.Visible = true;
                
                        hbox_encoder_capture_diameter.Visible = 
(radiobutton_encoder_capture_rotary_axis.Active);
@@ -680,8 +690,8 @@ public partial class ChronoJumpWindow
                                "",     //signalOrCurve,
                                "",     //fileSaved,    //to know date do: select substr(name,-23,19) from 
encoder;
                                "",     //path,                 //url
-                               (int) spin_encoder_capture_time.Value, 
-                               (int) spin_encoder_capture_min_height.Value, 
+                               (int) encoderCaptureOptionsWin.spin_encoder_capture_time.Value, 
+                               (int) encoderCaptureOptionsWin.spin_encoder_capture_min_height.Value, 
                                -1,     //Since 1.3.7 smooth is not stored in curves
                                "",     //desc,
                                "","",
@@ -692,7 +702,7 @@ public partial class ChronoJumpWindow
 
 
                EncoderParams ep = new EncoderParams(
-                               (int) spin_encoder_capture_min_height.Value, 
+                               (int) encoderCaptureOptionsWin.spin_encoder_capture_min_height.Value, 
                                getExercisePercentBodyWeightFromCombo (),
                                Util.ConvertToPoint(findMassFromCombo(true)),
                                findEccon(true),                                        //force ecS (ecc-conc 
separated)
@@ -1174,8 +1184,8 @@ public partial class ChronoJumpWindow
                                combo_encoder_laterality.Active = 
UtilGtk.ComboMakeActive(combo_encoder_laterality, es.laterality);
                                spin_encoder_extra_weight.Value = Convert.ToInt32(es.extraWeight);
 
-                               spin_encoder_capture_min_height.Value = es.minHeight;
-                               entry_encoder_signal_comment.Text = es.description;
+                               encoderCaptureOptionsWin.spin_encoder_capture_min_height.Value = es.minHeight;
+                               //entry_encoder_signal_comment.Text = es.description;
                                encoderTimeStamp = es.GetDate(false); 
                                encoderSignalUniqueID = es.uniqueID;
                                button_video_play_this_test_encoder.Sensitive = (es.future2 != "");
@@ -1424,7 +1434,7 @@ public partial class ChronoJumpWindow
                        treeviewEncoderCaptureRemoveColumns();
                        encoderButtonsSensitive(encoderSensEnum.DONENOSIGNAL);
                        encoder_pulsebar_capture.Text = Catalog.GetString("Signal deleted");
-                       entry_encoder_signal_comment.Text = "";
+                       //entry_encoder_signal_comment.Text = "";
                }
        }
 
@@ -1579,7 +1589,8 @@ public partial class ChronoJumpWindow
                                        currentPerson.Name, encoderTimeStamp, curveIDMax);
                        path = Util.GetEncoderSessionDataCurveDir(currentSession.UniqueID);
                } else { //signal
-                       desc = Util.RemoveTildeAndColonAndDot(entry_encoder_signal_comment.Text.ToString());
+                       //desc = Util.RemoveTildeAndColonAndDot(entry_encoder_signal_comment.Text.ToString());
+                       desc = "";
 
                        fileSaved = Util.CopyTempToEncoderData (currentSession.UniqueID, 
currentPerson.UniqueID, 
                                        currentPerson.Name, encoderTimeStamp);
@@ -1696,7 +1707,7 @@ public partial class ChronoJumpWindow
                                Util.ChangeSpaceAndMinusForUnderscore(exerciseNameShown) + "----(" + 
                                Util.ConvertToPoint(findMassFromCombo(true)) + "Kg)",
                                //es, 
-                               (int) spin_encoder_capture_time.Value, 
+                               (int) encoderCaptureOptionsWin.spin_encoder_capture_time.Value, 
                                Util.GetEncoderDataTempFileName(),
                                chronopicWin.GetEncoderPort());
        
@@ -2156,7 +2167,7 @@ Log.WriteLine(str);
                        }
 
                        ep = new EncoderParams(
-                                       (int) spin_encoder_capture_min_height.Value, 
+                                       (int) encoderCaptureOptionsWin.spin_encoder_capture_min_height.Value, 
                                        getExercisePercentBodyWeightFromCombo (),
                                        Util.ConvertToPoint(findMassFromCombo(true)),
                                        findEccon(false),               //do not force ecS (ecc-conc 
separated)
@@ -3699,15 +3710,18 @@ Log.WriteLine(str);
 
        private void updateEncoderCaptureGraphRCalc() 
        {
+Log.Write("A");
                if(ecca.ecc.Count <= ecca.curvesDone) 
                        return;
 
+Log.Write("B");
                Log.WriteLine("calling rdotnet: direction, start, end");
                EncoderCaptureCurve ecc = (EncoderCaptureCurve) ecca.ecc[ecca.curvesDone];
                Log.WriteLine(ecc.DirectionAsString());
                Log.WriteLine(ecc.startFrame.ToString());
                Log.WriteLine(ecc.endFrame.ToString());
 
+Log.Write("C");
                //evaluate only concentric curves       
                if(ecc.up && (ecc.endFrame - ecc.startFrame) > 0) {
                        int [] curve = new int[ecc.endFrame - ecc.startFrame];
@@ -3716,6 +3730,7 @@ Log.WriteLine(str);
                                k++;
                        }
 
+Log.Write("D");
                        IntegerVector curveToR = rengine.CreateIntegerVector(curve);
                        rengine.SetSymbol("curveToR", curveToR);
 
@@ -3728,6 +3743,7 @@ Log.WriteLine(str);
                                return;
                        }
 
+Log.Write("E");
                        //reduce curve by speed, the same way as graph.R
                        rengine.Evaluate("b=extrema(speedCut$y)");
                        rengine.Evaluate("maxSpeedT <- min(which(speedCut$y == max(speedCut$y)))");
@@ -3740,6 +3756,7 @@ Log.WriteLine(str);
                        rengine.Evaluate("bcross <- b$cross[,2]");
                        IntegerVector bcross = rengine.GetSymbol("bcross").AsInteger();
 
+Log.Write("F");
                        int x_ini = 0;  
                        if(bcrossLen == 0)
                                x_ini = 0;
@@ -3754,6 +3771,7 @@ Log.WriteLine(str);
                                }
                        }
 
+Log.Write("G");
                        rengine.Evaluate("curveToRcumsum = cumsum(curveToR)");
                        rengine.Evaluate("firstFrameAtTop <- min(which(curveToRcumsum == max 
(curveToRcumsum)))");
                        int x_end = rengine.GetSymbol("firstFrameAtTop").AsInteger().First();
@@ -3768,6 +3786,7 @@ Log.WriteLine(str);
                                curveToRreduced[k++] = curveToR[i];                             
                        rengine.SetSymbol("curveToRreduced", curveToRreduced);
 
+Log.Write("H");
                        //2) do speed and accel for curve once reducedCurveBySpeed
 
                        //cannot do smooth.spline with less than 4 values
@@ -3779,12 +3798,14 @@ Log.WriteLine(str);
                                return;
                        }
 
+Log.Write("I");
                        rengine.Evaluate("accel <- predict( speed, deriv=1 )");
 
 
                        rengine.Evaluate("curveToRreduced.cumsum <- cumsum(curveToRreduced)");
                        rengine.Evaluate("range <- 
abs(curveToRreduced.cumsum[length(curveToRreduced)]-curveToRreduced.cumsum[1])");
 
+Log.Write("J");
                        //propulsive stuff
                        //TODO: implement this
                        //end of propulsive stuff
@@ -3801,6 +3822,7 @@ Log.WriteLine(str);
                        rengine.Evaluate("power <- force*speed$y");
 
 
+Log.Write("K");
                        //TODO: change this, obtain from GUI
                        string eccon = "c";
 
@@ -3839,10 +3861,12 @@ Log.WriteLine(str);
                        peakPowerT = peakPowerT / 1000; //ms -> s
                        double pp_ppt = peakPower / peakPowerT;
 
+Log.Write("L");
                        Log.WriteLine(string.Format(
                                                "height: {0}\nmeanSpeed: {1}\n, maxSpeed: {2}\n, meanPower: 
{3}\npeakPower: {4}\npeakPowerT: {5}", 
                                                height, meanSpeed, maxSpeed, meanPower, peakPower, 
peakPowerT));
                }
+Log.Write("M");
 
                ecca.curvesDone ++;
        }
@@ -4048,7 +4072,7 @@ Log.WriteLine(str);
        
        private void updatePulsebar (encoderModes mode) {
                if(mode == encoderModes.CAPTURE) {
-                       int selectedTime = (int) spin_encoder_capture_time.Value;
+                       int selectedTime = (int) encoderCaptureOptionsWin.spin_encoder_capture_time.Value;
                        encoder_pulsebar_capture.Fraction = Util.DivideSafeFraction(
                                        (selectedTime - encoderCaptureCountdown), selectedTime);
                        encoder_pulsebar_capture.Text = encoderCaptureCountdown + " s";
@@ -4221,3 +4245,78 @@ Log.WriteLine(str);
        /* end of video stuff */
 
 }      
+       
+
+public class EncoderCaptureOptionsWindow {
+
+       [Widget] Gtk.Window encoder_capture_options;
+       static EncoderCaptureOptionsWindow EncoderCaptureOptionsWindowBox;
+       
+       [Widget] public Gtk.RadioButton radiobutton_encoder_capture_safe;
+       [Widget] public Gtk.RadioButton radiobutton_encoder_capture_external;
+       [Widget] public Gtk.SpinButton spin_encoder_capture_time;
+       [Widget] public Gtk.SpinButton spin_encoder_capture_min_height;
+       [Widget] Gtk.Image image_encoder_bell;
+       [Widget] Gtk.Button button_close;
+       
+       RepetitiveConditionsWindow repetitiveConditionsWin;
+       bool volumeOn;
+       
+       public Gtk.Button FakeButtonClose;
+               
+       EncoderCaptureOptionsWindow () { 
+               Glade.XML gladeXML;
+               gladeXML = Glade.XML.FromAssembly (Util.GetGladePath() + "chronojump.glade", 
"encoder_capture_options", null);
+               gladeXML.Autoconnect(this);
+       
+               //don't show until View is called
+               encoder_capture_options.Hide ();
+
+               //put an icon to window
+               UtilGtk.IconWindow(encoder_capture_options);
+               
+               FakeButtonClose = new Gtk.Button();
+               
+               //putNonStandardIcons
+               Pixbuf pixbuf = new Pixbuf (null, Util.GetImagePath(false) + "stock_bell.png");
+               image_encoder_bell.Pixbuf = pixbuf;
+       }
+
+       
+       static public EncoderCaptureOptionsWindow Create () {
+               if (EncoderCaptureOptionsWindowBox == null)
+                       EncoderCaptureOptionsWindowBox = new EncoderCaptureOptionsWindow ();
+               
+               return EncoderCaptureOptionsWindowBox;
+       }
+
+       public void View (RepetitiveConditionsWindow repetitiveConditionsWin, bool volumeOn)
+       {
+               if (EncoderCaptureOptionsWindowBox == null) 
+                       EncoderCaptureOptionsWindowBox = new EncoderCaptureOptionsWindow ();
+               
+               EncoderCaptureOptionsWindowBox.repetitiveConditionsWin = repetitiveConditionsWin;
+               EncoderCaptureOptionsWindowBox.volumeOn = volumeOn;
+
+               //show window
+               EncoderCaptureOptionsWindowBox.encoder_capture_options.Show ();
+       }
+       
+       private void on_button_encoder_bells_clicked(object o, EventArgs args) {
+               repetitiveConditionsWin.View(Constants.BellModes.ENCODER, volumeOn);
+       }
+
+       protected virtual void on_button_close_clicked (object o, EventArgs args)
+       {
+               EncoderCaptureOptionsWindowBox.encoder_capture_options.Hide();
+               FakeButtonClose.Click();
+               //EncoderCaptureOptionsWindowBox = null;
+       }
+       
+       protected virtual void on_delete_event (object o, DeleteEventArgs args)
+       {
+               button_close.Click();
+               args.RetVal = true;
+       }
+}
+


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