[chronojump] ForceSensorExercise window main logic done



commit 704089a8d8b5cfc2904b185d67dfede9d2694431
Author: Xavier de Blas <xaviblas gmail com>
Date:   Wed Oct 2 19:56:15 2019 +0200

    ForceSensorExercise window main logic done

 glade/app1.glade                  |   81 ++-
 glade/force_sensor_exercise.glade | 1031 +++++++++++++++++++++----------------
 src/gui/chronojumpIcons.cs        |    2 +
 src/gui/forceSensorExercise.cs    |  383 +++++++++-----
 4 files changed, 905 insertions(+), 592 deletions(-)
---
diff --git a/glade/app1.glade b/glade/app1.glade
index 52f8c5de..9c71a5e1 100644
--- a/glade/app1.glade
+++ b/glade/app1.glade
@@ -6621,6 +6621,53 @@ EncoderInertialCapture</property>
                                                             <property name="can_focus">False</property>
                                                             <property name="spacing">8</property>
                                                             <child>
+                                                            <widget class="GtkButton" 
id="button_force_sensor_exercise_edit_experimental">
+                                                            <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">Edit 
exercise type</property>
+                                                            <signal name="clicked" 
handler="on_button_force_sensor_exercise_edit_experimental_clicked" swapped="no"/>
+                                                            <child>
+                                                            <widget class="GtkHBox" id="hbox168">
+                                                            <property name="visible">True</property>
+                                                            <property name="can_focus">False</property>
+                                                            <property name="spacing">4</property>
+                                                            <child>
+                                                            <widget class="GtkImage" 
id="image_force_sensor_exercise_edit_wip">
+                                                            <property name="visible">True</property>
+                                                            <property name="can_focus">False</property>
+                                                            <property name="stock">gtk-new</property>
+                                                            <property name="icon-size">2</property>
+                                                            </widget>
+                                                            <packing>
+                                                            <property name="expand">True</property>
+                                                            <property name="fill">True</property>
+                                                            <property name="position">0</property>
+                                                            </packing>
+                                                            </child>
+                                                            <child>
+                                                            <widget class="GtkLabel" id="label51">
+                                                            <property name="visible">True</property>
+                                                            <property name="can_focus">False</property>
+                                                            <property name="label">WIP</property>
+                                                            </widget>
+                                                            <packing>
+                                                            <property name="expand">True</property>
+                                                            <property name="fill">True</property>
+                                                            <property name="position">1</property>
+                                                            </packing>
+                                                            </child>
+                                                            </widget>
+                                                            </child>
+                                                            </widget>
+                                                            <packing>
+                                                            <property name="expand">False</property>
+                                                            <property name="fill">True</property>
+                                                            <property name="position">0</property>
+                                                            </packing>
+                                                            </child>
+                                                            <child>
                                                             <widget class="GtkButton" 
id="button_force_sensor_exercise_edit">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">True</property>
@@ -6640,7 +6687,7 @@ EncoderInertialCapture</property>
                                                             <packing>
                                                             <property name="expand">False</property>
                                                             <property name="fill">True</property>
-                                                            <property name="position">0</property>
+                                                            <property name="position">1</property>
                                                             </packing>
                                                             </child>
                                                             <child>
@@ -6663,7 +6710,7 @@ EncoderInertialCapture</property>
                                                             <packing>
                                                             <property name="expand">False</property>
                                                             <property name="fill">True</property>
-                                                            <property name="position">1</property>
+                                                            <property name="position">2</property>
                                                             </packing>
                                                             </child>
                                                             </widget>
@@ -21880,6 +21927,9 @@ Concentric</property>
                                                             <child>
                                                             <placeholder/>
                                                             </child>
+                                                            <child>
+                                                            <placeholder/>
+                                                            </child>
                                                             </widget>
                                                             <packing>
                                                             <property name="expand">False</property>
@@ -23828,6 +23878,18 @@ Concentric</property>
                                                             <property name="can_focus">False</property>
                                                             <property name="spacing">6</property>
                                                             <child>
+                                                            <widget class="GtkLabel" 
id="label_video_encoder_tests_will_be_filmed">
+                                                            <property name="can_focus">False</property>
+                                                            <property name="label" translatable="yes">Tests 
will be filmed</property>
+                                                            </widget>
+                                                            <packing>
+                                                            <property name="expand">False</property>
+                                                            <property name="fill">False</property>
+                                                            <property name="pack_type">end</property>
+                                                            <property name="position">0</property>
+                                                            </packing>
+                                                            </child>
+                                                            <child>
                                                             <widget class="GtkHBox" 
id="hbox_video_encoder_capturing">
                                                             <property name="can_focus">False</property>
                                                             <property name="spacing">4</property>
@@ -23864,18 +23926,6 @@ Concentric</property>
                                                             </packing>
                                                             </child>
                                                             <child>
-                                                            <widget class="GtkLabel" 
id="label_video_encoder_tests_will_be_filmed">
-                                                            <property name="can_focus">False</property>
-                                                            <property name="label" translatable="yes">Tests 
will be filmed</property>
-                                                            </widget>
-                                                            <packing>
-                                                            <property name="expand">False</property>
-                                                            <property name="fill">False</property>
-                                                            <property name="pack_type">end</property>
-                                                            <property name="position">0</property>
-                                                            </packing>
-                                                            </child>
-                                                            <child>
                                                             <widget class="GtkHBox" 
id="hbox_video_encoder_no_capturing">
                                                             <property name="visible">True</property>
                                                             <property name="can_focus">False</property>
@@ -30789,6 +30839,9 @@ then click this button.</property>
                                                             <child>
                                                             <placeholder/>
                                                             </child>
+                                                            <child>
+                                                            <placeholder/>
+                                                            </child>
                                                             </widget>
                                                             <packing>
                                                             <property name="expand">False</property>
diff --git a/glade/force_sensor_exercise.glade b/glade/force_sensor_exercise.glade
index 3b324688..25b8323b 100644
--- a/glade/force_sensor_exercise.glade
+++ b/glade/force_sensor_exercise.glade
@@ -3,6 +3,7 @@
   <!-- interface-requires gtk+ 3.0 -->
   <!-- interface-naming-policy toplevel-contextual -->
   <widget class="GtkWindow" id="force_sensor_exercise">
+    <property name="width_request">650</property>
     <property name="can_focus">False</property>
     <property name="border_width">10</property>
     <property name="title" translatable="yes">Chronojump</property>
@@ -26,86 +27,42 @@
             <property name="position">0</property>
           </packing>
         </child>
-        <child>
-          <widget class="GtkHBox" id="hbox_error">
-            <property name="visible">True</property>
-            <property name="can_focus">False</property>
-            <property name="spacing">10</property>
-            <child>
-              <widget class="GtkImage" id="image_error">
-                <property name="visible">True</property>
-                <property name="can_focus">False</property>
-                <property name="stock">gtk-no</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="label_error">
-                <property name="visible">True</property>
-                <property name="can_focus">False</property>
-              </widget>
-              <packing>
-                <property name="expand">False</property>
-                <property name="fill">False</property>
-                <property name="position">1</property>
-              </packing>
-            </child>
-          </widget>
-          <packing>
-            <property name="expand">False</property>
-            <property name="fill">False</property>
-            <property name="position">1</property>
-          </packing>
-        </child>
         <child>
           <widget class="GtkVBox" id="vbox_data">
             <property name="visible">True</property>
             <property name="can_focus">False</property>
-            <property name="spacing">4</property>
-            <child>
-              <widget class="GtkEntry" id="entry_name">
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="invisible_char">●</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>
-                <signal name="changed" handler="on_entries_changed" swapped="no"/>
-              </widget>
-              <packing>
-                <property name="expand">False</property>
-                <property name="fill">False</property>
-                <property name="position">0</property>
-              </packing>
-            </child>
+            <property name="spacing">20</property>
             <child>
