use single signal for creating new subwins
This commit is contained in:
@ -22,8 +22,7 @@ DESC_TYPE_TO_MDI_SUB_TYPE = {
|
||||
|
||||
class MainWindow(QMainWindow):
|
||||
|
||||
sig_make_new_plot = pyqtSignal(str, Description)
|
||||
sig_make_new_image = pyqtSignal(str, Description)
|
||||
sig_make_new_subwin = pyqtSignal(str, Description)
|
||||
|
||||
def __init__(self, *args, title="grum", host="localhost", port=8000, offline=False, add_examples=False, window_mode=MDIWindowMode.MULTI, **kwargs):
|
||||
super().__init__(*args, **kwargs)
|
||||
@ -97,8 +96,7 @@ class MainWindow(QMainWindow):
|
||||
rst.server.register_function(self.set_data)
|
||||
rst.server.register_function(self.new_image)
|
||||
|
||||
self.sig_make_new_plot.connect(self.on_make_new_plot)
|
||||
self.sig_make_new_image.connect(self.on_make_new_image)
|
||||
self.sig_make_new_subwin.connect(self.on_make_new_subwin)
|
||||
|
||||
|
||||
def keyPressEvent(self, event):
|
||||
@ -117,7 +115,7 @@ class MainWindow(QMainWindow):
|
||||
desc = self.add_new_desc_to_list(PlotDescription, name, cfg)
|
||||
if self.menu_settings.checkboxes["Open new plots"].isChecked():
|
||||
if not self.mdi.findSubWindow(name):
|
||||
self.sig_make_new_plot.emit(name, desc)
|
||||
self.sig_make_new_subwin.emit(name, desc)
|
||||
|
||||
def append_data(self, name, point):
|
||||
"""
|
||||
@ -161,16 +159,15 @@ class MainWindow(QMainWindow):
|
||||
if sub:
|
||||
sub.pw.setImage(desc.data) #TODO lacks the list sync
|
||||
else:
|
||||
self.sig_make_new_image.emit(name, desc)
|
||||
self.sig_make_new_subwin.emit(name, desc)
|
||||
|
||||
|
||||
# Signal callbacks
|
||||
|
||||
def on_make_new_plot(self, name, desc):
|
||||
self.make_subwin(MDISubPlot, name, desc)
|
||||
|
||||
def on_make_new_image(self, name, desc):
|
||||
self.make_subwin(MDISubImage, name, desc)
|
||||
def on_make_new_subwin(self, name, desc):
|
||||
DescType = type(desc)
|
||||
MDISubType = DESC_TYPE_TO_MDI_SUB_TYPE[DescType]
|
||||
self.make_subwin(MDISubType, name, desc)
|
||||
|
||||
def on_dclick_list_item(self, item):
|
||||
self.plot_single_item(item)
|
||||
|
Reference in New Issue
Block a user