summaryrefslogtreecommitdiffstats
path: root/plugins/declarative/location/qdeclarativelandmarkmodel_p.h
diff options
context:
space:
mode:
authorjuhvu <qt-info@nokia.com>2010-09-03 18:03:29 +1000
committerjuhvu <qt-info@nokia.com>2010-09-03 18:03:29 +1000
commitf758011bd3b8f8d842beb3540de5cc8a51cf28a6 (patch)
tree6e42b770e78a6cfbf0f7a5f8abb7f6a0f3213d06 /plugins/declarative/location/qdeclarativelandmarkmodel_p.h
parent1209fe828948ebf69dead03dc511638a7743b0e1 (diff)
Declarative coordinate support for declarative landmark
Diffstat (limited to 'plugins/declarative/location/qdeclarativelandmarkmodel_p.h')
-rw-r--r--plugins/declarative/location/qdeclarativelandmarkmodel_p.h28
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