summaryrefslogtreecommitdiff
path: root/src/gui/nodeitem.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/nodeitem.h')
-rw-r--r--src/gui/nodeitem.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/gui/nodeitem.h b/src/gui/nodeitem.h
new file mode 100644
index 0000000..9a3edb0
--- /dev/null
+++ b/src/gui/nodeitem.h
@@ -0,0 +1,32 @@
+/**
+ * A QGraphicsItem that handles drawing a single node.
+ */
+
+#ifndef NODEITEM_H
+#define NODEITEM_H
+
+#include "node.h"
+
+#include <QObject>
+#include <QGraphicsItem>
+#include <QPainterPath>
+#include <QRectF>
+
+class NodeItem : public QGraphicsItem
+{
+public:
+ NodeItem(Node *node);
+ void readPos();
+ void writePos();
+ void paint(QPainter *painter, const QStyleOptionGraphicsItem *, QWidget *);
+ QVariant itemChange(GraphicsItemChange change, const QVariant &value);
+ QPainterPath shape() const;
+ QRectF boundingRect() const;
+ Node *node() const;
+
+private:
+ Node *_node;
+ QRectF labelRect() const;
+};
+
+#endif // NODEITEM_H