/*
- * Copyright (C) 2009-2010 Andy Spencer <andy753421@gmail.com>
+ * Copyright (C) 2009-2011 Andy Spencer <andy753421@gmail.com>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
*/
/**
- * SECTION:gis-callback
+ * SECTION:grits-callback
* @short_description: Custom callback objects
*
- * #GisCallback objects are used for custom drawing functions. A common example
+ * #GritsCallback objects are used for custom drawing functions. A common example
* of this would be to render something which does not easily fit into a normal
* object. For instance, a Heads-Up-Display overlay.
*
- * Callbacks are an alternate to extending GisObject with a new class and
+ * Callbacks are an alternate to extending GritsObject with a new class and
* should be used when only once instance of the object will be needed.
*/
#include <config.h>
-#include "gis-callback.h"
+#include "grits-callback.h"
/**
- * gis_callback_new:
+ * grits_callback_new:
* @callback: the function to call to draw the object
* @user_data: user data to pass to the drawing function
*
- * Create a #GisCallback object with an associated function and user data.
+ * Create a #GritsCallback object with an associated function and user data.
*
- * Returns: the new #GisCallback
+ * Returns: the new #GritsCallback
*/
-GisCallback *gis_callback_new(GisCallbackFunc draw_cb, gpointer user_data)
+GritsCallback *grits_callback_new(GritsCallbackFunc draw_cb, gpointer user_data)
{
- GisCallback *cb = g_object_new(GIS_TYPE_CALLBACK, NULL);
+ GritsCallback *cb = g_object_new(GRITS_TYPE_CALLBACK, NULL);
cb->draw = draw_cb;
cb->user_data = user_data;
return cb;
}
/* Proxy class methods to per-object methods */
-static void proxy_draw(GisObject *_cb, GisOpenGL *opengl)
+static void proxy_draw(GritsObject *_cb, GritsOpenGL *opengl)
{
- GisCallback *cb = GIS_CALLBACK(_cb);
+ GritsCallback *cb = GRITS_CALLBACK(_cb);
if (cb->draw)
cb->draw(cb, opengl, cb->user_data);
}
-/* GisCallback */
-G_DEFINE_TYPE(GisCallback, gis_callback, GIS_TYPE_OBJECT);
-static void gis_callback_init(GisCallback *cb)
+/* GritsCallback */
+G_DEFINE_TYPE(GritsCallback, grits_callback, GRITS_TYPE_OBJECT);
+static void grits_callback_finalize(GObject *cb)
{
+ g_debug("GritsCallback: finalize");
+ G_OBJECT_CLASS(grits_callback_parent_class)->finalize(cb);
+}
+static void grits_callback_init(GritsCallback *cb)
+{
+ g_debug("GritsCallback: init");
}
-static void gis_callback_class_init(GisCallbackClass *klass)
+static void grits_callback_class_init(GritsCallbackClass *klass)
{
- GisObjectClass *object_class = GIS_OBJECT_CLASS(klass);
- object_class->draw = proxy_draw;
+ GritsObjectClass *grits_class = GRITS_OBJECT_CLASS(klass);
+ GObjectClass *object_class = G_OBJECT_CLASS(klass);
+ grits_class->draw = proxy_draw;
+ object_class->finalize = grits_callback_finalize;
}