[chronojump] DB:1.79 encoderWorkKcal or joules and gui/preferences



commit c6ffdc6b5416f7c7fb89a323b27af5a3c2001b3c
Author: Xavier de Blas <xaviblas gmail com>
Date:   Wed Oct 30 16:59:03 2019 +0100

    DB:1.79 encoderWorkKcal or joules and gui/preferences

 glade/preferences_win.glade | 98 ++++++++++++++++++++++++++++++++++++++++++++-
 src/gui/preferences.cs      | 14 ++++++-
 src/preferences.cs          |  1 +
 src/sqlite/main.cs          | 11 ++++-
 src/sqlite/preferences.cs   |  5 +++
 5 files changed, 125 insertions(+), 4 deletions(-)
---
diff --git a/glade/preferences_win.glade b/glade/preferences_win.glade
index 51549df5..c1eeedd1 100644
--- a/glade/preferences_win.glade
+++ b/glade/preferences_win.glade
@@ -2809,6 +2809,100 @@ Capture</property>
                             <property name="position">0</property>
                           </packing>
                         </child>
+                        <child>
+                          <widget class="GtkFrame" id="frame6">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="label_xalign">0</property>
+                            <property name="shadow_type">none</property>
+                            <child>
+                              <widget class="GtkAlignment" id="alignment6">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="left_padding">12</property>
+                                <child>
+                                  <widget class="GtkHBox" id="hbox12">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">False</property>
+                                    <property name="border_width">8</property>
+                                    <property name="spacing">30</property>
+                                    <child>
+                                      <widget class="GtkLabel" id="label35">
+                                        <property name="visible">True</property>
+                                        <property name="can_focus">False</property>
+                                        <property name="label" translatable="yes">Work</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="hbox18">
+                                        <property name="visible">True</property>
+                                        <property name="can_focus">False</property>
+                                        <property name="spacing">20</property>
+                                        <child>
+                                          <widget class="GtkRadioButton" id="radio_encoder_work_kcal">
+                                            <property name="label">Kcal</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>
+                                          </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_encoder_work_joules">
+                                            <property name="label">Joules</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_encoder_work_kcal</property>
+                                          </widget>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="fill">False</property>
+                                            <property name="position">1</property>
+                                          </packing>
+                                        </child>
+                                      </widget>
+                                      <packing>
+                                        <property name="expand">True</property>
+                                        <property name="fill">True</property>
+                                        <property name="position">1</property>
+                                      </packing>
+                                    </child>
+                                  </widget>
+                                </child>
+                              </widget>
+                            </child>
+                            <child>
+                              <widget class="GtkLabel" id="label6">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="label" translatable="yes">Units</property>
+                                <property name="use_markup">True</property>
+                              </widget>
+                              <packing>
+                                <property name="type">label_item</property>
+                              </packing>
+                            </child>
+                          </widget>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
                         <child>
                           <widget class="GtkFrame" id="frame1">
                             <property name="visible">True</property>
@@ -2940,7 +3034,7 @@ Capture</property>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">True</property>
-                            <property name="position">1</property>
+                            <property name="position">2</property>
                           </packing>
                         </child>
                         <child>
@@ -3065,7 +3159,7 @@ Capture</property>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">True</property>
-                            <property name="position">2</property>
+                            <property name="position">3</property>
                           </packing>
                         </child>
                       </widget>
diff --git a/src/gui/preferences.cs b/src/gui/preferences.cs
index 7a88154e..ba25bdd9 100644
--- a/src/gui/preferences.cs
+++ b/src/gui/preferences.cs
@@ -131,6 +131,8 @@ public class PreferencesWindow
 
        //encoder other tab
        [Widget] Gtk.CheckButton checkbutton_encoder_propulsive;
+       [Widget] Gtk.RadioButton radio_encoder_work_kcal;
+       [Widget] Gtk.RadioButton radio_encoder_work_joules;
        [Widget] Gtk.SpinButton spin_encoder_smooth_con;
        [Widget] Gtk.Label label_encoder_con;
        [Widget] Gtk.RadioButton radio_encoder_1RM_nonweighted;
@@ -554,6 +556,11 @@ public class PreferencesWindow
 
                //encoder other -->
                PreferencesWindowBox.checkbutton_encoder_propulsive.Active = preferences.encoderPropulsive;
+
+               if(preferences.encoderWorkKcal)
+                       PreferencesWindowBox.radio_encoder_work_kcal.Active = true;
+               else
+                       PreferencesWindowBox.radio_encoder_work_joules.Active = true;
                
                PreferencesWindowBox.spin_encoder_smooth_con.Value = preferences.encoderSmoothCon;
 
@@ -1868,7 +1875,12 @@ public class PreferencesWindow
                                "encoderPropulsive",
                                preferences.encoderPropulsive,
                                PreferencesWindowBox.checkbutton_encoder_propulsive.Active);
