mirror of
https://github.com/ankitects/anki.git
synced 2025-11-11 07:07:13 -05:00
use studydeck for deck selection
This commit is contained in:
parent
c8b414b95b
commit
6a74d6627b
2 changed files with 34 additions and 8 deletions
|
|
@ -651,9 +651,19 @@ class Editor(object):
|
|||
if self.addMode:
|
||||
l = QLabel(_("Deck"))
|
||||
tb.addWidget(l, 0, 0)
|
||||
self.deck = aqt.tagedit.TagEdit(self.widget, type=1)
|
||||
self.deck.connect(self.deck, SIGNAL("lostFocus"),
|
||||
self.saveTags)
|
||||
self.deck = QPushButton()
|
||||
self.deck.setAutoDefault(False)
|
||||
self.deck.setStyleSheet("* { text-align: left; }")
|
||||
# not working for some reason
|
||||
#self.deck.setShortcut("Ctrl+D")
|
||||
self.deckShortcut = QShortcut(
|
||||
QKeySequence("Ctrl+D"), self.widget)
|
||||
self.deckShortcut.connect(
|
||||
self.deckShortcut, SIGNAL("activated()"),
|
||||
self.deck.click)
|
||||
self.deck.connect(self.deck, SIGNAL("clicked()"),
|
||||
self.onChangeDeck)
|
||||
self.deck.setToolTip("Change Deck (Ctrl+D)")
|
||||
tb.addWidget(self.deck, 0, 1)
|
||||
else:
|
||||
self.deck = None
|
||||
|
|
@ -669,8 +679,6 @@ class Editor(object):
|
|||
|
||||
def updateTagsAndDeck(self):
|
||||
if self.tags.col != self.mw.col:
|
||||
if self.deck:
|
||||
self.deck.setCol(self.mw.col)
|
||||
self.tags.setCol(self.mw.col)
|
||||
if self.addMode:
|
||||
if self.mw.col.conf.get("addToCur", True):
|
||||
|
|
@ -713,10 +721,17 @@ class Editor(object):
|
|||
m['tags'] = self.note.tags
|
||||
self.mw.col.models.save(m)
|
||||
|
||||
def onChangeDeck(self):
|
||||
from aqt.studydeck import StudyDeck
|
||||
cur = self.deck.text()
|
||||
ret = StudyDeck(
|
||||
self.mw, current=cur, accept=_("Choose"),
|
||||
title=_("Select Deck"), help="addingnotes",
|
||||
cancel=False, parent=self.parentWindow)
|
||||
self.deck.setText(ret.name)
|
||||
|
||||
def hideCompleters(self):
|
||||
self.tags.hideCompleter()
|
||||
if self.addMode:
|
||||
self.deck.hideCompleter()
|
||||
|
||||
# Format buttons
|
||||
######################################################################
|
||||
|
|
|
|||
|
|
@ -10,12 +10,17 @@ from operator import itemgetter
|
|||
|
||||
class StudyDeck(QDialog):
|
||||
def __init__(self, mw, names=None, accept=None, title=None,
|
||||
help="studydeck", current=None, parent=None):
|
||||
help="studydeck", current=None, cancel=True,
|
||||
parent=None):
|
||||
QDialog.__init__(self, parent or mw)
|
||||
self.mw = mw
|
||||
self.form = aqt.forms.studydeck.Ui_Dialog()
|
||||
self.form.setupUi(self)
|
||||
self.form.filter.installEventFilter(self)
|
||||
self.cancel = cancel
|
||||
if not cancel:
|
||||
self.form.buttonBox.removeButton(
|
||||
self.form.buttonBox.button(QDialogButtonBox.Cancel))
|
||||
if title:
|
||||
self.setWindowTitle(title)
|
||||
if not names:
|
||||
|
|
@ -81,3 +86,9 @@ class StudyDeck(QDialog):
|
|||
def accept(self):
|
||||
self.name = self.names[self.form.list.currentRow()]
|
||||
QDialog.accept(self)
|
||||
|
||||
def reject(self):
|
||||
if not self.cancel:
|
||||
return self.accept()
|
||||
QDialog.reject(self)
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue