From ab26fbf217460c766111850bf40725e5e65a5533 Mon Sep 17 00:00:00 2001 From: Carlos Garcia Campos Date: Sat, 24 Jan 2009 18:10:33 +0000 Subject: Add EV_DEFINE_INTERFACE macro. 2009-01-24 Carlos Garcia Campos * libdocument/ev-document.h: Add EV_DEFINE_INTERFACE macro. * libdocument/ev-async-renderer.c: * libdocument/ev-document-find.c: * libdocument/ev-document-fonts.c: * libdocument/ev-document-forms.c: * libdocument/ev-document-images.c: * libdocument/ev-document-layers.c: * libdocument/ev-document-links.c: * libdocument/ev-document-security.c: * libdocument/ev-document-thumbnails.c: * libdocument/ev-document-transition.c: * libdocument/ev-document.c: * libdocument/ev-file-exporter.c: * libdocument/ev-selection.c: Use EV_DEFINE_INTERFACE macro to define interfaces in libdocument. See bug #568228. svn path=/trunk/; revision=3379 --- (limited to 'libdocument/ev-async-renderer.c') diff --git a/libdocument/ev-async-renderer.c b/libdocument/ev-async-renderer.c index f0ffce4..5ff9e3e 100644 --- a/libdocument/ev-async-renderer.c +++ b/libdocument/ev-async-renderer.c @@ -21,8 +21,7 @@ #include "config.h" #include "ev-async-renderer.h" - -static void ev_async_renderer_class_init (gpointer g_class); +#include "ev-document.h" enum { @@ -32,42 +31,26 @@ enum static guint signals[LAST_SIGNAL] = { 0 }; -GType -ev_async_renderer_get_type (void) -{ - static GType type = 0; - - if (G_UNLIKELY (type == 0)) - { - const GTypeInfo our_info = - { - sizeof (EvAsyncRendererIface), - NULL, - NULL, - (GClassInitFunc)ev_async_renderer_class_init - }; - - type = g_type_register_static (G_TYPE_INTERFACE, - "EvAsyncRenderer", - &our_info, (GTypeFlags)0); - } - - return type; -} +EV_DEFINE_INTERFACE (EvAsyncRenderer, ev_async_renderer, 0) static void -ev_async_renderer_class_init (gpointer g_class) +ev_async_renderer_class_init (EvAsyncRendererIface *klass) { - signals[RENDER_FINISHED] = - g_signal_new ("render_finished", - EV_TYPE_ASYNC_RENDERER, - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (EvAsyncRendererIface, render_finished), - NULL, NULL, - g_cclosure_marshal_VOID__OBJECT, - G_TYPE_NONE, - 1, - GDK_TYPE_PIXBUF); + static gboolean initialized = FALSE; + + if (!initialized) { + signals[RENDER_FINISHED] = + g_signal_new ("render_finished", + EV_TYPE_ASYNC_RENDERER, + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (EvAsyncRendererIface, render_finished), + NULL, NULL, + g_cclosure_marshal_VOID__OBJECT, + G_TYPE_NONE, + 1, + GDK_TYPE_PIXBUF); + initialized = TRUE; + } } void -- cgit v0.9.1