author | insilmaril |
Mon, 29 Jun 2009 10:27:42 +0000 | |
changeset 777 | 8acac4fade1b |
parent 776 | 25e634a7e1dc |
child 779 | 1fb50e79661c |
permissions | -rw-r--r-- |
1 #include "mapitem.h"
3 #include "linkablemapobj.h"
4 #include "ornamentedobj.h"
6 MapItem::MapItem()
7 {
8 init();
9 }
11 void MapItem::init()
12 {
13 lmo=NULL;
14 posMode=Unused;
15 }
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 }
28 void MapItem::setAbsPos (const QPointF &p)
29 {
30 posMode=Absolute;
31 pos=p;
32 if (lmo) lmo->move (p);
33 }
35 void MapItem::setPositionMode (PositionMode mode)
36 {
37 posMode=mode;
38 }
40 LinkableMapObj* MapItem::getLMO()
41 {
42 return lmo;
43 }
45 void MapItem::setLMO(LinkableMapObj *l)
46 {
47 lmo=l;
48 }
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 break;
61 default:
62 break;
63 }
64 }