]> Pileus Git - ~andy/gtk/blob - gdk/gdkfont.h
Updated Bulgarian translation by Alexander Shopov <ash@contact.bg>
[~andy/gtk] / gdk / gdkfont.h
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) || defined(GTK_COMPILATION)
28
29 #ifndef __GDK_FONT_H__
30 #define __GDK_FONT_H__
31
32 #include <gdk/gdktypes.h>
33 #include <pango/pango-font.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 */