1 /* GTK - The GIMP Toolkit 2 * Copyright (C) 2011 Benjamin Otte <otte@gnome.org> 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, see <http://www.gnu.org/licenses/>. 16 */ 17 18 #ifndef __GTK_STYLE_PROVIDER_PRIVATE_H__ 19 #define __GTK_STYLE_PROVIDER_PRIVATE_H__ 20 21 #include <glib-object.h> 22 #include "gtk/gtkcsskeyframesprivate.h" 23 #include "gtk/gtkcsslookupprivate.h" 24 #include "gtk/gtkcssmatcherprivate.h" 25 #include "gtk/gtkcssvalueprivate.h" 26 #include <gtk/gtktypes.h> 27 28 G_BEGIN_DECLS 29 30 #define GTK_TYPE_STYLE_PROVIDER_PRIVATE (_gtk_style_provider_private_get_type ()) 31 #define GTK_STYLE_PROVIDER_PRIVATE(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GTK_TYPE_STYLE_PROVIDER_PRIVATE, GtkStyleProviderPrivate)) 32 #define GTK_IS_STYLE_PROVIDER_PRIVATE(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), GTK_TYPE_STYLE_PROVIDER_PRIVATE)) 33 #define GTK_STYLE_PROVIDER_PRIVATE_GET_INTERFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), GTK_TYPE_STYLE_PROVIDER_PRIVATE, GtkStyleProviderPrivateInterface)) 34 35 typedef struct _GtkStyleProviderPrivateInterface GtkStyleProviderPrivateInterface; 36 /* typedef struct _GtkStyleProviderPrivate GtkStyleProviderPrivate; */ /* dummy typedef */ 37 38 struct _GtkStyleProviderPrivateInterface 39 { 40 GTypeInterface g_iface; 41 42 GtkCssValue * (* get_color) (GtkStyleProviderPrivate *provider, 43 const char *name); 44 GtkSettings * (* get_settings) (GtkStyleProviderPrivate *provider); 45 GtkCssKeyframes * (* get_keyframes) (GtkStyleProviderPrivate *provider, 46 const char *name); 47 int (* get_scale) (GtkStyleProviderPrivate *provider); 48 void (* lookup) (GtkStyleProviderPrivate *provider, 49 const GtkCssMatcher *matcher, 50 GtkCssLookup *lookup, 51 GtkCssChange *out_change); 52 void (* emit_error) (GtkStyleProviderPrivate *provider, 53 GtkCssSection *section, 54 const GError *error); 55 /* signal */ 56 void (* changed) (GtkStyleProviderPrivate *provider); 57 }; 58 59 GType _gtk_style_provider_private_get_type (void) G_GNUC_CONST; 60 61 GtkSettings * _gtk_style_provider_private_get_settings (GtkStyleProviderPrivate *provider); 62 GtkCssValue * _gtk_style_provider_private_get_color (GtkStyleProviderPrivate *provider, 63 const char *name); 64 GtkCssKeyframes * _gtk_style_provider_private_get_keyframes(GtkStyleProviderPrivate *provider, 65 const char *name); 66 int _gtk_style_provider_private_get_scale (GtkStyleProviderPrivate *provider); 67 void _gtk_style_provider_private_lookup (GtkStyleProviderPrivate *provider, 68 const GtkCssMatcher *matcher, 69 GtkCssLookup *lookup, 70 GtkCssChange *out_change); 71 72 void _gtk_style_provider_private_changed (GtkStyleProviderPrivate *provider); 73 74 void _gtk_style_provider_private_emit_error (GtkStyleProviderPrivate *provider, 75 GtkCssSection *section, 76 GError *error); 77 78 G_END_DECLS 79 80 #endif /* __GTK_STYLE_PROVIDER_PRIVATE_H__ */ 81