1
#include "mapitem.h"
2
3
#include "linkablemapobj.h"
4
#include "ornamentedobj.h"
5
6
MapItem::MapItem()
7
{
8
init();
9
}
10
11
void MapItem::init()
12
13
lmo=NULL;
14
posMode=Unused;
15
16
17
void MapItem::setRelPos (const QPointF &p)
18
19
posMode=Relative;
20
pos=p;
21
if (lmo)
22
23
((OrnamentedObj*)lmo)->setUseRelPos (true);
24
((OrnamentedObj*)lmo)->move2RelPos(p);
25
26
27
28
void MapItem::setAbsPos (const QPointF &p)
29
30
posMode=Absolute;
31
32
if (lmo) lmo->move (p);
33
34
35
void MapItem::setPositionMode (PositionMode mode)
36
37
posMode=mode;
38
39
40
LinkableMapObj* MapItem::getLMO()
41
42
return lmo;
43
44
45
void MapItem::setLMO(LinkableMapObj *l)
46
47
lmo=l;
48
49
50
void MapItem::initLMO()
51
52
if (!lmo) return;
53
switch (posMode)
54
55
case Relative:
56
lmo->setRelPos (pos);
57
break;
58
case Absolute:
59
lmo->move (pos);
60
61
default:
62
63
64
65