// forward declarations
// ----------------------------------------------------------------------------
-class WXDLLIMPEXP_FWD_CORE wxFontData;
-class WXDLLIMPEXP_FWD_CORE wxFontBase;
class WXDLLIMPEXP_FWD_CORE wxFont;
-class WXDLLIMPEXP_FWD_CORE wxSize;
// ----------------------------------------------------------------------------
// font constants
wxFONTWEIGHT_MAX
};
+// Symbolic font sizes as defined in CSS specification.
+enum wxFontSymbolicSize
+{
+ wxFONTSIZE_XX_SMALL = -3,
+ wxFONTSIZE_X_SMALL,
+ wxFONTSIZE_SMALL,
+ wxFONTSIZE_MEDIUM,
+ wxFONTSIZE_LARGE,
+ wxFONTSIZE_X_LARGE,
+ wxFONTSIZE_XX_LARGE
+};
+
// the font flag bits for the new font ctor accepting one combined flags word
enum wxFontFlag
{
bool SetNativeFontInfo(const wxString& info);
bool SetNativeFontInfoUserDesc(const wxString& info);
+ // Symbolic font sizes support: set the font size to "large" or "very
+ // small" either absolutely (i.e. compared to the default font size) or
+ // relatively to the given font size.
+ void SetSymbolicSize(wxFontSymbolicSize size);
+ void SetSymbolicSizeRelativeTo(wxFontSymbolicSize size, int base)
+ {
+ SetPointSize(AdjustToSymbolicSize(size, base));
+ }
+
+ // Adjust the base size in points according to symbolic size.
+ static int AdjustToSymbolicSize(wxFontSymbolicSize size, int base);
+
+
// translate the fonts into human-readable string (i.e. GetStyleString()
// will return "wxITALIC" for an italic font, ...)
wxString GetFamilyString() const;
static void SetDefaultEncoding(wxFontEncoding encoding);
// this doesn't do anything and is kept for compatibility only
-#ifdef WXWIN_COMPATIBILITY_2_8
+#if WXWIN_COMPATIBILITY_2_8
wxDEPRECATED_INLINE(void SetNoAntiAliasing(bool no = true), wxUnusedVar(no););
wxDEPRECATED_INLINE(bool GetNoAntiAliasing() const, return false;)
#endif // WXWIN_COMPATIBILITY_2_8
/* functions for modifying font in place */ \
wxFont& MakeBold(); \
wxFont& MakeItalic(); \
+ wxFont& MakeUnderlined(); \
wxFont& MakeLarger() { return Scale(1.2f); } \
wxFont& MakeSmaller() { return Scale(1/1.2f); } \
wxFont& Scale(float x); \
/* functions for creating fonts based on this one */ \
wxFont Bold() const; \
wxFont Italic() const; \
+ wxFont Underlined() const; \
wxFont Larger() const { return Scaled(1.2f); } \
wxFont Smaller() const { return Scaled(1/1.2f); } \
wxFont Scaled(float x) const
// include the real class declaration
-#if defined(__WXPALMOS__)
- #include "wx/palmos/font.h"
-#elif defined(__WXMSW__)
+#if defined(__WXMSW__)
#include "wx/msw/font.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/font.h"
#include "wx/gtk1/font.h"
#elif defined(__WXX11__)
#include "wx/x11/font.h"
-#elif defined(__WXMGL__)
- #include "wx/mgl/font.h"
#elif defined(__WXDFB__)
#include "wx/dfb/font.h"
#elif defined(__WXMAC__)