From cfdf161246f6bec49a4dad4e8ef20eb63c043297 Mon Sep 17 00:00:00 2001 From: Fred Kiefer Date: Mon, 30 Aug 2004 15:27:14 +0000 Subject: [PATCH] Support for UTF8 font family names for XFT. git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@19939 72102866-910b-0410-8b05-ffd578937521 --- ChangeLog | 6 ++++++ Source/xlib/GSXftFontInfo.m | 12 ++++++------ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index f614ffc..f4ce503 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2004-08-30 Fred Kiefer + + * Source/xlib/GSXftFontInfo.m: Changed usage of CString for font + name and family into UTF8String for XFT. Patch by Yen-Ju Chen + . + 2004-08-24 Fred Kiefer * Source/win32/WIN32Server.m (-windowbounds:): Corrected variable diff --git a/Source/xlib/GSXftFontInfo.m b/Source/xlib/GSXftFontInfo.m index 15660c2..379667d 100644 --- a/Source/xlib/GSXftFontInfo.m +++ b/Source/xlib/GSXftFontInfo.m @@ -101,7 +101,7 @@ static NSArray *faFromFc(FcPattern *pat) name = [NSMutableString stringWithCapacity: 100]; style = [NSMutableString stringWithCapacity: 100]; - [name appendString: [NSString stringWithCString: family]]; + [name appendString: [NSString stringWithUTF8String: family]]; switch (weight) { @@ -190,7 +190,7 @@ static NSArray *faFromFc(FcPattern *pat) FcFont *aFont; NSString *name = [fontArray objectAtIndex: 0]; - familyString = [NSString stringWithCString: family]; + familyString = [NSString stringWithUTF8String: family]; if (!(familyArray = [fcxft_allFontFamilies objectForKey: familyString])) { familyArray = [[NSMutableArray alloc] init]; @@ -596,7 +596,7 @@ static NSArray *faFromFc(FcPattern *pat) if (FcPatternGetString(pattern, FC_FAMILY, 0, (FcChar8 **)&family) == FcResultMatch) { - ASSIGN(familyName, [NSString stringWithCString: (const char*)family]); + ASSIGN(familyName, [NSString stringWithUTF8String: (const char*)family]); } if (FcPatternGetInteger(pattern, FC_SPACING, 0, &fcspacing) == FcResultMatch) { @@ -680,7 +680,7 @@ static NSArray *faFromFc(FcPattern *pat) // Load Xft font and get font info structure. if ((xfontname == nil) || - (font_info = XftFontOpenXlfd(xdpy, defaultScreen, [xfontname cString])) == NULL) + (font_info = XftFontOpenXlfd(xdpy, defaultScreen, [xfontname UTF8String])) == NULL) { NSLog(@"Unable to open fixed font"); return NO; @@ -693,7 +693,7 @@ static NSArray *faFromFc(FcPattern *pat) if (result != XftResultTypeMismatch) { ASSIGN(familyName, - [NSString stringWithCString: (const char*)xftTypeString]); + [NSString stringWithUTF8String: (const char*)xftTypeString]); } result = XftPatternGetInteger(pattern, XFT_SPACING, 0, &xftTypeInt); if (result != XftResultTypeMismatch) @@ -742,7 +742,7 @@ static NSArray *faFromFc(FcPattern *pat) } XftPatternGetString(pattern, XFT_ENCODING, 0, &xftTypeString); - encodingScheme = [NSString stringWithCString: xftTypeString]; + encodingScheme = [NSString stringWithUTF8String: xftTypeString]; encoding = [encodingScheme componentsSeparatedByString: @"-"]; reg = [encoding objectAtIndex: 0]; if (reg != nil)