def show_config_dialog(ia): global config_dialog global config_widget if not config_dialog: config_dialog = QDialog(ia.gui) config_widget = ConfigWidget(ia) button_box = QDialogButtonBox(QDialogButtonBox.Close) button_box.accepted.connect(hide_config_dialog) button_box.rejected.connect(hide_config_dialog) v = QVBoxLayout(config_dialog) v.addWidget(config_widget) v.addWidget(button_box) geom = prefs.get('config_dialog_geometry') if geom: config_dialog.restoreGeometry(geom) else: config_dialog.resize(config_dialog.sizeHint()) config_dialog.setModal(False) config_dialog.show() config_dialog.raise_() config_dialog.activateWindow() config_widget.textBrowser.setHtml(help_text) config_widget.scroll_function_names_box(prefs['current_macro'])