diff options
Diffstat (limited to 'tikzit/src/gui/nodeitem.cpp')
-rw-r--r-- | tikzit/src/gui/nodeitem.cpp | 14 |
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) { |