]> git.saurik.com Git - wxWidgets.git/commitdiff
added wxUSE_FONTENUM for wxFontEnumerator
authorVadim Zeitlin <vadim@wxwidgets.org>
Sat, 21 Jul 2007 02:20:00 +0000 (02:20 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Sat, 21 Jul 2007 02:20:00 +0000 (02:20 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47609 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

16 files changed:
configure
configure.in
include/wx/fontenum.h
include/wx/mac/setup0.h
include/wx/motif/setup0.h
include/wx/msw/setup0.h
include/wx/msw/wince/setup.h
include/wx/os2/setup0.h
include/wx/palmos/setup0.h
include/wx/setup_inc.h
setup.h.in
src/common/fontcmn.cpp
src/common/fontenumcmn.cpp
src/mac/carbon/fontenum.cpp
src/msw/fontenum.cpp
src/unix/fontenum.cpp

index e1bd12b4c40af7e7330e99cf38847dcddb57b12b..8757436fae7741faee35e4a8b10b778c2120e618 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,5 +1,5 @@
 #! /bin/sh
-# From configure.in Id: configure.in 47597 2007-07-20 18:27:35Z PC .
+# From configure.in Id: configure.in 47607 2007-07-21 01:42:58Z VZ .
 # Guess values for system-dependent variables and create Makefiles.
 # Generated by GNU Autoconf 2.61 for wxWidgets 2.9.0.
 #
@@ -1700,6 +1700,7 @@ Optional Features:
   --enable-ffile          use wxFFile class
   --enable-file           use wxFile class
   --enable-filesystem     use virtual file systems classes
+  --enable-fontenum       use wxFontEnumerator class
   --enable-fontmap        use font encodings conversion classes
   --enable-fs_archive     use virtual archive filesystems
   --enable-fs_inet        use virtual HTTP/FTP filesystems
@@ -7534,6 +7535,61 @@ fi
 echo "${ECHO_T}$result" >&6; }
 
 
+          enablestring=
+          defaultval=$wxUSE_ALL_FEATURES
+          if test -z "$defaultval"; then
+              if test x"$enablestring" = xdisable; then
+                  defaultval=yes
+              else
+                  defaultval=no
+              fi
+          fi
+
+          { echo "$as_me:$LINENO: checking for --${enablestring:-enable}-fontenum" >&5
+echo $ECHO_N "checking for --${enablestring:-enable}-fontenum... $ECHO_C" >&6; }
+          no_cache=0
+          # Check whether --enable-fontenum was given.
+if test "${enable_fontenum+set}" = set; then
+  enableval=$enable_fontenum;
+                          if test "$enableval" = yes; then
+                            wx_cv_use_fontenum='wxUSE_FONTENUM=yes'
+                          else
+                            wx_cv_use_fontenum='wxUSE_FONTENUM=no'
+                          fi
+
+else
+
+                          LINE=`grep "^wxUSE_FONTENUM=" ${wx_arg_cache_file}`
+                          if test "x$LINE" != x ; then
+                            eval "DEFAULT_$LINE"
+                          else
+                            no_cache=1
+                          fi
+
+                          wx_cv_use_fontenum='wxUSE_FONTENUM=${'DEFAULT_wxUSE_FONTENUM":-$defaultval}"
+
+fi
+
+
+          eval "$wx_cv_use_fontenum"
+          if test "$no_cache" != 1; then
+            echo $wx_cv_use_fontenum >> ${wx_arg_cache_file}.tmp
+          fi
+
+          if test x"$enablestring" = xdisable; then
+            if test $wxUSE_FONTENUM = yes; then
+              result=no
+            else
+              result=yes
+            fi
+          else
+            result=$wxUSE_FONTENUM
+          fi
+
+          { echo "$as_me:$LINENO: result: $result" >&5
+echo "${ECHO_T}$result" >&6; }
+
+
           enablestring=
           defaultval=$wxUSE_ALL_FEATURES
           if test -z "$defaultval"; then
index c7e3c028cb6b1e08306d8b55613b56e3d9b61fe0..27f84655c9f0499488f9a2a9482a9db0db21ad2d 100644 (file)
@@ -596,6 +596,7 @@ WX_ARG_FEATURE(exceptions,    [  --enable-exceptions     build exception-safe li
 WX_ARG_FEATURE(ffile,         [  --enable-ffile          use wxFFile class], wxUSE_FFILE)
 WX_ARG_FEATURE(file,          [  --enable-file           use wxFile class], wxUSE_FILE)
 WX_ARG_FEATURE(filesystem,    [  --enable-filesystem     use virtual file systems classes], wxUSE_FILESYSTEM)
+WX_ARG_FEATURE(fontenum,      [  --enable-fontenum       use wxFontEnumerator class], wxUSE_FONTENUM)
 WX_ARG_FEATURE(fontmap,       [  --enable-fontmap        use font encodings conversion classes], wxUSE_FONTMAP)
 WX_ARG_FEATURE(fs_archive,    [  --enable-fs_archive     use virtual archive filesystems], wxUSE_FS_ARCHIVE)
 WX_ARG_FEATURE(fs_inet,       [  --enable-fs_inet        use virtual HTTP/FTP filesystems], wxUSE_FS_INET)
index 0e4b525cd573ef573d0bfe5e414eda6b9e6fa857..29127061a8bcf78899e5c21cd9efac0143c494dd 100644 (file)
 #ifndef _WX_FONTENUM_H_
 #define _WX_FONTENUM_H_
 
+#include "wx/defs.h"
+
+#if wxUSE_FONTENUM
+
 #include "wx/fontenc.h"
 #include "wx/arrstr.h"
 
@@ -80,4 +84,6 @@ private:
     DECLARE_NO_COPY_CLASS(wxFontEnumerator)
 };
 
+#endif // wxUSE_FONTENUM
+
 #endif // _WX_FONTENUM_H_
index 5583f84ad0d834899a73947a6fef2a9050aa672d..a512c0062c3386f4fd24979d08572b0aaab827f8 100644 (file)
 // Joystick support class
 #define wxUSE_JOYSTICK            1
 
+// wxFontEnumerator class
+#define wxUSE_FONTENUM 1
+
 // wxFontMapper class
 #define wxUSE_FONTMAP 1
 
index a87494d58bb606518e95f6c7977a539fcefdb33d..4987201b9e6fd83424671874203de24a5920a816 100644 (file)
 // Joystick support class
 #define wxUSE_JOYSTICK            1
 
+// wxFontEnumerator class
+#define wxUSE_FONTENUM 1
+
 // wxFontMapper class
 #define wxUSE_FONTMAP 1
 
index 50ee7123775f2f1e2bf443e58916703d4ecd7d6c..05010371f9a9ab64c64e56ad2d625748fdc82a2a 100644 (file)
 // Joystick support class
 #define wxUSE_JOYSTICK            1
 
+// wxFontEnumerator class
+#define wxUSE_FONTENUM 1
+
 // wxFontMapper class
 #define wxUSE_FONTMAP 1
 
index 1b647c578cdc8c10c23013c8e415564b34d0ef41..b1b25990692b90a091d7a7b12b46c95400229081 100644 (file)
 // Joystick support class
 #define wxUSE_JOYSTICK            1
 
+// wxFontEnumerator class
+#define wxUSE_FONTENUM 1
+
 // wxFontMapper class
 #define wxUSE_FONTMAP 1
 
index b1d8003bca9a7fa8dc343dbe0831a4ef383fdaff..0bfc015f05a544e9a582c81bc7324afc75b6b7ac 100644 (file)
 // Joystick support class
 #define wxUSE_JOYSTICK            1
 
+// wxFontEnumerator class
+#define wxUSE_FONTENUM 1
+
 // wxFontMapper class
 #define wxUSE_FONTMAP 1
 
index e45042039d71249e63c222cbf692358436e9ab89..87bf32ac741915e52f2d1196f1353c6776ba634f 100644 (file)
 // Joystick support class
 #define wxUSE_JOYSTICK            1
 
+// wxFontEnumerator class
+#define wxUSE_FONTENUM 1
+
 // wxFontMapper class
 #define wxUSE_FONTMAP 1
 
index ae0eeac4923e3e155b59109fbf7978e9e9adacef..79e636098e02f56c5ddfd9f0a53b0ee80af8b1cb 100644 (file)
 // Joystick support class
 #define wxUSE_JOYSTICK            1
 
+// wxFontEnumerator class
+#define wxUSE_FONTENUM 1
+
 // wxFontMapper class
 #define wxUSE_FONTMAP 1
 
index 78c9c825d6a5ab5837964174d07418bb7a8cec49..9c7f54691fa0e65e30ee5e101bbd3b667c14b9bc 100644 (file)
 
 #define wxUSE_JOYSTICK            0
 
+#define wxUSE_FONTENUM 0
+
 #define wxUSE_FONTMAP 0
 
 #define wxUSE_MIMETYPE 0
index 4fcd211e5350148f8f2434b45e3ad8edab2c40ca..20b8c303d021882cfdb6a38c175ca258c527b3c3 100644 (file)
@@ -388,13 +388,17 @@ wxString wxFontBase::GetWeightString() const
     }
 }
 
