void AbstractContent::toXml(QDomElement & contentElement, const QDir & /*baseDir*/) const { // Save general item properties contentElement.setTagName("abstract"); QDomDocument doc = contentElement.ownerDocument(); QDomElement domElement; QDomText text; QString valueStr; // Save item position and size QDomElement rectParent = doc.createElement("rect"); QDomElement xElement = doc.createElement("x"); rectParent.appendChild(xElement); QDomElement yElement = doc.createElement("y"); rectParent.appendChild(yElement); QDomElement wElement = doc.createElement("w"); rectParent.appendChild(wElement); QDomElement hElement = doc.createElement("h"); rectParent.appendChild(hElement); QRectF rect = m_contentRect; xElement.appendChild(doc.createTextNode(QString::number(rect.left()))); yElement.appendChild(doc.createTextNode(QString::number(rect.top()))); wElement.appendChild(doc.createTextNode(QString::number(rect.width()))); hElement.appendChild(doc.createTextNode(QString::number(rect.height()))); contentElement.appendChild(rectParent); // Save the position domElement = doc.createElement("pos"); xElement = doc.createElement("x"); yElement = doc.createElement("y"); valueStr.setNum(pos().x()); xElement.appendChild(doc.createTextNode(valueStr)); valueStr.setNum(pos().y()); yElement.appendChild(doc.createTextNode(valueStr)); domElement.appendChild(xElement); domElement.appendChild(yElement); contentElement.appendChild(domElement); // Save the stacking position domElement= doc.createElement("zvalue"); contentElement.appendChild(domElement); valueStr.setNum(zValue()); text = doc.createTextNode(valueStr); domElement.appendChild(text); // Save the visible state domElement= doc.createElement("visible"); contentElement.appendChild(domElement); valueStr.setNum(isVisible()); text = doc.createTextNode(valueStr); domElement.appendChild(text); // Save the opacity if (contentOpacity() < 1.0) { domElement= doc.createElement("opacity"); contentElement.appendChild(domElement); domElement.appendChild(doc.createTextNode(QString::number(contentOpacity()))); } // Save the Fx Index if (fxIndex() > 0) { domElement = doc.createElement("fxindex"); contentElement.appendChild(domElement); domElement.appendChild(doc.createTextNode(QString::number(fxIndex()))); } // Save the frame class valueStr.setNum(frameClass()); domElement= doc.createElement("frame-class"); contentElement.appendChild(domElement); text = doc.createTextNode(valueStr); domElement.appendChild(text); domElement= doc.createElement("frame-text-enabled"); contentElement.appendChild(domElement); valueStr.setNum(frameTextEnabled()); text = doc.createTextNode(valueStr); domElement.appendChild(text); if(frameTextEnabled()) { domElement= doc.createElement("frame-text"); contentElement.appendChild(domElement); text = doc.createTextNode(frameText()); domElement.appendChild(text); } // save transformation const QTransform t = transform(); if (!t.isIdentity() || rotation() != 0) { domElement = doc.createElement("transformation"); domElement.setAttribute("xRot", m_perspectiveAngles.x()); domElement.setAttribute("yRot", m_perspectiveAngles.y()); #if QT_VERSION < 0x040600 domElement.setAttribute("zRot", m_rotationAngle); #else domElement.setAttribute("zRot", rotation()); #endif contentElement.appendChild(domElement); } domElement = doc.createElement("mirror"); domElement.setAttribute("state", mirrored()); contentElement.appendChild(domElement); }
void AbstractContent::toXml(QDomElement & pe) const { // Save general item properties pe.setTagName("abstract"); QDomDocument doc = pe.ownerDocument(); QDomElement domElement; QDomText text; QString valueStr; // Save item position and size QDomElement rectParent = doc.createElement("rect"); QDomElement xElement = doc.createElement("x"); rectParent.appendChild(xElement); QDomElement yElement = doc.createElement("y"); rectParent.appendChild(yElement); QDomElement wElement = doc.createElement("w"); rectParent.appendChild(wElement); QDomElement hElement = doc.createElement("h"); rectParent.appendChild(hElement); QRectF rect = m_contentsRect; xElement.appendChild(doc.createTextNode(QString::number(rect.left()))); yElement.appendChild(doc.createTextNode(QString::number(rect.top()))); wElement.appendChild(doc.createTextNode(QString::number(rect.width()))); hElement.appendChild(doc.createTextNode(QString::number(rect.height()))); pe.appendChild(rectParent); // Save the position domElement= doc.createElement("pos"); xElement = doc.createElement("x"); yElement = doc.createElement("y"); valueStr.setNum(pos().x()); xElement.appendChild(doc.createTextNode(valueStr)); valueStr.setNum(pos().y()); yElement.appendChild(doc.createTextNode(valueStr)); domElement.appendChild(xElement); domElement.appendChild(yElement); pe.appendChild(domElement); // Save the stacking position domElement= doc.createElement("zvalue"); pe.appendChild(domElement); valueStr.setNum(zValue()); text = doc.createTextNode(valueStr); domElement.appendChild(text); // Save the visible state domElement= doc.createElement("visible"); pe.appendChild(domElement); valueStr.setNum(isVisible()); text = doc.createTextNode(valueStr); domElement.appendChild(text); // Save the frame class valueStr.setNum(frameClass()); domElement= doc.createElement("frame-class"); pe.appendChild(domElement); text = doc.createTextNode(valueStr); domElement.appendChild(text); domElement= doc.createElement("frame-text-enabled"); pe.appendChild(domElement); valueStr.setNum(frameTextEnabled()); text = doc.createTextNode(valueStr); domElement.appendChild(text); if(frameTextEnabled()) { domElement= doc.createElement("frame-text"); pe.appendChild(domElement); text = doc.createTextNode(frameText()); domElement.appendChild(text); } // save transformation const QTransform t = transform(); if (!t.isIdentity()) { domElement = doc.createElement("transformation"); domElement.setAttribute("xRot", m_xRotationAngle); domElement.setAttribute("yRot", m_yRotationAngle); domElement.setAttribute("zRot", m_zRotationAngle); pe.appendChild(domElement); } }