tools/drawMapTest/drawmapscene.h
author antonc27 <antonc27@mail.ru>
Sat, 08 Aug 2015 21:04:47 +0200
branchios-revival
changeset 11082 438d0f49a8d6
parent 4442 f8424e1bc936
permissions -rw-r--r--
- fpc updated to 3.1.1 - Build scripts updated Note1: fpc must be compiled from sources before! Full instructions here: http://blog.naver.com/simonsayz/220305479793 Note2: Build script for a moment worked only for iPhone simulator 8.x and for new arch (like iPhone 6 or iPad Air)

#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