GUI: main_window.py - added logdock from logpanel and enabled logging

This commit is contained in:
2025-10-30 11:05:02 +01:00
parent 9a91942223
commit 4c8414cee9
+17 -1
View File
@@ -13,8 +13,10 @@ from PySide6.QtWidgets import (
from aaredaqlib.coordinate import Coordinate, SmargonCoordinate
from aaredaqlib.diffraction_geometry import DiffractionGeometry
from aaredaqlib.logger_config import setup_logger
from aaredaqlib.models import SampleShortInfoList, TokenData, DAQStatusModel, BeamlineStateEnum
from aaredaqlib.sample_geometry import SampleGeometryModel
from aaregui.panels.LogPanel import LogDock
from aaregui.panels.beamline_controls import BeamlineControls
from aaregui.panels.data_collection_settings import DataCollectionSettings
@@ -35,6 +37,7 @@ from aaregui.widgets.no_wheel_scroll_area import NoWheelScrollArea
from aaregui.widgets.status_bar import StatusBar
from aaregui.widgets.video_image import VideoGraphicsView
logger = setup_logger(__name__)
class MainWindow(QMainWindow):
sample_geometry = Signal(SampleGeometryModel)
@@ -53,7 +56,7 @@ class MainWindow(QMainWindow):
# Decode the JWT without signature verification
self.__decoded_token = TokenData(**jwt.decode(token, options={"verify_signature": False}))
print(self.__decoded_token)
logger.debug(self.__decoded_token)
self.setStyleSheet("background-color: rgb(216, 228, 253);")
@@ -162,6 +165,12 @@ class MainWindow(QMainWindow):
self.addDockWidget(Qt.DockWidgetArea.RightDockWidgetArea, self.face_panel_dock)
self.face_panel_dock.hide()
# Create and add the dock to your main window
self.log_dock = LogDock("Console Log", self)
self.addDockWidget(Qt.BottomDockWidgetArea, self.log_dock)
self.log_dock.attach_logger("")
self.log_dock.hide()
self.setCentralWidget(top_widget)
self.setWindowTitle("AareGUI")
@@ -353,6 +362,13 @@ class MainWindow(QMainWindow):
self.face_panel_dock.visibilityChanged.connect(show_face_panel_action.setChecked)
view_menu.addAction(show_face_panel_action)
show_log_action = QAction("Show Log", self)
show_log_action.setCheckable(True)
show_log_action.setChecked(False)
show_log_action.triggered.connect(lambda checked: self.log_dock.setVisible(checked))
self.log_dock.visibilityChanged.connect(show_log_action.setChecked)
view_menu.addAction(show_log_action)
help_menu = menu_bar.addMenu("Help")
about_action = QAction("About", self) # Action for 'About'
about_action.triggered.connect(self.show_about_dialog)