Skip to content
Snippets Groups Projects
Commit 814e5115 authored by Christoph Schmidt's avatar Christoph Schmidt
Browse files

Added new Type FieldSelectableList that allows to define a list that can be...

Added new Type FieldSelectableList that allows to define a list that can be selected using Combo Boxes
parent 644d321a
Branches
Tags
No related merge requests found
import logging
import sys
import time
from PySide6 import QtWidgets
from PySide6.QtWidgets import QApplication, QMainWindow, QWidget, QTreeWidget
......@@ -13,9 +14,9 @@ if __name__ == "__main__":
# setup the logging module
config = ApplicationConfig(internal_log_level=logging.INFO)
print(config.load('./configs/ApplicationConfig.yaml'))
time.sleep(1)
#config.autosave(enable=True, path='./configs_autosave')
print(config.load('./configs/ApplicationConfig.yaml'))
#print(config.wafer_version)
#config.wafer_version.get()
#config.wafer_number.get()
......@@ -45,9 +46,9 @@ if __name__ == "__main__":
grd.addWidget(btn_save, 4, 0)
window.setCentralWidget(wdg)
#print(config.save('config.yaml'))
#print(config.load('config.yaml'))
window.show()
sys.exit(app.exec())
......
......@@ -19,7 +19,8 @@ class FieldSelectableList(ch.Field):
def get_list(self) -> list:
return list(self._value)
def get_current_index(self) -> list:
return self._value.selected_index
@property
def value(self):
return self._value[self._value.selected_index]
......
......@@ -24,9 +24,11 @@ class FieldViewSelectableList(ch.FieldView):
"""
"""
self.ui_edit_fields: list(QComboBox)
#self.ui_edit_fields: list(QComboBox)
if view is None:
cb = QComboBox()
self.parent_field.logger.info(f"{self.parent_field}: *** NEW FieldViewSelectableList.ui_field {cb}")
else:
cb: QComboBox = view
......@@ -35,6 +37,7 @@ class FieldViewSelectableList(ch.FieldView):
cb.setToolTip(f"({self.parent_field.name}) {self.parent_field._description}")
self.ui_edit_fields.append(cb)
self.ui_edit_fields[-1].setCurrentIndex(self.parent_field.get_current_index())
self.ui_edit_fields[-1].currentIndexChanged.connect(self._on_index_changed)
#self.ui_edit_fields[-1].editingFinished.connect(self._on_edited_finished)
# new
......@@ -44,8 +47,11 @@ class FieldViewSelectableList(ch.FieldView):
self.parent_field.set(int(value))
def _on_value_changed(self, value):
self.parent_field.logger.info(f"{self.parent_field}: FieldViewSelectableList._on_value_changed {value}")
self.parent_field.logger.info(f"{self.parent_field}: FieldViewSelectableList._on_value_changed {value}"
f"-> len {len(self.ui_edit_fields)}")
for edit in self.ui_edit_fields:
edit: QComboBox
self.parent_field.logger.info(f"{edit}: Setting index to {value}")
edit.setCurrentIndex(value)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment