qtmobility/plugins/contacts/symbian/src/transform/cnttransformonlineaccount.cpp
changeset 14 6fbed849b4f4
parent 11 06b8e2af4411
equal deleted inserted replaced
11:06b8e2af4411 14:6fbed849b4f4
   197 	}
   197 	}
   198 
   198 
   199 	return onlineAccount;
   199 	return onlineAccount;
   200 }
   200 }
   201 
   201 
   202 bool CntTransformOnlineAccount::supportsField(TUint32 fieldType) const
       
   203 {
       
   204     bool ret = false;
       
   205     if (fieldType == KUidContactFieldSIPID.iUid ||
       
   206         fieldType == KUidContactFieldIMPP.iUid  ||
       
   207         fieldType == KUidContactFieldServiceProvider.iUid  ||
       
   208         fieldType == KUidContactFieldPresence.iUid  ||
       
   209         fieldType == KUidContactFieldStatusMsg.iUid )         
       
   210     {
       
   211         ret = true;
       
   212     }
       
   213     return ret;
       
   214 }
       
   215 
       
   216 bool CntTransformOnlineAccount::supportsDetail(QString detailName) const
   202 bool CntTransformOnlineAccount::supportsDetail(QString detailName) const
   217 {
   203 {
   218     bool ret = false;
   204     bool ret = false;
   219     if (detailName == QContactOnlineAccount::DefinitionName) {
   205     if (detailName == QContactOnlineAccount::DefinitionName) {
   220         ret = true;
   206         ret = true;
   221     }
   207     }
   222     return ret;
   208     return ret;
       
   209 }
       
   210 
       
   211 QList<TUid> CntTransformOnlineAccount::supportedFields() const
       
   212 {
       
   213     return QList<TUid>()
       
   214         << KUidContactFieldSIPID
       
   215         << KUidContactFieldIMPP
       
   216         << KUidContactFieldServiceProvider
       
   217         << KUidContactFieldPresence
       
   218         << KUidContactFieldStatusMsg;
   223 }
   219 }
   224 
   220 
   225 QList<TUid> CntTransformOnlineAccount::supportedSortingFieldTypes(QString detailFieldName) const
   221 QList<TUid> CntTransformOnlineAccount::supportedSortingFieldTypes(QString detailFieldName) const
   226 {
   222 {
   227     QList<TUid> uids;
   223     QList<TUid> uids;
   283 
   279 
   284     if(definitions.contains(QContactOnlineAccount::DefinitionName)) {
   280     if(definitions.contains(QContactOnlineAccount::DefinitionName)) {
   285         QContactDetailDefinition d = definitions.value(QContactOnlineAccount::DefinitionName);
   281         QContactDetailDefinition d = definitions.value(QContactOnlineAccount::DefinitionName);
   286         QMap<QString, QContactDetailFieldDefinition> fields = d.fields();
   282         QMap<QString, QContactDetailFieldDefinition> fields = d.fields();
   287         QContactDetailFieldDefinition f;
   283         QContactDetailFieldDefinition f;
       
   284         
       
   285         // Support only certain subtypes 
       
   286         f.setDataType(QVariant::StringList);
       
   287         QVariantList subTypes;
       
   288         subTypes << QString(QLatin1String(QContactOnlineAccount::SubTypeSip));
       
   289         subTypes << QString(QLatin1String(QContactOnlineAccount::SubTypeSipVoip));
       
   290         subTypes << QString(QLatin1String(QContactOnlineAccount::SubTypeImpp));
       
   291         subTypes << QString(QLatin1String(QContactOnlineAccount::SubTypeVideoShare));
       
   292         f.setAllowableValues(subTypes);
       
   293         fields[QContactOnlineAccount::FieldSubTypes] = f;        
   288 
   294 
   289         // Don't support "ContextOther"
   295         // Don't support "ContextOther"
   290         f.setDataType(QVariant::StringList);
   296         f.setDataType(QVariant::StringList);
   291         f.setAllowableValues(QVariantList() 
   297         f.setAllowableValues(QVariantList() 
   292             << QLatin1String(QContactDetail::ContextHome) 
   298             << QLatin1String(QContactDetail::ContextHome)