]> git.saurik.com Git - wxWidgets.git/blame - include/wx/gtk/font.h
no message
[wxWidgets.git] / include / wx / gtk / font.h
CommitLineData
c801d85f
KB
1/////////////////////////////////////////////////////////////////////////////
2// Name: font.h
3// Purpose:
4// Author: Robert Roebling
5// Created: 01/02/97
6// Id:
7// Copyright: (c) 1998 Robert Roebling, Julian Smart and Markus Holzem
8// Licence: wxWindows licence
9/////////////////////////////////////////////////////////////////////////////
10
11
12#ifndef __GTKFONTH__
13#define __GTKFONTH__
14
15#ifdef __GNUG__
16#pragma interface
17#endif
18
19#include "wx/defs.h"
20#include "wx/object.h"
21#include "wx/string.h"
22#include "wx/hash.h"
23#include "wx/gdiobj.h"
24
25//-----------------------------------------------------------------------------
26// classes
27//-----------------------------------------------------------------------------
28
29class wxDC;
30class wxPaintDC;
31class wxWindow;
32
33class wxFont;
34class wxFontNameDirectory;
35
36//-----------------------------------------------------------------------------
37// global variables
38//-----------------------------------------------------------------------------
39
a3622daa 40//extern wxFontNameDirectory *wxTheFontNameDirectory; // defined below
c801d85f
KB
41
42//-----------------------------------------------------------------------------
43// wxFont
44//-----------------------------------------------------------------------------
45
46class wxFont: public wxGDIObject
47{
48 DECLARE_DYNAMIC_CLASS(wxFont)
49
50 public:
51 wxFont(void);
52 wxFont( int PointSize, int FontIdOrFamily, int Style, int Weight,
c67daf87 53 bool underlined = FALSE, const char *Face= ( const char *) NULL );
c801d85f
KB
54 wxFont( int PointSize, const char *Face, int Family, int Style, int Weight,
55 bool underlined = FALSE );
56 wxFont( const wxFont& font );
57 wxFont( const wxFont* font );
58 ~wxFont(void);
59 wxFont& operator = ( const wxFont& font );
60 bool operator == ( const wxFont& font );
61 bool operator != ( const wxFont& font );
d84eb083 62 bool Ok() const;
c801d85f
KB
63
64 int GetPointSize(void) const;
65 wxString GetFaceName(void) const;
66 int GetFamily(void) const;
67 wxString GetFamilyString(void) const;
68 int GetFontId(void) const;
69 wxString GetFaceString(void) const;
70 int GetStyle(void) const;
71 wxString GetStyleString(void) const;
72 int GetWeight(void) const;
73 wxString GetWeightString(void) const;
74 bool GetUnderlined(void) const;
75
76 wxFont( char *xFontName );
868a2826
RR
77
78 // implementation
c801d85f 79
c33c4050 80 GdkFont* GetInternalFont(float scale = 1.0) const;
c801d85f
KB
81
82 // no data :-)
83};
84
85//-----------------------------------------------------------------------------
86// wxFontDirectory
87//-----------------------------------------------------------------------------
88
89class wxFontNameDirectory: public wxObject
90{
91 DECLARE_DYNAMIC_CLASS(wxFontNameDirectory)
92
93 public:
94 wxFontNameDirectory(void);
95 ~wxFontNameDirectory();
96
97 void Initialize(void);
98 void Initialize(int fontid, int family, const char *name);
99
100 int FindOrCreateFontId(const char *name, int family);
101 char* GetAFMName(int fontid, int weight, int style);
102 int GetFamily(int fontid);
103 int GetFontId(const char *name);
104 char* GetFontName(int fontid);
105 int GetNewFontId(void);
106 char* GetPostScriptName(int fontid, int weight, int style);
107 char* GetScreenName(int fontid, int weight, int style);
108
109
110 class wxHashTable *table;
111 int nextFontId;
112};
113
a3622daa 114extern wxFontNameDirectory *wxTheFontNameDirectory;
c801d85f
KB
115
116#endif // __GTKFONTH__