#ifndef _WX_FONTMAPPER_H_
#define _WX_FONTMAPPER_H_
-#if defined(__GNUG__) && !defined(__APPLE__)
- #pragma interface "fontmap.h"
-#endif
-
// ----------------------------------------------------------------------------
// headers
// ----------------------------------------------------------------------------
#include "wx/fontutil.h" // for wxNativeEncodingInfo
#endif // wxUSE_GUI
-#if wxUSE_CONFIG
- class WXDLLEXPORT wxConfigBase;
+#if wxUSE_CONFIG && wxUSE_FILECONFIG
+ class WXDLLIMPEXP_BASE wxConfigBase;
#endif // wxUSE_CONFIG
-class WXDLLEXPORT wxFontMapper;
+class WXDLLIMPEXP_BASE wxFontMapper;
#if wxUSE_GUI
- class WXDLLEXPORT wxWindow;
+ class WXDLLIMPEXP_CORE wxWindow;
#endif // wxUSE_GUI
// ============================================================================
// in knowledge of the encodings equivalence
// ----------------------------------------------------------------------------
-class WXDLLEXPORT wxFontMapperBase
+class WXDLLIMPEXP_BASE wxFontMapperBase
{
public:
// constructtor and such
// return instance of the wxFontMapper singleton
static wxFontMapper *Get();
- // set the sigleton to 'mapper' instance and return previous one
+ // set the singleton to 'mapper' instance and return previous one
static wxFontMapper *Set(wxFontMapper *mapper);
-
// translates charset strings to encoding
// --------------------------------------
virtual wxFontEncoding CharsetToEncoding(const wxString& charset,
bool interactive = true);
-
// information about supported encodings
// -------------------------------------
// GetDefaultConfigPath()
// ----------------------------------------------------------------------
-#if wxUSE_CONFIG
+#if wxUSE_CONFIG && wxUSE_FILECONFIG
// set the config object to use (may be NULL to use default)
void SetConfig(wxConfigBase *config) { m_config = config; }
protected:
-#if wxUSE_CONFIG
+#if wxUSE_CONFIG && wxUSE_FILECONFIG
// get the config object we're using -- if it wasn't set explicitly, this
// function will use wxConfig::Get() to get the global one
wxConfigBase *GetConfig();
wxString m_configRootPath;
#endif // wxUSE_CONFIG
+ // the real implementation of the base class version of CharsetToEncoding()
+ //
+ // returns wxFONTENCODING_UNKNOWN if encoding is unknown and we shouldn't
+ // ask the user about it, wxFONTENCODING_SYSTEM if it is unknown but we
+ // should/could ask the user
+ int NonInteractiveCharsetToEncoding(const wxString& charset);
+
private:
// the global fontmapper object or NULL
static wxFontMapper *sm_instance;
#if wxUSE_GUI
-class WXDLLEXPORT wxFontMapper : public wxFontMapperBase
+class WXDLLIMPEXP_CORE wxFontMapper : public wxFontMapperBase
{
public:
// default ctor
#else // !wxUSE_GUI
-class WXDLLEXPORT wxFontMapper : public wxFontMapperBase
+class WXDLLIMPEXP_BASE wxFontMapper : public wxFontMapperBase
{
};