diff options
Diffstat (limited to 'src/line.cpp')
-rw-r--r-- | src/line.cpp | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/src/line.cpp b/src/line.cpp new file mode 100644 index 0000000..1ca27af --- /dev/null +++ b/src/line.cpp @@ -0,0 +1,69 @@ +// Copyright (C) 2008 Lukas Lalinsky +// +// This program is free software; you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation; either version 2 of the License, or +// at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License along +// with this program; if not, write to the Free Software Foundation, Inc., +// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +#include "line.h" +#include "diagramdocument.h" +#include "diagramobject.h" +#include "connector.h" + +Line::Line(DiagramItem *parent) + : DiagramItem(parent) +{ + m_connectors[0] = new Connector(this); + m_connectors[1] = new Connector(this); + setZValue(1.0); +} + +Connector * +Line::connector(int index) const +{ + Q_ASSERT(index == 0 || index == 1); + return m_connectors[index]; +} + +void +Line::updatePositions() +{ +} + +#include "domutils.h" + +void +Line::loadFromXml(QDomElement element, DiagramDocument *document) +{ + DiagramItem::loadFromXml(element, document); + QDomElement connectionElement = element.firstChildElement("connection"); + if (!connectionElement.isNull()) { + QString sourceId = readStringElement(connectionElement, "source"); + QString targetId = readStringElement(connectionElement, "target"); + if (document) { +/* setSource(qobject_cast<DiagramObject *>(document->itemById(sourceId))); + setTarget(qobject_cast<DiagramObject *>(document->itemById(targetId)));*/ + } + } +} + +void +Line::saveToXml(QDomDocument doc, QDomElement element) +{ + DiagramItem::saveToXml(doc, element); + QDomElement connectionElement = doc.createElement("connection"); + element.appendChild(connectionElement); +/* if (m_objects[0] != NULL) + appendStringElement(doc, connectionElement, "source", m_objects[0]->id()); + if (m_objects[1] != NULL) + appendStringElement(doc, connectionElement, "target", m_objects[1]->id());*/ +} |