Ejemplo n.º 1
0
    def closeEvent(self, event: QtGui.QCloseEvent) -> None:
        msgBox = QtWidgets.QMessageBox(self)
        msgBox.setWindowTitle("Thoát")
        msgBox.setText(("Dữ liệu có sự thay đổi. " if self.serverProgram.
                        IsWeatherDataChangedSinceLoaded() else "") +
                       "Bạn có muốn lưu dữ liệu?")
        msgBox.setStandardButtons(QtWidgets.QMessageBox.Save
                                  | QtWidgets.QMessageBox.Discard
                                  | QtWidgets.QMessageBox.Cancel)
        msgBox.setDefaultButton(QtWidgets.QMessageBox.Save)

        saveButton = msgBox.button(QtWidgets.QMessageBox.Save)
        saveButton.setText("Lưu")
        disButton = msgBox.button(QtWidgets.QMessageBox.Discard)
        disButton.setText("Không lưu")
        canButton = msgBox.button(QtWidgets.QMessageBox.Cancel)
        canButton.setText("Hủy")

        msgBox.exec_()

        if msgBox.clickedButton() == saveButton:
            event.accept()
            self.serverProgram.ExitEditModeAndReload(True)
            self.modifier = None
        elif msgBox.clickedButton() == disButton:
            event.accept()
            self.serverProgram.ExitEditModeAndReload(False)
            self.modifier = None
        elif msgBox.clickedButton() == canButton:
            event.ignore()
Ejemplo n.º 2
0
    def closeEvent(self, event: QCloseEvent):
        ask_exit = self.stacked_widget.currentWidget().askExit()

        if ask_exit:
            event.accept()
        else:
            event.ignore()
Ejemplo n.º 3
0
 def deal_with_close(self, event: QCloseEvent):
     if self.can_close:
         self.closed.emit()
         event.accept()
     else:
         self.cannot_closed.emit()
         event.ignore()
Ejemplo n.º 4
0
 def closeEvent(self, event: QtGui.QCloseEvent) -> None:
     close = QtWidgets.QMessageBox.question(self, "Thoát", "Bạn chắc chắn muốn thoát?",
                                 QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No)
     if close == QtWidgets.QMessageBox.Yes:
         self.OnExitGUI()
     else:
         event.ignore()
Ejemplo n.º 5
0
 def closeEvent(self, event: QCloseEvent):
     logger.debug(locals())
     if self.unsaved_check():
         self.write_settings()
         event.accept()
     else:
         event.ignore()
Ejemplo n.º 6
0
    def closeEvent(self, event: QCloseEvent):
        if not self.safe_to_change():
            event.ignore()

            return

        super(MainWindow, self).closeEvent(event)
Ejemplo n.º 7
0
    def closeEvent(self, a0: QtGui.QCloseEvent) -> None:
        if self.pb:
            try:
                self.pb.stop_signal.emit()
            except Exception:
                pass
        if self.app.fastflix.currently_encoding:
            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", ".tiff", ".tif")):
                item.unlink()
        shutil.rmtree(self.app.fastflix.config.work_path / "covers", ignore_errors=True)
        if reusables.win_based:
            cleanup_windows_notification()
        self.main.close(from_container=True)
        super(Container, self).closeEvent(a0)
Ejemplo n.º 8
0
 def closeEvent(self, event: QCloseEvent) -> None:
     """
     Override closeEvent to set the Configuration popup to not visible instead of deleting it.
     :param event: QCloseEvent - the close event to capture and override
     :return None:
     """
     event.ignore()
     self.setVisible(False)
Ejemplo n.º 9
0
 def closeEvent(self, a0: QtGui.QCloseEvent) -> None:
     if self.stackedWidget.currentIndex() == 1:
         self.stackedWidget.setCurrentIndex(0)
         self.owner().qtReadImg.AddHistory()
         self.LoadHistory()
         a0.ignore()
     else:
         a0.accept()
Ejemplo n.º 10
0
 def closeEvent(self, event: QCloseEvent) -> None:
     if self._settings.gui.close_to_systray:
         # Ignore the close event, hide the window (and create the systray
         # icon) instead
         event.ignore()
         self.hide_window()
     else:
         # Go ahead
         super().closeEvent(event)
Ejemplo n.º 11
0
 def closeEvent(self, event: QCloseEvent) -> None:
     result = QMessageBox.question(
         self, "Quit Liberation?",
         "Are you sure you want to quit? All unsaved progress will be lost.",
         QMessageBox.Yes | QMessageBox.No)
     if result == QMessageBox.Yes:
         super().closeEvent(event)
     else:
         event.ignore()
Ejemplo n.º 12
0
 def closeEvent(self, event: QCloseEvent):
     user_response = self.maybe_save(
         self, text='Do you want to save the game before exiting?')
     if user_response == QMessageBox.Cancel:
         event.ignore()
         return
     if user_response == QMessageBox.Yes:
         self.save_file()
     event.accept()
