async def show_game_session(app: QtWidgets.QApplication, options, session_id: int): from randovania.gui.game_session_window import GameSessionWindow from randovania.gui.lib.qt_network_client import QtNetworkClient from randovania.interface_common.preset_manager import PresetManager network_client: QtNetworkClient = app.network_client sessions = [ session for session in await network_client.get_game_session_list(False) if session.id == session_id ] if not sessions: app.quit() return await network_client.join_game_session(sessions[0], None) preset_manager = PresetManager(options.presets_path) app.game_session_window = await GameSessionWindow.create_and_update( network_client, app.game_connection, preset_manager, None, options ) app.game_session_window.show()
def closeEvent(self, event): self.data.save({ 'width': self.width(), 'height': self.height(), 'optionsOpened': self.options_window.isVisible() }) event.accept() QApplication.quit()
async def show_main_window(app: QtWidgets.QApplication, options, is_preview: bool): from randovania.interface_common.preset_manager import PresetManager from randovania.interface_common.options import Options options = typing.cast(Options, options) preset_manager = PresetManager(options.presets_path) logger.info("Loading user presets...") await preset_manager.load_user_presets() logger.info("Finished loading presets!") from randovania.gui.lib.qt_network_client import QtNetworkClient network_client: QtNetworkClient = app.network_client async def attempt_login(): from randovania.network_client.network_client import UnableToConnect from randovania.gui.lib import async_dialog try: from randovania.gui import main_online_interaction if not await main_online_interaction.ensure_logged_in(None, network_client): await async_dialog.warning(None, "Login required", "Logging in is required to use dev builds.") return False except UnableToConnect as e: s = e.reason.replace('\n', '<br />') await async_dialog.warning( None, "Connection Error", f"<b>Unable to connect to the server:</b><br /><br />{s}<br /><br />" f"Logging in is required to use dev builds.") return False return True if randovania.is_frozen() and randovania.is_dev_version(): try: logger.info("Disabling quit on last window closed") app.setQuitOnLastWindowClosed(False) if not await attempt_login(): app.quit() return finally: def reset_last_window_quit(): logger.info("Re-enabling quit on last window closed") app.setQuitOnLastWindowClosed(True) QtCore.QTimer.singleShot(1000, reset_last_window_quit) from randovania.gui.main_window import MainWindow logger.info("Preparing main window...") main_window = MainWindow(options, preset_manager, network_client, is_preview) app.main_window = main_window logger.info("Displaying main window") main_window.show() await main_window.request_new_data()
def closeEvent(self, event): """Close application. Parameters ---------- event : QEvent Close event. """ write_settings(size=self.size(), pos=self.pos()) if self.model.history: print("\n# Command History\n") print("\n".join(self.model.history)) QApplication.quit()
def eventFilter(self, watched, event): if event.type() == QEvent.Type.KeyPress: if event.key() == Qt.Key_Q: QApplication.quit() elif event.key() == Qt.Key_Space: playButton = self.findChildren(Button, QtCore.QRegularExpression('')) for button in playButton: if button.text() == "Play": button.setChecked(not button.isChecked()) button.warnState() break return True return False
def exit_app(self, checked): QApplication.quit()
def quit_application(self): QApplication.quit()
def quit(self): self.setVisible(False) if 'check_thread' in dir(self): self.check_thread.stop() QApplication.quit() sys.exit()
import logging from PySide6.QtCore import Qt from PySide6.QtWidgets import QApplication import feed_manager import view # initialization app = QApplication([]) logging.basicConfig(filename="log.txt", filemode="a", format="%(asctime)s %(levelname)s:%(message)s") feed_manager = feed_manager.FeedManager() view = view.View(feed_manager) try: # start program app.exec() # cleanup feed_manager.cleanup() view.cleanup() except BaseException as e: logging.exception("Exception thrown!, ", e) app.quit() logging.shutdown()
def slot_menu_quit(self): if self.unsaved_changes: if not self.unsaved_changes_dialog.exec_(): return QApplication.quit()
def closeEvent(self, event): print('I Quit') self.dbHandler.conn.close() QApplication.quit()