| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) | 2 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) |
| 3 * | 3 * |
| 4 * This is part of HarfBuzz, an OpenType Layout engine library. | 4 * This is part of HarfBuzz, an OpenType Layout engine library. |
| 5 * | 5 * |
| 6 * Permission is hereby granted, without written agreement and without | 6 * Permission is hereby granted, without written agreement and without |
| 7 * license or royalty fees, to use, copy, modify, and distribute this | 7 * license or royalty fees, to use, copy, modify, and distribute this |
| 8 * software and its documentation for any purpose, provided that the | 8 * software and its documentation for any purpose, provided that the |
| 9 * above copyright notice and the following two paragraphs appear in | 9 * above copyright notice and the following two paragraphs appear in |
| 10 * all copies of this software. | 10 * all copies of this software. |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 50 HB_Combining_AboveLeft = 228, | 50 HB_Combining_AboveLeft = 228, |
| 51 HB_Combining_Above = 230, | 51 HB_Combining_Above = 230, |
| 52 HB_Combining_AboveRight = 232, | 52 HB_Combining_AboveRight = 232, |
| 53 | 53 |
| 54 HB_Combining_DoubleBelow = 233, | 54 HB_Combining_DoubleBelow = 233, |
| 55 HB_Combining_DoubleAbove = 234, | 55 HB_Combining_DoubleAbove = 234, |
| 56 HB_Combining_IotaSubscript = 240 | 56 HB_Combining_IotaSubscript = 240 |
| 57 } HB_CombiningClass; | 57 } HB_CombiningClass; |
| 58 | 58 |
| 59 typedef enum { | 59 typedef enum { |
| 60 CcmpProperty = 0x1, | 60 LocaProperty = 0x1, |
| 61 InitProperty = 0x2, | 61 CcmpProperty = 0x2, |
| 62 IsolProperty = 0x4, | 62 InitProperty = 0x4, |
| 63 FinaProperty = 0x8, | 63 IsolProperty = 0x8, |
| 64 MediProperty = 0x10, | 64 FinaProperty = 0x10, |
| 65 RligProperty = 0x20, | 65 MediProperty = 0x20, |
| 66 CaltProperty = 0x40, | 66 RligProperty = 0x40, |
| 67 LigaProperty = 0x80, | 67 CaltProperty = 0x80, |
| 68 DligProperty = 0x100, | 68 LigaProperty = 0x100, |
| 69 CswhProperty = 0x200, | 69 DligProperty = 0x200, |
| 70 MsetProperty = 0x400, | 70 CswhProperty = 0x400, |
| 71 MsetProperty = 0x800, |
| 71 | 72 |
| 72 /* used by indic and myanmar shaper */ | 73 /* used by indic and myanmar shaper */ |
| 73 NuktaProperty = 0x4, | 74 NuktaProperty = 0x8, |
| 74 AkhantProperty = 0x8, | 75 AkhantProperty = 0x10, |
| 75 RephProperty = 0x10, | 76 RephProperty = 0x20, |
| 76 PreFormProperty = 0x20, | 77 PreFormProperty = 0x40, |
| 77 BelowFormProperty = 0x40, | 78 BelowFormProperty = 0x80, |
| 78 AboveFormProperty = 0x80, | 79 AboveFormProperty = 0x100, |
| 79 HalfFormProperty = 0x100, | 80 HalfFormProperty = 0x200, |
| 80 PostFormProperty = 0x200, | 81 PostFormProperty = 0x400, |
| 81 VattuProperty = 0x400, | 82 ConjunctFormProperty = 0x800, |
| 82 PreSubstProperty = 0x800, | 83 VattuProperty = 0x1000, |
| 83 BelowSubstProperty = 0x1000, | 84 PreSubstProperty = 0x2000, |
| 84 AboveSubstProperty = 0x2000, | 85 BelowSubstProperty = 0x4000, |
| 85 PostSubstProperty = 0x4000, | 86 AboveSubstProperty = 0x8000, |
| 86 HalantProperty = 0x8000, | 87 PostSubstProperty = 0x10000, |
| 87 CligProperty = 0x10000 | 88 HalantProperty = 0x20000, |
| 89 CligProperty = 0x40000, |
| 90 IndicCaltProperty = 0x80000 |
| 88 | 91 |
| 89 } HB_OpenTypeProperty; | 92 } HB_OpenTypeProperty; |
| 90 | 93 |
| 91 /* return true if ok. */ | 94 /* return true if ok. */ |
| 92 typedef HB_Bool (*HB_ShapeFunction)(HB_ShaperItem *shaper_item); | 95 typedef HB_Bool (*HB_ShapeFunction)(HB_ShaperItem *shaper_item); |
| 93 typedef void (*HB_AttributeFunction)(HB_Script script, const HB_UChar16 *string,
hb_uint32 from, hb_uint32 len, HB_CharAttributes *attributes); | 96 typedef void (*HB_AttributeFunction)(HB_Script script, const HB_UChar16 *string,
hb_uint32 from, hb_uint32 len, HB_CharAttributes *attributes); |
| 94 | 97 |
| 95 typedef struct { | 98 typedef struct { |
| 96 HB_ShapeFunction shape; | 99 HB_ShapeFunction shape; |
| 97 HB_AttributeFunction charAttributes; | 100 HB_AttributeFunction charAttributes; |
| 98 } HB_ScriptEngine; | 101 } HB_ScriptEngine; |
| 99 | 102 |
| 100 extern const HB_ScriptEngine hb_scriptEngines[]; | 103 extern const HB_ScriptEngine hb_scriptEngines[]; |
| 101 | 104 |
| 102 extern HB_Bool HB_BasicShape(HB_ShaperItem *shaper_item); | 105 extern HB_Bool HB_BasicShape(HB_ShaperItem *shaper_item); |
| 106 extern HB_Bool HB_GreekShape(HB_ShaperItem *shaper_item); |
| 103 extern HB_Bool HB_TibetanShape(HB_ShaperItem *shaper_item); | 107 extern HB_Bool HB_TibetanShape(HB_ShaperItem *shaper_item); |
| 104 extern HB_Bool HB_HebrewShape(HB_ShaperItem *shaper_item); | 108 extern HB_Bool HB_HebrewShape(HB_ShaperItem *shaper_item); |
| 105 extern HB_Bool HB_ArabicShape(HB_ShaperItem *shaper_item); | 109 extern HB_Bool HB_ArabicShape(HB_ShaperItem *shaper_item); |
| 106 extern HB_Bool HB_HangulShape(HB_ShaperItem *shaper_item); | 110 extern HB_Bool HB_HangulShape(HB_ShaperItem *shaper_item); |
| 107 extern HB_Bool HB_MyanmarShape(HB_ShaperItem *shaper_item); | 111 extern HB_Bool HB_MyanmarShape(HB_ShaperItem *shaper_item); |
| 108 extern HB_Bool HB_KhmerShape(HB_ShaperItem *shaper_item); | 112 extern HB_Bool HB_KhmerShape(HB_ShaperItem *shaper_item); |
| 109 extern HB_Bool HB_IndicShape(HB_ShaperItem *shaper_item); | 113 extern HB_Bool HB_IndicShape(HB_ShaperItem *shaper_item); |
| 110 | 114 |
| 111 extern void HB_TibetanAttributes(HB_Script script, const HB_UChar16 *string, hb_
uint32 from, hb_uint32 len, HB_CharAttributes *attributes); | 115 extern void HB_TibetanAttributes(HB_Script script, const HB_UChar16 *string, hb_
uint32 from, hb_uint32 len, HB_CharAttributes *attributes); |
| 112 | 116 |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 158 HB_DECLARE_STACKARRAY(Type, Name) \ | 162 HB_DECLARE_STACKARRAY(Type, Name) \ |
| 159 HB_INIT_STACKARRAY(Type, Name, Length) | 163 HB_INIT_STACKARRAY(Type, Name, Length) |
| 160 | 164 |
| 161 #define HB_FREE_STACKARRAY(Name) \ | 165 #define HB_FREE_STACKARRAY(Name) \ |
| 162 if (stack##Name != Name) \ | 166 if (stack##Name != Name) \ |
| 163 free(Name); | 167 free(Name); |
| 164 | 168 |
| 165 HB_END_HEADER | 169 HB_END_HEADER |
| 166 | 170 |
| 167 #endif | 171 #endif |
| OLD | NEW |