36 QML_NAMED_ELEMENT(Category)
37 QML_ADDED_IN_VERSION(5, 0)
39 Q_ENUMS(Status Visibility)
42 Q_PROPERTY(QPlaceCategory category READ category WRITE setCategory)
43 Q_PROPERTY(QDeclarativeGeoServiceProvider *plugin READ plugin WRITE setPlugin NOTIFY pluginChanged)
44 Q_PROPERTY(QString categoryId READ categoryId WRITE setCategoryId NOTIFY categoryIdChanged)
45 Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
46 Q_PROPERTY(Visibility visibility READ visibility WRITE setVisibility NOTIFY visibilityChanged)
47 Q_PROPERTY(QPlaceIcon icon READ icon WRITE setIcon NOTIFY iconChanged)
48 Q_PROPERTY(Status status READ status NOTIFY statusChanged)
50 Q_INTERFACES(QQmlParserStatus)
53 explicit QDeclarativeCategory(QObject *parent =
nullptr);
54 QDeclarativeCategory(
const QPlaceCategory &category, QDeclarativeGeoServiceProvider *plugin, QObject *parent =
nullptr);
55 ~QDeclarativeCategory();
58 UnspecifiedVisibility = QLocation::UnspecifiedVisibility,
59 DeviceVisibility = QLocation::DeviceVisibility,
60 PrivateVisibility = QLocation::PrivateVisibility,
61 PublicVisibility = QLocation::PublicVisibility
63 enum Status {Ready, Saving, Removing, Error};
66 void classBegin() override {}
67 void componentComplete() override;
69 void setPlugin(QDeclarativeGeoServiceProvider *plugin);
70 QDeclarativeGeoServiceProvider *plugin()
const;
72 QPlaceCategory category();
73 void setCategory(
const QPlaceCategory &category);
75 QString categoryId()
const;
76 void setCategoryId(
const QString &catID);
78 void setName(
const QString &name);
80 Visibility visibility()
const;
81 void setVisibility(Visibility visibility);
83 QPlaceIcon icon()
const;
84 void setIcon(
const QPlaceIcon &icon);
86 Q_INVOKABLE QString errorString()
const;
88 Status status()
const;
89 void setStatus(Status status,
const QString &errorString = QString());
91 Q_INVOKABLE
void save(
const QString &parentId = QString());
92 Q_INVOKABLE
void remove();
96 void categoryIdChanged();
98 void visibilityChanged();
100 void statusChanged();
103 void replyFinished();
107 QPlaceManager *manager();
109 QPlaceCategory m_category;
110 QDeclarativeGeoServiceProvider *m_plugin =
nullptr;
111 QPlaceReply *m_reply =
nullptr;
112 bool m_complete =
false;
113 Status m_status = Ready;
114 QString m_errorString;