[FREETYPE] Update to v2.6.1. CORE-10378
[reactos.git] / reactos / lib / 3rdparty / freetype / src / autofit / aftypes.h
index 78e3fd7..43b3800 100644 (file)
 
 #include "afblue.h"
 
+#ifdef FT_DEBUG_AUTOFIT
+#include FT_CONFIG_STANDARD_LIBRARY_H
+#endif
+
 
 FT_BEGIN_HEADER
 
@@ -54,8 +58,6 @@ FT_BEGIN_HEADER
 
 #ifdef FT_DEBUG_AUTOFIT
 
-#include FT_CONFIG_STANDARD_LIBRARY_H
-
 extern int    _af_debug_disable_horz_hints;
 extern int    _af_debug_disable_vert_hints;
 extern int    _af_debug_disable_blue_hints;
@@ -215,7 +217,8 @@ extern void*  _af_debug_hints;
                                      AF_StyleMetrics  metrics );
 
   typedef void
-  (*AF_WritingSystem_ApplyHintsFunc)( AF_GlyphHints    hints,
+  (*AF_WritingSystem_ApplyHintsFunc)( FT_UInt          glyph_index,
+                                      AF_GlyphHints    hints,
                                       FT_Outline*      outline,
                                       AF_StyleMetrics  metrics );
 
@@ -291,8 +294,9 @@ extern void*  _af_debug_hints;
   /*************************************************************************/
 
   /*
-   *  Each script is associated with a set of Unicode ranges that gets used
-   *  to test whether the font face supports the script.
+   *  Each script is associated with two sets of Unicode ranges to test
+   *  whether the font face supports the script, and which non-base
+   *  characters the script contains.
    *
    *  We use four-letter script tags from the OpenType specification,
    *  extended by `NONE', which indicates `no script'.
@@ -329,7 +333,9 @@ extern void*  _af_debug_hints;
   {
     AF_Script  script;
 
-    AF_Script_UniRange  script_uni_ranges; /* last must be { 0, 0 }        */
+    /* last element in the ranges must be { 0, 0 } */
+    AF_Script_UniRange  script_uni_ranges;
+    AF_Script_UniRange  script_uni_nonbase_ranges;
 
     FT_UInt32  standard_char1;             /* for default width and height */
     FT_UInt32  standard_char2;             /* ditto                        */
@@ -509,6 +515,7 @@ extern void*  _af_debug_hints;
           script_class,                   \
           script,                         \
           ranges,                         \
+          nonbase_ranges,                 \
           std_char1,                      \
           std_char2,                      \
           std_char3 )                     \
@@ -517,6 +524,7 @@ extern void*  _af_debug_hints;
   {                                       \
     script,                               \
     ranges,                               \
+    nonbase_ranges,                       \
     std_char1,                            \
     std_char2,                            \
     std_char3                             \
@@ -583,17 +591,19 @@ extern void*  _af_debug_hints;
           script_class,                                    \
           script_,                                         \
           ranges,                                          \
+          nonbase_ranges,                                  \
           std_char1,                                       \
           std_char2,                                       \
           std_char3 )                                      \
   FT_LOCAL_DEF( void )                                     \
   FT_Init_Class_ ## script_class( AF_ScriptClassRec*  ac ) \
   {                                                        \
-    ac->script            = script_;                       \
-    ac->script_uni_ranges = ranges;                        \
-    ac->standard_char1    = std_char1;                     \
-    ac->standard_char2    = std_char2;                     \
-    ac->standard_char3    = std_char3;                     \
+    ac->script                    = script_;               \
+    ac->script_uni_ranges         = ranges;                \
+    ac->script_uni_nonbase_ranges = nonbase_ranges;        \
+    ac->standard_char1            = std_char1;             \
+    ac->standard_char2            = std_char2;             \
+    ac->standard_char3            = std_char3;             \
   }