summaryrefslogtreecommitdiff
path: root/tikzit/src/gui/nodeitem.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tikzit/src/gui/nodeitem.cpp')
-rw-r--r--tikzit/src/gui/nodeitem.cpp14
1 files changed, 12 insertions, 2 deletions
diff --git a/tikzit/src/gui/nodeitem.cpp b/tikzit/src/gui/nodeitem.cpp
index bf4830b..40b4de9 100644
--- a/tikzit/src/gui/nodeitem.cpp
+++ b/tikzit/src/gui/nodeitem.cpp
@@ -17,14 +17,19 @@ NodeItem::NodeItem(Node *node)
setFlag(QGraphicsItem::ItemIsSelectable);
setFlag(QGraphicsItem::ItemIsMovable);
setFlag(QGraphicsItem::ItemSendsGeometryChanges);
- syncPos();
+ readPos();
}
-void NodeItem::syncPos()
+void NodeItem::readPos()
{
setPos(toScreen(_node->point()));
}
+void NodeItem::writePos()
+{
+ _node->setPoint(fromScreen(pos()));
+}
+
QRectF NodeItem::labelRect() const {
QString label = _node->label();
//QFont f("Courier", 9);
@@ -99,6 +104,11 @@ QRectF NodeItem::boundingRect() const
return r.united(shape().boundingRect()).adjusted(-4,-4,4,4);
}
+Node *NodeItem::node() const
+{
+ return _node;
+}
+
QVariant NodeItem::itemChange(GraphicsItemChange change, const QVariant &value)
{
if (change == ItemPositionChange) {