diff --git a/aqt/dyndeckconf.py b/aqt/dyndeckconf.py index fe8de2f4e..0a9d0d9a5 100644 --- a/aqt/dyndeckconf.py +++ b/aqt/dyndeckconf.py @@ -41,23 +41,28 @@ class DeckConf(QDialog): def loadConf(self): f = self.form d = self.deck - f.search.setText(d['search']) - f.steps.setText(self.listToUser(d['delays'])) - f.order.setCurrentIndex(d['order']) - f.limit.setValue(d['limit']) - f.fmult.setValue(d['fmult']*100) + search, limit, order = d['terms'][0] + f.search.setText(search) + if d['delays']: + f.steps.setText(self.listToUser(d['delays'])) + f.stepsOn.setChecked(True) + else: + f.steps.setText("1 10") + f.stepsOn.setChecked(False) + f.order.setCurrentIndex(order) + f.limit.setValue(limit) def saveConf(self): f = self.form d = self.deck - steps = self.userToList(f.steps) - if not steps: - return - d['delays'] = steps - d['search'] = f.search.text() - d['order'] = f.order.currentIndex() - d['limit'] = f.limit.value() - d['fmult'] = f.fmult.value() / 100.0 + d['delays'] = None + if f.stepsOn.isChecked(): + steps = self.userToList(f.steps) + if steps: + d['delays'] = steps + d['terms'][0] = [f.search.text(), + f.limit.value(), + f.order.currentIndex()] self.mw.col.decks.save(d) return True diff --git a/aqt/overview.py b/aqt/overview.py index a479b65b7..e9889e6a6 100644 --- a/aqt/overview.py +++ b/aqt/overview.py @@ -95,10 +95,10 @@ class Overview(object): def _desc(self, deck): if deck['dyn']: - desc = "%s
%s
%s" % ( - _("Search: %s") % deck['search'], - _("Order: %s") % dynOrderLabels()[deck['order']], - _("Steps: %s") % " ".join([str(x) for x in deck['delays']])) + search, limit, order = deck['terms'][0] + desc = "%s
%s" % ( + _("Search: %s") % search, + _("Order: %s") % dynOrderLabels()[order].lower()) else: desc = deck.get("desc", "") if not desc: diff --git a/designer/dyndconf.ui b/designer/dyndconf.ui index 43055289a..0507b02f6 100644 --- a/designer/dyndconf.ui +++ b/designer/dyndconf.ui @@ -6,8 +6,8 @@ 0 0 - 397 - 293 + 619 + 300 @@ -15,109 +15,95 @@ - - - - - 1 - - - 99999 - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - Search for: - - - - - - - Learning steps: - - - - - - - Card limit: - - - - - - - 100 - - - - - - - Display order: - - - - - - - % - - - - - - - Example: deck:french tag:hard - - - - - - - Interval on fail: - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - - - - + + + + + + Create deck from search + + + + + + Limit to + + + + + + + Search + + + + + + + + 60 + 16777215 + + + + 1 + + + 9999 + + + + + + + cards selected by + + + + + + + + + + + + + + + + Options + + + + + + Reschedule cards based on my answers in this deck + + + true + + + + + + + Custom steps (in minutes) + + + + + + + false + + + 1 10 + + + + + @@ -146,11 +132,13 @@ search - steps - order limit - fmult + order + resched + stepsOn + steps buttonBox + examples @@ -161,8 +149,8 @@ accept() - 248 - 254 + 254 + 295 157 @@ -177,8 +165,8 @@ reject() - 316 - 260 + 322 + 295 286 @@ -186,5 +174,21 @@ + + stepsOn + toggled(bool) + steps + setEnabled(bool) + + + 126 + 207 + + + 272 + 205 + + +