1
0
mirror of https://github.com/tumic0/GPXSee.git synced 2024-10-07 07:13:21 +02:00
GPXSee/src/map.h

44 lines
931 B
C
Raw Normal View History

2015-11-23 02:33:01 +01:00
#ifndef MAP_H
#define MAP_H
#include <QObject>
#include <QString>
#include <QRectF>
2015-11-26 00:21:11 +01:00
class QPainter;
class Coordinates;
2015-11-23 02:33:01 +01:00
class Map : public QObject
{
Q_OBJECT
public:
Map(QObject *parent = 0) : QObject(parent) {}
2015-11-23 02:33:01 +01:00
virtual const QString &name() const = 0;
2016-04-01 19:25:34 +02:00
virtual QRectF bounds() const = 0;
virtual qreal resolution(const QPointF &p) const = 0;
2015-11-23 02:33:01 +01:00
virtual qreal zoom() const = 0;
virtual qreal zoomFit(const QSize &size, const QRectF &br) = 0;
2017-06-26 00:20:42 +02:00
virtual qreal zoomFit(qreal resolution, const Coordinates &c) = 0;
virtual qreal zoomIn() = 0;
virtual qreal zoomOut() = 0;
2015-11-23 02:33:01 +01:00
2017-04-30 00:19:53 +02:00
virtual QPointF ll2xy(const Coordinates &c) = 0;
virtual Coordinates xy2ll(const QPointF &p) = 0;
virtual void draw(QPainter *painter, const QRectF &rect) = 0;
virtual void setBlockingMode(bool block) {Q_UNUSED(block);}
virtual void clearCache() {}
virtual void load() {}
virtual void unload() {}
signals:
void loaded();
2015-11-23 02:33:01 +01:00
};
#endif // MAP_H