My favorites | Sign in
Project Home Downloads Source
Checkout   Browse   Changes    
 
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
#include "MapLevel.h"

#define IMAGECLASS MapLevelImg
#define IMAGEFILE <Map/MapLevel.iml>
#include <Draw/iml_source.h>

MapLevel::MapLevel()
: IMapRender(this), _highQuality(true), _editMode(false), _currPoint(-1),
_pagePos(Point(0, 0)), _editModePos(Point(0, 0)), _zoomLevel(-1)
{
SetTopRender(this);
BackPaint();
}

void MapLevel::ClearBG()
{
for (int i = 0; i < _layers.GetCount(); ++i)
if (_layers[i])
delete _layers[i];
_layers.Clear();
}

bool MapLevel::LoadMap(const char* fp)
{
_zoomLevel = -1;
if (!AddLayer<MapBG>(0)->Load(fp))
{
LOG("MapLevel: Error while creating MapBG-layer!");
return false;
}
if (!LoadFromXMLFile(_zoomLevels,
AppendFileName( GetFileDirectory(fp), AppendExt(GetFileTitle(fp), ".zoom") )))
{
LOG(NFormat("MapLevel: Error while loading zoom-levels from file %s", fp));
return false;
}

if (_zoomLevels.GetCount())
_zoomLevel = 0;

Subpixel();
Zoom(_zoomLevel);
MoveTo(Point(0, 0));

return true;
}

void MapLevel::UpdateMap()
{
if (_layers.GetCount())
if (_layers[0])
_layers[0]->PerformState(PERFORM_INIT);
Refresh();
}

Change log

r4180 by Sc0rch on Nov 17, 2011   Diff
MapRender: First release
(FormEditorCommon, FormEditorProperties,
Map, MapBG, MapCommon, MapEditor,
MapRenderTest.
Go to: 
Project members, sign in to write a code review

Older revisions

All revisions of this file

File info

Size: 1149 bytes, 54 lines
Powered by Google Project Hosting