def accept(self) -> None: request = CustomStudyRequest() if self.radioIdx == RADIO_NEW: request.new_limit_delta = self.form.spin.value() elif self.radioIdx == RADIO_REV: request.review_limit_delta = self.form.spin.value() elif self.radioIdx == RADIO_FORGOT: request.forgot_days = self.form.spin.value() elif self.radioIdx == RADIO_AHEAD: request.review_ahead_days = self.form.spin.value() elif self.radioIdx == RADIO_PREVIEW: request.preview_days = self.form.spin.value() else: request.cram.card_limit = self.form.spin.value() tags = TagLimit.get_tags(self.mw, self) request.cram.tags_to_include.extend(tags[0]) request.cram.tags_to_exclude.extend(tags[1]) cram_type = self.form.cardType.currentRow() if cram_type == TYPE_NEW: request.cram.kind = CustomStudyRequest.Cram.CRAM_KIND_NEW elif cram_type == TYPE_DUE: request.cram.kind = CustomStudyRequest.Cram.CRAM_KIND_DUE elif cram_type == TYPE_REVIEW: request.cram.kind = CustomStudyRequest.Cram.CRAM_KIND_REVIEW else: request.cram.kind = CustomStudyRequest.Cram.CRAM_KIND_ALL # keep open on failure, as the cause was most likely an empty search # result, which the user can remedy custom_study(parent=self, request=request).success( lambda _: QDialog.accept(self)).run_in_background()
def accept(self) -> None: request = CustomStudyRequest(deck_id=self.deck_id) if self.radioIdx == RADIO_NEW: request.new_limit_delta = self.form.spin.value() elif self.radioIdx == RADIO_REV: request.review_limit_delta = self.form.spin.value() elif self.radioIdx == RADIO_FORGOT: request.forgot_days = self.form.spin.value() elif self.radioIdx == RADIO_AHEAD: request.review_ahead_days = self.form.spin.value() elif self.radioIdx == RADIO_PREVIEW: request.preview_days = self.form.spin.value() else: request.cram.card_limit = self.form.spin.value() cram_type = self.form.cardType.currentRow() if cram_type == TYPE_NEW: request.cram.kind = CustomStudyRequest.Cram.CRAM_KIND_NEW elif cram_type == TYPE_DUE: request.cram.kind = CustomStudyRequest.Cram.CRAM_KIND_DUE elif cram_type == TYPE_REVIEW: request.cram.kind = CustomStudyRequest.Cram.CRAM_KIND_REVIEW else: request.cram.kind = CustomStudyRequest.Cram.CRAM_KIND_ALL def on_done(include: list[str], exclude: list[str]) -> None: request.cram.tags_to_include.extend(include) request.cram.tags_to_exclude.extend(exclude) self._create_and_close(request) # continues in background TagLimit(self, self.defaults.tags, on_done) return # other cases are synchronous self._create_and_close(request)
def _getTags(self): from aqt.taglimit import TagLimit t = TagLimit(self.mw, self) return t.tags
def _getTags(self): from aqt.taglimit import TagLimit return TagLimit(self.mw, self).tags