X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/7c74e7fe1de14f32dcd6f3c9cdd727de540bbd0e..350777b68f3cbc6c51d8fdbb29151ee36247563e:/include/wx/mac/font.h?ds=sidebyside diff --git a/include/wx/mac/font.h b/include/wx/mac/font.h index 6b41fc9c61..2c3c17e84e 100644 --- a/include/wx/mac/font.h +++ b/include/wx/mac/font.h @@ -12,7 +12,7 @@ #ifndef _WX_FONT_H_ #define _WX_FONT_H_ -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(__APPLE__) #pragma interface "font.h" #endif @@ -21,20 +21,40 @@ class WXDLLEXPORT wxFontRefData: public wxGDIRefData friend class WXDLLEXPORT wxFont; public: wxFontRefData() + : m_fontId(0) + , m_pointSize(10) + , m_family(wxDEFAULT) + , m_style(wxNORMAL) + , m_weight(wxNORMAL) + , m_underlined(FALSE) + , m_faceName("Geneva") + , m_encoding(wxFONTENCODING_DEFAULT) + , m_macFontNum(0) + , m_macFontSize(0) + , m_macFontStyle(0) + , m_macATSUFontID() { Init(10, wxDEFAULT, wxNORMAL, wxNORMAL, FALSE, "Geneva", wxFONTENCODING_DEFAULT); } wxFontRefData(const wxFontRefData& data) + : wxGDIRefData() + , m_fontId(data.m_fontId) + , m_pointSize(data.m_pointSize) + , m_family(data.m_family) + , m_style(data.m_style) + , m_weight(data.m_weight) + , m_underlined(data.m_underlined) + , m_faceName(data.m_faceName) + , m_encoding(data.m_encoding) + , m_macFontNum(data.m_macFontNum) + , m_macFontSize(data.m_macFontSize) + , m_macFontStyle(data.m_macFontStyle) + , m_macATSUFontID(data.m_macATSUFontID) { Init(data.m_pointSize, data.m_family, data.m_style, data.m_weight, data.m_underlined, data.m_faceName, data.m_encoding); - - m_macFontNum = data.m_macFontNum ; - m_macFontSize = data.m_macFontSize; - m_macFontStyle = data.m_macFontStyle; - m_fontId = data.m_fontId; } wxFontRefData(int size, @@ -44,11 +64,26 @@ public: bool underlined, const wxString& faceName, wxFontEncoding encoding) + : m_fontId(0) + , m_pointSize(size) + , m_family(family) + , m_style(style) + , m_weight(weight) + , m_underlined(underlined) + , m_faceName(faceName) + , m_encoding(encoding) + , m_macFontNum(0) + , m_macFontSize(0) + , m_macFontStyle(0) + , m_macATSUFontID(0) { Init(size, family, style, weight, underlined, faceName, encoding); } virtual ~wxFontRefData(); + void SetNoAntiAliasing( bool no = TRUE ) { m_noAA = no; } + bool GetNoAntiAliasing() { return m_noAA; } + protected: // common part of all ctors void Init(int size, @@ -60,21 +95,23 @@ protected: wxFontEncoding encoding); // font characterstics - int m_fontId; - int m_pointSize; - int m_family; - int m_style; - int m_weight; - bool m_underlined; - wxString m_faceName; + int m_fontId; + int m_pointSize; + int m_family; + int m_style; + int m_weight; + bool m_underlined; + wxString m_faceName; wxFontEncoding m_encoding; - -public : - short m_macFontNum ; - short m_macFontSize ; - Style m_macFontStyle ; -public : - void MacFindFont() ; + bool m_noAA; // No anti-aliasing + +public: + short m_macFontNum; + short m_macFontSize; + unsigned char m_macFontStyle; + wxUint32 m_macATSUFontID; +public: + void MacFindFont() ; }; // ---------------------------------------------------------------------------- // wxFont @@ -85,7 +122,12 @@ class WXDLLEXPORT wxFont : public wxFontBase public: // ctors and such wxFont() { Init(); } - wxFont(const wxFont& font) { Init(); Ref(font); } + wxFont(const wxFont& font) + : wxFontBase() + { + Init(); + Ref(font); + } wxFont(int size, int family, @@ -100,6 +142,15 @@ public: (void)Create(size, family, style, weight, underlined, face, encoding); } + wxFont(const wxNativeFontInfo& info) + { + Init(); + + (void)Create(info); + } + + wxFont(const wxString& fontDesc); + bool Create(int size, int family, int style, @@ -108,6 +159,8 @@ public: const wxString& face = wxEmptyString, wxFontEncoding encoding = wxFONTENCODING_DEFAULT); + bool Create(const wxNativeFontInfo& info); + virtual ~wxFont(); // assignment @@ -135,6 +188,9 @@ public: virtual bool RealizeResource(); + // Unofficial API, don't use + virtual void SetNoAntiAliasing( bool noAA = TRUE ) ; + virtual bool GetNoAntiAliasing() ; protected: // common part of all ctors void Init();