X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/01111366c9b4ea40eee7f4b13ddfe6f6b9f886db..0133ee9316eb1a446970fd00c1b8ce2fece595e5:/src/gtk/font.cpp diff --git a/src/gtk/font.cpp b/src/gtk/font.cpp index 119b9cc83c..6a2d12c7af 100644 --- a/src/gtk/font.cpp +++ b/src/gtk/font.cpp @@ -2,7 +2,7 @@ // Name: font.cpp // Purpose: // Author: Robert Roebling -// Id: $id$ +// Id: $Id$ // Copyright: (c) 1998 Robert Roebling, Julian Smart and Markus Holzem // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// @@ -102,6 +102,9 @@ wxFont::wxFont(int PointSize, int FontIdOrFamily, int Style, int Weight, { m_refData = new wxFontRefData(); + if (FontIdOrFamily == wxDEFAULT) FontIdOrFamily = wxSWISS; + M_FONTDATA->m_family = FontIdOrFamily; + if ((M_FONTDATA->m_faceName = (Face) ? copystring(Face) : (char*)NULL) ) { M_FONTDATA->m_fontId = wxTheFontNameDirectory->FindOrCreateFontId( Face, FontIdOrFamily ); @@ -112,11 +115,12 @@ wxFont::wxFont(int PointSize, int FontIdOrFamily, int Style, int Weight, M_FONTDATA->m_fontId = FontIdOrFamily; M_FONTDATA->m_family = wxTheFontNameDirectory->GetFamily( FontIdOrFamily ); } - if (Style == wxDEFAULT) Style = wxSWISS; + + if (Style == wxDEFAULT) Style = wxNORMAL; M_FONTDATA->m_style = Style; if (Weight == wxDEFAULT) Weight = wxNORMAL; M_FONTDATA->m_weight = Weight; - if (PointSize == wxDEFAULT) PointSize = 10; + if (PointSize == wxDEFAULT) PointSize = 12; M_FONTDATA->m_pointSize = PointSize; M_FONTDATA->m_underlined = Underlined; @@ -361,8 +365,27 @@ GdkFont *wxFont::GetInternalFont(float scale) const } else { - font = wxLoadQueryNearestFont( point_scale, M_FONTDATA->m_fontId, M_FONTDATA->m_style, - M_FONTDATA->m_weight, M_FONTDATA->m_underlined ); +/* + if (int_scale == 100) printf( "int_scale.\n" ); + if (M_FONTDATA->m_style == wxSWISS) printf( "swiss.\n" ); + if (M_FONTDATA->m_pointSize == 12) printf( "12.\n" ); + if (M_FONTDATA->m_weight == wxNORMAL) printf( "normal.\n" ); + if (M_FONTDATA->m_underlined == FALSE) printf( "false.\n" ); +*/ + if ((int_scale == 100) && + (M_FONTDATA->m_family == wxSWISS) && + (M_FONTDATA->m_style == wxNORMAL) && + (M_FONTDATA->m_pointSize == 12) && + (M_FONTDATA->m_weight == wxNORMAL) && + (M_FONTDATA->m_underlined == FALSE)) + { + font = gdk_font_load( "-adobe-helvetica-medium-r-normal--*-120-*-*-*-*-*-*" ); + } + else + { + font = wxLoadQueryNearestFont( point_scale, M_FONTDATA->m_fontId, M_FONTDATA->m_style, + M_FONTDATA->m_weight, M_FONTDATA->m_underlined ); + } M_FONTDATA->m_scaled_xfonts.Append( int_scale, (wxObject*)font ); } if (!font) @@ -741,7 +764,7 @@ public: inline int GetFamily(void) {return family;} inline int GetId(void) {return id;} inline bool IsRoman(void) {return isroman;} -#if WXDEBUG +#if defined(__WXDEBUG__) void Dump(ostream& str); #endif @@ -772,7 +795,7 @@ wxFontNameItem::~wxFontNameItem(void) name = (char *) NULL; } -#if WXDEBUG +#if defined(__WXDEBUG__) void wxFontNameItem::Dump(ostream& str) { str << "wxFontNameItem(" << name << ")";