1
#ifndef MERKAARTOR_EDITPAINTSTYLE_H_
2
#define MERKAARTOR_EDITPAINTSTYLE_H_
4
#include "PaintStyle.h"
6
class EditPaintStylePrivate;
13
#define M_STYLE EditPaintStyle::instance()
15
class EditPaintStyle : public PaintStyle
18
static EditPaintStyle* instance() {
20
m_EPSInstance = new EditPaintStyle;
27
virtual ~EditPaintStyle();
28
void initialize(QPainter& P, const Projection& theProjection);
31
const GlobalPainter& getGlobalPainter() const;
32
void setGlobalPainter(GlobalPainter aGlobalPainter);
33
const FeaturePainter* getPainter(int i) const;
34
QVector<FeaturePainter> getPainters() const;
35
void setPainters(QVector<FeaturePainter> aPainters);
37
void savePainters(const QString& filename);
38
void loadPainters(const QString& filename);
41
EditPaintStylePrivate* p;
42
QVector<FeaturePainter> Painters;
43
GlobalPainter globalPainter;
45
static EditPaintStyle* m_EPSInstance;
48
/* FEATUREPAINTSELECTOR */
50
class EPBackgroundLayer : public PaintStyleLayer
53
void setP(EditPaintStylePrivate* p);
54
virtual void draw(Road* R);
55
virtual void draw(TrackPoint* Pt);
56
virtual void draw(Relation* R);
58
EditPaintStylePrivate* p;
61
class EPForegroundLayer : public PaintStyleLayer
64
void setP(EditPaintStylePrivate* p);
65
virtual void draw(Road* R);
66
virtual void draw(TrackPoint* Pt);
67
virtual void draw(Relation* R);
69
EditPaintStylePrivate* p;
72
class EPTouchupLayer : public PaintStyleLayer
75
void setP(EditPaintStylePrivate* p);
76
virtual void draw(Road* R);
77
virtual void draw(TrackPoint* Pt);
78
virtual void draw(Relation* R);
80
EditPaintStylePrivate* p;
83
class EPLabelLayer : public PaintStyleLayer
86
void setP(EditPaintStylePrivate* p);
87
virtual void draw(Road* R);
88
virtual void draw(TrackPoint* Pt);
89
virtual void draw(Relation* R);
91
EditPaintStylePrivate* p;