#ifndef _WX_FONT_H_BASE_
#define _WX_FONT_H_BASE_
+#ifdef __GNUG__
+ #pragma interface "fontbase.h"
+#endif
+
// ----------------------------------------------------------------------------
// headers
// ----------------------------------------------------------------------------
#include "wx/defs.h" // for wxDEFAULT &c
+#include "wx/fontenc.h" // the font encoding constants
#include "wx/gdiobj.h" // the base class
// ----------------------------------------------------------------------------
// forward declarations
// ----------------------------------------------------------------------------
+class WXDLLEXPORT wxFontData;
class WXDLLEXPORT wxFontBase;
class WXDLLEXPORT wxFont;
wxFONTWEIGHT_MAX
};
-// font encodings
-enum wxFontEncoding
-{
- wxFONTENCODING_SYSTEM = -1, // system default
- wxFONTENCODING_DEFAULT, // current default encoding
-
- // ISO8859 standard defines a number of single-byte charsets
- wxFONTENCODING_ISO8859_1, // West European (Latin1)
- wxFONTENCODING_ISO8859_2, // Central and East European (Latin2)
- wxFONTENCODING_ISO8859_3, // Esperanto (Latin3)
- wxFONTENCODING_ISO8859_4, // Baltic languages (Estonian) (Latin4)
- wxFONTENCODING_ISO8859_5, // Cyrillic
- wxFONTENCODING_ISO8859_6, // Arabic
- wxFONTENCODING_ISO8859_7, // Greek
- wxFONTENCODING_ISO8859_8, // Hebrew
- wxFONTENCODING_ISO8859_9, // Turkish (Latin5)
- wxFONTENCODING_ISO8859_10, // Variation of Latin4 (Latin6)
- wxFONTENCODING_ISO8859_11, // Thai
- wxFONTENCODING_ISO8859_12, // doesn't exist currently, but put it
- // here anyhow to make all ISO8859
- // consecutive numbers
- wxFONTENCODING_ISO8859_13, // Latin7
- wxFONTENCODING_ISO8859_14, // Latin8
- wxFONTENCODING_ISO8859_15, // Latin9 (a.k.a. Latin0, includes euro)
-
- // Cyrillic charset soup (see http://czyborra.com/charsets/cyrillic.html)
- wxFONTENCODING_KOI8, // we don't support any of KOI8 variants
- wxFONTENCODING_ALTERNATIVE, // same as MS-DOS CP866
- wxFONTENCODING_BULGARIAN, // used under Linux in Bulgaria
-
- // what would we do without Microsoft? They have their own encodings
- // for DOS
- wxFONTENCODING_CP437, // original MS-DOS codepage
- wxFONTENCODING_CP850, // CP437 merged with Latin1
- wxFONTENCODING_CP852, // CP437 merged with Latin2
- wxFONTENCODING_CP855, // another cyrillic encoding
- wxFONTENCODING_CP866, // and another one
- // and for Windows
- wxFONTENCODING_CP1250, // WinLatin2
- wxFONTENCODING_CP1251, // WinCyrillic
- wxFONTENCODING_CP1252, // WinLatin1
-
- wxFONTENCODING_MAX
-};
-
// ----------------------------------------------------------------------------
// wxFontBase represents a font object
// ----------------------------------------------------------------------------
-class wxFontBase : public wxGDIObject
+class WXDLLEXPORT wxFontRefData;
+
+class WXDLLEXPORT wxFontBase : public wxGDIObject
{
public:
// creator function
protected:
// get the internal data
- class WXDLLEXPORT wxFontRefData *GetFontData() const
+ wxFontRefData *GetFontData() const
{ return (wxFontRefData *)m_refData; }
private:
// macros
// ----------------------------------------------------------------------------
-// VZ: this is ugly (FIXME)
#define M_FONTDATA GetFontData()
#endif