1 /* 2 * Copyright © 2015 Red Hat Inc. 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.1 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, see <http://www.gnu.org/licenses/>. 16 * 17 * Authors: Benjamin Otte <otte@gnome.org> 18 */ 19 20 #ifndef __GTK_BUILTIN_ICON_PRIVATE_H__ 21 #define __GTK_BUILTIN_ICON_PRIVATE_H__ 22 23 #include "gtk/gtkcssgadgetprivate.h" 24 25 G_BEGIN_DECLS 26 27 #define GTK_TYPE_BUILTIN_ICON (gtk_builtin_icon_get_type ()) 28 #define GTK_BUILTIN_ICON(obj) (G_TYPE_CHECK_INSTANCE_CAST (obj, GTK_TYPE_BUILTIN_ICON, GtkBuiltinIcon)) 29 #define GTK_BUILTIN_ICON_CLASS(cls) (G_TYPE_CHECK_CLASS_CAST (cls, GTK_TYPE_BUILTIN_ICON, GtkBuiltinIconClass)) 30 #define GTK_IS_BUILTIN_ICON(obj) (G_TYPE_CHECK_INSTANCE_TYPE (obj, GTK_TYPE_BUILTIN_ICON)) 31 #define GTK_IS_BUILTIN_ICON_CLASS(obj) (G_TYPE_CHECK_CLASS_TYPE (obj, GTK_TYPE_BUILTIN_ICON)) 32 #define GTK_BUILTIN_ICON_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_BUILTIN_ICON, GtkBuiltinIconClass)) 33 34 typedef struct _GtkBuiltinIcon GtkBuiltinIcon; 35 typedef struct _GtkBuiltinIconClass GtkBuiltinIconClass; 36 37 struct _GtkBuiltinIcon 38 { 39 GtkCssGadget parent; 40 }; 41 42 struct _GtkBuiltinIconClass 43 { 44 GtkCssGadgetClass parent_class; 45 }; 46 47 GType gtk_builtin_icon_get_type (void) G_GNUC_CONST; 48 49 GtkCssGadget * gtk_builtin_icon_new (const char *name, 50 GtkWidget *owner, 51 GtkCssGadget *parent, 52 GtkCssGadget *next_sibling); 53 GtkCssGadget * gtk_builtin_icon_new_for_node (GtkCssNode *node, 54 GtkWidget *owner); 55 56 void gtk_builtin_icon_set_image (GtkBuiltinIcon *icon, 57 GtkCssImageBuiltinType image); 58 GtkCssImageBuiltinType gtk_builtin_icon_get_image (GtkBuiltinIcon *icon); 59 void gtk_builtin_icon_set_default_size (GtkBuiltinIcon *icon, 60 int default_size); 61 int gtk_builtin_icon_get_default_size (GtkBuiltinIcon *icon); 62 void gtk_builtin_icon_set_default_size_property (GtkBuiltinIcon *icon, 63 const char *property_name); 64 const char * gtk_builtin_icon_get_default_size_property (GtkBuiltinIcon *icon); 65 66 G_END_DECLS 67 68 #endif /* __GTK_BUILTIN_ICON_PRIVATE_H__ */ 69