X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=gtk%2Fgtkcssimageprivate.h;h=f9e4e41b75c62a56c11dd3f51c36d67151b797d5;hb=cc75ebec15d8fddbd0485e1b82a3c6c9e71f8a64;hp=e14387ba3b78021dd0f48f47d357153de3eb91da;hpb=9b4ed662181cabde506248cf8b344420a0300a3e;p=~andy%2Fgtk diff --git a/gtk/gtkcssimageprivate.h b/gtk/gtkcssimageprivate.h index e14387ba3..f9e4e41b7 100644 --- a/gtk/gtkcssimageprivate.h +++ b/gtk/gtkcssimageprivate.h @@ -23,8 +23,8 @@ #include #include -#include "gtk/gtkstylecontext.h" #include "gtk/gtkcssparserprivate.h" +#include "gtk/gtkcsstypesprivate.h" G_BEGIN_DECLS @@ -48,62 +48,82 @@ struct _GtkCssImageClass GObjectClass parent_class; /* width of image or 0 if it has no width (optional) */ - int (* get_width) (GtkCssImage *image); + int (* get_width) (GtkCssImage *image); /* height of image or 0 if it has no height (optional) */ - int (* get_height) (GtkCssImage *image); + int (* get_height) (GtkCssImage *image); /* aspect ratio (width / height) of image or 0 if it has no aspect ratio (optional) */ - double (* get_aspect_ratio) (GtkCssImage *image); + double (* get_aspect_ratio) (GtkCssImage *image); /* create "computed value" in CSS terms, returns a new reference */ - GtkCssImage *(* compute) (GtkCssImage *image, - guint property_id, - GtkStyleContext *context); + GtkCssImage *(* compute) (GtkCssImage *image, + guint property_id, + GtkStyleProviderPrivate *provider, + GtkCssComputedValues *values, + GtkCssComputedValues *parent_values, + GtkCssDependencies *dependencies); + /* compare two images for equality */ + gboolean (* equal) (GtkCssImage *image1, + GtkCssImage *image2); + /* transition between start and end image (end may be NULL), returns new reference */ + GtkCssImage *(* transition) (GtkCssImage *start, + GtkCssImage *end, + guint property_id, + double progress); /* draw to 0,0 with the given width and height */ - void (* draw) (GtkCssImage *image, - cairo_t *cr, - double width, - double height); + void (* draw) (GtkCssImage *image, + cairo_t *cr, + double width, + double height); /* parse CSS, return TRUE on success */ - gboolean (* parse) (GtkCssImage *image, - GtkCssParser *parser); + gboolean (* parse) (GtkCssImage *image, + GtkCssParser *parser); /* print to CSS */ - void (* print) (GtkCssImage *image, - GString *string); + void (* print) (GtkCssImage *image, + GString *string); }; GType _gtk_css_image_get_type (void) G_GNUC_CONST; -gboolean _gtk_css_image_can_parse (GtkCssParser *parser); -GtkCssImage * _gtk_css_image_new_parse (GtkCssParser *parser); - -int _gtk_css_image_get_width (GtkCssImage *image); -int _gtk_css_image_get_height (GtkCssImage *image); -double _gtk_css_image_get_aspect_ratio (GtkCssImage *image); - -GtkCssImage * _gtk_css_image_compute (GtkCssImage *image, - guint property_id, - GtkStyleContext *context); - -void _gtk_css_image_draw (GtkCssImage *image, - cairo_t *cr, - double width, - double height); -void _gtk_css_image_print (GtkCssImage *image, - GString *string); - -void _gtk_css_image_get_concrete_size (GtkCssImage *image, - double specified_width, - double specified_height, - double default_width, - double default_height, - double *concrete_width, - double *concrete_height); +gboolean _gtk_css_image_can_parse (GtkCssParser *parser); +GtkCssImage * _gtk_css_image_new_parse (GtkCssParser *parser); + +int _gtk_css_image_get_width (GtkCssImage *image); +int _gtk_css_image_get_height (GtkCssImage *image); +double _gtk_css_image_get_aspect_ratio (GtkCssImage *image); + +GtkCssImage * _gtk_css_image_compute (GtkCssImage *image, + guint property_id, + GtkStyleProviderPrivate *provider, + GtkCssComputedValues *values, + GtkCssComputedValues *parent_values, + GtkCssDependencies *dependencies); +gboolean _gtk_css_image_equal (GtkCssImage *image1, + GtkCssImage *image2); +GtkCssImage * _gtk_css_image_transition (GtkCssImage *start, + GtkCssImage *end, + guint property_id, + double progress); + +void _gtk_css_image_draw (GtkCssImage *image, + cairo_t *cr, + double width, + double height); +void _gtk_css_image_print (GtkCssImage *image, + GString *string); + +void _gtk_css_image_get_concrete_size (GtkCssImage *image, + double specified_width, + double specified_height, + double default_width, + double default_height, + double *concrete_width, + double *concrete_height); cairo_surface_t * - _gtk_css_image_get_surface (GtkCssImage *image, - cairo_surface_t *target, - int surface_width, - int surface_height); + _gtk_css_image_get_surface (GtkCssImage *image, + cairo_surface_t *target, + int surface_width, + int surface_height); G_END_DECLS