Switch from Spinner to TextInput on anatric panel

This commit is contained in:
usov_i 2020-07-23 15:44:07 +02:00
parent dffef86065
commit b026fa3940

View File

@ -1,5 +1,5 @@
from bokeh.layouts import column, row from bokeh.layouts import column, row
from bokeh.models import Button, Panel, RadioButtonGroup, Select, Spinner, TextAreaInput, TextInput from bokeh.models import Button, Panel, RadioButtonGroup, Select, TextAreaInput, TextInput
import pyzebra import pyzebra
@ -28,23 +28,23 @@ def create():
set_active_widgets(config.algorithm) set_active_widgets(config.algorithm)
if config.algorithm == "adaptivemaxcog": if config.algorithm == "adaptivemaxcog":
threshold_spinner.value = float(config.threshold) threshold_textinput.value = config.threshold
shell_spinner.value = float(config.shell) shell_textinput.value = config.shell
steepness_spinner.value = float(config.steepness) steepness_textinput.value = config.steepness
duplicateDistance_spinner.value = float(config.duplicateDistance) duplicateDistance_textinput.value = config.duplicateDistance
maxequal_spinner.value = float(config.maxequal) maxequal_textinput.value = config.maxequal
# apd_window_spinner.value = float(config.apd_window) # aps_window_textinput.value = config.aps_window
elif config.algorithm == "adaptivedynamic": elif config.algorithm == "adaptivedynamic":
# admi_window_spinner.value = float(config.admi_window) # adm_window_textinput.value = config.adm_window
# border_spinner.value = float(config.border) # border_textinput.value = config.border
# minWindow_spinner.value = float(config.minWindow) # minWindow_textinput.value = config.minWindow
# reflectionFile_spinner.value = float(config.reflectionFile) reflectionFile_textinput.value = config.reflectionFile
targetMonitor_spinner.value = float(config.targetMonitor) targetMonitor_textinput.value = config.targetMonitor
smoothSize_spinner.value = float(config.smoothSize) smoothSize_textinput.value = config.smoothSize
loop_spinner.value = float(config.loop) loop_textinput.value = config.loop
minPeakCount_spinner.value = float(config.minPeakCount) minPeakCount_textinput.value = config.minPeakCount
# displacementCurve_spinner.value = float(config.displacementCurve) # displacementCurve_textinput.value = config.displacementCurve
else: else:
raise ValueError("Unknown processing mode.") raise ValueError("Unknown processing mode.")
@ -61,22 +61,22 @@ def create():
else: else:
raise ValueError("Implementation can be either 'adaptivemaxcog' or 'adaptivedynamic'") raise ValueError("Implementation can be either 'adaptivemaxcog' or 'adaptivedynamic'")
threshold_spinner.disabled = disable_adaptivemaxcog threshold_textinput.disabled = disable_adaptivemaxcog
shell_spinner.disabled = disable_adaptivemaxcog shell_textinput.disabled = disable_adaptivemaxcog
steepness_spinner.disabled = disable_adaptivemaxcog steepness_textinput.disabled = disable_adaptivemaxcog
duplicateDistance_spinner.disabled = disable_adaptivemaxcog duplicateDistance_textinput.disabled = disable_adaptivemaxcog
maxequal_spinner.disabled = disable_adaptivemaxcog maxequal_textinput.disabled = disable_adaptivemaxcog
apd_window_spinner.disabled = disable_adaptivemaxcog aps_window_textinput.disabled = disable_adaptivemaxcog
admi_window_spinner.disabled = disable_adaptivedynamic adm_window_textinput.disabled = disable_adaptivedynamic
border_spinner.disabled = disable_adaptivedynamic border_textinput.disabled = disable_adaptivedynamic
minWindow_spinner.disabled = disable_adaptivedynamic minWindow_textinput.disabled = disable_adaptivedynamic
reflectionFile_spinner.disabled = disable_adaptivedynamic reflectionFile_textinput.disabled = disable_adaptivedynamic
targetMonitor_spinner.disabled = disable_adaptivedynamic targetMonitor_textinput.disabled = disable_adaptivedynamic
smoothSize_spinner.disabled = disable_adaptivedynamic smoothSize_textinput.disabled = disable_adaptivedynamic
loop_spinner.disabled = disable_adaptivedynamic loop_textinput.disabled = disable_adaptivedynamic
minPeakCount_spinner.disabled = disable_adaptivedynamic minPeakCount_textinput.disabled = disable_adaptivedynamic
displacementCurve_spinner.disabled = disable_adaptivedynamic displacementCurve_textinput.disabled = disable_adaptivedynamic
fileinput = TextInput(title="Path to XML configuration file:", width=600) fileinput = TextInput(title="Path to XML configuration file:", width=600)
fileinput.on_change("value", fileinput_callback) fileinput.on_change("value", fileinput_callback)
@ -129,50 +129,50 @@ def create():
# Adaptive Peak Detection (adaptivemaxcog) # Adaptive Peak Detection (adaptivemaxcog)
# ---- threshold # ---- threshold
threshold_spinner = Spinner(title="Threshold", value=None) threshold_textinput = TextInput(title="Threshold")
# ---- shell # ---- shell
shell_spinner = Spinner(title="Shell", value=None, low=0) shell_textinput = TextInput(title="Shell")
# ---- steepness # ---- steepness
steepness_spinner = Spinner(title="Steepness", value=None) steepness_textinput = TextInput(title="Steepness")
# ---- duplicateDistance # ---- duplicateDistance
duplicateDistance_spinner = Spinner(title="Duplicate Distance", value=None) duplicateDistance_textinput = TextInput(title="Duplicate Distance")
# ---- maxequal # ---- maxequal
maxequal_spinner = Spinner(title="Max Equal", value=None) maxequal_textinput = TextInput(title="Max Equal")
# ---- window # ---- window
apd_window_spinner = Spinner(title="Window", value=None) aps_window_textinput = TextInput(title="Window")
# Adaptive Dynamic Mask Integration (adaptivedynamic) # Adaptive Dynamic Mask Integration (adaptivedynamic)
# ---- window # ---- window
admi_window_spinner = Spinner(title="Window", value=None) adm_window_textinput = TextInput(title="Window")
# ---- border # ---- border
border_spinner = Spinner(title="Border", value=None) border_textinput = TextInput(title="Border")
# ---- minWindow # ---- minWindow
minWindow_spinner = Spinner(title="Min Window", value=None) minWindow_textinput = TextInput(title="Min Window")
# ---- reflectionFile # ---- reflectionFile
reflectionFile_spinner = Spinner(title="Reflection File", value=None) reflectionFile_textinput = TextInput(title="Reflection File")
# ---- targetMonitor # ---- targetMonitor
targetMonitor_spinner = Spinner(title="Target Monitor", value=None) targetMonitor_textinput = TextInput(title="Target Monitor")
# ---- smoothSize # ---- smoothSize
smoothSize_spinner = Spinner(title="Smooth Size", value=None) smoothSize_textinput = TextInput(title="Smooth Size")
# ---- loop # ---- loop
loop_spinner = Spinner(title="Loop", value=None) loop_textinput = TextInput(title="Loop")
# ---- minPeakCount # ---- minPeakCount
minPeakCount_spinner = Spinner(title="Min Peak Count", value=None) minPeakCount_textinput = TextInput(title="Min Peak Count")
# ---- displacementCurve # ---- displacementCurve
displacementCurve_spinner = Spinner(title="Displacement Curve", value=None) displacementCurve_textinput = TextInput(title="Displacement Curve")
def mode_radio_button_group_callback(active): def mode_radio_button_group_callback(active):
if active == 0: if active == 0:
@ -209,23 +209,23 @@ def create():
mode_radio_button_group, mode_radio_button_group,
row( row(
column( column(
threshold_spinner, threshold_textinput,
shell_spinner, shell_textinput,
steepness_spinner, steepness_textinput,
duplicateDistance_spinner, duplicateDistance_textinput,
maxequal_spinner, maxequal_textinput,
apd_window_spinner, aps_window_textinput,
), ),
column( column(
admi_window_spinner, adm_window_textinput,
border_spinner, border_textinput,
minWindow_spinner, minWindow_textinput,
reflectionFile_spinner, reflectionFile_textinput,
targetMonitor_spinner, targetMonitor_textinput,
smoothSize_spinner, smoothSize_textinput,
loop_spinner, loop_textinput,
minPeakCount_spinner, minPeakCount_textinput,
displacementCurve_spinner, displacementCurve_textinput,
), ),
), ),
), ),