[chronojump] Encoder feedback on height and speed.
- From: Xavier de Blas <xaviblas src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [chronojump] Encoder feedback on height and speed.
- Date: Wed, 4 Apr 2012 19:04:54 +0000 (UTC)
commit eca576c6264f8ec6b46b3daf20640fff1400b1da
Author: Xavier de Blas <xaviblas gmail com>
Date: Thu Apr 5 02:16:53 2012 +0800
Encoder feedback on height and speed.
encoder/graph.R | 20 +
encoder/pyserial_pyper.py | 78 +-
glade/chronojump.glade | 3167 ++++++++++++++++++++++-----------------
src/constants.cs | 2 +-
src/encoder.cs | 30 +-
src/gui/encoder.cs | 64 +-
src/gui/repetitiveConditions.cs | 158 ++-
7 files changed, 2028 insertions(+), 1491 deletions(-)
---
diff --git a/encoder/graph.R b/encoder/graph.R
index 7130748..e93a699 100644
--- a/encoder/graph.R
+++ b/encoder/graph.R
@@ -1,3 +1,23 @@
+#
+# This file is part of ChronoJump
+#
+# ChronoJump is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# ChronoJump is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# 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-2012 Xavier de Blas <xaviblas gmail com>
+#
+
library("EMD")
#this will replace below methods: findPics1ByMinindex, findPics2BySpeed
diff --git a/encoder/pyserial_pyper.py b/encoder/pyserial_pyper.py
index 0cb24d9..61fcd0a 100644
--- a/encoder/pyserial_pyper.py
+++ b/encoder/pyserial_pyper.py
@@ -1,10 +1,25 @@
+#
+# This file is part of ChronoJump
+#
+# ChronoJump is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# ChronoJump is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# 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-2012 Teng Wei Hua <wadedang gmail com>, Xavier de Blas <xaviblas gmail com>
+#
# encoding=utf-8
#
# This problem is for reading data form Chronopic.
-#
-# History:
-# 2011-09-01 Reading data.
-# 2011-12-27 add function: Recording if encoder changes the direction.
@@ -37,10 +52,16 @@ isJump = sys.argv[4]
mass = float(sys.argv[5])
smoothingOne = float(sys.argv[6])
eccon = sys.argv[7] #contraction "ec" or "c"
-powerHigherCondition = int(sys.argv[8])
-peakPowerHigherCondition = int(sys.argv[9])
-powerLowerCondition = int(sys.argv[10])
-peakPowerLowerCondition = int(sys.argv[11])
+heightHigherCondition = int(sys.argv[8])
+heightLowerCondition = int(sys.argv[9])
+meanSpeedHigherCondition = int(sys.argv[10])
+meanSpeedLowerCondition = int(sys.argv[11])
+maxSpeedHigherCondition = int(sys.argv[12])
+maxSpeedLowerCondition = int(sys.argv[13])
+powerHigherCondition = int(sys.argv[14])
+powerLowerCondition = int(sys.argv[15])
+peakPowerHigherCondition = int(sys.argv[16])
+peakPowerLowerCondition = int(sys.argv[17])
delete_initial_time = 20 #delete first records because there's encoder bug
#w_baudrate = 9600 # Setting the baudrate of Chronopic(9600)
@@ -171,7 +192,7 @@ def calculate_all_in_r(temp, top_values, bottom_values, direction_now, smoothing
maxSpeed = myR.get('max(speed$y)')
phase = " up,"
phaseCol = colorize(phase,BLUE,TRUE)
- phaseRange = myR.get('range')
+ height = myR.get('range')
meanPower = myR.get('meanPower')
peakPower = myR.get('peakPower')
peakPowerT = myR.get('peakPowerT')
@@ -181,28 +202,41 @@ def calculate_all_in_r(temp, top_values, bottom_values, direction_now, smoothing
# if(meanSpeed > 2): colSpeed = GREENINV
# else: colSpeed = GREEN
- meanPowerCol = "%10.2f," % meanPower
- colPower = assignColor(meanPower, powerHigherCondition, powerLowerCondition)
- peakPowerCol = "%10.2f," % peakPower
- colPeakPower = assignColor(peakPower, peakPowerHigherCondition, peakPowerLowerCondition)
+ height = height / 10 #from cm to mm
+
+ #F mean Formatted
+ heightF = "%6i," % height
+ colorHeight = assignColor(height, heightHigherCondition, heightLowerCondition)
+
+ meanSpeedF = "%10.2f," % meanSpeed
+ colorMeanSpeed = assignColor(meanSpeed, meanSpeedHigherCondition, meanSpeedLowerCondition)
+
+ maxSpeedF = "%10.2f," % maxSpeed
+ colorMaxSpeed = assignColor(maxSpeed, maxSpeedHigherCondition, maxSpeedLowerCondition)
+
+ meanPowerF = "%10.2f," % meanPower
+ colorMeanPower = assignColor(meanPower, powerHigherCondition, powerLowerCondition)
+
+ peakPowerF = "%10.2f," % peakPower
+ colorPeakPower = assignColor(peakPower, peakPowerHigherCondition, peakPowerLowerCondition)
play = False
- if colPower == GREEN or colPeakPower == GREEN:
- play = True
- soundFile = soundFileGood
- elif colPower == RED or colPeakPower == RED:
+ #if only one param is bad, will sound bad
+ if colorHeight == RED or colorMeanSpeed == RED or colorMaxSpeed == RED or colorMeanPower == RED or colorPeakPower == RED:
play = True
soundFile = soundFileBad
+ elif colorHeight == GREEN or colorMeanSpeed == GREEN or colorMaxSpeed == GREEN or colorMeanPower == GREEN or colorPeakPower == GREEN:
+ play = True
+ soundFile = soundFileGood
- phaseRange = phaseRange / 10 #from cm to mm
-
if eccon == "ec" or direction_now == -1:
- if phaseRange >= minHeight:
- print phaseCol + "%6i," % phaseRange + "%10.2f," % meanSpeed + "%9.2f," % maxSpeed + colorize(meanPowerCol,colPower,colPower!=BLACK) + colorize(peakPowerCol,colPeakPower,colPeakPower!=BLACK) + "%11i" % peakPowerT
+ if height >= minHeight:
+ #print phaseCol + "%6i," % phaseRange + "%10.2f," % meanSpeed + "%9.2f," % maxSpeed + colorize(meanPowerF,colorPower,colorPower!=BLACK) + colorize(peakPowerF,colorPeakPower,colorPeakPower!=BLACK) + "%11i" % peakPowerT
+ print phaseCol + colorize(heightF,colorHeight,colorHeight!=BLACK) + colorize(meanSpeedF,colorMeanSpeed,colorMeanSpeed!=BLACK) + colorize(maxSpeedF,colorMaxSpeed,colorMaxSpeed!=BLACK) + colorize(meanPowerF,colorMeanPower,colorMeanPower!=BLACK) + colorize(peakPowerF,colorPeakPower,colorPeakPower!=BLACK) + "%11i" % peakPowerT
if play:
playsound(soundFile)
else:
- print chr(27) + "[0;37m" + phase + chr(27) + "[0;47m" + "%6i," % phaseRange + chr(27)+"[0m" + chr(27) + "[0;37m" + meanSpeedCol + "%9.2f," % maxSpeed + meanPowerCol + "%10.2f," % peakPower + "%11i" % peakPowerT + chr(27)+"[0m"
+ print chr(27) + "[0;37m" + phase + chr(27) + "[0;47m" + "%6i," % height + chr(27)+"[0m" + chr(27) + "[0;37m" + meanSpeedF + "%9.2f," % maxSpeed + meanPowerF + "%10.2f," % peakPower + "%11i" % peakPowerT + chr(27)+"[0m"
def calculate_range(temp_cumsum, top_values, bottom_values, direction_now):
diff --git a/glade/chronojump.glade b/glade/chronojump.glade
index 3e1c346..73b78f8 100644
--- a/glade/chronojump.glade
+++ b/glade/chronojump.glade
@@ -6347,12 +6347,11 @@ suitable for agility tests)</property>
<property name="border_width">10</property>
<property name="title" translatable="yes">Configure feedback</property>
<property name="resizable">False</property>
- <property name="default_width">280</property>
<signal name="delete_event" handler="on_delete_event"/>
<child>
<widget class="GtkVBox" id="vbox95">
<property name="visible">True</property>
- <property name="spacing">12</property>
+ <property name="spacing">14</property>
<child>
<widget class="GtkLabel" id="label333">
<property name="visible">True</property>
@@ -6368,208 +6367,221 @@ suitable for agility tests)</property>
<widget class="GtkFrame" id="frame_best_and_worst">
<property name="visible">True</property>
<property name="label_xalign">0</property>
- <property name="shadow_type">none</property>
+ <property name="shadow_type">out</property>
<child>
<widget class="GtkAlignment" id="alignment78">
<property name="visible">True</property>
- <property name="left_padding">12</property>
+ <property name="top_padding">10</property>
+ <property name="bottom_padding">10</property>
+ <property name="left_padding">10</property>
+ <property name="right_padding">10</property>
<child>
- <widget class="GtkVBox" id="vbox96">
+ <widget class="GtkVBox" id="vbox1">
<property name="visible">True</property>
<child>
- <widget class="GtkCheckButton" id="checkbutton_jump_tf_tc_best">
+ <widget class="GtkHBox" id="hbox_jump_best_worst">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="active">True</property>
- <property name="draw_indicator">True</property>
+ <property name="spacing">12</property>
<child>
- <widget class="GtkAlignment" id="alignment76">
+ <widget class="GtkCheckButton" id="checkbutton_jump_tf_tc_best">
<property name="visible">True</property>
- <property name="xscale">0</property>
- <property name="yscale">0</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="active">True</property>
+ <property name="draw_indicator">True</property>
<child>
- <widget class="GtkHBox" id="hbox153">
+ <widget class="GtkAlignment" id="alignment76">
<property name="visible">True</property>
- <property name="spacing">2</property>
- <child>
- <widget class="GtkImage" id="image_repetitive_best_tf_tc">
- <property name="visible">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
<child>
- <widget class="GtkLabel" id="label351">
+ <widget class="GtkHBox" id="hbox153">
<property name="visible">True</property>
- <property name="label" translatable="yes">and show best TF / TC</property>
- <property name="use_underline">True</property>
+ <property name="spacing">2</property>
+ <child>
+ <widget class="GtkLabel" id="label351">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">show best TF / TC</property>
+ <property name="use_underline">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkImage" id="image_repetitive_best_tf_tc">
+ <property name="visible">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
</widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
</child>
</widget>
</child>
</widget>
+ <packing>
+ <property name="position">0</property>
+ </packing>
</child>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <widget class="GtkCheckButton" id="checkbutton_jump_tf_tc_worst">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="active">True</property>
- <property name="draw_indicator">True</property>
<child>
- <widget class="GtkAlignment" id="alignment77">
+ <widget class="GtkCheckButton" id="checkbutton_jump_tf_tc_worst">
<property name="visible">True</property>
- <property name="xscale">0</property>
- <property name="yscale">0</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="active">True</property>
+ <property name="draw_indicator">True</property>
<child>
- <widget class="GtkHBox" id="hbox154">
+ <widget class="GtkAlignment" id="alignment77">
<property name="visible">True</property>
- <property name="spacing">2</property>
- <child>
- <widget class="GtkImage" id="image_repetitive_worst_tf_tc">
- <property name="visible">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
<child>
- <widget class="GtkLabel" id="label352">
+ <widget class="GtkHBox" id="hbox154">
<property name="visible">True</property>
- <property name="label" translatable="yes">and show worst TF / TC</property>
- <property name="use_underline">True</property>
+ <property name="spacing">2</property>
+ <child>
+ <widget class="GtkLabel" id="label352">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">show worst TF / TC</property>
+ <property name="use_underline">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkImage" id="image_repetitive_worst_tf_tc">
+ <property name="visible">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
</widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
</child>
</widget>
</child>
</widget>
+ <packing>
+ <property name="position">1</property>
+ </packing>
</child>
</widget>
<packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <widget class="GtkCheckButton" id="checkbutton_run_time_best">
+ <widget class="GtkHBox" id="hbox_run_best_worst">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="active">True</property>
- <property name="draw_indicator">True</property>
+ <property name="spacing">12</property>
<child>
- <widget class="GtkAlignment" id="alignment101">
+ <widget class="GtkCheckButton" id="checkbutton_run_time_best">
<property name="visible">True</property>
- <property name="xscale">0</property>
- <property name="yscale">0</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="active">True</property>
+ <property name="draw_indicator">True</property>
<child>
- <widget class="GtkHBox" id="hbox214">
+ <widget class="GtkAlignment" id="alignment101">
<property name="visible">True</property>
- <property name="spacing">2</property>
- <child>
- <widget class="GtkImage" id="image_repetitive_best_time">
- <property name="visible">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
<child>
- <widget class="GtkLabel" id="label436">
+ <widget class="GtkHBox" id="hbox214">
<property name="visible">True</property>
- <property name="label" translatable="yes">and show best time</property>
- <property name="use_underline">True</property>
+ <property name="spacing">2</property>
+ <child>
+ <widget class="GtkLabel" id="label436">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">show best time</property>
+ <property name="use_underline">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkImage" id="image_repetitive_best_time">
+ <property name="visible">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
</widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
</child>
</widget>
</child>
</widget>
+ <packing>
+ <property name="position">0</property>
+ </packing>
</child>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">2</property>
- </packing>
- </child>
- <child>
- <widget class="GtkCheckButton" id="checkbutton_run_time_worst">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="active">True</property>
- <property name="draw_indicator">True</property>
<child>
- <widget class="GtkAlignment" id="alignment102">
+ <widget class="GtkCheckButton" id="checkbutton_run_time_worst">
<property name="visible">True</property>
- <property name="xscale">0</property>
- <property name="yscale">0</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="active">True</property>
+ <property name="draw_indicator">True</property>
<child>
- <widget class="GtkHBox" id="hbox215">
+ <widget class="GtkAlignment" id="alignment102">
<property name="visible">True</property>
- <property name="spacing">2</property>
- <child>
- <widget class="GtkImage" id="image_repetitive_worst_time">
- <property name="visible">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
<child>
- <widget class="GtkLabel" id="label437">
+ <widget class="GtkHBox" id="hbox215">
<property name="visible">True</property>
- <property name="label" translatable="yes">and show worst time</property>
- <property name="use_underline">True</property>
+ <property name="spacing">2</property>
+ <child>
+ <widget class="GtkLabel" id="label437">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">show worst time</property>
+ <property name="use_underline">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkImage" id="image_repetitive_worst_time">
+ <property name="visible">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
</widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
</child>
</widget>
</child>
</widget>
+ <packing>
+ <property name="position">1</property>
+ </packing>
</child>
</widget>
<packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">3</property>
+ <property name="position">1</property>
</packing>
</child>
</widget>
@@ -6594,333 +6606,209 @@ suitable for agility tests)</property>
</packing>
</child>
<child>
- <widget class="GtkFrame" id="frame26">
+ <widget class="GtkFrame" id="frame1">
<property name="visible">True</property>
<property name="label_xalign">0</property>
- <property name="shadow_type">none</property>
+ <property name="label_yalign">0.69999998807907104</property>
+ <property name="shadow_type">out</property>
<child>
- <widget class="GtkAlignment" id="alignment82">
+ <widget class="GtkAlignment" id="alignment1">
<property name="visible">True</property>
- <property name="left_padding">12</property>
+ <property name="top_padding">10</property>
+ <property name="bottom_padding">10</property>
+ <property name="left_padding">10</property>
+ <property name="right_padding">10</property>
<child>
- <widget class="GtkScrolledWindow" id="scrolledwin_conditions">
- <property name="height_request">200</property>
+ <widget class="GtkVBox" id="vbox3">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="hscrollbar_policy">never</property>
- <property name="vscrollbar_policy">automatic</property>
<child>
- <widget class="GtkViewport" id="viewport1">
+ <widget class="GtkHBox" id="hbox_jump_conditions">
<property name="visible">True</property>
+ <property name="spacing">12</property>
<child>
- <widget class="GtkVBox" id="vbox98">
+ <widget class="GtkTable" id="table_jump_conditions_good">
<property name="visible">True</property>
+ <property name="n_rows">3</property>
+ <property name="n_columns">3</property>
+ <property name="column_spacing">8</property>
+ <property name="row_spacing">12</property>
<child>
- <widget class="GtkVBox" id="vbox99">
+ <widget class="GtkHBox" id="hbox185">
<property name="visible">True</property>
<child>
- <widget class="GtkTable" id="table_jump_conditions">
+ <widget class="GtkCheckButton" id="checkbutton_tf_greater">
<property name="visible">True</property>
- <property name="n_rows">7</property>
- <property name="n_columns">3</property>
- <property name="column_spacing">10</property>
- <property name="row_spacing">8</property>
- <child>
- <widget class="GtkLabel" id="label395">
- <property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">condition</property>
- </widget>
- <packing>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkLabel" id="label396">
- <property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">value</property>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkLabel" id="label397">
- <property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">action</property>
- </widget>
- <packing>
- <property name="left_attach">2</property>
- <property name="right_attach">3</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
- </packing>
- </child>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip" translatable="yes">Bell good</property>
+ <property name="draw_indicator">True</property>
<child>
- <widget class="GtkHBox" id="hbox185">
+ <widget class="GtkAlignment" id="alignment89">
<property name="visible">True</property>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
<child>
- <widget class="GtkCheckButton" id="checkbutton_tf_greater">
+ <widget class="GtkHBox" id="hbox186">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="tooltip" translatable="yes">Bell good</property>
- <property name="draw_indicator">True</property>
- <child>
- <widget class="GtkAlignment" id="alignment89">
- <property name="visible">True</property>
- <property name="xscale">0</property>
- <property name="yscale">0</property>
- <child>
- <widget class="GtkHBox" id="hbox186">
- <property name="visible">True</property>
- <property name="spacing">2</property>
- <child>
- <widget class="GtkImage" id="image_repetitive_tf_greater">
- <property name="visible">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="left_attach">2</property>
- <property name="right_attach">3</property>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
- </packing>
- </child>
- <child>
- <widget class="GtkCheckButton" id="checkbutton_tf_lower">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="tooltip" translatable="yes">Bell bad</property>
- <property name="draw_indicator">True</property>
- <child>
- <widget class="GtkAlignment" id="alignment90">
- <property name="visible">True</property>
- <property name="xscale">0</property>
- <property name="yscale">0</property>
- <child>
- <widget class="GtkHBox" id="hbox187">
- <property name="visible">True</property>
- <property name="spacing">2</property>
- <child>
- <widget class="GtkImage" id="image_repetitive_tf_lower">
- <property name="visible">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="left_attach">2</property>
- <property name="right_attach">3</property>
- <property name="top_attach">2</property>
- <property name="bottom_attach">3</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkCheckButton" id="checkbutton_tc_greater">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="tooltip" translatable="yes">Bell bad</property>
- <property name="draw_indicator">True</property>
- <child>
- <widget class="GtkAlignment" id="alignment91">
- <property name="visible">True</property>
- <property name="xscale">0</property>
- <property name="yscale">0</property>
- <child>
- <widget class="GtkHBox" id="hbox188">
- <property name="visible">True</property>
- <property name="spacing">2</property>
- <child>
- <widget class="GtkImage" id="image_repetitive_tc_greater">
- <property name="visible">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="left_attach">2</property>
- <property name="right_attach">3</property>
- <property name="top_attach">3</property>
- <property name="bottom_attach">4</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkCheckButton" id="checkbutton_tc_lower">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="tooltip" translatable="yes">Bell good</property>
- <property name="draw_indicator">True</property>
- <child>
- <widget class="GtkAlignment" id="alignment92">
- <property name="visible">True</property>
- <property name="xscale">0</property>
- <property name="yscale">0</property>
- <child>
- <widget class="GtkHBox" id="hbox189">
- <property name="visible">True</property>
- <property name="spacing">2</property>
- <child>
- <widget class="GtkImage" id="image_repetitive_tc_lower">
- <property name="visible">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="left_attach">2</property>
- <property name="right_attach">3</property>
- <property name="top_attach">4</property>
- <property name="bottom_attach">5</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkCheckButton" id="checkbutton_tf_tc_greater">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="tooltip" translatable="yes">Bell good</property>
- <property name="draw_indicator">True</property>
- <child>
- <widget class="GtkAlignment" id="alignment93">
- <property name="visible">True</property>
- <property name="xscale">0</property>
- <property name="yscale">0</property>
- <child>
- <widget class="GtkHBox" id="hbox190">
- <property name="visible">True</property>
- <property name="spacing">2</property>
- <child>
- <widget class="GtkImage" id="image_repetitive_tf_tc_greater">
- <property name="visible">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="left_attach">2</property>
- <property name="right_attach">3</property>
- <property name="top_attach">5</property>
- <property name="bottom_attach">6</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkCheckButton" id="checkbutton_tf_tc_lower">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="tooltip" translatable="yes">Bell bad</property>
- <property name="draw_indicator">True</property>
- <child>
- <widget class="GtkAlignment" id="alignment94">
- <property name="visible">True</property>
- <property name="xscale">0</property>
- <property name="yscale">0</property>
+ <property name="spacing">2</property>
<child>
- <widget class="GtkHBox" id="hbox191">
+ <widget class="GtkImage" id="image_repetitive_tf_greater">
<property name="visible">True</property>
- <property name="spacing">2</property>
- <child>
- <widget class="GtkImage" id="image_repetitive_tf_tc_lower">
- <property name="visible">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
</widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
</child>
</widget>
</child>
</widget>
- <packing>
- <property name="left_attach">2</property>
- <property name="right_attach">3</property>
- <property name="top_attach">6</property>
- <property name="bottom_attach">7</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
- </packing>
</child>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkHBox" id="hbox193">
+ <property name="visible">True</property>
+ <property name="homogeneous">True</property>
+ <child>
+ <widget class="GtkLabel" id="label400">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes"><b>TF</b></property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label401">
+ <property name="visible">True</property>
+ <property name="label">>=</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkSpinButton" id="spinbutton_tf_greater">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">â</property>
+ <property name="adjustment">0.59999998658880005 0 1 0.0099999997764800008 0.01 0</property>
+ <property name="climb_rate">1</property>
+ <property name="digits">2</property>
+ <property name="snap_to_ticks">True</property>
+ <property name="numeric">True</property>
+ <signal name="value_changed" handler="on_spinbutton_tf_greater_value_changed"/>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="x_options"></property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkHBox" id="hbox195">
+ <property name="visible">True</property>
+ <property name="homogeneous">True</property>
+ <child>
+ <widget class="GtkLabel" id="label404">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes"><b>TC</b></property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label405">
+ <property name="visible">True</property>
+ <property name="label"><=</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkSpinButton" id="spinbutton_tc_lower">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">â</property>
+ <property name="adjustment">0.19999999552960002 0 1 0.0099999997764800008 0.0099999997764800008 0</property>
+ <property name="climb_rate">1</property>
+ <property name="digits">2</property>
+ <property name="snap_to_ticks">True</property>
+ <property name="numeric">True</property>
+ <signal name="value_changed" handler="on_spinbutton_tc_lower_value_changed"/>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options"></property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton_tc_lower">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip" translatable="yes">Bell good</property>
+ <property name="draw_indicator">True</property>
+ <child>
+ <widget class="GtkAlignment" id="alignment92">
+ <property name="visible">True</property>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
<child>
- <widget class="GtkHBox" id="hbox192">
+ <widget class="GtkHBox" id="hbox189">
<property name="visible">True</property>
- <property name="homogeneous">True</property>
+ <property name="spacing">2</property>
<child>
- <widget class="GtkLabel" id="label398">
+ <widget class="GtkImage" id="image_repetitive_tc_lower">
<property name="visible">True</property>
- <property name="label" translatable="yes"><b>TF</b></property>
- <property name="use_markup">True</property>
</widget>
<packing>
<property name="expand">False</property>
@@ -6928,383 +6816,596 @@ suitable for agility tests)</property>
<property name="position">0</property>
</packing>
</child>
- <child>
- <widget class="GtkLabel" id="label399">
- <property name="visible">True</property>
- <property name="label"><=</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
- </child>
</widget>
- <packing>
- <property name="top_attach">2</property>
- <property name="bottom_attach">3</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
- </packing>
</child>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkHBox" id="hbox196">
+ <property name="visible">True</property>
+ <property name="homogeneous">True</property>
+ <child>
+ <widget class="GtkHBox" id="hbox197">
+ <property name="visible">True</property>
+ <property name="spacing">4</property>
<child>
- <widget class="GtkHBox" id="hbox193">
+ <widget class="GtkLabel" id="label406">
<property name="visible">True</property>
- <property name="homogeneous">True</property>
- <child>
- <widget class="GtkLabel" id="label400">
- <property name="visible">True</property>
- <property name="label" translatable="yes"><b>TF</b></property>
- <property name="use_markup">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <widget class="GtkLabel" id="label401">
- <property name="visible">True</property>
- <property name="label">>=</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
- </child>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes"><b>TF</b></property>
+ <property name="use_markup">True</property>
</widget>
<packing>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
+ <property name="expand">False</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <widget class="GtkHBox" id="hbox194">
+ <widget class="GtkLabel" id="label407">
<property name="visible">True</property>
- <property name="homogeneous">True</property>
- <child>
- <widget class="GtkLabel" id="label402">
- <property name="visible">True</property>
- <property name="label" translatable="yes"><b>TC</b></property>
- <property name="use_markup">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <widget class="GtkLabel" id="label403">
- <property name="visible">True</property>
- <property name="label">>=</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
- </child>
+ <property name="label">/</property>
</widget>
<packing>
- <property name="top_attach">3</property>
- <property name="bottom_attach">4</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
</packing>
</child>
<child>
- <widget class="GtkHBox" id="hbox195">
+ <widget class="GtkLabel" id="label408">
<property name="visible">True</property>
- <property name="homogeneous">True</property>
- <child>
- <widget class="GtkLabel" id="label404">
- <property name="visible">True</property>
- <property name="label" translatable="yes"><b>TC</b></property>
- <property name="use_markup">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <widget class="GtkLabel" id="label405">
- <property name="visible">True</property>
- <property name="label"><=</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
- </child>
+ <property name="label" translatable="yes"><b>TC</b></property>
+ <property name="use_markup">True</property>
</widget>
<packing>
- <property name="top_attach">4</property>
- <property name="bottom_attach">5</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">2</property>
</packing>
</child>
+ </widget>
+ <packing>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label409">
+ <property name="visible">True</property>
+ <property name="label">>=</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkSpinButton" id="spinbutton_tf_tc_greater">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">â</property>
+ <property name="adjustment">2.7499999385299998 0 6 0.0099999997764800008 0.0099999997764800008 0</property>
+ <property name="climb_rate">1</property>
+ <property name="digits">2</property>
+ <property name="snap_to_ticks">True</property>
+ <property name="numeric">True</property>
+ <signal name="value_changed" handler="on_spinbutton_tf_tc_greater_value_changed"/>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options"></property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton_tf_tc_greater">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip" translatable="yes">Bell good</property>
+ <property name="draw_indicator">True</property>
+ <child>
+ <widget class="GtkAlignment" id="alignment93">
+ <property name="visible">True</property>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
<child>
- <widget class="GtkHBox" id="hbox196">
+ <widget class="GtkHBox" id="hbox190">
<property name="visible">True</property>
- <property name="homogeneous">True</property>
- <child>
- <widget class="GtkHBox" id="hbox197">
- <property name="visible">True</property>
- <property name="spacing">4</property>
- <child>
- <widget class="GtkLabel" id="label406">
- <property name="visible">True</property>
- <property name="label" translatable="yes"><b>TF</b></property>
- <property name="use_markup">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <widget class="GtkLabel" id="label407">
- <property name="visible">True</property>
- <property name="label">/</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
- </child>
- <child>
- <widget class="GtkLabel" id="label408">
- <property name="visible">True</property>
- <property name="label" translatable="yes"><b>TC</b></property>
- <property name="use_markup">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">2</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="position">0</property>
- </packing>
- </child>
+ <property name="spacing">2</property>
<child>
- <widget class="GtkLabel" id="label409">
+ <widget class="GtkImage" id="image_repetitive_tf_tc_greater">
<property name="visible">True</property>
- <property name="label">>=</property>
</widget>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
- <property name="position">1</property>
+ <property name="position">0</property>
</packing>
</child>
</widget>
- <packing>
- <property name="top_attach">5</property>
- <property name="bottom_attach">6</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
- </packing>
</child>
- <child>
- <widget class="GtkHBox" id="hbox198">
- <property name="visible">True</property>
- <property name="homogeneous">True</property>
- <child>
- <widget class="GtkHBox" id="hbox199">
- <property name="visible">True</property>
- <property name="spacing">4</property>
- <child>
- <widget class="GtkLabel" id="label410">
- <property name="visible">True</property>
- <property name="label" translatable="yes"><b>TF</b></property>
- <property name="use_markup">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <widget class="GtkLabel" id="label411">
- <property name="visible">True</property>
- <property name="label">/</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
- </child>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkVSeparator" id="vseparator1">
+ <property name="visible">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkTable" id="table_jump_conditions_bad">
+ <property name="visible">True</property>
+ <property name="n_rows">3</property>
+ <property name="n_columns">3</property>
+ <property name="column_spacing">8</property>
+ <property name="row_spacing">12</property>
+ <child>
+ <widget class="GtkHBox" id="hbox13">
+ <property name="visible">True</property>
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton_tf_lower">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip" translatable="yes">Bell bad</property>
+ <property name="draw_indicator">True</property>
+ <child>
+ <widget class="GtkAlignment" id="alignment90">
+ <property name="visible">True</property>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
+ <child>
+ <widget class="GtkHBox" id="hbox187">
+ <property name="visible">True</property>
+ <property name="spacing">2</property>
<child>
- <widget class="GtkLabel" id="label412">
+ <widget class="GtkImage" id="image_repetitive_tf_lower">
<property name="visible">True</property>
- <property name="label" translatable="yes"><b>TC</b></property>
- <property name="use_markup">True</property>
</widget>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
- <property name="position">2</property>
+ <property name="position">0</property>
</packing>
</child>
</widget>
- <packing>
- <property name="position">0</property>
- </packing>
</child>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkHBox" id="hbox20">
+ <property name="visible">True</property>
+ <property name="homogeneous">True</property>
+ <child>
+ <widget class="GtkLabel" id="label13">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes"><b>TF</b></property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label14">
+ <property name="visible">True</property>
+ <property name="label"><=</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkSpinButton" id="spinbutton_tf_lower">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">â</property>
+ <property name="adjustment">0.29999999329440002 0 1 0.0099999997764800008 0.0099999997764800008 0</property>
+ <property name="climb_rate">1</property>
+ <property name="digits">2</property>
+ <property name="snap_to_ticks">True</property>
+ <property name="numeric">True</property>
+ <signal name="value_changed" handler="on_spinbutton_tf_lower_value_changed"/>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="x_options"></property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkHBox" id="hbox194">
+ <property name="visible">True</property>
+ <property name="homogeneous">True</property>
+ <child>
+ <widget class="GtkLabel" id="label402">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes"><b>TC</b></property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label403">
+ <property name="visible">True</property>
+ <property name="label">>=</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkSpinButton" id="spinbutton_tc_greater">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">â</property>
+ <property name="adjustment">0.29999999329440002 0 1 0.0099999997764800008 0.0099999997764800008 0</property>
+ <property name="climb_rate">1</property>
+ <property name="digits">2</property>
+ <property name="snap_to_ticks">True</property>
+ <property name="numeric">True</property>
+ <signal name="value_changed" handler="on_spinbutton_tc_greater_value_changed"/>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options"></property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton_tc_greater">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip" translatable="yes">Bell bad</property>
+ <property name="draw_indicator">True</property>
+ <child>
+ <widget class="GtkAlignment" id="alignment91">
+ <property name="visible">True</property>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
+ <child>
+ <widget class="GtkHBox" id="hbox188">
+ <property name="visible">True</property>
+ <property name="spacing">2</property>
<child>
- <widget class="GtkLabel" id="label413">
+ <widget class="GtkImage" id="image_repetitive_tc_greater">
<property name="visible">True</property>
- <property name="label"><=</property>
</widget>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
- <property name="position">1</property>
+ <property name="position">0</property>
</packing>
</child>
</widget>
- <packing>
- <property name="top_attach">6</property>
- <property name="bottom_attach">7</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
- </packing>
- </child>
- <child>
- <widget class="GtkSpinButton" id="spinbutton_tf_greater">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="adjustment">0.59999998658880005 0 1 0.0099999997764800008 0.01 0</property>
- <property name="climb_rate">1</property>
- <property name="digits">2</property>
- <property name="snap_to_ticks">True</property>
- <property name="numeric">True</property>
- <signal name="value_changed" handler="on_spinbutton_tf_greater_value_changed"/>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="x_options"></property>
- <property name="y_options"></property>
- </packing>
</child>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkHBox" id="hbox198">
+ <property name="visible">True</property>
+ <property name="homogeneous">True</property>
+ <child>
+ <widget class="GtkHBox" id="hbox199">
+ <property name="visible">True</property>
+ <property name="spacing">4</property>
<child>
- <widget class="GtkSpinButton" id="spinbutton_tf_lower">
+ <widget class="GtkLabel" id="label410">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="adjustment">0.29999999329440002 0 1 0.0099999997764800008 0.0099999997764800008 0</property>
- <property name="climb_rate">1</property>
- <property name="digits">2</property>
- <property name="snap_to_ticks">True</property>
- <property name="numeric">True</property>
- <signal name="value_changed" handler="on_spinbutton_tf_lower_value_changed"/>
+ <property name="label" translatable="yes"><b>TF</b></property>
+ <property name="use_markup">True</property>
</widget>
<packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">2</property>
- <property name="bottom_attach">3</property>
- <property name="x_options"></property>
- <property name="y_options"></property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
- <widget class="GtkSpinButton" id="spinbutton_tc_greater">
+ <widget class="GtkLabel" id="label411">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="adjustment">0.29999999329440002 0 1 0.0099999997764800008 0.0099999997764800008 0</property>
- <property name="climb_rate">1</property>
- <property name="digits">2</property>
- <property name="snap_to_ticks">True</property>
- <property name="numeric">True</property>
- <signal name="value_changed" handler="on_spinbutton_tc_greater_value_changed"/>
+ <property name="label">/</property>
</widget>
<packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">3</property>
- <property name="bottom_attach">4</property>
- <property name="x_options"></property>
- <property name="y_options"></property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
</packing>
</child>
<child>
- <widget class="GtkSpinButton" id="spinbutton_tc_lower">
+ <widget class="GtkLabel" id="label412">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="adjustment">0.19999999552960002 0 1 0.0099999997764800008 0.0099999997764800008 0</property>
- <property name="climb_rate">1</property>
- <property name="digits">2</property>
- <property name="snap_to_ticks">True</property>
- <property name="numeric">True</property>
- <signal name="value_changed" handler="on_spinbutton_tc_lower_value_changed"/>
+ <property name="label" translatable="yes"><b>TC</b></property>
+ <property name="use_markup">True</property>
</widget>
<packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">4</property>
- <property name="bottom_attach">5</property>
- <property name="x_options"></property>
- <property name="y_options"></property>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">2</property>
</packing>
</child>
+ </widget>
+ <packing>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label413">
+ <property name="visible">True</property>
+ <property name="label"><=</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkSpinButton" id="spinbutton_tf_tc_lower">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">â</property>
+ <property name="adjustment">0.99999997764800008 0 6 0.0099999997764800008 0.0099999997764800008 0</property>
+ <property name="climb_rate">1</property>
+ <property name="digits">2</property>
+ <property name="snap_to_ticks">True</property>
+ <property name="numeric">True</property>
+ <signal name="value_changed" handler="on_spinbutton_tf_tc_lower_value_changed"/>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options"></property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton_tf_tc_lower">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip" translatable="yes">Bell bad</property>
+ <property name="draw_indicator">True</property>
+ <child>
+ <widget class="GtkAlignment" id="alignment94">
+ <property name="visible">True</property>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
<child>
- <widget class="GtkSpinButton" id="spinbutton_tf_tc_greater">
+ <widget class="GtkHBox" id="hbox191">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="adjustment">2.7499999385299998 0 6 0.0099999997764800008 0.0099999997764800008 0</property>
- <property name="climb_rate">1</property>
- <property name="digits">2</property>
- <property name="snap_to_ticks">True</property>
- <property name="numeric">True</property>
- <signal name="value_changed" handler="on_spinbutton_tf_tc_greater_value_changed"/>
+ <property name="spacing">2</property>
+ <child>
+ <widget class="GtkImage" id="image_repetitive_tf_tc_lower">
+ <property name="visible">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
</widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">5</property>
- <property name="bottom_attach">6</property>
- <property name="x_options"></property>
- <property name="y_options"></property>
- </packing>
</child>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options">GTK_FILL</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkHBox" id="hbox_run_conditions">
+ <property name="visible">True</property>
+ <property name="spacing">12</property>
+ <child>
+ <widget class="GtkHBox" id="hbox17">
+ <property name="visible">True</property>
+ <property name="spacing">8</property>
+ <child>
+ <widget class="GtkHBox" id="hbox208">
+ <property name="visible">True</property>
+ <property name="spacing">6</property>
+ <child>
+ <widget class="GtkLabel" id="label423">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes"><b>Time</b> (s)</property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label424">
+ <property name="visible">True</property>
+ <property name="label"><=</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="pack_type">end</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkSpinButton" id="spinbutton_time_lower">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">â</property>
+ <property name="adjustment">11 0 1000 0.5 1 0</property>
+ <property name="climb_rate">1</property>
+ <property name="digits">1</property>
+ <property name="snap_to_ticks">True</property>
+ <property name="numeric">True</property>
+ <signal name="value_changed" handler="on_spinbutton_time_lower_value_changed"/>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkHBox" id="hbox200">
+ <property name="visible">True</property>
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton_time_lower">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip" translatable="yes">Bell good</property>
+ <property name="draw_indicator">True</property>
<child>
- <widget class="GtkSpinButton" id="spinbutton_tf_tc_lower">
+ <widget class="GtkAlignment" id="alignment95">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="adjustment">0.99999997764800008 0 6 0.0099999997764800008 0.0099999997764800008 0</property>
- <property name="climb_rate">1</property>
- <property name="digits">2</property>
- <property name="snap_to_ticks">True</property>
- <property name="numeric">True</property>
- <signal name="value_changed" handler="on_spinbutton_tf_tc_lower_value_changed"/>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
+ <child>
+ <widget class="GtkHBox" id="hbox201">
+ <property name="visible">True</property>
+ <property name="spacing">2</property>
+ <child>
+ <widget class="GtkImage" id="image_repetitive_time_lower">
+ <property name="visible">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ </widget>
+ </child>
</widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">6</property>
- <property name="bottom_attach">7</property>
- <property name="x_options"></property>
- <property name="y_options"></property>
- </packing>
</child>
</widget>
<packing>
@@ -7313,83 +7414,101 @@ suitable for agility tests)</property>
<property name="position">0</property>
</packing>
</child>
+ </widget>
+ <packing>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkVSeparator" id="vseparator3">
+ <property name="visible">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkHBox" id="hbox18">
+ <property name="visible">True</property>
+ <property name="spacing">8</property>
+ <child>
+ <widget class="GtkHBox" id="hbox207">
+ <property name="visible">True</property>
+ <property name="spacing">6</property>
<child>
- <widget class="GtkTable" id="table_run_conditions">
+ <widget class="GtkLabel" id="label421">
<property name="visible">True</property>
- <property name="n_rows">3</property>
- <property name="n_columns">3</property>
- <property name="column_spacing">10</property>
- <property name="row_spacing">8</property>
- <child>
- <widget class="GtkLabel" id="label418">
- <property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">condition</property>
- </widget>
- <packing>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkLabel" id="label419">
- <property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">value</property>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkLabel" id="label420">
- <property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">action</property>
- </widget>
- <packing>
- <property name="left_attach">2</property>
- <property name="right_attach">3</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
- </packing>
- </child>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes"><b>Time</b> (s)</property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label422">
+ <property name="visible">True</property>
+ <property name="label">>=</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="pack_type">end</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkSpinButton" id="spinbutton_time_greater">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">â</property>
+ <property name="adjustment">39 0 1000 0.5 1 0</property>
+ <property name="climb_rate">1</property>
+ <property name="digits">1</property>
+ <property name="snap_to_ticks">True</property>
+ <property name="numeric">True</property>
+ <signal name="value_changed" handler="on_spinbutton_time_greater_value_changed"/>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton_time_greater">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip" translatable="yes">Bell bad</property>
+ <property name="draw_indicator">True</property>
+ <child>
+ <widget class="GtkAlignment" id="alignment96">
+ <property name="visible">True</property>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
<child>
- <widget class="GtkHBox" id="hbox200">
+ <widget class="GtkHBox" id="hbox202">
<property name="visible">True</property>
+ <property name="spacing">2</property>
<child>
- <widget class="GtkCheckButton" id="checkbutton_time_lower">
+ <widget class="GtkImage" id="image_repetitive_time_greater">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="tooltip" translatable="yes">Bell good</property>
- <property name="draw_indicator">True</property>
- <child>
- <widget class="GtkAlignment" id="alignment95">
- <property name="visible">True</property>
- <property name="xscale">0</property>
- <property name="yscale">0</property>
- <child>
- <widget class="GtkHBox" id="hbox201">
- <property name="visible">True</property>
- <property name="spacing">2</property>
- <child>
- <widget class="GtkImage" id="image_repetitive_time_lower">
- <property name="visible">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- </child>
</widget>
<packing>
<property name="expand">False</property>
@@ -7398,64 +7517,276 @@ suitable for agility tests)</property>
</packing>
</child>
</widget>
- <packing>
- <property name="left_attach">2</property>
- <property name="right_attach">3</property>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
- </packing>
</child>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="position">2</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkHBox" id="hbox_encoder_conditions">
+ <property name="visible">True</property>
+ <property name="spacing">12</property>
+ <child>
+ <widget class="GtkTable" id="table_encoder_conditions_good">
+ <property name="visible">True</property>
+ <property name="n_rows">5</property>
+ <property name="n_columns">4</property>
+ <property name="column_spacing">8</property>
+ <property name="row_spacing">12</property>
+ <child>
+ <widget class="GtkSpinButton" id="spinbutton_encoder_power_higher">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">â</property>
+ <property name="adjustment">4000 100 50000 100 1 0</property>
+ <property name="climb_rate">1</property>
+ <property name="snap_to_ticks">True</property>
+ <property name="numeric">True</property>
+ <signal name="value_changed" handler="on_spinbutton_encoder_power_higher_value_changed"/>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ <property name="x_options"></property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label1">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">>=</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton_encoder_peakpower_higher">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip" translatable="yes">Bell good</property>
+ <property name="draw_indicator">True</property>
+ <child>
+ <widget class="GtkAlignment" id="alignment3">
+ <property name="visible">True</property>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
<child>
- <widget class="GtkCheckButton" id="checkbutton_time_greater">
+ <widget class="GtkHBox" id="hbox9">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="tooltip" translatable="yes">Bell bad</property>
- <property name="draw_indicator">True</property>
+ <property name="spacing">2</property>
<child>
- <widget class="GtkAlignment" id="alignment96">
+ <widget class="GtkImage" id="image_encoder_peakpower_higher">
<property name="visible">True</property>
- <property name="xscale">0</property>
- <property name="yscale">0</property>
- <child>
- <widget class="GtkHBox" id="hbox202">
- <property name="visible">True</property>
- <property name="spacing">2</property>
- <child>
- <widget class="GtkImage" id="image_repetitive_time_greater">
- <property name="visible">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- </widget>
- </child>
</widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">0</property>
+ </packing>
</child>
</widget>
- <packing>
- <property name="left_attach">2</property>
- <property name="right_attach">3</property>
- <property name="top_attach">2</property>
- <property name="bottom_attach">3</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
- </packing>
</child>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="left_attach">3</property>
+ <property name="right_attach">4</property>
+ <property name="top_attach">4</property>
+ <property name="bottom_attach">5</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label2">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">>=</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">4</property>
+ <property name="bottom_attach">5</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkSpinButton" id="spinbutton_encoder_peakpower_higher">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">â</property>
+ <property name="adjustment">4000 100 50000 100 1 0</property>
+ <property name="climb_rate">1</property>
+ <property name="snap_to_ticks">True</property>
+ <property name="numeric">True</property>
+ <signal name="value_changed" handler="on_spinbutton_encoder_peakpower_higher_value_changed"/>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ <property name="top_attach">4</property>
+ <property name="bottom_attach">5</property>
+ <property name="x_options"></property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label8">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes"><b>Peak power</b> (W)</property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="top_attach">4</property>
+ <property name="bottom_attach">5</property>
+ <property name="x_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label6">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes"><b>Power</b> (W)</property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ <property name="x_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label3">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes"><b>Mean speed</b> (m/s)</property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label7">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes"><b>Max speed</b> (m/s)</property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label15">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">>=</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label16">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">>=</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkSpinButton" id="spinbutton_encoder_mean_speed_higher">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">â</property>
+ <property name="adjustment">2 0 15 0.10000000000000001 1 0</property>
+ <property name="climb_rate">1</property>
+ <property name="digits">2</property>
+ <property name="snap_to_ticks">True</property>
+ <property name="numeric">True</property>
+ <signal name="value_changed" handler="on_spinbutton_encoder_mean_speed_higher_value_changed"/>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options"></property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkSpinButton" id="spinbutton_encoder_max_speed_higher">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">â</property>
+ <property name="adjustment">2 0 15 0.10000000000000001 1 0</property>
+ <property name="climb_rate">1</property>
+ <property name="digits">2</property>
+ <property name="snap_to_ticks">True</property>
+ <property name="numeric">True</property>
+ <signal name="value_changed" handler="on_spinbutton_encoder_max_speed_higher_value_changed"/>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options"></property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton_encoder_power_higher">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip" translatable="yes">Bell good</property>
+ <property name="draw_indicator">True</property>
+ <child>
+ <widget class="GtkAlignment" id="alignment2">
+ <property name="visible">True</property>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
<child>
- <widget class="GtkHBox" id="hbox207">
+ <widget class="GtkHBox" id="hbox2">
<property name="visible">True</property>
- <property name="spacing">10</property>
+ <property name="spacing">2</property>
<child>
- <widget class="GtkLabel" id="label421">
+ <widget class="GtkImage" id="image_encoder_power_higher">
<property name="visible">True</property>
- <property name="label" translatable="yes"><b>Time</b>(s)</property>
- <property name="use_markup">True</property>
</widget>
<packing>
<property name="expand">False</property>
@@ -7463,34 +7794,38 @@ suitable for agility tests)</property>
<property name="position">0</property>
</packing>
</child>
- <child>
- <widget class="GtkLabel" id="label422">
- <property name="visible">True</property>
- <property name="label">>=</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
- </child>
</widget>
- <packing>
- <property name="top_attach">2</property>
- <property name="bottom_attach">3</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
- </packing>
</child>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="left_attach">3</property>
+ <property name="right_attach">4</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton_encoder_mean_speed_higher">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip" translatable="yes">Bell good</property>
+ <property name="draw_indicator">True</property>
+ <child>
+ <widget class="GtkAlignment" id="alignment6">
+ <property name="visible">True</property>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
<child>
- <widget class="GtkHBox" id="hbox208">
+ <widget class="GtkHBox" id="hbox1">
<property name="visible">True</property>
- <property name="spacing">10</property>
+ <property name="spacing">2</property>
<child>
- <widget class="GtkLabel" id="label423">
+ <widget class="GtkImage" id="image_encoder_mean_speed_higher">
<property name="visible">True</property>
- <property name="label" translatable="yes"><b>Time</b>(s)</property>
- <property name="use_markup">True</property>
</widget>
<packing>
<property name="expand">False</property>
@@ -7498,150 +7833,38 @@ suitable for agility tests)</property>
<property name="position">0</property>
</packing>
</child>
- <child>
- <widget class="GtkLabel" id="label424">
- <property name="visible">True</property>
- <property name="label"><=</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
- </packing>
- </child>
- <child>
- <widget class="GtkSpinButton" id="spinbutton_time_lower">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="adjustment">11 0 1000 0.5 1 0</property>
- <property name="climb_rate">1</property>
- <property name="digits">1</property>
- <property name="snap_to_ticks">True</property>
- <property name="numeric">True</property>
- <signal name="value_changed" handler="on_spinbutton_time_lower_value_changed"/>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="x_options"></property>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkSpinButton" id="spinbutton_time_greater">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="adjustment">39 0 1000 0.5 1 0</property>
- <property name="climb_rate">1</property>
- <property name="digits">1</property>
- <property name="snap_to_ticks">True</property>
- <property name="numeric">True</property>
- <signal name="value_changed" handler="on_spinbutton_time_greater_value_changed"/>
</widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">2</property>
- <property name="bottom_attach">3</property>
- <property name="x_options"></property>
- <property name="y_options"></property>
- </packing>
</child>
</widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
</child>
+ </widget>
+ <packing>
+ <property name="left_attach">3</property>
+ <property name="right_attach">4</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton_encoder_max_speed_higher">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip" translatable="yes">Bell good</property>
+ <property name="draw_indicator">True</property>
<child>
- <widget class="GtkTable" id="table_encoder_conditions">
+ <widget class="GtkAlignment" id="alignment7">
<property name="visible">True</property>
- <property name="n_rows">5</property>
- <property name="n_columns">3</property>
- <property name="column_spacing">10</property>
- <property name="row_spacing">8</property>
- <child>
- <widget class="GtkLabel" id="label1">
- <property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">condition</property>
- </widget>
- <packing>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkLabel" id="label2">
- <property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">value</property>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkLabel" id="label3">
- <property name="visible">True</property>
- <property name="xalign">0</property>
- <property name="label" translatable="yes">action</property>
- </widget>
- <packing>
- <property name="left_attach">2</property>
- <property name="right_attach">3</property>
- <property name="x_options">GTK_SHRINK</property>
- <property name="y_options"></property>
- </packing>
- </child>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
<child>
- <widget class="GtkHBox" id="hbox1">
+ <widget class="GtkHBox" id="hbox4">
<property name="visible">True</property>
+ <property name="spacing">2</property>
<child>
- <widget class="GtkCheckButton" id="checkbutton_encoder_power_higher">
+ <widget class="GtkImage" id="image_encoder_max_speed_higher">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="has_tooltip">True</property>
- <property name="tooltip" translatable="yes">Bell good</property>
- <property name="draw_indicator">True</property>
- <child>
- <widget class="GtkAlignment" id="alignment1">
- <property name="visible">True</property>
- <property name="xscale">0</property>
- <property name="yscale">0</property>
- <child>
- <widget class="GtkHBox" id="hbox2">
- <property name="visible">True</property>
- <property name="spacing">2</property>
- <child>
- <widget class="GtkImage" id="image_encoder_power_higher">
- <property name="visible">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- </child>
</widget>
<packing>
<property name="expand">False</property>
@@ -7650,65 +7873,77 @@ suitable for agility tests)</property>
</packing>
</child>
</widget>
- <packing>
- <property name="left_attach">2</property>
- <property name="right_attach">3</property>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="x_options"></property>
- <property name="y_options">GTK_FILL</property>
- </packing>
- </child>
- <child>
- <widget class="GtkCheckButton" id="checkbutton_encoder_power_lower">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="has_tooltip">True</property>
- <property name="tooltip" translatable="yes">Bell bad</property>
- <property name="draw_indicator">True</property>
- <child>
- <widget class="GtkAlignment" id="alignment2">
- <property name="visible">True</property>
- <property name="xscale">0</property>
- <property name="yscale">0</property>
- <child>
- <widget class="GtkHBox" id="hbox3">
- <property name="visible">True</property>
- <property name="spacing">2</property>
- <child>
- <widget class="GtkImage" id="image_encoder_power_lower">
- <property name="visible">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- </child>
- </widget>
- <packing>
- <property name="left_attach">2</property>
- <property name="right_attach">3</property>
- <property name="top_attach">2</property>
- <property name="bottom_attach">3</property>
- <property name="x_options"></property>
- <property name="y_options"></property>
- </packing>
</child>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="left_attach">3</property>
+ <property name="right_attach">4</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label19">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes"><b>Height</b> (cm)</property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="x_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label21">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">>=</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkSpinButton" id="spinbutton_encoder_height_higher">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">â</property>
+ <property name="adjustment">70 0 300 1 10 0</property>
+ <property name="climb_rate">1</property>
+ <property name="digits">1</property>
+ <property name="snap_to_ticks">True</property>
+ <property name="numeric">True</property>
+ <signal name="value_changed" handler="on_spinbutton_encoder_height_higher_value_changed"/>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ <property name="x_options"></property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton_encoder_height_higher">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip" translatable="yes">Bell good</property>
+ <property name="draw_indicator">True</property>
+ <child>
+ <widget class="GtkAlignment" id="alignment10">
+ <property name="visible">True</property>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
<child>
- <widget class="GtkHBox" id="hbox4">
+ <widget class="GtkHBox" id="hbox7">
<property name="visible">True</property>
- <property name="spacing">10</property>
+ <property name="spacing">2</property>
<child>
- <widget class="GtkLabel" id="label4">
+ <widget class="GtkImage" id="image_encoder_height_higher">
<property name="visible">True</property>
- <property name="label" translatable="yes"><b>Power</b> (W)</property>
- <property name="use_markup">True</property>
</widget>
<packing>
<property name="expand">False</property>
@@ -7716,34 +7951,57 @@ suitable for agility tests)</property>
<property name="position">0</property>
</packing>
</child>
- <child>
- <widget class="GtkLabel" id="label5">
- <property name="visible">True</property>
- <property name="label"><=</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
- </child>
</widget>
- <packing>
- <property name="top_attach">2</property>
- <property name="bottom_attach">3</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
- </packing>
</child>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="left_attach">3</property>
+ <property name="right_attach">4</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkVSeparator" id="vseparator2">
+ <property name="visible">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkTable" id="table_encoder_conditions_bad">
+ <property name="visible">True</property>
+ <property name="n_rows">5</property>
+ <property name="n_columns">4</property>
+ <property name="column_spacing">8</property>
+ <property name="row_spacing">12</property>
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton_encoder_power_lower">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip" translatable="yes">Bell bad</property>
+ <property name="draw_indicator">True</property>
+ <child>
+ <widget class="GtkAlignment" id="alignment4">
+ <property name="visible">True</property>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
<child>
- <widget class="GtkHBox" id="hbox5">
+ <widget class="GtkHBox" id="hbox3">
<property name="visible">True</property>
- <property name="spacing">10</property>
+ <property name="spacing">2</property>
<child>
- <widget class="GtkLabel" id="label6">
+ <widget class="GtkImage" id="image_encoder_power_lower">
<property name="visible">True</property>
- <property name="label" translatable="yes"><b>Power</b> (W)</property>
- <property name="use_markup">True</property>
</widget>
<packing>
<property name="expand">False</property>
@@ -7751,74 +8009,40 @@ suitable for agility tests)</property>
<property name="position">0</property>
</packing>
</child>
- <child>
- <widget class="GtkLabel" id="label7">
- <property name="visible">True</property>
- <property name="label">>=</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
- </packing>
- </child>
- <child>
- <widget class="GtkSpinButton" id="spinbutton_encoder_power_higher">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="invisible_char">â</property>
- <property name="adjustment">4000 100 50000 100 1 0</property>
- <property name="climb_rate">1</property>
- <property name="snap_to_ticks">True</property>
- <property name="numeric">True</property>
- <signal name="value_changed" handler="on_spinbutton_encoder_power_higher_value_changed"/>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">1</property>
- <property name="bottom_attach">2</property>
- <property name="x_options"></property>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkSpinButton" id="spinbutton_encoder_power_lower">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="invisible_char">â</property>
- <property name="adjustment">1000 100 50000 100 1 0</property>
- <property name="climb_rate">1</property>
- <property name="snap_to_ticks">True</property>
- <property name="numeric">True</property>
- <signal name="value_changed" handler="on_spinbutton_encoder_power_lower_value_changed"/>
</widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">2</property>
- <property name="bottom_attach">3</property>
- <property name="x_options">GTK_SHRINK</property>
- <property name="y_options"></property>
- </packing>
</child>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="left_attach">3</property>
+ <property name="right_attach">4</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ <property name="x_options"></property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton_encoder_peakpower_lower">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip" translatable="yes">Bell good</property>
+ <property name="draw_indicator">True</property>
+ <child>
+ <widget class="GtkAlignment" id="alignment5">
+ <property name="visible">True</property>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
<child>
- <widget class="GtkHBox" id="hbox6">
+ <widget class="GtkHBox" id="hbox11">
<property name="visible">True</property>
- <property name="spacing">10</property>
+ <property name="spacing">2</property>
<child>
- <widget class="GtkLabel" id="label8">
+ <widget class="GtkImage" id="image_encoder_peakpower_lower">
<property name="visible">True</property>
- <property name="label" translatable="yes"><b>Peak Power</b> (W)</property>
- <property name="use_markup">True</property>
</widget>
<packing>
<property name="expand">False</property>
@@ -7826,134 +8050,261 @@ suitable for agility tests)</property>
<property name="position">0</property>
</packing>
</child>
- <child>
- <widget class="GtkLabel" id="label9">
- <property name="visible">True</property>
- <property name="label">>=</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
- </packing>
- </child>
</widget>
- <packing>
- <property name="top_attach">3</property>
- <property name="bottom_attach">4</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
- </packing>
</child>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="left_attach">3</property>
+ <property name="right_attach">4</property>
+ <property name="top_attach">4</property>
+ <property name="bottom_attach">5</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkSpinButton" id="spinbutton_encoder_power_lower">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">â</property>
+ <property name="adjustment">1000 100 50000 100 1 0</property>
+ <property name="climb_rate">1</property>
+ <property name="snap_to_ticks">True</property>
+ <property name="numeric">True</property>
+ <signal name="value_changed" handler="on_spinbutton_encoder_power_lower_value_changed"/>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ <property name="x_options">GTK_SHRINK</property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkSpinButton" id="spinbutton_encoder_peakpower_lower">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">â</property>
+ <property name="adjustment">1000 100 50000 100 1 0</property>
+ <property name="climb_rate">1</property>
+ <property name="snap_to_ticks">True</property>
+ <property name="numeric">True</property>
+ <signal name="value_changed" handler="on_spinbutton_encoder_peakpower_lower_value_changed"/>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ <property name="top_attach">4</property>
+ <property name="bottom_attach">5</property>
+ <property name="x_options"></property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label11">
+ <property name="visible">True</property>
+ <property name="label"><=</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">4</property>
+ <property name="bottom_attach">5</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label4">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes"><b>Power</b> (W)</property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ <property name="x_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label10">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes"><b>Peak power</b> (W)</property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="top_attach">4</property>
+ <property name="bottom_attach">5</property>
+ <property name="x_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label9">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes"><b>Mean speed</b> (m/s)</property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label12">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes"><b>Max speed</b> (m/s)</property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label5">
+ <property name="visible">True</property>
+ <property name="label"><=</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">3</property>
+ <property name="bottom_attach">4</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label17">
+ <property name="visible">True</property>
+ <property name="label"><=</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label18">
+ <property name="visible">True</property>
+ <property name="label"><=</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkSpinButton" id="spinbutton_encoder_mean_speed_lower">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">â</property>
+ <property name="adjustment">1 0 15 0.10000000000000001 1 0</property>
+ <property name="climb_rate">1</property>
+ <property name="digits">2</property>
+ <property name="snap_to_ticks">True</property>
+ <property name="numeric">True</property>
+ <signal name="value_changed" handler="on_spinbutton_encoder_mean_speed_lower_value_changed"/>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options"></property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkSpinButton" id="spinbutton_encoder_max_speed_lower">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">â</property>
+ <property name="adjustment">1 0 15 0.10000000000000001 1 0</property>
+ <property name="climb_rate">1</property>
+ <property name="digits">2</property>
+ <property name="snap_to_ticks">True</property>
+ <property name="numeric">True</property>
+ <signal name="value_changed" handler="on_spinbutton_encoder_max_speed_lower_value_changed"/>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options"></property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton_encoder_mean_speed_lower">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip" translatable="yes">Bell bad</property>
+ <property name="draw_indicator">True</property>
+ <child>
+ <widget class="GtkAlignment" id="alignment8">
+ <property name="visible">True</property>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
<child>
- <widget class="GtkHBox" id="hbox7">
- <property name="visible">True</property>
- <property name="spacing">10</property>
- <child>
- <widget class="GtkLabel" id="label10">
- <property name="visible">True</property>
- <property name="label" translatable="yes"><b>Peak Power</b> (W)</property>
- <property name="use_markup">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
+ <widget class="GtkHBox" id="hbox5">
+ <property name="visible">True</property>
+ <property name="spacing">2</property>
<child>
- <widget class="GtkLabel" id="label11">
+ <widget class="GtkImage" id="image_encoder_mean_speed_lower">
<property name="visible">True</property>
- <property name="label"><=</property>
</widget>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
- <property name="position">1</property>
+ <property name="position">0</property>
</packing>
</child>
</widget>
- <packing>
- <property name="top_attach">4</property>
- <property name="bottom_attach">5</property>
- <property name="x_options">GTK_FILL</property>
- <property name="y_options">GTK_FILL</property>
- </packing>
- </child>
- <child>
- <widget class="GtkSpinButton" id="spinbutton_encoder_peakpower_higher">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="invisible_char">â</property>
- <property name="adjustment">4000 100 50000 100 1 0</property>
- <property name="climb_rate">1</property>
- <property name="snap_to_ticks">True</property>
- <property name="numeric">True</property>
- <signal name="value_changed" handler="on_spinbutton_encoder_peakpower_higher_value_changed"/>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">3</property>
- <property name="bottom_attach">4</property>
- <property name="x_options"></property>
- <property name="y_options"></property>
- </packing>
- </child>
- <child>
- <widget class="GtkSpinButton" id="spinbutton_encoder_peakpower_lower">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="invisible_char">â</property>
- <property name="adjustment">1000 100 50000 100 1 0</property>
- <property name="climb_rate">1</property>
- <property name="snap_to_ticks">True</property>
- <property name="numeric">True</property>
- <signal name="value_changed" handler="on_spinbutton_encoder_peakpower_lower_value_changed"/>
- </widget>
- <packing>
- <property name="left_attach">1</property>
- <property name="right_attach">2</property>
- <property name="top_attach">4</property>
- <property name="bottom_attach">5</property>
- <property name="x_options"></property>
- <property name="y_options"></property>
- </packing>
</child>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="left_attach">3</property>
+ <property name="right_attach">4</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
+ <property name="x_options"></property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton_encoder_max_speed_lower">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip" translatable="yes">Bell bad</property>
+ <property name="draw_indicator">True</property>
+ <child>
+ <widget class="GtkAlignment" id="alignment9">
+ <property name="visible">True</property>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
<child>
- <widget class="GtkHBox" id="hbox8">
+ <widget class="GtkHBox" id="hbox6">
<property name="visible">True</property>
+ <property name="spacing">2</property>
<child>
- <widget class="GtkCheckButton" id="checkbutton_encoder_peakpower_higher">
+ <widget class="GtkImage" id="image_encoder_max_speed_lower">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="has_tooltip">True</property>
- <property name="tooltip" translatable="yes">Bell good</property>
- <property name="draw_indicator">True</property>
- <child>
- <widget class="GtkAlignment" id="alignment3">
- <property name="visible">True</property>
- <property name="xscale">0</property>
- <property name="yscale">0</property>
- <child>
- <widget class="GtkHBox" id="hbox9">
- <property name="visible">True</property>
- <property name="spacing">2</property>
- <child>
- <widget class="GtkImage" id="image_encoder_peakpower_higher">
- <property name="visible">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- </child>
</widget>
<packing>
<property name="expand">False</property>
@@ -7962,49 +8313,79 @@ suitable for agility tests)</property>
</packing>
</child>
</widget>
- <packing>
- <property name="left_attach">2</property>
- <property name="right_attach">3</property>
- <property name="top_attach">3</property>
- <property name="bottom_attach">4</property>
- <property name="x_options"></property>
- <property name="y_options">GTK_FILL</property>
- </packing>
</child>
+ </widget>
+ </child>
+ </widget>
+ <packing>
+ <property name="left_attach">3</property>
+ <property name="right_attach">4</property>
+ <property name="top_attach">2</property>
+ <property name="bottom_attach">3</property>
+ <property name="x_options"></property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label20">
+ <property name="visible">True</property>
+ <property name="xalign">0</property>
+ <property name="label" translatable="yes"><b>Height</b> (cm)</property>
+ <property name="use_markup">True</property>
+ </widget>
+ <packing>
+ <property name="x_options">GTK_FILL</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkLabel" id="label22">
+ <property name="visible">True</property>
+ <property name="label"><=</property>
+ </widget>
+ <packing>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkSpinButton" id="spinbutton_encoder_height_lower">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="invisible_char">â</property>
+ <property name="adjustment">40 0 300 1 10 0</property>
+ <property name="climb_rate">1</property>
+ <property name="digits">1</property>
+ <property name="snap_to_ticks">True</property>
+ <property name="numeric">True</property>
+ <signal name="value_changed" handler="on_spinbutton_encoder_height_lower_value_changed"/>
+ </widget>
+ <packing>
+ <property name="left_attach">2</property>
+ <property name="right_attach">3</property>
+ <property name="x_options"></property>
+ <property name="y_options"></property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkCheckButton" id="checkbutton_encoder_height_lower">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="has_tooltip">True</property>
+ <property name="tooltip" translatable="yes">Bell good</property>
+ <property name="draw_indicator">True</property>
+ <child>
+ <widget class="GtkAlignment" id="alignment11">
+ <property name="visible">True</property>
+ <property name="xscale">0</property>
+ <property name="yscale">0</property>
<child>
- <widget class="GtkHBox" id="hbox10">
+ <widget class="GtkHBox" id="hbox8">
<property name="visible">True</property>
+ <property name="spacing">2</property>
<child>
- <widget class="GtkCheckButton" id="checkbutton_encoder_peakpower_lower">
+ <widget class="GtkImage" id="image_encoder_height_lower">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="has_tooltip">True</property>
- <property name="tooltip" translatable="yes">Bell good</property>
- <property name="draw_indicator">True</property>
- <child>
- <widget class="GtkAlignment" id="alignment4">
- <property name="visible">True</property>
- <property name="xscale">0</property>
- <property name="yscale">0</property>
- <child>
- <widget class="GtkHBox" id="hbox11">
- <property name="visible">True</property>
- <property name="spacing">2</property>
- <child>
- <widget class="GtkImage" id="image_encoder_peakpower_lower">
- <property name="visible">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- </child>
</widget>
<packing>
<property name="expand">False</property>
@@ -8013,30 +8394,24 @@ suitable for agility tests)</property>
</packing>
</child>
</widget>
- <packing>
- <property name="left_attach">2</property>
- <property name="right_attach">3</property>
- <property name="top_attach">4</property>
- <property name="bottom_attach">5</property>
- <property name="x_options"></property>
- <property name="y_options">GTK_FILL</property>
- </packing>
</child>
</widget>
- <packing>
- <property name="position">2</property>
- </packing>
</child>
</widget>
<packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
+ <property name="left_attach">3</property>
+ <property name="right_attach">4</property>
</packing>
</child>
</widget>
+ <packing>
+ <property name="position">2</property>
+ </packing>
</child>
</widget>
+ <packing>
+ <property name="position">2</property>
+ </packing>
</child>
</widget>
</child>
@@ -8045,7 +8420,7 @@ suitable for agility tests)</property>
<child>
<widget class="GtkLabel" id="label_other_conditions">
<property name="visible">True</property>
- <property name="label" translatable="yes"><b>Other conditions</b></property>
+ <property name="label" translatable="yes"><b>Conditions</b></property>
<property name="use_markup">True</property>
</widget>
<packing>
@@ -8061,123 +8436,95 @@ suitable for agility tests)</property>
<widget class="GtkFrame" id="frame25">
<property name="visible">True</property>
<property name="label_xalign">0</property>
- <property name="shadow_type">none</property>
+ <property name="label_yalign">0.69999998807907104</property>
+ <property name="shadow_type">out</property>
<child>
<widget class="GtkAlignment" id="alignment80">
<property name="visible">True</property>
- <property name="left_padding">12</property>
+ <property name="top_padding">10</property>
+ <property name="bottom_padding">10</property>
+ <property name="left_padding">10</property>
+ <property name="right_padding">10</property>
<child>
- <widget class="GtkHBox" id="hbox166">
+ <widget class="GtkHBox" id="hbox14">
<property name="visible">True</property>
- <property name="spacing">10</property>
<child>
- <widget class="GtkVBox" id="vbox97">
+ <widget class="GtkHBox" id="hbox16">
<property name="visible">True</property>
+ <property name="spacing">6</property>
<child>
- <widget class="GtkHBox" id="hbox163">
+ <widget class="GtkRadioButton" id="radiobutton_test_good">
+ <property name="label" translatable="yes">"Good" bell</property>
<property name="visible">True</property>
- <child>
- <widget class="GtkRadioButton" id="radiobutton_test_good">
- <property name="label" translatable="yes">test "good" bell</property>
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="use_underline">True</property>
- <property name="draw_indicator">True</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <widget class="GtkHBox" id="hbox165">
- <property name="visible">True</property>
- <child>
- <widget class="GtkImage" id="image_repetitive_test_good">
- <property name="visible">True</property>
- </widget>
- <packing>
- <property name="position">0</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="pack_type">end</property>
- <property name="position">1</property>
- </packing>
- </child>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="use_underline">True</property>
+ <property name="active">True</property>
+ <property name="draw_indicator">True</property>
</widget>
<packing>
+ <property name="expand">False</property>
<property name="position">0</property>
</packing>
</child>
<child>
- <widget class="GtkHBox" id="hbox167">
+ <widget class="GtkImage" id="image_repetitive_test_good">
<property name="visible">True</property>
- <child>
- <widget class="GtkRadioButton" id="radiobutton_test_bad">
- <property name="label" translatable="yes">test "bad" bell</property>
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="use_underline">True</property>
- <property name="draw_indicator">True</property>
- <property name="group">radiobutton_test_good</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <widget class="GtkHBox" id="hbox168">
- <property name="visible">True</property>
- <child>
- <widget class="GtkImage" id="image_repetitive_test_bad">
- <property name="visible">True</property>
- </widget>
- <packing>
- <property name="position">0</property>
- </packing>
- </child>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="pack_type">end</property>
- <property name="position">1</property>
- </packing>
- </child>
</widget>
<packing>
+ <property name="expand">False</property>
<property name="position">1</property>
</packing>
</child>
</widget>
<packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
<property name="position">0</property>
</packing>
</child>
<child>
+ <widget class="GtkHBox" id="hbox15">
+ <property name="visible">True</property>
+ <property name="spacing">6</property>
+ <child>
+ <widget class="GtkRadioButton" id="radiobutton_test_bad">
+ <property name="label" translatable="yes">"Bad" bell</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="use_underline">True</property>
+ <property name="draw_indicator">True</property>
+ <property name="group">radiobutton_test_good</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkImage" id="image_repetitive_test_bad">
+ <property name="visible">True</property>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ </widget>
+ <packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
+ <child>
<widget class="GtkButton" id="button_test">
<property name="label" translatable="yes">test!</property>
<property name="visible">True</property>
<property name="can_focus">True</property>
- <property name="receives_default">False</property>
+ <property name="receives_default">True</property>
<property name="use_underline">True</property>
<signal name="clicked" handler="on_button_test_clicked"/>
</widget>
<packing>
- <property name="expand">False</property>
- <property name="fill">False</property>
- <property name="position">1</property>
+ <property name="position">2</property>
</packing>
</child>
</widget>
@@ -23230,11 +23577,11 @@ on current Chronojump version.</property>
<child>
<widget class="GtkVBox" id="vbox3">
<property name="visible">True</property>
- <property name="spacing">4</property>
+ <property name="spacing">8</property>
<child>
<widget class="GtkVBox" id="vbox5">
<property name="visible">True</property>
- <property name="spacing">8</property>
+ <property name="spacing">12</property>
<child>
<widget class="GtkFrame" id="frame16">
<property name="visible">True</property>
@@ -23244,8 +23591,10 @@ on current Chronojump version.</property>
<child>
<widget class="GtkAlignment" id="alignment19">
<property name="visible">True</property>
- <property name="left_padding">12</property>
- <property name="right_padding">12</property>
+ <property name="top_padding">4</property>
+ <property name="bottom_padding">4</property>
+ <property name="left_padding">10</property>
+ <property name="right_padding">10</property>
<child>
<widget class="GtkHBox" id="hbox58">
<property name="visible">True</property>
@@ -23901,7 +24250,7 @@ on current Chronojump version.</property>
<child>
<widget class="GtkVBox" id="vbox6">
<property name="visible">True</property>
- <property name="spacing">11</property>
+ <property name="spacing">8</property>
<child>
<widget class="GtkVBox" id="vbox7">
<property name="visible">True</property>
@@ -23915,8 +24264,10 @@ on current Chronojump version.</property>
<child>
<widget class="GtkAlignment" id="alignment17">
<property name="visible">True</property>
- <property name="left_padding">12</property>
- <property name="right_padding">12</property>
+ <property name="top_padding">4</property>
+ <property name="bottom_padding">4</property>
+ <property name="left_padding">10</property>
+ <property name="right_padding">10</property>
<child>
<widget class="GtkHBox" id="hbox79">
<property name="visible">True</property>
diff --git a/src/constants.cs b/src/constants.cs
index 3167cd1..2472e89 100644
--- a/src/constants.cs
+++ b/src/constants.cs
@@ -38,7 +38,7 @@ public class Constants
"Onkar Nath Mishra (http://www.logicbrick.com)\n" + Catalog.GetString("OpenCV Detection of knee angle."),
"Andoni Morales Alastruey (http://ylatuya.es)\n" + Catalog.GetString("Installation support: Autotools, packaging, bundle."),
"Carlos J. Gil Bellosta (http://www.datanalytics.com)\n" + Catalog.GetString("Statistics support."),
- "Teng Wei Hua (wadedang gmail com)\n" + Catalog.GetString("Translation of Firmware to C, and new firmware features.")
+ "Teng Wei Hua (wadedang gmail com)\n" + Catalog.GetString("Translation of Firmware to C, and new firmware features. Encoder hardware layer.")
};
public static string [] Documenters = {
"Xavier de Blas Foix (xaviblas gmail com)\n\n",
diff --git a/src/encoder.cs b/src/encoder.cs
index a5060ab..302d7bd 100644
--- a/src/encoder.cs
+++ b/src/encoder.cs
@@ -36,14 +36,23 @@ public class EncoderParams
private int curve;
private int width;
private int height;
+ private double heightHigherCondition;
+ private double heightLowerCondition;
+ private double meanSpeedHigherCondition;
+ private double meanSpeedLowerCondition;
+ private double maxSpeedHigherCondition;
+ private double maxSpeedLowerCondition;
private int powerHigherCondition;
- private int peakPowerHigherCondition;
private int powerLowerCondition;
+ private int peakPowerHigherCondition;
private int peakPowerLowerCondition;
public EncoderParams(int time, int minHeight, bool isJump, string mass, string smooth, string eccon,
- int powerHigherCondition, int peakPowerHigherCondition,
- int powerLowerCondition, int peakPowerLowerCondition)
+ double heightHigherCondition, double heightLowerCondition,
+ double meanSpeedHigherCondition, double meanSpeedLowerCondition,
+ double maxSpeedHigherCondition, double maxSpeedLowerCondition,
+ int powerHigherCondition, int powerLowerCondition,
+ int peakPowerHigherCondition, int peakPowerLowerCondition)
{
this.time = time;
this.minHeight = minHeight;
@@ -51,9 +60,15 @@ public class EncoderParams
this.mass = mass;
this.smooth = smooth;
this.eccon = eccon;
+ this.heightHigherCondition = heightHigherCondition;
+ this.heightLowerCondition = heightLowerCondition;
+ this.meanSpeedHigherCondition = meanSpeedHigherCondition;
+ this.meanSpeedLowerCondition = meanSpeedLowerCondition;
+ this.maxSpeedHigherCondition = maxSpeedHigherCondition;
+ this.maxSpeedLowerCondition = maxSpeedLowerCondition;
this.powerHigherCondition = powerHigherCondition;
- this.peakPowerHigherCondition = peakPowerHigherCondition;
this.powerLowerCondition = powerLowerCondition;
+ this.peakPowerHigherCondition = peakPowerHigherCondition;
this.peakPowerLowerCondition = peakPowerLowerCondition;
}
@@ -61,8 +76,11 @@ public class EncoderParams
{
return time.ToString() + " " + minHeight.ToString() + " " + isJump.ToString() +
" " + mass.ToString() + " " + smooth + " " + eccon +
- " " + powerHigherCondition.ToString() + " " + peakPowerHigherCondition.ToString() +
- " " + powerLowerCondition.ToString() + " " + peakPowerLowerCondition.ToString();
+ " " + heightHigherCondition.ToString() + " " + heightLowerCondition.ToString() +
+ " " + meanSpeedHigherCondition.ToString() + " " + meanSpeedLowerCondition.ToString() +
+ " " + maxSpeedHigherCondition.ToString() + " " + maxSpeedLowerCondition.ToString() +
+ " " + powerHigherCondition.ToString() + " " + powerLowerCondition.ToString() +
+ " " + peakPowerHigherCondition.ToString() + " " + peakPowerLowerCondition.ToString();
}
public EncoderParams(int minHeight, bool isJump, string mass, string eccon,
diff --git a/src/gui/encoder.cs b/src/gui/encoder.cs
index 8fdae14..1ad7eab 100644
--- a/src/gui/encoder.cs
+++ b/src/gui/encoder.cs
@@ -90,19 +90,37 @@ public partial class ChronoJumpWindow
//TODO: garantir path windows
void on_button_encoder_capture_clicked (object o, EventArgs args)
{
- //TODO: que surti barra de progres de calculando... despres de capturar i boto de cerrar automatico
- //TODO: i mostrar valors des de la gui (potser a zona dreta damunt del zoom)
+ double heightHigherCondition = -1;
+ if(repetitiveConditionsWin.EncoderHeightHigher)
+ heightHigherCondition = repetitiveConditionsWin.EncoderHeightHigherValue;
+ double heightLowerCondition = -1;
+ if(repetitiveConditionsWin.EncoderHeightLower)
+ heightLowerCondition = repetitiveConditionsWin.EncoderHeightLowerValue;
+
+ double meanSpeedHigherCondition = -1;
+ if(repetitiveConditionsWin.EncoderMeanSpeedHigher)
+ meanSpeedHigherCondition = repetitiveConditionsWin.EncoderMeanSpeedHigherValue;
+ double meanSpeedLowerCondition = -1;
+ if(repetitiveConditionsWin.EncoderMeanSpeedLower)
+ meanSpeedLowerCondition = repetitiveConditionsWin.EncoderMeanSpeedLowerValue;
+
+ double maxSpeedHigherCondition = -1;
+ if(repetitiveConditionsWin.EncoderMaxSpeedHigher)
+ maxSpeedHigherCondition = repetitiveConditionsWin.EncoderMaxSpeedHigherValue;
+ double maxSpeedLowerCondition = -1;
+ if(repetitiveConditionsWin.EncoderMaxSpeedLower)
+ maxSpeedLowerCondition = repetitiveConditionsWin.EncoderMaxSpeedLowerValue;
int powerHigherCondition = -1;
if(repetitiveConditionsWin.EncoderPowerHigher)
powerHigherCondition = repetitiveConditionsWin.EncoderPowerHigherValue;
- int peakPowerHigherCondition = -1;
- if(repetitiveConditionsWin.EncoderPeakPowerHigher)
- peakPowerHigherCondition = repetitiveConditionsWin.EncoderPeakPowerHigherValue;
-
int powerLowerCondition = -1;
if(repetitiveConditionsWin.EncoderPowerLower)
powerLowerCondition = repetitiveConditionsWin.EncoderPowerLowerValue;
+
+ int peakPowerHigherCondition = -1;
+ if(repetitiveConditionsWin.EncoderPeakPowerHigher)
+ peakPowerHigherCondition = repetitiveConditionsWin.EncoderPeakPowerHigherValue;
int peakPowerLowerCondition = -1;
if(repetitiveConditionsWin.EncoderPeakPowerLower)
peakPowerLowerCondition = repetitiveConditionsWin.EncoderPeakPowerLowerValue;
@@ -115,8 +133,11 @@ public partial class ChronoJumpWindow
findMass(),
Util.ConvertToPoint((double) spin_encoder_smooth.Value), //R decimal: '.'
findEccon(),
- powerHigherCondition, peakPowerHigherCondition,
- powerLowerCondition, peakPowerLowerCondition
+ heightHigherCondition, heightLowerCondition,
+ meanSpeedHigherCondition, meanSpeedLowerCondition,
+ maxSpeedHigherCondition, maxSpeedLowerCondition,
+ powerHigherCondition, powerLowerCondition,
+ peakPowerHigherCondition, peakPowerLowerCondition
);
EncoderStruct es = new EncoderStruct(
@@ -358,8 +379,7 @@ public partial class ChronoJumpWindow
/* rendering columns */
-
- private string assignColor(double found, bool higherActive, bool lowerActive, int higherValue, int lowerValue)
+ private string assignColor(double found, bool higherActive, bool lowerActive, double higherValue, double lowerValue)
{
//more at System.Drawing.Color (Monodoc)
string colorGood= "ForestGreen";
@@ -374,6 +394,12 @@ public partial class ChronoJumpWindow
return colorNothing;
}
+ private string assignColor(double found, bool higherActive, bool lowerActive, int higherValue, int lowerValue)
+ {
+ return assignColor(found, higherActive, lowerActive,
+ Convert.ToDouble(higherValue), Convert.ToDouble(lowerValue));
+ }
+
private void RenderN (Gtk.TreeViewColumn column, Gtk.CellRenderer cell, Gtk.TreeModel model, Gtk.TreeIter iter)
{
EncoderCurve curve = (EncoderCurve) model.GetValue (iter, 0);
@@ -390,6 +416,12 @@ public partial class ChronoJumpWindow
{
EncoderCurve curve = (EncoderCurve) model.GetValue (iter, 0);
string heightToCm = (Convert.ToDouble(curve.Height)/10).ToString();
+ (cell as Gtk.CellRendererText).Foreground = assignColor(
+ Convert.ToDouble(heightToCm),
+ repetitiveConditionsWin.EncoderHeightHigher,
+ repetitiveConditionsWin.EncoderHeightLower,
+ repetitiveConditionsWin.EncoderHeightHigherValue,
+ repetitiveConditionsWin.EncoderHeightLowerValue);
(cell as Gtk.CellRendererText).Text =
String.Format(UtilGtk.TVNumPrint(heightToCm,8,1),Convert.ToDouble(heightToCm));
}
@@ -397,6 +429,12 @@ public partial class ChronoJumpWindow
private void RenderMeanSpeed (Gtk.TreeViewColumn column, Gtk.CellRenderer cell, Gtk.TreeModel model, Gtk.TreeIter iter)
{
EncoderCurve curve = (EncoderCurve) model.GetValue (iter, 0);
+ (cell as Gtk.CellRendererText).Foreground = assignColor(
+ Convert.ToDouble(curve.MeanSpeed),
+ repetitiveConditionsWin.EncoderMeanSpeedHigher,
+ repetitiveConditionsWin.EncoderMeanSpeedLower,
+ repetitiveConditionsWin.EncoderMeanSpeedHigherValue,
+ repetitiveConditionsWin.EncoderMeanSpeedLowerValue);
//no need of UtilGtk.TVNumPrint, always has 1 digit on left of decimal
(cell as Gtk.CellRendererText).Text =
String.Format("{0,12:0.000}",Convert.ToDouble(curve.MeanSpeed));
@@ -405,6 +443,12 @@ public partial class ChronoJumpWindow
private void RenderMaxSpeed (Gtk.TreeViewColumn column, Gtk.CellRenderer cell, Gtk.TreeModel model, Gtk.TreeIter iter)
{
EncoderCurve curve = (EncoderCurve) model.GetValue (iter, 0);
+ (cell as Gtk.CellRendererText).Foreground = assignColor(
+ Convert.ToDouble(curve.MaxSpeed),
+ repetitiveConditionsWin.EncoderMaxSpeedHigher,
+ repetitiveConditionsWin.EncoderMaxSpeedLower,
+ repetitiveConditionsWin.EncoderMaxSpeedHigherValue,
+ repetitiveConditionsWin.EncoderMaxSpeedLowerValue);
//no need of UtilGtk.TVNumPrint, always has 1 digit on left of decimal
(cell as Gtk.CellRendererText).Text =
String.Format("{0,12:0.000}",Convert.ToDouble(curve.MaxSpeed));
diff --git a/src/gui/repetitiveConditions.cs b/src/gui/repetitiveConditions.cs
index ea43a97..0b1ce42 100644
--- a/src/gui/repetitiveConditions.cs
+++ b/src/gui/repetitiveConditions.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-2009 Xavier de Blas <xaviblas gmail com>
+ * Copyright (C) 2004-2012 Xavier de Blas <xaviblas gmail com>
*/
using System;
@@ -30,10 +30,11 @@ public class RepetitiveConditionsWindow
// [Widget] Gtk.ScrolledWindow scrolled_conditions;
[Widget] Gtk.Frame frame_best_and_worst;
- [Widget] Gtk.Label label_other_conditions;
+ [Widget] Gtk.Box hbox_jump_best_worst;
+ [Widget] Gtk.Box hbox_run_best_worst;
/* jumps */
- [Widget] Gtk.Table table_jump_conditions;
+ [Widget] Gtk.Box hbox_jump_conditions;
[Widget] Gtk.CheckButton checkbutton_jump_tf_tc_best;
[Widget] Gtk.CheckButton checkbutton_jump_tf_tc_worst;
@@ -52,7 +53,7 @@ public class RepetitiveConditionsWindow
[Widget] Gtk.SpinButton spinbutton_tf_tc_lower;
/* runs */
- [Widget] Gtk.Table table_run_conditions;
+ [Widget] Gtk.Box hbox_run_conditions;
[Widget] Gtk.CheckButton checkbutton_run_time_best;
[Widget] Gtk.CheckButton checkbutton_run_time_worst;
@@ -63,7 +64,19 @@ public class RepetitiveConditionsWindow
[Widget] Gtk.SpinButton spinbutton_time_lower;
/* encoder */
- [Widget] Gtk.Table table_encoder_conditions;
+ [Widget] Gtk.Box hbox_encoder_conditions;
+ [Widget] Gtk.CheckButton checkbutton_encoder_height_higher;
+ [Widget] Gtk.CheckButton checkbutton_encoder_mean_speed_higher;
+ [Widget] Gtk.CheckButton checkbutton_encoder_max_speed_higher;
+ [Widget] Gtk.CheckButton checkbutton_encoder_height_lower;
+ [Widget] Gtk.CheckButton checkbutton_encoder_mean_speed_lower;
+ [Widget] Gtk.CheckButton checkbutton_encoder_max_speed_lower;
+ [Widget] Gtk.SpinButton spinbutton_encoder_height_higher;
+ [Widget] Gtk.SpinButton spinbutton_encoder_mean_speed_higher;
+ [Widget] Gtk.SpinButton spinbutton_encoder_max_speed_higher;
+ [Widget] Gtk.SpinButton spinbutton_encoder_height_lower;
+ [Widget] Gtk.SpinButton spinbutton_encoder_mean_speed_lower;
+ [Widget] Gtk.SpinButton spinbutton_encoder_max_speed_lower;
[Widget] Gtk.CheckButton checkbutton_encoder_power_higher;
[Widget] Gtk.CheckButton checkbutton_encoder_peakpower_higher;
[Widget] Gtk.CheckButton checkbutton_encoder_power_lower;
@@ -88,6 +101,9 @@ public class RepetitiveConditionsWindow
[Widget] Gtk.Image image_repetitive_tc_lower;
[Widget] Gtk.Image image_repetitive_tf_tc_greater;
[Widget] Gtk.Image image_repetitive_time_lower;
+ [Widget] Gtk.Image image_encoder_height_higher;
+ [Widget] Gtk.Image image_encoder_mean_speed_higher;
+ [Widget] Gtk.Image image_encoder_max_speed_higher;
[Widget] Gtk.Image image_encoder_power_higher;
[Widget] Gtk.Image image_encoder_peakpower_higher;
[Widget] Gtk.Image image_repetitive_test_good;
@@ -98,6 +114,9 @@ public class RepetitiveConditionsWindow
[Widget] Gtk.Image image_repetitive_tc_greater;
[Widget] Gtk.Image image_repetitive_tf_tc_lower;
[Widget] Gtk.Image image_repetitive_time_greater;
+ [Widget] Gtk.Image image_encoder_height_lower;
+ [Widget] Gtk.Image image_encoder_mean_speed_lower;
+ [Widget] Gtk.Image image_encoder_max_speed_lower;
[Widget] Gtk.Image image_encoder_power_lower;
[Widget] Gtk.Image image_encoder_peakpower_lower;
[Widget] Gtk.Image image_repetitive_test_bad;
@@ -151,30 +170,22 @@ public class RepetitiveConditionsWindow
void showWidgets(Constants.BellModes bellMode) {
frame_best_and_worst.Hide();
- label_other_conditions.Hide();
-
- table_jump_conditions.Hide();
- checkbutton_jump_tf_tc_best.Hide();
- checkbutton_jump_tf_tc_worst.Hide();
- table_run_conditions.Hide();
- checkbutton_run_time_best.Hide();
- checkbutton_run_time_worst.Hide();
- table_encoder_conditions.Hide();
+ hbox_jump_best_worst.Hide();
+ hbox_run_best_worst.Hide();
+ hbox_jump_conditions.Hide();
+ hbox_run_conditions.Hide();
+ hbox_encoder_conditions.Hide();
if(bellMode == Constants.BellModes.JUMPS) {
frame_best_and_worst.Show();
- label_other_conditions.Show();
- table_jump_conditions.Show();
- checkbutton_jump_tf_tc_best.Show();
- checkbutton_jump_tf_tc_worst.Show();
+ hbox_jump_best_worst.Show();
+ hbox_jump_conditions.Show();
} else if(bellMode == Constants.BellModes.RUNS) {
frame_best_and_worst.Show();
- label_other_conditions.Show();
- table_run_conditions.Show();
- checkbutton_run_time_best.Show();
- checkbutton_run_time_worst.Show();
+ hbox_run_best_worst.Show();
+ hbox_run_conditions.Show();
} else { //encoder
- table_encoder_conditions.Show();
+ hbox_encoder_conditions.Show();
}
}
@@ -187,6 +198,9 @@ public class RepetitiveConditionsWindow
image_repetitive_tc_lower.Pixbuf = pixbuf;
image_repetitive_tf_tc_greater.Pixbuf = pixbuf;
image_repetitive_time_lower.Pixbuf = pixbuf;
+ image_encoder_height_higher.Pixbuf = pixbuf;
+ image_encoder_mean_speed_higher.Pixbuf = pixbuf;
+ image_encoder_max_speed_higher.Pixbuf = pixbuf;
image_encoder_power_higher.Pixbuf = pixbuf;
image_encoder_peakpower_higher.Pixbuf = pixbuf;
image_repetitive_test_good.Pixbuf = pixbuf;
@@ -198,6 +212,9 @@ public class RepetitiveConditionsWindow
image_repetitive_tc_greater.Pixbuf = pixbuf;
image_repetitive_tf_tc_lower.Pixbuf = pixbuf;
image_repetitive_time_greater.Pixbuf = pixbuf;
+ image_encoder_height_lower.Pixbuf = pixbuf;
+ image_encoder_mean_speed_lower.Pixbuf = pixbuf;
+ image_encoder_max_speed_lower.Pixbuf = pixbuf;
image_encoder_power_lower.Pixbuf = pixbuf;
image_encoder_peakpower_lower.Pixbuf = pixbuf;
image_repetitive_test_bad.Pixbuf = pixbuf;
@@ -265,16 +282,37 @@ public class RepetitiveConditionsWindow
}
/* encoder */
+ void on_spinbutton_encoder_height_higher_value_changed (object o, EventArgs args) {
+ checkbutton_encoder_height_higher.Active = true;
+ }
+ void on_spinbutton_encoder_height_lower_value_changed (object o, EventArgs args) {
+ checkbutton_encoder_height_lower.Active = true;
+ }
+
+ void on_spinbutton_encoder_mean_speed_higher_value_changed (object o, EventArgs args) {
+ checkbutton_encoder_mean_speed_higher.Active = true;
+ }
+ void on_spinbutton_encoder_mean_speed_lower_value_changed (object o, EventArgs args) {
+ checkbutton_encoder_mean_speed_lower.Active = true;
+ }
+
+ void on_spinbutton_encoder_max_speed_higher_value_changed (object o, EventArgs args) {
+ checkbutton_encoder_max_speed_higher.Active = true;
+ }
+ void on_spinbutton_encoder_max_speed_lower_value_changed (object o, EventArgs args) {
+ checkbutton_encoder_max_speed_lower.Active = true;
+ }
+
void on_spinbutton_encoder_power_higher_value_changed (object o, EventArgs args) {
checkbutton_encoder_power_higher.Active = true;
}
- void on_spinbutton_encoder_peakpower_higher_value_changed (object o, EventArgs args) {
- checkbutton_encoder_peakpower_higher.Active = true;
- }
-
void on_spinbutton_encoder_power_lower_value_changed (object o, EventArgs args) {
checkbutton_encoder_power_lower.Active = true;
}
+
+ void on_spinbutton_encoder_peakpower_higher_value_changed (object o, EventArgs args) {
+ checkbutton_encoder_peakpower_higher.Active = true;
+ }
void on_spinbutton_encoder_peakpower_lower_value_changed (object o, EventArgs args) {
checkbutton_encoder_peakpower_lower.Active = true;
}
@@ -288,11 +326,9 @@ public class RepetitiveConditionsWindow
get { return checkbutton_jump_tf_tc_worst.Active; }
}
-
public bool TfGreater {
get { return checkbutton_tf_greater.Active; }
}
-
public bool TfLower {
get { return checkbutton_tf_lower.Active; }
}
@@ -300,7 +336,6 @@ public class RepetitiveConditionsWindow
public bool TcGreater {
get { return checkbutton_tc_greater.Active; }
}
-
public bool TcLower {
get { return checkbutton_tc_lower.Active; }
}
@@ -308,16 +343,13 @@ public class RepetitiveConditionsWindow
public bool TfTcGreater {
get { return checkbutton_tf_tc_greater.Active; }
}
-
public bool TfTcLower {
get { return checkbutton_tf_tc_lower.Active; }
}
-
public double TfGreaterValue {
get { return Convert.ToDouble(spinbutton_tf_greater.Value); }
}
-
public double TfLowerValue {
get { return Convert.ToDouble(spinbutton_tf_lower.Value); }
}
@@ -325,7 +357,6 @@ public class RepetitiveConditionsWindow
public double TcGreaterValue {
get { return Convert.ToDouble(spinbutton_tc_greater.Value); }
}
-
public double TcLowerValue {
get { return Convert.ToDouble(spinbutton_tc_lower.Value); }
}
@@ -333,7 +364,6 @@ public class RepetitiveConditionsWindow
public double TfTcGreaterValue {
get { return Convert.ToDouble(spinbutton_tf_tc_greater.Value); }
}
-
public double TfTcLowerValue {
get { return Convert.ToDouble(spinbutton_tf_tc_lower.Value); }
}
@@ -349,7 +379,6 @@ public class RepetitiveConditionsWindow
public bool RunTimeGreater {
get { return checkbutton_time_greater.Active; }
}
-
public bool RunTimeLower {
get { return checkbutton_time_lower.Active; }
}
@@ -357,18 +386,66 @@ public class RepetitiveConditionsWindow
public double RunTimeGreaterValue {
get { return Convert.ToDouble(spinbutton_time_greater.Value); }
}
-
public double RunTimeLowerValue {
get { return Convert.ToDouble(spinbutton_time_lower.Value); }
}
/* ENCODER */
+ public bool EncoderHeightHigher {
+ get { return checkbutton_encoder_height_higher.Active; }
+ }
+ public double EncoderHeightHigherValue {
+ get { return Convert.ToDouble(spinbutton_encoder_height_higher.Value); }
+ }
+
+ public bool EncoderHeightLower {
+ get { return checkbutton_encoder_height_lower.Active; }
+ }
+ public double EncoderHeightLowerValue {
+ get { return Convert.ToDouble(spinbutton_encoder_height_lower.Value); }
+ }
+
+ public bool EncoderMeanSpeedHigher {
+ get { return checkbutton_encoder_mean_speed_higher.Active; }
+ }
+ public double EncoderMeanSpeedHigherValue {
+ get { return Convert.ToDouble(spinbutton_encoder_mean_speed_higher.Value); }
+ }
+
+ public bool EncoderMeanSpeedLower {
+ get { return checkbutton_encoder_mean_speed_lower.Active; }
+ }
+ public double EncoderMeanSpeedLowerValue {
+ get { return Convert.ToDouble(spinbutton_encoder_mean_speed_lower.Value); }
+ }
+
+ public bool EncoderMaxSpeedHigher {
+ get { return checkbutton_encoder_max_speed_higher.Active; }
+ }
+ public double EncoderMaxSpeedHigherValue {
+ get { return Convert.ToDouble(spinbutton_encoder_max_speed_higher.Value); }
+ }
+
+ public bool EncoderMaxSpeedLower {
+ get { return checkbutton_encoder_max_speed_lower.Active; }
+ }
+ public double EncoderMaxSpeedLowerValue {
+ get { return Convert.ToDouble(spinbutton_encoder_max_speed_lower.Value); }
+ }
+
public bool EncoderPowerHigher {
get { return checkbutton_encoder_power_higher.Active; }
}
public int EncoderPowerHigherValue {
get { return Convert.ToInt32(spinbutton_encoder_power_higher.Value); }
}
+
+ public bool EncoderPowerLower {
+ get { return checkbutton_encoder_power_lower.Active; }
+ }
+ public int EncoderPowerLowerValue {
+ get { return Convert.ToInt32(spinbutton_encoder_power_lower.Value); }
+ }
public bool EncoderPeakPowerHigher {
get { return checkbutton_encoder_peakpower_higher.Active; }
@@ -377,13 +454,6 @@ public class RepetitiveConditionsWindow
get { return Convert.ToInt32(spinbutton_encoder_peakpower_higher.Value); }
}
- public bool EncoderPowerLower {
- get { return checkbutton_encoder_power_lower.Active; }
- }
- public int EncoderPowerLowerValue {
- get { return Convert.ToInt32(spinbutton_encoder_power_lower.Value); }
- }
-
public bool EncoderPeakPowerLower {
get { return checkbutton_encoder_peakpower_lower.Active; }
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]