From f80ec33ae5a261dbcab901ae30f4cc802316e554 Mon Sep 17 00:00:00 2001 From: wyzula-jan Date: Tue, 19 Nov 2024 15:45:55 +0100 Subject: [PATCH] feat: add main window container widget --- bec_widgets/cli/client.py | 18 ++++++++++++++++++ .../widgets/containers/main_window/__init__.py | 0 .../containers/main_window/main_window.py | 9 +++++++++ 3 files changed, 27 insertions(+) create mode 100644 bec_widgets/widgets/containers/main_window/__init__.py create mode 100644 bec_widgets/widgets/containers/main_window/main_window.py diff --git a/bec_widgets/cli/client.py b/bec_widgets/cli/client.py index afdb8492..bd96e5ee 100644 --- a/bec_widgets/cli/client.py +++ b/bec_widgets/cli/client.py @@ -19,6 +19,7 @@ class Widgets(str, enum.Enum): BECColorMapWidget = "BECColorMapWidget" BECDockArea = "BECDockArea" BECImageWidget = "BECImageWidget" + BECMainWindow = "BECMainWindow" BECMotorMapWidget = "BECMotorMapWidget" BECMultiWaveformWidget = "BECMultiWaveformWidget" BECProgressBar = "BECProgressBar" @@ -1385,6 +1386,23 @@ class BECImageWidget(RPCBase): """ +class BECMainWindow(RPCBase): + @property + @rpc_call + def _config_dict(self) -> "dict": + """ + Get the configuration of the widget. + + Returns: + dict: The configuration of the widget. + """ + + @rpc_call + def _get_all_rpc(self) -> "dict": + """ + Get all registered RPC objects. + """ + class BECMotorMap(RPCBase): @property @rpc_call diff --git a/bec_widgets/widgets/containers/main_window/__init__.py b/bec_widgets/widgets/containers/main_window/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/bec_widgets/widgets/containers/main_window/main_window.py b/bec_widgets/widgets/containers/main_window/main_window.py new file mode 100644 index 00000000..1e5f3940 --- /dev/null +++ b/bec_widgets/widgets/containers/main_window/main_window.py @@ -0,0 +1,9 @@ +from qtpy.QtWidgets import QMainWindow + +from bec_widgets.utils import BECConnector + + +class BECMainWindow(QMainWindow, BECConnector): + def __init__(self, *args, **kwargs): + BECConnector.__init__(self, **kwargs) + QMainWindow.__init__(self, *args, **kwargs)