OS/2 NativeFontInfo support

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@13462 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
David Webster
2002-01-08 23:33:27 +00:00
parent 6a41b213d2
commit cc95f4f947
5 changed files with 1150 additions and 572 deletions

View File

@@ -40,10 +40,29 @@ public:
{
Init();
(void)Create(nSize, nFamily, nStyle, nWeight, bUnderlined, rsFace, vEncoding);
(void)Create( nSize
,nFamily
,nStyle
,nWeight
,bUnderlined
,rsFace
,vEncoding
);
}
wxFont(const wxNativeFontInfo& rInfo);
wxFont( const wxNativeFontInfo& rInfo
,WXHFONT hFont = 0
)
{
Init();
(void)Create( rInfo
,hFont
);
}
wxFont(const wxString& rsFontDesc);
bool Create( int nSize
,int nFamily
@@ -53,6 +72,9 @@ public:
,const wxString& rsFace = wxEmptyString
,wxFontEncoding vEncoding = wxFONTENCODING_DEFAULT
);
bool Create( const wxNativeFontInfo& rInfo
,WXHFONT hFont = 0
);
virtual ~wxFont();
@@ -64,14 +86,14 @@ public:
//
// 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 wxNativeFontInfo* GetNativeFontInfo() const;
virtual void SetPointSize(int nPointSize);
virtual void SetFamily(int nFamily);
@@ -80,16 +102,18 @@ public:
virtual void 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
);
virtual void SetNativeFontInfo(const wxNativeFontInfo& rInfo);
//
// For internal use only!
//
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);
@@ -104,8 +128,6 @@ protected:
void Unshare(void);
private:
void OS2SelectMatchingFontByName(void);
DECLARE_DYNAMIC_CLASS(wxFont)
}; // end of wxFont

View File

@@ -195,8 +195,18 @@ WXDLLEXPORT wxWindow* wxFindWinFromHandle(WXHWND hWnd);
WXDLLEXPORT void wxGetCharSize(WXHWND wnd, int *x, int *y,wxFont *the_font);
WXDLLEXPORT void wxFillLogFont( LOGFONT* pLogFont
,PFACENAMEDESC pFaceName
,const wxFont* pFont
,HPS hPS
,long* pflId
,wxString& sFaceName
,wxFont* pFont
);
WXDLLEXPORT wxFontEncoding wxGetFontEncFromCharSet(int nCharSet);
WXDLLEXPORT void wxOS2SelectMatchingFontByName( PFATTRS vFattrs
,PFACENAMEDESC pFaceName
,PFONTMETRICS pFM
,int nNumFonts
,const wxFont* pFont
);
WXDLLEXPORT wxFont wxCreateFontFromLogFont( LOGFONT* pLogFont
,PFONTMETRICS pFM
,PFACENAMEDESC pFace