Added encoding parameter to wxFontList::FindOrCreateFont

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4635 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robin Dunn
1999-11-19 23:32:07 +00:00
parent f38374d0d7
commit 37bebc1112
3 changed files with 8 additions and 5 deletions

View File

@@ -38,7 +38,7 @@ Used by wxWindows to add a font to the list, called in the font constructor.
\membersection{wxFontList::FindOrCreateFont}\label{findorcreatefont} \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}, \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 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. details of the arguments.

View File

@@ -26,6 +26,7 @@
#include "wx/string.h" #include "wx/string.h"
#include "wx/setup.h" #include "wx/setup.h"
#include "wx/colour.h" #include "wx/colour.h"
#include "wx/font.h"
// --------------------------------------------------------------------------- // ---------------------------------------------------------------------------
// forward declarations // forward declarations
@@ -347,7 +348,8 @@ public:
void RemoveFont(wxFont *font); void RemoveFont(wxFont *font);
wxFont *FindOrCreateFont(int pointSize, int family, int style, int weight, wxFont *FindOrCreateFont(int pointSize, int family, int style, int weight,
bool underline = FALSE, bool underline = FALSE,
const wxString& face = wxEmptyString); const wxString& face = wxEmptyString,
wxFontEncoding encoding = wxFONTENCODING_DEFAULT);
}; };
class WXDLLEXPORT wxColourDatabase : public wxList class WXDLLEXPORT wxColourDatabase : public wxList

View File

@@ -591,7 +591,7 @@ void wxFontList::RemoveFont (wxFont * font)
} }
wxFont *wxFontList:: 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 ()) for (wxNode * node = First (); node; node = node->Next ())
{ {
@@ -610,11 +610,12 @@ wxFont *wxFontList::
#else #else
each_font->GetFamily() == FamilyOrFontId && each_font->GetFamily() == FamilyOrFontId &&
#endif #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 //#endif
return each_font; 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); font->SetVisible(TRUE);
return font; return font;
} }