-              <widget class="GtkTable" id="table1">
+              <widget class="GtkHBox" id="hbox1">
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
-                <property name="resize_mode">queue</property>
-                <property name="n_rows">7</property>
-                <property name="n_columns">3</property>
-                <property name="column_spacing">16</property>
-                <property name="row_spacing">10</property>
+                <property name="spacing">12</property>
                 <child>
-                  <widget class="GtkHBox" id="hbox1">
+                  <widget class="GtkEntry" id="entry_name">
                     <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="invisible_char">●</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>
+                    <signal name="changed" handler="on_entries_changed" swapped="no"/>
+                  </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_error">
                     <property name="can_focus">False</property>
-                    <property name="spacing">12</property>
+                    <property name="spacing">10</property>
                     <child>
-                      <widget class="GtkRadioButton" id="radio_force_sensor">
-                        <property name="label" translatable="yes">Sensor values</property>
+                      <widget class="GtkImage" id="image_error">
                         <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="receives_default">False</property>
-                        <property name="active">True</property>
-                        <property name="draw_indicator">True</property>
-                        <signal name="toggled" handler="on_radio_force_toggled" swapped="no"/>
+                        <property name="can_focus">False</property>
+                        <property name="stock">gtk-no</property>
                       </widget>
                       <packing>
                         <property name="expand">False</property>
@@ -114,15 +71,9 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkRadioButton" id="radio_force_resultant">
-                        <property name="label" translatable="yes">Resultant force</property>
+                      <widget class="GtkLabel" id="label_error">
                         <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="receives_default">False</property>
-                        <property name="active">True</property>
-                        <property name="draw_indicator">True</property>
-                        <property name="group">radio_force_sensor</property>
-                        <signal name="toggled" handler="on_radio_force_toggled" swapped="no"/>
+                        <property name="can_focus">False</property>
                       </widget>
                       <packing>
                         <property name="expand">False</property>
@@ -132,23 +83,35 @@
                     </child>
                   </widget>
                   <packing>
-                    <property name="left_attach">1</property>
-                    <property name="right_attach">2</property>
+                    <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">0</property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkNotebook" id="notebook_main">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="show_tabs">False</property>
                 <child>
-                  <widget class="GtkHBox" id="hbox4">
+                  <widget class="GtkVBox" id="vbox1">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
-                    <property name="spacing">12</property>
+                    <property name="border_width">8</property>
+                    <property name="spacing">20</property>
                     <child>
-                      <widget class="GtkRadioButton" id="radio_string_rigid">
-                        <property name="label" translatable="yes">Rigid, (eg. rope)</property>
-                        <property name="can_focus">True</property>
-                        <property name="receives_default">False</property>
-                        <property name="active">True</property>
-                        <property name="draw_indicator">True</property>
-                        <signal name="toggled" handler="on_radio_string_toggled" swapped="no"/>
+                      <widget class="GtkLabel" id="label_force">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">What force do you want to show?</property>
                       </widget>
                       <packing>
                         <property name="expand">False</property>
@@ -157,14 +120,12 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkRadioButton" id="radio_string_elastic">
-                        <property name="label" translatable="yes">Elastic (eg. rubber band)</property>
+                      <widget class="GtkTextView" id="textview_force_explanation">
+                        <property name="visible">True</property>
                         <property name="can_focus">True</property>
-                        <property name="receives_default">False</property>
-                        <property name="active">True</property>
-                        <property name="draw_indicator">True</property>
-                        <property name="group">radio_string_rigid</property>
-                        <signal name="toggled" handler="on_radio_string_toggled" swapped="no"/>
+                        <property name="editable">False</property>
+                        <property name="wrap_mode">word</property>
+                        <property name="cursor_visible">False</property>
                       </widget>
                       <packing>
                         <property name="expand">False</property>
@@ -172,71 +133,76 @@
                         <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="hbox5">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="spacing">12</property>
-                    <child>
-                      <widget class="GtkRadioButton" id="radio_cdg_displ_yes">
-                        <property name="label" translatable="yes">Yes</property>
-                        <property name="can_focus">True</property>
-                        <property name="receives_default">False</property>
-                        <property name="active">True</property>
-                        <property name="draw_indicator">True</property>
-                        <signal name="toggled" handler="on_radio_cdg_displ_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="radio_cdg_displ_no">
-                        <property name="label" translatable="yes">No</property>
-                        <property name="can_focus">True</property>
-                        <property name="receives_default">False</property>
-                        <property name="active">True</property>
-                        <property name="draw_indicator">True</property>
-                        <property name="group">radio_cdg_displ_yes</property>
-                        <signal name="toggled" handler="on_radio_cdg_displ_toggled" swapped="no"/>
+                      <widget class="GtkVBox" id="vbox2">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="spacing">20</property>
+                        <child>
+                          <widget class="GtkRadioButton" id="radio_force_sensor">
+                            <property name="label" translatable="yes">Raw data</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="active">True</property>
+                            <property name="draw_indicator">True</property>
+                            <signal name="toggled" handler="on_radio_force_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="radio_force_resultant">
+                            <property name="label" translatable="yes">Resultant force</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="active">True</property>
+                            <property name="draw_indicator">True</property>
+                            <property name="group">radio_force_sensor</property>
+                            <signal name="toggled" handler="on_radio_force_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>
+                        <property name="position">2</property>
                       </packing>
                     </child>
                   </widget>
+                </child>
+                <child>
+                  <widget class="GtkLabel" id="label3">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="label">force</property>
+                  </widget>
                   <packing>
-                    <property name="left_attach">1</property>
-                    <property name="right_attach">2</property>
-                    <property name="top_attach">2</property>
-                    <property name="bottom_attach">3</property>
+                    <property name="tab_fill">False</property>
+                    <property name="type">tab</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkHBox" id="hbox6">
+                  <widget class="GtkVBox" id="vbox3">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
-                    <property name="spacing">12</property>
+                    <property name="border_width">8</property>
+                    <property name="spacing">20</property>
                     <child>
-                      <widget class="GtkRadioButton" id="radio_sensor_affected_bw_yes">
-                        <property name="label" translatable="yes">Yes</property>
-                        <property name="can_focus">True</property>
-                        <property name="receives_default">False</property>
-                        <property name="active">True</property>
-                        <property name="draw_indicator">True</property>
-                        <signal name="toggled" handler="on_radio_sensor_affected_bw_toggled" swapped="no"/>
+                      <widget class="GtkLabel" id="label_fixation">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">Fixation</property>
                       </widget>
                       <packing>
                         <property name="expand">False</property>
@@ -245,14 +211,12 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkRadioButton" id="radio_sensor_affected_bw_no">
-                        <property name="label" translatable="yes">No</property>
+                      <widget class="GtkTextView" id="textview_fixation_explanation">
+                        <property name="visible">True</property>
                         <property name="can_focus">True</property>
-                        <property name="receives_default">False</property>
-                        <property name="active">True</property>
-                        <property name="draw_indicator">True</property>
-                        <property name="group">radio_sensor_affected_bw_yes</property>
-                        <signal name="toggled" handler="on_radio_sensor_affected_bw_toggled" swapped="no"/>
+                        <property name="editable">False</property>
+                        <property name="wrap_mode">word</property>
+                        <property name="cursor_visible">False</property>
                       </widget>
                       <packing>
                         <property name="expand">False</property>
@@ -260,329 +224,537 @@
                         <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">3</property>
