mirror of
https://github.com/ankitects/anki.git
synced 2025-09-18 14:02:21 -04:00
Make toggle actions checkable
This commit is contained in:
parent
e5d68df527
commit
c8146c13c1
2 changed files with 27 additions and 16 deletions
|
@ -167,9 +167,7 @@ class Browser(QMainWindow):
|
|||
lambda: self.remove_tags_from_selected_notes(),
|
||||
)
|
||||
qconnect(f.actionClear_Unused_Tags.triggered, self.clear_unused_tags)
|
||||
qconnect(
|
||||
f.actionToggle_Mark.triggered, lambda: self.toggle_mark_of_selected_notes()
|
||||
)
|
||||
qconnect(f.actionToggle_Mark.triggered, self.toggle_mark_of_selected_notes)
|
||||
qconnect(f.actionChangeModel.triggered, self.onChangeModel)
|
||||
qconnect(f.actionFindDuplicates.triggered, self.onFindDupes)
|
||||
qconnect(f.actionFindReplace.triggered, self.onFindReplace)
|
||||
|
@ -429,9 +427,14 @@ class Browser(QMainWindow):
|
|||
else:
|
||||
self.editor.set_note(None)
|
||||
self._renderPreview()
|
||||
self._update_flags_menu()
|
||||
self._update_context_actions()
|
||||
gui_hooks.browser_did_change_row(self)
|
||||
|
||||
def _update_context_actions(self) -> None:
|
||||
self._update_flags_menu()
|
||||
self._update_toggle_mark_action()
|
||||
self._update_toggle_suspend_action()
|
||||
|
||||
@ensure_editor_saved
|
||||
def on_table_state_changed(self, checked: bool) -> None:
|
||||
self.mw.progress.start()
|
||||
|
@ -725,15 +728,14 @@ where id in %s"""
|
|||
# Suspending
|
||||
######################################################################
|
||||
|
||||
def current_card_is_suspended(self) -> bool:
|
||||
return bool(self.card and self.card.queue == QUEUE_TYPE_SUSPENDED)
|
||||
def _update_toggle_suspend_action(self) -> None:
|
||||
is_suspended = bool(self.card and self.card.queue == QUEUE_TYPE_SUSPENDED)
|
||||
self.form.actionToggle_Suspend.setChecked(is_suspended)
|
||||
|
||||
@ensure_editor_saved_on_trigger
|
||||
def suspend_selected_cards(self) -> None:
|
||||
want_suspend = not self.current_card_is_suspended()
|
||||
@ensure_editor_saved
|
||||
def suspend_selected_cards(self, checked: bool) -> None:
|
||||
cids = self.selected_cards()
|
||||
|
||||
if want_suspend:
|
||||
if checked:
|
||||
suspend_cards(mw=self.mw, card_ids=cids)
|
||||
else:
|
||||
unsuspend_cards(mw=self.mw, card_ids=cids)
|
||||
|
@ -776,12 +778,15 @@ where id in %s"""
|
|||
|
||||
qtMenuShortcutWorkaround(self.form.menuFlag)
|
||||
|
||||
def toggle_mark_of_selected_notes(self) -> None:
|
||||
have_mark = bool(self.card and self.card.note().has_tag(MARKED_TAG))
|
||||
if have_mark:
|
||||
self.remove_tags_from_selected_notes(tags=MARKED_TAG)
|
||||
else:
|
||||
def toggle_mark_of_selected_notes(self, checked: bool) -> None:
|
||||
if checked:
|
||||
self.add_tags_to_selected_notes(tags=MARKED_TAG)
|
||||
else:
|
||||
self.remove_tags_from_selected_notes(tags=MARKED_TAG)
|
||||
|
||||
def _update_toggle_mark_action(self) -> None:
|
||||
is_marked = bool(self.card and self.card.note().has_tag(MARKED_TAG))
|
||||
self.form.actionToggle_Mark.setChecked(is_marked)
|
||||
|
||||
# Scheduling
|
||||
######################################################################
|
||||
|
|
|
@ -467,6 +467,9 @@
|
|||
</property>
|
||||
</action>
|
||||
<action name="actionToggle_Suspend">
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>browsing_toggle_suspend</string>
|
||||
</property>
|
||||
|
@ -561,6 +564,9 @@
|
|||
</property>
|
||||
</action>
|
||||
<action name="actionToggle_Mark">
|
||||
<property name="checkable">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>browsing_toggle_mark</string>
|
||||
</property>
|
||||
|
|
Loading…
Reference in a new issue