X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8907154c1a8a6882c6797d1f16393ddfb23e7f3a..9c8cfcb9c56798ebd29184e40227451a194c0c49:/src/unix/fontutil.cpp diff --git a/src/unix/fontutil.cpp b/src/unix/fontutil.cpp index 022d8e1d4e..2d04279540 100644 --- a/src/unix/fontutil.cpp +++ b/src/unix/fontutil.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: unix/fontutil.cpp +// Name: src/unix/fontutil.cpp // Purpose: Font helper functions for X11 (GDK/X) // Author: Vadim Zeitlin // Modified by: @@ -27,12 +27,13 @@ #ifndef WX_PRECOMP #include "wx/font.h" // wxFont enums #include "wx/encinfo.h" + #include "wx/hash.h" + #include "wx/utils.h" // for wxGetDisplay() #endif // PCH #include "wx/fontutil.h" #include "wx/fontmap.h" #include "wx/tokenzr.h" -#include "wx/hash.h" #include "wx/module.h" #if wxUSE_PANGO @@ -122,7 +123,7 @@ wxFontWeight wxNativeFontInfo::GetWeight() const bool wxNativeFontInfo::GetUnderlined() const { - return FALSE; + return false; } wxString wxNativeFontInfo::GetFaceName() const @@ -254,9 +255,9 @@ void wxNativeFontInfo::SetUnderlined(bool WXUNUSED(underlined)) wxFAIL_MSG( _T("not implemented") ); } -void wxNativeFontInfo::SetFaceName(wxString facename) +void wxNativeFontInfo::SetFaceName(const wxString& facename) { - pango_font_description_set_family( description, wxGTK_CONV(facename) ); + pango_font_description_set_family(description, wxGTK_CONV_SYS(facename)); } void wxNativeFontInfo::SetFamily(wxFontFamily WXUNUSED(family)) @@ -276,9 +277,9 @@ bool wxNativeFontInfo::FromString(const wxString& s) if (description) pango_font_description_free( description ); - description = pango_font_description_from_string( wxGTK_CONV( s ) ); + description = pango_font_description_from_string( wxGTK_CONV_SYS( s ) ); - return TRUE; + return true; } wxString wxNativeFontInfo::ToString() const @@ -304,9 +305,9 @@ wxString wxNativeFontInfo::ToUserString() const // wxNativeEncodingInfo // ---------------------------------------------------------------------------- -bool wxNativeEncodingInfo::FromString(const wxString& s) +bool wxNativeEncodingInfo::FromString(const wxString& WXUNUSED(s)) { - return FALSE; + return false; } wxString wxNativeEncodingInfo::ToString() const @@ -314,24 +315,19 @@ wxString wxNativeEncodingInfo::ToString() const return wxEmptyString; } -bool wxTestFontEncoding(const wxNativeEncodingInfo& info) +bool wxTestFontEncoding(const wxNativeEncodingInfo& WXUNUSED(info)) { - return TRUE; + return true; } bool wxGetNativeFontEncoding(wxFontEncoding encoding, wxNativeEncodingInfo *info) { - // we *must* return true for default encoding as otherwise wxFontMapper - // considers that we can't load any font and aborts with wxLogFatalError! - if ( encoding == wxFONTENCODING_SYSTEM ) - { - info->facename.clear(); - info->encoding = wxFONTENCODING_SYSTEM; - } + // all encodings are available in GTK+ 2 because we translate text in any + // encoding to UTF-8 internally anyhow + info->facename.clear(); + info->encoding = encoding; - // pretend that we support everything, it's better than to always return - // false as the old code did return true; } @@ -348,7 +344,6 @@ bool wxGetNativeFontEncoding(wxFontEncoding encoding, #pragma message enable nosimpint #endif - #include "wx/utils.h" // for wxGetDisplay() #elif defined(__WXGTK__) // we have to declare struct tm to avoid problems with first forward // declaring it in C code (glib.h included from gdk.h does it) and then @@ -431,28 +426,28 @@ bool wxNativeEncodingInfo::FromString(const wxString& s) wxString encid = tokenizer.GetNextToken(); long enc; if ( !encid.ToLong(&enc) ) - return FALSE; + return false; encoding = (wxFontEncoding)enc; xregistry = tokenizer.GetNextToken(); if ( !xregistry ) - return FALSE; + return false; xencoding = tokenizer.GetNextToken(); if ( !xencoding ) - return FALSE; + return false; // ok even if empty facename = tokenizer.GetNextToken(); - return TRUE; + return true; } wxString wxNativeEncodingInfo::ToString() const { wxString s; s << (long)encoding << _T(';') << xregistry << _T(';') << xencoding; - if ( !!facename ) + if ( !facename.empty() ) { s << _T(';') << facename; } @@ -466,7 +461,7 @@ wxString wxNativeEncodingInfo::ToString() const void wxNativeFontInfo::Init() { - m_isDefault = TRUE; + m_isDefault = true; } bool wxNativeFontInfo::FromString(const wxString& s) @@ -476,13 +471,13 @@ bool wxNativeFontInfo::FromString(const wxString& s) // check the version wxString token = tokenizer.GetNextToken(); if ( token != _T('0') ) - return FALSE; + return false; xFontName = tokenizer.GetNextToken(); // this should be the end if ( tokenizer.HasMoreTokens() ) - return FALSE; + return false; return FromXFontName(xFontName); } @@ -512,13 +507,13 @@ bool wxNativeFontInfo::HasElements() const wxString wxNativeFontInfo::GetXFontComponent(wxXLFDField field) const { - wxCHECK_MSG( field < wxXLFD_MAX, _T(""), _T("invalid XLFD field") ); + wxCHECK_MSG( field < wxXLFD_MAX, wxEmptyString, _T("invalid XLFD field") ); if ( !HasElements() ) { // const_cast if ( !((wxNativeFontInfo *)this)->FromXFontName(xFontName) ) - return _T(""); + return wxEmptyString; } return fontElements[field]; @@ -531,7 +526,7 @@ bool wxNativeFontInfo::FromXFontName(const wxString& fontname) // skip the leading, usually empty field (font name registry) if ( !tokenizer.HasMoreTokens() ) - return FALSE; + return false; (void)tokenizer.GetNextToken(); @@ -540,14 +535,14 @@ bool wxNativeFontInfo::FromXFontName(const wxString& fontname) if ( !tokenizer.HasMoreTokens() ) { // not enough elements in the XLFD - or maybe an alias - return FALSE; + return false; } wxString field = tokenizer.GetNextToken(); if ( !field.empty() && field != _T('*') ) { // we're really initialized now - m_isDefault = FALSE; + m_isDefault = false; } fontElements[n] = field; @@ -555,9 +550,9 @@ bool wxNativeFontInfo::FromXFontName(const wxString& fontname) // this should be all if ( tokenizer.HasMoreTokens() ) - return FALSE; + return false; - return TRUE; + return true; } wxString wxNativeFontInfo::GetXFontName() const @@ -615,7 +610,7 @@ void wxNativeFontInfo::SetXFontName(const wxString& xFontName_) xFontName = xFontName_; - m_isDefault = FALSE; + m_isDefault = false; } int wxNativeFontInfo::GetPointSize() const @@ -668,7 +663,7 @@ wxFontWeight wxNativeFontInfo::GetWeight() const bool wxNativeFontInfo::GetUnderlined() const { // X fonts are never underlined - return FALSE; + return false; } wxString wxNativeFontInfo::GetFaceName() const @@ -753,12 +748,12 @@ void wxNativeFontInfo::SetUnderlined(bool WXUNUSED(underlined)) // can't do this under X } -void wxNativeFontInfo::SetFaceName(wxString facename) +void wxNativeFontInfo::SetFaceName(const wxString& facename) { SetXFontComponent(wxXLFD_FAMILY, facename); } -void wxNativeFontInfo::SetFamily(wxFontFamily family) +void wxNativeFontInfo::SetFamily(wxFontFamily WXUNUSED(family)) { // wxFontFamily -> X foundry, anyone? wxFAIL_MSG( _T("not implemented") ); @@ -783,7 +778,7 @@ void wxNativeFontInfo::SetEncoding(wxFontEncoding encoding) bool wxGetNativeFontEncoding(wxFontEncoding encoding, wxNativeEncodingInfo *info) { - wxCHECK_MSG( info, FALSE, _T("bad pointer in wxGetNativeFontEncoding") ); + wxCHECK_MSG( info, false, _T("bad pointer in wxGetNativeFontEncoding") ); if ( encoding == wxFONTENCODING_DEFAULT ) { @@ -860,12 +855,12 @@ bool wxGetNativeFontEncoding(wxFontEncoding encoding, default: // don't know how to translate this encoding into X fontspec - return FALSE; + return false; } info->encoding = encoding; - return TRUE; + return true; } bool wxTestFontEncoding(const wxNativeEncodingInfo& info) @@ -929,7 +924,7 @@ wxNativeFont wxLoadQueryNearestFont(int pointSize, wxNativeFont font = 0; // if we already have the X font name, try to use it - if( xFontName && !xFontName->IsEmpty() ) + if( xFontName && !xFontName->empty() ) { // // Make sure point size is correct for scale factor. @@ -1042,7 +1037,7 @@ wxNativeFont wxLoadQueryNearestFont(int pointSize, if ( !font ) { font = wxLoadQueryFont(-1, wxDEFAULT, wxNORMAL, wxNORMAL, - FALSE, wxEmptyString, + false, wxEmptyString, info.xregistry, info.xencoding, xFontName); @@ -1055,7 +1050,7 @@ wxNativeFont wxLoadQueryNearestFont(int pointSize, font = wxLoadQueryFont(-1, wxDEFAULT, wxNORMAL, wxNORMAL, - FALSE, wxEmptyString, + false, wxEmptyString, _T("*"), _T("*"), xFontName); } @@ -1071,20 +1066,20 @@ wxNativeFont wxLoadQueryNearestFont(int pointSize, // private functions // ---------------------------------------------------------------------------- -// returns TRUE if there are any fonts matching this font spec +// returns true if there are any fonts matching this font spec static bool wxTestFontSpec(const wxString& fontspec) { // some X servers will fail to load this font because there are too many // matches so we must test explicitly for this if ( fontspec == _T("-*-*-*-*-*-*-*-*-*-*-*-*-*-*") ) { - return TRUE; + return true; } wxNativeFont test = (wxNativeFont) g_fontHash->Get( fontspec ); if (test) { - return TRUE; + return true; } test = wxLoadFont(fontspec); @@ -1094,11 +1089,11 @@ static bool wxTestFontSpec(const wxString& fontspec) { wxFreeFont(test); - return TRUE; + return true; } else { - return FALSE; + return false; } } @@ -1195,7 +1190,7 @@ static wxNativeFont wxLoadQueryFont(int pointSize, #else wxString fontSpec; - if (!facename.IsEmpty()) + if (!facename.empty()) { fontSpec.Printf(wxT("-*-%s-*-*-normal-*-*-*-*-*-*-*-*-*"), facename.c_str()); @@ -1393,7 +1388,7 @@ bool wxFontModule::OnInit() { g_fontHash = new wxHashTable( wxKEY_STRING ); - return TRUE; + return true; } void wxFontModule::OnExit() @@ -1404,4 +1399,3 @@ void wxFontModule::OnExit() } #endif // GTK 2.0/1.x -