-                    <property name="bottom_attach">4</property>
-                  </packing>
-                </child>
-                <child>
-                  <widget class="GtkHBox" id="hbox7">
-                    <property name="visible">True</property>
-                    <property name="can_focus">False</property>
-                    <property name="spacing">12</property>
-                    <child>
-                      <widget class="GtkRadioButton" id="radio_tare_before_capture_yes">
-                        <property name="label" translatable="yes">Yes</property>
-                        <property name="can_focus">True</property>
-                        <property name="receives_default">False</property>
-                        <property name="active">True</property>
-                        <property name="draw_indicator">True</property>
-                        <signal name="toggled" handler="on_radio_tare_before_capture_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="radio_tare_before_capture_no">
-                        <property name="label" translatable="yes">No</property>
-                        <property name="can_focus">True</property>
-                        <property name="receives_default">False</property>
-                        <property name="active">True</property>
-                        <property name="draw_indicator">True</property>
-                        <property name="group">radio_tare_before_capture_yes</property>
-                        <signal name="toggled" handler="on_radio_tare_before_capture_toggled" swapped="no"/>
+                      <widget class="GtkVBox" id="vbox4">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="border_width">8</property>
+                        <property name="spacing">20</property>
+                        <child>
+                          <widget class="GtkRadioButton" id="radio_fixation_elastic">
+                            <property name="label" translatable="yes">Elastic</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="active">True</property>
+                            <property name="draw_indicator">True</property>
+                            <signal name="toggled" handler="on_radio_fixation_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="radio_fixation_not_elastic">
+                            <property name="label" translatable="yes">Not elastic</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="active">True</property>
+                            <property name="draw_indicator">True</property>
+                            <property name="group">radio_fixation_elastic</property>
+                            <signal name="toggled" handler="on_radio_fixation_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>
+                        <property name="position">2</property>
                       </packing>
                     </child>
                   </widget>
                   <packing>
-                    <property name="left_attach">1</property>
-                    <property name="right_attach">2</property>
-                    <property name="top_attach">4</property>
-                    <property name="bottom_attach">5</property>
+                    <property name="position">1</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkLabel" id="label_force">
+                  <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">Force displayed</property>
+                    <property name="label">fixation</property>
                   </widget>
                   <packing>
-                    <property name="x_options">GTK_FILL</property>
+                    <property name="position">1</property>
+                    <property name="tab_fill">False</property>
+                    <property name="type">tab</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkButton" id="button_help_force_resultant">
+                  <widget class="GtkVBox" id="vbox5">
                     <property name="visible">True</property>
-                    <property name="can_focus">True</property>
-                    <property name="receives_default">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="border_width">8</property>
+                    <property name="spacing">20</property>
                     <child>
-                      <widget class="GtkImage" id="image_help_force">
+                      <widget class="GtkLabel" id="label_mass">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="stock">gtk-missing-image</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">Total mass management</property>
                       </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">2</property>
-                    <property name="right_attach">3</property>
-                    <property name="x_options"/>
-                  </packing>
-                </child>
-                <child>
-                  <widget class="GtkButton" id="button_help_string">
-                    <property name="can_focus">True</property>
-                    <property name="receives_default">True</property>
                     <child>
-                      <widget class="GtkImage" id="image_help_string">
+                      <widget class="GtkTextView" id="textview_mass_explanation">
                         <property name="visible">True</property>
-                        <property name="can_focus">False</property>
-                        <property name="stock">gtk-missing-image</property>
+                        <property name="can_focus">True</property>
+                        <property name="editable">False</property>
+                        <property name="wrap_mode">word</property>
+                        <property name="cursor_visible">False</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">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="GtkButton" id="button_help_cdg_displ">
-                    <property name="can_focus">True</property>
-                    <property name="receives_default">True</property>
                     <child>
-                      <widget class="GtkImage" id="image_help_cdg_displ">
+                      <widget class="GtkVBox" id="vbox6">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="stock">gtk-missing-image</property>
+                        <property name="border_width">8</property>
+                        <property name="spacing">16</property>
+                        <child>
+                          <widget class="GtkHBox" id="hbox4">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="spacing">20</property>
+                            <child>
+                              <widget class="GtkRadioButton" id="radio_mass_add">
+                                <property name="label" translatable="yes">Add the effect of mass to raw 
data</property>
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="receives_default">False</property>
+                                <property name="active">True</property>
+                                <property name="draw_indicator">True</property>
+                                <signal name="toggled" handler="on_radio_mass_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="GtkHBox" id="hbox_body_mass_add">
+                                <property name="visible">True</property>
+                                <property name="sensitive">False</property>
+                                <property name="can_focus">False</property>
+                                <property name="spacing">8</property>
+                                <child>
+                                  <widget class="GtkSpinButton" id="spin_body_mass_add">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="tooltip" translatable="yes">Body mass to be 
added</property>
+                                    <property name="invisible_char">●</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 1 100 1 10 0</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="label2">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="label">%</property>
+                                  </widget>
+                                  <packing>
+                                    <property name="expand">False</property>
+                                    <property name="fill">False</property>
+                                    <property name="position">1</property>
+                                  </packing>
+                                </child>
+                              </widget>
+                              <packing>
+                                <property name="expand">False</property>
+                                <property name="fill">False</property>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
+                          </widget>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <widget class="GtkRadioButton" id="radio_mass_subtract">
+                            <property name="label" translatable="yes">Subtract the effect of mass from raw 
data</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="active">True</property>
+                            <property name="draw_indicator">True</property>
+                            <property name="group">radio_mass_add</property>
+                            <signal name="toggled" handler="on_radio_mass_toggled" swapped="no"/>
+                          </widget>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <widget class="GtkRadioButton" id="radio_mass_nothing">
+                            <property name="label" translatable="yes">The effect of mass is included in the 
raw data</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="draw_indicator">True</property>
+                            <property name="group">radio_mass_add</property>
+                            <signal name="toggled" handler="on_radio_mass_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">False</property>
+                        <property name="fill">False</property>
+                        <property name="position">2</property>
+                      </packing>
                     </child>
                   </widget>
                   <packing>
-                    <property name="left_attach">2</property>
-                    <property name="right_attach">3</property>
-                    <property name="top_attach">2</property>
-                    <property name="bottom_attach">3</property>
-                    <property name="x_options"/>
+                    <property name="position">2</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkButton" id="button_help_sensor_affected_bw">
-                    <property name="can_focus">True</property>
-                    <property name="receives_default">True</property>
-                    <child>
-                      <widget class="GtkImage" id="image_help_sensor_affected_bw">
-                        <property name="visible">True</property>
-                        <property name="can_focus">False</property>
-                        <property name="stock">gtk-missing-image</property>
-                      </widget>
-                    </child>
+                  <widget class="GtkLabel" id="label5">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="label">mass</property>
                   </widget>
                   <packing>
-                    <property name="left_attach">2</property>
-                    <property name="right_attach">3</property>
-                    <property name="top_attach">3</property>
-                    <property name="bottom_attach">4</property>
-                    <property name="x_options"/>
+                    <property name="position">2</property>
+                    <property name="tab_fill">False</property>
+                    <property name="type">tab</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkButton" id="button_help_tare_before_capture">
-                    <property name="can_focus">True</property>
-                    <property name="receives_default">True</property>
+                  <widget class="GtkVBox" id="vbox7">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="border_width">8</property>
+                    <property name="spacing">20</property>
                     <child>
-                      <widget class="GtkImage" id="image_help_tare_before_capture">
+                      <widget class="GtkLabel" id="label_angle">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="stock">gtk-missing-image</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">Angle</property>
                       </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">2</property>
-                    <property name="right_attach">3</property>
-                    <property name="top_attach">4</property>
-                    <property name="bottom_attach">5</property>
-                    <property name="x_options"/>
-                  </packing>
-                </child>
-                <child>
-                  <widget class="GtkButton" id="button_help_bw_added">
-                    <property name="can_focus">True</property>
-                    <property name="receives_default">True</property>
                     <child>
