Location:
fldbase.h
Link against: field.lib
CTextField
Supported from 5.0
The abstract base class for all fields. A field contains
information which relates to a text object and is automatically updated.
Examples of fields are the page number and the current date and time. Fields
must implement the pure virtual functions defined in this class, including
Value()
which should calculate and return the field's new value,
and Type()
which returns the field's type UID. The type UID
identifies the field type to the field factory (see class
MTextFieldFactory
).
|
Defined in CTextField
:
ExternalizeL()
, InternalizeL()
, RestoreL()
, StoreL()
, Type()
, Value()
Inherited from CBase
:
operator new()
virtual void ExternalizeL(RWriteStream& aStream)const;
Externalises the field data. Called by
StoreL()
.
Calling this default implementation raises a panic. Concrete
field classes with persistent data must provide their own implementation of
this function. Concrete field classes with no persistent data must provide a
StoreL()
implementation that just returns
KNullStreamId
.
|
virtual void InternalizeL(RReadStream& aStream)=0;
Internalises the field data. Pure virtual. Called by
RestoreL()
.
|
virtual TStreamId StoreL(CStreamStore& aStore)const;
Stores the field data to a stream store. Concrete field types with
no persistent data should override this function to return
KNullStreamId
.
|
|
virtual void RestoreL(const CStreamStore& aStore,TStreamId aId);
Restores the field data from a stream store. Concrete field types with no persistent data should override this function to do nothing.
|
virtual TUid Type()const=0;
Returns the field's type UID.
|
virtual TInt Value(TPtr& aValueText)=0;
Sets aValueText
to the current field value if the buffer is
large enough. If not, aValueText
is not changed, and the function
returns the length which is required to hold the field's value.
|
|