[chronojump] DB to 2.26 contactsCaptureDisplay, runEncoderCaptureDisplaySimple



commit 30674ecfa0190867abee55c67a135fd8129eb766
Author: Xavier de Blas <xaviblas gmail com>
Date:   Mon Aug 9 18:28:51 2021 +0200

    DB to 2.26 contactsCaptureDisplay, runEncoderCaptureDisplaySimple

 src/gui/app1/contactsExercise.cs | 36 ++++++++++++++++++++++++++++++++++++
 src/preferences.cs               |  6 ++++++
 src/sqlite/main.cs               | 13 ++++++++++++-
 src/sqlite/preferences.cs        | 17 +++++++++++++++--
 4 files changed, 69 insertions(+), 3 deletions(-)
---
diff --git a/src/gui/app1/contactsExercise.cs b/src/gui/app1/contactsExercise.cs
index fcdf1a59a..989062cec 100644
--- a/src/gui/app1/contactsExercise.cs
+++ b/src/gui/app1/contactsExercise.cs
@@ -303,3 +303,39 @@ public partial class ChronoJumpWindow
                                        button_combo_force_sensor_exercise_capture_right);
        }
 }
+
+public class ContactsCaptureDisplay : BooleansInt
+{
+       //constructor when we have the 0-7 value
+       public ContactsCaptureDisplay(int selection)
+       {
+               this.i = selection;
+       }
+
+       //constructor with the 2 booleans
+       public ContactsCaptureDisplay(bool showBit1, bool showBit2)
+       {
+               this.i = 0;
+               if(showBit1)
+                       i ++;
+               if(showBit2)
+                       i += 2;
+       }
+
+       public bool ShowGraph
+       {
+               get { return Bit2; }
+       }
+
+       public bool ShowTable
+       {
+               get { return Bit1; }
+       }
+
+       //just to debug
+       public override string ToString()
+       {
+               return string.Format("selected: {0} (ShowGraph: {1}, ShowTable: {2})",
+                               i, ShowGraph, ShowTable);
+       }
+}
diff --git a/src/preferences.cs b/src/preferences.cs
index 9f522fe4c..373aca5cb 100644
--- a/src/preferences.cs
+++ b/src/preferences.cs
@@ -60,6 +60,9 @@ public class Preferences
        public enum UnitsEnum { METRIC, IMPERIAL };
        public UnitsEnum units;
 
+       public ContactsCaptureDisplay contactsCaptureDisplay;
+       public ContactsCaptureDisplay contactsCaptureDisplayStored; //to update sql on exit if changed
+
        public bool encoderCaptureInfinite;
 
        public EncoderCaptureDisplay encoderCaptureShowOnlyBars;
@@ -134,6 +137,9 @@ public class Preferences
        public int forceSensorGraphsLineWidth;
 
        //runEncoder
+       public bool runEncoderCaptureDisplaySimple;
+       public bool runEncoderCaptureDisplaySimpleStored;
+
        public double runEncoderMinAccel;
        public double runEncoderPPS;
 
diff --git a/src/sqlite/main.cs b/src/sqlite/main.cs
index bd7ec30a9..7b7afff8c 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 = "2.25";
+       static string lastChronojumpDatabaseVersion = "2.26";
 
        public Sqlite()
        {
@@ -3044,6 +3044,16 @@ class Sqlite
 
                                currentVersion = updateVersion("2.25");
                        }
