def closeEvent(self, a0: QtGui.QCloseEvent) -> None: if self.main.converting: sm = QtWidgets.QMessageBox() sm.setText("<h2>There is a conversion in process!</h2>") sm.addButton("Cancel Conversion", QtWidgets.QMessageBox.RejectRole) sm.addButton("Close GUI Only", QtWidgets.QMessageBox.DestructiveRole) sm.addButton("Keep FastFlix Open", QtWidgets.QMessageBox.AcceptRole) sm.exec_() if sm.clickedButton().text() == "Cancel Conversion": self.main.worker_queue.put(["cancel"]) self.main.close() elif sm.clickedButton().text() == "Close GUI Only": self.main.close(no_cleanup=True) return super(Container, self).closeEvent(a0) else: a0.ignore() return for item in self.main.path.work.iterdir(): if item.is_dir() and item.stem.startswith("temp_"): shutil.rmtree(item, ignore_errors=True) if item.name.lower().endswith((".jpg", ".jpeg", ".png", ".gif")): item.unlink() super(Container, self).closeEvent(a0)
def closeEvent(self, event: QCloseEvent): ''' Closeevent Parameters ---------- event : QCloseEvent ''' logger.debug('FloatingDockContainer closeEvent') self.d.set_state(DragState.inactive) if not self.is_closable(): event.ignore() return # In Qt version after 5.9.2 there seems to be a bug that causes the # QWidget.event() function to not receive any NonClientArea mouse # events anymore after a close/show cycle. The bug is reported here: # https://bugreports.qt.io/browse/QTBUG-73295 # The following code is a workaround for Qt versions > 5.9.2 that seems # to work # Starting from Qt version 5.12.2 this seems to work again. But # now the QEvent.NonClientAreaMouseButtonPress function returns always # Qt.RightButton even if the left button was pressed if (5, 9, 2) < QT_VERSION_TUPLE < (5, 12, 2): event.ignore() self.hide() else: super().closeEvent(event)
def closeEvent(self, event: QCloseEvent) -> None: """Called on closing window.""" if self.should_close_document(self.tr("Quit")): gp.dump_prefs(self.pref) event.accept() else: event.ignore()
def closeEvent(self, a0: QtGui.QCloseEvent) -> None: if self.pb: try: self.pb.stop_signal.emit() except Exception: pass if self.main.converting: sm = QtWidgets.QMessageBox() sm.setText(f"<h2>{t('There is a conversion in process!')}</h2>") sm.addButton(t("Cancel Conversion"), QtWidgets.QMessageBox.RejectRole) sm.addButton(t("Close GUI Only"), QtWidgets.QMessageBox.DestructiveRole) sm.addButton(t("Keep FastFlix Open"), QtWidgets.QMessageBox.AcceptRole) sm.exec_() if sm.clickedButton().text() == "Cancel Conversion": self.app.fastflix.worker_queue.put(["cancel"]) time.sleep(0.5) self.main.close() elif sm.clickedButton().text() == "Close GUI Only": self.main.close(no_cleanup=True) return super(Container, self).closeEvent(a0) else: a0.ignore() return for item in self.app.fastflix.config.work_path.iterdir(): if item.is_dir() and item.stem.startswith("temp_"): shutil.rmtree(item, ignore_errors=True) if item.name.lower().endswith((".jpg", ".jpeg", ".png", ".gif")): item.unlink() if reusables.win_based: cleanup_windows_notification() self.main.close(from_container=True) super(Container, self).closeEvent(a0)
def closeEvent(self, event: QCloseEvent) -> None: """Close event to avoid user close the window accidentally.""" if self.check_file_changed(): event.ignore() return if self.inputs_widget.inputs_play_shaft.isActive(): self.inputs_widget.inputs_play_shaft.stop() self.save_settings() XStream.back() logger.info("Exit") event.accept()
def closeEvent(self, event: QtGui.QCloseEvent): if chisurf.settings.gui['confirm_close_program']: reply = chisurf.widgets.widgets.MyMessageBox.question( self, 'Message', "Are you sure to quit?", QtWidgets.QMessageBox.Yes, QtWidgets.QMessageBox.No) if reply == QtWidgets.QMessageBox.Yes: event.accept() else: event.ignore() else: event.accept()
def about_to_close(self, event: QCloseEvent) -> None: self.log.debug("About to close requested") if not self.model.is_set: self.model.on_close() self.log.debug("No project set; closing") event.accept() return name = self.model.path.name if not self.model.is_stale: self.model.on_close() self.log.debug(f"Project {name} has no changes; closing") event.accept() return response = showSaveDialog( parent=self._window, title="About to close", text=f"You have unsaved changes pending for project {name}.\n" "Do you want to save your changes?", ) if response == QMessageBox.Save: self.model.save() self.model.on_close() self.log.debug(f"Project {name} saved; closing") event.accept() elif response == QMessageBox.Discard: self.model.on_close() self.log.debug(f"Project {name} not saved; closing") event.accept() elif response == QMessageBox.Cancel: self.log.debug(f"Project {name} not saved; not closing") event.ignore() else: raise RuntimeError(f"Unknown response {response}")
def closeEvent(self, event: QCloseEvent): if self.__cancel_check(): event.accept() else: event.ignore()