From 1f35081fe308456dbaffceceb3ab9c38c342d498 Mon Sep 17 00:00:00 2001 From: payno <henri.payno@esrf.fr> Date: Mon, 24 Jul 2023 10:04:44 +0200 Subject: [PATCH] orangecontrib: extend 'multiple=True' to more widgets --- .../tomwer/widgets/reconstruction/AxisOW.py | 9 +++++++-- .../widgets/reconstruction/DarkRefAndCopyOW.py | 15 ++++++++++++--- .../tomwer/widgets/reconstruction/NabuOW.py | 4 ++-- .../tomwer/widgets/visualization/DataViewerOW.py | 8 ++++++-- .../tomwer/widgets/visualization/RadioStackOW.py | 8 ++++++-- .../tomwer/widgets/visualization/SliceStackOW.py | 8 ++++++-- .../widgets/visualization/VolumeViewerOW.py | 4 ++-- 7 files changed, 41 insertions(+), 15 deletions(-) diff --git a/orangecontrib/tomwer/widgets/reconstruction/AxisOW.py b/orangecontrib/tomwer/widgets/reconstruction/AxisOW.py index 1738caa0d6..3cabd08196 100644 --- a/orangecontrib/tomwer/widgets/reconstruction/AxisOW.py +++ b/orangecontrib/tomwer/widgets/reconstruction/AxisOW.py @@ -95,7 +95,12 @@ class AxisOW(SuperviseOW, WidgetLongProcessing): _ewoks_default_inputs = Setting({"data": None, "axis_params": None, "gui": None}) class Inputs: - data = Input(name="data", type=TomwerScanBase, doc="one scan to be process") + data = Input( + name="data", + type=TomwerScanBase, + doc="one scan to be process", + multiple=True, + ) data_recompute_axis = Input( name="change recons params", type=_TomwerBaseDock, @@ -406,7 +411,7 @@ class AxisOW(SuperviseOW, WidgetLongProcessing): return self._widget.isModeLock() @Inputs.data - def new_data_in(self, scan): + def new_data_in(self, scan, *args, **kwargs): if scan is None: return scan_ = copy.copy(scan) diff --git a/orangecontrib/tomwer/widgets/reconstruction/DarkRefAndCopyOW.py b/orangecontrib/tomwer/widgets/reconstruction/DarkRefAndCopyOW.py index 19af59ae43..d143e659a9 100644 --- a/orangecontrib/tomwer/widgets/reconstruction/DarkRefAndCopyOW.py +++ b/orangecontrib/tomwer/widgets/reconstruction/DarkRefAndCopyOW.py @@ -81,14 +81,23 @@ class DarkRefAndCopyOW(SuperviseOW, WidgetLongProcessing): ) class Inputs: - data = Input(name="data", type=TomwerScanBase, doc="one scan to be process") + data = Input( + name="data", + type=TomwerScanBase, + doc="one scan to be process", + multiple=True, + ) reduced_darks = Input( - name="reduced dark(s)", type=dict, doc="dict containing reduced dark(s)" + name="reduced dark(s)", + type=dict, + doc="dict containing reduced dark(s)", + multiple=False, ) reduced_flats = Input( name="reduced flat(s)", type=dict, doc="dict of containing reduced flat(s)", + multiple=False, ) class Outputs: @@ -174,7 +183,7 @@ class DarkRefAndCopyOW(SuperviseOW, WidgetLongProcessing): return super().__new__(cls, *args, **kwargs) @Inputs.data - def process(self, scanID): + def process(self, scanID, *args, **kwargs): if scanID is None: return assert isinstance(scanID, TomwerScanBase) diff --git a/orangecontrib/tomwer/widgets/reconstruction/NabuOW.py b/orangecontrib/tomwer/widgets/reconstruction/NabuOW.py index 12a464f08f..d4633d4e9d 100644 --- a/orangecontrib/tomwer/widgets/reconstruction/NabuOW.py +++ b/orangecontrib/tomwer/widgets/reconstruction/NabuOW.py @@ -89,7 +89,7 @@ class NabuOW(WidgetLongProcessing, SuperviseOW): type=TomwerScanBase, doc="one scan to be process", default=True, - multiple=False, + multiple=True, ) cluster_in = Input( name="cluster_config", @@ -183,7 +183,7 @@ class NabuOW(WidgetLongProcessing, SuperviseOW): return super().__new__(cls, *args, **kwargs) @Inputs.data - def process(self, scan: TomwerScanBase): + def process(self, scan, *args, **kwargs): assert isinstance(scan, (TomwerScanBase, type(None))) if scan is None: return diff --git a/orangecontrib/tomwer/widgets/visualization/DataViewerOW.py b/orangecontrib/tomwer/widgets/visualization/DataViewerOW.py index ead8ba90d4..01ec56473e 100644 --- a/orangecontrib/tomwer/widgets/visualization/DataViewerOW.py +++ b/orangecontrib/tomwer/widgets/visualization/DataViewerOW.py @@ -66,7 +66,11 @@ class DataViewerOW(widget.OWBaseWidget, openclass=True): _viewer_config = settings.Setting(dict()) class Inputs: - data = Input(name="data", type=TomwerScanBase) + data = Input( + name="data", + type=TomwerScanBase, + multiple=True, + ) def __init__(self, parent=None): super().__init__(parent) @@ -107,7 +111,7 @@ class DataViewerOW(widget.OWBaseWidget, openclass=True): msg.exec_() @Inputs.data - def addScan(self, scan): + def addScan(self, scan, *args, **kwargs): if scan is None: return self.viewer.setScan(scan) diff --git a/orangecontrib/tomwer/widgets/visualization/RadioStackOW.py b/orangecontrib/tomwer/widgets/visualization/RadioStackOW.py index a91251f9a6..40a5020cf9 100644 --- a/orangecontrib/tomwer/widgets/visualization/RadioStackOW.py +++ b/orangecontrib/tomwer/widgets/visualization/RadioStackOW.py @@ -66,7 +66,11 @@ class RadioStackOW(widget.OWBaseWidget, openclass=True): resizing_enabled = True class Inputs: - data = Input(name="data", type=TomwerScanBase) + data = Input( + name="data", + type=TomwerScanBase, + multiple=True, + ) def __init__(self, parent=None): widget.OWBaseWidget.__init__(self, parent) @@ -75,7 +79,7 @@ class RadioStackOW(widget.OWBaseWidget, openclass=True): self._box.layout().addWidget(self._viewer) @Inputs.data - def addLeafScan(self, scanID): + def addLeafScan(self, scanID, *args, **kwargs): if scanID is None: return self._viewer.addLeafScan(scanID) diff --git a/orangecontrib/tomwer/widgets/visualization/SliceStackOW.py b/orangecontrib/tomwer/widgets/visualization/SliceStackOW.py index 08dd4a4a1e..66bc9e6b1e 100644 --- a/orangecontrib/tomwer/widgets/visualization/SliceStackOW.py +++ b/orangecontrib/tomwer/widgets/visualization/SliceStackOW.py @@ -81,7 +81,11 @@ class SlicesStackOW(widget.OWBaseWidget, openclass=True): resizing_enabled = True class Inputs: - data = Input(name="data", type=TomwerScanBase) + data = Input( + name="data", + type=TomwerScanBase, + multiple=True, + ) def __init__(self, parent=None): widget.OWBaseWidget.__init__(self, parent) @@ -90,7 +94,7 @@ class SlicesStackOW(widget.OWBaseWidget, openclass=True): self._box.layout().addWidget(self._viewer) @Inputs.data - def addLeafScan(self, scanID): + def addLeafScan(self, scanID, *args, **kwargs): if scanID is None: return self._viewer.addLeafScan(scanID) diff --git a/orangecontrib/tomwer/widgets/visualization/VolumeViewerOW.py b/orangecontrib/tomwer/widgets/visualization/VolumeViewerOW.py index a19aee8386..ce5be35fc1 100644 --- a/orangecontrib/tomwer/widgets/visualization/VolumeViewerOW.py +++ b/orangecontrib/tomwer/widgets/visualization/VolumeViewerOW.py @@ -64,7 +64,7 @@ class VolumeViewerOW(widget.OWBaseWidget, openclass=True): class Inputs: data = Input(name="data", type=TomwerScanBase) - volume = Input(name="volume", type=TomwerVolumeBase) + volume = Input(name="volume", type=TomwerVolumeBase, multiple=True) def __init__(self, parent=None): super().__init__(parent) @@ -73,7 +73,7 @@ class VolumeViewerOW(widget.OWBaseWidget, openclass=True): self._layout.addWidget(self.viewer) @Inputs.data - def addScan(self, scan): + def addScan(self, scan, *args, **kwargs): if scan is None: return self.viewer.setScan(scan) -- GitLab