X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b3c861501a451503b31c075ccb59d16b0ae01e99..438959cca892a7651634cc3a7aad4819ac49b23c:/include/wx/dfb/font.h diff --git a/include/wx/dfb/font.h b/include/wx/dfb/font.h index 04909177db..db68dbd3ff 100644 --- a/include/wx/dfb/font.h +++ b/include/wx/dfb/font.h @@ -11,7 +11,7 @@ #ifndef _WX_DFB_FONT_H_ #define _WX_DFB_FONT_H_ -#include "wx/dfb/ifacehelpers.h" +#include "wx/dfb/dfbptr.h" wxDFB_DECLARE_INTERFACE(IDirectFBFont); @@ -23,7 +23,23 @@ class WXDLLIMPEXP_CORE wxFont : public wxFontBase { public: wxFont() {} + + wxFont(const wxFontInfo& info) + { + Create(info.GetPointSize(), + info.GetFamily(), + info.GetStyle(), + info.GetWeight(), + info.IsUnderlined(), + info.GetFaceName(), + info.GetEncoding()); + + if ( info.IsUsingSizeInPixels() ) + SetPixelSize(info.GetPixelSize()); + } + wxFont(const wxNativeFontInfo& info) { Create(info); } +#if FUTURE_WXWIN_COMPATIBILITY_3_0 wxFont(int size, int family, int style, @@ -31,14 +47,38 @@ public: bool underlined = false, const wxString& face = wxEmptyString, wxFontEncoding encoding = wxFONTENCODING_DEFAULT) + { + (void)Create(size, (wxFontFamily)family, (wxFontStyle)style, (wxFontWeight)weight, underlined, face, encoding); + } +#endif + + wxFont(int size, + wxFontFamily family, + wxFontStyle style, + wxFontWeight weight, + bool underlined = false, + const wxString& face = wxEmptyString, + wxFontEncoding encoding = wxFONTENCODING_DEFAULT) { Create(size, family, style, weight, underlined, face, encoding); } + wxFont(const wxSize& pixelSize, + wxFontFamily family, + wxFontStyle style, + wxFontWeight weight, + bool underlined = false, + const wxString& face = wxEmptyString, + wxFontEncoding encoding = wxFONTENCODING_DEFAULT) + { + Create(10, family, style, weight, underlined, face, encoding); + SetPixelSize(pixelSize); + } + bool Create(int size, - int family, - int style, - int weight, + wxFontFamily family, + wxFontStyle style, + wxFontWeight weight, bool underlined = false, const wxString& face = wxEmptyString, wxFontEncoding encoding = wxFONTENCODING_DEFAULT); @@ -46,9 +86,8 @@ public: // implement base class pure virtuals virtual int GetPointSize() const; - virtual int GetFamily() const; - virtual int GetStyle() const; - virtual int GetWeight() const; + virtual wxFontStyle GetStyle() const; + virtual wxFontWeight GetWeight() const; virtual wxString GetFaceName() const; virtual bool GetUnderlined() const; virtual wxFontEncoding GetEncoding() const; @@ -56,20 +95,23 @@ public: virtual const wxNativeFontInfo *GetNativeFontInfo() const; virtual void SetPointSize(int pointSize); - virtual void SetFamily(int family); - virtual void SetStyle(int style); - virtual void SetWeight(int weight); + virtual void SetFamily(wxFontFamily family); + virtual void SetStyle(wxFontStyle style); + virtual void SetWeight(wxFontWeight weight); virtual bool SetFaceName(const wxString& faceName); virtual void SetUnderlined(bool underlined); virtual void SetEncoding(wxFontEncoding encoding); + wxDECLARE_COMMON_FONT_METHODS(); + // implementation from now on: - IDirectFBFontPtr GetDirectFBFont() const; + wxIDirectFBFontPtr GetDirectFBFont(bool antialiased) const; protected: - // ref counting code - virtual wxObjectRefData *CreateRefData() const; - virtual wxObjectRefData *CloneRefData(const wxObjectRefData *data) const; + virtual wxGDIRefData *CreateGDIRefData() const; + virtual wxGDIRefData *CloneGDIRefData(const wxGDIRefData *data) const; + + virtual wxFontFamily DoGetFamily() const; private: DECLARE_DYNAMIC_CLASS(wxFont)