0
0
mirror of https://github.com/bec-project/bec_widgets.git synced 2025-07-14 03:31:50 +02:00

fix(cli/server): removed BECFigure.start(), the QApplication event loop is started by server.py

This commit is contained in:
2024-03-21 15:51:30 +01:00
parent 016324e71c
commit f3a96dedd7
2 changed files with 8 additions and 42 deletions

View File

@ -27,10 +27,6 @@ class BECWidgetsCLIServer:
self._heartbeat = threading.Thread(target=self.start_heartbeat, daemon=True)
self._heartbeat.start()
def start(self):
"""Start the figure window."""
self.fig.start()
def on_rpc_update(self, msg: dict, metadata: dict):
request_id = metadata.get("request_id")
try:
@ -114,8 +110,11 @@ if __name__ == "__main__": # pragma: no cover
import sys
from qtpy.QtWidgets import QApplication
from qtpy.QtWidgets import QMainWindow
app = QApplication(sys.argv)
app.setApplicationName("BEC Figure")
win = QMainWindow()
parser = argparse.ArgumentParser(description="BEC Widgets CLI Server")
parser.add_argument("--id", type=str, help="The id of the server")
@ -124,5 +123,9 @@ if __name__ == "__main__": # pragma: no cover
server = BECWidgetsCLIServer(gui_id=args.id)
# server = BECWidgetsCLIServer(gui_id="test")
server.start()
fig = server.fig
win.setCentralWidget(fig)
win.show()
sys.exit(app.exec())

View File

@ -675,43 +675,6 @@ class BECFigure(BECConnector, pg.GraphicsLayoutWidget):
widget_class=self.__class__.__name__, gui_id=self.gui_id, theme=theme
)
# def cleanup(self):
# """Cleanup the figure widget."""
# self.clear_all()
# self.clean_signal.emit()
def start(self):
import sys
app = QApplication(sys.argv)
win = QMainWindow()
win.setCentralWidget(self)
win.show()
sys.exit(app.exec_())
class BECFigureMainWindow(QMainWindow):
def __init__(self, parent=None, bec_figure=None):
super().__init__(parent)
self.figure = bec_figure
self.setCentralWidget(self.figure)
self.figure.clean_signal.connect(self.confirm_close)
self.safe_close = False
def confirm_close(self):
self.safe_close = True
def closeEvent(self, event):
self.figure.cleanup()
# self.figure.client.shutdown()
if self.safe_close == True:
print("Safe close")
event.accept()
##################################################
##################################################