mirror of
https://github.com/ankitects/anki.git
synced 2025-09-19 14:32:22 -04:00
change model, description editing
This commit is contained in:
parent
1f3f948ad1
commit
494b7310f0
3 changed files with 35 additions and 10 deletions
|
@ -840,6 +840,9 @@ where id in %s""" % ids2str(sf))
|
|||
######################################################################
|
||||
|
||||
def onChangeModel(self):
|
||||
return showInfo("not yet implemented")
|
||||
# given implicit card generation now, we need to fix model changing:
|
||||
# need to generate any unmapped cards
|
||||
nids = self.oneModelNotes()
|
||||
if nids:
|
||||
ChangeModel(self, nids)
|
||||
|
@ -1264,7 +1267,7 @@ class ChangeModel(QDialog):
|
|||
self.form.templateMap.setLayout(self.tlayout)
|
||||
# model chooser
|
||||
import aqt.modelchooser
|
||||
self.oldModel = self.browser.col.decks.current()
|
||||
self.oldModel = self.browser.col.models.current()
|
||||
self.form.oldModelLabel.setText(self.oldModel['name'])
|
||||
self.modelChooser = aqt.modelchooser.ModelChooser(
|
||||
self.browser.mw, self.form.modelChooserWidget, label=False)
|
||||
|
@ -1286,11 +1289,11 @@ class ChangeModel(QDialog):
|
|||
def rebuildTemplateMap(self, key=None, attr=None):
|
||||
if not key:
|
||||
key = "t"
|
||||
attr = "templates"
|
||||
attr = "tmpls"
|
||||
map = getattr(self, key + "widg")
|
||||
lay = getattr(self, key + "layout")
|
||||
src = getattr(self.oldModel, attr)
|
||||
dst = getattr(self.targetModel, attr)
|
||||
src = self.oldModel[attr]
|
||||
dst = self.targetModel[attr]
|
||||
if map:
|
||||
lay.removeWidget(map)
|
||||
map.deleteLater()
|
||||
|
@ -1319,7 +1322,7 @@ class ChangeModel(QDialog):
|
|||
setattr(self, key + "indices", indices)
|
||||
|
||||
def rebuildFieldMap(self):
|
||||
return self.rebuildTemplateMap(key="f", attr="fields")
|
||||
return self.rebuildTemplateMap(key="f", attr="flds")
|
||||
|
||||
def onComboChanged(self, i, cb, key):
|
||||
indices = getattr(self, key + "indices")
|
||||
|
@ -1343,9 +1346,9 @@ class ChangeModel(QDialog):
|
|||
|
||||
def getTemplateMap(self, old=None, combos=None, new=None):
|
||||
if not old:
|
||||
old = self.oldModel.templates
|
||||
old = self.oldModel['tmpls']
|
||||
combos = self.tcombos
|
||||
new = self.targetModel.templates
|
||||
new = self.targetModel['tmpls']
|
||||
map = {}
|
||||
for i, f in enumerate(old):
|
||||
idx = combos[i].currentIndex()
|
||||
|
@ -1359,9 +1362,9 @@ class ChangeModel(QDialog):
|
|||
|
||||
def getFieldMap(self):
|
||||
return self.getTemplateMap(
|
||||
old=self.oldModel.fields,
|
||||
old=self.oldModel['flds'],
|
||||
combos=self.fcombos,
|
||||
new=self.targetModel.fields)
|
||||
new=self.targetModel['flds'])
|
||||
|
||||
def cleanup(self):
|
||||
remHook("reset", self.onReset)
|
||||
|
@ -1387,7 +1390,8 @@ Are you sure you want to continue?""")):
|
|||
b = self.browser
|
||||
b.mw.progress.start()
|
||||
b.model.beginReset()
|
||||
self.oldModel.changeModel(self.nids, self.targetModel, fmap, cmap)
|
||||
mm = b.mw.col.models
|
||||
mm.change(self.oldModel, self.nids, self.targetModel, fmap, cmap)
|
||||
b.onSearch(reset=False)
|
||||
b.model.endReset()
|
||||
b.mw.progress.finish()
|
||||
|
|
|
@ -147,6 +147,8 @@ class DeckConf(QDialog):
|
|||
c = self.conf
|
||||
f.maxTaken.setValue(c['maxTaken'])
|
||||
f.autoplaySounds.setChecked(c['autoplay'])
|
||||
# description
|
||||
f.desc.setPlainText(self.deck['desc'])
|
||||
|
||||
def onRestore(self):
|
||||
self.mw.progress.start()
|
||||
|
@ -215,6 +217,8 @@ class DeckConf(QDialog):
|
|||
c = self.conf
|
||||
c['maxTaken'] = f.maxTaken.value()
|
||||
c['autoplay'] = f.autoplaySounds.isChecked()
|
||||
# description
|
||||
self.deck['desc'] = f.desc.toPlainText()
|
||||
self.mw.col.decks.save(self.conf)
|
||||
|
||||
def reject(self):
|
||||
|
|
|
@ -576,6 +576,23 @@
|
|||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QWidget" name="tab_4">
|
||||
<attribute name="title">
|
||||
<string>Description</string>
|
||||
</attribute>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_5">
|
||||
<item>
|
||||
<widget class="QLabel" name="label_22">
|
||||
<property name="text">
|
||||
<string>Description to show on study screen:</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QTextEdit" name="desc"/>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
|
|
Loading…
Reference in a new issue