Updated the TitleBlockProperties class following DiagramContext improvements.

git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@1891 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
xavier
2012-07-01 21:54:06 +00:00
parent dd93f59b26
commit 317d149c89

View File

@@ -75,13 +75,7 @@ void TitleBlockProperties::toXml(QDomElement &e) const {
if (context.keys().count()) { if (context.keys().count()) {
QDomElement properties = e.ownerDocument().createElement("properties"); QDomElement properties = e.ownerDocument().createElement("properties");
foreach (QString key, context.keys()) { context.toXml(properties);
QDomElement property = e.ownerDocument().createElement("property");
property.setAttribute("name", key);
QDomText value = e.ownerDocument().createTextNode(context[key].toString());
property.appendChild(value);
properties.appendChild(property);
}
e.appendChild(properties); e.appendChild(properties);
} }
} }
@@ -103,9 +97,8 @@ void TitleBlockProperties::fromXml(const QDomElement &e) {
// reads the additional fields used to fill the title block // reads the additional fields used to fill the title block
context.clear(); context.clear();
foreach (QDomElement property, QET::findInDomElement(e, "properties", "property")) { foreach (QDomElement e, QET::findInDomElement(e, "properties")) {
if (!property.hasAttribute("name")) continue; context.fromXml(e);
context.addValue(property.attribute("name"), QVariant(property.text()));
} }
} }
@@ -120,16 +113,7 @@ void TitleBlockProperties::toSettings(QSettings &settings, const QString &prefix
settings.setValue(prefix + "filename", filename); settings.setValue(prefix + "filename", filename);
settings.setValue(prefix + "folio", folio); settings.setValue(prefix + "folio", folio);
settings.setValue(prefix + "date", exportDate()); settings.setValue(prefix + "date", exportDate());
context.toSettings(settings, prefix + "properties");
settings.beginWriteArray(prefix + "properties");
int i = 0;
foreach (QString key, context.keys()) {
settings.setArrayIndex(i);
settings.setValue("name", key);
settings.setValue("value", context[key].toString());
++ i;
}
settings.endArray();
} }
/** /**
@@ -143,15 +127,7 @@ void TitleBlockProperties::fromSettings(QSettings &settings, const QString &pref
filename = settings.value(prefix + "filename").toString(); filename = settings.value(prefix + "filename").toString();
folio = settings.value(prefix + "folio", "%id/%total").toString(); folio = settings.value(prefix + "folio", "%id/%total").toString();
setDateFromString(settings.value(prefix + "date").toString()); setDateFromString(settings.value(prefix + "date").toString());
context.fromSettings(settings, prefix + "properties");
int size = settings.beginReadArray(prefix + "properties");
for (int i = 0 ; i < size; ++ i) {
settings.setArrayIndex(i);
QString key = settings.value("name").toString();
if (key.isEmpty()) continue;
context.addValue(key, settings.value("value").toString());
}
settings.endArray();
} }
/** /**