#include "wx/gdiobj.h"
#include "wx/os2/private.h"
-#include "wx/fontutil.h"
WXDLLEXPORT_DATA(extern const wxChar*) wxEmptyString;
{
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
)
{
- Init();
-
(void)Create( rInfo
,hFont
);
,int nFamily
,int nStyle
,int nWeight
- ,bool bUnderlined = FALSE
+ ,bool bUnderlined = false
,const wxString& rsFace = wxEmptyString
,wxFontEncoding vEncoding = wxFONTENCODING_DEFAULT
);
virtual ~wxFont();
- //
- // Assignment
- //
- wxFont& operator=(const wxFont& rFont);
-
//
// Implement base class pure virtuals
//
virtual bool GetUnderlined(void) const;
virtual wxString GetFaceName(void) const;
virtual wxFontEncoding GetEncoding(void) const;
- virtual wxNativeFontInfo* GetNativeFontInfo() 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 SetNativeFontInfo(const wxNativeFontInfo& rInfo);
//
// For internal use only!
//
+ void SetPS(HPS hPS);
void SetFM( PFONTMETRICS pFM
,int nNumFonts
);
virtual bool IsFree(void) const;
virtual bool RealizeResource(void);
virtual WXHANDLE GetResourceHandle(void);
- virtual bool FreeResource(bool bForce = FALSE);
+ 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: