]> www.fi.muni.cz Git - evince.git/blobdiff - libdocument/ev-document.h
[shell] Use G_DEFINE_INTERFACE and remove our own macro
[evince.git] / libdocument / ev-document.h
index 09c97aa2f617c38c78b012ee593f891d6ec73eaa..1064f16ac848bec45c8a2dea01f3c6dba656fceb 100644 (file)
@@ -271,37 +271,6 @@ type_name##_get_type (void)
        return g_define_type_id__volatile;                                            \
 }
 
-/* A convenience macro for GTypeInterface definitions, which declares
- * a default vtable initialization function and defines a *_get_type()
- * function.
- *
- * The macro expects the interface initialization function to have the
- * name <literal>t_n ## _default_init</literal>, and the interface
- * structure to have the name <literal>TN ## Interface</literal>.
- */
-#define EV_DEFINE_INTERFACE(TypeName, type_name, TYPE_PREREQ)                               \
-static void     type_name##_class_init        (TypeName##Iface *klass);                      \
-                                                                                             \
-GType                                                                                        \
-type_name##_get_type (void)                                                                  \
-{                                                                                            \
-        static volatile gsize g_define_type_id__volatile = 0;                                \
-       if (g_once_init_enter (&g_define_type_id__volatile)) {                               \
-               GType g_define_type_id =                                                     \
-                   g_type_register_static_simple (G_TYPE_INTERFACE,                         \
-                                                  g_intern_static_string (#TypeName),       \
-                                                  sizeof (TypeName##Iface),                 \
-                                                  (GClassInitFunc)type_name##_class_init,   \
-                                                  0,                                        \
-                                                  (GInstanceInitFunc)NULL,                  \
-                                                  (GTypeFlags) 0);                          \
-               if (TYPE_PREREQ)                                                             \
-                       g_type_interface_add_prerequisite (g_define_type_id, TYPE_PREREQ);   \
-               g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);           \
-       }                                                                                    \
-       return g_define_type_id__volatile;                                                   \
-}
-
 /*
  * A convenience macro for boxed type implementations, which defines a
  * type_name_get_type() function registering the boxed type.