[chronojump] Encoder SqliteEncoderExercise fixed (again)



commit 4cfa5af116e82c21d729d2f2c881c5c5bff8f1a5
Author: Xavier de Blas <xaviblas gmail com>
Date:   Mon Nov 19 18:10:21 2012 +0100

    Encoder SqliteEncoderExercise fixed (again)

 src/gui/encoder.cs    |    8 ++++----
 src/sqlite/encoder.cs |    8 +++++---
 2 files changed, 9 insertions(+), 7 deletions(-)
---
diff --git a/src/gui/encoder.cs b/src/gui/encoder.cs
index 464d752..cfbaaf0 100644
--- a/src/gui/encoder.cs
+++ b/src/gui/encoder.cs
@@ -758,7 +758,7 @@ public partial class ChronoJumpWindow
 			foreach(EncoderSQL eSQL in data) {
 				double mass = Convert.ToDouble(eSQL.extraWeight); //TODO: future problem if this has '%'
 				EncoderExercise ex = (EncoderExercise) 
-					SqliteEncoder.SelectEncoderExercises(eSQL.exerciseID,true)[0];
+					SqliteEncoder.SelectEncoderExercises(true, eSQL.exerciseID, false)[0];
 				mass += bodyMass * ex.percentBodyWeight / 100.0;
 
 				writer.WriteLine(eSQL.future1 + "," + ex.name + "," + 
@@ -932,7 +932,7 @@ public partial class ChronoJumpWindow
 	protected void createEncoderCombos() {
 		//create combo exercises
 		combo_encoder_exercise = ComboBox.NewText ();
-		ArrayList encoderExercises = SqliteEncoder.SelectEncoderExercises(-1, false);
+		ArrayList encoderExercises = SqliteEncoder.SelectEncoderExercises(false, -1, false);
 		encoderExercisesTranslationAndBodyPWeight = new String [encoderExercises.Count];
 		string [] exerciseNamesToCombo = new String [encoderExercises.Count];
 		int i =0;
@@ -1041,7 +1041,7 @@ public partial class ChronoJumpWindow
 		int exerciseID = Convert.ToInt32(
 				Util.FindOnArray(':', 2, 0, UtilGtk.ComboGetActive(combo_encoder_exercise), 
 				encoderExercisesTranslationAndBodyPWeight) );	//exerciseID
-		EncoderExercise ex = (EncoderExercise) SqliteEncoder.SelectEncoderExercises(exerciseID,false)[0];
+		EncoderExercise ex = (EncoderExercise) SqliteEncoder.SelectEncoderExercises(false,exerciseID,false)[0];
 
 		ArrayList bigArray = new ArrayList();
 
@@ -1123,7 +1123,7 @@ public partial class ChronoJumpWindow
 			SqliteEncoder.InsertExercise(false, name, genericWin.SpinIntSelected, 
 					genericWin.Entry2Selected, genericWin.Entry3Selected);
 
-			ArrayList encoderExercises = SqliteEncoder.SelectEncoderExercises(-1, false);
+			ArrayList encoderExercises = SqliteEncoder.SelectEncoderExercises(false,-1, false);
 			encoderExercisesTranslationAndBodyPWeight = new String [encoderExercises.Count];
 			string [] exerciseNamesToCombo = new String [encoderExercises.Count];
 			int i =0;
diff --git a/src/sqlite/encoder.cs b/src/sqlite/encoder.cs
index cc2ed5e..d71d1e2 100644
--- a/src/sqlite/encoder.cs
+++ b/src/sqlite/encoder.cs
@@ -251,9 +251,10 @@ class SqliteEncoder : Sqlite
 
 	//if submited a -1, returns an especific EncoderExercise that can be read like this	
 	//EncoderExercise ex = (EncoderExercise) SqliteEncoder.SelectEncoderExercises(eSQL.exerciseID)[0];
-	public static ArrayList SelectEncoderExercises(int uniqueID, bool onlyNames) 
+	public static ArrayList SelectEncoderExercises(bool dbconOpened, int uniqueID, bool onlyNames) 
 	{
-		dbcon.Open();
+		if(! dbconOpened)
+			dbcon.Open();
 
 		string uniqueIDStr = "";
 		if(uniqueID != -1)
@@ -292,7 +293,8 @@ class SqliteEncoder : Sqlite
 		}
 
 		reader.Close();
-		dbcon.Close();
+		if(! dbconOpened)
+			dbcon.Close();
 
 		return array;
 	}



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