def close(self, warn=True): if self._closed: return if warn and not self._confirm_close(): return self._warn_close = False if getattr(self, '_mdi_wrapper', None) is not None: self._mdi_wrapper.close() self._mdi_wrapper = None else: try: QtWidgets.QMainWindow.close(self) except RuntimeError: # In some cases the above can raise a "wrapped C/C++ object of # type ... has been deleted" error, in which case we can just # ignore and carry on. pass ViewerBase.close(self) # We tell the toolbar to do cleanup to make sure we get rid of any # circular references if self.toolbar: self.toolbar.cleanup() self._warn_close = True self._closed = True
def __init__(self, session, parent=None): """ :type session: :class:`~glue.core.Session` """ QtWidgets.QMainWindow.__init__(self, parent) ViewerBase.__init__(self, session) self.setWindowIcon(get_qapp().windowIcon()) self._view = LayerArtistWidget( layer_style_widget_cls=self._layer_style_widget_cls, hub=session.hub) self._view.layer_list.setModel(self._layer_artist_container.model) self._tb_vis = {} # store whether toolbars are enabled self.setAttribute(Qt.WA_DeleteOnClose) self.setAcceptDrops(True) self.setAnimated(False) self.toolbar = None self._toolbars = [] self._warn_close = True self.setContentsMargins(2, 2, 2, 2) self._mdi_wrapper = None # GlueMdiSubWindow that self is embedded in self.statusBar().setStyleSheet("QStatusBar{font-size:10px}") # close window when last plot layer deleted if self._close_on_last_layer_removed: self._layer_artist_container.on_empty( lambda: self.close(warn=False)) self._layer_artist_container.on_changed(self.update_window_title)
def close(self, warn=True): self._warn_close = warn if getattr(self, '_mdi_wrapper', None) is not None: self._mdi_wrapper.close() self._mdi_wrapper = None else: QtWidgets.QMainWindow.close(self) ViewerBase.close(self) self._warn_close = True
def __init__(self, session, parent=None): """ :type session: :class:`~glue.core.Session` """ QtGui.QMainWindow.__init__(self, parent) ViewerBase.__init__(self, session) self.setWindowIcon(get_qapp().windowIcon()) self._view = LayerArtistView() self._view.setModel(self._layer_artist_container.model) self._tb_vis = {} # store whether toolbars are enabled self.setAttribute(Qt.WA_DeleteOnClose) self.setAcceptDrops(True) self.setAnimated(False) self._toolbars = [] self._warn_close = True self.setContentsMargins(2, 2, 2, 2) self._mdi_wrapper = None # GlueMdiSubWindow that self is embedded in self.statusBar().setStyleSheet("QStatusBar{font-size:10px}") # close window when last plot layer deleted self._layer_artist_container.on_empty(lambda: self.close(warn=False)) self._layer_artist_container.on_changed(self.update_window_title)
def close(self, warn=True): self._warn_close = warn QtWidgets.QMainWindow.close(self) ViewerBase.close(self) self._warn_close = True