1 /* GTK - The GIMP Toolkit 2 * Copyright (C) 1998 David Abilleira Freijeiro <odaf@nexo.es> 3 * All rights reserved 4 * Based on gnome-color-picker by Federico Mena <federico@nuclecu.unam.mx> 5 * 6 * This library is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU Library General Public 8 * License as published by the Free Software Foundation; either 9 * version 2 of the License, or (at your option) any later version. 10 * 11 * This library is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * Library General Public License for more details. 15 * 16 * You should have received a copy of the GNU Library General Public 17 * License along with this library; if not, write to the Free Software 18 * Foundation, Inc., 59 Temple Place - Suite 330, Cambridge, MA 02139, USA. 19 */ 20 /* 21 * Modified by the GTK+ Team and others 2003. 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 #ifndef __GTK_FONT_BUTTON_H__ 28 #define __GTK_FONT_BUTTON_H__ 29 30 #if defined(GTK_DISABLE_SINGLE_INCLUDES) && !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION) 31 #error "Only <gtk/gtk.h> can be included directly." 32 #endif 33 34 #include <gtk/gtkbutton.h> 35 36 37 G_BEGIN_DECLS 38 39 /* GtkFontButton is a button widget that allow user to select a font. 40 */ 41 42 #define GTK_TYPE_FONT_BUTTON (gtk_font_button_get_type ()) 43 #define GTK_FONT_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_FONT_BUTTON, GtkFontButton)) 44 #define GTK_FONT_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_FONT_BUTTON, GtkFontButtonClass)) 45 #define GTK_IS_FONT_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_FONT_BUTTON)) 46 #define GTK_IS_FONT_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_FONT_BUTTON)) 47 #define GTK_FONT_BUTTON_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_FONT_BUTTON, GtkFontButtonClass)) 48 49 typedef struct _GtkFontButton GtkFontButton; 50 typedef struct _GtkFontButtonClass GtkFontButtonClass; 51 typedef struct _GtkFontButtonPrivate GtkFontButtonPrivate; 52 53 struct _GtkFontButton { 54 GtkButton button; 55 56 /*< private >*/ 57 GtkFontButtonPrivate *GSEAL (priv); 58 }; 59 60 struct _GtkFontButtonClass { 61 GtkButtonClass parent_class; 62 63 /* font_set signal is emitted when font is chosen */ 64 void (* font_set) (GtkFontButton *gfp); 65 66 /* Padding for future expansion */ 67 void (*_gtk_reserved1) (void); 68 void (*_gtk_reserved2) (void); 69 void (*_gtk_reserved3) (void); 70 void (*_gtk_reserved4) (void); 71 }; 72 73 74 GType gtk_font_button_get_type (void) G_GNUC_CONST; 75 GtkWidget *gtk_font_button_new (void); 76 GtkWidget *gtk_font_button_new_with_font (const gchar *fontname); 77 78 const gchar * gtk_font_button_get_title (GtkFontButton *font_button); 79 void gtk_font_button_set_title (GtkFontButton *font_button, 80 const gchar *title); 81 gboolean gtk_font_button_get_use_font (GtkFontButton *font_button); 82 void gtk_font_button_set_use_font (GtkFontButton *font_button, 83 gboolean use_font); 84 gboolean gtk_font_button_get_use_size (GtkFontButton *font_button); 85 void gtk_font_button_set_use_size (GtkFontButton *font_button, 86 gboolean use_size); 87 const gchar * gtk_font_button_get_font_name (GtkFontButton *font_button); 88 gboolean gtk_font_button_set_font_name (GtkFontButton *font_button, 89 const gchar *fontname); 90 gboolean gtk_font_button_get_show_style (GtkFontButton *font_button); 91 void gtk_font_button_set_show_style (GtkFontButton *font_button, 92 gboolean show_style); 93 gboolean gtk_font_button_get_show_size (GtkFontButton *font_button); 94 void gtk_font_button_set_show_size (GtkFontButton *font_button, 95 gboolean show_size); 96 97 G_END_DECLS 98 99 100 #endif /* __GTK_FONT_BUTTON_H__ */ 101