[atk/gnome-3-32: 1/27] atkimplementor: use the G_DEFINE_INTERFACE macro to declare it as interface in the introspection



commit 5d846e0b5cb4c45e5c4fbd11548cda5f73bcf54d
Author: Corentin Noël <corentin elementary io>
Date:   Thu Mar 29 22:01:11 2018 +0100

    atkimplementor: use the G_DEFINE_INTERFACE macro to declare it as interface in the introspection

 atk/atkobject.c | 22 +++++-----------------
 atk/atkobject.h |  2 +-
 2 files changed, 6 insertions(+), 18 deletions(-)
---
diff --git a/atk/atkobject.c b/atk/atkobject.c
index d50be54..f8e855e 100644
--- a/atk/atkobject.c
+++ b/atk/atkobject.c
@@ -57,6 +57,9 @@
  *
  */
 
+typedef AtkImplementorIface AtkImplementorInterface;
+G_DEFINE_INTERFACE (AtkImplementor, atk_implementor, G_TYPE_OBJECT)
+
 static GPtrArray *role_names = NULL;
 
 enum
@@ -677,24 +680,9 @@ atk_object_init  (AtkObject        *accessible,
   accessible->role = ATK_ROLE_UNKNOWN;
 }
 
-GType
-atk_implementor_get_type (void)
+static void
+atk_implementor_default_init (AtkImplementorInterface *iface)
 {
-  static GType type = 0;
-
-  if (!type)
-    {
-      static const GTypeInfo typeInfo =
-      {
-        sizeof (AtkImplementorIface),
-        (GBaseInitFunc) NULL,
-        (GBaseFinalizeFunc) NULL,
-      } ;
-
-      type = g_type_register_static (G_TYPE_INTERFACE, "AtkImplementorIface", &typeInfo, 0) ;
-    }
-
-  return type;
 }
 
 /**
diff --git a/atk/atkobject.h b/atk/atkobject.h
index 711dda7..4cb8ce2 100644
--- a/atk/atkobject.h
+++ b/atk/atkobject.h
@@ -678,7 +678,7 @@ struct _AtkImplementorIface
 };
 
 ATK_AVAILABLE_IN_ALL
-GType atk_implementor_get_type (void);
+GType atk_implementor_get_type (void) G_GNUC_CONST;
 ATK_AVAILABLE_IN_ALL
 AtkObject*              atk_implementor_ref_accessible            (AtkImplementor *implementor);
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]