X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/7c78e7c70271608b076b1dbed201b1204e6898d4..587ce561e1deabbfacf0d619fdd6bb3899430720:/include/wx/qt/font.h diff --git a/include/wx/qt/font.h b/include/wx/qt/font.h index f60894b75e..2079f2d0f0 100644 --- a/include/wx/qt/font.h +++ b/include/wx/qt/font.h @@ -1,87 +1,88 @@ ///////////////////////////////////////////////////////////////////////////// // Name: font.h -// Purpose: -// Author: Robert Roebling -// Created: 01/02/97 -// Id: -// Copyright: (c) 1998 Robert Roebling, Julian Smart and Markus Holzem +// Purpose: wxFont class +// Author: AUTHOR +// Modified by: +// Created: ??/??/98 +// RCS-ID: $Id$ +// Copyright: (c) AUTHOR // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// - -#ifndef __GTKFONTH__ -#define __GTKFONTH__ +#ifndef _WX_FONT_H_ +#define _WX_FONT_H_ #ifdef __GNUG__ -#pragma interface +#pragma interface "font.h" #endif -#include "wx/defs.h" -#include "wx/object.h" -#include "wx/string.h" -#include "wx/hash.h" #include "wx/gdiobj.h" -//----------------------------------------------------------------------------- -// classes -//----------------------------------------------------------------------------- - -class wxDC; -class wxPaintDC; -class wxWindow; +class WXDLLEXPORT wxFont; -class wxFont; -class wxFontNameDirectory; - -//----------------------------------------------------------------------------- -// global variables -//----------------------------------------------------------------------------- +class WXDLLEXPORT wxFontRefData: public wxGDIRefData +{ + friend class WXDLLEXPORT wxFont; +public: + wxFontRefData(); + ~wxFontRefData(); +protected: + int m_pointSize; + int m_family; + int m_style; + int m_weight; + bool m_underlined; + wxString m_faceName; +/* TODO: implementation + WXHFONT m_hFont; +*/ +}; -// extern wxFontNameDirectory wxTheFontNameDirectory; // defined below +#define M_FONTDATA ((wxFontRefData *)m_refData) -//----------------------------------------------------------------------------- -// wxFont -//----------------------------------------------------------------------------- +WXDLLEXPORT_DATA(extern const char*) wxEmptyString; -class wxFont: public wxGDIObject +// Font +class WXDLLEXPORT wxFont: public wxGDIObject { DECLARE_DYNAMIC_CLASS(wxFont) - - public: - wxFont(void); - wxFont( int PointSize, int FontIdOrFamily, int Style, int Weight, - bool underlined = FALSE, const char *Face=NULL ); - wxFont( int PointSize, const char *Face, int Family, int Style, int Weight, - bool underlined = FALSE ); - wxFont( const wxFont& font ); - wxFont( const wxFont* font ); - ~wxFont(void); - wxFont& operator = ( const wxFont& font ); - bool operator == ( const wxFont& font ); - bool operator != ( const wxFont& font ); - bool Ok(); - - int GetPointSize(void) const; - wxString GetFaceName(void) const; - int GetFamily(void) const; - wxString GetFamilyString(void) const; - int GetFontId(void) const; - wxString GetFaceString(void) const; - int GetStyle(void) const; - wxString GetStyleString(void) const; - int GetWeight(void) const; - wxString GetWeightString(void) const; - bool GetUnderlined(void) const; - - wxFont( char *xFontName ); - - private: - - friend wxDC; - friend wxPaintDC; - friend wxWindow; - - // no data :-) +public: + wxFont(); + wxFont(int pointSize, int family, int style, int weight, bool underlined = FALSE, const wxString& faceName = wxEmptyString); + inline wxFont(const wxFont& font) { Ref(font); } + inline wxFont(const wxFont* font) { if (font) Ref(*font); } + + ~wxFont(); + + bool Create(int pointSize, int family, int style, int weight, bool underlined = FALSE, const wxString& faceName = wxEmptyString); + + virtual bool Ok() const { return (m_refData != NULL) ; } + + inline int GetPointSize() const { return M_FONTDATA->m_pointSize; } + inline int GetFamily() const { return M_FONTDATA->m_family; } + inline int GetStyle() const { return M_FONTDATA->m_style; } + inline int GetWeight() const { return M_FONTDATA->m_weight; } + wxString GetFamilyString() const ; + wxString GetFaceName() const ; + wxString GetStyleString() const ; + wxString GetWeightString() const ; + inline bool GetUnderlined() const { return M_FONTDATA->m_underlined; } + + void SetPointSize(int pointSize); + void SetFamily(int family); + void SetStyle(int style); + void SetWeight(int weight); + void SetFaceName(const wxString& faceName); + void SetUnderlined(bool underlined); + + inline wxFont& operator = (const wxFont& font) { if (*this == font) return (*this); Ref(font); return *this; } + inline bool operator == (const wxFont& font) { return m_refData == font.m_refData; } + inline bool operator != (const wxFont& font) { return m_refData != font.m_refData; } + + // Implementation +protected: + void Unshare(); }; -#endif // __GTKFONTH__ +#endif + // _WX_FONT_H_