Ardour  8.7-14-g57a6773833
gtkfontsel.h
Go to the documentation of this file.
1 /* GTK - The GIMP Toolkit
2  * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
3  *
4  * GtkFontSelection widget for Gtk+, by Damon Chaplin, May 1998.
5  * Based on the GnomeFontSelector widget, by Elliot Lee, but major changes.
6  * The GnomeFontSelector was derived from app/text_tool.c in the GIMP.
7  *
8  * This library is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU Lesser General Public
10  * License as published by the Free Software Foundation; either
11  * version 2 of the License, or (at your option) any later version.
12  *
13  * This library is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16  * Lesser General Public License for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public
19  * License along with this library; if not, write to the
20  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
21  * Boston, MA 02111-1307, USA.
22  */
23 
24 /*
25  * Modified by the GTK+ Team and others 1997-2000. See the AUTHORS
26  * file for a list of people on the GTK+ Team. See the ChangeLog
27  * files for a list of changes. These files are distributed with
28  * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
29  */
30 
31 #ifndef __GTK_FONTSEL_H__
32 #define __GTK_FONTSEL_H__
33 
34 
35 #if defined(GTK_DISABLE_SINGLE_INCLUDES) && !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
36 #error "Only <gtk/gtk.h> can be included directly."
37 #endif
38 
39 #include <gtk/gtkdialog.h>
40 #include <gtk/gtkvbox.h>
41 
42 
43 G_BEGIN_DECLS
44 
45 #define GTK_TYPE_FONT_SELECTION (gtk_font_selection_get_type ())
46 #define GTK_FONT_SELECTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_FONT_SELECTION, GtkFontSelection))
47 #define GTK_FONT_SELECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_FONT_SELECTION, GtkFontSelectionClass))
48 #define GTK_IS_FONT_SELECTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_FONT_SELECTION))
49 #define GTK_IS_FONT_SELECTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_FONT_SELECTION))
50 #define GTK_FONT_SELECTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_FONT_SELECTION, GtkFontSelectionClass))
51 
52 
53 #define GTK_TYPE_FONT_SELECTION_DIALOG (gtk_font_selection_dialog_get_type ())
54 #define GTK_FONT_SELECTION_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_FONT_SELECTION_DIALOG, GtkFontSelectionDialog))
55 #define GTK_FONT_SELECTION_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_FONT_SELECTION_DIALOG, GtkFontSelectionDialogClass))
56 #define GTK_IS_FONT_SELECTION_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_FONT_SELECTION_DIALOG))
57 #define GTK_IS_FONT_SELECTION_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_FONT_SELECTION_DIALOG))
58 #define GTK_FONT_SELECTION_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_FONT_SELECTION_DIALOG, GtkFontSelectionDialogClass))
59 
60 
61 typedef struct _GtkFontSelection GtkFontSelection;
63 
66 
68 {
70 
71  GtkWidget *GSEAL (font_entry); /* Used _get_family_entry() for consistency, -mr */
72  GtkWidget *GSEAL (family_list);
73  GtkWidget *GSEAL (font_style_entry); /* Used _get_face_entry() for consistency, -mr */
74  GtkWidget *GSEAL (face_list);
75  GtkWidget *GSEAL (size_entry);
76  GtkWidget *GSEAL (size_list);
77  GtkWidget *GSEAL (pixels_button); /* Unused, -mr */
78  GtkWidget *GSEAL (points_button); /* Unused, -mr */
79  GtkWidget *GSEAL (filter_button); /* Unused, -mr */
80  GtkWidget *GSEAL (preview_entry);
81 
82  PangoFontFamily *GSEAL (family); /* Current family */
83  PangoFontFace *GSEAL (face); /* Current face */
84 
85  gint GSEAL (size);
86 
87  GdkFont *GSEAL (font); /* Cache for gdk_font_selection_get_font, so we can preserve
88  * refcounting behavior
89  */
90 };
91 
93 {
95 
96  /* Padding for future expansion */
97  void (*_gtk_reserved1) (void);
98  void (*_gtk_reserved2) (void);
99  void (*_gtk_reserved3) (void);
100  void (*_gtk_reserved4) (void);
101 };
102 
104 {
106 
107  /*< private >*/
108  GtkWidget *GSEAL (fontsel);
109 
110  GtkWidget *GSEAL (main_vbox); /* Not wrapped with an API, can use GTK_DIALOG->vbox instead, -mr */
111  GtkWidget *GSEAL (action_area); /* Not wrapped with an API, can use GTK_DIALOG->action_area instead, -mr */
112 
113  /*< public >*/
114  GtkWidget *GSEAL (ok_button);
115  GtkWidget *GSEAL (apply_button);
116  GtkWidget *GSEAL (cancel_button);
117 
118  /*< private >*/
119 
120  /* If the user changes the width of the dialog, we turn auto-shrink off.
121  * (Unused now, autoshrink doesn't mean anything anymore -Yosh)
122  */
123  gint GSEAL (dialog_width);
124  gboolean GSEAL (auto_resize);
125 };
126 
128 {
130 
131  /* Padding for future expansion */
132  void (*_gtk_reserved1) (void);
133  void (*_gtk_reserved2) (void);
134  void (*_gtk_reserved3) (void);
135  void (*_gtk_reserved4) (void);
136 };
137 
138 
139 
140 /*****************************************************************************
141  * GtkFontSelection functions.
142  * see the comments in the GtkFontSelectionDialog functions.
143  *****************************************************************************/
144 
145 GType gtk_font_selection_get_type (void) G_GNUC_CONST;
152 PangoFontFamily *
154 PangoFontFace *
158 
159 #ifndef GTK_DISABLE_DEPRECATED
161 #endif /* GTK_DISABLE_DEPRECATED */
162 
164  const gchar *fontname);
167  const gchar *text);
168 
169 /*****************************************************************************
170  * GtkFontSelectionDialog functions.
171  * most of these functions simply call the corresponding function in the
172  * GtkFontSelection.
173  *****************************************************************************/
174 
175 GType gtk_font_selection_dialog_get_type (void) G_GNUC_CONST;
177 
179 #ifndef GTK_DISABLE_DEPRECATED
181 #endif
184 
185 /* This returns the X Logical Font Description fontname, or NULL if no font
186  is selected. Note that there is a slight possibility that the font might not
187  have been loaded OK. You should call gtk_font_selection_dialog_get_font()
188  to see if it has been loaded OK.
189  You should g_free() the returned font name after you're done with it. */
191 
192 #ifndef GTK_DISABLE_DEPRECATED
193 /* This will return the current GdkFont, or NULL if none is selected or there
194  was a problem loading it. Remember to use gdk_font_ref/unref() if you want
195  to use the font (in a style, for example). */
197 #endif /* GTK_DISABLE_DEPRECATED */
198 
199 /* This sets the currently displayed font. It should be a valid X Logical
200  Font Description font name (anything else will be ignored), e.g.
201  "-adobe-courier-bold-o-normal--25-*-*-*-*-*-*-*"
202  It returns TRUE on success. */
204  const gchar *fontname);
205 
206 /* This returns the text in the preview entry. You should copy the returned
207  text if you need it. */
208 const gchar*
210 
211 /* This sets the text in the preview entry. It will be copied by the entry,
212  so there's no need to g_strdup() it first. */
214  const gchar *text);
215 
216 
217 G_END_DECLS
218 
219 
220 #endif /* __GTK_FONTSEL_H__ */
GtkWidget * gtk_font_selection_dialog_get_ok_button(GtkFontSelectionDialog *fsd)
gchar * gtk_font_selection_get_font_name(GtkFontSelection *fontsel)
PangoFontFace * gtk_font_selection_get_face(GtkFontSelection *fontsel)
PangoFontFamily * gtk_font_selection_get_family(GtkFontSelection *fontsel)
void gtk_font_selection_dialog_set_preview_text(GtkFontSelectionDialog *fsd, const gchar *text)
GtkWidget * gtk_font_selection_get_face_list(GtkFontSelection *fontsel)
GtkWidget * gtk_font_selection_dialog_get_apply_button(GtkFontSelectionDialog *fsd)
GtkWidget * gtk_font_selection_get_size_entry(GtkFontSelection *fontsel)
const gchar * gtk_font_selection_dialog_get_preview_text(GtkFontSelectionDialog *fsd)
GtkWidget * gtk_font_selection_dialog_get_cancel_button(GtkFontSelectionDialog *fsd)
GtkWidget * gtk_font_selection_new(void)
GdkFont * gtk_font_selection_dialog_get_font(GtkFontSelectionDialog *fsd)
GtkWidget * gtk_font_selection_dialog_get_font_selection(GtkFontSelectionDialog *fsd)
gint gtk_font_selection_get_size(GtkFontSelection *fontsel)
gboolean gtk_font_selection_set_font_name(GtkFontSelection *fontsel, const gchar *fontname)
GtkWidget * gtk_font_selection_get_size_list(GtkFontSelection *fontsel)
const gchar * gtk_font_selection_get_preview_text(GtkFontSelection *fontsel)
GtkWidget * gtk_font_selection_get_preview_entry(GtkFontSelection *fontsel)
GtkWidget * gtk_font_selection_dialog_new(const gchar *title)
gchar * gtk_font_selection_dialog_get_font_name(GtkFontSelectionDialog *fsd)
GtkWidget * gtk_font_selection_get_family_list(GtkFontSelection *fontsel)
GdkFont * gtk_font_selection_get_font(GtkFontSelection *fontsel)
GType gtk_font_selection_get_type(void) G_GNUC_CONST
GType gtk_font_selection_dialog_get_type(void) G_GNUC_CONST
gboolean gtk_font_selection_dialog_set_font_name(GtkFontSelectionDialog *fsd, const gchar *fontname)
void gtk_font_selection_set_preview_text(GtkFontSelection *fontsel, const gchar *text)
void(* _gtk_reserved4)(void)
Definition: gtkfontsel.h:100
void(* _gtk_reserved3)(void)
Definition: gtkfontsel.h:99
void(* _gtk_reserved1)(void)
Definition: gtkfontsel.h:97
void(* _gtk_reserved2)(void)
Definition: gtkfontsel.h:98
GtkVBoxClass parent_class
Definition: gtkfontsel.h:94
GtkDialogClass parent_class
Definition: gtkfontsel.h:129
void(* _gtk_reserved2)(void)
Definition: gtkfontsel.h:133
void(* _gtk_reserved3)(void)
Definition: gtkfontsel.h:134
void(* _gtk_reserved1)(void)
Definition: gtkfontsel.h:132
void(* _gtk_reserved4)(void)
Definition: gtkfontsel.h:135
GtkWidget * GSEAL(main_vbox)
GtkWidget * GSEAL(fontsel)
GtkWidget * GSEAL(action_area)
GtkWidget * GSEAL(cancel_button)
GtkWidget * GSEAL(apply_button)
gboolean GSEAL(auto_resize)
GtkWidget * GSEAL(ok_button)
gint GSEAL(dialog_width)
GtkWidget * GSEAL(filter_button)
PangoFontFamily * GSEAL(family)
GtkWidget * GSEAL(size_entry)
GtkWidget * GSEAL(family_list)
GtkWidget * GSEAL(font_entry)
GtkWidget * GSEAL(face_list)
GtkWidget * GSEAL(font_style_entry)
GtkWidget * GSEAL(preview_entry)
GtkWidget * GSEAL(pixels_button)
GdkFont * GSEAL(font)
GtkWidget * GSEAL(size_list)
GtkWidget * GSEAL(points_button)
GtkVBox parent_instance
Definition: gtkfontsel.h:69
gint GSEAL(size)
PangoFontFace * GSEAL(face)