-bool wxFontBase::SetFaceName(const wxString &facename)
+bool wxFontBase::SetFaceName(const wxStringfacename)
 {
+#if wxUSE_FONTENUM
     if (!wxFontEnumerator::IsValidFacename(facename))
     {
         UnRef();        // make Ok() return false
         return false;
     }
+#else // !wxUSE_FONTENUM
+    wxUnusedVar(facename);
+#endif // wxUSE_FONTENUM/!wxUSE_FONTENUM
 
     return true;
 }
@@ -405,8 +409,9 @@ bool wxFontBase::SetFaceName(const wxString &facename)
 // ----------------------------------------------------------------------------
 
 // Up to now, there are no native implementations of this function:
-void wxNativeFontInfo::SetFaceName(const wxArrayString &facenames)
+void wxNativeFontInfo::SetFaceName(const wxArrayStringfacenames)
 {
+#if wxUSE_FONTENUM
     for (size_t i=0; i < facenames.GetCount(); i++)
     {
         if (wxFontEnumerator::IsValidFacename(facenames[i]))
@@ -420,6 +425,9 @@ void wxNativeFontInfo::SetFaceName(const wxArrayString &facenames)
     wxString validfacename = wxFontEnumerator::GetFacenames().Item(0);
     wxLogTrace(wxT("font"), wxT("Falling back to '%s'"), validfacename.c_str());
     SetFaceName(validfacename);
+#else // !wxUSE_FONTENUM
+    SetFaceName(facenames[0]);
+#endif // wxUSE_FONTENUM/!wxUSE_FONTENUM
 }
 
 
@@ -744,9 +752,15 @@ bool wxNativeFontInfo::FromUserString(const wxString& s)
             // NB: the check on the facename is implemented in wxFontBase::SetFaceName
             //     and not in wxNativeFontInfo::SetFaceName thus we need to explicitely
             //     call here wxFontEnumerator::IsValidFacename
-            if (!wxFontEnumerator::IsValidFacename(face) ||
-                !SetFaceName(face))
+            if (
+#if wxUSE_FONTENUM
+                    !wxFontEnumerator::IsValidFacename(face) ||
+#endif // wxUSE_FONTENUM
+                    !SetFaceName(face) )
+            {
                 SetFaceName(wxNORMAL_FONT->GetFaceName());
+            }
+
             face.clear();
         }
     }
@@ -757,9 +771,14 @@ bool wxNativeFontInfo::FromUserString(const wxString& s)
         // NB: the check on the facename is implemented in wxFontBase::SetFaceName
         //     and not in wxNativeFontInfo::SetFaceName thus we need to explicitely
         //     call here wxFontEnumerator::IsValidFacename
-        if (!wxFontEnumerator::IsValidFacename(face) ||
-            !SetFaceName(face))
-            SetFaceName(wxNORMAL_FONT->GetFaceName());
+        if (
+#if wxUSE_FONTENUM
+                !wxFontEnumerator::IsValidFacename(face) ||
+#endif // wxUSE_FONTENUM
+                !SetFaceName(face) )
+            {
+                SetFaceName(wxNORMAL_FONT->GetFaceName());
+            }
     }
 
     // set point size to default value if size was not given
index c2ef4c882052887d13ca643067506fcdcb76d094..aaae1543c403f8b0a77e16b4336da6e702b9e61f 100644 (file)
@@ -24,6 +24,8 @@
     #pragma hdrstop
 #endif
 
+#if wxUSE_FONTENUM
+
 #include "wx/fontenum.h"
 
 // ============================================================================
@@ -129,3 +131,5 @@ bool wxFontEnumerator::EnumerateEncodingsUTF8(const wxString& facename)
     return true;
 }
 #endif // wxHAS_UTF8_FONTS
