From 2bb2a4f4127cbdf9613672de2157f968448b1cc6 Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Sun, 20 May 2012 21:22:15 +0900 Subject: [PATCH] study more option when daily limits reached --- aqt/overview.py | 28 +++++++++ designer/limits.ui | 143 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 171 insertions(+) create mode 100644 designer/limits.ui diff --git a/aqt/overview.py b/aqt/overview.py index 925909f72..da9e80703 100644 --- a/aqt/overview.py +++ b/aqt/overview.py @@ -55,6 +55,8 @@ class Overview(object): self.mw.moveToState("deckBrowser") elif url == "review": openLink(aqt.appShared+"info/%s?v=%s"%(self.sid, self.sidVer)) + elif url == "limits": + self.onLimits() def _keyHandler(self, evt): cram = self.mw.col.decks.current()['dyn'] @@ -69,6 +71,8 @@ class Overview(object): if key == "e" and cram: self.mw.col.sched.remDyn(self.mw.col.decks.selected()) self.mw.reset() + if key == "l": + self.onLimits() # HTML ############################################################ @@ -186,6 +190,10 @@ text-align: center; links.append(["R", "refresh", _("Rebuild")]) links.append(["E", "empty", _("Empty")]) else: + if not sum(self.mw.col.sched.counts()): + if self.mw.col.sched.newDue() or \ + self.mw.col.sched.revDue(): + links.append(["L", "limits", _("Study More")]) links.append(["C", "cram", _("Filter/Cram")]) buf = "" for b in links: @@ -196,3 +204,23 @@ text-align: center; self.bottom.draw(buf) self.bottom.web.setFixedHeight(isMac and 28 or 36) self.bottom.web.setLinkHandler(self._linkHandler) + + # Today's limits + ###################################################################### + + def onLimits(self): + d = QDialog(self.mw) + frm = aqt.forms.limits.Ui_Dialog() + frm.setupUi(d) + deck = self.mw.col.decks.current() + frm.newToday.setValue(deck.get('extendNew', 10)) + frm.revToday.setValue(deck.get('extendRev', 50)) + def accept(): + n = deck['extendNew'] = frm.newToday.value() + r = deck['extendRev'] = frm.revToday.value() + self.mw.col.decks.save(deck) + self.mw.col.sched.extendLimits(n, r) + self.mw.reset() + d.connect(frm.buttonBox, SIGNAL("accepted()"), accept) + d.exec_() + diff --git a/designer/limits.ui b/designer/limits.ui new file mode 100644 index 000000000..ba36c4931 --- /dev/null +++ b/designer/limits.ui @@ -0,0 +1,143 @@ + + + Dialog + + + + 0 + 0 + 428 + 183 + + + + Extend Limits + + + + + + + + + + + + + + + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + Today's review limit + + + + + + + + + + + + + + + Today's new card limit + + + + + + + Qt::Horizontal + + + + 40 + 20 + + + + + + + + + + To review cards before they are due, please use filter/cram. + + + true + + + + + + + Qt::Horizontal + + + QDialogButtonBox::Cancel|QDialogButtonBox::Ok + + + + + + + newToday + revToday + buttonBox + + + + + buttonBox + accepted() + Dialog + accept() + + + 248 + 254 + + + 157 + 274 + + + + + buttonBox + rejected() + Dialog + reject() + + + 316 + 260 + + + 286 + 274 + + + + +