diff --git a/aqt/cram.py b/aqt/cram.py deleted file mode 100644 index 6047bd88b..000000000 --- a/aqt/cram.py +++ /dev/null @@ -1,63 +0,0 @@ -# Copyright: Damien Elmes -# -*- coding: utf-8 -*- -# License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html - - def onCram(self, cardIds=[]): - te = aqt.tagedit.TagEdit(self) - te.setDeck(self.deck, "all") - diag = GetTextDialog( - self, _("Tags to cram:"), help="CramMode", edit=te) - l = diag.layout() - g = QGroupBox(_("Review Mode")) - l.insertWidget(2, g) - box = QVBoxLayout() - g.setLayout(box) - keep = QRadioButton(_("Show oldest modified first")) - box.addWidget(keep) - keep.setChecked(True) - diag.setTabOrder(diag.l, keep) - order = QRadioButton(_("Show in order added")) - box.addWidget(order) - random = QRadioButton(_("Show in random order")) - box.addWidget(random) - # hide tag list if we have ids - if cardIds: - diag.l.hide() - diag.qlabel.hide() - if diag.exec_(): - if keep.isChecked(): - order = "type, modified" - elif order.isChecked(): - order = "created" - else: - order = "random()" - if cardIds: - active = cardIds - else: - active = unicode(diag.l.text()) - self.deck.setupCramScheduler(active, order) - if self.state == "studyScreen": - self.onStartReview() - else: - self.deck.reset() - self.deck.getCard() # so scheduler will reset if empty - self.moveToState("initial") - if not self.deck.finishScheduler: - showInfo(_("No cards matched the provided tags.")) - - -# cram options - - c = self.conf['cram'] - f.cramSteps.setText(self.listToUser(c['delays'])) - f.cramBoost.setChecked(c['resched']) - f.cramReset.setChecked(c['reset']) - f.cramMult.setValue(c['mult']*100) - f.cramMinInt.setValue(c['minInt']) - - c = self.conf['cram'] - self.updateList(c, 'delays', f.cramSteps) - c['resched'] = f.cramBoost.isChecked() - c['reset'] = f.cramReset.isChecked() - c['mult'] = f.cramMult.value()/100.0 - c['minInt'] = f.cramMinInt.value() diff --git a/aqt/dyndeckconf.py b/aqt/dyndeckconf.py index 4cb80c8be..282eee592 100644 --- a/aqt/dyndeckconf.py +++ b/aqt/dyndeckconf.py @@ -9,12 +9,18 @@ from aqt.utils import showInfo, showWarning, openHelp, getOnlyText from operator import itemgetter class DeckConf(QDialog): - def __init__(self, mw): + def __init__(self, mw, first=False): QDialog.__init__(self, mw) self.mw = mw self.deck = self.mw.col.decks.current() self.form = aqt.forms.dyndconf.Ui_Dialog() self.form.setupUi(self) + if first: + label = _("Build") + else: + label = _("Rebuild") + self.ok = self.form.buttonBox.addButton( + label, QDialogButtonBox.AcceptRole) self.mw.checkpoint(_("Options")) self.setWindowModality(Qt.WindowModal) self.connect(self.form.buttonBox, @@ -54,7 +60,8 @@ class DeckConf(QDialog): return True def reject(self): - self.accept() + self.ok = False + QDialog.reject(self) def accept(self): if not self.saveConf(): diff --git a/aqt/main.py b/aqt/main.py index 6a3d8a239..811d4fc25 100755 --- a/aqt/main.py +++ b/aqt/main.py @@ -719,6 +719,7 @@ Debug info:\n%s""") % traceback.format_exc(), help="DeckErrors") ########################################################################## def onCram(self): + import aqt.dyndeckconf n = 1 decks = self.col.decks.allNames() while _("Cram %d") % n in decks: @@ -731,8 +732,12 @@ Debug info:\n%s""") % traceback.format_exc(), help="DeckErrors") showWarning(_("The provided name was already in use.")) return did = self.col.decks.newDyn(name) - self.onDeckConf() - self.moveToState("overview") + diag = aqt.dyndeckconf.DeckConf(self, first=True) + if not diag.ok: + # user cancelled first config + self.col.decks.rem(did) + else: + self.moveToState("overview") # Language handling ########################################################################## diff --git a/designer/cram.ui b/designer/cram.ui deleted file mode 100644 index d1865e321..000000000 --- a/designer/cram.ui +++ /dev/null @@ -1,149 +0,0 @@ - - - Dialog - - - - 0 - 0 - 400 - 300 - - - - Dialog - - - - - - - - Steps (in minutes) - - - - - - - - - - New interval - - - - - - - Reset interval of cards failed during cram - - - - - - - false - - - 1 - - - - - - - Minimal interval - - - - - - - Boost regular interval - - - - - - - false - - - 100 - - - 5 - - - - - - - days - - - - - - - - 0 - 0 - - - - % - - - - - - - - - Qt::Horizontal - - - QDialogButtonBox::Cancel|QDialogButtonBox::Ok - - - - - - - - - buttonBox - accepted() - Dialog - accept() - - - 248 - 254 - - - 157 - 274 - - - - - buttonBox - rejected() - Dialog - reject() - - - 316 - 260 - - - 286 - 274 - - - - - diff --git a/designer/dyndconf.ui b/designer/dyndconf.ui index 10629232b..67d2ca98b 100644 --- a/designer/dyndconf.ui +++ b/designer/dyndconf.ui @@ -138,7 +138,7 @@ Qt::Horizontal - QDialogButtonBox::Help|QDialogButtonBox::Ok + QDialogButtonBox::Cancel|QDialogButtonBox::Help