-                      <widget class="GtkImage" id="image_help_bw_added">
+                      <widget class="GtkTextView" id="textview_angle_explanation">
                         <property name="visible">True</property>
-                        <property name="can_focus">False</property>
-                        <property name="stock">gtk-missing-image</property>
+                        <property name="can_focus">True</property>
+                        <property name="editable">False</property>
+                        <property name="wrap_mode">word</property>
+                        <property name="cursor_visible">False</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">2</property>
-                    <property name="right_attach">3</property>
-                    <property name="top_attach">5</property>
-                    <property name="bottom_attach">6</property>
-                    <property name="x_options"/>
-                  </packing>
-                </child>
-                <child>
-                  <widget class="GtkButton" id="button_help_angle">
-                    <property name="can_focus">True</property>
-                    <property name="receives_default">True</property>
                     <child>
-                      <widget class="GtkImage" id="image_help_angle">
+                      <widget class="GtkHBox" id="hbox_angl">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="stock">gtk-missing-image</property>
+                        <property name="spacing">16</property>
+                        <child>
+                          <widget class="GtkLabel" id="label_angle_text">
+                            <property name="can_focus">False</property>
+                            <property name="xalign">0</property>
+                            <property name="label" translatable="yes">Angle</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="hbox_angle">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="spacing">8</property>
+                            <child>
+                              <widget class="GtkSpinButton" id="spin_angle">
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="invisible_char">●</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">1 -90 90 1 10 0</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="label8">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="label">º</property>
+                              </widget>
+                              <packing>
+                                <property name="expand">False</property>
+                                <property name="fill">False</property>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
+                          </widget>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
                       </widget>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="fill">False</property>
+                        <property name="position">2</property>
+                      </packing>
                     </child>
                   </widget>
                   <packing>
-                    <property name="left_attach">2</property>
-                    <property name="right_attach">3</property>
-                    <property name="top_attach">6</property>
-                    <property name="bottom_attach">7</property>
-                    <property name="x_options"/>
+                    <property name="position">3</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkLabel" id="label_cdg_displ">
+                  <widget class="GtkLabel" id="label6">
+                    <property name="visible">True</property>
                     <property name="can_focus">False</property>
-                    <property name="xalign">0</property>
-                    <property name="label" translatable="yes">CdG has displacement</property>
+                    <property name="label">angle</property>
                   </widget>
                   <packing>
-                    <property name="top_attach">2</property>
-                    <property name="bottom_attach">3</property>
-                    <property name="x_options">GTK_FILL</property>
+                    <property name="position">3</property>
+                    <property name="tab_fill">False</property>
+                    <property name="type">tab</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="GtkNotebook" id="notebook_desc_examples">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
                 <child>
-                  <widget class="GtkLabel" id="label_sensor_affected_bw">
-                    <property name="can_focus">False</property>
-                    <property name="xalign">0</property>
-                    <property name="label" translatable="yes">Sensor is affected
-by body weight</property>
+                  <widget class="GtkTextView" id="textview_description">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="border_width">8</property>
+                    <property name="editable">False</property>
+                    <property name="wrap_mode">word</property>
+                    <property name="cursor_visible">False</property>
                   </widget>
-                  <packing>
-                    <property name="top_attach">3</property>
-                    <property name="bottom_attach">4</property>
-                    <property name="x_options">GTK_FILL</property>
-                  </packing>
                 </child>
                 <child>
-                  <widget class="GtkLabel" id="label_tare_before_capture">
+                  <widget class="GtkLabel" id="label_notebook_desc_examples_desc">
+                    <property name="visible">True</property>
                     <property name="can_focus">False</property>
-                    <property name="xalign">0</property>
-                    <property name="label" translatable="yes">Tare before capture</property>
+                    <property name="label" translatable="yes">Description</property>
                   </widget>
                   <packing>
-                    <property name="top_attach">4</property>
-                    <property name="bottom_attach">5</property>
-                    <property name="x_options">GTK_FILL</property>
+                    <property name="tab_fill">False</property>
+                    <property name="type">tab</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkLabel" id="label_bw_added">
-                    <property name="can_focus">False</property>
-                    <property name="xalign">0</property>
-                    <property name="label" translatable="yes">Body weight to be added</property>
+                  <widget class="GtkTextView" id="textview_examples">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="border_width">8</property>
+                    <property name="editable">False</property>
+                    <property name="wrap_mode">word</property>
+                    <property name="cursor_visible">False</property>
                   </widget>
                   <packing>
-                    <property name="top_attach">5</property>
-                    <property name="bottom_attach">6</property>
-                    <property name="x_options">GTK_FILL</property>
+                    <property name="position">1</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkLabel" id="label_angle">
+                  <widget class="GtkLabel" id="label_notebook_desc_examples_examples">
+                    <property name="visible">True</property>
                     <property name="can_focus">False</property>
-                    <property name="xalign">0</property>
-                    <property name="label" translatable="yes">Default sensor angle</property>
+                    <property name="label" translatable="yes">Examples</property>
                   </widget>
                   <packing>
-                    <property name="top_attach">6</property>
-                    <property name="bottom_attach">7</property>
-                    <property name="x_options">GTK_FILL</property>
+                    <property name="position">1</property>
+                    <property name="tab_fill">False</property>
+                    <property name="type">tab</property>
                   </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="expand">False</property>
+            <property name="fill">False</property>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child>
+          <widget class="GtkAlignment" id="alignment2">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="top_padding">12</property>
+            <child>
+              <widget class="GtkHBox" id="hbox2">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
                 <child>
-                  <widget class="GtkHBox" id="hbox_bw_added">
+                  <widget class="GtkHButtonBox" id="hbuttonbox2">
+                    <property name="visible">True</property>
                     <property name="can_focus">False</property>
-                    <property name="spacing">8</property>
+                    <property name="layout_style">start</property>
                     <child>
-                      <widget class="GtkSpinButton" id="spin_bw_added">
+                      <widget class="GtkButton" id="button_cancel">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
-                        <property name="invisible_char">●</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">0 0 100 1 10 0</property>
-                        <property name="snap_to_ticks">True</property>
-                        <property name="numeric">True</property>
-                        <signal name="value_changed" handler="on_spin_bw_added_value_changed" swapped="no"/>
+                        <property name="can_default">True</property>
+                        <property name="receives_default">False</property>
+                        <signal name="clicked" handler="on_button_cancel_clicked" swapped="no"/>
+                        <accelerator key="Escape" signal="clicked"/>
+                        <child>
+                          <widget class="GtkHBox" id="hbox5">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="spacing">10</property>
+                            <child>
+                              <widget class="GtkImage" id="image_cancel">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="stock">gtk-missing-image</property>
+                              </widget>
+                              <packing>
+                                <property name="expand">True</property>
+                                <property name="fill">True</property>
+                                <property name="position">0</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <widget class="GtkLabel" id="label10">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="label" translatable="yes">Cancel</property>
+                              </widget>
+                              <packing>
+                                <property name="expand">True</property>
+                                <property name="fill">True</property>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
+                          </widget>
+                        </child>
                       </widget>
                       <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">False</property>
+                        <property name="expand">True</property>
+                        <property name="fill">True</property>
                         <property name="position">0</property>
                       </packing>
                     </child>
-                    <child>
-                      <widget class="GtkLabel" id="label1">
-                        <property name="visible">True</property>
-                        <property name="can_focus">False</property>
-                        <property name="label">%</property>
-                      </widget>
-                      <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">False</property>
-                        <property name="position">1</property>
-                      </packing>
-                    </child>
                   </widget>
                   <packing>
-                    <property name="left_attach">1</property>
-                    <property name="right_attach">2</property>
-                    <property name="top_attach">5</property>
-                    <property name="bottom_attach">6</property>
+                    <property name="expand">True</property>
+                    <property name="fill">True</property>
+                    <property name="position">0</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkHBox" id="hbox_angle">
+                  <widget class="GtkHButtonBox" id="hbuttonbox1">
+                    <property name="visible">True</property>
                     <property name="can_focus">False</property>
