#ifndef _WX_FONT_H_
#define _WX_FONT_H_
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
- #pragma interface "font.h"
-#endif
-
// ----------------------------------------------------------------------------
// wxFont
// ----------------------------------------------------------------------------
{
public:
// ctors and such
- wxFont() { Init(); }
- wxFont(const wxFont& font)
- : wxFontBase()
- {
- Init();
- Ref(font);
- }
+ wxFont() { }
wxFont(int size,
int family,
const wxString& face = wxEmptyString,
wxFontEncoding encoding = wxFONTENCODING_DEFAULT)
{
- Init();
-
(void)Create(size, family, style, weight, underlined, face, encoding);
}
wxFont(const wxNativeFontInfo& info)
{
- Init();
-
(void)Create(info);
}
bool Create(const wxNativeFontInfo& info);
+ bool MacCreateFromThemeFont( wxUint16 themeFontID ) ;
+#if wxMAC_USE_CORE_TEXT
+ bool MacCreateFromUIFont( wxUint32 coreTextFontType );
+ bool MacCreateFromCTFontDescriptor( const void * ctFontDescriptor, int pointSize = 0 );
+ bool MacCreateFromCTFont( const void * ctFont );
+#endif
+
virtual ~wxFont();
- // assignment
- wxFont& operator=(const wxFont& font);
-
// implement base class pure virtuals
virtual int GetPointSize() const;
+ virtual wxSize GetPixelSize() const;
virtual int GetFamily() const;
virtual int GetStyle() const;
virtual int GetWeight() const;
virtual void SetFamily(int family);
virtual void SetStyle(int style);
virtual void SetWeight(int weight);
- virtual void SetFaceName(const wxString& faceName);
+ virtual bool SetFaceName(const wxString& faceName);
virtual void SetUnderlined(bool underlined);
virtual void SetEncoding(wxFontEncoding encoding);
// Unofficial API, don't use
virtual void SetNoAntiAliasing( bool noAA = TRUE ) ;
- virtual bool GetNoAntiAliasing() ;
+ virtual bool GetNoAntiAliasing() const ;
// Mac-specific, risks to change, don't use in portable code
- short GetMacFontNum() const;
- short GetMacFontSize() const;
- wxByte GetMacFontStyle() const;
- wxUint32 GetMacATSUFontID() const;
-
-protected:
- // common part of all ctors
- void Init();
-
+
+#if wxMAC_USE_ATSU_TEXT
+ // 'old' Quickdraw accessors
+ short MacGetFontNum() const;
+ short MacGetFontSize() const;
+ wxByte MacGetFontStyle() const;
+
+ // 'new' ATSUI accessors
+ wxUint32 MacGetATSUFontID() const;
+ wxUint32 MacGetATSUAdditionalQDStyles() const;
+ wxUint16 MacGetThemeFontID() const ;
+
+ // Returns an ATSUStyle not ATSUStyle*
+#endif
+#if wxMAC_USE_CORE_TEXT
+ const void * MacGetCTFont() const;
+ const void * MacGetCTFontDescriptor() const;
+#endif
+#if wxMAC_USE_CORE_TEXT || wxMAC_USE_ATSU_TEXT
+ void* MacGetATSUStyle() const ;
+#endif
+
+private:
void Unshare();
-private:
DECLARE_DYNAMIC_CLASS(wxFont)
};