200 class QContactWinCEEngine : public QContactManagerEngine |
200 class QContactWinCEEngine : public QContactManagerEngine |
201 { |
201 { |
202 Q_OBJECT |
202 Q_OBJECT |
203 |
203 |
204 public: |
204 public: |
205 QContactWinCEEngine(ContactWinceFactory* factory, const QString& engineName, const QMap<QString, QString>& parameters, QContactManager::Error& error); |
205 QContactWinCEEngine(ContactWinceFactory* factory, const QString& engineName, const QMap<QString, QString>& parameters, QContactManager::Error* error); |
206 QContactWinCEEngine(const QContactWinCEEngine& other); |
206 QContactWinCEEngine(const QContactWinCEEngine& other); |
207 ~QContactWinCEEngine(); |
207 ~QContactWinCEEngine(); |
208 QContactWinCEEngine& operator=(const QContactWinCEEngine& other); |
208 QContactWinCEEngine& operator=(const QContactWinCEEngine& other); |
209 void deref(); |
209 |
210 QString managerName() const; |
210 /* URI reporting */ |
|
211 virtual QString managerName() const; |
|
212 QMap<QString, QString> managerParameters() const; |
|
213 virtual int managerVersion() const; |
211 |
214 |
212 /* Filtering */ |
215 /* Filtering */ |
213 QList<QContactLocalId> contactIds(const QContactFilter& filter, const QList<QContactSortOrder>& sortOrders, QContactManager::Error& error) const; |
216 virtual QList<QContactLocalId> contactIds(const QContactFilter& filter, const QList<QContactSortOrder>& sortOrders, QContactManager::Error* error) const; |
214 |
217 |
215 /* Contacts - Accessors and Mutators */ |
218 virtual QList<QContact> contacts(const QContactFilter& filter, const QList<QContactSortOrder>& sortOrders, const QContactFetchHint& fetchHint, QContactManager::Error* error) const; |
216 QList<QContactLocalId> contactIds(const QList<QContactSortOrder>& sortOrders, QContactManager::Error& error) const; |
219 virtual QContact contact(const QContactLocalId& contactId, const QtMobility::QContactFetchHint& hint, QContactManager::Error* error) const; |
217 QContact contact(const QContactLocalId& contactId, const QStringList& definitionRestrictions, QContactManager::Error& error) const; |
220 |
218 bool saveContact(QContact* contact, QContactManager::Error& error); |
221 virtual bool saveContact(QContact* contact, QContactManager::Error* error); |
219 bool removeContact(const QContactLocalId& contactId, QContactManager::Error& error); |
222 virtual bool removeContact(const QContactLocalId& contactId, QContactManager::Error* error); |
220 |
223 virtual bool saveRelationship(QContactRelationship* relationship, QContactManager::Error* error); |
221 /* Groups - Accessors and Mutators */ |
224 virtual bool removeRelationship(const QContactRelationship& relationship, QContactManager::Error* error); |
222 //QList<QContactLocalId> groups(QContactManager::Error& error) const; |
225 |
223 //QContactGroup group(const QContactLocalId& groupId, QContactManager::Error& error) const; |
226 virtual bool saveContacts(QList<QContact>* contacts, QMap<int, QContactManager::Error>* errorMap, QContactManager::Error* error); |
224 //bool saveGroup(QContactGroup* group, QContactManager::Error& error); |
227 virtual bool removeContacts(const QList<QContactLocalId>& contactIds, QMap<int, QContactManager::Error>* errorMap, QContactManager::Error* error); |
225 //bool removeGroup(const QContactLocalId& groupId, QContactManager::Error& error); |
228 |
226 |
229 /* Return a pruned or modified contact which is valid and can be saved in the backend */ |
227 /* Definitions */ |
230 virtual QContact compatibleContact(const QContact& original, QContactManager::Error* error) |
228 QMap<QString, QContactDetailDefinition> detailDefinitions(const QString& contactType, QContactManager::Error& error) const; |
231 { |
|
232 return QContactManagerEngine::compatibleContact(original, error); |
|
233 } |
|
234 |
|
235 /* Synthesize the display label of a contact */ |
|
236 virtual QString synthesizedDisplayLabel(const QContact& contact, QContactManager::Error* error) const; |
|
237 |
|
238 |
|
239 /* "Self" contact id (MyCard) */ |
|
240 virtual bool setSelfContactId(const QContactLocalId& contactId, QContactManager::Error* error); |
|
241 virtual QContactLocalId selfContactId(QContactManager::Error* error) const; |
|
242 |
|
243 /* Relationships between contacts */ |
|
244 virtual QList<QContactRelationship> relationships(const QString& relationshipType, const QContactId& participantId, QContactRelationship::Role role, QContactManager::Error* error) const; |
|
245 virtual bool saveRelationships(QList<QContactRelationship>* relationships, QMap<int, QContactManager::Error>* errorMap, QContactManager::Error* error); |
|
246 virtual bool removeRelationships(const QList<QContactRelationship>& relationships, QMap<int, QContactManager::Error>* errorMap, QContactManager::Error* error); |
|
247 |
|
248 /* Validation for saving */ |
|
249 virtual QContact compatibleContact(const QContact&, QContactManager::Error* error) const {*error = QContactManager::NotSupportedError;return QContact();} |
|
250 virtual bool validateContact(const QContact& contact, QContactManager::Error* error) const |
|
251 { |
|
252 return QContactManagerEngine::validateContact(contact, error); |
|
253 } |
|
254 virtual bool validateDefinition(const QContactDetailDefinition& def, QContactManager::Error* error) const |
|
255 { |
|
256 return QContactManagerEngine::validateDefinition(def, error); |
|
257 } |
|
258 |
|
259 /* Definitions - Accessors and Mutators */ |
|
260 virtual QMap<QString, QContactDetailDefinition> detailDefinitions(const QString& contactType, QContactManager::Error* error) const; |
|
261 virtual QContactDetailDefinition detailDefinition(const QString& definitionId, const QString& contactType, QContactManager::Error* error) const |
|
262 { |
|
263 return QContactManagerEngine::detailDefinition(definitionId, contactType, error); |
|
264 } |
|
265 virtual bool saveDetailDefinition(const QContactDetailDefinition& def, const QString& contactType, QContactManager::Error* error); |
|
266 virtual bool removeDetailDefinition(const QString& definitionId, const QString& contactType, QContactManager::Error* error); |
229 |
267 |
230 /* Asynchronous Request Support */ |
268 /* Asynchronous Request Support */ |
231 void requestDestroyed(QContactAbstractRequest* req); |
269 virtual void requestDestroyed(QContactAbstractRequest* req); |
232 bool startRequest(QContactAbstractRequest* req); |
270 virtual bool startRequest(QContactAbstractRequest* req); |
233 bool cancelRequest(QContactAbstractRequest* req); |
271 virtual bool cancelRequest(QContactAbstractRequest* req); |
234 bool waitForRequestFinished(QContactAbstractRequest* req, int msecs); |
272 virtual bool waitForRequestFinished(QContactAbstractRequest* req, int msecs); |
235 |
273 |
236 /* Capabilities reporting */ |
274 /* Capabilities reporting */ |
237 bool hasFeature(QContactManager::ManagerFeature feature) const; |
275 virtual bool hasFeature(QContactManager::ManagerFeature feature, const QString& contactType) const; |
238 bool isFilterSupported(const QContactFilter& filter) const; |
276 virtual bool isRelationshipTypeSupported(const QString& relationshipType, const QString& contactType) const |
239 QList<QVariant::Type> supportedDataTypes() const; |
277 { |
240 |
278 Q_UNUSED(relationshipType); |
241 /* Synthesize the display label of a contact */ |
279 Q_UNUSED(contactType); |
242 virtual QString synthesizedDisplayLabel(const QContact& contact, QContactManager::Error& error) const; |
280 return false; |
243 |
281 } |
|
282 |
|
283 virtual bool isFilterSupported(const QContactFilter& filter) const; |
|
284 virtual QList<QVariant::Type> supportedDataTypes() const; |
|
285 virtual QStringList supportedContactTypes() const |
|
286 { |
|
287 return QContactManagerEngine::supportedContactTypes(); |
|
288 } |
|
289 |
244 /*helper functions*/ |
290 /*helper functions*/ |
245 PROPID metaAvatar() const; |
291 PROPID metaAvatar() const; |
246 PROPID metaAvatarType() const; |
292 PROPID metaAvatarType() const; |
247 PROPID metaEmail() const; |
293 PROPID metaEmail() const; |
248 PROPID metaPhone() const; |
294 PROPID metaPhone() const; |
|
295 |
249 private: |
296 private: |
250 QSharedDataPointer<QContactWinCEEngineData> d; |
297 QSharedDataPointer<QContactWinCEEngineData> d; |
251 |
298 |
252 QContact convertToQContact(IItem *contact) const; |
299 QContact convertToQContact(IItem *contact) const; |
253 bool convertFromQContact(const QContact& contact, IItem* item, QContactManager::Error &error) const; |
300 bool convertFromQContact(const QContact& contact, IItem* item, QContactManager::Error &error) const; |