TBidirectionalState Class Reference

#include <bidi.h>

class TBidirectionalState

Nested Classes and Structures

Public Member Functions
TBidirectionalState()
TBidirectionalState(TChar::TBdCategory, TChar::TBdCategory, TBool)
TInt CatToNumber(TInt)
TCategoryCharToBdCat(TChar::TBdCategory)
voidDeneutralizeRuns(TRunInfo *, TRunInfo *, TCategory, TCategory)
IMPORT_C voidExternalizeL(RWriteStream &)
TInt GenerateBdRunArray(const TText *, TInt, TBidirectionalState::TRunInfo *, TInt)
voidHandleBdControls(TReorderContext &)
IMPORT_C voidInternalizeL(RReadStream &)
IMPORT_C TBoolIsDefault()
TBool ParRightToLeft()
voidPrepareForNextLine(const TReorderContext &)
IMPORT_C voidReorderLine(TRunInfo *, TInt, TBool, TBool, TBool, TChar::TBdCategory, TChar::TBdCategory, TBool &)
IMPORT_C voidReorderLine(TRunInfo *, TInt, TBool, TBool, TBool, TChar::TBdCategory, TChar::TBdCategory)
voidReorderRuns(TReorderContext &)
IMPORT_C TIntReorderText(const TText *, TInt, TBool, TText *&)
IMPORT_C voidReset()
voidResolveImplicitLevels(TReorderContext &)
voidResolveNeutralTypes(TReorderContext &)
voidResolveWeakTypesW1W2W3(TReorderContext &)
voidResolveWeakTypesW4W5W6(TReorderContext &)
voidResolveWeakTypesW7(TReorderContext &)
IMPORT_C voidReverseGroups(TText *, TInt)
TCategoryUintToBdCat(TUint)
IMPORT_C TBooloperator==(const TBidirectionalState &)

Detailed Description

The bidirectional state class. This class contains functions that implement the Unicode Bidirectional Algorithm, which changes text from logical order to display order for the correct display of right-to-left scripts, like Arabic and Hebrew. A TBidirectionalState object carries the embedding level and stack from one line to the next. On construction it is in its 'start of paragraph' state.

Constructor & Destructor Documentation

TBidirectionalState ( )

IMPORT_CTBidirectionalState()

TBidirectionalState ( TChar::TBdCategory, TChar::TBdCategory, TBool )

TBidirectionalState(TChar::TBdCategoryaPrevCat,
TChar::TBdCategoryaPrevStrongCat,
TBoolaParRightToLeft
)

Member Function Documentation

CatToNumber ( TInt )

TInt CatToNumber(TIntaCat)[static]

CharToBdCat ( TChar::TBdCategory )

TCategoryCharToBdCat(TChar::TBdCategoryaCat)[static]

DeneutralizeRuns ( TRunInfo *, TRunInfo *, TCategory, TCategory )

voidDeneutralizeRuns(TRunInfo *aStart,
TRunInfo *aEnd,
TCategoryaStartCategory,
TCategoryaEndCategory
)[static]

ExternalizeL ( RWriteStream & )

IMPORT_C voidExternalizeL(RWriteStream &aDest)

GenerateBdRunArray ( const TText *, TInt, TBidirectionalState::TRunInfo *, TInt )

TInt GenerateBdRunArray(const TText *aText,
TIntaLength,
TBidirectionalState::TRunInfo *aRun,
TIntaMaxRuns
)[static]

HandleBdControls ( TReorderContext & )

voidHandleBdControls(TReorderContext &aContext)

InternalizeL ( RReadStream & )

IMPORT_C voidInternalizeL(RReadStream &aSource)

IsDefault ( )

IMPORT_C TBoolIsDefault()const

ParRightToLeft ( )

TBool ParRightToLeft()const [inline]

PrepareForNextLine ( const TReorderContext & )

voidPrepareForNextLine(const TReorderContext &aContext)

ReorderLine ( TRunInfo *, TInt, TBool, TBool, TBool, TChar::TBdCategory, TChar::TBdCategory, TBool & )

IMPORT_C voidReorderLine(TRunInfo *aRunInfo,
TIntaRuns,
TBoolaParStart,
TBoolaParEnd,
TBoolaParRightToLeft,
TChar::TBdCategoryaNextCategory,
TChar::TBdCategoryaNextStrongCategory,
TBool &aVisualEndIsAmbiguous
)

ReorderLine ( TRunInfo *, TInt, TBool, TBool, TBool, TChar::TBdCategory, TChar::TBdCategory )

IMPORT_C voidReorderLine(TRunInfo *aRunInfo,
TIntaRuns,
TBoolaParStart,
TBoolaParEnd,
TBoolaParRightToLeft,
TChar::TBdCategoryaNextCategory,
TChar::TBdCategoryaNextStrongCategory
)

ReorderRuns ( TReorderContext & )

voidReorderRuns(TReorderContext &aContext)

ReorderText ( const TText *, TInt, TBool, TText *& )

IMPORT_C TIntReorderText(const TText *aText,
TIntaLength,
TBoolaParRightToLeft,
TText *&aNewText
)[static]

Reset ( )

IMPORT_C voidReset()

ResolveImplicitLevels ( TReorderContext & )

voidResolveImplicitLevels(TReorderContext &aContext)

ResolveNeutralTypes ( TReorderContext & )

voidResolveNeutralTypes(TReorderContext &aContext)

ResolveWeakTypesW1W2W3 ( TReorderContext & )

voidResolveWeakTypesW1W2W3(TReorderContext &aContext)

ResolveWeakTypesW4W5W6 ( TReorderContext & )

voidResolveWeakTypesW4W5W6(TReorderContext &aContext)

ResolveWeakTypesW7 ( TReorderContext & )

voidResolveWeakTypesW7(TReorderContext &aContext)

ReverseGroups ( TText *, TInt )

IMPORT_C voidReverseGroups(TText *aStart,
TIntaLength
)[static]

UintToBdCat ( TUint )

TCategoryUintToBdCat(TUintaCat)[static]

operator== ( const TBidirectionalState & )

IMPORT_C TBooloperator==(const TBidirectionalState &aState)const