MVPbkStoreContactField Class Reference

#include <app/MVPbkStoreContactField.h>

Link against: VPbkEng.lib

class MVPbkStoreContactField : public MVPbkBaseContactField

Inherits from

Detailed Description

An interface for the field of the store contact.

Client can access the contact field using this interface. The field can have a label and a data.

A new field can be created using the MVPbkStoreContact interface. For looping the contact fields see MVPbkStoreContactFieldCollection. The parent of the field in the object hierarchy is the store contact.

See also: CVPbkContactFieldTypeIterator CVPbkFieldTypeSelector

Constructor & Destructor Documentation

~MVPbkStoreContactField ( )

~MVPbkStoreContactField()[inline, virtual]

Destructor

Member Function Documentation

CloneLC ( )

MVPbkStoreContactField *CloneLC()const [pure virtual]

Clones the field.

Pushes the created copy to the cleanup stack.

See also: MVPbkStoreContactFieldCollection::FieldAt

Returns: A copy of the field.

CreateLinkLC ( )

MVPbkContactLink *CreateLinkLC()const [pure virtual]

Creates a link representing the contact and the field.

The field can be later retrieved using the RetrieveField of MVPbkStoreContactFieldCollection interface.

NOTE: implementations of stores are possibly using an index of the field as an identifier so clients should prefer not to save field links permanently. E.g modifying the contact can invalidate the link in some store implementations. A field link is practical in use cases where the link is created and immediately given to another component.

Returns: A link representing the contact and the field or NULL if the contact doesn't exist in the store. E.g a new contact that hasn't been committed has no unique identifier yet. NULL is not put into the CleanupStack.

FieldData ( )

const MVPbkContactFieldData &FieldData()const [pure virtual]

Reimplemented from MVPbkBaseContactField::FieldData()const

Returns this field's data storage (read-only). The actual data type can be get using the static Cast functions in actual classes.

See also: MVPbkContactFieldTextData MVPbkContactFieldBinaryData MVPbkContactFieldDateTimeData

Returns: This field's data storage (read-only).

FieldData ( )

MVPbkContactFieldData &FieldData()[pure virtual]

Returns the data storage (read-write) of the field.

The data type depends on the field and it's client's responsibility to check the type before casting the type.

See also: MVPbkContactFieldTextData::Cast MVPbkContactFieldDateTimeData::Cast MVPbkContactFieldBinaryData::Cast

Returns: The data storage of the field.

FieldLabel ( )

TPtrC FieldLabel()const [pure virtual]

Returns the label of the field or KNullDesC if there is no field label.

Returns: The label of the field or KNullDesC

MaxLabelLength ( )

TInt MaxLabelLength()const [pure virtual]

Gets the maximum length of the label.

SupportsLabel must be true for using this.

Returns: The maximum length of the label or KVPbkUnlimitedLabelLength if the store has no limits. Zero should be returned in other cases though this shouldn't be called if labels are not supported.

SetFieldLabelL ( const TDesC & )

voidSetFieldLabelL(const TDesC &aText)[pure virtual]

Sets this field's label.

SupportsLabel must be true for using this.

ParameterDescription
aTextThe label for the field.

StoreContactFieldExtension ( TUid )

TAny *StoreContactFieldExtension(TUid)[inline, virtual]

Returns an extension point for this interface or NULL.

Returns: An extension point for this interface or NULL.

SupportsLabel ( )

TBool SupportsLabel()const [pure virtual]

Returns ETrue if the field supports label.

Overwrites the global setting in MVPbkContactStoreProperties. This must be confirmed before using SetFieldLabelL or MaxLabelLength.

Returns: ETrue if the field supports label. Otherwise EFalse.