[chronojump] Ensure mode inertial gets default encoderConfiguration that works
- From: Xavier de Blas <xaviblas src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [chronojump] Ensure mode inertial gets default encoderConfiguration that works
- Date: Fri, 27 May 2016 14:26:29 +0000 (UTC)
commit aacd2f53a7b3be9f4f72aca29c50a5d44bbeef0c
Author: Xavier de Blas <xaviblas gmail com>
Date: Fri May 27 16:23:03 2016 +0200
Ensure mode inertial gets default encoderConfiguration that works
src/encoder.cs | 8 ++++++++
src/gui/chronojump.cs | 3 ++-
src/gui/encoder.cs | 20 ++++++++++----------
src/gui/encoderConfiguration.cs | 4 +++-
4 files changed, 23 insertions(+), 12 deletions(-)
---
diff --git a/src/encoder.cs b/src/encoder.cs
index b189797..5bd4cd8 100644
--- a/src/encoder.cs
+++ b/src/encoder.cs
@@ -1393,6 +1393,14 @@ public class EncoderConfiguration {
}
}
+ public void SetInertialDefaultOptions() {
+ //after creating Constants.EncoderConfigurationNames.ROTARYAXISINERTIAL
+ inertiaMachine = 900;
+ d = 5;
+ list_d = new List<double>();
+ list_d.Add(d);
+ }
+
public void ReadParamsFromSQL (string [] strFull)
{
//adds other params
diff --git a/src/gui/chronojump.cs b/src/gui/chronojump.cs
index 76ef723..5ad9ecf 100644
--- a/src/gui/chronojump.cs
+++ b/src/gui/chronojump.cs
@@ -3073,6 +3073,7 @@ public partial class ChronoJumpWindow
if(! encoderConfigurationCurrent.has_inertia) {
encoderConfigurationCurrent = new EncoderConfiguration(
Constants.EncoderConfigurationNames.ROTARYAXISINERTIAL);
+ encoderConfigurationCurrent.SetInertialDefaultOptions();
changed = true;
}
@@ -3082,8 +3083,8 @@ public partial class ChronoJumpWindow
radiobutton_encoder_analyze_1RM.Visible = false;
radiobutton_encoder_analyze_neuromuscular_profile.Visible = false;
}
+ encoderGuiChangesAfterEncoderConfigurationWin(true);
if(changed) {
- label_encoder_selected.Text = encoderConfigurationCurrent.code;
prepareAnalyzeRepetitions ();
}
} else { //m == menuitem_modes.OTHER (contacts / other)
diff --git a/src/gui/encoder.cs b/src/gui/encoder.cs
index 3a40470..365298c 100644
--- a/src/gui/encoder.cs
+++ b/src/gui/encoder.cs
@@ -438,7 +438,8 @@ public partial class ChronoJumpWindow
new EventHandler(on_button_encoder_cancel_clicked);
}
- void on_encoder_configuration_win_accepted (object o, EventArgs args) {
+ void on_encoder_configuration_win_accepted (object o, EventArgs args)
+ {
encoder_configuration_win.Button_accept.Clicked -= new
EventHandler(on_encoder_configuration_win_accepted);
EncoderConfiguration eConfNew = encoder_configuration_win.GetAcceptedValues();
@@ -446,28 +447,27 @@ public partial class ChronoJumpWindow
return;
bool combo_encoder_anchorage_should_update = (encoderConfigurationCurrent.list_d !=
eConfNew.list_d);
-
-
+
encoderConfigurationCurrent = eConfNew;
LogB.Information("EncoderConfigurationCurrent = " +
encoderConfigurationCurrent.ToStringOutput(EncoderConfiguration.Outputs.SQL));
-
-
+
+ encoderGuiChangesAfterEncoderConfigurationWin(combo_encoder_anchorage_should_update);
+ }
+ void encoderGuiChangesAfterEncoderConfigurationWin(bool combo_encoder_anchorage_should_update)
+ {
if(encoderConfigurationCurrent.has_inertia) {
- notebook_encoder_capture_extra_mass.CurrentPage = 1;
-
if(combo_encoder_anchorage_should_update) {
UtilGtk.ComboUpdate(combo_encoder_anchorage,
encoderConfigurationCurrent.list_d);
combo_encoder_anchorage.Active = 0;
}
-
+
encoderConfigurationCurrent.extraWeightN = (int) spin_encoder_im_weights_n.Value;
encoderConfigurationCurrent.inertiaTotal =
UtilEncoder.CalculeInertiaTotal(encoderConfigurationCurrent);
label_encoder_im_total.Text = encoderConfigurationCurrent.inertiaTotal.ToString();
//if inertial, select ecc-con
combo_encoder_eccon.Active = 1;
- } else
- notebook_encoder_capture_extra_mass.CurrentPage = 0;
+ }
label_encoder_selected.Text = encoderConfigurationCurrent.code;
diff --git a/src/gui/encoderConfiguration.cs b/src/gui/encoderConfiguration.cs
index 7d421eb..65578c6 100644
--- a/src/gui/encoderConfiguration.cs
+++ b/src/gui/encoderConfiguration.cs
@@ -148,8 +148,10 @@ public class EncoderConfigurationWindow
definedInConfig = false;
if(gravitatory)
ec = new EncoderConfiguration(); //LINEAR, not inertial
- else
+ else {
ec = new
EncoderConfiguration(Constants.EncoderConfigurationNames.ROTARYAXISINERTIAL);
+ ec.SetInertialDefaultOptions();
+ }
}
if (EncoderConfigurationWindowBox == null) {
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]