diff --git a/aqt/deckconf.py b/aqt/deckconf.py index 1d15a38b0..d64b3bec1 100644 --- a/aqt/deckconf.py +++ b/aqt/deckconf.py @@ -9,10 +9,10 @@ from aqt.utils import showInfo, showWarning, openHelp, getOnlyText from operator import itemgetter class DeckConf(QDialog): - def __init__(self, mw): + def __init__(self, mw, deck): QDialog.__init__(self, mw) self.mw = mw - self.deck = self.mw.col.decks.current() + self.deck = deck self.form = aqt.forms.dconf.Ui_Dialog() self.form.setupUi(self) self.mw.checkpoint(_("Options")) diff --git a/aqt/main.py b/aqt/main.py index 9227080a2..f2bfb927d 100755 --- a/aqt/main.py +++ b/aqt/main.py @@ -672,13 +672,15 @@ Debug info:\n%s""") % traceback.format_exc(), help="DeckErrors") import aqt.stats self.cardStats = aqt.stats.CardStats(self) - def onDeckConf(self): - if self.col.decks.current()['dyn']: + def onDeckConf(self, deck=None): + if not deck: + deck = self.col.decks.current() + if deck['dyn']: import aqt.dyndeckconf aqt.dyndeckconf.DeckConf(self) else: import aqt.deckconf - aqt.deckconf.DeckConf(self) + aqt.deckconf.DeckConf(self, deck) def onOverview(self): self.col.reset() diff --git a/aqt/reviewer.py b/aqt/reviewer.py index 2795e27d2..de988c03a 100644 --- a/aqt/reviewer.py +++ b/aqt/reviewer.py @@ -220,6 +220,8 @@ function _typeAnsPress() { self.mw.onBuryNote() elif key == "=": self.mw.onSuspend() + elif key == "o": + self.onOptions() elif key in ("1", "2", "3", "4"): self._answerCard(int(key)) elif evt.key() == Qt.Key_Delete: @@ -566,13 +568,15 @@ Card was a leech.""") % link) # Context menu ########################################################################## + # note the shortcuts listed here also need to be defined above def showContextMenu(self): opts = [ [_("Replay Audio"), "r", self.replayAudio], [_("Mark Note"), "*", self.mw.onMark], [_("Bury Note"), "-", self.mw.onBuryNote], [_("Suspend Note"), "=", self.mw.onSuspend], - [_("Delete Note"), "Delete", self.mw.onDelete] + [_("Delete Note"), "Delete", self.mw.onDelete], + [_("Card Options"), "o", self.onOptions] ] m = QMenu(self.mw) for label, scut, func in opts: @@ -580,3 +584,8 @@ Card was a leech.""") % link) a.setShortcut(QKeySequence(scut)) a.connect(a, SIGNAL("triggered()"), func) m.exec_(QCursor.pos()) + + def onOptions(self): + self.mw.onDeckConf(self.mw.col.decks.get( + self.card.odid or self.card.did)) +