Qt
6.x
The Qt SDK
Loading...
Searching...
No Matches
qdeclarativeplacecontentmodel_p.h
Go to the documentation of this file.
1
// Copyright (C) 2022 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
4
#ifndef QDECLARATIVEPLACECONTENTMODEL_H
5
#define QDECLARATIVEPLACECONTENTMODEL_H
6
7
//
8
// W A R N I N G
9
// -------------
10
//
11
// This file is not part of the Qt API. It exists purely as an
12
// implementation detail. This header file may change from version to
13
// version without notice, or even be removed.
14
//
15
// We mean it.
16
//
17
18
#include <QtLocation/private/qlocationglobal_p.h>
19
#include <QtCore/QAbstractListModel>
20
#include <QtQml/QQmlParserStatus>
21
#include <QtLocation/QPlaceContent>
22
#include <QtLocation/QPlaceContentReply>
23
#include <QtLocation/QPlaceContentRequest>
24
#include <QtLocation/QPlaceSupplier>
25
26
Q_MOC_INCLUDE
(<QtLocation/
private
/qdeclarativeplace_p.h>)
27
28
QT_BEGIN_NAMESPACE
29
30
class
QDeclarativePlace
;
31
class
QDeclarativeGeoServiceProvider
;
32
class
QGeoServiceProvider
;
33
34
class Q_LOCATION_PRIVATE_EXPORT
QDeclarativePlaceContentModel
: public
QAbstractListModel
, public
QQmlParserStatus
35
{
36
Q_OBJECT
37
38
Q_PROPERTY
(
QDeclarativePlace
*place READ place WRITE setPlace NOTIFY placeChanged)
39
Q_PROPERTY
(
int
batchSize READ batchSize WRITE setBatchSize NOTIFY batchSizeChanged)
40
Q_PROPERTY
(
int
totalCount READ totalCount NOTIFY totalCountChanged)
41
42
Q_INTERFACES
(
QQmlParserStatus
)
43
44
public
:
45
explicit
QDeclarativePlaceContentModel
(
QPlaceContent::Type
type
,
QObject
*
parent
=
nullptr
);
46
~QDeclarativePlaceContentModel
();
47
48
QDeclarativePlace
*place()
const
;
49
void
setPlace(
QDeclarativePlace
*place);
50
51
int
batchSize()
const
;
52
void
setBatchSize(
int
batchSize);
53
54
int
totalCount()
const
;
55
56
void
clearData();
57
58
void
initializeCollection(
int
totalCount,
const
QPlaceContent::Collection
&collection);
59
60
// from QAbstractListModel
61
int
rowCount(
const
QModelIndex
&
parent
)
const override
;
62
QVariant
data
(
const
QModelIndex
&
index
,
int
role)
const override
;
63
QHash<int, QByteArray>
roleNames()
const override
;
64
65
enum
Roles
{
66
ContentSupplierRole =
Qt::UserRole
,
67
ContentUserRole
,
68
ContentAttributionRole
,
69
EditorialTitleRole
,
70
EditorialTextRole
,
71
EditorialLanguageRole
,
72
ImageIdRole
,
73
ImageUrlRole
,
74
ImageMimeTypeRole
,
75
ReviewIdRole
,
76
ReviewDateTimeRole
,
77
ReviewTitleRole
,
78
ReviewTextRole
,
79
ReviewLanguageRole
,
80
ReviewRatingRole
81
};
82
83
bool
canFetchMore(
const
QModelIndex
&
parent
)
const override
;
84
void
fetchMore(
const
QModelIndex
&
parent
)
override
;
85
86
// from QQmlParserStatus
87
void
classBegin()
override
;
88
void
componentComplete()
override
;
89
90
Q_SIGNALS
:
91
void
placeChanged
();
92
void
batchSizeChanged
();
93
void
totalCountChanged
();
94
95
private
Q_SLOTS
:
96
void
fetchFinished();
97
98
protected
:
99
QPlaceContent::Collection
m_content
;
100
QMap<QString, QPlaceSupplier>
m_suppliers
;
101
QMap<QString, QPlaceUser>
m_users
;
102
103
private
:
104
QDeclarativePlace
*m_place =
nullptr
;
105
QPlaceContent::Type
m_type;
106
int
m_batchSize = 1;
107
int
m_contentCount = -1;
108
109
QPlaceContentReply
*m_reply =
nullptr
;
110
QPlaceContentRequest
m_nextRequest;
111
112
bool
m_complete =
false
;
113
};
114
115
class
QDeclarativePlaceReviewModel
:
public
QDeclarativePlaceContentModel
116
{
117
Q_GADGET
118
QML_NAMED_ELEMENT
(ReviewModel)
119
QML_ADDED_IN_VERSION
(5, 0)
120
121
public
:
122
explicit
QDeclarativePlaceReviewModel
(
QObject
*
parent
=
nullptr
)
123
:
QDeclarativePlaceContentModel
(
QPlaceContent
::ReviewType,
parent
)
124
{}
125
};
126
127
class
QDeclarativePlaceEditorialModel
:
public
QDeclarativePlaceContentModel
128
{
129
Q_GADGET
130
QML_NAMED_ELEMENT
(EditorialModel)
131
QML_ADDED_IN_VERSION
(5, 0)
132
public
:
133
explicit
QDeclarativePlaceEditorialModel
(
QObject
*
parent
=
nullptr
)
134
:
QDeclarativePlaceContentModel
(
QPlaceContent
::EditorialType,
parent
)
135
{}
136
};
137
138
class
QDeclarativePlaceImageModel
:
public
QDeclarativePlaceContentModel
139
{
140
Q_GADGET
141
QML_NAMED_ELEMENT
(ImageModel)
142
QML_ADDED_IN_VERSION
(5, 0)
143
public
:
144
explicit
QDeclarativePlaceImageModel
(
QObject
*
parent
=
nullptr
)
145
:
QDeclarativePlaceContentModel
(
QPlaceContent
::ImageType,
parent
)
146
{}
147
};
148
149
QT_END_NAMESPACE
150
151
#endif
// QDECLARATIVEPLACECONTENTMODEL_H
QAbstractListModel
\inmodule QtCore
Definition
qabstractitemmodel.h:452
QAbstractListModel::parent
QObject * parent() const
Returns a pointer to the parent object.
Definition
qobject.h:311
QDeclarativeGeoServiceProvider
Definition
qdeclarativegeoserviceprovider_p.h:44
QDeclarativePlaceContentModel
Definition
qdeclarativeplacecontentmodel_p.h:35
QDeclarativePlaceContentModel::batchSizeChanged
void batchSizeChanged()
QDeclarativePlaceContentModel::totalCountChanged
void totalCountChanged()
QDeclarativePlaceContentModel::m_suppliers
QMap< QString, QPlaceSupplier > m_suppliers
Definition
qdeclarativeplacecontentmodel_p.h:100
QDeclarativePlaceContentModel::m_content
QPlaceContent::Collection m_content
Definition
qdeclarativeplacecontentmodel_p.h:99
QDeclarativePlaceContentModel::m_users
QMap< QString, QPlaceUser > m_users
Definition
qdeclarativeplacecontentmodel_p.h:101
QDeclarativePlaceContentModel::placeChanged
void placeChanged()
QDeclarativePlaceContentModel::Roles
Roles
Definition
qdeclarativeplacecontentmodel_p.h:65
QDeclarativePlaceContentModel::EditorialTitleRole
@ EditorialTitleRole
Definition
qdeclarativeplacecontentmodel_p.h:69
QDeclarativePlaceContentModel::ContentAttributionRole
@ ContentAttributionRole
Definition
qdeclarativeplacecontentmodel_p.h:68
QDeclarativePlaceContentModel::ReviewDateTimeRole
@ ReviewDateTimeRole
Definition
qdeclarativeplacecontentmodel_p.h:76
QDeclarativePlaceContentModel::ContentUserRole
@ ContentUserRole
Definition
qdeclarativeplacecontentmodel_p.h:67
QDeclarativePlaceContentModel::EditorialLanguageRole
@ EditorialLanguageRole
Definition
qdeclarativeplacecontentmodel_p.h:71
QDeclarativePlaceContentModel::ImageIdRole
@ ImageIdRole
Definition
qdeclarativeplacecontentmodel_p.h:72
QDeclarativePlaceContentModel::ReviewLanguageRole
@ ReviewLanguageRole
Definition
qdeclarativeplacecontentmodel_p.h:79
QDeclarativePlaceContentModel::ImageMimeTypeRole
@ ImageMimeTypeRole
Definition
qdeclarativeplacecontentmodel_p.h:74
QDeclarativePlaceContentModel::ImageUrlRole
@ ImageUrlRole
Definition
qdeclarativeplacecontentmodel_p.h:73
QDeclarativePlaceContentModel::ReviewIdRole
@ ReviewIdRole
Definition
qdeclarativeplacecontentmodel_p.h:75
QDeclarativePlaceContentModel::ReviewTextRole
@ ReviewTextRole
Definition
qdeclarativeplacecontentmodel_p.h:78
QDeclarativePlaceContentModel::EditorialTextRole
@ EditorialTextRole
Definition
qdeclarativeplacecontentmodel_p.h:70
QDeclarativePlaceContentModel::ReviewTitleRole
@ ReviewTitleRole
Definition
qdeclarativeplacecontentmodel_p.h:77
QDeclarativePlaceEditorialModel
Definition
qdeclarativeplacecontentmodel_p.h:128
QDeclarativePlaceEditorialModel::QDeclarativePlaceEditorialModel
QDeclarativePlaceEditorialModel(QObject *parent=nullptr)
Definition
qdeclarativeplacecontentmodel_p.h:133
QDeclarativePlaceImageModel
Definition
qdeclarativeplacecontentmodel_p.h:139
QDeclarativePlaceImageModel::QDeclarativePlaceImageModel
QDeclarativePlaceImageModel(QObject *parent=nullptr)
Definition
qdeclarativeplacecontentmodel_p.h:144
QDeclarativePlaceReviewModel
Definition
qdeclarativeplacecontentmodel_p.h:116
QDeclarativePlaceReviewModel::QDeclarativePlaceReviewModel
QDeclarativePlaceReviewModel(QObject *parent=nullptr)
Definition
qdeclarativeplacecontentmodel_p.h:122
QDeclarativePlace
Definition
qdeclarativeplace_p.h:39
QGeoServiceProvider
\inmodule QtLocation
Definition
qgeoserviceprovider.h:27
QHash
\inmodule QtCore
Definition
qhash.h:818
QMap< int, QPlaceContent >
QModelIndex
\inmodule QtCore
Definition
qabstractitemmodel.h:124
QObject
\inmodule QtCore
Definition
qobject.h:90
QPlaceContentReply
\inmodule QtLocation
Definition
qplacecontentreply.h:15
QPlaceContentRequest
\inmodule QtLocation
Definition
qplacecontentrequest.h:17
QPlaceContent
\inmodule QtLocation
Definition
qplacecontent.h:22
QPlaceContent::Type
Type
Defines the type of content.
Definition
qplacecontent.h:26
QQmlParserStatus
The QQmlParserStatus class provides updates on the QML parser state.
Definition
qqmlparserstatus.h:14
QVariant
\inmodule QtCore
Definition
qvariant.h:64
QT_BEGIN_NAMESPACE
Combined button and popup list for selecting options.
Definition
qstandardpaths_haiku.cpp:21
QT_END_NAMESPACE
Definition
qsharedpointer.cpp:1545
Qt::UserRole
@ UserRole
Definition
qnamespace.h:1501
index
GLuint index
[2]
Definition
qopengles2ext.h:331
type
GLenum type
Definition
qopengles2ext.h:150
data
GLint GLsizei GLsizei GLenum GLenum GLsizei void * data
Definition
qopengles2ext.h:206
QML_NAMED_ELEMENT
#define QML_NAMED_ELEMENT(NAME)
Definition
qqmlintegration.h:52
QML_ADDED_IN_VERSION
#define QML_ADDED_IN_VERSION(MAJOR, MINOR)
Definition
qqmlintegration.h:86
Q_PROPERTY
#define Q_PROPERTY(...)
Definition
qtmetamacros.h:56
Q_OBJECT
#define Q_OBJECT
Definition
qtmetamacros.h:117
Q_INTERFACES
#define Q_INTERFACES(x)
Definition
qtmetamacros.h:55
Q_SLOTS
#define Q_SLOTS
Definition
qtmetamacros.h:44
Q_GADGET
#define Q_GADGET
Definition
qtmetamacros.h:152
Q_MOC_INCLUDE
#define Q_MOC_INCLUDE(...)
Definition
qtmetamacros.h:79
Q_SIGNALS
#define Q_SIGNALS
Definition
qtmetamacros.h:45
parent
IUIAutomationTreeWalker __RPC__deref_out_opt IUIAutomationElement ** parent
Definition
uiaclientinterfaces_p.h:209
qtlocation
src
location
declarativeplaces
qdeclarativeplacecontentmodel_p.h
Generated by
1.9.7