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

WIP jupyter console window wip testing waveform

This commit is contained in:
2025-04-09 11:15:09 +02:00
parent a81f3a0d3f
commit 5421b39fd9

View File

@ -34,31 +34,34 @@ class JupyterConsoleWindow(QWidget): # pragma: no cover:
super().__init__(parent) super().__init__(parent)
self._init_ui() self._init_ui()
self.app = QApplication.instance()
# console push # console push
if self.console.inprocess is True: if self.console.inprocess is True:
self.console.kernel_manager.kernel.shell.push( self.console.kernel_manager.kernel.shell.push(
{ {
"np": np, "np": np,
"app": self.app,
"pg": pg, "pg": pg,
"wh": wh, "wh": wh,
"dock_area": self.dock_area, "dock_area": self.dock_area,
"dock_1": self.dock_1, "dock_1": self.dock_1,
"dock_2": self.dock_2,
"mm": self.mm,
"lm": self.lm,
"btn1": self.btn1,
"btn2": self.btn2,
"btn3": self.btn3,
"btn4": self.btn4,
"btn5": self.btn5,
"btn6": self.btn6,
"pb": self.pb,
"pi": self.pi,
"wf": self.wf, "wf": self.wf,
"scatter": self.scatter, # "dock_2": self.dock_2,
"scatter_mi": self.scatter, # "mm": self.mm,
"mwf": self.mwf, # "lm": self.lm,
# "btn1": self.btn1,
# "btn2": self.btn2,
# "btn3": self.btn3,
# "btn4": self.btn4,
# "btn5": self.btn5,
# "btn6": self.btn6,
# "pb": self.pb,
# "pi": self.pi,
# "wf": self.wf,
# "scatter": self.scatter,
# "scatter_mi": self.scatter,
# "mwf": self.mwf,
} }
) )
@ -71,6 +74,11 @@ class JupyterConsoleWindow(QWidget): # pragma: no cover:
tab_widget = QTabWidget(splitter) tab_widget = QTabWidget(splitter)
group_box = QGroupBox("Jupyter Console", splitter)
group_box_layout = QVBoxLayout(group_box)
self.console = BECJupyterConsole(inprocess=True)
group_box_layout.addWidget(self.console)
first_tab = QWidget() first_tab = QWidget()
first_tab_layout = QVBoxLayout(first_tab) first_tab_layout = QVBoxLayout(first_tab)
self.dock_area = BECDockArea(gui_id="dock") self.dock_area = BECDockArea(gui_id="dock")
@ -78,66 +86,63 @@ class JupyterConsoleWindow(QWidget): # pragma: no cover:
tab_widget.addTab(first_tab, "Dock Area") tab_widget.addTab(first_tab, "Dock Area")
self._init_dock() self._init_dock()
third_tab = QWidget() # third_tab = QWidget()
third_tab_layout = QVBoxLayout(third_tab) # third_tab_layout = QVBoxLayout(third_tab)
self.lm = LayoutManagerWidget() # self.lm = LayoutManagerWidget()
third_tab_layout.addWidget(self.lm) # third_tab_layout.addWidget(self.lm)
tab_widget.addTab(third_tab, "Layout Manager Widget") # tab_widget.addTab(third_tab, "Layout Manager Widget")
#
fourth_tab = QWidget() # fourth_tab = QWidget()
fourth_tab_layout = QVBoxLayout(fourth_tab) # fourth_tab_layout = QVBoxLayout(fourth_tab)
self.pb = PlotBase() # self.pb = PlotBase()
self.pi = self.pb.plot_item # self.pi = self.pb.plot_item
fourth_tab_layout.addWidget(self.pb) # fourth_tab_layout.addWidget(self.pb)
tab_widget.addTab(fourth_tab, "PlotBase") # tab_widget.addTab(fourth_tab, "PlotBase")
#
tab_widget.setCurrentIndex(3) # tab_widget.setCurrentIndex(3)
#
group_box = QGroupBox("Jupyter Console", splitter) #
group_box_layout = QVBoxLayout(group_box) #
self.console = BECJupyterConsole(inprocess=True) # # Some buttons for layout testing
group_box_layout.addWidget(self.console) # self.btn1 = QPushButton("Button 1")
# self.btn2 = QPushButton("Button 2")
# Some buttons for layout testing # self.btn3 = QPushButton("Button 3")
self.btn1 = QPushButton("Button 1") # self.btn4 = QPushButton("Button 4")
self.btn2 = QPushButton("Button 2") # self.btn5 = QPushButton("Button 5")
self.btn3 = QPushButton("Button 3") # self.btn6 = QPushButton("Button 6")
self.btn4 = QPushButton("Button 4") #
self.btn5 = QPushButton("Button 5") # fifth_tab = QWidget()
self.btn6 = QPushButton("Button 6") # fifth_tab_layout = QVBoxLayout(fifth_tab)
# self.wf = Waveform()
fifth_tab = QWidget() # fifth_tab_layout.addWidget(self.wf)
fifth_tab_layout = QVBoxLayout(fifth_tab) # tab_widget.addTab(fifth_tab, "Waveform Next Gen")
self.wf = Waveform() # tab_widget.setCurrentIndex(4)
fifth_tab_layout.addWidget(self.wf) #
tab_widget.addTab(fifth_tab, "Waveform Next Gen") # seventh_tab = QWidget()
tab_widget.setCurrentIndex(4) # seventh_tab_layout = QVBoxLayout(seventh_tab)
# self.scatter = ScatterWaveform()
seventh_tab = QWidget() # self.scatter_mi = self.scatter.main_curve
seventh_tab_layout = QVBoxLayout(seventh_tab) # self.scatter.plot("samx", "samy", "bpm4i")
self.scatter = ScatterWaveform() # seventh_tab_layout.addWidget(self.scatter)
self.scatter_mi = self.scatter.main_curve # tab_widget.addTab(seventh_tab, "Scatter Waveform")
self.scatter.plot("samx", "samy", "bpm4i") # tab_widget.setCurrentIndex(6)
seventh_tab_layout.addWidget(self.scatter) #
tab_widget.addTab(seventh_tab, "Scatter Waveform") # eighth_tab = QWidget()
tab_widget.setCurrentIndex(6) # eighth_tab_layout = QVBoxLayout(eighth_tab)
# self.mm = MotorMap()
eighth_tab = QWidget() # eighth_tab_layout.addWidget(self.mm)
eighth_tab_layout = QVBoxLayout(eighth_tab) # tab_widget.addTab(eighth_tab, "Motor Map")
self.mm = MotorMap() # tab_widget.setCurrentIndex(7)
eighth_tab_layout.addWidget(self.mm) #
tab_widget.addTab(eighth_tab, "Motor Map") # ninth_tab = QWidget()
tab_widget.setCurrentIndex(7) # ninth_tab_layout = QVBoxLayout(ninth_tab)
# self.mwf = MultiWaveform()
ninth_tab = QWidget() # ninth_tab_layout.addWidget(self.mwf)
ninth_tab_layout = QVBoxLayout(ninth_tab) # tab_widget.addTab(ninth_tab, "MultiWaveform")
self.mwf = MultiWaveform() # tab_widget.setCurrentIndex(0)
ninth_tab_layout.addWidget(self.mwf) #
tab_widget.addTab(ninth_tab, "MultiWaveform") # # add stuff to the new Waveform widget
tab_widget.setCurrentIndex(0) # self._init_waveform()
# add stuff to the new Waveform widget
self._init_waveform()
self.setWindowTitle("Jupyter Console Window") self.setWindowTitle("Jupyter Console Window")
@ -146,9 +151,9 @@ class JupyterConsoleWindow(QWidget): # pragma: no cover:
self.wf.plot(y_name="bpm3a", y_entry="bpm3a", dap="GaussianModel") self.wf.plot(y_name="bpm3a", y_entry="bpm3a", dap="GaussianModel")
def _init_dock(self): def _init_dock(self):
self.dock_1 = self.dock_area.new(name="dock_0", widget="DarkModeButton") self.dock_1 = self.dock_area.new(name="dock_0")
self.dock_1.new(widget="DarkModeButton") self.wf = self.dock_1.new(widget="Waveform")
self.dock_2 = self.dock_area.new(widget="DarkModeButton") # self.dock_2 = self.dock_area.new(widget="DarkModeButton")
def closeEvent(self, event): def closeEvent(self, event):
"""Override to handle things when main window is closed.""" """Override to handle things when main window is closed."""