os/textandloc/fontservices/textshaperplugin/IcuSource/layout/DefaultCharMapper.h
author sl@SLION-WIN7.fritz.box
Fri, 15 Jun 2012 03:10:57 +0200
changeset 0 bde4ae8d615e
permissions -rw-r--r--
First public contribution.
     1 /*
     2  * %W% %W%
     3  *
     4  * (C) Copyright IBM Corp. 1998-2003 - All Rights Reserved
     5  *
     6  */
     7 
     8 #ifndef __DEFAULTCHARMAPPER_H
     9 #define __DEFAULTCHARMAPPER_H
    10 
    11 /**
    12  * \file
    13  * \internal
    14  */
    15 
    16 #include "LETypes.h"
    17 #include "LEFontInstance.h"
    18 
    19 U_NAMESPACE_BEGIN
    20 
    21 /**
    22  * This class is an instance of LECharMapper which
    23  * implements control character filtering and bidi
    24  * mirroring.
    25  *
    26  * @see LECharMapper
    27  */
    28 class DefaultCharMapper : public UMemory, public LECharMapper
    29 {
    30 private:
    31     le_bool fFilterControls;
    32     le_bool fMirror;
    33 
    34     static const LEUnicode32 controlChars[];
    35 
    36     static const le_int32 controlCharsCount;
    37 
    38     static const LEUnicode32 mirroredChars[];
    39 
    40     static const le_int32 mirroredCharsCount;
    41 
    42 public:
    43     DefaultCharMapper(le_bool filterControls, le_bool mirror)
    44         : fFilterControls(filterControls), fMirror(mirror)
    45     {
    46         // nothing
    47     };
    48 
    49     ~DefaultCharMapper()
    50     {
    51         // nada
    52     };
    53 
    54     LEUnicode32 mapChar(LEUnicode32 ch) const;
    55 };
    56 
    57 U_NAMESPACE_END
    58 #endif