]> git.saurik.com Git - wxWidgets.git/blame - include/wx/gtk1/font.h
Next try at avoiding too few or too many size events.
[wxWidgets.git] / include / wx / gtk1 / font.h
CommitLineData
c801d85f
KB
1/////////////////////////////////////////////////////////////////////////////
2// Name: font.h
3// Purpose:
4// Author: Robert Roebling
58614078 5// Id: $Id$
c801d85f 6// Copyright: (c) 1998 Robert Roebling, Julian Smart and Markus Holzem
8bbe427f 7// Licence: wxWindows licence
c801d85f
KB
8/////////////////////////////////////////////////////////////////////////////
9
c801d85f
KB
10#ifndef __GTKFONTH__
11#define __GTKFONTH__
12
13#ifdef __GNUG__
0c5d3e1c 14 #pragma interface
c801d85f
KB
15#endif
16
c801d85f 17#include "wx/hash.h"
c801d85f 18
0c5d3e1c 19// ----------------------------------------------------------------------------
c801d85f 20// classes
0c5d3e1c 21// ----------------------------------------------------------------------------
c801d85f
KB
22
23class wxDC;
24class wxPaintDC;
25class wxWindow;
26
27class wxFont;
c801d85f 28
0c5d3e1c 29// ----------------------------------------------------------------------------
c801d85f 30// wxFont
0c5d3e1c 31// ----------------------------------------------------------------------------
c801d85f 32
0c5d3e1c 33class wxFont : public wxFontBase
c801d85f 34{
358fc25c 35public:
0c5d3e1c
VZ
36 // ctors and such
37 wxFont() { Init(); }
38 wxFont(const wxFont& font) { Init(); Ref(font); }
7beba2fc 39 wxFont(const wxString& fontname, const wxFontData& fontdata);
0c5d3e1c
VZ
40
41 // assignment
42 wxFont& operator=(const wxFont& font);
43
44 wxFont(int size,
45 int family,
46 int style,
47 int weight,
48 bool underlined = FALSE,
49 const wxString& face = wxEmptyString,
50 wxFontEncoding encoding = wxFONTENCODING_DEFAULT)
51 {
52 Init();
53
54 (void)Create(size, family, style, weight, underlined, face, encoding);
55 }
56
57 bool Create(int size,
58 int family,
59 int style,
60 int weight,
61 bool underlined = FALSE,
62 const wxString& face = wxEmptyString,
63 wxFontEncoding encoding = wxFONTENCODING_DEFAULT);
64
65 ~wxFont();
66
67 // implement base class pure virtuals
68 virtual int GetPointSize() const;
69 virtual int GetFamily() const;
70 virtual int GetStyle() const;
71 virtual int GetWeight() const;
72 virtual wxString GetFaceName() const;
73 virtual bool GetUnderlined() const;
74 virtual wxFontEncoding GetEncoding() const;
75
76 virtual void SetPointSize( int pointSize );
77 virtual void SetFamily( int family );
78 virtual void SetStyle( int style );
79 virtual void SetWeight( int weight );
80 virtual void SetFaceName( const wxString& faceName );
81 virtual void SetUnderlined( bool underlined );
82 virtual void SetEncoding(wxFontEncoding encoding);
83
84 // implementation from now on
0c5d3e1c
VZ
85 void Unshare();
86
87 GdkFont* GetInternalFont(float scale = 1.0) const;
88
89 // no data :-)
90
91protected:
92 // common part of all ctors
93 void Init();
94
95private:
96 DECLARE_DYNAMIC_CLASS(wxFont)
c801d85f
KB
97};
98
c801d85f 99#endif // __GTKFONTH__