[retro-gtk/wip/aplazas/gl-display: 7/12] gl-display: Drop the 'pixbuf' property
- From: Adrien Plazas <aplazas src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [retro-gtk/wip/aplazas/gl-display: 7/12] gl-display: Drop the 'pixbuf' property
- Date: Sat, 18 Nov 2017 09:40:45 +0000 (UTC)
commit ce5fb1e15f70e480ca0249f3d245fd342797b64a
Author: Adrien Plazas <kekun plazas laposte net>
Date: Sat Nov 18 10:04:14 2017 +0100
gl-display: Drop the 'pixbuf' property
Instead, let accessing the pixbuf via the set_pixbuf() and get_pixbuf()
methods as previously done.
This avoid notifying changes of the pixbuf and accidentally building the
pixbuf on during the notification chain when building the pixbuf on
demand from the pixdata as will be introduced in the next commit.
retro-gtk/retro-gl-display.c | 68 +-----------------------------------------
1 files changed, 1 insertions(+), 67 deletions(-)
---
diff --git a/retro-gtk/retro-gl-display.c b/retro-gtk/retro-gl-display.c
index 98938d8..1209711 100644
--- a/retro-gtk/retro-gl-display.c
+++ b/retro-gtk/retro-gl-display.c
@@ -22,13 +22,6 @@ struct _RetroGLDisplay
G_DEFINE_TYPE (RetroGLDisplay, retro_gl_display, GTK_TYPE_GL_AREA)
-enum {
- PROP_PIXBUF = 1,
- N_PROPS,
-};
-
-static GParamSpec *properties [N_PROPS];
-
typedef struct {
struct {
float x, y;
@@ -317,64 +310,11 @@ retro_gl_display_finalize (GObject *object)
}
static void
-retro_gl_display_get_property (GObject *object,
- guint prop_id,
- GValue *value,
- GParamSpec *pspec)
-{
- RetroGLDisplay *self = RETRO_GL_DISPLAY (object);
-
- switch (prop_id) {
- case PROP_PIXBUF:
- g_value_set_object (value, retro_gl_display_get_pixbuf (self));
-
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
-
- break;
- }
-}
-
-static void
-retro_gl_display_set_property (GObject *object,
- guint prop_id,
- const GValue *value,
- GParamSpec *pspec)
-{
- RetroGLDisplay *self = RETRO_GL_DISPLAY (object);
-
- switch (prop_id) {
- case PROP_PIXBUF:
- retro_gl_display_set_pixbuf (self, g_value_get_object (value));
-
- break;
- default:
- G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
-
- break;
- }
-}
-
-static void
retro_gl_display_class_init (RetroGLDisplayClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
object_class->finalize = retro_gl_display_finalize;
- object_class->get_property = retro_gl_display_get_property;
- object_class->set_property = retro_gl_display_set_property;
-
- properties[PROP_PIXBUF] =
- g_param_spec_object ("pixbuf",
- "Pixbuf",
- "The displayed pixbuf",
- gdk_pixbuf_get_type (),
- G_PARAM_READWRITE |
- G_PARAM_STATIC_NAME |
- G_PARAM_STATIC_NICK |
- G_PARAM_STATIC_BLURB);
- g_object_class_install_property (G_OBJECT_CLASS (klass), PROP_PIXBUF, properties[PROP_PIXBUF]);
}
static void
@@ -413,12 +353,6 @@ retro_gl_display_init (RetroGLDisplay *self)
(GCallback) queue_draw,
GTK_WIDGET (self),
0);
-
- g_signal_connect_object (G_OBJECT (self),
- "notify::pixbuf",
- (GCallback) queue_draw,
- GTK_WIDGET (self),
- 0);
}
static void
@@ -506,7 +440,7 @@ retro_gl_display_set_pixbuf (RetroGLDisplay *self,
if (pixbuf != NULL)
self->pixbuf = g_object_ref (pixbuf);
- g_object_notify_by_pspec (G_OBJECT (self), properties[PROP_PIXBUF]);
+ gtk_widget_queue_draw (GTK_WIDGET (self));
}
/**
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]