MCoeFepAwareTextEditor_Extension1 Class Reference

class MCoeFepAwareTextEditor_Extension1

An interface class which may be derived from by text editors to enable FEPs to store state information inside the editor. To be overridden by text-editors

The CState class, defined within the scope of MCoeFepAwareTextEditor_Extension1 represents the state information. This is information specific to the control which is only of interest to the FEP.

A class which implements this interface must implement the pure virtual functions State() and SetStateTransferingOwnershipL() , to get and set the state. The class should also implement the MCoeFepAwareTextEditor interface. It must override the private virtual MCoeFepAwareTextEditor::Extension1() to return a pointer to itself (the default implementation returns NULL). The private virtual MCoeFepAwareTextEditor::Extension1() function is called by the public, non-virtual MCoeFepAwareTextEditor::Extension1() function.

For example, if a FEP wants to set some state information in a text editor which is about to lose focus, the FEP should first call the editor's Extension1() function. If this returns non-NULL, the FEP should call the editor's implementation of SetStateTransferingOwnershipL() , passing in an object of a class derived from CState , which holds the state information. It should also pass in a UID which uniquely identifies the FEP. Later, when focus returns to the editor, the FEP can call State() to retrieve the state information it previously set. Note that CState has several reserved functions, to enable it to be extended in future, while retaining backwards compatibility.

Nested Classes and Structures

Public Member Functions
IMPORT_C MCoeFepLayDocExtension *GetFepLayDocExtension(TBool &)
IMPORT_C voidSetCursorType(TBool &, const TTextCursor &)
voidSetStateTransferingOwnershipL(CState *, TUid)
IMPORT_C voidStartFepInlineEditL(TBool &, const TCursorSelection &, const TDesC &, TInt, TBool, const MFormCustomDraw *, MFepInlineTextFormatRetriever &, MFepPointerEventHandlerDuringInlineEdit &)
CState *State(TUid)
Private Member Functions
IMPORT_C voidMCoeFepAwareTextEditor_Extension1_Reserved_4()

Member Functions Documentation

GetFepLayDocExtension(TBool &)

IMPORT_C MCoeFepLayDocExtension *GetFepLayDocExtension(TBool &aSetToTrue)[virtual]

Retrieves the current MCoeFepLayDocExtension object from the text editor

Parameters

TBool & aSetToTrueBoolean set to EFalse by the caller and subsequently to ETrue by the function indicating that this is the implemented version and not the previously reserved funtion.

MCoeFepAwareTextEditor_Extension1_Reserved_4()

IMPORT_C voidMCoeFepAwareTextEditor_Extension1_Reserved_4()[private, virtual]

SetCursorType(TBool &, const TTextCursor &)

IMPORT_C voidSetCursorType(TBool &aSetToTrue,
const TTextCursor &aTextCursor
)[virtual]

Changes the cursor displayed to indicate different modes of operation. For example how text is enterered

Parameters

TBool & aSetToTrueBoolean set to EFalse by the caller and subsequently to ETrue by the function indicating that this is the implemented version and not the previously reserved funtion.
const TTextCursor & aTextCursorThe new cursor to be displayed.

SetStateTransferingOwnershipL(CState *, TUid)

voidSetStateTransferingOwnershipL(CState *aState,
TUidaTypeSafetyUid
)[pure virtual]

Sets state information in the text editor.

This function must only transfer ownership of the state object after it has successfully done everything that can leave.

Parameters

CState * aStatePointer to the state information object.
TUid aTypeSafetyUidA UID which uniquely identifies the FEP which is calling this function. The text editor should store this value for use by the State() function.

StartFepInlineEditL(TBool &, const TCursorSelection &, const TDesC &, TInt, TBool, const MFormCustomDraw *, MFepInlineTextFormatRetriever &, MFepPointerEventHandlerDuringInlineEdit &)

IMPORT_C voidStartFepInlineEditL(TBool &aSetToTrue,
const TCursorSelection &aCursorSelection,
const TDesC &aInitialInlineText,
TIntaPositionOfInsertionPointInInlineText,
TBoolaCursorVisibility,
const MFormCustomDraw *aCustomDraw,
MFepInlineTextFormatRetriever &aInlineTextFormatRetriever,
MFepPointerEventHandlerDuringInlineEdit &aPointerEventHandlerDuringInlineEdit
)[virtual]

Updates the inline text.

Called when a character is added to or deleted from the inline text.

The descriptor aNewInlineText contains the entire new inline text string, not just the new text to be combined with the old inline text.

Parameters

TBool & aSetToTrueBoolean set to EFalse by the caller and subsequently to ETrue by the function indicating that this is the implemented version and not the previous reserved funtion.
const TCursorSelection & aCursorSelectionThe position of any hilighted text.
const TDesC & aInitialInlineText
TInt aPositionOfInsertionPointInInlineTextThe position of the insertion point (i.e. the cursor) within the inline text string aNewInlineText. This is an offset from the start of the string.
TBool aCursorVisibility
const MFormCustomDraw * aCustomDraw
MFepInlineTextFormatRetriever & aInlineTextFormatRetriever
MFepPointerEventHandlerDuringInlineEdit & aPointerEventHandlerDuringInlineEdit

State(TUid)

CState *State(TUidaTypeSafetyUid)[pure virtual]

Gets the state information previously set using SetStateTransferingOwnershipL().

This function does not transfer ownership. The function should first check that aTypeSafetyUid matches the UID value previously specified by SetStateTransferingOwnershipL(). If it doesn't match, the function should return NULL.

Pointer to the state information object.

Parameters

TUid aTypeSafetyUidA UID which uniquely identifies the FEP which is calling this function. The purpose of this is to enable the FEP to safely downcast the CState pointer returned by this function to a pointer to a derived class known about by the FEP.