-                    <property name="spacing">8</property>
+                    <property name="spacing">50</property>
+                    <property name="layout_style">end</property>
                     <child>
-                      <widget class="GtkSpinButton" id="spin_angle">
+                      <widget class="GtkButton" id="button_back">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
-                        <property name="invisible_char">●</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">0 -90 90 1 10 0</property>
-                        <property name="snap_to_ticks">True</property>
-                        <property name="numeric">True</property>
+                        <property name="receives_default">True</property>
+                        <signal name="clicked" handler="on_button_back_clicked" swapped="no"/>
+                        <accelerator key="Escape" signal="clicked"/>
+                        <child>
+                          <widget class="GtkHBox" id="hbox38">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="spacing">10</property>
+                            <child>
+                              <widget class="GtkImage" id="image_back">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="stock">gtk-missing-image</property>
+                              </widget>
+                              <packing>
+                                <property name="expand">True</property>
+                                <property name="fill">True</property>
+                                <property name="position">0</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <widget class="GtkLabel" id="label16">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="label" translatable="yes">Back</property>
+                              </widget>
+                              <packing>
+                                <property name="expand">True</property>
+                                <property name="fill">True</property>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
+                          </widget>
+                        </child>
                       </widget>
                       <packing>
                         <property name="expand">False</property>
@@ -591,10 +763,43 @@ by body weight</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label2">
+                      <widget class="GtkButton" id="button_next_or_accept">
                         <property name="visible">True</property>
-                        <property name="can_focus">False</property>
-                        <property name="label">º</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">True</property>
+                        <signal name="clicked" handler="on_button_next_clicked" swapped="no"/>
+                        <accelerator key="Escape" signal="clicked"/>
+                        <child>
+                          <widget class="GtkHBox" id="hbox3">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="spacing">10</property>
+                            <child>
+                              <widget class="GtkImage" id="image_next_or_accept">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="stock">gtk-missing-image</property>
+                              </widget>
+                              <packing>
+                                <property name="expand">True</property>
+                                <property name="fill">True</property>
+                                <property name="position">0</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <widget class="GtkLabel" id="label7">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="label" translatable="yes">Next</property>
+                              </widget>
+                              <packing>
+                                <property name="expand">True</property>
+                                <property name="fill">True</property>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
+                          </widget>
+                        </child>
                       </widget>
                       <packing>
                         <property name="expand">False</property>
@@ -602,89 +807,11 @@ by body weight</property>
                         <property name="position">1</property>
                       </packing>
                     </child>
-                    <child>
-                      <widget class="GtkLabel" id="label_angle_use">
-                        <property name="visible">True</property>
-                        <property name="can_focus">False</property>
-                      </widget>
-                      <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">False</property>
-                        <property name="padding">12</property>
-                        <property name="position">2</property>
-                      </packing>
-                    </child>
-                  </widget>
-                  <packing>
-                    <property name="left_attach">1</property>
-                    <property name="right_attach">2</property>
-                    <property name="top_attach">6</property>
-                    <property name="bottom_attach">7</property>
-                  </packing>
-                </child>
-                <child>
-                  <widget class="GtkLabel" id="label_string">
-                    <property name="can_focus">False</property>
-                    <property name="xalign">0</property>
-                    <property name="label" translatable="yes">Fixation</property>
-                  </widget>
-                  <packing>
-                    <property name="top_attach">1</property>
-                    <property name="bottom_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">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="GtkAlignment" id="alignment2">
-            <property name="visible">True</property>
-            <property name="can_focus">False</property>
-            <property name="top_padding">12</property>
-            <child>
-              <widget class="GtkHButtonBox" id="hbuttonbox1">
-                <property name="visible">True</property>
-                <property name="can_focus">False</property>
-                <child>
-                  <widget class="GtkButton" id="button_cancel">
-                    <property name="label">gtk-cancel</property>
-                    <property name="visible">True</property>
-                    <property name="can_focus">True</property>
-                    <property name="can_default">True</property>
-                    <property name="receives_default">False</property>
-                    <property name="use_stock">True</property>
-                    <accelerator key="Escape" signal="clicked"/>
-                  </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_accept">
-                    <property name="label">gtk-ok</property>
-                    <property name="visible">True</property>
-                    <property name="can_focus">True</property>
-                    <property name="can_default">True</property>
-                    <property name="receives_default">False</property>
-                    <property name="use_stock">True</property>
                   </widget>
                   <packing>
-                    <property name="expand">True</property>
-                    <property name="fill">True</property>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                    <property name="pack_type">end</property>
                     <property name="position">1</property>
                   </packing>
                 </child>
@@ -694,7 +821,7 @@ by body weight</property>
           <packing>
             <property name="expand">False</property>
             <property name="fill">True</property>
-            <property name="position">3</property>
+            <property name="position">2</property>
           </packing>
         </child>
       </widget>
diff --git a/src/gui/chronojumpIcons.cs b/src/gui/chronojumpIcons.cs
index add0311a..35376781 100644
--- a/src/gui/chronojumpIcons.cs
+++ b/src/gui/chronojumpIcons.cs
@@ -173,6 +173,7 @@ public partial class ChronoJumpWindow
        [Widget] Gtk.Image image_force_sensor_capture_recalculate;
        [Widget] Gtk.Image image_force_sensor_analyze_analyze;
        [Widget] Gtk.Image image_force_sensor_exercise_edit;
+       [Widget] Gtk.Image image_force_sensor_exercise_edit_wip;
        [Widget] Gtk.Image image_force_sensor_laterality_both;
        [Widget] Gtk.Image image_force_sensor_laterality_r;
        [Widget] Gtk.Image image_force_sensor_laterality_l;
@@ -397,6 +398,7 @@ public partial class ChronoJumpWindow
                pixbuf = new Pixbuf (null, Util.GetImagePath(false) + "image_edit.png");
                image_encoder_exercise_edit.Pixbuf = pixbuf;
                image_force_sensor_exercise_edit.Pixbuf = pixbuf;
+               image_force_sensor_exercise_edit_wip.Pixbuf = pixbuf;
                image_run_encoder_exercise_edit.Pixbuf = pixbuf;
                image_edit_current_person.Pixbuf = pixbuf;
                image_edit_current_person_h.Pixbuf = pixbuf;
diff --git a/src/gui/forceSensorExercise.cs b/src/gui/forceSensorExercise.cs
index 4513783b..f6dfa14e 100644
--- a/src/gui/forceSensorExercise.cs
+++ b/src/gui/forceSensorExercise.cs
@@ -15,17 +15,17 @@
  *  along with this program; if not, write to the Free Software
  *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  *
- * Copyright (C) 2019   Xavier de Blas <xaviblas gmail com> 
+ * Copyright (C) 2019   Xavier de Blas <xaviblas gmail com>
+ * Copyright (C) 2019          Xavier Padullés <x padulles gmail com>
  */
 
 using System;
-//using Gdk;
+using Gdk; //Pixbuf
 using Gtk;
 using Glade;
-//using Gnome;
 using GLib; //for Value
 using System.Collections.Generic; //List<T>
-//using Mono.Unix;
+//using Mono.Unix; TODO: when uncomment need to change POTFILES.in
 
 
 public class ForceSensorExerciseWindow
@@ -37,54 +37,46 @@ public class ForceSensorExerciseWindow
           [Widget] Gtk.Label label_error;
           */
        [Widget] Gtk.Entry entry_name;
+       [Widget] Gtk.Notebook notebook_main;
 
        //each of the rows of the table
        [Widget] Gtk.Label label_force;
