From 69c196b409f1163290686ede128044026c66f444 Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Tue, 5 Oct 2021 10:01:45 +1000 Subject: [PATCH] .exec_() -> .exec() The former is not supported in PyQt6 --- qt/aqt/addcards.py | 2 +- qt/aqt/addons.py | 6 +++--- qt/aqt/browser/sidebar/tree.py | 2 +- qt/aqt/browser/table/table.py | 4 ++-- qt/aqt/clayout.py | 10 +++++----- qt/aqt/customstudy.py | 2 +- qt/aqt/deckbrowser.py | 2 +- qt/aqt/deckconf.py | 4 ++-- qt/aqt/deckoptions.py | 2 +- qt/aqt/editor.py | 4 ++-- qt/aqt/exporting.py | 2 +- qt/aqt/fields.py | 2 +- qt/aqt/importing.py | 4 ++-- qt/aqt/main.py | 2 +- qt/aqt/mediacheck.py | 2 +- qt/aqt/models.py | 6 +++--- qt/aqt/operations/scheduling.py | 2 +- qt/aqt/profiles.py | 8 ++++---- qt/aqt/reviewer.py | 2 +- qt/aqt/studydeck.py | 2 +- qt/aqt/sync.py | 2 +- qt/aqt/taglimit.py | 2 +- qt/aqt/update.py | 2 +- qt/aqt/utils.py | 14 +++++++------- 24 files changed, 45 insertions(+), 45 deletions(-) diff --git a/qt/aqt/addcards.py b/qt/aqt/addcards.py index 1e418bfe7..18712b24d 100644 --- a/qt/aqt/addcards.py +++ b/qt/aqt/addcards.py @@ -205,7 +205,7 @@ class AddCards(QDialog): a = m.addAction(tr.adding_note_deleted()) a.setEnabled(False) gui_hooks.add_cards_will_show_history_menu(self, m) - m.exec_(self.historyButton.mapToGlobal(QPoint(0, 0))) + m.exec(self.historyButton.mapToGlobal(QPoint(0, 0))) def editHistory(self, nid: NoteId) -> None: aqt.dialogs.open("Browser", self.mw, search=(SearchNode(nid=nid),)) diff --git a/qt/aqt/addons.py b/qt/aqt/addons.py index 12ffe8fcc..5a94e048a 100644 --- a/qt/aqt/addons.py +++ b/qt/aqt/addons.py @@ -952,7 +952,7 @@ class GetAddons(QDialog): qconnect(b.clicked, self.onBrowse) disable_help_button(self) restoreGeom(self, "getaddons", adjustSize=True) - self.exec_() + self.exec() saveGeom(self, "getaddons") def onBrowse(self) -> None: @@ -1246,7 +1246,7 @@ class ChooseAddonsToUpdateList(QListWidget): m = QMenu() a = m.addAction(tr.addons_view_addon_page()) qconnect(a.triggered, lambda _: openLink(f"{aqt.appShared}info/{addon_id}")) - m.exec_(QCursor.pos()) + m.exec(QCursor.pos()) def check_item(self, item: QListWidgetItem, check: Qt.CheckState) -> None: "call item.setCheckState without triggering on_check" @@ -1314,7 +1314,7 @@ class ChooseAddonsToUpdateDialog(QDialog): def ask(self) -> list[int]: "Returns a list of selected addons' ids" - ret = self.exec_() + ret = self.exec() saveGeom(self, "addonsChooseUpdate") self.addons_list_widget.save_check_state() if ret == QDialog.Accepted: diff --git a/qt/aqt/browser/sidebar/tree.py b/qt/aqt/browser/sidebar/tree.py index d3b1e9245..c48e45491 100644 --- a/qt/aqt/browser/sidebar/tree.py +++ b/qt/aqt/browser/sidebar/tree.py @@ -877,7 +877,7 @@ class SidebarTreeView(QTreeView): self._maybe_add_tree_actions(menu) gui_hooks.browser_sidebar_will_show_context_menu(self, menu, item, index) if menu.children(): - menu.exec_(QCursor.pos()) + menu.exec(QCursor.pos()) def _maybe_add_type_specific_actions(self, menu: QMenu, item: SidebarItem) -> None: if item.item_type in (SidebarItemType.NOTETYPE, SidebarItemType.NOTETYPE_ROOT): diff --git a/qt/aqt/browser/table/table.py b/qt/aqt/browser/table/table.py index e7812e052..f1eef337a 100644 --- a/qt/aqt/browser/table/table.py +++ b/qt/aqt/browser/table/table.py @@ -447,7 +447,7 @@ class Table: sub_menu.addAction(action) gui_hooks.browser_will_show_context_menu(self.browser, menu) qtMenuShortcutWorkaround(menu) - menu.exec_(QCursor.pos()) + menu.exec(QCursor.pos()) def _on_header_context(self, pos: QPoint) -> None: gpos = self._view.mapToGlobal(pos) @@ -463,7 +463,7 @@ class Table: lambda checked, key=key: self._on_column_toggled(checked, key), ) gui_hooks.browser_header_will_show_context_menu(self.browser, m) - m.exec_(gpos) + m.exec(gpos) def _on_column_moved(self, *_args: Any) -> None: self._set_column_sizes() diff --git a/qt/aqt/clayout.py b/qt/aqt/clayout.py index aa024bf78..b105397e6 100644 --- a/qt/aqt/clayout.py +++ b/qt/aqt/clayout.py @@ -389,7 +389,7 @@ class CardLayout(QDialog): a.setChecked(self.mobile_emulation_enabled) qconnect(a.toggled, self.on_mobile_class_action_toggled) - m.exec_(self.pform.preview_settings.mapToGlobal(QPoint(0, 0))) + m.exec(self.pform.preview_settings.mapToGlobal(QPoint(0, 0))) def on_preview_toggled(self) -> None: self.have_autoplayed = False @@ -706,7 +706,7 @@ class CardLayout(QDialog): a = m.addAction(tr.card_templates_browser_appearance()) qconnect(a.triggered, self.onBrowserDisplay) - m.exec_(self.topAreaForm.templateOptions.mapToGlobal(QPoint(0, 0))) + m.exec(self.topAreaForm.templateOptions.mapToGlobal(QPoint(0, 0))) def onBrowserDisplay(self) -> None: d = QDialog() @@ -721,7 +721,7 @@ class CardLayout(QDialog): f.font.setCurrentFont(QFont(t.get("bfont") or "Arial")) f.fontSize.setValue(t.get("bsize") or 12) qconnect(f.buttonBox.accepted, lambda: self.onBrowserDisplayOk(f)) - d.exec_() + d.exec() def onBrowserDisplayOk(self, f: Ui_Dialog) -> None: t = self.current_template() @@ -761,7 +761,7 @@ class CardLayout(QDialog): qconnect(bb.rejected, d.close) l.addWidget(bb) d.setLayout(l) - d.exec_() + d.exec() self.change_tracker.mark_basic() if not te.text().strip(): t["did"] = None @@ -778,7 +778,7 @@ class CardLayout(QDialog): form.fields.setCurrentRow(0) form.font.setCurrentFont(QFont("Arial")) form.size.setValue(20) - if not diag.exec_(): + if not diag.exec(): return row = form.fields.currentIndex().row() if row >= 0: diff --git a/qt/aqt/customstudy.py b/qt/aqt/customstudy.py index 92b71b57a..8b056342b 100644 --- a/qt/aqt/customstudy.py +++ b/qt/aqt/customstudy.py @@ -33,7 +33,7 @@ class CustomStudy(QDialog): self.setWindowModality(Qt.WindowModal) self.setupSignals() f.radioNew.click() - self.exec_() + self.exec() def setupSignals(self) -> None: f = self.form diff --git a/qt/aqt/deckbrowser.py b/qt/aqt/deckbrowser.py index fc65f3e33..b0962a3e0 100644 --- a/qt/aqt/deckbrowser.py +++ b/qt/aqt/deckbrowser.py @@ -272,7 +272,7 @@ class DeckBrowser: a = m.addAction(tr.actions_delete()) qconnect(a.triggered, lambda b, did=did: self._delete(DeckId(int(did)))) gui_hooks.deck_browser_will_show_options_menu(m, int(did)) - m.exec_(QCursor.pos()) + m.exec(QCursor.pos()) def _export(self, did: DeckId) -> None: self.mw.onExport(did=did) diff --git a/qt/aqt/deckconf.py b/qt/aqt/deckconf.py index a41f6ccee..89d250fe1 100644 --- a/qt/aqt/deckconf.py +++ b/qt/aqt/deckconf.py @@ -59,7 +59,7 @@ class DeckConf(QDialog): restoreGeom(self, "deckconf", adjustSize=True) gui_hooks.deck_conf_will_show(self) self.show() - self.exec_() + self.exec() saveGeom(self, "deckconf") def setupCombos(self) -> None: @@ -106,7 +106,7 @@ class DeckConf(QDialog): qconnect(a.triggered, self.setChildren) if not self.childDids: a.setEnabled(False) - m.exec_(QCursor.pos()) + m.exec(QCursor.pos()) def onConfChange(self, idx: int) -> None: if self.ignoreConfChange: diff --git a/qt/aqt/deckoptions.py b/qt/aqt/deckoptions.py index fe68763f1..3a89969d0 100644 --- a/qt/aqt/deckoptions.py +++ b/qt/aqt/deckoptions.py @@ -95,7 +95,7 @@ def _deck_prompt_dialog(decks: list[DeckDict]) -> None: qconnect(button.clicked, diag.close) box.addWidget(button) diag.setLayout(box) - diag.exec_() + diag.exec() def display_options_for_deck_id(deck_id: DeckId) -> None: diff --git a/qt/aqt/editor.py b/qt/aqt/editor.py index 596d1d6f8..5fce6df39 100644 --- a/qt/aqt/editor.py +++ b/qt/aqt/editor.py @@ -916,7 +916,7 @@ $editorToolbar.then(({{ toolbar }}) => toolbar.appendGroup({{ form.textEdit.setPlainText(self.note.fields[field]) d.show() form.textEdit.moveCursor(QTextCursor.End) - d.exec_() + d.exec() html = form.textEdit.toPlainText() if html.find(">") > -1: # filter html through beautifulsoup so we can strip out things like a @@ -1044,7 +1044,7 @@ $editorToolbar.then(({{ toolbar }}) => toolbar.appendGroup({{ qtMenuShortcutWorkaround(m) - m.exec_(QCursor.pos()) + m.exec(QCursor.pos()) @deprecated(info=_js_legacy) def insertLatex(self) -> None: diff --git a/qt/aqt/exporting.py b/qt/aqt/exporting.py index 6868373de..dbcdf6260 100644 --- a/qt/aqt/exporting.py +++ b/qt/aqt/exporting.py @@ -40,7 +40,7 @@ class ExportDialog(QDialog): self.cids = cids disable_help_button(self) self.setup(did) - self.exec_() + self.exec() def setup(self, did: DeckId | None) -> None: self.exporters = exporters(self.col) diff --git a/qt/aqt/fields.py b/qt/aqt/fields.py index 368f988ef..9048e935e 100644 --- a/qt/aqt/fields.py +++ b/qt/aqt/fields.py @@ -54,7 +54,7 @@ class FieldDialog(QDialog): self.form.fieldList.setDragDropMode(QAbstractItemView.InternalMove) self.form.fieldList.dropEvent = self.onDrop # type: ignore[assignment] self.form.fieldList.setCurrentRow(open_at) - self.exec_() + self.exec() ########################################################################## diff --git a/qt/aqt/importing.py b/qt/aqt/importing.py index f8211d005..46f852e3d 100644 --- a/qt/aqt/importing.py +++ b/qt/aqt/importing.py @@ -60,7 +60,7 @@ class ChangeMap(QDialog): self.field: Optional[str] = None def getField(self) -> str: - self.exec_() + self.exec() return self.field def accept(self) -> None: @@ -109,7 +109,7 @@ class ImportDialog(QDialog): # import button b = QPushButton(tr.actions_import()) self.frm.buttonBox.addButton(b, QDialogButtonBox.AcceptRole) - self.exec_() + self.exec() def setupOptions(self) -> None: self.model = self.mw.col.models.current() diff --git a/qt/aqt/main.py b/qt/aqt/main.py index 6769a8686..a2f97b78d 100644 --- a/qt/aqt/main.py +++ b/qt/aqt/main.py @@ -1422,7 +1422,7 @@ title="{}" {}>{}""".format( a = menu.addAction("Clear Code") a.setShortcut(QKeySequence("ctrl+shift+l")) qconnect(a.triggered, frm.text.clear) - menu.exec_(QCursor.pos()) + menu.exec(QCursor.pos()) frm.log.contextMenuEvent = lambda ev: addContextMenu(ev, "log") # type: ignore[assignment] frm.text.contextMenuEvent = lambda ev: addContextMenu(ev, "text") # type: ignore[assignment] diff --git a/qt/aqt/mediacheck.py b/qt/aqt/mediacheck.py index 69c766cbd..299031444 100644 --- a/qt/aqt/mediacheck.py +++ b/qt/aqt/mediacheck.py @@ -138,7 +138,7 @@ class MediaChecker: diag.setMinimumHeight(400) diag.setMinimumWidth(500) restoreGeom(diag, "checkmediadb") - diag.exec_() + diag.exec() saveGeom(diag, "checkmediadb") def _on_render_latex(self) -> None: diff --git a/qt/aqt/models.py b/qt/aqt/models.py index a87c7e04f..e395b3d3d 100644 --- a/qt/aqt/models.py +++ b/qt/aqt/models.py @@ -61,7 +61,7 @@ class Models(QDialog): self.models: Sequence[NotetypeNameIdUseCount] = [] self.setupModels() restoreGeom(self, "models") - self.exec_() + self.exec() # Models ########################################################################## @@ -196,7 +196,7 @@ class Models(QDialog): qconnect(frm.buttonBox.helpRequested, lambda: openHelp(HelpPage.LATEX)) restoreGeom(d, "modelopts") gui_hooks.models_advanced_will_show(d) - d.exec_() + d.exec() saveGeom(d, "modelopts") nt["latexsvg"] = frm.latexsvg.isChecked() nt["latexPre"] = str(frm.latexHeader.toPlainText()) @@ -261,7 +261,7 @@ class AddModel(QDialog): qconnect(self.dialog.buttonBox.helpRequested, self.onHelp) def get(self) -> Optional[NotetypeDict]: - self.exec_() + self.exec() return self.model def reject(self) -> None: diff --git a/qt/aqt/operations/scheduling.py b/qt/aqt/operations/scheduling.py index 7f397f6c8..52bc95f01 100644 --- a/qt/aqt/operations/scheduling.py +++ b/qt/aqt/operations/scheduling.py @@ -102,7 +102,7 @@ def reposition_new_cards_dialog( frm.label.setText(txt) frm.start.selectAll() - if not d.exec_(): + if not d.exec(): return None start = frm.start.value() diff --git a/qt/aqt/profiles.py b/qt/aqt/profiles.py index 38042621e..b72e2dd34 100644 --- a/qt/aqt/profiles.py +++ b/qt/aqt/profiles.py @@ -205,7 +205,7 @@ class ProfileManager: confirmation.setText( "Anki needs to move its data folder from Documents/Anki to a new location. Proceed?" ) - retval = confirmation.exec_() + retval = confirmation.exec() if retval == QMessageBox.Ok: progress = QMessageBox() @@ -227,7 +227,7 @@ class ProfileManager: completion.setWindowTitle(window_title) completion.setText("Migration complete. Please start Anki again.") completion.show() - completion.exec_() + completion.exec() else: diag = QMessageBox() diag.setIcon(QMessageBox.Warning) @@ -238,7 +238,7 @@ class ProfileManager: "Migration aborted. If you would like to keep the old folder location, please " "see the Startup Options section of the manual. Anki will now quit." ) - diag.exec_() + diag.exec() raise AnkiRestart(exitcode=0) @@ -542,7 +542,7 @@ create table if not exists profiles # update list f.lang.addItems([x[0] for x in anki.lang.langs]) f.lang.setCurrentRow(idx) - d.exec_() + d.exec() def _onLangSelected(self) -> None: f = self.langForm diff --git a/qt/aqt/reviewer.py b/qt/aqt/reviewer.py index 57613b99f..92563c772 100644 --- a/qt/aqt/reviewer.py +++ b/qt/aqt/reviewer.py @@ -934,7 +934,7 @@ time = %(time)d; gui_hooks.reviewer_will_show_context_menu(self, m) qtMenuShortcutWorkaround(m) - m.exec_(QCursor.pos()) + m.exec(QCursor.pos()) def _addMenuItems(self, m: QMenu, rows: Sequence) -> None: for row in rows: diff --git a/qt/aqt/studydeck.py b/qt/aqt/studydeck.py index f1a2953c9..7403e6437 100644 --- a/qt/aqt/studydeck.py +++ b/qt/aqt/studydeck.py @@ -87,7 +87,7 @@ class StudyDeck(QDialog): self.show() # redraw after show so position at center correct self.redraw("", current) - self.exec_() + self.exec() def eventFilter(self, obj: QObject, evt: QEvent) -> bool: if isinstance(evt, QKeyEvent) and evt.type() == QEvent.KeyPress: diff --git a/qt/aqt/sync.py b/qt/aqt/sync.py index 80eb550c1..f84df9ce8 100644 --- a/qt/aqt/sync.py +++ b/qt/aqt/sync.py @@ -324,7 +324,7 @@ def get_id_and_pass_from_user( diag.setLayout(vbox) diag.show() - accepted = diag.exec_() + accepted = diag.exec() if not accepted: return ("", "") return (user.text().strip(), passwd.text()) diff --git a/qt/aqt/taglimit.py b/qt/aqt/taglimit.py index f380f7819..1affd4550 100644 --- a/qt/aqt/taglimit.py +++ b/qt/aqt/taglimit.py @@ -32,7 +32,7 @@ class TagLimit(QDialog): qconnect(s.activated, self.dialog.inactiveList.clearSelection) self.rebuildTagList() restoreGeom(self, "tagLimit") - self.exec_() + self.exec() def rebuildTagList(self) -> None: usertags = self.mw.col.tags.byDeck(self.deck["id"], True) diff --git a/qt/aqt/update.py b/qt/aqt/update.py index d0f5ee144..912c0beae 100644 --- a/qt/aqt/update.py +++ b/qt/aqt/update.py @@ -65,7 +65,7 @@ def askAndUpdate(mw: aqt.AnkiQt, ver: str) -> None: button = QPushButton(tr.qt_misc_ignore_this_update()) msg.addButton(button, QMessageBox.RejectRole) msg.setDefaultButton(QMessageBox.Yes) - ret = msg.exec_() + ret = msg.exec() if msg.clickedButton() == button: # ignore this update mw.pm.meta["suppressUpdate"] = ver diff --git a/qt/aqt/utils.py b/qt/aqt/utils.py index b120ae17f..a972d1b8d 100644 --- a/qt/aqt/utils.py +++ b/qt/aqt/utils.py @@ -141,7 +141,7 @@ def showInfo( b = mb.addButton(QMessageBox.Help) qconnect(b.clicked, lambda: openHelp(help)) b.setAutoDefault(False) - return mb.exec_() + return mb.exec() def showText( @@ -206,7 +206,7 @@ def showText( if geomKey: restoreGeom(diag, geomKey) if run: - diag.exec_() + diag.exec() return None else: return diag, box @@ -263,7 +263,7 @@ class ButtonedDialog(QMessageBox): buttons.append(tr.actions_help()) def run(self) -> str: - self.exec_() + self.exec() but = self.clickedButton().text() if but == "Help": # FIXME stop dialog closing? @@ -356,7 +356,7 @@ def getText( d.setWindowModality(Qt.WindowModal) if geomKey: restoreGeom(d, geomKey) - ret = d.exec_() + ret = d.exec() if geomKey and ret: saveGeom(d, geomKey) return (str(d.l.text()), ret) @@ -391,7 +391,7 @@ def chooseList( bb = QDialogButtonBox(QDialogButtonBox.Ok) qconnect(bb.accepted, d.accept) l.addWidget(bb) - d.exec_() + d.exec() return c.currentRow() @@ -457,7 +457,7 @@ def getFile( qconnect(d.accepted, accept) if key: restoreState(d, key) - d.exec_() + d.exec() if key: saveState(d, key) return ret[0] if ret else None @@ -804,7 +804,7 @@ class MenuList: def popupOver(self, widget: QPushButton) -> None: qmenu = QMenu() self.renderTo(qmenu) - qmenu.exec_(widget.mapToGlobal(QPoint(0, 0))) + qmenu.exec(widget.mapToGlobal(QPoint(0, 0))) class SubMenu(MenuList):