[chronojump] Changing any combo exercise will modify sensitivity of left/right buttons



commit ae2ed14cf4393f02f331c132acaefc0ec237247a
Author: Xavier de Blas <xaviblas gmail com>
Date:   Tue Apr 6 12:14:56 2021 +0200

    Changing any combo exercise will modify sensitivity of left/right buttons

 src/gui/app1/chronojump.cs  | 15 +++++++++++++++
 src/gui/app1/encoder.cs     |  4 ++++
 src/gui/app1/forceSensor.cs |  4 ++++
 src/gui/app1/runEncoder.cs  |  4 ++++
 src/utilGtk.cs              | 15 +++++++++++++++
 5 files changed, 42 insertions(+)
---
diff --git a/src/gui/app1/chronojump.cs b/src/gui/app1/chronojump.cs
index 9389f6de..a231aeaa 100644
--- a/src/gui/app1/chronojump.cs
+++ b/src/gui/app1/chronojump.cs
@@ -2227,6 +2227,10 @@ public partial class ChronoJumpWindow
                string myText = UtilGtk.ComboGetActive(combo);
                LogB.Information("Selected: " + myText);
 
+               //sensitivity of left/right buttons
+               button_combo_jumps_exercise_capture_left.Sensitive = (combo_select_jumps.Active > 0);
+               button_combo_jumps_exercise_capture_right.Sensitive = ! 
UtilGtk.ComboSelectedIsLast(combo_select_jumps);
+
                //show extra window options
                on_extra_window_jumps_test_changed(o, args);
        }
@@ -2241,6 +2245,10 @@ public partial class ChronoJumpWindow
                string myText = UtilGtk.ComboGetActive(combo);
                LogB.Information("Selected: " + myText); 
 
+               //sensitivity of left/right buttons
+               button_combo_jumps_rj_exercise_capture_left.Sensitive = (combo_select_jumps_rj.Active > 0);
+               button_combo_jumps_rj_exercise_capture_right.Sensitive = ! 
UtilGtk.ComboSelectedIsLast(combo_select_jumps_rj);
+
                //show extra window options
                on_extra_window_jumps_rj_test_changed(o, args);
        }
@@ -2255,6 +2263,10 @@ public partial class ChronoJumpWindow
                string myText = UtilGtk.ComboGetActive(combo);
                LogB.Information("Selected: " + myText); 
 
+               //sensitivity of left/right buttons
+               button_combo_runs_exercise_capture_left.Sensitive = (combo_select_runs.Active > 0);
+               button_combo_runs_exercise_capture_right.Sensitive = ! 
UtilGtk.ComboSelectedIsLast(combo_select_runs);
+
                //show extra window options
                on_extra_window_runs_test_changed(o, args);
        }
@@ -2269,6 +2281,9 @@ public partial class ChronoJumpWindow
                string myText = UtilGtk.ComboGetActive(combo);
                LogB.Information("Selected: " + myText); 
 
+               //sensitivity of left/right buttons
+               button_combo_runs_interval_exercise_capture_left.Sensitive = 
(combo_select_runs_interval.Active > 0);
+               button_combo_runs_interval_exercise_capture_right.Sensitive = ! 
UtilGtk.ComboSelectedIsLast(combo_select_runs_interval);
                //show extra window options
                on_extra_window_runs_interval_test_changed(o, args);
        }
diff --git a/src/gui/app1/encoder.cs b/src/gui/app1/encoder.cs
index 0c332d14..918b2408 100644
--- a/src/gui/app1/encoder.cs
+++ b/src/gui/app1/encoder.cs
@@ -1016,6 +1016,10 @@ public partial class ChronoJumpWindow
                        array1RMUpdate(false);
                        encoder_change_displaced_weight_and_1RM ();
                        label_encoder_top_exercise.Text = 
UtilGtk.ComboGetActive(combo_encoder_exercise_capture);
+
+                       //sensitivity of left/right buttons
+                       button_combo_encoder_exercise_capture_left.Sensitive = 
(combo_encoder_exercise_capture.Active > 0);
+                       button_combo_encoder_exercise_capture_right.Sensitive = ! 
UtilGtk.ComboSelectedIsLast(combo_encoder_exercise_capture);
                }
        }
        
diff --git a/src/gui/app1/forceSensor.cs b/src/gui/app1/forceSensor.cs
index cf701653..ada321cd 100644
--- a/src/gui/app1/forceSensor.cs
+++ b/src/gui/app1/forceSensor.cs
@@ -2841,6 +2841,10 @@ LogB.Information(" fs R ");
                if(! fse.ComputeAsElastic)
                        isElasticStr = " (" + Catalog.GetString("Not elastic") + ")";
 
+               //sensitivity of left/right buttons
+               button_combo_force_sensor_exercise_capture_left.Sensitive = 
(combo_force_sensor_exercise.Active > 0);
+               button_combo_force_sensor_exercise_capture_right.Sensitive = ! 
UtilGtk.ComboSelectedIsLast(combo_force_sensor_exercise);
+
                setLabelContactsExerciseSelected(Catalog.GetString(fse.Name) + isElasticStr);
                combo_force_sensor_button_sensitive_exercise(true);
        }
diff --git a/src/gui/app1/runEncoder.cs b/src/gui/app1/runEncoder.cs
index 1900f097..46f2068c 100644
--- a/src/gui/app1/runEncoder.cs
+++ b/src/gui/app1/runEncoder.cs
@@ -1583,6 +1583,10 @@ public partial class ChronoJumpWindow
        private void on_combo_run_encoder_exercise_changed(object o, EventArgs args)
        {
                setLabelContactsExerciseSelected(Constants.Menuitem_modes.RUNSENCODER);
+
+               //sensitivity of left/right buttons
+               button_combo_run_encoder_exercise_capture_left.Sensitive = (combo_run_encoder_exercise.Active 
0);
+               button_combo_run_encoder_exercise_capture_right.Sensitive = ! 
UtilGtk.ComboSelectedIsLast(combo_run_encoder_exercise);
        }
 
        private void fillRunEncoderExerciseCombo(string name)
diff --git a/src/utilGtk.cs b/src/utilGtk.cs
index 5b0c68f7..d9c9ea61 100644
--- a/src/utilGtk.cs
+++ b/src/utilGtk.cs
@@ -73,6 +73,21 @@ public class UtilGtk
                return myCombo;
        }
 
+       public static bool ComboSelectedIsLast(ComboBox myCombo)
+       {
+               TreeIter iter;
+               myCombo.Model.GetIterFirst(out iter);
+               int current = myCombo.Active;
+               int count = 0;
+               do {
+                       if(count > current)
+                               return false;
+                       count ++;
+               } while (myCombo.Model.IterNext (ref iter));
+
+               return true;
+       }
+
 
        public static string ComboGetActive(ComboBox myCombo) {
                TreeIter iter;


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