From 7913d200c84c4d053e7304fc78092998d430fb28 Mon Sep 17 00:00:00 2001 From: Paul Cornett Date: Wed, 12 Nov 2014 07:43:06 +0000 Subject: [PATCH] fix creating wxFont with non-ascii name, closes #16671 git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78141 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/gtk/fontpicker.h | 4 +--- src/gtk/control.cpp | 6 ++++-- src/gtk/fontpicker.cpp | 4 ++++ 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/include/wx/gtk/fontpicker.h b/include/wx/gtk/fontpicker.h index 25928d19c0..cbbd188e58 100644 --- a/include/wx/gtk/fontpicker.h +++ b/include/wx/gtk/fontpicker.h @@ -58,9 +58,7 @@ protected: public: // used by the GTK callback only - - void SetNativeFontInfo(const char *gtkdescription) - { m_selectedFont.SetNativeFontInfo(wxString::FromAscii(gtkdescription)); } + void SetNativeFontInfo(const char* gtkdescription); private: // Common part of both ctors. diff --git a/src/gtk/control.cpp b/src/gtk/control.cpp index 30409cd133..3352965683 100644 --- a/src/gtk/control.cpp +++ b/src/gtk/control.cpp @@ -301,8 +301,10 @@ wxControl::GetDefaultAttributesFromGTKWidget(GtkWidget* widget, if (!font_name) attr.font = wxSystemSettings::GetFont( wxSYS_DEFAULT_GUI_FONT ); else - attr.font = wxFont(wxString::FromAscii(font_name)); - g_free (font_name); + { + attr.font = wxFont(wxString::FromUTF8(font_name)); + g_free(font_name); + } } if (tlw) diff --git a/src/gtk/fontpicker.cpp b/src/gtk/fontpicker.cpp index 49e0710cff..a17216e73a 100644 --- a/src/gtk/fontpicker.cpp +++ b/src/gtk/fontpicker.cpp @@ -106,4 +106,8 @@ void wxFontButton::UpdateFont() gtk_font_button_set_font_name(GTK_FONT_BUTTON(m_widget), wxGTK_CONV(fontname)); } +void wxFontButton::SetNativeFontInfo(const char* gtkdescription) +{ + m_selectedFont.SetNativeFontInfo(wxString::FromUTF8(gtkdescription)); +} #endif // wxUSE_FONTPICKERCTRL