[gtk+/wip/hires-icons: 9/11] cellrendererpixbuf: Add "icon-set" property
- From: Carlos Garnacho <carlosg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+/wip/hires-icons: 9/11] cellrendererpixbuf: Add "icon-set" property
- Date: Tue, 14 May 2013 10:55:08 +0000 (UTC)
commit 106b5dda7b6097e25915d417624efaf03910270b
Author: Carlos Garnacho <carlos lanedo com>
Date: Tue May 14 11:49:22 2013 +0200
cellrendererpixbuf: Add "icon-set" property
Icon sets are the best way to automatically deal with high resolution
icons, so expose these as a property for cell renderers.
gtk/gtkcellrendererpixbuf.c | 20 +++++++++++++++++++-
1 files changed, 19 insertions(+), 1 deletions(-)
---
diff --git a/gtk/gtkcellrendererpixbuf.c b/gtk/gtkcellrendererpixbuf.c
index 62f6f65..4b59a6f 100644
--- a/gtk/gtkcellrendererpixbuf.c
+++ b/gtk/gtkcellrendererpixbuf.c
@@ -79,7 +79,8 @@ enum {
PROP_STOCK_DETAIL,
PROP_FOLLOW_STATE,
PROP_ICON_NAME,
- PROP_GICON
+ PROP_GICON,
+ PROP_ICON_SET
};
@@ -247,6 +248,13 @@ gtk_cell_renderer_pixbuf_class_init (GtkCellRendererPixbufClass *class)
G_TYPE_ICON,
GTK_PARAM_READWRITE));
+ g_object_class_install_property (object_class,
+ PROP_ICON_SET,
+ g_param_spec_boxed ("icon-set",
+ P_("Icon set"),
+ P_("Icon set to render the image from"),
+ GTK_TYPE_ICON_SET,
+ GTK_PARAM_READABLE));
g_type_class_add_private (object_class, sizeof (GtkCellRendererPixbufPrivate));
@@ -292,6 +300,9 @@ gtk_cell_renderer_pixbuf_get_property (GObject *object,
case PROP_GICON:
g_value_set_object (value, _gtk_icon_helper_peek_gicon (priv->icon_helper));
break;
+ case PROP_ICON_SET:
+ g_value_set_boxed (value, _gtk_icon_helper_peek_icon_set (priv->icon_helper));
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec);
break;
@@ -318,6 +329,9 @@ gtk_cell_renderer_pixbuf_reset (GtkCellRendererPixbuf *cellpixbuf)
case GTK_IMAGE_GICON:
g_object_notify (G_OBJECT (cellpixbuf), "gicon");
break;
+ case GTK_IMAGE_ICON_SET:
+ g_object_notify (G_OBJECT (cellpixbuf), "icon-set");
+ break;
case GTK_IMAGE_EMPTY:
default:
break;
@@ -374,6 +388,10 @@ gtk_cell_renderer_pixbuf_set_property (GObject *object,
gtk_cell_renderer_pixbuf_reset (cellpixbuf);
_gtk_icon_helper_set_gicon (priv->icon_helper, g_value_get_object (value), priv->icon_size);
break;
+ case PROP_ICON_SET:
+ gtk_cell_renderer_pixbuf_reset (cellpixbuf);
+ _gtk_icon_helper_set_icon_set (priv->icon_helper, g_value_get_boxed (value), priv->icon_size);
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec);
break;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]