undo unbury/unsuspend

This commit is contained in:
Damien Elmes 2021-03-04 22:14:35 +10:00
parent 77e4526718
commit 105ce94dd4
4 changed files with 13 additions and 9 deletions

View File

@ -1,3 +1,5 @@
undo-undo = Undo
undo-redo = Redo
# eg "Undo Answer Card" # eg "Undo Answer Card"
undo-undo-action = Undo { $val } undo-undo-action = Undo { $val }
# eg "Answer Card Undone" # eg "Answer Card Undone"
@ -5,5 +7,4 @@ undo-action-undone = { $action } Undone
undo-redo-action = Redo { $action } undo-redo-action = Redo { $action }
undo-action-redone = { $action } Redone undo-action-redone = { $action } Redone
undo-answer-card = Answer Card undo-answer-card = Answer Card
undo-undo = Undo undo-unbury-unsuspend = Unbury/Unsuspend
undo-redo = Redo

View File

@ -505,7 +505,7 @@ class Browser(QMainWindow):
qconnect(f.actionReposition.triggered, self.reposition) qconnect(f.actionReposition.triggered, self.reposition)
qconnect(f.action_set_due_date.triggered, self.set_due_date) qconnect(f.action_set_due_date.triggered, self.set_due_date)
qconnect(f.action_forget.triggered, self.forget_cards) qconnect(f.action_forget.triggered, self.forget_cards)
qconnect(f.actionToggle_Suspend.triggered, self.onSuspend) qconnect(f.actionToggle_Suspend.triggered, self.suspend_selected_cards)
qconnect(f.actionRed_Flag.triggered, lambda: self.onSetFlag(1)) qconnect(f.actionRed_Flag.triggered, lambda: self.onSetFlag(1))
qconnect(f.actionOrange_Flag.triggered, lambda: self.onSetFlag(2)) qconnect(f.actionOrange_Flag.triggered, lambda: self.onSetFlag(2))
qconnect(f.actionGreen_Flag.triggered, lambda: self.onSetFlag(3)) qconnect(f.actionGreen_Flag.triggered, lambda: self.onSetFlag(3))
@ -1255,14 +1255,14 @@ where id in %s"""
# Suspending # Suspending
###################################################################### ######################################################################
def isSuspended(self) -> bool: def current_card_is_suspended(self) -> bool:
return bool(self.card and self.card.queue == QUEUE_TYPE_SUSPENDED) return bool(self.card and self.card.queue == QUEUE_TYPE_SUSPENDED)
def onSuspend(self) -> None: def suspend_selected_cards(self) -> None:
self.editor.saveNow(self._onSuspend) self.editor.saveNow(self._suspend_selected_cards)
def _onSuspend(self) -> None: def _suspend_selected_cards(self) -> None:
want_suspend = not self.isSuspended() want_suspend = not self.current_card_is_suspended()
c = self.selectedCards() c = self.selectedCards()
if want_suspend: if want_suspend:
self.col.sched.suspend_cards(c) self.col.sched.suspend_cards(c)

View File

@ -9,6 +9,7 @@ pub enum CollectionOp {
AnswerCard, AnswerCard,
Bury, Bury,
Suspend, Suspend,
UnburyUnsuspend,
} }
impl Collection { impl Collection {
@ -18,6 +19,7 @@ impl Collection {
CollectionOp::AnswerCard => TR::UndoAnswerCard, CollectionOp::AnswerCard => TR::UndoAnswerCard,
CollectionOp::Bury => TR::StudyingBury, CollectionOp::Bury => TR::StudyingBury,
CollectionOp::Suspend => TR::StudyingSuspend, CollectionOp::Suspend => TR::StudyingSuspend,
CollectionOp::UnburyUnsuspend => TR::UndoUnburyUnsuspend,
}; };
self.i18n.tr(key).to_string() self.i18n.tr(key).to_string()

View File

@ -69,7 +69,8 @@ impl Collection {
} }
pub fn unbury_or_unsuspend_cards(&mut self, cids: &[CardID]) -> Result<()> { pub fn unbury_or_unsuspend_cards(&mut self, cids: &[CardID]) -> Result<()> {
self.transact(None, |col| { self.transact(Some(CollectionOp::UnburyUnsuspend), |col| {
col.clear_study_queues();
col.storage.set_search_table_to_card_ids(cids, false)?; col.storage.set_search_table_to_card_ids(cids, false)?;
col.unsuspend_or_unbury_searched_cards() col.unsuspend_or_unbury_searched_cards()
}) })