+       [Widget] Gtk.TextView textview_force_explanation;
        [Widget] Gtk.RadioButton radio_force_sensor;
        [Widget] Gtk.RadioButton radio_force_resultant; 
-       [Widget] Gtk.Button button_help_force;
 
-       [Widget] Gtk.Label label_string;
-       [Widget] Gtk.RadioButton radio_string_rigid;
-       [Widget] Gtk.RadioButton radio_string_elastic;
-       [Widget] Gtk.Button button_help_string;
+       [Widget] Gtk.Label label_fixation;
+       [Widget] Gtk.TextView textview_fixation_explanation;
+       [Widget] Gtk.RadioButton radio_fixation_elastic;
+       [Widget] Gtk.RadioButton radio_fixation_not_elastic;
 
-       [Widget] Gtk.Label label_cdg_displ;
-       [Widget] Gtk.RadioButton radio_cdg_displ_yes;
-       [Widget] Gtk.RadioButton radio_cdg_displ_no;
-       [Widget] Gtk.Button button_help_cdg_displ;
-
-       [Widget] Gtk.Label label_sensor_affected_bw;
-       [Widget] Gtk.RadioButton radio_sensor_affected_bw_yes;
-       [Widget] Gtk.RadioButton radio_sensor_affected_bw_no;
-       [Widget] Gtk.Button button_help_sensor_affected_bw;
-
-       [Widget] Gtk.Label label_tare_before_capture;
-       [Widget] Gtk.RadioButton radio_tare_before_capture_yes;
-       [Widget] Gtk.RadioButton radio_tare_before_capture_no;
-       [Widget] Gtk.Button button_help_tare_before_capture;
-
-       [Widget] Gtk.Label label_bw_added;
-       [Widget] Gtk.HBox hbox_bw_added;
-       [Widget] Gtk.SpinButton spin_bw_added;
-       [Widget] Gtk.Button button_help_bw_added;
+       [Widget] Gtk.Label label_mass;
+       [Widget] Gtk.TextView textview_mass_explanation;
+       [Widget] Gtk.RadioButton radio_mass_add;
+       [Widget] Gtk.RadioButton radio_mass_subtract;
+       [Widget] Gtk.RadioButton radio_mass_nothing;
+       [Widget] Gtk.HBox hbox_body_mass_add;
+       [Widget] Gtk.SpinButton spin_body_mass_add;
 
        [Widget] Gtk.Label label_angle;
-       [Widget] Gtk.HBox hbox_angle;
+       [Widget] Gtk.TextView textview_angle_explanation;
        [Widget] Gtk.SpinButton spin_angle;
-       [Widget] Gtk.Label label_angle_use;
-       [Widget] Gtk.Button button_help_angle;
 
-       //lists of widgets to play with visibility
-       List<Widget> lw_force;
-       List<Widget> lw_elastic;
-       List<Widget> lw_cdg_displ;
-       List<Widget> lw_sensor_affected_bw;
-       List<Widget> lw_tare_before_capture;
-       List<Widget> lw_bw_added;
-       List<Widget> lw_angle;
+       [Widget] Gtk.Notebook notebook_desc_examples;
+       [Widget] Gtk.Label label_notebook_desc_examples_desc;
+       [Widget] Gtk.Label label_notebook_desc_examples_examples;
+       [Widget] Gtk.TextView textview_description;
+       [Widget] Gtk.TextView textview_examples;
 
-       //      [Widget] Gtk.Image image_delete;
+       [Widget] Gtk.Button button_next_or_accept;
+       [Widget] Gtk.Button button_back;
+
+       [Widget] Gtk.Image image_cancel;
+       [Widget] Gtk.Image image_next_or_accept;
+       [Widget] Gtk.Image image_back;
+
+       private enum Pages { FORCE, FIXATION, MASS, ANGLE }
+       private enum Options { FORCE_SENSOR, FORCE_RESULTANT, FIXATION_ELASTIC, FIXATION_NOT_ELASTIC, 
MASS_ADD, MASS_SUBTRACT, MASS_NOTHING, ANGLE }
 
        static ForceSensorExerciseWindow ForceSensorExerciseWindowBox;
 
@@ -106,7 +98,7 @@ public class ForceSensorExerciseWindow
                setTitle(title);
                label_header.Text = textHeader;
 
-               createListsOfWidgets();
+               initializeGuiAtCreation();
 
                //HideOnAccept = true;
                //DestroyOnAccept = false;
@@ -121,7 +113,7 @@ public class ForceSensorExerciseWindow
                        ForceSensorExerciseWindowBox.label_header.Text = textHeader;
                }
 
-               ForceSensorExerciseWindowBox.initializeVisibilityOfWidgets();
+               ForceSensorExerciseWindowBox.initializeGuiAtShow();
                ForceSensorExerciseWindowBox.force_sensor_exercise.Show ();
 
                return ForceSensorExerciseWindowBox;
@@ -133,123 +125,256 @@ public class ForceSensorExerciseWindow
                        force_sensor_exercise.Title = "Chronojump - " + title;
        }
 
-       private void createListsOfWidgets()
+       private void initializeGuiAtCreation()
        {
-               lw_force = new List<Widget> {
-                       label_force, radio_force_sensor, radio_force_resultant, button_help_force };
-               lw_elastic = new List<Widget> {
-                       label_string, radio_string_rigid, radio_string_elastic, button_help_string };
-               lw_cdg_displ = new List<Widget> {
-                       label_cdg_displ, radio_cdg_displ_yes, radio_cdg_displ_no, button_help_cdg_displ };
-               lw_sensor_affected_bw = new List<Widget> {
-                       label_sensor_affected_bw, radio_sensor_affected_bw_yes, radio_sensor_affected_bw_no, 
button_help_sensor_affected_bw };
-               lw_tare_before_capture = new List<Widget> {
-                       label_tare_before_capture, radio_tare_before_capture_yes, 
radio_tare_before_capture_no, button_help_tare_before_capture };
-               lw_bw_added = new List<Widget> {
-                       label_bw_added, hbox_bw_added, button_help_bw_added }; 
-               lw_angle = new List<Widget> {
-                       label_angle, hbox_angle, label_angle_use, button_help_angle };
+               // 1. show title label at each notebook_main page on bold
+               label_force.Text = "<b>" + label_force.Text + "</b>";
+               label_fixation.Text = "<b>" + label_fixation.Text + "</b>";
+               label_mass.Text = "<b>" + label_mass.Text + "</b>";
+               label_angle.Text = "<b>" + label_angle.Text + "</b>";
+
+               label_force.UseMarkup = true;
+               label_fixation.UseMarkup = true;
+               label_mass.UseMarkup = true;
+               label_angle.UseMarkup = true;
+
+               // 2. textviews of explanations of each page
+               textview_force_explanation.Buffer.Text = getTopExplanations(Pages.FORCE);
+               textview_fixation_explanation.Buffer.Text = getTopExplanations(Pages.FIXATION);
+               textview_mass_explanation.Buffer.Text = getTopExplanations(Pages.MASS);
+               textview_angle_explanation.Buffer.Text = getTopExplanations(Pages.ANGLE);
+
+               // 3. icons
+               image_cancel.Pixbuf = new Pixbuf (null, Util.GetImagePath(false) + "image_cancel.png");
+               image_next_or_accept.Pixbuf = new Pixbuf (null, Util.GetImagePath(false) + 
"arrow_forward.png");
+               image_back.Pixbuf = new Pixbuf (null, Util.GetImagePath(false) + "arrow_back.png");
        }
 
