2018-01-29 00:19:57 +01:00
|
|
|
#ifndef MAPSOURCE_H
|
|
|
|
#define MAPSOURCE_H
|
2018-01-28 22:56:08 +01:00
|
|
|
|
|
|
|
#include <QList>
|
|
|
|
#include "common/range.h"
|
|
|
|
#include "common/rectc.h"
|
|
|
|
|
|
|
|
class Map;
|
|
|
|
class QXmlStreamReader;
|
|
|
|
|
2018-01-29 00:19:57 +01:00
|
|
|
class MapSource
|
2018-01-28 22:56:08 +01:00
|
|
|
{
|
|
|
|
public:
|
2018-01-29 00:19:57 +01:00
|
|
|
MapSource() : _map(0) {}
|
|
|
|
~MapSource();
|
2018-01-28 22:56:08 +01:00
|
|
|
|
|
|
|
bool loadFile(const QString &path);
|
|
|
|
const QString &errorString() const {return _errorString;}
|
|
|
|
|
2018-01-29 00:19:57 +01:00
|
|
|
Map* map() const {return _map;}
|
2018-01-28 22:56:08 +01:00
|
|
|
|
|
|
|
private:
|
|
|
|
RectC bounds(QXmlStreamReader &reader);
|
|
|
|
Range zooms(QXmlStreamReader &reader);
|
|
|
|
void map(QXmlStreamReader &reader);
|
|
|
|
|
|
|
|
QString _errorString;
|
2018-01-30 00:30:26 +01:00
|
|
|
Map *_map;
|
2018-01-28 22:56:08 +01:00
|
|
|
};
|
|
|
|
|
2018-01-29 00:19:57 +01:00
|
|
|
#endif // MAPSOURCE_H
|