X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/5fe8354960174a56ee21c456ac3ba521a7b9bae5..73bab6b44da953b35b902c9f3199582e4e76d89b:/include/wx/fontmap.h?ds=inline diff --git a/include/wx/fontmap.h b/include/wx/fontmap.h index 70691e8afb..af3e7b5603 100644 --- a/include/wx/fontmap.h +++ b/include/wx/fontmap.h @@ -6,13 +6,13 @@ // Created: 04.11.99 // RCS-ID: $Id$ // Copyright: (c) Vadim Zeitlin -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_FONTMAPPER_H_ #define _WX_FONTMAPPER_H_ -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(__APPLE__) #pragma interface "fontmap.h" #endif @@ -59,6 +59,11 @@ public: // virtual dtor for a base class virtual ~wxFontMapper(); + // return instance of the wxFontMapper singleton + static wxFontMapper *Get(); + // set the sigleton to 'mapper' instance and return previous one + static wxFontMapper *Set(wxFontMapper *mapper); + #if wxUSE_GUI // find an alternative for the given encoding (which is supposed to not be // available on this system). If successful, return TRUE and fill info @@ -180,6 +185,11 @@ protected: #endif // wxUSE_GUI friend class wxFontMapperPathChanger; + +private: + static wxFontMapper *sm_instance; + + DECLARE_NO_COPY_CLASS(wxFontMapper) }; // ---------------------------------------------------------------------------- @@ -187,8 +197,16 @@ protected: // ---------------------------------------------------------------------------- // the default font mapper for wxWindows programs -WXDLLEXPORT_DATA(extern wxFontMapper *) wxTheFontMapper; +// do NOT use! This is for backward compatibility, use wxFontMapper::Get() instead +#define wxTheFontMapper (wxFontMapper::Get()) + +#else // !wxUSE_FONTMAP + +#if wxUSE_GUI + // wxEncodingToCodepage (utils.cpp) needs wxGetNativeFontEncoding + #include "wx/fontutil.h" +#endif -#endif // wxUSE_FONTMAP +#endif // wxUSE_FONTMAP/!wxUSE_FONTMAP #endif // _WX_FONTMAPPER_H_