Ejemplo n.º 13
0
 def closeEvent(self, event: QCloseEvent):
     ret = QMessageBox.question(self, self.tr("Sc2 bot"),
                               self.tr("Are you sure you want to exit?"),
                               QMessageBox.Yes | QMessageBox.No, QMessageBox.No)
     if ret == QMessageBox.Yes:
         event.accept()
         self.bot.stop_game()
     else:
         event.ignore()
Ejemplo n.º 14
0
    def closeEvent(self, event: QCloseEvent):
        if not self.safe_to_change():
            event.ignore()

            return

        auto_save_rom_path.unlink(missing_ok=True)
        auto_save_level_data_path.unlink(missing_ok=True)

        super(MainWindow, self).closeEvent(event)
Ejemplo n.º 15
0
 def closeEvent(self, event: QtGui.QCloseEvent):
     description = "是否退出当前程序?"
     reply = QtWidgets.QMessageBox.warning(
         self, "警告", description,
         QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No,
         QtWidgets.QMessageBox.No)
     if reply == QtWidgets.QMessageBox.Yes:
         event.accept()
     else:
         event.ignore()
         self.showMinimized()
Ejemplo n.º 16
0
 def closeEvent(self, event: QCloseEvent):
     if self.quit_:
         G.pool_done = True
         try:
             self.widget.close()
         except:
             pass
         event.accept()
     else:
         self.hide()
         event.ignore()
Ejemplo n.º 17
0
 def closeEvent(self, event: QtGui.QCloseEvent) -> None:
     close = QMessageBox.question(self, "Thoát",
                                  "Bạn chắc chắn muốn thoát?",
                                  QMessageBox.Yes | QMessageBox.No)
     if close == QMessageBox.Yes:
         event.accept()
         self.close()
         self.parentWindow.Disconnect()
         self.parentWindow.show()
     else:
         event.ignore()
Ejemplo n.º 18
0
 def closeEvent(self, event: QCloseEvent) -> None:
     """
     Do not allow user to close window directly.
     :param event: The close event.
     :return: None
     """
     event.ignore()
     self.setWindowState(Qt.WindowMinimized)
     if self.windowState() == Qt.WindowMinimized:
         self.setWindowState(Qt.WindowNoState)
     elif self.windowState() == Qt.WindowNoState:
         self.setWindowState(Qt.WindowMinimized)
Ejemplo n.º 19
0
 def closeEvent(self, event: QtGui.QCloseEvent) -> None:
     close = QMessageBox.question(self, "Thoát",
                                  ("Kết nối vẫn còn hiệu lực. " if
                                   self.clientProgram.connected else "") +
                                  "Bạn chắc chắn muốn thoát?",
                                  QMessageBox.Yes | QMessageBox.No)
     if close == QMessageBox.Yes:
         self.Disconnect()
         self.close()
         event.accept()
         self.close()
     else:
         event.ignore()
Ejemplo n.º 20
0
 def closeEvent(self, event: QCloseEvent) -> None:
     result = QMessageBox.question(
         self,
         "Quit Liberation?",
         "Are you sure you want to quit? All unsaved progress will be lost.",
         QMessageBox.Yes | QMessageBox.No,
     )
     if result == QMessageBox.Yes:
         self._save_window_geometry()
         super().closeEvent(event)
         self.dialog = None
     else:
         event.ignore()
Ejemplo n.º 21
0
 def closeEvent(self, event: QtGui.QCloseEvent):
     if self._check_for_edit_dialog():
         event.ignore()
     else:
         data = data_writer.write_game_description(self.game_description)
         if data != self._last_data:
             user_response = QMessageBox.warning(
                 self, "Unsaved changes",
                 "You have unsaved changes. Do you want to close and discard?",
                 QMessageBox.Yes | QMessageBox.No, QMessageBox.No)
             if user_response == QMessageBox.No:
                 return event.ignore()
         super().closeEvent(event)
Ejemplo n.º 22
0
 def closeEvent(self, event: QCloseEvent) -> None:
     """
     Check if user really wants to close the app and only if so alert close and close.
     :param event: The close event.
     :return: None.
     """
     self._logger.debug("running")
     if self.close_check:
         user_input = self._checker.exec_() == QMessageBox.Yes
         if not user_input:
             event.ignore()
             return
     settings = QSettings(company_name, app_name)
     settings.setValue(window_geometry, self.saveGeometry())
     settings.setValue(window_state, self.saveState())
     if self._close_callback:
         self._close_callback()
     event.accept()
     self._logger.debug("done")
