// init fields
m_faceName = wxGTK_CONV_BACK( pango_font_description_get_family( desc ) );
+ // Pango sometimes needs to have a size
+ int pango_size = pango_font_description_get_size( desc );
+ if (pango_size == 0)
+ pango_font_description_set_size( desc, 12 * PANGO_SCALE);
+
m_pointSize = pango_font_description_get_size( desc ) / PANGO_SCALE;
switch (pango_font_description_get_style( desc ))
}
#ifndef __WXGTK20__
+
void wxFontRefData::ReInit(const wxString& fontname)
{
+ // calling InitFromNative() resets m_underlined flag as X11 fonts are never
+ // underlined, but we don't want to lose its old value here so save it ...
+ bool underlined = m_underlined;
+
m_nativeFontInfo.SetXFontName(fontname);
InitFromNative();
+
+ // ... and restore it now
+ m_underlined = underlined;
}
-#endif
+
+#endif // !__WXGTK20__
void wxFontRefData::ClearGdkFonts()
{
return M_FONTDATA->m_noAA;
}
-wxNativeFontInfo *wxFont::GetNativeFontInfo() const
+const wxNativeFontInfo *wxFont::GetNativeFontInfo() const
{
wxCHECK_MSG( Ok(), (wxNativeFontInfo *)NULL, wxT("invalid font") );
GetInternalFont();
#endif
- return new wxNativeFontInfo(M_FONTDATA->m_nativeFontInfo);
+ return &(M_FONTDATA->m_nativeFontInfo);
}
bool wxFont::IsFixedWidth() const