-               
+
+               preferences.encoderWorkKcal = preferencesChange(
+                               SqlitePreferences.EncoderWorkKcal,
+                               preferences.encoderWorkKcal,
+                               radio_encoder_work_kcal.Active);
+
                preferences.encoderSmoothCon = preferencesChange(
                                "encoderSmoothCon",
                                preferences.encoderSmoothCon,
diff --git a/src/preferences.cs b/src/preferences.cs
index f18d3b6b..3e4acdbd 100644
--- a/src/preferences.cs
+++ b/src/preferences.cs
@@ -74,6 +74,7 @@ public class Preferences
        
        //encoder other
        public bool encoderPropulsive;
+       public bool encoderWorkKcal;
        public double encoderSmoothCon;
        public Constants.Encoder1RMMethod encoder1RMMethod;
        
diff --git a/src/sqlite/main.cs b/src/sqlite/main.cs
index ad9ac6df..e5c18d93 100644
--- a/src/sqlite/main.cs
+++ b/src/sqlite/main.cs
@@ -129,7 +129,7 @@ class Sqlite
        /*
         * Important, change this if there's any update to database
         */
-       static string lastChronojumpDatabaseVersion = "1.78";
+       static string lastChronojumpDatabaseVersion = "1.79";
 
        public Sqlite() {
        }
@@ -2547,6 +2547,14 @@ class Sqlite
 
                                currentVersion = updateVersion("1.78");
                        }
+                       if(currentVersion == "1.78")
+                       {
+                               LogB.SQL("Inserted into preferences: encoderWorkKcal");
+
+                               SqlitePreferences.Insert (SqlitePreferences.EncoderWorkKcal, "True");
+
+                               currentVersion = updateVersion("1.79");
+                       }
 
 
 
@@ -2742,6 +2750,7 @@ class Sqlite
                SqliteJson.createTableUploadExhibitionTestTemp ();
 
                //changes [from - to - desc]
+               //1.78 - 1.79 Converted DB to 1.79 Inserted into preferences: encoderWorkKcal
                //1.77 - 1.78 Converted DB to 1.78 Inserted into preferences: encoderAutoSaveCurveBestNValue
                //1.76 - 1.77 Converted DB to 1.77 Inserted into preferences: forceSensorGraphsLineWidth
                //1.75 - 1.76 Converted DB to 1.76 ALTER TABLE " + Constants.ForceSensorTable + " ADD COLUMN 
(stiffness float, stiffnessString string)
diff --git a/src/sqlite/preferences.cs b/src/sqlite/preferences.cs
index 108807e9..0a0d741b 100644
--- a/src/sqlite/preferences.cs
+++ b/src/sqlite/preferences.cs
@@ -41,6 +41,7 @@ class SqlitePreferences : Sqlite
        public const string EncoderWeightsInertial = "encoderWeightsInertial";
 
        public const string EncoderAutoSaveCurveBestNValue = "encoderAutoSaveCurveBestNValue";
+       public const string EncoderWorkKcal = "encoderWorkKcal";
 
        public const string EncoderRhythmActiveStr = "encoderRhythmActive";
        public const string EncoderRhythmRepsOrPhasesStr = "encoderRhythmRepsOrPhases";
@@ -148,6 +149,8 @@ class SqlitePreferences : Sqlite
                                Insert ("encoderShowStartAndDuration", "False", dbcmdTr);
                                Insert ("encoderCaptureCutByTriggers", 
Preferences.TriggerTypes.NO_TRIGGERS.ToString(), dbcmdTr);
                                Insert ("encoderPropulsive", "True", dbcmdTr);
+                               Insert (EncoderWorkKcal, "True", dbcmdTr);
+                               Insert ("encoderWorkKcal", "True", dbcmdTr);
                                Insert ("encoderSmoothEccCon", "0.6", dbcmdTr);
                                Insert ("encoderSmoothCon", "0.7", dbcmdTr);
                                Insert ("encoder1RMMethod", Constants.Encoder1RMMethod.WEIGHTED2.ToString(), 
dbcmdTr);
@@ -370,6 +373,8 @@ class SqlitePreferences : Sqlite
                        //encoder other
                        else if(reader[0].ToString() == "encoderPropulsive")
                                preferences.encoderPropulsive = reader[1].ToString() == "True";
+                       else if(reader[0].ToString() == EncoderWorkKcal)
+                               preferences.encoderWorkKcal = reader[1].ToString() == "True";
                        else if(reader[0].ToString() == "encoderSmoothCon")
                                preferences.encoderSmoothCon = Convert.ToDouble(
                                                Util.ChangeDecimalSeparator(reader[1].ToString()));


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