From 37bebc11125cfa163745d2b3d97f19c420884f55 Mon Sep 17 00:00:00 2001 From: Robin Dunn Date: Fri, 19 Nov 1999 23:32:07 +0000 Subject: [PATCH] Added encoding parameter to wxFontList::FindOrCreateFont git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4635 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- docs/latex/wx/fontlist.tex | 2 +- include/wx/gdicmn.h | 4 +++- src/common/gdicmn.cpp | 7 ++++--- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/docs/latex/wx/fontlist.tex b/docs/latex/wx/fontlist.tex index 2ee6f4bbe5..dbe63b0580 100644 --- a/docs/latex/wx/fontlist.tex +++ b/docs/latex/wx/fontlist.tex @@ -38,7 +38,7 @@ Used by wxWindows to add a font to the list, called in the font constructor. \membersection{wxFontList::FindOrCreateFont}\label{findorcreatefont} \func{wxFont *}{FindOrCreateFont}{\param{int}{ point\_size}, \param{int}{ family}, \param{int}{ style}, \param{int}{ weight}, \param{bool}{ underline = FALSE}, - \param{const wxString\& }{facename = NULL}} + \param{const wxString\& }{facename = NULL}, \param{wxFontEncoding }{encoding = wxFONTENCODING_DEFAULT}{}} Finds a font of the given specification, or creates one and adds it to the list. See the \helpref{wxFont constructor}{wxfontconstr} for details of the arguments. diff --git a/include/wx/gdicmn.h b/include/wx/gdicmn.h index 0fcea7fdcc..dd913a0c95 100644 --- a/include/wx/gdicmn.h +++ b/include/wx/gdicmn.h @@ -26,6 +26,7 @@ #include "wx/string.h" #include "wx/setup.h" #include "wx/colour.h" +#include "wx/font.h" // --------------------------------------------------------------------------- // forward declarations @@ -347,7 +348,8 @@ public: void RemoveFont(wxFont *font); wxFont *FindOrCreateFont(int pointSize, int family, int style, int weight, bool underline = FALSE, - const wxString& face = wxEmptyString); + const wxString& face = wxEmptyString, + wxFontEncoding encoding = wxFONTENCODING_DEFAULT); }; class WXDLLEXPORT wxColourDatabase : public wxList diff --git a/src/common/gdicmn.cpp b/src/common/gdicmn.cpp index 244d71ae15..93f757164f 100644 --- a/src/common/gdicmn.cpp +++ b/src/common/gdicmn.cpp @@ -591,7 +591,7 @@ void wxFontList::RemoveFont (wxFont * font) } wxFont *wxFontList:: - FindOrCreateFont (int PointSize, int FamilyOrFontId, int Style, int Weight, bool underline, const wxString& Face) + FindOrCreateFont (int PointSize, int FamilyOrFontId, int Style, int Weight, bool underline, const wxString& Face, wxFontEncoding encoding) { for (wxNode * node = First (); node; node = node->Next ()) { @@ -610,11 +610,12 @@ wxFont *wxFontList:: #else each_font->GetFamily() == FamilyOrFontId && #endif - ((each_font->GetFaceName() == wxT("")) || each_font->GetFaceName() == Face)) + ((each_font->GetFaceName() == wxT("")) || each_font->GetFaceName() == Face) && + (encoding == wxFONTENCODING_DEFAULT || each_font->GetEncoding() == encoding)) //#endif return each_font; } - wxFont *font = new wxFont (PointSize, FamilyOrFontId, Style, Weight, underline, Face); + wxFont *font = new wxFont (PointSize, FamilyOrFontId, Style, Weight, underline, Face, encoding); font->SetVisible(TRUE); return font; } -- 2.47.2