Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qplace_p.h
Go to the documentation of this file.
1// Copyright (C) 2015 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3// Qt-Security score:significant reason:default
4
5#ifndef QPLACE_P_H
6#define QPLACE_P_H
7
8//
9// W A R N I N G
10// -------------
11//
12// This file is not part of the Qt API. It exists purely as an
13// implementation detail. This header file may change from version to
14// version without notice, or even be removed.
15//
16// We mean it.
17//
18
19#include <QSharedData>
20#include <QUrl>
21#include <QtPositioning/qgeoaddress.h>
22#include <QtPositioning/qgeocoordinate.h>
23#include <QtPositioning/qgeolocation.h>
24#include <QtPositioning/qgeorectangle.h>
25
26#include <QtLocation/private/qlocationglobal_p.h>
27#include <QtLocation/qplace.h>
28#include <QtLocation/qplaceattribute.h>
29#include <QtLocation/qplacecategory.h>
30#include <QtLocation/qplacecontactdetail.h>
31#include <QtLocation/qplaceratings.h>
32#include <QtLocation/qplacesupplier.h>
33#include <QtLocation/QPlaceIcon>
34
35QT_BEGIN_NAMESPACE
36
37class Q_LOCATION_EXPORT QPlacePrivate : public QSharedData
38{
39public:
40 QPlacePrivate();
41 QPlacePrivate(const QPlacePrivate &other);
42 virtual ~QPlacePrivate();
43 virtual QPlacePrivate *clone() = 0;
44
45 bool operator==(const QPlacePrivate &other) const;
46
47 virtual bool isEmpty() const;
48 virtual QList<QPlaceCategory> categories() const = 0;
49 virtual void setCategories(const QList<QPlaceCategory> &categories) = 0;
50 virtual QGeoLocation location() const = 0;
51 virtual void setLocation(const QGeoLocation &location) = 0;
52 virtual QPlaceRatings ratings() const = 0;
53 virtual void setRatings(const QPlaceRatings &ratings) = 0;
54 virtual QPlaceSupplier supplier() const = 0;
55 virtual void setSupplier(const QPlaceSupplier &supplier) = 0;
56 virtual QString name() const = 0;
57 virtual void setName(const QString &name) = 0;
58 virtual QString placeId() const = 0;
59 virtual void setPlaceId(const QString &placeIdentifier) = 0;
60 virtual QString attribution() const = 0;
61 virtual void setAttribution(const QString &attribution) = 0;
62 virtual QLocation::Visibility visibility() const = 0;
63 virtual void setVisibility(QLocation::Visibility visibility) = 0;
64 virtual QPlaceIcon icon() const = 0;
65 virtual void setIcon(const QPlaceIcon &icon) = 0;
66 virtual bool detailsFetched() const = 0;
67 virtual void setDetailsFetched(bool fetched) = 0;
68
69 virtual QMap<QString, QPlaceAttribute> extendedAttributes() const = 0;
70 virtual QMap<QString, QPlaceAttribute> &extendedAttributes() = 0;
71 virtual QMap<QString, QList<QPlaceContactDetail> > contacts() const = 0;
72 virtual QMap<QString, QList<QPlaceContactDetail> > &contacts() = 0;
73 virtual QPlaceAttribute extendedAttribute(const QString &attributeType) const;
74
75
76 // The place content, that has to be manually retrieved from the place manager and manually added to the place.
77 // Currently, place content types can be:
78 // ImageType,
79 // ReviewType,
80 // EditorialType,
81 // CustomType = 0x0100
82 QMap<QPlaceContent::Type, QPlaceContent::Collection> m_contentCollections;
83 QMap<QPlaceContent::Type, int> m_contentCounts;
84};
85
86
87class Q_LOCATION_EXPORT QPlacePrivateDefault : public QPlacePrivate
88{
89public:
90 QPlacePrivateDefault();
91 QPlacePrivateDefault(const QPlacePrivateDefault &other);
92 virtual ~QPlacePrivateDefault();
93 QPlacePrivate *clone() override;
94
95 QList<QPlaceCategory> categories() const override;
96 void setCategories(const QList<QPlaceCategory> &categories) override;
97 QGeoLocation location() const override;
98 void setLocation(const QGeoLocation &location) override;
99 QPlaceRatings ratings() const override;
100 void setRatings(const QPlaceRatings &ratings) override;
101 QPlaceSupplier supplier() const override;
102 void setSupplier(const QPlaceSupplier &supplier) override;
103 QString name() const override;
104 void setName(const QString &name) override;
105 QString placeId() const override;
106 void setPlaceId(const QString &placeIdentifier) override;
107 QString attribution() const override;
108 void setAttribution(const QString &attribution) override;
109 QLocation::Visibility visibility() const override;
110 void setVisibility(QLocation::Visibility visibility) override;
111 QPlaceIcon icon() const override;
112 void setIcon(const QPlaceIcon &icon) override;
113 bool detailsFetched() const override;
114 void setDetailsFetched(bool fetched) override;
115
116 QMap<QString, QPlaceAttribute> extendedAttributes() const override;
117 QMap<QString, QPlaceAttribute> &extendedAttributes() override;
118 QMap<QString, QList<QPlaceContactDetail> > contacts() const override;
119 QMap<QString, QList<QPlaceContactDetail> > &contacts() override;
120
121
122 // data members
123
124 QList<QPlaceCategory> m_categories;
125 QGeoLocation m_location;
126 QPlaceRatings m_ratings;
127 QPlaceSupplier m_supplier;
128 QString m_name;
129 QString m_placeId;
130 QString m_attribution;
131
132 QMap<QString, QPlaceAttribute> m_extendedAttributes;
133 QMap<QString, QList<QPlaceContactDetail> > m_contacts;
134
135 QLocation::Visibility m_visibility;
136 QPlaceIcon m_icon;
137 bool m_detailsFetched;
138};
139
140QT_END_NAMESPACE
141
142#endif
\inmodule QtLocation
Definition qplace.h:26
Combined button and popup list for selecting options.
Q_DECLARE_TYPEINFO(QByteArrayView, Q_PRIMITIVE_TYPE)