fix MapView, so tile provider can be accessible

add MapViewTileProviderBase::maximumLevel()
This commit is contained in:
2025-03-18 16:24:02 +03:00
parent a0f2d80b4f
commit f0c2369df0
12 changed files with 78 additions and 62 deletions

View File

@@ -21,7 +21,7 @@
#define mapview_tile_downloader_h
#include "mapview_tile_provider_base.h"
#include "osm_types_p.h"
#include "mapview_types.h"
#include <QMutex>
#include <QNetworkAccessManager>
@@ -43,8 +43,8 @@ public:
explicit MapViewTileDownloader(MapView * p);
~MapViewTileDownloader();
bool queueTile(OSM::TileIndex index, bool force = false);
void queueTiles(QList<OSM::TileIndex> indeces);
bool queueTile(MapViewTypes::TileIndex index, bool force = false);
void queueTiles(QList<MapViewTypes::TileIndex> indeces);
void clearQueue();
void setTileProvider(MapViewTileProviderBase * p);
@@ -52,19 +52,19 @@ public:
private:
void run() override;
void requestTile(OSM::TileIndex index);
void requestTile(MapViewTypes::TileIndex index);
MapView * parent;
MapViewTileProviderBase * provider = nullptr;
QWaitCondition cond;
QMutex cond_mutex;
QQueue<OSM::TileIndex> queue;
QQueue<MapViewTypes::TileIndex> queue;
QSet<quint64> in_progress;
public slots:
private slots:
void tileReady(OSM::TileIndex index, QPixmap pm);
void tileReady(MapViewTypes::TileIndex index, QPixmap pm);
void parametersChanged();
signals: