CoreText font enumeration support for iOS

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71765 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Stefan Csomor
2012-06-14 21:46:34 +00:00
parent 51b0f3719b
commit 8ffac5b07b
2 changed files with 14 additions and 1 deletions

View File

@@ -31,6 +31,10 @@
// wxFontEnumerator
// ----------------------------------------------------------------------------
#if wxOSX_USE_IPHONE
extern CFArrayRef CopyAvailableFontFamilyNames();
#endif
bool wxFontEnumerator::EnumerateFacenames(wxFontEncoding encoding,
bool fixedWidthOnly)
{
@@ -41,7 +45,8 @@ bool wxFontEnumerator::EnumerateFacenames(wxFontEncoding encoding,
#if wxOSX_USE_CORE_TEXT
{
CFArrayRef cfFontFamilies = nil;
#if wxOSX_USE_COCOA_OR_CARBON
#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6)
if ( UMAGetSystemVersion() >= 0x1060 )
cfFontFamilies = CTFontManagerCopyAvailableFontFamilyNames();
@@ -89,6 +94,9 @@ bool wxFontEnumerator::EnumerateFacenames(wxFontEncoding encoding,
cfFontFamilies = atsfontnames;
#endif
}
#elif wxOSX_USE_IPHONE
cfFontFamilies = CopyAvailableFontFamilyNames();
#endif
CFIndex count = CFArrayGetCount(cfFontFamilies);
for(CFIndex i = 0; i < count; i++)

View File

@@ -118,6 +118,11 @@ extern UIFont* CreateUIFont( const wxFont& font )
return [UIFont fontWithName:wxCFStringRef(font.GetFaceName() ).AsNSString() size:font.GetPointSize()];
}
CFArrayRef CopyAvailableFontFamilyNames()
{
return (CFArrayRef) [[UIFont familyNames] retain];
}
extern void DrawTextInContext( CGContextRef context, CGPoint where, UIFont *font, NSString* text )
{
bool contextChanged = ( UIGraphicsGetCurrentContext() != context );