mirror of
https://github.com/ankitects/anki.git
synced 2025-09-24 16:56:36 -04:00
fields area half ported
This commit is contained in:
parent
96e3cf30aa
commit
d0a9ec96c1
1 changed files with 23 additions and 33 deletions
|
@ -6,8 +6,6 @@ from PyQt4.QtCore import *
|
||||||
from PyQt4.QtWebKit import QWebPage, QWebView
|
from PyQt4.QtWebKit import QWebPage, QWebView
|
||||||
import re
|
import re
|
||||||
from anki.consts import *
|
from anki.consts import *
|
||||||
#from anki.models import *
|
|
||||||
#from anki.facts import *
|
|
||||||
import aqt
|
import aqt
|
||||||
from anki.sound import playFromText, clearAudioQueue
|
from anki.sound import playFromText, clearAudioQueue
|
||||||
from aqt.utils import saveGeom, restoreGeom, getBase, mungeQA, \
|
from aqt.utils import saveGeom, restoreGeom, getBase, mungeQA, \
|
||||||
|
@ -232,6 +230,9 @@ class CardLayout(QDialog):
|
||||||
return ""
|
return ""
|
||||||
|
|
||||||
def reject(self):
|
def reject(self):
|
||||||
|
self.model.flush()
|
||||||
|
saveGeom(self, "CardLayout")
|
||||||
|
saveSplitter(self.form.splitter, "clayout")
|
||||||
return QDialog.reject(self)
|
return QDialog.reject(self)
|
||||||
|
|
||||||
self.fact.model.setModified()
|
self.fact.model.setModified()
|
||||||
|
@ -254,8 +255,6 @@ class CardLayout(QDialog):
|
||||||
if reset:
|
if reset:
|
||||||
self.mw.reset()
|
self.mw.reset()
|
||||||
self.deck.finishProgress()
|
self.deck.finishProgress()
|
||||||
saveGeom(self, "CardLayout")
|
|
||||||
saveSplitter(self.form.splitter, "clayout")
|
|
||||||
QDialog.reject(self)
|
QDialog.reject(self)
|
||||||
|
|
||||||
def onHelp(self):
|
def onHelp(self):
|
||||||
|
@ -332,38 +331,29 @@ class CardLayout(QDialog):
|
||||||
if self.updatingFields:
|
if self.updatingFields:
|
||||||
return
|
return
|
||||||
self.updatingFields = True
|
self.updatingFields = True
|
||||||
field = self.field
|
fld = self.field
|
||||||
name = unicode(self.form.fieldName.text()) or _("Field")
|
# get name; we'll handle it last
|
||||||
if field.name != name:
|
name = unicode(self.form.fieldName.text())
|
||||||
oldVal = self.fact[field.name]
|
if not name:
|
||||||
self.deck.renameFieldModel(self.model, field, name)
|
return
|
||||||
# the card models will have been updated
|
fld['uniq'] = self.form.fieldUnique.isChecked()
|
||||||
self.readCard()
|
fld['req'] = self.form.fieldRequired.isChecked()
|
||||||
# for add card case
|
fld['font'] = unicode(
|
||||||
self.updateFact()
|
self.form.fontFamily.currentFont().family())
|
||||||
self.fact[name] = oldVal
|
fld['qsize'] = self.form.fontSize.value()
|
||||||
field.unique = self.form.fieldUnique.isChecked()
|
fld['esize'] = self.form.fontSizeEdit.value()
|
||||||
field.required = self.form.fieldRequired.isChecked()
|
fld['qcol'] = str(
|
||||||
field.numeric = self.form.numeric.isChecked()
|
|
||||||
field.quizFontFamily = toCanonicalFont(unicode(
|
|
||||||
self.form.fontFamily.currentFont().family()))
|
|
||||||
field.quizFontSize = int(self.form.fontSize.value())
|
|
||||||
field.editFontSize = int(self.form.fontSizeEdit.value())
|
|
||||||
field.quizFontColour = str(
|
|
||||||
self.form.fontColour.palette().window().color().name())
|
self.form.fontColour.palette().window().color().name())
|
||||||
if self.form.rtl.isChecked():
|
fld['rtl'] = self.form.rtl.isChecked()
|
||||||
field.features = u"rtl"
|
fld['pre'] = self.form.preserveWhitespace.isChecked()
|
||||||
else:
|
self.updatingFields = False
|
||||||
field.features = u""
|
if fld['name'] != name:
|
||||||
if self.form.preserveWhitespace.isChecked():
|
self.model.renameField(fld, name)
|
||||||
field.editFontFamily = u"preserve"
|
# as the field name has changed, we have to regenerate cards
|
||||||
else:
|
self.cards = self.deck.previewCards(self.fact, self.type)
|
||||||
field.editFontFamily = u""
|
self.cardChanged(0)
|
||||||
field.model.setModified()
|
|
||||||
self.deck.flushMod()
|
|
||||||
self.renderPreview()
|
self.renderPreview()
|
||||||
self.fillFieldList()
|
self.fillFieldList()
|
||||||
self.updatingFields = False
|
|
||||||
|
|
||||||
def fillFieldList(self, row = None):
|
def fillFieldList(self, row = None):
|
||||||
oldRow = self.form.fieldList.currentRow()
|
oldRow = self.form.fieldList.currentRow()
|
||||||
|
|
Loading…
Reference in a new issue