gdk/directfb: convert gdkgc-directfb to using G_DEFINE_TYPE
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=609199 Signed-off-by: Javier Jardón <jjardon@gnome.org>
This commit is contained in:
parent
9bc658f6ed
commit
987256968b
@ -57,49 +57,22 @@ static void gdk_directfb_gc_set_dashes (GdkGC *gc,
|
|||||||
gint8 dash_list[],
|
gint8 dash_list[],
|
||||||
gint n);
|
gint n);
|
||||||
|
|
||||||
static void gdk_gc_directfb_class_init (GdkGCDirectFBClass *klass);
|
|
||||||
static void gdk_gc_directfb_finalize (GObject *object);
|
static void gdk_gc_directfb_finalize (GObject *object);
|
||||||
|
|
||||||
|
G_DEFINE_TYPE (GdkGCDirectFB, _gdk_gc_directfb, GDK_TYPE_GC)
|
||||||
|
|
||||||
static gpointer parent_class = NULL;
|
static void
|
||||||
|
_gdk_gc_directfb_init (GdkGCDirectFB *directfb_gc)
|
||||||
|
|
||||||
GType
|
|
||||||
gdk_gc_directfb_get_type (void)
|
|
||||||
{
|
{
|
||||||
static GType object_type = 0;
|
|
||||||
|
|
||||||
if (!object_type)
|
|
||||||
{
|
|
||||||
const GTypeInfo object_info =
|
|
||||||
{
|
|
||||||
sizeof (GdkGCDirectFBClass),
|
|
||||||
(GBaseInitFunc) NULL,
|
|
||||||
(GBaseFinalizeFunc) NULL,
|
|
||||||
(GClassInitFunc) gdk_gc_directfb_class_init,
|
|
||||||
NULL, /* class_finalize */
|
|
||||||
NULL, /* class_data */
|
|
||||||
sizeof (GdkGCDirectFB),
|
|
||||||
0, /* n_preallocs */
|
|
||||||
(GInstanceInitFunc) NULL,
|
|
||||||
};
|
|
||||||
|
|
||||||
object_type = g_type_register_static (GDK_TYPE_GC,
|
|
||||||
"GdkGCDirectFB",
|
|
||||||
&object_info, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
return object_type;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gdk_gc_directfb_class_init (GdkGCDirectFBClass *klass)
|
_gdk_gc_directfb_class_init (GdkGCDirectFBClass *klass)
|
||||||
{
|
{
|
||||||
GObjectClass *object_class = G_OBJECT_CLASS (klass);
|
GObjectClass *object_class = G_OBJECT_CLASS (klass);
|
||||||
GdkGCClass *gc_class = GDK_GC_CLASS (klass);
|
GdkGCClass *gc_class = GDK_GC_CLASS (klass);
|
||||||
|
|
||||||
parent_class = g_type_class_peek_parent (klass);
|
|
||||||
|
|
||||||
object_class->finalize = gdk_gc_directfb_finalize;
|
object_class->finalize = gdk_gc_directfb_finalize;
|
||||||
|
|
||||||
gc_class->get_values = gdk_directfb_gc_get_values;
|
gc_class->get_values = gdk_directfb_gc_get_values;
|
||||||
@ -110,22 +83,21 @@ gdk_gc_directfb_class_init (GdkGCDirectFBClass *klass)
|
|||||||
static void
|
static void
|
||||||
gdk_gc_directfb_finalize (GObject *object)
|
gdk_gc_directfb_finalize (GObject *object)
|
||||||
{
|
{
|
||||||
GdkGC *gc = GDK_GC (object);
|
GdkGCDirectFB *directfb_gc = GDK_GC_DIRECTFB (object);
|
||||||
GdkGCDirectFB *private = GDK_GC_DIRECTFB (gc);
|
|
||||||
|
|
||||||
if (private->clip_region.numRects)
|
if (directfb_gc->clip_region.numRects)
|
||||||
temp_region_deinit (&private->clip_region);
|
temp_region_deinit (&directfb_gc->clip_region);
|
||||||
if (private->values.clip_mask)
|
if (directfb_gc->values.clip_mask)
|
||||||
g_object_unref (private->values.clip_mask);
|
g_object_unref (directfb_gc->values.clip_mask);
|
||||||
if (private->values.stipple)
|
if (directfb_gc->values.stipple)
|
||||||
g_object_unref (private->values.stipple);
|
g_object_unref (directfb_gc->values.stipple);
|
||||||
if (private->values.tile)
|
if (directfb_gc->values.tile)
|
||||||
g_object_unref (private->values.tile);
|
g_object_unref (directfb_gc->values.tile);
|
||||||
|
|
||||||
if (G_OBJECT_CLASS (parent_class)->finalize)
|
G_OBJECT_CLASS (_gdk_gc_directfb_parent_class)->finalize (object);
|
||||||
G_OBJECT_CLASS (parent_class)->finalize (object);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
GdkGC *
|
GdkGC *
|
||||||
_gdk_directfb_gc_new (GdkDrawable *drawable,
|
_gdk_directfb_gc_new (GdkDrawable *drawable,
|
||||||
GdkGCValues *values,
|
GdkGCValues *values,
|
||||||
@ -134,9 +106,11 @@ _gdk_directfb_gc_new (GdkDrawable *drawable,
|
|||||||
GdkGC *gc;
|
GdkGC *gc;
|
||||||
GdkGCDirectFB *private;
|
GdkGCDirectFB *private;
|
||||||
|
|
||||||
|
/* NOTICE that the drawable here has to be the impl drawable, not the
|
||||||
|
publicly visible drawable. */
|
||||||
g_return_val_if_fail (GDK_IS_DRAWABLE_IMPL_DIRECTFB (drawable), NULL);
|
g_return_val_if_fail (GDK_IS_DRAWABLE_IMPL_DIRECTFB (drawable), NULL);
|
||||||
|
|
||||||
gc = GDK_GC (g_object_new (gdk_gc_directfb_get_type (), NULL));
|
gc = GDK_GC (g_object_new (_gdk_gc_directfb_get_type (), NULL));
|
||||||
|
|
||||||
_gdk_gc_init (gc, drawable, values, values_mask);
|
_gdk_gc_init (gc, drawable, values, values_mask);
|
||||||
|
|
||||||
|
@ -205,7 +205,7 @@ typedef struct
|
|||||||
} GdkImageDirectFB;
|
} GdkImageDirectFB;
|
||||||
|
|
||||||
|
|
||||||
#define GDK_TYPE_GC_DIRECTFB (gdk_gc_directfb_get_type ())
|
#define GDK_TYPE_GC_DIRECTFB (_gdk_gc_directfb_get_type ())
|
||||||
#define GDK_GC_DIRECTFB(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_GC_DIRECTFB, GdkGCDirectFB))
|
#define GDK_GC_DIRECTFB(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_GC_DIRECTFB, GdkGCDirectFB))
|
||||||
#define GDK_IS_GC_DIRECTFB(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_GC_DIRECTFB))
|
#define GDK_IS_GC_DIRECTFB(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_GC_DIRECTFB))
|
||||||
|
|
||||||
@ -224,7 +224,7 @@ typedef struct
|
|||||||
GdkGCClass parent_class;
|
GdkGCClass parent_class;
|
||||||
} GdkGCDirectFBClass;
|
} GdkGCDirectFBClass;
|
||||||
|
|
||||||
GType gdk_gc_directfb_get_type (void);
|
GType _gdk_gc_directfb_get_type (void);
|
||||||
|
|
||||||
GdkGC * _gdk_directfb_gc_new (GdkDrawable *drawable,
|
GdkGC * _gdk_directfb_gc_new (GdkDrawable *drawable,
|
||||||
GdkGCValues *values,
|
GdkGCValues *values,
|
||||||
|
Loading…
Reference in New Issue
Block a user