Commit 74b28088a008a3314b39dbcfbd9dad2797d640f3

henry 2003-10-19T21:38:42

Moved charmap list function out of FTCharmap into FTFont

diff --git a/src/FTCharmap.cpp b/src/FTCharmap.cpp
index d88a19e..31f6aa3 100644
--- a/src/FTCharmap.cpp
+++ b/src/FTCharmap.cpp
@@ -3,8 +3,7 @@
 
 
 FTCharmap::FTCharmap( FTFace* face)
-:   fontEncodingList(0),
-    ftFace( *(face->Face())),
+:   ftFace( *(face->Face())),
     err(0)
 {
     if( !ftFace->charmap)
@@ -45,27 +44,6 @@ bool FTCharmap::CharMap( FT_Encoding encoding)
 }
 
 
-unsigned int FTCharmap::CharMapCount()
-{
-    return ftFace->num_charmaps;
-}
-
-
-FT_Encoding* FTCharmap::CharMapList()
-{
-    if( 0 == fontEncodingList)
-    {
-        fontEncodingList = new FT_Encoding[CharMapCount()];
-        for( size_t encodingIndex = 0; encodingIndex < CharMapCount(); ++encodingIndex)
-        {
-            fontEncodingList[encodingIndex] = ftFace->charmaps[encodingIndex]->encoding;
-        }
-    }
-    
-    return fontEncodingList;
-}
-
-
 unsigned int FTCharmap::CharIndex( unsigned int characterCode )
 {
     return charMap.find( characterCode);
diff --git a/src/FTFace.cpp b/src/FTFace.cpp
index d018144..0385e23 100755
--- a/src/FTFace.cpp
+++ b/src/FTFace.cpp
@@ -5,6 +5,7 @@
 
 FTFace::FTFace( const char* filename)
 :   numGlyphs(0),
+    fontEncodingList(0),
     err(0)
 {
     const FT_Long DEFAULT_FACE_INDEX = 0;
@@ -91,6 +92,27 @@ const FTSize& FTFace::Size( const unsigned int size, const unsigned int res)
 }
 
 
+unsigned int FTFace::CharMapCount()
+{
+    return (*ftFace)->num_charmaps;
+}
+
+
+FT_Encoding* FTFace::CharMapList()
+{
+    if( 0 == fontEncodingList)
+    {
+        fontEncodingList = new FT_Encoding[CharMapCount()];
+        for( size_t encodingIndex = 0; encodingIndex < CharMapCount(); ++encodingIndex)
+        {
+            fontEncodingList[encodingIndex] = (*ftFace)->charmaps[encodingIndex]->encoding;
+        }
+    }
+    
+    return fontEncodingList;
+}
+
+
 unsigned int FTFace::UnitsPerEM() const
 {
     return (*ftFace)->units_per_EM;