diff options
author | juhvu <qt-info@nokia.com> | 2010-09-03 18:03:29 +1000 |
---|---|---|
committer | juhvu <qt-info@nokia.com> | 2010-09-03 18:03:29 +1000 |
commit | f758011bd3b8f8d842beb3540de5cc8a51cf28a6 (patch) | |
tree | 6e42b770e78a6cfbf0f7a5f8abb7f6a0f3213d06 /plugins/declarative/location/qdeclarativelandmarkmodel_p.h | |
parent | 1209fe828948ebf69dead03dc511638a7743b0e1 (diff) |
Declarative coordinate support for declarative landmark
Diffstat (limited to 'plugins/declarative/location/qdeclarativelandmarkmodel_p.h')
-rw-r--r-- | plugins/declarative/location/qdeclarativelandmarkmodel_p.h | 28 |
1 files changed, 22 insertions, 6 deletions
diff --git a/plugins/declarative/location/qdeclarativelandmarkmodel_p.h b/plugins/declarative/location/qdeclarativelandmarkmodel_p.h index 7010abfa31..dddd085615 100644 --- a/plugins/declarative/location/qdeclarativelandmarkmodel_p.h +++ b/plugins/declarative/location/qdeclarativelandmarkmodel_p.h @@ -8,6 +8,7 @@ #include <qlandmarkmanager.h> #include <qlandmarksortorder.h> #include <qlandmarkfetchrequest.h> +#include <qlandmarkimportrequest.h> #include <QtDeclarative/qdeclarative.h> #include <QDeclarativeParserStatus> @@ -30,8 +31,8 @@ public: virtual ~QDeclarativeLandmarkAbstractModel(); // From QDeclarativeParserStatus - void classBegin() {} - void componentComplete(); + virtual void classBegin() {} + virtual void componentComplete(); // From QAbstractListModel virtual int rowCount(const QModelIndex &parent) const = 0; @@ -46,7 +47,7 @@ public: void setOffset(int offset); void scheduleUpdate(); - void setDbFileName(QString fileName); // testing purposes only + Q_INVOKABLE void setDbFileName(QString fileName); // testing purposes only virtual void startUpdate() = 0; signals: @@ -63,9 +64,9 @@ private slots: void categoriesChanged(const QList<QLandmarkCategoryId> &); void landmarksChanged(const QList<QLandmarkId> &); void dataChanged(); +protected: virtual void cancelUpdate() = 0; - -private: + virtual void cancelImport() {}; void connectManager(); protected: @@ -86,6 +87,7 @@ class QDeclarativeLandmarkModel: public QDeclarativeLandmarkAbstractModel Q_PROPERTY(QDeclarativeLandmarkFilterBase* filter READ filter WRITE setFilter NOTIFY filterChanged) Q_PROPERTY(QDeclarativeListProperty<QDeclarativeLandmark> landmarks READ landmarks NOTIFY landmarksChanged) Q_PROPERTY(SortKey sortBy READ sortBy WRITE setSortBy NOTIFY sortByChanged) + Q_PROPERTY(QString importFile READ importFile WRITE setImportFile NOTIFY importFileChanged) Q_PROPERTY(SortOrder sortOrder READ sortOrder WRITE setSortOrder NOTIFY sortOrderChanged) Q_ENUMS(SortOrder) Q_ENUMS(SortKey) @@ -107,7 +109,9 @@ public: IconSourceRole, UrlRole, LatitudeRole, - LongitudeRole + LongitudeRole, + AltitudeRole, + LandmarkRole }; enum SortOrder { AscendingOrder = Qt::AscendingOrder, @@ -118,6 +122,11 @@ public: NameSort = QLandmarkSortOrder::NameSort }; + QString importFile() const; + void setImportFile(QString importFile); + void scheduleImport(); + virtual void componentComplete(); + SortKey sortBy() const; void setSortBy(SortKey key); SortOrder sortOrder() const; @@ -129,6 +138,7 @@ public: // For testing purpose to access ordered data QList<QLandmark> landmarkList(); QDeclarativeListProperty<QDeclarativeLandmark> landmarks(); + static void landmarks_append(QDeclarativeListProperty<QDeclarativeLandmark>* prop, QDeclarativeLandmark* landmark); static int landmarks_count(QDeclarativeListProperty<QDeclarativeLandmark>* prop); static QDeclarativeLandmark* landmarks_at(QDeclarativeListProperty<QDeclarativeLandmark>* prop, int index); @@ -136,6 +146,7 @@ public: protected: Q_INVOKABLE void startUpdate(); + Q_INVOKABLE void startImport(); signals: void countChanged(); @@ -143,9 +154,11 @@ signals: void sortByChanged(); void sortOrderChanged(); void landmarksChanged(); + void importFileChanged(); private slots: void cancelUpdate(); + void cancelImport(); void fetchRequestStateChanged(QLandmarkAbstractRequest::State); private: @@ -157,6 +170,9 @@ private: QDeclarativeLandmarkFilterBase* m_filter; QLandmarkFetchRequest* m_fetchRequest; QLandmarkSortOrder* m_sortingOrder; + QLandmarkImportRequest* m_importRequest; + QString m_importFile; + bool m_importPending; // Landmark list received from platform QList<QLandmark> m_landmarks; // Same landmark list, but as declarative classes |