Correction d'un bug lors de l'enregistrement d'un champ de texte sur element avec plusieurs lignes

git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@269 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
xavierqet
2008-01-11 20:01:27 +00:00
parent d2c5fbd8c2
commit d560883c6b
3 changed files with 21 additions and 2 deletions

View File

@@ -420,6 +420,7 @@ bool CustomElement::parseInput(QDomElement &e) {
ElementTextItem *eti = new ElementTextItem(e.attribute("text"), this);
eti -> setFont(QFont(QETApp::diagramTextsFont(), size));
eti -> setPos(pos_x, pos_y);
eti -> setOriginalPos(QPointF(pos_x, pos_y));
if (e.attribute("rotate") == "true") eti -> setFollowParentRotations(true);
return(true);
}

View File

@@ -98,8 +98,23 @@ void ElementTextItem::fromXml(const QDomElement &e) {
*/
QDomElement ElementTextItem::toXml(QDomDocument &document) const {
QDomElement result = document.createElement("input");
result.setAttribute("x", pos().x());
result.setAttribute("y", pos().y());
result.setAttribute("x", originalPos().x());
result.setAttribute("y", originalPos().y());
result.setAttribute("text", toPlainText());
return(result);
}
/**
@param p Position originale / de reference pour ce champ
Cette position est utilisee lors de l'export en XML
*/
void ElementTextItem::setOriginalPos(const QPointF &p) {
original_position = p;
}
/**
@return la position originale / de reference pour ce champ
*/
QPointF ElementTextItem::originalPos() const {
return(original_position);
}

View File

@@ -38,6 +38,7 @@ class ElementTextItem : public DiagramTextItem {
private:
bool follow_parent_rotations;
QPointF original_position;
// methodes
public:
@@ -51,6 +52,8 @@ class ElementTextItem : public DiagramTextItem {
void setPos(const QPointF &);
void setPos(qreal, qreal);
QPointF pos() const;
void setOriginalPos(const QPointF &);
QPointF originalPos() const;
};
/**