From daf6ea0159c9ffc7b53bb7ae6b9abc16a302972c Mon Sep 17 00:00:00 2001 From: Mathias Guijarro Date: Thu, 21 Nov 2024 12:24:55 +0100 Subject: [PATCH] feat(server): add main window, with proper gui_id derived from given id --- bec_widgets/cli/server.py | 9 ++++++--- tests/end-2-end/test_rpc_register_e2e.py | 4 ++-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/bec_widgets/cli/server.py b/bec_widgets/cli/server.py index 4a1f02bd..41a7ff5e 100644 --- a/bec_widgets/cli/server.py +++ b/bec_widgets/cli/server.py @@ -17,6 +17,7 @@ from bec_widgets.utils import BECDispatcher from bec_widgets.utils.bec_connector import BECConnector from bec_widgets.widgets.containers.dock import BECDockArea from bec_widgets.widgets.containers.figure import BECFigure +from bec_widgets.widgets.containers.main_window.main_window import BECMainWindow messages = lazy_import("bec_lib.messages") logger = bec_logger.logger @@ -176,7 +177,7 @@ def main(): from qtpy.QtCore import QSize from qtpy.QtGui import QIcon - from qtpy.QtWidgets import QApplication, QMainWindow + from qtpy.QtWidgets import QApplication import bec_widgets @@ -222,11 +223,13 @@ def main(): ) app.setWindowIcon(icon) - win = QMainWindow() + server = _start_server(args.id, gui_class, args.config) + + win = BECMainWindow(gui_id=f"{server.gui_id}:window") win.setAttribute(Qt.WA_ShowWithoutActivating) win.setWindowTitle("BEC Widgets") - server = _start_server(args.id, gui_class, args.config) + RPCRegister().add_rpc(win) gui = server.gui win.setCentralWidget(gui) diff --git a/tests/end-2-end/test_rpc_register_e2e.py b/tests/end-2-end/test_rpc_register_e2e.py index 35509a02..17dfa0a8 100644 --- a/tests/end-2-end/test_rpc_register_e2e.py +++ b/tests/end-2-end/test_rpc_register_e2e.py @@ -24,7 +24,7 @@ def test_rpc_register_list_connections(rpc_server_figure): } curves_expected.update({curve._gui_id: type(curve).__name__ for curve in curve_1D.curves}) curves_expected.update({curve._gui_id: type(curve).__name__ for curve in curve_2D.curves}) - fig_expected = {fig._rpc_id: type(fig).__name__} + fig_expected = {fig._rpc_id: type(fig).__name__, fig._rpc_id + ":window": "BECMainWindow"} image_item_expected = { fig.widgets[im._rpc_id].images[0]._rpc_id: type(fig.widgets[im._rpc_id].images[0]).__name__ } @@ -36,5 +36,5 @@ def test_rpc_register_list_connections(rpc_server_figure): **image_item_expected, } - assert len(all_connections) == 8 + assert len(all_connections) == 9 assert all_connections == all_connections_expected