X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e99762c031bf2c71af7f856c1d713bce0422acaa..2a015b8917bd71878cbf096b3c09f4faad3e3856:/include/wx/os2/font.h diff --git a/include/wx/os2/font.h b/include/wx/os2/font.h index 410e0bc200..92e0b22698 100644 --- a/include/wx/os2/font.h +++ b/include/wx/os2/font.h @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: font.h +// Name: wx/os2/font.h // Purpose: wxFont class // Author: David Webster // Modified by: @@ -25,83 +25,97 @@ class WXDLLEXPORT wxFont : public wxFontBase { public: // ctors and such - wxFont() { Init(); } - wxFont(const wxFont& rFont) { Init(); Ref(rFont); } + wxFont() { } wxFont( int nSize ,int nFamily ,int nStyle ,int nWeight - ,bool bUnderlined = FALSE + ,bool bUnderlined = false ,const wxString& rsFace = wxEmptyString ,wxFontEncoding vEncoding = wxFONTENCODING_DEFAULT ) { - Init(); + (void)Create( nSize + ,nFamily + ,nStyle + ,nWeight + ,bUnderlined + ,rsFace + ,vEncoding + ); + } + + wxFont( const wxNativeFontInfo& rInfo + ,WXHFONT hFont = 0 + ) - (void)Create(nSize, nFamily, nStyle, nWeight, bUnderlined, rsFace, vEncoding); + { + (void)Create( rInfo + ,hFont + ); } + wxFont(const wxString& rsFontDesc); + bool Create( int nSize ,int nFamily ,int nStyle ,int nWeight - ,bool bUnderlined = FALSE + ,bool bUnderlined = false ,const wxString& rsFace = wxEmptyString ,wxFontEncoding vEncoding = wxFONTENCODING_DEFAULT ); + bool Create( const wxNativeFontInfo& rInfo + ,WXHFONT hFont = 0 + ); virtual ~wxFont(); - // - // Assignment - // - wxFont& operator=(const wxFont& rFont); - // // Implement base class pure virtuals // - virtual int GetPointSize(void) const; - virtual int GetFamily(void) const; - virtual int GetStyle(void) const; - virtual int GetWeight(void) const; - virtual bool GetUnderlined(void) const; - virtual wxString GetFaceName(void) const; - virtual wxFontEncoding GetEncoding(void) const; - virtual HPS GetPS(void) const; + virtual int GetPointSize(void) const; + virtual int GetFamily(void) const; + virtual int GetStyle(void) const; + virtual int GetWeight(void) const; + virtual bool GetUnderlined(void) const; + virtual wxString GetFaceName(void) const; + virtual wxFontEncoding GetEncoding(void) const; + virtual const wxNativeFontInfo* GetNativeFontInfo() const; virtual void SetPointSize(int nPointSize); virtual void SetFamily(int nFamily); virtual void SetStyle(int nStyle); virtual void SetWeight(int nWeight); - virtual void SetFaceName(const wxString& rsFaceName); + virtual bool SetFaceName(const wxString& rsFaceName); virtual void SetUnderlined(bool bUnderlined); virtual void SetEncoding(wxFontEncoding vEncoding); - virtual void SetPS(HPS hPS); - virtual void SetFM( PFONTMETRICS pFM - ,int nNumFonts - ); + // + // For internal use only! + // + void SetPS(HPS hPS); + void SetFM( PFONTMETRICS pFM + ,int nNumFonts + ); // // Implementation only from now on // ------------------------------- // - int GetFontId(void) const; virtual bool IsFree(void) const; virtual bool RealizeResource(void); - virtual WXHANDLE GetResourceHandle(void); - virtual bool FreeResource(bool bForce = FALSE); + virtual WXHANDLE GetResourceHandle(void) const; + virtual bool FreeResource(bool bForce = false); + + WXHFONT GetHFONT(void) const; protected: - // - // Common part of all ctors - // - void Init(void); + virtual void DoSetNativeFontInfo(const wxNativeFontInfo& rInfo); + void Unshare(void); private: - void OS2SelectMatchingFontByName(void); - DECLARE_DYNAMIC_CLASS(wxFont) }; // end of wxFont