From d7075e5ac99f3329e72eb4c3634e86dc34be1c98 Mon Sep 17 00:00:00 2001 From: Flavio Tarsetti <Flavio.Tarsetti@idiap.ch> Date: Wed, 20 Feb 2019 10:10:24 +0100 Subject: [PATCH] [widgets] Save/Restore window state and geometry --- beat/editor/widgets/mainwindow.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/beat/editor/widgets/mainwindow.py b/beat/editor/widgets/mainwindow.py index b7ed7c0c..dfd009de 100644 --- a/beat/editor/widgets/mainwindow.py +++ b/beat/editor/widgets/mainwindow.py @@ -27,6 +27,7 @@ from PyQt5.QtWidgets import QHBoxLayout from PyQt5.QtWidgets import QMainWindow from PyQt5.QtWidgets import QWidget from PyQt5.QtWidgets import qApp +from PyQt5.QtCore import QSettings from .assetbrowser import AssetBrowser from .assetwidget import AssetWidget @@ -42,6 +43,13 @@ class MainWindow(QMainWindow): super(MainWindow, self).__init__(parent) + # MainWindow settings + self.settings = QSettings("beat", "editor") + if not self.settings.value("geometry") is None: + self.restoreGeometry(self.settings.value("geometry")) + if not self.settings.value("windowState") is None: + self.restoreState(self.settings.value("windowState")) + menubar = self.menuBar() fileMenu = menubar.addMenu(self.tr("File")) quitAction = fileMenu.addAction(self.tr("Quit")) @@ -71,3 +79,8 @@ class MainWindow(QMainWindow): def show_settings(self): """Show settings dialog""" pass + + def closeEvent(self, event): + self.settings.setValue("geometry", self.saveGeometry()) + self.settings.setValue("windowState", self.saveState()) + QMainWindow.closeEvent(self, event) -- GitLab