williamr@4: /* williamr@4: * Copyright (c) 2002-2007 Nokia Corporation and/or its subsidiary(-ies). williamr@4: * All rights reserved. williamr@4: * This component and the accompanying materials are made available williamr@4: * under the terms of "Eclipse Public License v1.0" williamr@4: * which accompanies this distribution, and is available williamr@4: * at the URL "http://www.eclipse.org/legal/epl-v10.html". williamr@4: * williamr@4: * Initial Contributors: williamr@4: * Nokia Corporation - initial contribution. williamr@4: * williamr@4: * Contributors: williamr@4: * williamr@4: * Description: Data types for the field type system williamr@4: * williamr@4: */ williamr@4: williamr@4: williamr@4: #ifndef VPBKFIELDTYPE_HRH williamr@4: #define VPBKFIELDTYPE_HRH williamr@4: williamr@4: /** williamr@4: * Virtual Phonebook field data storage types. williamr@4: * @see MVPbkContactFieldData::DataType williamr@4: */ williamr@4: enum TVPbkFieldStorageType williamr@4: { williamr@4: /// Undefined storage williamr@4: EVPbkFieldStorageTypeNull = -1, williamr@4: /// Text storage williamr@4: EVPbkFieldStorageTypeText = 0, williamr@4: /// Binary (BLOB) storage williamr@4: EVPbkFieldStorageTypeBinary, williamr@4: /// Date/Time storage williamr@4: EVPbkFieldStorageTypeDateTime, williamr@4: /// URI storage williamr@4: EVPbkFieldStorageTypeUri, williamr@4: /// Maximum number of field storage types supported. williamr@4: KVPbkMaxFieldStorageTypes = 16 williamr@4: }; williamr@4: williamr@4: /** williamr@4: * Virtual Phonebook field type names. Based on the Versit 2.1 & 3.0 standards. williamr@4: * @see MVPbkFieldType::TypeName williamr@4: */ williamr@4: enum TVPbkFieldTypeName williamr@4: { williamr@4: EVPbkVersitNameNone = 0, williamr@4: EVPbkVersitNameFN, williamr@4: EVPbkVersitNameN, williamr@4: EVPbkVersitNamePHOTO, williamr@4: EVPbkVersitNameBDAY, williamr@4: EVPbkVersitNameADR, williamr@4: EVPbkVersitNameLABEL, williamr@4: EVPbkVersitNameTEL, williamr@4: EVPbkVersitNameEMAIL, williamr@4: EVPbkVersitNameMAILER, williamr@4: EVPbkVersitNameTZ, williamr@4: EVPbkVersitNameGEO, williamr@4: EVPbkVersitNameTITLE, williamr@4: EVPbkVersitNameROLE, williamr@4: EVPbkVersitNameLOGO, williamr@4: EVPbkVersitNameAGENT, williamr@4: EVPbkVersitNameORG, williamr@4: EVPbkVersitNameCATEGORIES, // Versit 3.0 williamr@4: EVPbkVersitNameNOTE, williamr@4: EVPbkVersitNamePRODID, // Versit 3.0 williamr@4: EVPbkVersitNameREV, williamr@4: EVPbkVersitNameSORTSTRING, // Versit 3.0 williamr@4: EVPbkVersitNameSOUND, williamr@4: EVPbkVersitNameURL, williamr@4: EVPbkVersitNameUID, williamr@4: EVPbkVersitNameVERSION, williamr@4: EVPbkVersitNameCLASS, // Versit 3.0 williamr@4: EVPbkVersitNameKEY, williamr@4: EVPbkVersitNameX, williamr@4: EVPbkVersitNameTopContact, williamr@4: EVPbkVersitNameIMPP, williamr@4: /// Number of field type names williamr@4: KVPbkVersitNameCount // keep last williamr@4: }; williamr@4: williamr@4: /** williamr@4: * Virtual Phonebook field types not supported by the Versit 2.1 standard. williamr@4: * @see MVPbkFieldType::NonVersitType williamr@4: */ williamr@4: enum TVPbkNonVersitFieldType williamr@4: { williamr@4: EVPbkNonVersitTypeNone = 0, williamr@4: EVPbkNonVersitTypeDTMF, williamr@4: EVPbkNonVersitTypeRingTone, williamr@4: EVPbkNonVersitTypeLocationPrivacy, williamr@4: /// Generic label field type for folded view names and group labels williamr@4: EVPbkNonVersitTypeGenericLabel, williamr@4: /// Field type for caller object image williamr@4: EVPbkNonVersitTypeCodImage, williamr@4: /// Field type for caller object text williamr@4: EVPbkNonVersitTypeCodText, williamr@4: /// Number of non versit types williamr@4: KVPbkNonVersitTypeCount // keep last williamr@4: }; williamr@4: williamr@4: /** williamr@4: * Symbolic names for Virtual Phonebook subfield types. williamr@4: */ williamr@4: enum TVPbkSubFieldType williamr@4: { williamr@4: EVPbkVersitSubFieldNone = 0, williamr@4: williamr@4: // Subfields for the "N" property williamr@4: EVPbkVersitSubFieldFamilyName = 0, williamr@4: EVPbkVersitSubFieldGivenName, williamr@4: EVPbkVersitSubFieldAdditionalName, williamr@4: EVPbkVersitSubFieldNamePrefix, williamr@4: EVPbkVersitSubFieldNameSuffix, williamr@4: williamr@4: // Subfields for the "ADR" property williamr@4: EVPbkVersitSubFieldPostOfficeAddress = 0, williamr@4: EVPbkVersitSubFieldExtendedAddress, williamr@4: EVPbkVersitSubFieldStreet, williamr@4: EVPbkVersitSubFieldLocality, williamr@4: EVPbkVersitSubFieldRegion, williamr@4: EVPbkVersitSubFieldPostalCode, williamr@4: EVPbkVersitSubFieldCountry, williamr@4: williamr@4: // Subfields for the "ORG" property williamr@4: EVPbkVersitSubFieldOrgName = 0, williamr@4: EVPbkVersitSubFieldOrgUnit, williamr@4: williamr@4: // Subfields for the "SOUND" property williamr@4: EVPbkVersitSubFieldFamilyNamePronunciation = 0, williamr@4: EVPbkVersitSubFieldGivenNamePronunciation, williamr@4: EVPbkVersitSubFieldCompanyNamePronunciation, williamr@4: williamr@4: // Subfields for the "PHOTO" property williamr@4: EVPbkVersitSubFieldPicture = 0 williamr@4: }; williamr@4: williamr@4: /** williamr@4: * Virtual Phonebook field type parameters. Based on the Versit 2.1 standard. williamr@4: * @see TVPbkFieldTypeParameters williamr@4: * @see MVPbkFieldType::TypeParameters() williamr@4: */ williamr@4: enum TVPbkFieldTypeParameter williamr@4: { williamr@4: // General parameters williamr@4: EVPbkVersitParamHOME, williamr@4: EVPbkVersitParamWORK, williamr@4: EVPbkVersitParamPREF, williamr@4: // spare for additional general parameters williamr@4: williamr@4: // Address parameters williamr@4: EVPbkVersitParamDOM = 8, williamr@4: EVPbkVersitParamINTL, williamr@4: EVPbkVersitParamPOSTAL, williamr@4: EVPbkVersitParamPARCEL, williamr@4: // spare for additional address parameters williamr@4: williamr@4: // Telephone parameters williamr@4: EVPbkVersitParamVOICE = 24, williamr@4: EVPbkVersitParamFAX, williamr@4: EVPbkVersitParamMSG, williamr@4: EVPbkVersitParamCELL, williamr@4: EVPbkVersitParamPAGER, williamr@4: EVPbkVersitParamBBS, williamr@4: EVPbkVersitParamMODEM, williamr@4: EVPbkVersitParamCAR, williamr@4: EVPbkVersitParamISDN, williamr@4: EVPbkVersitParamVIDEO, williamr@4: // spare for additional telephone parameters williamr@4: williamr@4: // Email parameters williamr@4: EVPbkVersitParamAOL = 56, williamr@4: EVPbkVersitParamAppleLink, williamr@4: EVPbkVersitParamATTMail, williamr@4: EVPbkVersitParamCIS, williamr@4: EVPbkVersitParameWorld, williamr@4: EVPbkVersitParamINTERNET, williamr@4: EVPbkVersitParamIBMMail, williamr@4: EVPbkVersitParamMCIMail, williamr@4: EVPbkVersitParamPOWERSHARE, williamr@4: EVPbkVersitParamPRODIGY, williamr@4: EVPbkVersitParamTLX, williamr@4: EVPbkVersitParamX400, williamr@4: // spare for additional email parameters williamr@4: williamr@4: // Key parameters williamr@4: EVPbkVersitParamX509 = 72, williamr@4: EVPbkVersitParamPGP, williamr@4: // spare for additional key parameters williamr@4: williamr@4: // Image types williamr@4: EVPbkVersitParamGIF = 88, williamr@4: EVPbkVersitParamCGM, williamr@4: EVPbkVersitParamWMF, williamr@4: EVPbkVersitParamBMP, williamr@4: EVPbkVersitParamMET, williamr@4: EVPbkVersitParamPMB, williamr@4: EVPbkVersitParamDIB, williamr@4: EVPbkVersitParamPICT, williamr@4: EVPbkVersitParamTIFF, williamr@4: EVPbkVersitParamPS, williamr@4: EVPbkVersitParamPDF, williamr@4: EVPbkVersitParamJPEG, williamr@4: EVPbkVersitParamMPEG, williamr@4: EVPbkVersitParamMPEG2, williamr@4: EVPbkVersitParamAVI, williamr@4: EVPbkVersitParamQTIME, williamr@4: EVPbkVersitParamPNG, williamr@4: EVPbkVersitParamJP2, williamr@4: // spare for additional image types williamr@4: williamr@4: // Sound types williamr@4: EVPbkVersitParamWAVE = 112, williamr@4: EVPbkVersitParamPCM, williamr@4: EVPbkVersitParamAIFF, williamr@4: // spare for additional sound types williamr@4: williamr@4: /// SIP parameters williamr@4: EVPbkVersitParamVOIP = 120, williamr@4: EVPbkVersitParamSWIS, williamr@4: EVPbkVersitParamPOC, williamr@4: EVPbkVersitParamSIP, williamr@4: williamr@4: // Reuse this first for parameters that don't match the categories above williamr@4: EVPbkVersitParamOther = 128, williamr@4: williamr@4: /// Maximum number of versit parameters supported. williamr@4: KVPbkMaxVersitParams = 256 // this must be a power of 2! williamr@4: }; williamr@4: williamr@4: enum TVPbkDefaultType williamr@4: { williamr@4: /// Defaults williamr@4: EVPbkDefaultTypeUndefined, williamr@4: EVPbkDefaultTypePhoneNumber, williamr@4: EVPbkDefaultTypeVideoNumber, williamr@4: EVPbkDefaultTypeSms, williamr@4: EVPbkDefaultTypeMms, williamr@4: EVPbkDefaultTypeEmail, williamr@4: EVPbkDefaultTypeEmailOverSms, williamr@4: EVPbkDefaultTypeVoIP, williamr@4: EVPbkDefaultTypePOC, williamr@4: EVPbkDefaultTypeChat, williamr@4: EVPbkDefaultTypeOpenLink, williamr@4: williamr@4: // This has to be last in the enumeration williamr@4: EVPbkLastDefaultType williamr@4: }; williamr@4: williamr@4: enum TVPbkSpeedDialIndex williamr@4: { williamr@4: /// Speed dials williamr@4: EVPbkSpeedDial1 = 0, williamr@4: EVPbkSpeedDial2, williamr@4: EVPbkSpeedDial3, williamr@4: EVPbkSpeedDial4, williamr@4: EVPbkSpeedDial5, williamr@4: EVPbkSpeedDial6, williamr@4: EVPbkSpeedDial7, williamr@4: EVPbkSpeedDial8, williamr@4: EVPbkSpeedDial9 williamr@4: }; williamr@4: williamr@4: /** williamr@4: * The version of the field type selector williamr@4: */ williamr@4: enum TVPbkFieldTypeSelectorVersion williamr@4: { williamr@4: EVPbkFieldTypeSelectorV1 = 1, williamr@4: EVPbkFieldTypeSelectorV2 = 2 williamr@4: }; williamr@4: williamr@4: #endif // VPBKFIELDTYPE_HRH williamr@4: williamr@4: // End of File