-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathAMap.h
84 lines (78 loc) · 2.64 KB
/
AMap.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
/*
* AMap.h
*
* Created on: 2012. 2. 24.
* Author: HIST002
*/
#ifndef AMAP_H_
#define AMAP_H_
#include <QtSql>
#include <QVector>
#include <QTextStream>
#include <QStringList>
#include "lib/Log424.h"
#include "lib_layer/MapDefine.h"
#include "lib/AMapconf.h"
#include "item/APointLayerItem.h"
#include "item/ALinesLayerItem.h"
#include "item/AHoldLayerItem.h"
#include "item/AreaLayerItem.h"
#include "item/ASymbolLayerItem.h"
#include "item/AUserLayerItem.h"
#include "item/AUserLayerItemMng.h"
#include "item/AUserDefinedMapList.h"
class AMap {
public:
AMap(Log424& log, AirDraw* air);
AMap(Log424& log);
~AMap();
ALayer* findLayer(LayerType t);
ALayer* findLayer(const QString& name);
QString magicString();
void getDataFromDb(const QSqlDatabase& db);
void print(QTextStream& out);
void write(const QString& fileName);
void read(const QString& fileName);
void clear();
AUserLayerItemMng* userLayer() { return userlayerList; }
ALayer* layers(int idx) { if (idx < 0 || idx >= layerList.count()) return NULL; return layerList[idx]; }
int layerCount() { return layerList.count(); }
void setSymboldir(const QString& symboldir);
void getUserDataFromDb(const QSqlDatabase& db); // User map
void changeUidName(const QString& oldid, const QString& newid);
void idList(int t, QStringList& list); // version 2
void setAllLayerVisible(bool b); // 모든 layer의 visible을 세팅
void setLayerVisible(int t, LayerVisible visible); // layer자체 visible로 만든다.
void setAllIdVisible(int t, bool b); // layer의 모든 id의 visible을 b로 세팅
void setIdVisible(int t, const QString& id, bool b); // 레이어의 id를 찾아서 visible set
void setTextVisible(bool b);
bool getTextVisible() { return textvisible; }
const QColor bgcolor() { return mapconf.bg_color(); }
QPointF defaultWonjum();
bool isMapFileLayer(const QString& layer_id) { return mapconf.isMapFileLayer(layer_id); }
void clearMapconf() { mapconf.clear(); }
void draw(QPainter *painter, AirDraw* ad);
// user defined map
void CopyMapToUserDefinedMap();
int udmListCount() {
if(udmList == NULL) return 0;
return udmList->count();
}
QString getUDMName(int idx) { return udmList->getMapName(idx); }
AUserDefinedMap* getUDMap(int idx) {
if(udmList == NULL) return NULL;
return udmList->getMap(idx);
}
void initMap(Log424& log);
private:
bool textvisible;
Log424& log;
AMsb msb;
AMapconf mapconf; // Map default
QVector<ALayer*> layerList;
//AUserLayerItem* userlayer;
AUserLayerItemMng* userlayerList;
AUserDefinedMapList* udmList;
AirDraw *air;
};
#endif /* AMAP_H_ */