X-Git-Url: https://git.saurik.com/apple/icu.git/blobdiff_plain/b75a7d8f3b4adbae880cab104ce2c6a50eee4db2..48b980fed3435926e0b3a8d72ecb58be703a1c7a:/icuSources/layout/GlyphPositioningTables.cpp diff --git a/icuSources/layout/GlyphPositioningTables.cpp b/icuSources/layout/GlyphPositioningTables.cpp index ead6d1e8..b9187b4a 100644 --- a/icuSources/layout/GlyphPositioningTables.cpp +++ b/icuSources/layout/GlyphPositioningTables.cpp @@ -1,7 +1,5 @@ /* - * @(#)GlyphPositioningTables.cpp 1.7 00/03/15 - * - * (C) Copyright IBM Corp. 1998, 1999, 2000, 2001 - All Rights Reserved + * (C) Copyright IBM Corp. 1998-2005 - All Rights Reserved * */ @@ -10,22 +8,24 @@ #include "OpenTypeTables.h" #include "Lookups.h" #include "GlyphDefinitionTables.h" -#include "GlyphPositionAdjustments.h" #include "GlyphPositioningTables.h" #include "GlyphPosnLookupProc.h" +#include "CursiveAttachmentSubtables.h" +#include "LEGlyphStorage.h" +#include "GlyphPositionAdjustments.h" U_NAMESPACE_BEGIN -void GlyphPositioningTableHeader::process(LEGlyphID *glyphs, GlyphPositionAdjustment *glyphPositionAdjustments, - const LETag **glyphTags, le_int32 glyphCount, le_bool rightToLeft, +void GlyphPositioningTableHeader::process(LEGlyphStorage &glyphStorage, GlyphPositionAdjustments *glyphPositionAdjustments, le_bool rightToLeft, LETag scriptTag, LETag languageTag, const GlyphDefinitionTableHeader *glyphDefinitionTableHeader, - const LEFontInstance *fontInstance, const LETag *featureOrder) const + const LEFontInstance *fontInstance, const FeatureMap *featureMap, le_int32 featureMapCount, le_bool featureOrder) const { - GlyphPositioningLookupProcessor processor(this, scriptTag, languageTag, featureOrder); + GlyphPositioningLookupProcessor processor(this, scriptTag, languageTag, featureMap, featureMapCount, featureOrder); + + processor.process(glyphStorage, glyphPositionAdjustments, rightToLeft, glyphDefinitionTableHeader, fontInstance); - processor.process(glyphs, glyphPositionAdjustments, glyphTags, glyphCount, rightToLeft, - glyphDefinitionTableHeader, fontInstance); + glyphPositionAdjustments->applyCursiveAdjustments(glyphStorage, rightToLeft, fontInstance); } U_NAMESPACE_END