add template-level deck override

This commit is contained in:
Damien Elmes 2011-12-11 00:44:07 +09:00
parent ed85bec6cc
commit b812b50ee3
2 changed files with 37 additions and 3 deletions

View file

@ -107,14 +107,18 @@ Please create a new card first."""))
l.addWidget(help) l.addWidget(help)
c(help, SIGNAL("clicked()"), self.onHelp) c(help, SIGNAL("clicked()"), self.onHelp)
l.addStretch() l.addStretch()
rename = QPushButton(_("Rename")) rename = QPushButton(_("Rename..."))
rename.setAutoDefault(False) rename.setAutoDefault(False)
l.addWidget(rename) l.addWidget(rename)
c(rename, SIGNAL("clicked()"), self.onRename) c(rename, SIGNAL("clicked()"), self.onRename)
repos = QPushButton(_("Reposition")) repos = QPushButton(_("Reposition..."))
repos.setAutoDefault(False) repos.setAutoDefault(False)
l.addWidget(repos) l.addWidget(repos)
c(repos, SIGNAL("clicked()"), self.onReorder) c(repos, SIGNAL("clicked()"), self.onReorder)
tgt = QPushButton(_("Deck..."))
tgt.setAutoDefault(False)
l.addWidget(tgt)
c(tgt, SIGNAL("clicked()"), self.onTargetDeck)
l.addStretch() l.addStretch()
close = QPushButton(_("Close")) close = QPushButton(_("Close"))
close.setAutoDefault(False) close.setAutoDefault(False)
@ -218,6 +222,34 @@ Please create a new card first."""))
self.mm.addTemplate(self.model, t) self.mm.addTemplate(self.model, t)
self.redraw() self.redraw()
def onTargetDeck(self):
from aqt.tagedit import TagEdit
t = self.card.template()
d = QDialog(self)
d.setWindowTitle("Anki")
d.setMinimumWidth(400)
l = QVBoxLayout()
lab = QLabel(_("""\
Enter deck to place new %s cards in, or leave blank:""") %
self.card.template()['name'])
lab.setWordWrap(True)
l.addWidget(lab)
te = TagEdit(d, type=1)
te.setCol(self.col)
l.addWidget(te)
if t['did']:
te.setText(self.col.decks.get(t['did'])['name'])
te.selectAll()
bb = QDialogButtonBox(QDialogButtonBox.Close)
self.connect(bb, SIGNAL("rejected()"), d, SLOT("close()"))
l.addWidget(bb)
d.setLayout(l)
d.exec_()
if not te.text().strip():
t['did'] = None
else:
t['did'] = self.col.decks.id(te.text())
# Closing & Help # Closing & Help
###################################################################### ######################################################################

View file

@ -245,7 +245,9 @@ class Editor(object):
b.setFixedWidth(20) b.setFixedWidth(20)
if not native: if not native:
b.setStyle(self.plastiqueStyle) b.setStyle(self.plastiqueStyle)
b.setFocusPolicy(Qt.NoFocus) b.setFocusPolicy(Qt.NoFocus)
else:
b.setAutoDefault(False)
if not text: if not text:
b.setIcon(QIcon(":/icons/%s.png" % name)) b.setIcon(QIcon(":/icons/%s.png" % name))
if key: if key: