mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-09-21 14:24:19 +00:00
iconhelper: Turn into a GObject
This commit is contained in:
parent
3427639b08
commit
2016f56176
@ -417,18 +417,20 @@ gtk_cell_renderer_pixbuf_new (void)
|
||||
return g_object_new (GTK_TYPE_CELL_RENDERER_PIXBUF, NULL);
|
||||
}
|
||||
|
||||
static void
|
||||
create_icon_helper (GtkIconHelper *icon_helper,
|
||||
static GtkIconHelper *
|
||||
create_icon_helper (
|
||||
GtkCellRendererPixbuf *cellpixbuf,
|
||||
GtkWidget *widget)
|
||||
{
|
||||
GtkCellRendererPixbufPrivate *priv = cellpixbuf->priv;
|
||||
GtkIconHelper *icon_helper;
|
||||
|
||||
gtk_icon_helper_init (icon_helper,
|
||||
gtk_style_context_get_node (gtk_widget_get_style_context (widget)),
|
||||
widget);
|
||||
icon_helper = gtk_icon_helper_new (gtk_style_context_get_node (gtk_widget_get_style_context (widget)),
|
||||
widget);
|
||||
_gtk_icon_helper_set_force_scale_pixbuf (icon_helper, TRUE);
|
||||
_gtk_icon_helper_set_definition (icon_helper, priv->image_def);
|
||||
|
||||
return icon_helper;
|
||||
}
|
||||
|
||||
static void
|
||||
@ -448,19 +450,19 @@ gtk_cell_renderer_pixbuf_get_size (GtkCellRenderer *cell,
|
||||
gint calc_height;
|
||||
gint xpad, ypad;
|
||||
GtkStyleContext *context;
|
||||
GtkIconHelper icon_helper;
|
||||
GtkIconHelper *icon_helper;
|
||||
|
||||
context = gtk_widget_get_style_context (widget);
|
||||
gtk_style_context_save (context);
|
||||
gtk_style_context_add_class (context, GTK_STYLE_CLASS_IMAGE);
|
||||
gtk_icon_size_set_style_classes (gtk_style_context_get_node (context), priv->icon_size);
|
||||
create_icon_helper (&icon_helper, cellpixbuf, widget);
|
||||
icon_helper = create_icon_helper (cellpixbuf, widget);
|
||||
|
||||
if (!_gtk_icon_helper_get_is_empty (&icon_helper))
|
||||
_gtk_icon_helper_get_size (&icon_helper,
|
||||
if (!_gtk_icon_helper_get_is_empty (icon_helper))
|
||||
_gtk_icon_helper_get_size (icon_helper,
|
||||
&pixbuf_width, &pixbuf_height);
|
||||
|
||||
gtk_icon_helper_destroy (&icon_helper);
|
||||
g_object_unref (icon_helper);
|
||||
gtk_style_context_restore (context);
|
||||
|
||||
if (priv->pixbuf_expander_open)
|
||||
@ -526,7 +528,7 @@ gtk_cell_renderer_pixbuf_snapshot (GtkCellRenderer *cell,
|
||||
GdkRectangle draw_rect;
|
||||
gboolean is_expander;
|
||||
gint xpad, ypad;
|
||||
GtkIconHelper icon_helper;
|
||||
GtkIconHelper *icon_helper;
|
||||
cairo_surface_t *surface;
|
||||
|
||||
gtk_cell_renderer_pixbuf_get_size (cell, widget, (GdkRectangle *) cell_area,
|
||||
@ -559,32 +561,32 @@ gtk_cell_renderer_pixbuf_snapshot (GtkCellRenderer *cell,
|
||||
|
||||
if (is_expanded && priv->pixbuf_expander_open != NULL)
|
||||
{
|
||||
gtk_icon_helper_init (&icon_helper, gtk_style_context_get_node (context), widget);
|
||||
icon_helper = gtk_icon_helper_new (gtk_style_context_get_node (context), widget);
|
||||
surface = gdk_cairo_surface_create_from_pixbuf (priv->pixbuf_expander_open, 1, NULL);
|
||||
_gtk_icon_helper_set_surface (&icon_helper, surface);
|
||||
_gtk_icon_helper_set_surface (icon_helper, surface);
|
||||
cairo_surface_destroy (surface);
|
||||
}
|
||||
else if (!is_expanded && priv->pixbuf_expander_closed != NULL)
|
||||
{
|
||||
gtk_icon_helper_init (&icon_helper, gtk_style_context_get_node (context), widget);
|
||||
icon_helper = gtk_icon_helper_new (gtk_style_context_get_node (context), widget);
|
||||
surface = gdk_cairo_surface_create_from_pixbuf (priv->pixbuf_expander_closed, 1, NULL);
|
||||
_gtk_icon_helper_set_surface (&icon_helper, surface);
|
||||
_gtk_icon_helper_set_surface (icon_helper, surface);
|
||||
cairo_surface_destroy (surface);
|
||||
}
|
||||
else
|
||||
{
|
||||
create_icon_helper (&icon_helper, cellpixbuf, widget);
|
||||
icon_helper = create_icon_helper (cellpixbuf, widget);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
create_icon_helper (&icon_helper, cellpixbuf, widget);
|
||||
icon_helper = create_icon_helper (cellpixbuf, widget);
|
||||
}
|
||||
|
||||
gtk_snapshot_offset (snapshot, pix_rect.x, pix_rect.y);
|
||||
gtk_icon_helper_snapshot (&icon_helper, snapshot, pix_rect.width, pix_rect.height);
|
||||
gtk_icon_helper_snapshot (icon_helper, snapshot, pix_rect.width, pix_rect.height);
|
||||
gtk_snapshot_offset (snapshot, - pix_rect.x, - pix_rect.y);
|
||||
|
||||
gtk_icon_helper_destroy (&icon_helper);
|
||||
g_object_unref (icon_helper);
|
||||
gtk_style_context_restore (context);
|
||||
}
|
||||
|
@ -35,6 +35,26 @@
|
||||
#include "gtksnapshot.h"
|
||||
#include "gtkwidgetprivate.h"
|
||||
|
||||
struct _GtkIconHelper
|
||||
{
|
||||
GObject parent_instance;
|
||||
|
||||
GtkImageDefinition *def;
|
||||
|
||||
gint pixel_size;
|
||||
|
||||
guint use_fallback : 1;
|
||||
guint force_scale_pixbuf : 1;
|
||||
guint texture_is_symbolic : 1;
|
||||
|
||||
GtkWidget *owner;
|
||||
GtkCssNode *node;
|
||||
GdkPaintable *paintable;
|
||||
int texture_scale;
|
||||
};
|
||||
|
||||
G_DEFINE_TYPE (GtkIconHelper, gtk_icon_helper, G_TYPE_OBJECT)
|
||||
|
||||
void
|
||||
gtk_icon_helper_invalidate (GtkIconHelper *self)
|
||||
{
|
||||
@ -98,21 +118,39 @@ _gtk_icon_helper_clear (GtkIconHelper *self)
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
gtk_icon_helper_destroy (GtkIconHelper *self)
|
||||
static void
|
||||
gtk_icon_helper_finalize (GObject *object)
|
||||
{
|
||||
GtkIconHelper *self = GTK_ICON_HELPER (object);
|
||||
|
||||
_gtk_icon_helper_clear (self);
|
||||
g_signal_handlers_disconnect_by_func (self->owner, G_CALLBACK (gtk_icon_helper_invalidate), self);
|
||||
gtk_image_definition_unref (self->def);
|
||||
|
||||
G_OBJECT_CLASS (gtk_icon_helper_parent_class)->finalize (object);
|
||||
}
|
||||
|
||||
void
|
||||
gtk_icon_helper_init (GtkIconHelper *self,
|
||||
GtkCssNode *css_node,
|
||||
GtkWidget *owner)
|
||||
gtk_icon_helper_class_init (GtkIconHelperClass *klass)
|
||||
{
|
||||
GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
|
||||
|
||||
gobject_class->finalize = gtk_icon_helper_finalize;
|
||||
}
|
||||
|
||||
void
|
||||
gtk_icon_helper_init (GtkIconHelper *self)
|
||||
{
|
||||
memset (self, 0, sizeof (GtkIconHelper));
|
||||
self->def = gtk_image_definition_new_empty ();
|
||||
}
|
||||
|
||||
GtkIconHelper *
|
||||
gtk_icon_helper_new (GtkCssNode *css_node,
|
||||
GtkWidget *owner)
|
||||
{
|
||||
GtkIconHelper *self;
|
||||
|
||||
self = g_object_new (GTK_TYPE_ICON_HELPER, NULL);
|
||||
|
||||
self->pixel_size = -1;
|
||||
self->texture_is_symbolic = FALSE;
|
||||
@ -121,6 +159,8 @@ gtk_icon_helper_init (GtkIconHelper *self,
|
||||
self->owner = owner;
|
||||
g_signal_connect_swapped (owner, "direction-changed", G_CALLBACK (gtk_icon_helper_invalidate), self);
|
||||
g_signal_connect_swapped (owner, "notify::scale-factor", G_CALLBACK (gtk_icon_helper_invalidate), self);
|
||||
|
||||
return self;
|
||||
}
|
||||
|
||||
static int
|
||||
|
@ -28,31 +28,12 @@
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
typedef struct _GtkIconHelper GtkIconHelper;
|
||||
#define GTK_TYPE_ICON_HELPER (gtk_icon_helper_get_type())
|
||||
|
||||
struct _GtkIconHelper
|
||||
{
|
||||
GObject parent_instance;
|
||||
G_DECLARE_FINAL_TYPE(GtkIconHelper, gtk_icon_helper, GTK, ICON_HELPER, GObject)
|
||||
|
||||
GtkImageDefinition *def;
|
||||
|
||||
gint pixel_size;
|
||||
|
||||
guint use_fallback : 1;
|
||||
guint force_scale_pixbuf : 1;
|
||||
guint texture_is_symbolic : 1;
|
||||
|
||||
GtkWidget *owner;
|
||||
GtkCssNode *node;
|
||||
GdkPaintable *paintable;
|
||||
int texture_scale;
|
||||
};
|
||||
|
||||
void gtk_icon_helper_init (GtkIconHelper *self,
|
||||
GtkCssNode *css_node,
|
||||
GtkWidget *owner);
|
||||
|
||||
void gtk_icon_helper_destroy (GtkIconHelper *self);
|
||||
GtkIconHelper *gtk_icon_helper_new (GtkCssNode *css_node,
|
||||
GtkWidget *owner);
|
||||
|
||||
void _gtk_icon_helper_clear (GtkIconHelper *self);
|
||||
|
||||
|
@ -78,7 +78,7 @@
|
||||
|
||||
struct _GtkImagePrivate
|
||||
{
|
||||
GtkIconHelper icon_helper;
|
||||
GtkIconHelper *icon_helper;
|
||||
GtkIconSize icon_size;
|
||||
|
||||
float baseline_align;
|
||||
@ -283,7 +283,7 @@ gtk_image_init (GtkImage *image)
|
||||
widget_node = gtk_widget_get_css_node (GTK_WIDGET (image));
|
||||
gtk_widget_set_has_window (GTK_WIDGET (image), FALSE);
|
||||
|
||||
gtk_icon_helper_init (&priv->icon_helper, widget_node, GTK_WIDGET (image));
|
||||
priv->icon_helper = gtk_icon_helper_new (widget_node, GTK_WIDGET (image));
|
||||
}
|
||||
|
||||
static void
|
||||
@ -294,7 +294,7 @@ gtk_image_finalize (GObject *object)
|
||||
|
||||
gtk_image_clear (image);
|
||||
|
||||
gtk_icon_helper_destroy (&priv->icon_helper);
|
||||
g_clear_object (&priv->icon_helper);
|
||||
|
||||
g_free (priv->filename);
|
||||
g_free (priv->resource_path);
|
||||
@ -342,7 +342,7 @@ gtk_image_set_property (GObject *object,
|
||||
break;
|
||||
|
||||
case PROP_USE_FALLBACK:
|
||||
if (_gtk_icon_helper_set_use_fallback (&priv->icon_helper, g_value_get_boolean (value)))
|
||||
if (_gtk_icon_helper_set_use_fallback (priv->icon_helper, g_value_get_boolean (value)))
|
||||
g_object_notify_by_pspec (object, pspec);
|
||||
break;
|
||||
|
||||
@ -364,13 +364,13 @@ gtk_image_get_property (GObject *object,
|
||||
switch (prop_id)
|
||||
{
|
||||
case PROP_SURFACE:
|
||||
g_value_set_boxed (value, _gtk_icon_helper_peek_surface (&priv->icon_helper));
|
||||
g_value_set_boxed (value, _gtk_icon_helper_peek_surface (priv->icon_helper));
|
||||
break;
|
||||
case PROP_PAINTABLE:
|
||||
g_value_set_object (value, _gtk_icon_helper_peek_paintable (&priv->icon_helper));
|
||||
g_value_set_object (value, _gtk_icon_helper_peek_paintable (priv->icon_helper));
|
||||
break;
|
||||
case PROP_TEXTURE:
|
||||
g_value_set_object (value, _gtk_icon_helper_peek_texture (&priv->icon_helper));
|
||||
g_value_set_object (value, _gtk_icon_helper_peek_texture (priv->icon_helper));
|
||||
break;
|
||||
case PROP_FILE:
|
||||
g_value_set_string (value, priv->filename);
|
||||
@ -379,22 +379,22 @@ gtk_image_get_property (GObject *object,
|
||||
g_value_set_enum (value, priv->icon_size);
|
||||
break;
|
||||
case PROP_PIXEL_SIZE:
|
||||
g_value_set_int (value, _gtk_icon_helper_get_pixel_size (&priv->icon_helper));
|
||||
g_value_set_int (value, _gtk_icon_helper_get_pixel_size (priv->icon_helper));
|
||||
break;
|
||||
case PROP_ICON_NAME:
|
||||
g_value_set_string (value, _gtk_icon_helper_get_icon_name (&priv->icon_helper));
|
||||
g_value_set_string (value, _gtk_icon_helper_get_icon_name (priv->icon_helper));
|
||||
break;
|
||||
case PROP_GICON:
|
||||
g_value_set_object (value, _gtk_icon_helper_peek_gicon (&priv->icon_helper));
|
||||
g_value_set_object (value, _gtk_icon_helper_peek_gicon (priv->icon_helper));
|
||||
break;
|
||||
case PROP_RESOURCE:
|
||||
g_value_set_string (value, priv->resource_path);
|
||||
break;
|
||||
case PROP_USE_FALLBACK:
|
||||
g_value_set_boolean (value, _gtk_icon_helper_get_use_fallback (&priv->icon_helper));
|
||||
g_value_set_boolean (value, _gtk_icon_helper_get_use_fallback (priv->icon_helper));
|
||||
break;
|
||||
case PROP_STORAGE_TYPE:
|
||||
g_value_set_enum (value, _gtk_icon_helper_get_storage_type (&priv->icon_helper));
|
||||
g_value_set_enum (value, _gtk_icon_helper_get_storage_type (priv->icon_helper));
|
||||
break;
|
||||
default:
|
||||
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
|
||||
@ -910,7 +910,7 @@ gtk_image_set_from_icon_name (GtkImage *image,
|
||||
gtk_image_clear (image);
|
||||
|
||||
if (icon_name)
|
||||
_gtk_icon_helper_set_icon_name (&priv->icon_helper, icon_name);
|
||||
_gtk_icon_helper_set_icon_name (priv->icon_helper, icon_name);
|
||||
|
||||
g_object_notify_by_pspec (G_OBJECT (image), image_props[PROP_ICON_NAME]);
|
||||
|
||||
@ -945,7 +945,7 @@ gtk_image_set_from_gicon (GtkImage *image,
|
||||
|
||||
if (icon)
|
||||
{
|
||||
_gtk_icon_helper_set_gicon (&priv->icon_helper, icon);
|
||||
_gtk_icon_helper_set_gicon (priv->icon_helper, icon);
|
||||
g_object_unref (icon);
|
||||
}
|
||||
|
||||
@ -978,7 +978,7 @@ gtk_image_set_from_surface (GtkImage *image,
|
||||
|
||||
if (surface)
|
||||
{
|
||||
_gtk_icon_helper_set_surface (&priv->icon_helper, surface);
|
||||
_gtk_icon_helper_set_surface (priv->icon_helper, surface);
|
||||
cairo_surface_destroy (surface);
|
||||
}
|
||||
|
||||
@ -1000,7 +1000,7 @@ gtk_image_paintable_invalidate_size (GdkPaintable *paintable,
|
||||
{
|
||||
GtkImagePrivate *priv = gtk_image_get_instance_private (image);
|
||||
|
||||
gtk_icon_helper_invalidate (&priv->icon_helper);
|
||||
gtk_icon_helper_invalidate (priv->icon_helper);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1028,7 +1028,7 @@ gtk_image_set_from_paintable (GtkImage *image,
|
||||
|
||||
if (paintable)
|
||||
{
|
||||
_gtk_icon_helper_set_paintable (&priv->icon_helper, paintable);
|
||||
_gtk_icon_helper_set_paintable (priv->icon_helper, paintable);
|
||||
g_signal_connect (paintable,
|
||||
"invalidate-contents",
|
||||
G_CALLBACK (gtk_image_paintable_invalidate_contents),
|
||||
@ -1070,7 +1070,7 @@ gtk_image_set_from_texture (GtkImage *image,
|
||||
|
||||
if (texture)
|
||||
{
|
||||
_gtk_icon_helper_set_texture (&priv->icon_helper, texture);
|
||||
_gtk_icon_helper_set_texture (priv->icon_helper, texture);
|
||||
g_object_unref (texture);
|
||||
}
|
||||
|
||||
@ -1096,7 +1096,7 @@ gtk_image_get_storage_type (GtkImage *image)
|
||||
|
||||
g_return_val_if_fail (GTK_IS_IMAGE (image), GTK_IMAGE_EMPTY);
|
||||
|
||||
return _gtk_icon_helper_get_storage_type (&priv->icon_helper);
|
||||
return _gtk_icon_helper_get_storage_type (priv->icon_helper);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1119,7 +1119,7 @@ gtk_image_get_surface (GtkImage *image)
|
||||
|
||||
g_return_val_if_fail (GTK_IS_IMAGE (image), NULL);
|
||||
|
||||
return _gtk_icon_helper_peek_surface (&priv->icon_helper);
|
||||
return _gtk_icon_helper_peek_surface (priv->icon_helper);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1142,7 +1142,7 @@ gtk_image_get_paintable (GtkImage *image)
|
||||
|
||||
g_return_val_if_fail (GTK_IS_IMAGE (image), NULL);
|
||||
|
||||
return _gtk_icon_helper_peek_paintable (&priv->icon_helper);
|
||||
return _gtk_icon_helper_peek_paintable (priv->icon_helper);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1165,7 +1165,7 @@ gtk_image_get_texture (GtkImage *image)
|
||||
|
||||
g_return_val_if_fail (GTK_IS_IMAGE (image), NULL);
|
||||
|
||||
return _gtk_icon_helper_peek_texture (&priv->icon_helper);
|
||||
return _gtk_icon_helper_peek_texture (priv->icon_helper);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1191,7 +1191,7 @@ gtk_image_get_icon_name (GtkImage *image)
|
||||
|
||||
g_return_val_if_fail (GTK_IS_IMAGE (image), NULL);
|
||||
|
||||
return _gtk_icon_helper_get_icon_name (&priv->icon_helper);
|
||||
return _gtk_icon_helper_get_icon_name (priv->icon_helper);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1217,7 +1217,7 @@ gtk_image_get_gicon (GtkImage *image)
|
||||
|
||||
g_return_val_if_fail (GTK_IS_IMAGE (image), NULL);
|
||||
|
||||
return _gtk_icon_helper_peek_gicon (&priv->icon_helper);
|
||||
return _gtk_icon_helper_peek_gicon (priv->icon_helper);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1253,7 +1253,7 @@ gtk_image_unrealize (GtkWidget *widget)
|
||||
GtkImage *image = GTK_IMAGE (widget);
|
||||
GtkImagePrivate *priv = gtk_image_get_instance_private (image);
|
||||
|
||||
gtk_icon_helper_invalidate (&priv->icon_helper);
|
||||
gtk_icon_helper_invalidate (priv->icon_helper);
|
||||
|
||||
GTK_WIDGET_CLASS (gtk_image_parent_class)->unrealize (widget);
|
||||
}
|
||||
@ -1294,13 +1294,13 @@ gtk_image_snapshot (GtkWidget *widget,
|
||||
width = gtk_widget_get_width (widget);
|
||||
height = gtk_widget_get_height (widget);
|
||||
|
||||
if (_gtk_icon_helper_get_storage_type (&priv->icon_helper) == GTK_IMAGE_PAINTABLE)
|
||||
if (_gtk_icon_helper_get_storage_type (priv->icon_helper) == GTK_IMAGE_PAINTABLE)
|
||||
{
|
||||
gtk_icon_helper_snapshot (&priv->icon_helper, snapshot, width, height);
|
||||
gtk_icon_helper_snapshot (priv->icon_helper, snapshot, width, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
_gtk_icon_helper_get_size (&priv->icon_helper, &w, &h);
|
||||
_gtk_icon_helper_get_size (priv->icon_helper, &w, &h);
|
||||
x = (width - w) / 2;
|
||||
|
||||
baseline = gtk_widget_get_allocated_baseline (widget);
|
||||
@ -1311,7 +1311,7 @@ gtk_image_snapshot (GtkWidget *widget,
|
||||
y = CLAMP (baseline - h * gtk_image_get_baseline_align (image), 0, height - h);
|
||||
|
||||
gtk_snapshot_offset (snapshot, x, y);
|
||||
gtk_icon_helper_snapshot (&priv->icon_helper, snapshot, w, h);
|
||||
gtk_icon_helper_snapshot (priv->icon_helper, snapshot, w, h);
|
||||
gtk_snapshot_offset (snapshot, -x, -y);
|
||||
}
|
||||
}
|
||||
@ -1357,7 +1357,7 @@ gtk_image_set_from_definition (GtkImage *image,
|
||||
|
||||
if (def != NULL)
|
||||
{
|
||||
_gtk_icon_helper_set_definition (&priv->icon_helper, def);
|
||||
_gtk_icon_helper_set_definition (priv->icon_helper, def);
|
||||
|
||||
gtk_image_notify_for_storage_type (image, gtk_image_definition_get_storage_type (def));
|
||||
}
|
||||
@ -1370,7 +1370,7 @@ gtk_image_get_definition (GtkImage *image)
|
||||
{
|
||||
GtkImagePrivate *priv = gtk_image_get_instance_private (image);
|
||||
|
||||
return gtk_icon_helper_get_definition (&priv->icon_helper);
|
||||
return gtk_icon_helper_get_definition (priv->icon_helper);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1411,7 +1411,7 @@ gtk_image_clear (GtkImage *image)
|
||||
|
||||
if (storage_type == GTK_IMAGE_PAINTABLE)
|
||||
{
|
||||
GdkPaintable *paintable = _gtk_icon_helper_peek_paintable (&priv->icon_helper);
|
||||
GdkPaintable *paintable = _gtk_icon_helper_peek_paintable (priv->icon_helper);
|
||||
g_signal_handlers_disconnect_by_func (paintable,
|
||||
gtk_image_paintable_invalidate_contents,
|
||||
image);
|
||||
@ -1420,7 +1420,7 @@ gtk_image_clear (GtkImage *image)
|
||||
image);
|
||||
}
|
||||
|
||||
_gtk_icon_helper_clear (&priv->icon_helper);
|
||||
_gtk_icon_helper_clear (priv->icon_helper);
|
||||
|
||||
g_object_thaw_notify (G_OBJECT (image));
|
||||
}
|
||||
@ -1437,7 +1437,7 @@ gtk_image_measure (GtkWidget *widget,
|
||||
GtkImagePrivate *priv = gtk_image_get_instance_private (GTK_IMAGE (widget));
|
||||
float baseline_align;
|
||||
|
||||
gtk_icon_helper_measure (&priv->icon_helper,
|
||||
gtk_icon_helper_measure (priv->icon_helper,
|
||||
orientation,
|
||||
for_size,
|
||||
minimum, natural);
|
||||
@ -1460,7 +1460,7 @@ gtk_image_style_updated (GtkWidget *widget)
|
||||
GtkStyleContext *context = gtk_widget_get_style_context (widget);
|
||||
GtkCssStyleChange *change = gtk_style_context_get_change (context);
|
||||
|
||||
gtk_icon_helper_invalidate_for_change (&priv->icon_helper, change);
|
||||
gtk_icon_helper_invalidate_for_change (priv->icon_helper, change);
|
||||
|
||||
GTK_WIDGET_CLASS (gtk_image_parent_class)->style_updated (widget);
|
||||
|
||||
@ -1484,7 +1484,7 @@ gtk_image_set_pixel_size (GtkImage *image,
|
||||
|
||||
g_return_if_fail (GTK_IS_IMAGE (image));
|
||||
|
||||
if (_gtk_icon_helper_set_pixel_size (&priv->icon_helper, pixel_size))
|
||||
if (_gtk_icon_helper_set_pixel_size (priv->icon_helper, pixel_size))
|
||||
{
|
||||
if (gtk_widget_get_visible (GTK_WIDGET (image)))
|
||||
gtk_widget_queue_resize (GTK_WIDGET (image));
|
||||
@ -1507,7 +1507,7 @@ gtk_image_get_pixel_size (GtkImage *image)
|
||||
|
||||
g_return_val_if_fail (GTK_IS_IMAGE (image), -1);
|
||||
|
||||
return _gtk_icon_helper_get_pixel_size (&priv->icon_helper);
|
||||
return _gtk_icon_helper_get_pixel_size (priv->icon_helper);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1558,5 +1558,5 @@ gtk_image_get_image_size (GtkImage *image,
|
||||
{
|
||||
GtkImagePrivate *priv = gtk_image_get_instance_private (image);
|
||||
|
||||
_gtk_icon_helper_get_size (&priv->icon_helper, width, height);
|
||||
_gtk_icon_helper_get_size (priv->icon_helper, width, height);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user