Skip to content
Snippets Groups Projects
Commit 8a22ae13 authored by payno's avatar payno
Browse files

EditableOrderedTomoObjWidget: update '_callbackAddTomoObj' API to return the...

EditableOrderedTomoObjWidget: update '_callbackAddTomoObj' API to return the list of object returned
parent 4106b80d
Branches fix_1404
No related tags found
No related merge requests found
......@@ -361,7 +361,7 @@ class EditableOrderedTomoObjWidget(AxisOrderedTomoObjWidget):
[self._tomoObjsTableView.model().getTomoObj(item) for item in selection]
)
def _callbackAddTomoObj(self):
def _callbackAddTomoObj(self) -> tuple[TomwerObject]:
dialog = qt.QFileDialog()
dialog.setFileMode(qt.QFileDialog.ExistingFiles)
dialog.setNameFilters(
......@@ -372,9 +372,9 @@ class EditableOrderedTomoObjWidget(AxisOrderedTomoObjWidget):
if not dialog.exec_():
dialog.close()
return
return ()
elif len(dialog.selectedFiles()) == 0:
return
return ()
else:
tomo_objs = []
for file in dialog.selectedFiles():
......@@ -386,6 +386,7 @@ class EditableOrderedTomoObjWidget(AxisOrderedTomoObjWidget):
tomo_objs.extend(new_objs)
for tomo_obj in tomo_objs:
self.addTomoObj(tomo_obj=tomo_obj, trigger_callbacks=True)
return tuple(tomo_objs)
def _callbackRemoveSelectedTomoObj(self):
obj_to_remove = self.getSelectedTomoObjs()
......
......@@ -362,8 +362,10 @@ class _TomoObjPosition(qt.QWidget):
def _positionChanged(self):
self._valueChanged(self._spinBox.value())
def setValue(self, value: float) -> None:
def setValue(self, value: float, emit_editing_finished: bool = False) -> None:
self._spinBox.setValue(value)
if emit_editing_finished:
self._spinBox.editingFinished.emit()
self.__lastValue = value
def getValue(self) -> float:
......
......@@ -69,10 +69,10 @@ def test_ZStitchingWindow(
)
window._editTomoObjFirstAxisPositionsWidget.setEditionMode("free")
widget_tomo_obj_0.setValue(10)
widget_tomo_obj_0.setValue(10, emit_editing_finished=True)
assert window.getConfiguration()["stitching"]["axis_0_pos_px"] == [10, 0, -90]
window._editTomoObjFirstAxisPositionsWidget.setEditionMode("downstream")
widget_tomo_obj_0.setValue(30)
widget_tomo_obj_0.setValue(30, emit_editing_finished=True)
assert window.getConfiguration()["stitching"]["axis_0_pos_px"] == [30, 20, -70]
window._editTomoObjFirstAxisPositionsWidget.setEditionMode("upstream")
widget_tomo_obj_2 = (
......@@ -80,7 +80,7 @@ def test_ZStitchingWindow(
scans[2].get_identifier().to_str()
]
)
widget_tomo_obj_2.setValue(-120)
widget_tomo_obj_2.setValue(-120, emit_editing_finished=True)
assert window.getConfiguration()["stitching"]["axis_0_pos_px"] == [-20, -30, -120]
# test reset positions to initial positions
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment