def __init__(self, mw: aqt.AnkiQt, deck: dict) -> None: QDialog.__init__(self, mw) self.mw = mw self.deck = deck self.childDids = [ d[1] for d in self.mw.col.decks.children(self.deck["id"]) ] self._origNewOrder = None self.form = aqt.forms.dconf.Ui_Dialog() self.form.setupUi(self) gui_hooks.deck_conf_did_setup_ui_form(self) self.mw.checkpoint(tr.actions_options()) self.setupCombos() self.setupConfs() self.setWindowModality(Qt.WindowModal) qconnect(self.form.buttonBox.helpRequested, lambda: openHelp(HelpPage.DECK_OPTIONS)) qconnect(self.form.confOpts.clicked, self.confOpts) qconnect( self.form.buttonBox.button( QDialogButtonBox.RestoreDefaults).clicked, self.onRestore, ) self.setWindowTitle( without_unicode_isolation( tr.actions_options_for(val=self.deck["name"]))) disable_help_button(self) # qt doesn't size properly with altered fonts otherwise restoreGeom(self, "deckconf", adjustSize=True) gui_hooks.deck_conf_will_show(self) self.show() self.exec_() saveGeom(self, "deckconf")
def _contextMenu(self) -> List[Any]: currentFlag = self.card and self.card.user_flag() opts = [ [ tr.studying_flag_card(), [[ flag.label, f"Ctrl+{flag.index}", self.set_flag_func(flag.index), dict(checked=currentFlag == flag.index), ] for flag in load_flags(self.mw.col)], ], [tr.studying_bury_card(), "-", self.bury_current_card], [tr.actions_set_due_date(), "Ctrl+Shift+D", self.on_set_due], [tr.actions_suspend_card(), "@", self.suspend_current_card], [tr.actions_options(), "O", self.onOptions], [tr.actions_card_info(), "I", self.on_card_info], None, [tr.studying_mark_note(), "*", self.toggle_mark_on_current_note], [tr.studying_bury_note(), "=", self.bury_current_note], [tr.studying_suspend_note(), "!", self.suspend_current_note], [ tr.studying_delete_note(), "Ctrl+Delete", self.delete_current_note ], None, [tr.actions_replay_audio(), "R", self.replayAudio], [tr.studying_pause_audio(), "5", self.on_pause_audio], [tr.studying_audio_5s(), "6", self.on_seek_backward], [tr.studying_audio_and5s(), "7", self.on_seek_forward], [tr.studying_record_own_voice(), "Shift+V", self.onRecordVoice], [tr.studying_replay_own_voice(), "V", self.onReplayRecorded], ] return opts
def _showOptions(self, did: str) -> None: m = QMenu(self.mw) a = m.addAction(tr.actions_rename()) qconnect(a.triggered, lambda b, did=did: self._rename(DeckId(int(did)))) a = m.addAction(tr.actions_options()) qconnect(a.triggered, lambda b, did=did: self._options(DeckId(int(did)))) a = m.addAction(tr.actions_export()) qconnect(a.triggered, lambda b, did=did: self._export(DeckId(int(did)))) 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())
def _contextMenu(self) -> List[Any]: currentFlag = self.card and self.card.user_flag() opts = [ [ tr.studying_flag_card(), [ [ tr.actions_red_flag(), "Ctrl+1", lambda: self.set_flag_on_current_card(1), dict(checked=currentFlag == 1), ], [ tr.actions_orange_flag(), "Ctrl+2", lambda: self.set_flag_on_current_card(2), dict(checked=currentFlag == 2), ], [ tr.actions_green_flag(), "Ctrl+3", lambda: self.set_flag_on_current_card(3), dict(checked=currentFlag == 3), ], [ tr.actions_blue_flag(), "Ctrl+4", lambda: self.set_flag_on_current_card(4), dict(checked=currentFlag == 4), ], ], ], [tr.studying_mark_note(), "*", self.toggle_mark_on_current_note], [tr.studying_bury_card(), "-", self.bury_current_card], [tr.studying_bury_note(), "=", self.bury_current_note], [tr.actions_set_due_date(), "Ctrl+Shift+D", self.on_set_due], [tr.actions_suspend_card(), "@", self.suspend_current_card], [tr.studying_suspend_note(), "!", self.suspend_current_note], [ tr.studying_delete_note(), "Ctrl+Delete", self.delete_current_note ], [tr.actions_options(), "O", self.onOptions], None, [tr.actions_replay_audio(), "R", self.replayAudio], [tr.studying_pause_audio(), "5", self.on_pause_audio], [tr.studying_audio_5s(), "6", self.on_seek_backward], [tr.studying_audio_and5s(), "7", self.on_seek_forward], [tr.studying_record_own_voice(), "Shift+V", self.onRecordVoice], [tr.studying_replay_own_voice(), "V", self.onReplayRecorded], ] return opts
def _renderBottom(self) -> None: links = [ ["O", "opts", tr.actions_options()], ] if self.mw.col.decks.current()["dyn"]: links.append(["R", "refresh", tr.actions_rebuild()]) links.append(["E", "empty", tr.studying_empty()]) else: links.append(["C", "studymore", tr.actions_custom_study()]) # links.append(["F", "cram", _("Filter/Cram")]) if self.mw.col.sched.haveBuried(): links.append(["U", "unbury", tr.studying_unbury()]) links.append(["", "description", tr.scheduling_description()]) buf = "" for b in links: if b[0]: b[0] = tr.actions_shortcut_key(val=shortcut(b[0])) buf += """ <button title="%s" onclick='pycmd("%s")'>%s</button>""" % tuple(b) self.bottom.draw(buf=buf, link_handler=self._linkHandler, web_context=OverviewBottomBar(self))
def _options(): return tr.actions_options() if _version_ge_2_1_45() else _("Options")