author | Wuzzy <Wuzzy2@mail.ru> |
Fri, 03 Nov 2017 02:23:41 +0100 | |
changeset 12819 | 3fc7569c1203 |
parent 4442 | f8424e1bc936 |
permissions | -rw-r--r-- |
#ifndef DRAWMAPSCENE_H #define DRAWMAPSCENE_H #include <QGraphicsScene> #include <QPainterPath> class QGraphicsPathItem; typedef QList<QList<QPoint> > Paths; class DrawMapScene : public QGraphicsScene { Q_OBJECT public: explicit DrawMapScene(QObject *parent = 0); QByteArray encode(); void decode(QByteArray data); signals: void pathChanged(); public slots: void undo(); void simplifyLast(); private: QPen m_pen; QBrush m_brush; QGraphicsPathItem * m_currPath; Paths paths; virtual void mouseMoveEvent(QGraphicsSceneMouseEvent * mouseEvent); virtual void mousePressEvent(QGraphicsSceneMouseEvent * mouseEvent); virtual void mouseReleaseEvent(QGraphicsSceneMouseEvent * mouseEvent); QPainterPath pointsToPath(const QList<QPoint> points); }; #endif // DRAWMAPSCENE_H