- updated the drawing of the workspace such that the application overall start time is improved and after first turn on of the workspace, toggling it will have no performance penalty

This commit is contained in:
Marius Stanciu
2019-11-27 15:55:31 +02:00
parent 58f24cbb37
commit 1f63a16a24
4 changed files with 86 additions and 139 deletions

View File

@@ -1799,7 +1799,7 @@ class App(QtCore.QObject):
self.ui.menuview_toggle_grid.triggered.connect(self.on_toggle_grid)
self.ui.menuview_toggle_grid_lines.triggered.connect(self.on_toggle_grid_lines)
self.ui.menuview_toggle_axis.triggered.connect(self.on_toggle_axis)
self.ui.menuview_toggle_workspace.triggered.connect(self.on_workspace_menu)
self.ui.menuview_toggle_workspace.triggered.connect(self.on_workspace_toggle)
self.ui.menutoolshell.triggered.connect(self.on_toggle_shell)
@@ -6669,24 +6669,29 @@ class App(QtCore.QObject):
self.delete_selection_shape()
def on_workspace_modified(self):
self.save_defaults(silent=True)
self.plotcanvas.draw_workspace(pagesize=self.defaults['global_workspaceT'])
# self.save_defaults(silent=True)
self.defaults_read_form()
self.plotcanvas.draw_workspace(workspace_size=self.defaults['global_workspaceT'])
def on_workspace(self):
self.report_usage("on_workspace()")
log.debug("on_workspace()")
if self.ui.general_defaults_form.general_gui_group.workspace_cb.isChecked():
self.plotcanvas.restore_workspace()
if self.ui.general_defaults_form.general_gui_group.workspace_cb.get_value():
self.plotcanvas.draw_workspace(workspace_size=self.defaults['global_workspaceT'])
else:
self.plotcanvas.delete_workspace()
self.defaults_read_form()
# self.save_defaults(silent=True)
self.save_defaults(silent=True)
def on_workspace_menu(self):
if self.ui.general_defaults_form.general_gui_group.workspace_cb.isChecked():
self.ui.general_defaults_form.general_gui_group.workspace_cb.setChecked(False)
else:
self.ui.general_defaults_form.general_gui_group.workspace_cb.setChecked(True)
def on_workspace_toggle(self):
state = False if self.ui.general_defaults_form.general_gui_group.workspace_cb.get_value() else True
try:
self.ui.general_defaults_form.general_gui_group.workspace_cb.stateChanged.disconnect(self.on_workspace)
except TypeError:
pass
self.ui.general_defaults_form.general_gui_group.workspace_cb.set_value(state)
self.ui.general_defaults_form.general_gui_group.workspace_cb.stateChanged.connect(self.on_workspace)
self.on_workspace()
def on_layout(self, index=None, lay=None):