1 | /* GDK - The GIMP Drawing Kit |
2 | * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald |
3 | * |
4 | * This library is free software; you can redistribute it and/or |
5 | * modify it under the terms of the GNU Lesser General Public |
6 | * License as published by the Free Software Foundation; either |
7 | * version 2 of the License, or (at your option) any later version. |
8 | * |
9 | * This library is distributed in the hope that it will be useful, |
10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
12 | * Lesser General Public License for more details. |
13 | * |
14 | * You should have received a copy of the GNU Lesser General Public |
15 | * License along with this library; if not, write to the |
16 | * Free Software Foundation, Inc., 59 Temple Place - Suite 330, |
17 | * Boston, MA 02111-1307, USA. |
18 | */ |
19 | |
20 | /* |
21 | * Modified by the GTK+ Team and others 1997-2000. See the AUTHORS |
22 | * file for a list of people on the GTK+ Team. See the ChangeLog |
23 | * files for a list of changes. These files are distributed with |
24 | * GTK+ at ftp://ftp.gtk.org/pub/gtk/. |
25 | */ |
26 | |
27 | #if !defined(GDK_DISABLE_DEPRECATED) || defined(GDK_COMPILATION) |
28 | |
29 | #ifndef __GDK_FONT_H__ |
30 | #define __GDK_FONT_H__ |
31 | |
32 | #include <gdk/gdktypes.h> |
33 | #include <pango/pango.h> |
34 | |
35 | G_BEGIN_DECLS |
36 | |
37 | #define GDK_TYPE_FONT gdk_font_get_type () |
38 | |
39 | /* Types of font. |
40 | * GDK_FONT_FONT: the font is an XFontStruct. |
41 | * GDK_FONT_FONTSET: the font is an XFontSet used for I18N. |
42 | */ |
43 | typedef enum |
44 | { |
45 | GDK_FONT_FONT, |
46 | GDK_FONT_FONTSET |
47 | } GdkFontType; |
48 | |
49 | struct _GdkFont |
50 | { |
51 | GdkFontType type; |
52 | gint ascent; |
53 | gint descent; |
54 | }; |
55 | |
56 | GType gdk_font_get_type (void) G_GNUC_CONST; |
57 | |
58 | GdkFont* gdk_font_ref (GdkFont *font); |
59 | void gdk_font_unref (GdkFont *font); |
60 | gint gdk_font_id (const GdkFont *font); |
61 | gboolean gdk_font_equal (const GdkFont *fonta, |
62 | const GdkFont *fontb); |
63 | |
64 | GdkFont *gdk_font_load_for_display (GdkDisplay *display, |
65 | const gchar *font_name); |
66 | GdkFont *gdk_fontset_load_for_display (GdkDisplay *display, |
67 | const gchar *fontset_name); |
68 | GdkFont *gdk_font_from_description_for_display (GdkDisplay *display, |
69 | PangoFontDescription *font_desc); |
70 | |
71 | #ifndef GDK_DISABLE_DEPRECATED |
72 | |
73 | #ifndef GDK_MULTIHEAD_SAFE |
74 | GdkFont* gdk_font_load (const gchar *font_name); |
75 | GdkFont* gdk_fontset_load (const gchar *fontset_name); |
76 | GdkFont* gdk_font_from_description (PangoFontDescription *font_desc); |
77 | #endif |
78 | |
79 | gint gdk_string_width (GdkFont *font, |
80 | const gchar *string); |
81 | gint gdk_text_width (GdkFont *font, |
82 | const gchar *text, |
83 | gint text_length); |
84 | gint gdk_text_width_wc (GdkFont *font, |
85 | const GdkWChar *text, |
86 | gint text_length); |
87 | gint gdk_char_width (GdkFont *font, |
88 | gchar character); |
89 | gint gdk_char_width_wc (GdkFont *font, |
90 | GdkWChar character); |
91 | gint gdk_string_measure (GdkFont *font, |
92 | const gchar *string); |
93 | gint gdk_text_measure (GdkFont *font, |
94 | const gchar *text, |
95 | gint text_length); |
96 | gint gdk_char_measure (GdkFont *font, |
97 | gchar character); |
98 | gint gdk_string_height (GdkFont *font, |
99 | const gchar *string); |
100 | gint gdk_text_height (GdkFont *font, |
101 | const gchar *text, |
102 | gint text_length); |
103 | gint gdk_char_height (GdkFont *font, |
104 | gchar character); |
105 | |
106 | void gdk_text_extents (GdkFont *font, |
107 | const gchar *text, |
108 | gint text_length, |
109 | gint *lbearing, |
110 | gint *rbearing, |
111 | gint *width, |
112 | gint *ascent, |
113 | gint *descent); |
114 | void gdk_text_extents_wc (GdkFont *font, |
115 | const GdkWChar *text, |
116 | gint text_length, |
117 | gint *lbearing, |
118 | gint *rbearing, |
119 | gint *width, |
120 | gint *ascent, |
121 | gint *descent); |
122 | void gdk_string_extents (GdkFont *font, |
123 | const gchar *string, |
124 | gint *lbearing, |
125 | gint *rbearing, |
126 | gint *width, |
127 | gint *ascent, |
128 | gint *descent); |
129 | |
130 | GdkDisplay * gdk_font_get_display (GdkFont *font); |
131 | |
132 | #endif /* GDK_DISABLE_DEPRECATED */ |
133 | |
134 | G_END_DECLS |
135 | |
136 | #endif /* __GDK_FONT_H__ */ |
137 | |
138 | #endif /* !GDK_DISABLE_DEPRECATED || GDK_COMPILATION || GTK_COMPILATION */ |
139 | |