// Author: Vadim Zeitlin
// Modified by:
// Created: 04.11.99
-// RCS-ID: $Id$
// Copyright: (c) Vadim Zeitlin
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#endif // wxUSE_GUI
#if wxUSE_CONFIG && wxUSE_FILECONFIG
- class WXDLLIMPEXP_BASE wxConfigBase;
+ class WXDLLIMPEXP_FWD_BASE wxConfigBase;
#endif // wxUSE_CONFIG
-class WXDLLIMPEXP_CORE wxFontMapper;
+class WXDLLIMPEXP_FWD_CORE wxFontMapper;
#if wxUSE_GUI
- class WXDLLIMPEXP_CORE wxWindow;
+ class WXDLLIMPEXP_FWD_CORE wxWindow;
#endif // wxUSE_GUI
// ============================================================================
class WXDLLIMPEXP_BASE wxFontMapperBase
{
- // For IsWxFontMapper()
- friend class WXDLLIMPEXP_CORE wxFontMapper;
public:
- // constructtor and such
+ // constructor and such
// ---------------------
// default ctor
// set the singleton to 'mapper' instance and return previous one
static wxFontMapper *Set(wxFontMapper *mapper);
+ // delete the existing font mapper if any
+ static void Reset();
+
+
// translates charset strings to encoding
// --------------------------------------
void SetConfigPath(const wxString& prefix);
// return default config path
- static const wxChar *GetDefaultConfigPath();
+ static const wxString& GetDefaultConfigPath();
#endif // wxUSE_CONFIG
+ // returns true for the base class and false for a "real" font mapper object
+ // (implementation-only)
+ virtual bool IsDummy() { return true; }
+
protected:
#if wxUSE_CONFIG && wxUSE_FILECONFIG
// get the config object we're using -- either the global config object
int NonInteractiveCharsetToEncoding(const wxString& charset);
private:
- // pseudo-RTTI since we aren't a wxObject.
- virtual bool IsWxFontMapper();
-
// the global fontmapper object or NULL
static wxFontMapper *sm_instance;
friend class wxFontMapperPathChanger;
- DECLARE_NO_COPY_CLASS(wxFontMapperBase)
+ wxDECLARE_NO_COPY_CLASS(wxFontMapperBase);
};
// ----------------------------------------------------------------------------
// are additional methods in the subclass.
static wxFontMapper *Get();
+ // pseudo-RTTI since we aren't a wxObject.
+ virtual bool IsDummy() { return false; }
+
protected:
// GetAltForEncoding() helper: tests for the existence of the given
// encoding and saves the result in config if ok - this results in the
wxWindow *m_windowParent;
private:
- // pseudo-RTTI since we aren't a wxObject.
- virtual bool IsWxFontMapper();
-
- DECLARE_NO_COPY_CLASS(wxFontMapper)
+ wxDECLARE_NO_COPY_CLASS(wxFontMapper);
};
#endif // wxUSE_GUI