summaryrefslogtreecommitdiff
path: root/gtk/gtkstyle.c
diff options
context:
space:
mode:
authorCarlos Garcia Campos <cgarcia@igalia.com>2010-12-03 20:30:13 +0100
committerCarlos Garnacho <carlosg@gnome.org>2010-12-04 15:39:56 +0100
commitca59b042df53ba792cb33b430c317b68464fa592 (patch)
tree16c40294d62bdca13285646209acd5afcdd612f3 /gtk/gtkstyle.c
parent15d997d58a306638df0b81a17d60965623fdb774 (diff)
downloadgtk+-ca59b042df53ba792cb33b430c317b68464fa592.tar.gz
GtkStyle: make context property readable
Diffstat (limited to 'gtk/gtkstyle.c')
-rw-r--r--gtk/gtkstyle.c28
1 files changed, 27 insertions, 1 deletions
diff --git a/gtk/gtkstyle.c b/gtk/gtkstyle.c
index 3310ebbf82..83645560b5 100644
--- a/gtk/gtkstyle.c
+++ b/gtk/gtkstyle.c
@@ -99,6 +99,10 @@ static void gtk_style_set_property (GObject *object,
guint prop_id,
const GValue *value,
GParamSpec *pspec);
+static void gtk_style_get_property (GObject *object,
+ guint prop_id,
+ GValue *value,
+ GParamSpec *pspec);
static void gtk_style_realize (GtkStyle *style,
GdkVisual *visual);
@@ -472,6 +476,7 @@ gtk_style_class_init (GtkStyleClass *klass)
object_class->finalize = gtk_style_finalize;
object_class->set_property = gtk_style_set_property;
+ object_class->get_property = gtk_style_get_property;
object_class->constructed = gtk_style_constructed;
klass->clone = gtk_style_real_clone;
@@ -511,7 +516,7 @@ gtk_style_class_init (GtkStyleClass *klass)
P_("Style context"),
P_("GtkStyleContext to get style from"),
GTK_TYPE_STYLE_CONTEXT,
- G_PARAM_CONSTRUCT_ONLY | G_PARAM_WRITABLE));
+ G_PARAM_CONSTRUCT_ONLY | G_PARAM_READWRITE));
/**
* GtkStyle::realize:
@@ -651,6 +656,27 @@ gtk_style_set_property (GObject *object,
}
static void
+gtk_style_get_property (GObject *object,
+ guint prop_id,
+ GValue *value,
+ GParamSpec *pspec)
+{
+ GtkStylePrivate *priv;
+
+ priv = GTK_STYLE_GET_PRIVATE (object);
+
+ switch (prop_id)
+ {
+ case PROP_CONTEXT:
+ g_value_set_object (value, priv->context);
+ break;
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+ break;
+ }
+}
+
+static void
set_color (GtkStyle *style,
GtkStyleContext *context,
GtkStateType state,