1#ifndef OSMSCOUT_CLIENT_QT_LOCATIONINFOMODEL_H
2#define OSMSCOUT_CLIENT_QT_LOCATIONINFOMODEL_H
24#include <QAbstractListModel>
38 osmscout::ObjectFileRef
ref;
58 const QString database,
59 const osmscout::LocationDescription description,
60 const QList<AdminRegionInfoRef> regions);
91 Q_INVOKABLE
int inline rowCount(
const QModelIndex &parent = QModelIndex())
const override
97 Q_INVOKABLE QVariant
data(
const QModelIndex &index,
int role)
const override;
99 Q_INVOKABLE Qt::ItemFlags
flags(
const QModelIndex &index)
const override;
106 Q_INVOKABLE
double distance(
double lat1,
double lon1,
107 double lat2,
double lon2);
108 Q_INVOKABLE QString
bearing(
double lat1,
double lon1,
109 double lat2,
double lon2);
112 const QMap<int, QVariant> &obj2);
115 const AdminRegionInfoRef& reg2);
117 void addToModel(
const QString database,
119 const QList<AdminRegionInfoRef> regions);
124 osmscout::GeoCoord location;
126 QList<ObjectKey> objectSet;
127 QList<QMap<int, QVariant>> model;
129 SettingsRef settings;
#define OSMSCOUT_CLIENT_QT_API
Definition ClientQtImportExport.h:45
bool isReady() const
Definition LocationInfoModel.h:101
bool ready
Definition LocationInfoModel.h:47
QHash< int, QByteArray > roleNames() const override
void onLocationAdminRegions(const osmscout::GeoCoord, QList< AdminRegionInfoRef >)
Roles
Definition LocationInfoModel.h:67
@ DistanceRole
Definition LocationInfoModel.h:72
@ IndexedAdminRegionRole
Definition LocationInfoModel.h:81
@ WebsiteRole
Definition LocationInfoModel.h:77
@ PostalCodeRole
Definition LocationInfoModel.h:76
@ TypeRole
Definition LocationInfoModel.h:75
@ PoiRole
Definition LocationInfoModel.h:74
@ AddressNumberRole
Definition LocationInfoModel.h:80
@ LabelRole
Definition LocationInfoModel.h:68
@ OpeningHours
Definition LocationInfoModel.h:83
@ RegionRole
Definition LocationInfoModel.h:69
@ PhoneRole
Definition LocationInfoModel.h:78
@ AddressRole
Definition LocationInfoModel.h:70
@ BearingRole
Definition LocationInfoModel.h:73
@ AddressLocationRole
Definition LocationInfoModel.h:79
@ AltLangName
Definition LocationInfoModel.h:82
@ InPlaceRole
Definition LocationInfoModel.h:71
void regionLookupRequested(osmscout::GeoCoord)
void readyChange(bool ready)
static bool distanceComparator(const QMap< int, QVariant > &obj1, const QMap< int, QVariant > &obj2)
~LocationInfoModel() override
void onLocationDescriptionFinished(const osmscout::GeoCoord)
void setLocation(const double lat, const double lon)
Q_INVOKABLE QString bearing(double lat1, double lon1, double lat2, double lon2)
Q_INVOKABLE int rowCount(const QModelIndex &parent=QModelIndex()) const override
Definition LocationInfoModel.h:91
void onLocationDescription(const osmscout::GeoCoord location, const QString database, const osmscout::LocationDescription description, const QList< AdminRegionInfoRef > regions)
void onLocationAdminRegionFinished(const osmscout::GeoCoord)
void dbInitialized(const osmscout::GeoBox &)
Q_INVOKABLE Qt::ItemFlags flags(const QModelIndex &index) const override
static bool adminRegionComparator(const AdminRegionInfoRef ®1, const AdminRegionInfoRef ®2)
Q_INVOKABLE double distance(double lat1, double lon1, double lat2, double lon2)
Q_INVOKABLE QVariant data(const QModelIndex &index, int role) const override
void locationDescriptionRequested(const osmscout::GeoCoord location)
Definition LookupModule.h:47
std::shared_ptr< LocationAtPlaceDescription > LocationAtPlaceDescriptionRef
Definition LocationDescriptionService.h:168
Definition LocationInfoModel.h:36
osmscout::ObjectFileRef ref
Definition LocationInfoModel.h:38
QString database
Definition LocationInfoModel.h:37