73
67
#include "qorganizeritem.h"
74
#include "qorganizeritemmanager.h"
75
#include "qorganizeritemmanagerengine.h"
76
#include "qorganizeritemmanagerenginefactory.h"
68
#include "qorganizermanager.h"
69
#include "qorganizermanagerengine.h"
70
#include "qorganizermanagerenginefactory.h"
77
71
#include "qorganizeritemdetaildefinition.h"
78
#include "qorganizeritemabstractrequest.h"
72
#include "qorganizerabstractrequest.h"
79
73
#include "qorganizeritemchangeset.h"
74
#include "qorganizeritemengineid.h"
75
#include "qorganizercollectionengineid.h"
83
class QOrganizerItemSkeletonFactory : public QObject, public QOrganizerItemManagerEngineFactory
79
class QOrganizerItemSkeletonFactory : public QObject, public QOrganizerManagerEngineFactory
86
Q_INTERFACES(QtMobility::QOrganizerItemManagerEngineFactory)
82
Q_INTERFACES(QtMobility::QOrganizerManagerEngineFactory)
88
QOrganizerItemManagerEngine* engine(const QMap<QString, QString>& parameters, QOrganizerItemManager::Error*);
84
QOrganizerManagerEngine* engine(const QMap<QString, QString>& parameters, QOrganizerManager::Error*);
85
QOrganizerItemEngineId* createItemEngineId(const QMap<QString, QString>& parameters, const QString& idString) const;
86
QOrganizerCollectionEngineId* createCollectionEngineId(const QMap<QString, QString>& parameters, const QString& idString) const;
89
87
QString managerName() const;
90
class QOrganizerCollectionSkeletonEngineId : public QOrganizerCollectionEngineId
93
QOrganizerCollectionSkeletonEngineId();
94
QOrganizerCollectionSkeletonEngineId(quint32 collectionId);
95
~QOrganizerCollectionSkeletonEngineId();
96
QOrganizerCollectionSkeletonEngineId(const QOrganizerCollectionSkeletonEngineId& other);
98
bool isEqualTo(const QOrganizerCollectionEngineId* other) const;
99
bool isLessThan(const QOrganizerCollectionEngineId* other) const;
101
QString managerUri() const;
102
QOrganizerCollectionEngineId* clone() const;
104
QString toString() const;
106
#ifndef QT_NO_DEBUG_STREAM
107
QDebug& debugStreamOut(QDebug& dbg) const;
112
// Your backend can use whatever it likes as an id internally.
113
// In this example, we use just a single quint32, but you can
114
// use any datatype you need to (filename string, etc).
115
quint32 m_collectionId;
118
class QOrganizerItemSkeletonEngineId : public QOrganizerItemEngineId
121
QOrganizerItemSkeletonEngineId();
122
QOrganizerItemSkeletonEngineId(quint32 itemId);
123
~QOrganizerItemSkeletonEngineId();
124
QOrganizerItemSkeletonEngineId(const QOrganizerItemSkeletonEngineId& other);
126
bool isEqualTo(const QOrganizerItemEngineId* other) const;
127
bool isLessThan(const QOrganizerItemEngineId* other) const;
129
QString managerUri() const;
130
QOrganizerItemEngineId* clone() const;
132
QString toString() const;
134
#ifndef QT_NO_DEBUG_STREAM
135
QDebug& debugStreamOut(QDebug& dbg) const;
140
// Your backend can use whatever it likes as an id internally.
141
// In this example, we use just a single quint32, but you can
142
// use a pair of ints (one for collectionId, one for itemId)
143
// or any other information (uuid string, etc).
92
147
class QOrganizerItemSkeletonEngineData : public QSharedData
121
176
QMap<QString, QString> managerParameters() const;
122
177
int managerVersion() const;
124
QList<QOrganizerItem> itemInstances(const QOrganizerItem& generator, const QDateTime& periodStart, const QDateTime& periodEnd, int maxCount, QOrganizerItemManager::Error* error) const;
125
QList<QOrganizerItemLocalId> itemIds(const QOrganizerItemFilter& filter, const QList<QOrganizerItemSortOrder>& sortOrders, QOrganizerItemManager::Error* error) const;
126
QList<QOrganizerItem> items(const QOrganizerItemFilter& filter, const QList<QOrganizerItemSortOrder>& sortOrders, const QOrganizerItemFetchHint& fetchHint, QOrganizerItemManager::Error* error) const;
127
QOrganizerItem item(const QOrganizerItemLocalId& itemId, const QOrganizerItemFetchHint& fetchHint, QOrganizerItemManager::Error* error) const;
179
QList<QOrganizerItem> itemOccurrences(const QOrganizerItem& parentItem, const QDateTime& periodStart, const QDateTime& periodEnd, int maxCount, const QOrganizerItemFetchHint& fetchHint, QOrganizerManager::Error* error) const;
180
QList<QOrganizerItemId> itemIds(const QDateTime& startDate, const QDateTime& endDate, const QOrganizerItemFilter& filter, const QList<QOrganizerItemSortOrder>& sortOrders, QOrganizerManager::Error* error) const;
181
QList<QOrganizerItem> items(const QDateTime& startDate, const QDateTime& endDate, const QOrganizerItemFilter& filter, const QList<QOrganizerItemSortOrder>& sortOrders, const QOrganizerItemFetchHint& fetchHint, QOrganizerManager::Error* error) const;
182
QOrganizerItem item(const QOrganizerItemId& itemId, const QOrganizerItemFetchHint& fetchHint, QOrganizerManager::Error* error) const;
129
bool saveItems(QList<QOrganizerItem>* items, const QOrganizerCollectionLocalId& collectionId, QMap<int, QOrganizerItemManager::Error>* errorMap, QOrganizerItemManager::Error* error);
130
bool removeItems(const QList<QOrganizerItemLocalId>& itemIds, QMap<int, QOrganizerItemManager::Error>* errorMap, QOrganizerItemManager::Error* error);
184
bool saveItems(QList<QOrganizerItem>* items, QMap<int, QOrganizerManager::Error>* errorMap, QOrganizerManager::Error* error);
185
bool removeItems(const QList<QOrganizerItemId>& itemIds, QMap<int, QOrganizerManager::Error>* errorMap, QOrganizerManager::Error* error);
132
187
/* Definitions - Accessors and Mutators */
133
QMap<QString, QOrganizerItemDetailDefinition> detailDefinitions(const QString& itemType, QOrganizerItemManager::Error* error) const;
134
QOrganizerItemDetailDefinition detailDefinition(const QString& definitionId, const QString& itemType, QOrganizerItemManager::Error* error) const;
135
bool saveDetailDefinition(const QOrganizerItemDetailDefinition& def, const QString& itemType, QOrganizerItemManager::Error* error);
136
bool removeDetailDefinition(const QString& definitionId, const QString& itemType, QOrganizerItemManager::Error* error);
188
QMap<QString, QOrganizerItemDetailDefinition> detailDefinitions(const QString& itemType, QOrganizerManager::Error* error) const;
189
QOrganizerItemDetailDefinition detailDefinition(const QString& definitionId, const QString& itemType, QOrganizerManager::Error* error) const;
190
bool saveDetailDefinition(const QOrganizerItemDetailDefinition& def, const QString& itemType, QOrganizerManager::Error* error);
191
bool removeDetailDefinition(const QString& definitionId, const QString& itemType, QOrganizerManager::Error* error);
138
193
/* Collections - every item belongs to exactly one collection */
139
QOrganizerCollectionLocalId defaultCollectionId(QOrganizerItemManager::Error* error) const;
140
QList<QOrganizerCollectionLocalId> collectionIds(QOrganizerItemManager::Error* error) const;
141
QList<QOrganizerCollection> collections(const QList<QOrganizerCollectionLocalId>& collectionIds, QOrganizerItemManager::Error* error) const;
142
bool saveCollection(QOrganizerCollection* collection, QOrganizerItemManager::Error* error);
143
bool removeCollection(const QOrganizerCollectionLocalId& collectionId, QOrganizerItemManager::Error* error);
194
QOrganizerCollection defaultCollection(QOrganizerManager::Error* error) const;
195
QOrganizerCollection collection(const QOrganizerCollectionId& collectionId, QOrganizerManager::Error* error) const;
196
QList<QOrganizerCollection> collections(QOrganizerManager::Error* error) const;
197
bool saveCollection(QOrganizerCollection* collection, QOrganizerManager::Error* error);
198
bool removeCollection(const QOrganizerCollectionId& collectionId, QOrganizerManager::Error* error);
145
200
/* Capabilities reporting */
146
bool hasFeature(QOrganizerItemManager::ManagerFeature feature, const QString& itemType) const;
201
bool hasFeature(QOrganizerManager::ManagerFeature feature, const QString& itemType) const;
147
202
bool isFilterSupported(const QOrganizerItemFilter& filter) const;
148
QList<QVariant::Type> supportedDataTypes() const;
203
QList<int> supportedDataTypes() const;
149
204
QStringList supportedItemTypes() const;
151
206
/* Asynchronous Request Support */
152
void requestDestroyed(QOrganizerItemAbstractRequest* req);
153
bool startRequest(QOrganizerItemAbstractRequest* req);
154
bool cancelRequest(QOrganizerItemAbstractRequest* req);
155
bool waitForRequestFinished(QOrganizerItemAbstractRequest* req, int msecs);
207
void requestDestroyed(QOrganizerAbstractRequest* req);
208
bool startRequest(QOrganizerAbstractRequest* req);
209
bool cancelRequest(QOrganizerAbstractRequest* req);
210
bool waitForRequestFinished(QOrganizerAbstractRequest* req, int msecs);
158
213
QOrganizerItemSkeletonEngineData* d;