+                       if(currentVersion == "2.25")
+                       {
+                               LogB.SQL("contactsCaptureDisplay with BooleansInt, and bool 
runEncoderCaptureDisplaySimple");
+
+                               SqlitePreferences.Insert(SqlitePreferences.ContactsCaptureDisplayStr,
+                                               new ContactsCaptureDisplay(false, true).GetInt.ToString());
+                               SqlitePreferences.Insert(SqlitePreferences.RunEncoderCaptureDisplaySimple, 
"True");
+
+                               currentVersion = updateVersion("2.26");
+                       }
 
 
                        /*
@@ -3265,6 +3275,7 @@ class Sqlite
 //just testing: 1.79 - 1.80 Converted DB to 1.80 Created table ForceSensorElasticBandGlue and moved 
stiffnessString records there
 
 
+               //2.25 - 2.26 Converted DB to 2.26 contactsCaptureDisplay with BooleansInt, and bool 
runEncoderCaptureDisplaySimple
                //2.24 - 2.25 Converted DB to 2.25 encoderCaptureShowOnlyBars now uses BooleansInt
                //2.23 - 2.24 Converted DB to 2.24 LogoAnimatedShow made False by default on Mac
                //2.22 - 2.23 Converted DB to 2.23 Inserted socialNetwork variables at preferences
diff --git a/src/sqlite/preferences.cs b/src/sqlite/preferences.cs
index 0e794c23f..e99304a64 100644
--- a/src/sqlite/preferences.cs
+++ b/src/sqlite/preferences.cs
@@ -48,6 +48,8 @@ class SqlitePreferences : Sqlite
        public const string SocialNetworkDatetime = "socialNetworkDatetime"; //"": not answered, -1: should 
be sent when there's network (after a ping)
 
        //contacts
+       public const string ContactsCaptureDisplayStr = "contactsCaptureDisplay";
+       public const string RunEncoderCaptureDisplaySimple = "runEncoderCaptureDisplaySimple";
        public const string JumpsFVProfileOnlyBestInWeight = "jumpsFVProfileOnlyBestInWeight";
        public const string JumpsFVProfileShowFullGraph = "jumpsFVProfileShowFullGraph";
        public const string JumpsEvolutionOnlyBestInSession = "jumpsEvolutionOnlyBestInSession";
@@ -186,8 +188,9 @@ class SqlitePreferences : Sqlite
                                Insert (UnitsStr, Preferences.UnitsEnum.METRIC.ToString(), dbcmdTr);
                                Insert (EncoderCaptureInfinite, "False", dbcmdTr);
 
-                               EncoderCaptureDisplay ecd = new EncoderCaptureDisplay(false, false, true);
-                               Insert ("encoderCaptureShowOnlyBars", ecd.GetInt.ToString(), dbcmdTr);
+                               Insert(ContactsCaptureDisplayStr, new ContactsCaptureDisplay(false, 
true).GetInt.ToString(), dbcmdTr);
+                               Insert ("encoderCaptureShowOnlyBars", new EncoderCaptureDisplay(false, false, 
true).GetInt.ToString(), dbcmdTr);
+                               Insert(RunEncoderCaptureDisplaySimple, "True", dbcmdTr);
 
                                Insert ("encoderCaptureShowNRepetitions", "-1", dbcmdTr);
                                Insert ("digitsNumber", "3", dbcmdTr);
@@ -531,6 +534,11 @@ class SqlitePreferences : Sqlite
                                        Enum.Parse(typeof(Preferences.UnitsEnum), reader[1].ToString());
                        else if(reader[0].ToString() == EncoderCaptureInfinite)
                                preferences.encoderCaptureInfinite = reader[1].ToString() == "True";
+                       else if(reader[0].ToString() == ContactsCaptureDisplayStr)
+                       {
+                               preferences.contactsCaptureDisplay = new 
ContactsCaptureDisplay(Convert.ToInt32(reader[1].ToString()));
+                               preferences.contactsCaptureDisplayStored = preferences.contactsCaptureDisplay;
+                       }
                        else if(reader[0].ToString() == "encoderCaptureShowOnlyBars")
                        {
                                preferences.encoderCaptureShowOnlyBars = new 
EncoderCaptureDisplay(Convert.ToInt32(reader[1].ToString()));
@@ -806,6 +814,11 @@ class SqlitePreferences : Sqlite
                                                Util.ChangeDecimalSeparator(reader[1].ToString()));
 
                        //runEncoder
+                       else if(reader[0].ToString() == RunEncoderCaptureDisplaySimple)
+                       {
+                               preferences.runEncoderCaptureDisplaySimple = reader[1].ToString() == "True";
+                               preferences.runEncoderCaptureDisplaySimpleStored = 
preferences.runEncoderCaptureDisplaySimple;
+                       }
                        else if(reader[0].ToString() == RunEncoderMinAccel)
                                preferences.runEncoderMinAccel = Convert.ToDouble(
                                                Util.ChangeDecimalSeparator(reader[1].ToString()));


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