Ejemplo n.º 23
0
 def closeEvent(self, event: QCloseEvent):
     if self.exit_:
         G.pool_done = True
         self.tray.deleteLater()
         try:
             for k, v in current_app.extensions.items():
                 current_app.suspend_extension(k)
             current_app.release()
         except:
             pass
         if self.cfg_dialog:
             self.cfg_dialog.close()
         if self.log_dialog:
             self.log_dialog.close()
         if self.order_widget:
             self.order_widget.close()
         event.accept()
     else:
         self.tray.showMessage("ctpbee", "以最小化隐藏在托盘", msecs=1)
         self.hide()
         event.ignore()
Ejemplo n.º 24
0
 def closeEvent(self, event: QCloseEvent) -> None:
     """
     Check if user really wants to close the app and only if so alert close and close.
     :param event: The close event.
     :return: None.
     """
     self._logger.debug("running")
     if self._close_override:
         self._logger.debug("done with event.accept()")
         event.accept()
         return
     if self.close_check:
         user_input = self._checker.exec_() == QMessageBox.Yes
         if not user_input:
             event.ignore()
             self._logger.debug("done with event.ignore()")
             return
     self._save_window_settings()
     if self._close_callback:
         self._close_callback()
     event.ignore()
     self._logger.debug("done with event.ignore()")
Ejemplo n.º 25
0
    def closeEvent(self, event: QCloseEvent) -> None:
        """
		Handles what happens when the user tries to quit the application.
		
		If there is a project open, ask them if they want to save their progress. We also give
		the option to not save or to cancel the closing of Facile.
		
		If a project is not open, ask them if they are sure they want to quit.
		
		:param event: The close event used to determine if the application should be closed or not.
		:type event: QCloseEvent
		:return: None
		:rtype: NoneType
		"""

        title = "Cancel confirmation ..."
        if self._project:
            message = "Would you like to save your project before exiting?"
            options = QMessageBox.Yes | QMessageBox.No | QMessageBox.Cancel
            result = QMessageBox.question(self, title, message, options)
            event.ignore()

            if result == QMessageBox.Yes:
                self.onSaveProjectTriggered()

            if result != QMessageBox.Cancel:
                event.accept()
        else:
            message = "Are you sure you want to quit?"
            options = QMessageBox.Yes | QMessageBox.No
            result = QMessageBox.question(self, title, message, options)
            event.ignore()

            if result == QMessageBox.Yes:
                self.onSaveProjectTriggered()
                event.accept()
Ejemplo n.º 26
0
    def closeEvent(self, QCloseEvent):
        """
        窗口关闭事件
        """
        def closeFunc():
            self.core.clean_out()
            if self.monitor and self.monitor.is_alive():
                self.monitor.terminate()
            exit()

        if self.core.start_flag or self.core.pause_flag:
            # 没有停止抓包
            reply = QMessageBox.question(
                self, '提示', "是否停止捕获,并保存已捕获的分组?\n警告:若不保存,已捕获的分组将会丢失",
                QMessageBox.Save | QMessageBox.Close | QMessageBox.Cancel,
                QMessageBox.Cancel)
            if reply == QMessageBox.Cancel:
                QCloseEvent.ignore()
            elif reply == QMessageBox.Close:
                self.core.stop_capture()
                closeFunc()
            elif reply == QMessageBox.Save:
                self.core.stop_capture()
                self.savefile_button_clicked_action()
                closeFunc()
        elif self.core.stop_flag and not self.core.save_flag:
            # 已停止,但没有保存文件
            reply = QMessageBox.question(
                self, '提示', "是否保存已捕获的分组?\n警告:若不保存,已捕获的分组将会丢失",
                QMessageBox.Save | QMessageBox.Close | QMessageBox.Cancel,
                QMessageBox.Cancel)
            if reply == QMessageBox.Cancel:
                QCloseEvent.ignore()
            elif reply == QMessageBox.Save:
                self.savefile_button_clicked_action()
                closeFunc()
            else:
                closeFunc()
        elif self.core.save_flag or not self.core.start_flag:
            # 未工作状态
            reply = QMessageBox.question(self, '提示', "是否退出程序?",
                                         QMessageBox.Yes | QMessageBox.No,
                                         QMessageBox.No)
            if reply == QMessageBox.Yes:
                closeFunc()
            else:
                QCloseEvent.ignore()
Ejemplo n.º 27
0
 def closeEvent(self, event: QCloseEvent):
     res = self.normal_msg.exec_()
     if res == QMessageBox.Close:
         event.accept()
     else:
         event.ignore()
Ejemplo n.º 28
0
 def closeEvent(self, close_event: QCloseEvent):
     close_event.ignore()
     self._close()
Ejemplo n.º 29
0
 def closeEvent(self, event: QCloseEvent):
     if not self.isComplete:
         event.ignore()
Ejemplo n.º 30
0
 def closeEvent(self, event: QCloseEvent) -> None:
     if self.exit_confirmation():
         event.accept()
     else:
         event.ignore()