[chronojump] Refactorized some sprint methods



commit 012285cf8ea14b75d63e0433224cc940f5c5e460
Author: Xavier de Blas <xaviblas gmail com>
Date:   Wed Mar 24 17:37:37 2021 +0100

    Refactorized some sprint methods

 src/gui/app1/chronojump.cs |  6 ++---
 src/gui/sprint.cs          | 59 +++++-----------------------------------------
 src/run.cs                 | 48 ++++++++++++++++++++++++++++++++++++-
 3 files changed, 56 insertions(+), 57 deletions(-)
---
diff --git a/src/gui/app1/chronojump.cs b/src/gui/app1/chronojump.cs
index 6fcca50c..5f446294 100644
--- a/src/gui/app1/chronojump.cs
+++ b/src/gui/app1/chronojump.cs
@@ -22,7 +22,7 @@
  *  along with this program; if not, write to the Free Software
  *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  *
- * Copyright (C) 2004-2020   Xavier de Blas <xaviblas gmail com>
+ * Copyright (C) 2004-2021   Xavier de Blas <xaviblas gmail com>
  */
 
 
@@ -4909,7 +4909,7 @@ public partial class ChronoJumpWindow
 
        private void calculateSprintAndUpload()
        {
-               string positions = getSprintPositions(
+               string positions = RunInterval.GetSprintPositions(
                                currentRunInterval.DistanceInterval, //distanceInterval. == -1 means variable 
distances
                                currentRunInterval.IntervalTimesString,
                                currentRunIntervalType.DistancesString  //distancesString
@@ -4920,7 +4920,7 @@ public partial class ChronoJumpWindow
                positions = Util.ChangeChars(positions, ",", ".");
                positions = "0;" + positions;
 
-               string splitTimes = getSplitTimes(currentRunInterval.IntervalTimesString);
+               string splitTimes = RunInterval.GetSplitTimes(currentRunInterval.IntervalTimesString, 
preferences.digitsNumber);
                splitTimes = Util.ChangeChars(splitTimes, ",", ".");
                splitTimes = "0;" + splitTimes;
 
diff --git a/src/gui/sprint.cs b/src/gui/sprint.cs
index 88702d68..afa023ad 100644
--- a/src/gui/sprint.cs
+++ b/src/gui/sprint.cs
@@ -15,7 +15,7 @@
  *  along with this program; if not, write to the Free Software
  *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  *
- * Copyright (C) 2017   Xavier de Blas <xaviblas gmail com> 
+ * Copyright (C) 2017,2021   Xavier de Blas <xaviblas gmail com>
  */
 
 using System;
@@ -87,15 +87,15 @@ public partial class ChronoJumpWindow
                        //get intervalTimes
                        string intervalTimesString = lineSplit[8];
 
-                       string positions = getSprintPositions(
+                       string positions = RunInterval.GetSprintPositions(
                                        Convert.ToDouble(lineSplit[7]), //distanceInterval. == -1 means 
variable distances
                                        intervalTimesString,
-                                       runIntervalTypeDistances(lineSplit[4], runITypes)       
//distancesString
+                                       SelectRunITypes.RunIntervalTypeDistances(lineSplit[4], runITypes)     
  //distancesString
                                        );
                        if(positions == "")
                                continue;
 
-                       string splitTimes = getSplitTimes(intervalTimesString);
+                       string splitTimes = RunInterval.GetSplitTimes(intervalTimesString, 
preferences.digitsNumber);
 
                        string [] lineParams = { 
                                lineSplit[4],
@@ -118,7 +118,7 @@ public partial class ChronoJumpWindow
                        return;
                }
 
-               string positions = getSprintPositions(
+               string positions = RunInterval.GetSprintPositions(
                                runI.DistanceInterval,          //distanceInterval. == -1 means variable 
distances
                                runI.IntervalTimesString,
                                runIType.DistancesString        //distancesString
@@ -135,7 +135,7 @@ public partial class ChronoJumpWindow
                                runI.Type,
                                runI.UniqueID.ToString(),
                                positions,
-                               getSplitTimes(runI.IntervalTimesString),
+                               RunInterval.GetSplitTimes(runI.IntervalTimesString, preferences.digitsNumber),
                                Util.TrimDecimals(runI.TimeTotal, preferences.digitsNumber)
                                );
 
@@ -145,53 +145,6 @@ public partial class ChronoJumpWindow
                LogB.Information("SPRINT add END");
        }
 
-       private string getSprintPositions(double distanceInterval, string intervalTimesString, string 
distancesString)
-       {
-               string positions = "";
-               string [] intervalTimesSplit = intervalTimesString.Split(new char[] {'='});
-               if(! distancesString.Contains("R") )    //discard RSA
-               {
-                       string sep = "";
-                       for(int i=0; i < intervalTimesSplit.Length; i ++)
-                       {
-                               positions += sep + Util.GetRunITotalDistance(distanceInterval, 
distancesString, i+1);
-                               sep = ";";
-                       }
-
-                       //format positions
-                       positions = Util.ChangeChars(positions, "-", ";");
-               }
-               return positions;
-       }
-
-       private string getSplitTimes(string intervalTimesString)
-       {
-               string [] intervalTimesSplit = intervalTimesString.Split(new char[] {'='});
-
-               //manage accumulated time
-               double timeAccumulated = 0;
-               string splitTimes = "";
-               string sep = "";
-               foreach(string time in intervalTimesSplit)
-               {
-                       double timeD = Convert.ToDouble(time);
-                       timeAccumulated += timeD;
-                       splitTimes += sep + Util.TrimDecimals(timeAccumulated, preferences.digitsNumber);
-                       sep = ";";
-               }
-
-               return splitTimes;
-       }
-
-       private string runIntervalTypeDistances(string runTypeEnglishName, List<object> runITypes)
-       {
-               foreach(SelectRunITypes type in runITypes)
-                       if(type.NameEnglish == runTypeEnglishName)
-                               return(type.DistancesString);
-
-               return "";
-       }
-
        private void onTreeviewSprintSelectionEntry (object o, EventArgs args)
        {
                TreeModel model;
diff --git a/src/run.cs b/src/run.cs
index 41a0299e..6804da9f 100644
--- a/src/run.cs
+++ b/src/run.cs
@@ -15,7 +15,7 @@
  *  along with this program; if not, write to the Free Software
  *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  *
- *  Copyright (C) 2004-2017   Xavier de Blas <xaviblas gmail com> 
+ *  Copyright (C) 2004-2021   Xavier de Blas <xaviblas gmail com>
  */
 
 using System;
@@ -209,6 +209,52 @@ public class RunInterval : Run
                                limited, simulated, initialSpeed, datetime);
        }
 
+       //this discards RSA
+       public static string GetSprintPositions(double distanceInterval, string intervalTimesString, string 
distancesString)
+       {
+               string positions = "";
+               string [] intervalTimesSplit = intervalTimesString.Split(new char[] {'='});
+               if(! distancesString.Contains("R") )    //discard RSA
+               {
+                       string sep = "";
+                       for(int i=0; i < intervalTimesSplit.Length; i ++)
+                       {
+                               positions += sep + Util.GetRunITotalDistance(distanceInterval, 
distancesString, i+1);
+                               sep = ";";
+                       }
+
+                       //format positions
+                       positions = Util.ChangeChars(positions, "-", ";");
+               }
+               return positions;
+       }
+
+       public static string GetSplitTimes(string intervalTimesString, int prefsDigitsNumber)
+       {
+               string [] intervalTimesSplit = intervalTimesString.Split(new char[] {'='});
+
+               //manage accumulated time
+               double timeAccumulated = 0;
+               string splitTimes = "";
+               string sep = "";
+               foreach(string time in intervalTimesSplit)
+               {
+                       double timeD = Convert.ToDouble(time);
+                       timeAccumulated += timeD;
+                       splitTimes += sep + Util.TrimDecimals(timeAccumulated, prefsDigitsNumber);
+                       sep = ";";
+               }
+
+               return splitTimes;
+       }
+
+       public static string GetCSVInputMulti() {
+               return Path.Combine(Path.GetTempPath(), "sprintInputMulti.csv");
+       }
+       public static string GetCSVResultsFileName() {
+               return Path.Combine(Path.GetTempPath(), "sprintResults.csv");
+       }
+
        public string IntervalTimesString
        {
                get { return intervalTimesString; }


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