def __setupUi(self): layout = QVBoxLayout() label = QLabel(self) pixmap, _ = config.splash_screen() label.setPixmap(pixmap) layout.addWidget(label, Qt.AlignCenter) name = QApplication.applicationName() version = QApplication.applicationVersion() text = ABOUT_TEMPLATE.format( name=escape(name), version=escape(version), ) # TODO: Also list all known add-on versions??. text_label = QLabel(text) layout.addWidget(text_label, Qt.AlignCenter) buttons = QDialogButtonBox( QDialogButtonBox.Close, Qt.Horizontal, self) layout.addWidget(buttons) buttons.rejected.connect(self.accept) layout.setSizeConstraint(QVBoxLayout.SetFixedSize) self.setLayout(layout)
def __setupUi(self): layout = QVBoxLayout() label = QLabel(self) pixmap, _ = config.splash_screen() label.setPixmap(pixmap) layout.addWidget(label, Qt.AlignCenter) name = QApplication.applicationName() version = QApplication.applicationVersion() text = ABOUT_TEMPLATE.format( name=escape(name), version=escape(version), ) # TODO: Also list all known add-on versions??. text_label = QLabel(text) layout.addWidget(text_label, Qt.AlignCenter) buttons = QDialogButtonBox(QDialogButtonBox.Close, Qt.Horizontal, self) layout.addWidget(buttons) buttons.rejected.connect(self.accept) layout.setSizeConstraint(QVBoxLayout.SetFixedSize) self.setLayout(layout)
def reset_widget_settings(self): name = QApplication.applicationName() or 'Orange' mb = QMessageBox( self, windowTitle="Clear settings", text="{} needs to be restarted for the changes to take effect." .format(name), icon=QMessageBox.Information, informativeText="Press OK to restart {} now." .format(name), standardButtons=QMessageBox.Ok | QMessageBox.Cancel, ) res = mb.exec() if res == QMessageBox.Ok: # Touch a finely crafted file inside the settings directory. # The existence of this file is checked by the canvas main # function and is deleted there. from orangewidget.settings import widget_settings_dir dirname = widget_settings_dir() try: os.makedirs(dirname, exist_ok=True) except (FileExistsError, PermissionError): return with open(os.path.join(dirname, "DELETE_ON_START"), "a"): pass def restart(): quit_temp_val = QApplication.quitOnLastWindowClosed() QApplication.setQuitOnLastWindowClosed(False) QApplication.closeAllWindows() windows = QApplication.topLevelWindows() if any(w.isVisible() for w in windows): # if a window close was cancelled QApplication.setQuitOnLastWindowClosed(quit_temp_val) QMessageBox( text="Restart Cancelled", informativeText="Settings will be reset on {}'s next restart" .format(name), icon=QMessageBox.Information ).exec() else: QApplication.exit(96) QTimer.singleShot(0, restart)