-       private void initializeVisibilityOfWidgets()
+       private void initializeGuiAtShow()
        {
-               showHideWidgets(lw_elastic, false);
-               showHideWidgets(lw_cdg_displ, false);
-               showHideWidgets(lw_sensor_affected_bw, false);
-               showHideWidgets(lw_tare_before_capture, false);
-               showHideWidgets(lw_bw_added, false);
-
-               if(radio_force_sensor.Active)
-                       label_angle_use.Text = "Just informative";
-               showHideWidgets(lw_angle, true);
+               managePage(Pages.FORCE);
+               ForceSensorExerciseWindowBox.notebook_main.CurrentPage = Convert.ToInt32(Pages.FORCE);
+               spin_body_mass_add.Value = 100;
        }
 
-       private void showHideWidgets(List<Widget> lw, bool show)
+       //just to have shorter code
+       //and to be able to upload this without bothering the translators at the moment
+       private string ss (string s)
        {
-               foreach(Widget w in lw)
-                       w.Visible = show;
+               //return Catalog.GetString(s);
+               return s;
        }
 
-       private void showHideWidgetsRecursively(List<Widget> lw, bool show)
+       private string getTopExplanations (Pages p)
        {
-               if(lw == lw_elastic)
-               {
-                       LogB.Information("REC string, show: " + show.ToString());
-                       showHideWidgets(lw, show);
-                       showHideWidgetsRecursively(lw_cdg_displ, radio_force_resultant.Active && 
radio_string_elastic.Active);
+               string str;
+               if(p == Pages.FORCE)
+                       str = ss("In some cases the force registered by the Force Sensor is not directly the 
force that the person is exerting.");
+               else if(p == Pages.FIXATION)
+                       str = ss("How the force is transmitted to the sensor");
+               else if(p == Pages.MASS)
+                       str = ss("Depending on the exercise and configuration of the test, the total mass 
(mass of the person and the extra load) can affect to the sensor measuring. Select how to manage this 
effect.");
+               else { //if(p == Pages.ANGLE)
+                       if(radio_force_resultant.Active && radio_mass_add.Active)
+                               str = ss("In current exercise configuration, it is necessary to enter the 
angle in which the sensor is measuring.");
+                       else
+                               str = ss("In current exercise configuration, angle is merely descriptive (not 
used in calculations).");
                }
-               else if(lw == lw_cdg_displ)
+
+               return str;
+       }
+
+       private string getDescription (Options o)
+       {
+               string str;
+               if(o == Options.FORCE_SENSOR)
+                       str = ss("When you are interested only in the force transmitted to the force sensor. 
This option do NOT take into account the effect of elastic elements or the mass or the acceleration of a 
mass.");
+               else if(o == Options.FORCE_RESULTANT)
+                       str = ss("When you want the resultant of all the forces exerted by the person. This 
value is the vector module of the resultant force vector. This option allows to take in account the effect of 
the elastic elements or the acceleration of a mass.");
+               else if(o == Options.FIXATION_ELASTIC)
+                       str = ss("If exerting a force, some element is significantly elongated it means that 
you are using elastic elements. Knowing the characteristics of the elastic elements allows to calculate 
positions, velocities and accelerations during the exercise.");
+               else if(o == Options.FIXATION_NOT_ELASTIC)
+                       str = ss("If exerting a force there's no significant movement you are using not 
elastic elements.");
+               else if(o == Options.MASS_ADD)
+                       str = ss("When the mass don't affect the sensor data but it must be added to it.");
+               else if(o == Options.MASS_SUBTRACT)
+                       str = ss("In some cases the weight if the mass is supported by the sensor but it is 
not a force that the subject is exerting. In this case, the sensor will be tared before starting the test.");
+               else if(o == Options.MASS_NOTHING)
+                       str = ss("In some cases the weight is transmitted to the sensor and it is also 
supported by the measured limb. If the effect of the mass is not significant, use this option also.");
+               else //if(o == Options.ANGLE)
+                       str = ss("0 means horizontally") + "\n" +
+                               ss("90 means vertically with the person above the sensor") + "\n" +
+                               ss("-90 means vertically with the person below the sensor");
+
+               return str;
+       }
+
+       private string getExample (Options o)
+       {
+               string str;
+               if(o == Options.FORCE_SENSOR)
+                       str = "1.- " + ss("Isometric Leg Extension.") +
+                               "\n2.- " + ss("Upper limb movements against a rubber if the displaced mass is 
considered insignificant.");
+               else if(o == Options.FORCE_RESULTANT)
+                       str = "1.- " + ss("Isometric squat with the force sensor fixed between the floor and 
the body.") +
+                               "\n2.- " + ss("Movements where a significant mass is accelerated.") +
+                               "\n3.- " + ss("Horizontal movements where the sensor don't measure the 
gravitational vertical forces...)");
+               else if(o == Options.FIXATION_ELASTIC)
+                       str =  ss("Rubber bands, springs, flexible material ...");
+               else if(o == Options.FIXATION_NOT_ELASTIC)
+                       str = "1.- " + ss("In an isometric squat with the force sensor fixed between the 
floor and the body, increasing the mass don't affect the measure of the sensor because the weight is 
supported by the lower limbs, not the sensor.") +
+                               "\n2.- " + ss("Running in a threadmill against a rubber. The sensor is 
measuring the force that a rubber is transmitting horizontally to a subject running in a threadmill. The body 
weight is added to the total force exerted by the subject.");
+               else if(o == Options.MASS_ADD)
+                       str = "1.- " + ss("In an isometric squat with the force sensor fixed between the 
floor and the body, increasing the mass don't affect the measure of the sensor because the weight is 
supported by the lower limbs, not the sensor.") +
+                               "\n2.- " + ss("Running in a threadmill against a rubber. The sensor is 
measuring the force that a rubber is transmitting horizontally to a subject running in a threadmill. The body 
weight is added to the total force exerted by the subject.");
+               else if(o == Options.MASS_SUBTRACT)
+                       str = ss("Hamstring test where the heel of the person is suspended in a cinch 
attached to the sensor. The weight of the leg is affecting the measure of the force transmitted to the sensor 
but this is not a force exerted by the subject.");
+               else if(o == Options.MASS_NOTHING)
+                       str = "1.- " + ss("Nordic hamstring. In a Nordic hamstring with the sensor attached 
to the ankle, the weight affects the values of the sensor but this weight is supported by the hamstrings we 
are measuring.") +
+                               "\n2.- " + ss("Pulling on a TRX. Pulling from a TRX implies overcome the body 
weight. This body weight is also measured by the sensor.");
+               else //if(o == Options.ANGLE)
+                       str = "";
+
+               return str;
+       }
+
+       private void set_notebook_desc_example_labels(Options o)
+       {
+               string str;
+
+               if(o == Options.FORCE_SENSOR)
+                       str = ss("Raw data");
+               else if(o == Options.FORCE_RESULTANT)
+                       str = ss("Resultant force");
+               else if(o == Options.FIXATION_ELASTIC)
+                       str = ss("Elastic");
+               else if(o == Options.FIXATION_NOT_ELASTIC)
+                       str = ss("Not Elastic");
+               else if(o == Options.MASS_ADD)
+                       str = ss("Add mass");
+               else if(o == Options.MASS_SUBTRACT)
+                       str = ss("Subtract mass");
+               else if(o == Options.MASS_NOTHING)
+                       str = ss("Mass is included");
+               else //if(o == Options.ANGLE)
+                       str = ss("Description");
+
+               label_notebook_desc_examples_desc.Text = str;
+               label_notebook_desc_examples_examples.Text = ss("Examples of:") + " " + str;
+       }
+
+       private void managePage(int i)
+       {
+               //convert to int to enum
+               Pages p = (Pages)Enum.ToObject(typeof(Pages) , i);
+               managePage(p);
+       }
+       private void managePage(Pages p)
+       {
+               string desc;
+               string ex;
+
+               //default for most of the pages
+               button_next_or_accept.Sensitive = true;
+               button_back.Sensitive = true;
+               notebook_desc_examples.GetNthPage(1).Show();
+
+               if(p == Pages.FORCE)
                {
-                       LogB.Information("REC cdg displ, show: " + show.ToString());
-                       showHideWidgets(lw, show && radio_string_elastic.Active);
-                       showHideWidgetsRecursively(lw_sensor_affected_bw, radio_cdg_displ_yes.Active);
+                       button_back.Sensitive = false;
+
+                       if(radio_force_sensor.Active) {
+                               desc = getDescription(Options.FORCE_SENSOR);
+                               ex = getExample(Options.FORCE_SENSOR);
+                               set_notebook_desc_example_labels(Options.FORCE_SENSOR);
+                       } else {
+                               desc = getDescription(Options.FORCE_RESULTANT);
+                               ex = getExample(Options.FORCE_RESULTANT);
+                               set_notebook_desc_example_labels(Options.FORCE_RESULTANT);
+                       }
                }
-               else if(lw == lw_sensor_affected_bw)
+               else if(p == Pages.FIXATION)
                {
-                       LogB.Information("REC affected bw, show: " + (show && 
radio_force_resultant.Active).ToString());
-                       showHideWidgets(lw, radio_force_resultant.Active &&
-                                       (
-                                        (radio_string_elastic.Active && radio_cdg_displ_yes.Active) ||
-                                        (radio_string_rigid.Active)
-                                        ) );
-                       showHideWidgetsRecursively(lw_tare_before_capture, 
radio_sensor_affected_bw_yes.Active);
+
+                       if(radio_fixation_elastic.Active) {
+                               desc = getDescription(Options.FIXATION_ELASTIC);
+                               ex = getExample(Options.FIXATION_ELASTIC);
+                               set_notebook_desc_example_labels(Options.FIXATION_ELASTIC);
+                       } else {
+                               desc = getDescription(Options.FIXATION_NOT_ELASTIC);
+                               ex = getExample(Options.FIXATION_NOT_ELASTIC);
+                               set_notebook_desc_example_labels(Options.FIXATION_NOT_ELASTIC);
+                       }
                }
-               else if(lw == lw_tare_before_capture)
+               else if(p == Pages.MASS)
                {
-                       LogB.Information("REC tare before capture, show: " + show.ToString());
-                       showHideWidgets(lw, show && radio_sensor_affected_bw_yes.Visible);
-                       showHideWidgets(lw_bw_added, radio_tare_before_capture_no.Active);
+
+                       if(radio_mass_add.Active) {
+                               desc = getDescription(Options.MASS_ADD);
+                               ex = getExample(Options.MASS_ADD);
+                               set_notebook_desc_example_labels(Options.MASS_ADD);
+                       } else if(radio_mass_subtract.Active) {
+                               desc = getDescription(Options.MASS_SUBTRACT);
+                               ex = getExample(Options.MASS_SUBTRACT);
+                               set_notebook_desc_example_labels(Options.MASS_SUBTRACT);
+                       } else { // (radio_mass_nothing.Active)
+                               desc = getDescription(Options.MASS_NOTHING);
+                               ex = getExample(Options.MASS_NOTHING);
+                               set_notebook_desc_example_labels(Options.MASS_NOTHING);
+                       }
+                       hbox_body_mass_add.Sensitive = radio_mass_add.Active;
                }
+               else // if(p == Pages.ANGLE)
+               {
+                       button_next_or_accept.Sensitive = false;
 
+                       desc = getDescription(Options.ANGLE);
+                       ex = getExample(Options.ANGLE);
+                       set_notebook_desc_example_labels(Options.ANGLE);
 
-               //angle is changed at the end because it can affect many combinations
-               if (radio_force_sensor.Active ||
-                               ( radio_string_elastic.Active && radio_cdg_displ_no.Active ) ||
-                               ( radio_tare_before_capture_yes.Visible && 
radio_tare_before_capture_yes.Active ) ||
-                               ( spin_bw_added.Visible && Convert.ToInt32(spin_bw_added.Value) == 0 ) )
-               {
-                       label_angle_use.Text = "Just informative";
-                       showHideWidgets(lw_angle, true);
-               } else if (spin_bw_added.Visible && Convert.ToInt32(spin_bw_added.Value) > 0)
-               {
-                       label_angle_use.Text = "Used for calculations";
-                       showHideWidgets(lw_angle, true);
-               } else
-                       showHideWidgets(lw_angle, false);
+                       notebook_desc_examples.CurrentPage = 0;
+                       notebook_desc_examples.GetNthPage(1).Hide();
+               }
+
+               textview_description.Buffer.Text = desc;
+               textview_examples.Buffer.Text = ex;
        }
 
 
-       private void on_radio_force_toggled (object o, EventArgs args)
+       private void on_button_next_clicked (object o, EventArgs args)
        {
-               showHideWidgetsRecursively(lw_elastic, radio_force_resultant.Active);
-       }
+               if(notebook_main.CurrentPage == Convert.ToInt32(Pages.FORCE) && radio_force_sensor.Active)
+                       notebook_main.CurrentPage = Convert.ToInt32(Pages.ANGLE);
+               else if(notebook_main.CurrentPage < Convert.ToInt32(Pages.ANGLE))
+                       notebook_main.CurrentPage ++;
+               else
+                       return;
 
-       private void on_radio_string_toggled (object o, EventArgs args)
-       {
-               showHideWidgetsRecursively(lw_cdg_displ, radio_string_elastic.Active); //this will manage 
sensor_affected_bw in the two paths
+               managePage(notebook_main.CurrentPage);
        }
-
-       private void on_radio_cdg_displ_toggled (object o, EventArgs args)
+       private void on_button_back_clicked (object o, EventArgs args)
        {
-               showHideWidgetsRecursively(lw_sensor_affected_bw, radio_cdg_displ_yes.Active);
+               if(notebook_main.CurrentPage == Convert.ToInt32(Pages.ANGLE) && radio_force_sensor.Active)
+                       notebook_main.CurrentPage = Convert.ToInt32(Pages.FORCE);
+               else if(notebook_main.CurrentPage > Convert.ToInt32(Pages.FORCE))
+                       notebook_main.CurrentPage --;
+               else
+                       return;
+
+               managePage(notebook_main.CurrentPage);
        }
 
-       private void on_radio_sensor_affected_bw_toggled (object o, EventArgs args)
+       private void on_radio_force_toggled (object o, EventArgs args)
        {
-               showHideWidgetsRecursively(lw_tare_before_capture, radio_sensor_affected_bw_yes.Active);
+               managePage(Pages.FORCE);
        }
-
-       private void on_radio_tare_before_capture_toggled (object o, EventArgs args)
+       private void on_radio_fixation_toggled (object o, EventArgs args)
        {
-               showHideWidgets(lw_bw_added, radio_tare_before_capture_no.Active);
+               managePage(Pages.FIXATION);
        }
-
-       private void on_spin_bw_added_value_changed (object o, EventArgs args)
+       private void on_radio_mass_toggled (object o, EventArgs args)
        {
-               if(Convert.ToInt32(spin_bw_added.Value) > 0)
-                       label_angle_use.Text = "Used for calculations";
-               else
-                       label_angle_use.Text = "Just informative";
+               managePage(Pages.MASS);
        }
 
        private void on_entries_changed (object o, EventArgs args)
@@ -261,6 +386,12 @@ public class ForceSensorExerciseWindow
                entry_name.Text = Util.MakeValidSQL(entry_name.Text);
        }
 
+       void on_button_cancel_clicked (object o, EventArgs args)
+       {
+               ForceSensorExerciseWindowBox.force_sensor_exercise.Hide();
+               ForceSensorExerciseWindowBox = null;
+       }
+
        private void on_delete_event (object o, DeleteEventArgs args)
        {
                LogB.Information("calling on_delete_event");


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