]> git.saurik.com Git - apple/icu.git/blobdiff - icuSources/layout/IndicLayoutEngine.cpp
ICU-8.11.tar.gz
[apple/icu.git] / icuSources / layout / IndicLayoutEngine.cpp
index 3b776a0d5ef9584e4309c396e15e9621f2623a28..ec83e73e46290bf59dfb57a29e7b50565cdd1174 100644 (file)
@@ -1,7 +1,7 @@
 
 /*
  *
- * (C) Copyright IBM Corp. 1998-2004 - All Rights Reserved
+ * (C) Copyright IBM Corp. 1998-2005 - All Rights Reserved
  *
  */
 
@@ -25,16 +25,20 @@ U_NAMESPACE_BEGIN
 UOBJECT_DEFINE_RTTI_IMPLEMENTATION(IndicOpenTypeLayoutEngine)
 
 IndicOpenTypeLayoutEngine::IndicOpenTypeLayoutEngine(const LEFontInstance *fontInstance, le_int32 scriptCode, le_int32 languageCode,
-                    const GlyphSubstitutionTableHeader *gsubTable)
-    : OpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, gsubTable), fMPreFixups(NULL)
+                    le_int32 typoFlags, const GlyphSubstitutionTableHeader *gsubTable)
+    : OpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags, gsubTable), fMPreFixups(NULL)
 {
-    fFeatureOrder = IndicReordering::getFeatureOrder();
+    fFeatureMap = IndicReordering::getFeatureMap(fFeatureMapCount);
+    fFeatureOrder = TRUE;
+
+    fFilterZeroWidth = IndicReordering::getFilterZeroWidth(fScriptCode);
 }
 
-IndicOpenTypeLayoutEngine::IndicOpenTypeLayoutEngine(const LEFontInstance *fontInstance, le_int32 scriptCode, le_int32 languageCode)
-    : OpenTypeLayoutEngine(fontInstance, scriptCode, languageCode), fMPreFixups(NULL)
+IndicOpenTypeLayoutEngine::IndicOpenTypeLayoutEngine(const LEFontInstance *fontInstance, le_int32 scriptCode, le_int32 languageCode, le_int32 typoFlags)
+    : OpenTypeLayoutEngine(fontInstance, scriptCode, languageCode, typoFlags), fMPreFixups(NULL)
 {
-    fFeatureOrder = IndicReordering::getFeatureOrder();
+    fFeatureMap = IndicReordering::getFeatureMap(fFeatureMapCount);
+    fFeatureOrder = TRUE;
 }
 
 IndicOpenTypeLayoutEngine::~IndicOpenTypeLayoutEngine()