diff -r aee36896d46b -r e7882bd1a894 QTfrontend/drawmapscene.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/QTfrontend/drawmapscene.h Mon Dec 13 22:12:30 2010 +0300 @@ -0,0 +1,40 @@ +#ifndef DRAWMAPSCENE_H +#define DRAWMAPSCENE_H + +#include +#include + +class QGraphicsPathItem; + +typedef QList > 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 points); +}; + +#endif // DRAWMAPSCENE_H