Skip to content

Commit fabbbba

Browse files
committed
Fix: embedded console was broken since commit 1d7e267
1 parent 189c72a commit fabbbba

1 file changed

Lines changed: 10 additions & 7 deletions

File tree

datalab/gui/main.py

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ def __init__(self, console=None, hide_on_close=False):
157157
self.imagepanel: ImagePanel | None = None
158158
self.tabwidget: QW.QTabWidget | None = None
159159
self.tabmenu: QW.QMenu | None = None
160-
self.docks: dict[AbstractPanel, QW.QDockWidget] | None = None
160+
self.docks: dict[AbstractPanel | DockableConsole, QW.QDockWidget] | None = None
161161
self.h5inputoutput = H5InputOutput(self)
162162

163163
self.openh5_action: QW.QAction | None = None
@@ -933,10 +933,10 @@ def __add_signal_image_panels(self) -> None:
933933
self.tabwidget = QW.QTabWidget()
934934
self.tabmenu = add_corner_menu(self.tabwidget)
935935
configure_menu_about_to_show(self.tabmenu, self.__update_tab_menu)
936-
cdock = self.__add_dockwidget(self.__add_signal_panel(), title=_("Signal View"))
936+
sdock = self.__add_dockwidget(self.__add_signal_panel(), title=_("Signal View"))
937937
idock = self.__add_dockwidget(self.__add_image_panel(), title=_("Image View"))
938-
self.tabifyDockWidget(cdock, idock)
939-
self.docks = {self.signalpanel: cdock, self.imagepanel: idock}
938+
self.tabifyDockWidget(sdock, idock)
939+
self.docks = {self.signalpanel: sdock, self.imagepanel: idock}
940940
self.tabwidget.currentChanged.connect(self.__tab_index_changed)
941941
self.signalpanel.SIG_OBJECT_ADDED.connect(
942942
lambda: self.set_current_panel("signal")
@@ -1076,7 +1076,9 @@ def __update_console_show_mode(self) -> None:
10761076
"""
10771077
if self.console is not None:
10781078
state = Conf.console.show_console_on_error.get()
1079-
self.console.setVisible(state)
1079+
cdock = self.docks[self.console]
1080+
if not state and cdock.isVisible():
1081+
cdock.hide()
10801082
if state:
10811083
self.console.exception_occurred.connect(self.console.show_console)
10821084
else:
@@ -1110,8 +1112,9 @@ def __setup_console(self) -> None:
11101112
self.console = DockableConsole(self, namespace=ns, message=msg, debug=DEBUG)
11111113
self.console.setMaximumBlockCount(Conf.console.max_line_count.get(5000))
11121114
self.console.go_to_error.connect(go_to_error)
1113-
console_dock = self.__add_dockwidget(self.console, _("Console"))
1114-
console_dock.hide()
1115+
cdock = self.__add_dockwidget(self.console, _("Console"))
1116+
self.docks[self.console] = cdock
1117+
cdock.hide()
11151118
self.console.interpreter.widget_proxy.sig_new_prompt.connect(
11161119
lambda txt: self.repopulate_panel_trees()
11171120
)

0 commit comments

Comments
 (0)