Crazy Eddie's GUI System  0.8.1
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Pages
CEGUI::BidiVisualMapping Class Referenceabstract

Abstract class to wrap a Bidi visual mapping of a text string. More...

+ Inheritance diagram for CEGUI::BidiVisualMapping:
+ Collaboration diagram for CEGUI::BidiVisualMapping:

Public Types

typedef std::vector< int
CEGUI_VECTOR_ALLOC(int)> 
StrIndexList
 type definition for collection used to hold mapping index lists.
 

Public Member Functions

virtual ~BidiVisualMapping ()
 Destructor.
 
virtual BidiCharType getBidiCharType (const String::value_type char_to_check) const =0
 Gets the Bidi char type of a char. More...
 
virtual bool reorderFromLogicalToVisual (const String &logical, String &visual, StrIndexList &l2v, StrIndexList &v2l) const =0
 Reorder a string from a logical (type order) bidi string to a visual (the way it displayed) string. More...
 
bool updateVisual (const String &logical)
 Use reorderFromLogicalToVisual to update the internal visual mapping data and visual string representation based upon the logical string logical. More...
 
const StrIndexList getL2vMapping () const
 
const StrIndexList getV2lMapping () const
 
const StringgetTextVisual () const
 

Protected Attributes

StrIndexList d_l2vMapping
 
StrIndexList d_v2lMapping
 
String d_textVisual
 

Detailed Description

Abstract class to wrap a Bidi visual mapping of a text string.

Member Function Documentation

virtual BidiCharType CEGUI::BidiVisualMapping::getBidiCharType ( const String::value_type  char_to_check) const
pure virtual

Gets the Bidi char type of a char.

Parameters
charToCheckThe utf32 character code that will be checked.
Returns
One of the BidiCharType enumerated values indicating the Bidi char type.

Implemented in CEGUI::FribidiVisualMapping, and CEGUI::MinibidiVisualMapping.

virtual bool CEGUI::BidiVisualMapping::reorderFromLogicalToVisual ( const String logical,
String visual,
StrIndexList l2v,
StrIndexList v2l 
) const
pure virtual

Reorder a string from a logical (type order) bidi string to a visual (the way it displayed) string.

Parameters
logicalString object to be reordered.
visualString object containing the result reordered string.
l2vMappingList of integers that map the pos of each char from logical string in the visual string.
v2lMappingList of integers that map the pos of each char from visual string in the logical string.
Returns
  • true if successful.
  • false if the operation failed.

Implemented in CEGUI::FribidiVisualMapping, and CEGUI::MinibidiVisualMapping.

bool CEGUI::BidiVisualMapping::updateVisual ( const String logical)

Use reorderFromLogicalToVisual to update the internal visual mapping data and visual string representation based upon the logical string logical.

Parameters
logicalString object representing the logical text order.
Returns
  • true if the update was a success.
  • false if something went wrong.