X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ffecfa5aeb540b54914739dbb8603edbbd4c00a0..6012f61212b67d510e4a6393272e867a4ceb58c1:/include/wx/fontutil.h diff --git a/include/wx/fontutil.h b/include/wx/fontutil.h index 3e485e569a..e07b2eafe8 100644 --- a/include/wx/fontutil.h +++ b/include/wx/fontutil.h @@ -16,20 +16,17 @@ #ifndef _WX_FONTUTIL_H_ #define _WX_FONTUTIL_H_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) - #pragma interface "fontutil.h" -#endif - // ---------------------------------------------------------------------------- // headers // ---------------------------------------------------------------------------- #include "wx/font.h" // for wxFont and wxFontEncoding -#if defined(__WXMSW__) && !defined(__PALMOS__) +#if defined(__WXMSW__) #include "wx/msw/wrapwin.h" #endif +class WXDLLIMPEXP_BASE wxArrayString; struct WXDLLEXPORT wxNativeEncodingInfo; #if defined(_WX_X_FONTLIKE) @@ -68,11 +65,9 @@ enum wxXLFDField // functions, the user code can only get the objects of this type from // somewhere and pass it somewhere else (possibly save them somewhere using // ToString() and restore them using FromString()) -// -// NB: it is a POD currently for max efficiency but if it continues to grow -// further it might make sense to make it a real class with virtual methods -struct WXDLLEXPORT wxNativeFontInfo +class WXDLLEXPORT wxNativeFontInfo { +public: #if wxUSE_PANGO PangoFontDescription *description; #elif defined(_WX_X_FONTLIKE) @@ -109,7 +104,7 @@ public: // set the XFLD void SetXFontName(const wxString& xFontName); -#elif defined(__WXMSW__) && !defined(__PALMOS__) +#elif defined(__WXMSW__) LOGFONT lf; #elif defined(__WXPM__) // OS/2 native structures that define a font @@ -166,7 +161,7 @@ public: if ( font.IsUsingSizeInPixels() ) SetPixelSize(font.GetPixelSize()); else - SetPointSize(font.GetPointSize()); + SetPointSize(font.GetPointSize()); #else SetPointSize(font.GetPointSize()); #endif @@ -199,10 +194,17 @@ public: void SetStyle(wxFontStyle style); void SetWeight(wxFontWeight weight); void SetUnderlined(bool underlined); - void SetFaceName(wxString facename); + bool SetFaceName(const wxString& facename); void SetFamily(wxFontFamily family); void SetEncoding(wxFontEncoding encoding); + // sets the first facename in the given array which is found + // to be valid. If no valid facename is given, sets the + // first valid facename returned by wxFontEnumerator::GetFacenames(). + // Does not return a bool since it cannot fail. + void SetFaceName(const wxArrayString &facenames); + + // it is important to be able to serialize wxNativeFontInfo objects to be // able to store them (in config file, for example) bool FromString(const wxString& s);