Skip to content

Commit 84d3880

Browse files
committed
feat: add procedure panel to IDE
1 parent 7581260 commit 84d3880

File tree

4 files changed

+11
-9
lines changed

4 files changed

+11
-9
lines changed

bec_widgets/examples/developer_view/developer_view.py

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -51,13 +51,5 @@ def __init__(
5151
height = int(width / (16 / 9))
5252

5353
_app.resize(width, height)
54-
developer_view = DeveloperView()
55-
_app.add_view(
56-
icon="code_blocks", title="IDE", widget=developer_view, id="developer_view", exclusive=True
57-
)
5854
_app.show()
59-
# developer_view.show()
60-
# developer_view.setWindowTitle("Developer View")
61-
# developer_view.resize(1920, 1080)
62-
# developer_view.set_stretch(horizontal=[1, 3, 2], vertical=[5, 5]) #can be set during runtime
6355
sys.exit(app.exec_())

bec_widgets/examples/developer_view/developer_widget.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
from bec_widgets.utils.toolbars.toolbar import ModularToolBar
1717
from bec_widgets.widgets.containers.ads import CDockManager, CDockWidget
1818
from bec_widgets.widgets.containers.advanced_dock_area.advanced_dock_area import AdvancedDockArea
19+
from bec_widgets.widgets.control.procedure_control.procedure_panel import ProcedurePanel
1920
from bec_widgets.widgets.editors.monaco.monaco_dock import MonacoDock
2021
from bec_widgets.widgets.editors.web_console.web_console import WebConsole
2122
from bec_widgets.widgets.utility.ide_explorer.ide_explorer import IDEExplorer
@@ -111,6 +112,8 @@ def __init__(self, parent=None, **kwargs):
111112
self.monaco.signature_help.connect(
112113
lambda text: self.signature_help.setHtml(markdown_to_html(text))
113114
)
115+
self.procedure_panel = ProcedurePanel(self)
116+
114117
self._current_script_id: str | None = None
115118

116119
# Create the dock widgets
@@ -153,10 +156,14 @@ def __init__(self, parent=None, **kwargs):
153156
self.signature_dock = QtAds.CDockWidget("Signature Help", self)
154157
self.signature_dock.setWidget(self.signature_help)
155158

159+
self.procedure_dock = QtAds.CDockWidget("Procedure control", self)
160+
self.procedure_dock.setWidget(self.procedure_panel)
161+
156162
area_right = self.dock_manager.addDockWidget(
157163
QtAds.DockWidgetArea.RightDockWidgetArea, self.plotting_ads_dock
158164
)
159165
self.dock_manager.addDockWidgetTabToArea(self.signature_dock, area_right)
166+
self.dock_manager.addDockWidgetTabToArea(self.procedure_dock, area_right)
160167

161168
# Connect editor signals
162169
self.explorer.file_open_requested.connect(self._open_new_file)

bec_widgets/widgets/control/procedure_control/procedure_control.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -212,6 +212,7 @@ def update(self, queue: str, msgs: list[ProcedureExecutionMessage]):
212212
self._queues[queue] = QueueItem(
213213
self, [queue], _QueueConfig(base=self._config, queue=queue, msgs=msgs)
214214
)
215+
self._queues[queue].setExpanded(True)
215216

216217

217218
class ProcedureControl(BECWidget, QWidget):
@@ -266,13 +267,15 @@ def _setup_ui(self):
266267
config(actions={"abort"}, child_actions={"abort"}, active_queue=True),
267268
)
268269
self._content.addTopLevelItem(self._active_queues)
270+
self._active_queues.setExpanded(True)
269271

270272
self._unhandled_queues = CategoryItem(
271273
self._content,
272274
["unhandled queues"],
273275
config(actions={"delete"}, child_actions={"delete", "resubmit"}),
274276
)
275277
self._content.addTopLevelItem(self._unhandled_queues)
278+
self._active_queues.setExpanded(True)
276279

277280
def _init_queues(self):
278281
for queue in self._helper.get.active_and_pending_queue_names():

bec_widgets/widgets/control/procedure_control/procedure_panel.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ def __init__(self, parent=None, **kwargs):
4242

4343
for dock in self.dock_manager.dockWidgets():
4444
dock.setFeature(CDockWidget.DockWidgetFeature.DockWidgetClosable, False)
45-
dock.setFeature(CDockWidget.DockWidgetFeature.DockWidgetFloatable, True)
45+
dock.setFeature(CDockWidget.DockWidgetFeature.DockWidgetFloatable, False)
4646
dock.setFeature(CDockWidget.DockWidgetFeature.DockWidgetMovable, False)
4747

4848
self.procedure_control.queue_selected.connect(self.procedure_logs.set_queue)

0 commit comments

Comments
 (0)