X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/51abe921b849be69f02c174365c9a7bc8b46bd08..9cf99fc093f9c45b6b5d8d8b357699d826c9916a:/include/wx/fontutil.h diff --git a/include/wx/fontutil.h b/include/wx/fontutil.h index de51565a22..7bb3859bcb 100644 --- a/include/wx/fontutil.h +++ b/include/wx/fontutil.h @@ -26,46 +26,42 @@ #include "wx/font.h" // for wxFont and wxFontEncoding -// for our purposes here, GDK and X are identical -#if defined(__WXGTK__) || defined(__X__) - #define _WX_X_FONTLIKE +#if defined(__WXMSW__) +#include +#include "wx/msw/winundef.h" #endif // ---------------------------------------------------------------------------- // types // ---------------------------------------------------------------------------- -// This private structure specifies all the parameters needed to create a font -// with the given encoding on this platform. -// -// Under X, it contains the last 2 elements of the font specifications -// (registry and encoding). -// -// Under Windows, it contains a number which is one of predefined CHARSET_XXX -// values. -// -// Under all platforms it also contains a facename string which should be -// used, if not empty, to create fonts in this encoding (this is the only way -// to create a font of non-standard encoding (like KOI8) under Windows - the -// facename specifies the encoding then) - -struct WXDLLEXPORT wxNativeEncodingInfo +// wxNativeFontInfo is platform-specific font representation: this struct +// should be considered as opaque font description only used by the native +// 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()) +struct WXDLLEXPORT wxNativeFontInfo { - wxString facename; // may be empty meaning "any" - -#if defined(__WXMSW__) || defined(__WXPM__) || defined(__WXMAC__) - wxNativeEncodingInfo() { charset = 0; /* ANSI_CHARSET */ } - - int charset; -#elif defined(_WX_X_FONTLIKE) - wxString xregistry, - xencoding; -#else - #error "Unsupported toolkit" -#endif - - // this struct is saved in config by wxFontMapper, so it should know to - // serialise itself (implemented in platform-specific code) +#if defined(__WXGTK__) + wxString xFontName; +#elif defined(__WXMSW__) + LOGFONT lf; +#else // other platforms + // + // This is a generic implementation that should work on all ports + // without specific support by the port. + // + int pointSize; + int family; + int style; + int weight; + bool underlined; + wxString faceName; + wxFontEncoding encoding; +#endif // platforms + + // 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); wxString ToString() const; }; @@ -92,4 +88,12 @@ extern bool wxTestFontEncoding(const wxNativeEncodingInfo& info); #include "wx/unix/fontutil.h" #endif // X || GDK +// ---------------------------------------------------------------------------- +// font-related functions (MGL) +// ---------------------------------------------------------------------------- + +#ifdef __WXMGL__ + #include "wx/mgl/fontutil.h" +#endif // __WXMGL__ + #endif // _WX_FONTUTIL_H_