X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/258593354e0a19bb74e23d7978fdc01da1942b2a..dd45d2848bafcf376a613c57fc043eaf5e5aa8c6:/include/wx/font.h diff --git a/include/wx/font.h b/include/wx/font.h index 7ebc53d325..0d70d3f41a 100644 --- a/include/wx/font.h +++ b/include/wx/font.h @@ -25,10 +25,7 @@ // forward declarations // ---------------------------------------------------------------------------- -class WXDLLIMPEXP_FWD_CORE wxFontData; -class WXDLLIMPEXP_FWD_CORE wxFontBase; class WXDLLIMPEXP_FWD_CORE wxFont; -class WXDLLIMPEXP_FWD_CORE wxSize; // ---------------------------------------------------------------------------- // font constants @@ -69,6 +66,18 @@ enum wxFontWeight 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 { @@ -243,6 +252,19 @@ public: 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; @@ -255,7 +277,7 @@ public: 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 @@ -306,20 +328,20 @@ WXDLLIMPEXP_CORE bool wxFromString(const wxString& str, wxFontBase* font); /* 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" @@ -329,8 +351,6 @@ WXDLLIMPEXP_CORE bool wxFromString(const wxString& str, wxFontBase* font); #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__)