refactor to get rid of checkbox state-toggle workaround

This commit is contained in:
2023-01-26 18:11:07 +01:00
parent 9a96ad4f41
commit ffbdbe419a

View File

@ -85,8 +85,7 @@ class MainWindow(QMainWindow):
# Remote API calls # Remote API calls
def new_plot(self, name, cfg): def new_plot(self, name, cfg):
desc = PlotDescription(name, **cfg) desc = self.add_new_desc_to_list(name, cfg)
self.lst.set(name, desc)
if self.menu_settings.checkboxes["Open new plots"].isChecked(): if self.menu_settings.checkboxes["Open new plots"].isChecked():
if not self.mdi.findSubWindow(name): if not self.mdi.findSubWindow(name):
self.sig_make_new_plot.emit(name, desc) self.sig_make_new_plot.emit(name, desc)
@ -147,16 +146,10 @@ class MainWindow(QMainWindow):
if not fns: if not fns:
return return
cb = self.menu_settings.checkboxes["Open new plots"]
state = cb.isChecked()
cb.setChecked(False)
for fn in fns: for fn in fns:
data = read_dict(fn) data = read_dict(fn)
for k, v in data.items(): for k, v in data.items():
self.new_plot(k, v) self.add_new_desc_to_list(k, v)
cb.setChecked(state)
# Plumbing # Plumbing
@ -174,6 +167,11 @@ class MainWindow(QMainWindow):
name = " | ".join(names) name = " | ".join(names)
self.activate_or_make_subwin(MDISubMultiPlot, name, descs) self.activate_or_make_subwin(MDISubMultiPlot, name, descs)
def add_new_desc_to_list(self, name, cfg):
desc = PlotDescription(name, **cfg)
self.lst.set(name, desc)
return desc
#TODO: the following two could be methods to MDIArea? #TODO: the following two could be methods to MDIArea?