+
+#endif // wxUSE_FONTENUM
index 3cbe7bad1bdb43a50d403f013973e6fb6bf26e75..6db95ec8456ac00a14e31d06f36321ea8f7cbbbc 100644 (file)
@@ -12,7 +12,7 @@
 // For compilers that support precompilation, includes "wx.h".
 #include "wx/wxprec.h"
 
-#if wxUSE_FONTMAP
+#if wxUSE_FONTENUM
 
 #include "wx/fontenum.h"
 
@@ -37,20 +37,20 @@ bool wxFontEnumerator::EnumerateFacenames(wxFontEncoding encoding,
     //
     // From Apple's QA 1471 http://developer.apple.com/qa/qa2006/qa1471.html
     //
-    
+
     ATSFontFamilyIterator theFontFamilyIterator = NULL;
     ATSFontFamilyRef theATSFontFamilyRef = 0;
     OSStatus status = noErr;
-    
+
     wxArrayString fontFamilies ;
-    
+
     // Create the iterator
     status = ATSFontFamilyIteratorCreate(kATSFontContextLocal, nil,nil,
                                          kATSOptionFlagsUnRestrictedScope,
                                          &theFontFamilyIterator );
-    
+
     wxUint32 macEncoding = wxMacGetSystemEncFromFontEnc(encoding) ;
-    
+
     while (status == noErr)
     {
         // Get the next font in the iteration.
@@ -76,7 +76,7 @@ bool wxFontEnumerator::EnumerateFacenames(wxFontEncoding encoding,
                 if ( fontFamiliyEncoding != macEncoding )
                     continue ;
             }
-            
+
             // TODO: determine fixed widths ...
 
             CFStringRef theName = NULL;
@@ -94,13 +94,13 @@ bool wxFontEnumerator::EnumerateFacenames(wxFontEncoding encoding,
         }
     }
     ATSFontFamilyIteratorRelease(&theFontFamilyIterator);
-    
+
     for ( size_t i = 0 ; i < fontFamilies.Count() ; ++i )
     {
         if ( OnFacename( fontFamilies[i] ) == false )
             break ;
     }
-    
+
     return true;
 }
 
@@ -111,4 +111,4 @@ bool wxFontEnumerator::EnumerateEncodings(const wxString& family)
     return true;
 }
 
-#endif // wxUSE_FONTMAP
+#endif // wxUSE_FONTENUM
index 50fea7dc511c9aa7d75aec904df9f158714e271a..cf3623766b150495e9d988ed1399864dfc4d6793 100644 (file)
@@ -24,7 +24,7 @@
   #pragma hdrstop
 #endif
 
-#if wxUSE_FONTMAP
+#if wxUSE_FONTENUM
 
 #ifndef WX_PRECOMP
     #include "wx/gdicmn.h"
@@ -289,4 +289,4 @@ int CALLBACK wxFontEnumeratorProc(LPLOGFONT lplf, LPTEXTMETRIC lptm,
 }
 #endif
 
-#endif // wxUSE_FONTMAP
+#endif // wxUSE_FONTENUM
index e09f06170e4e7e073fd6d17fdd3a76fdeb4ba308..dc50c9b740091a1153f172abab94a8dff04363d3 100644 (file)
@@ -20,6 +20,8 @@
 // for compilers that support precompilation, includes "wx.h".
 #include "wx/wxprec.h"
 
+#if wxUSE_FONTENUM
+
 #include "wx/fontenum.h"
 
 #ifndef WX_PRECOMP
@@ -360,3 +362,5 @@ bool wxFontEnumerator::EnumerateEncodings(const wxString& family)
 }
 
 #endif // !wxUSE_PANGO
+
+#endif // wxUSE_FONTENUM