[glade/tintou/more-g-declare] gladeui: Use G_DECLARE_FINAL_TYPE for GladeObjectStub



commit 4d5239e849678d67250e1b25ddf2f5e0943c6736
Author: Corentin Noël <corentin noel collabora com>
Date:   Fri Aug 16 22:02:59 2019 +0200

    gladeui: Use G_DECLARE_FINAL_TYPE for GladeObjectStub

 gladeui/glade-object-stub.c | 72 +++++++++++++++++++--------------------------
 gladeui/glade-object-stub.h | 25 ++--------------
 2 files changed, 33 insertions(+), 64 deletions(-)
---
diff --git a/gladeui/glade-object-stub.c b/gladeui/glade-object-stub.c
index b993652c..e2203947 100644
--- a/gladeui/glade-object-stub.c
+++ b/gladeui/glade-object-stub.c
@@ -27,7 +27,7 @@
 #include "glade-object-stub.h"
 #include "glade-project.h"
 
-struct _GladeObjectStubPrivate
+struct _GladeObjectStub
 {
   GtkLabel *label;
   
@@ -44,7 +44,7 @@ enum
 };
 
 
-G_DEFINE_TYPE_WITH_PRIVATE (GladeObjectStub, glade_object_stub, GTK_TYPE_INFO_BAR);
+G_DEFINE_TYPE (GladeObjectStub, glade_object_stub, GTK_TYPE_INFO_BAR);
 
 #define RESPONSE_DELETE 1
 #define RESPONSE_DELETE_ALL 2
@@ -81,58 +81,54 @@ on_infobar_response (GladeObjectStub *stub, gint response_id)
 }
 
 static void
-glade_object_stub_init (GladeObjectStub *object)
+glade_object_stub_init (GladeObjectStub *self)
 {
-  GladeObjectStubPrivate *priv = glade_object_stub_get_instance_private (object);
   GtkWidget *label = gtk_label_new (NULL);
 
-  object->priv = priv;
-  priv->type = NULL;
-  priv->node = NULL;
+  self->type = NULL;
+  self->node = NULL;
   
-  priv->label = GTK_LABEL (label);
-  gtk_label_set_line_wrap (priv->label, TRUE);
+  self->label = GTK_LABEL (label);
+  gtk_label_set_line_wrap (self->label, TRUE);
   
-  gtk_container_add (GTK_CONTAINER (gtk_info_bar_get_content_area (GTK_INFO_BAR (object))), label);
+  gtk_container_add (GTK_CONTAINER (gtk_info_bar_get_content_area (GTK_INFO_BAR (self))), label);
 
-  gtk_info_bar_add_button (GTK_INFO_BAR (object),
+  gtk_info_bar_add_button (GTK_INFO_BAR (self),
                            _("Delete"), RESPONSE_DELETE);
-  gtk_info_bar_add_button (GTK_INFO_BAR (object),
+  gtk_info_bar_add_button (GTK_INFO_BAR (self),
                            _("Delete All"), RESPONSE_DELETE_ALL);
   
-  g_signal_connect (object, "response", G_CALLBACK (on_infobar_response), NULL);
+  g_signal_connect (self, "response", G_CALLBACK (on_infobar_response), NULL);
 }
 
 static void
 glade_object_stub_finalize (GObject *object)
 {
-  GladeObjectStubPrivate *priv = GLADE_OBJECT_STUB (object)->priv;
+  GladeObjectStub *self = (GladeObjectStub *) object;
 
-  g_free (priv->type);
-  
-  if (priv->node) glade_xml_node_delete (priv->node);
+  g_clear_pointer (&self->type, g_free);
+  g_clear_pointer (&self->node, glade_xml_node_delete);
 
   G_OBJECT_CLASS (glade_object_stub_parent_class)->finalize (object);
 }
 
 static void
-glade_object_stub_refresh_text (GladeObjectStub *stub)
+glade_object_stub_refresh_text (GladeObjectStub *self)
 {
-  GladeObjectStubPrivate *priv = stub->priv;
   gchar *markup;
   GType type;
 
-  if (priv->type == NULL) return;
+  if (self->type == NULL) return;
 
-  type = g_type_from_name (priv->type);
+  type = g_type_from_name (self->type);
 
   if ((type != G_TYPE_INVALID && (!G_TYPE_IS_INSTANTIATABLE (type) || G_TYPE_IS_ABSTRACT (type))))
-    markup = g_markup_printf_escaped ("<b>FIXME:</b> Unable to create uninstantiable object with type %s", 
priv->type);
+    markup = g_markup_printf_escaped ("<b>FIXME:</b> Unable to create uninstantiable object with type %s", 
self->type);
   else
-    markup = g_markup_printf_escaped ("<b>FIXME:</b> Unable to create object with type %s", priv->type);
+    markup = g_markup_printf_escaped ("<b>FIXME:</b> Unable to create object with type %s", self->type);
   
-  gtk_label_set_markup (priv->label, markup);
-  gtk_info_bar_set_message_type (GTK_INFO_BAR (stub), GTK_MESSAGE_WARNING);
+  gtk_label_set_markup (self->label, markup);
+  gtk_info_bar_set_message_type (GTK_INFO_BAR (self), GTK_MESSAGE_WARNING);
   g_free (markup);
 }
 
@@ -142,24 +138,20 @@ glade_object_stub_set_property (GObject      *object,
                                 const GValue *value,
                                 GParamSpec   *pspec)
 {
-  GladeObjectStubPrivate *priv;
-  GladeObjectStub *stub;
-  
+  GladeObjectStub *self = (GladeObjectStub *) object;
+
   g_return_if_fail (GLADE_IS_OBJECT_STUB (object));
 
-  stub = GLADE_OBJECT_STUB (object);
-  priv = stub->priv;
-  
   switch (prop_id)
     {
       case PROP_OBJECT_TYPE:
-        g_free (priv->type);
-        priv->type = g_value_dup_string (value);
-        glade_object_stub_refresh_text (stub);
+        g_free (self->type);
+        self->type = g_value_dup_string (value);
+        glade_object_stub_refresh_text (self);
         break;
       case PROP_XML_NODE:
-        if (priv->node) glade_xml_node_delete (priv->node);
-        priv->node = g_value_dup_boxed (value);
+        if (self->node) glade_xml_node_delete (self->node);
+        self->node = g_value_dup_boxed (value);
         break;
       default:
         G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
@@ -173,19 +165,17 @@ glade_object_stub_get_property (GObject    *object,
                                 GValue     *value,
                                 GParamSpec *pspec)
 {
-  GladeObjectStubPrivate *priv;
+  GladeObjectStub *self = (GladeObjectStub *) object;
   
   g_return_if_fail (GLADE_IS_OBJECT_STUB (object));
 
-  priv = GLADE_OBJECT_STUB (object)->priv;
-  
   switch (prop_id)
     {
       case PROP_OBJECT_TYPE:
-        g_value_set_string (value, priv->type);
+        g_value_set_string (value, self->type);
         break;
       case PROP_XML_NODE:
-        g_value_set_boxed (value, priv->node);
+        g_value_set_boxed (value, self->node);
         break;
       default:
         G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
diff --git a/gladeui/glade-object-stub.h b/gladeui/glade-object-stub.h
index 42369b4e..0bdf53d6 100644
--- a/gladeui/glade-object-stub.h
+++ b/gladeui/glade-object-stub.h
@@ -28,29 +28,8 @@
 
 G_BEGIN_DECLS
 
-#define GLADE_TYPE_OBJECT_STUB             (glade_object_stub_get_type ())
-#define GLADE_OBJECT_STUB(obj)             (G_TYPE_CHECK_INSTANCE_CAST ((obj), GLADE_TYPE_OBJECT_STUB, 
GladeObjectStub))
-#define GLADE_OBJECT_STUB_CLASS(klass)     (G_TYPE_CHECK_CLASS_CAST ((klass), GLADE_TYPE_OBJECT_STUB, 
GladeObjectStubClass))
-#define GLADE_IS_OBJECT_STUB(obj)          (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GLADE_TYPE_OBJECT_STUB))
-#define GLADE_IS_OBJECT_STUB_CLASS(klass)  (G_TYPE_CHECK_CLASS_TYPE ((klass), GLADE_TYPE_OBJECT_STUB))
-#define GLADE_OBJECT_STUB_GET_CLASS(obj)   (G_TYPE_INSTANCE_GET_CLASS ((obj), GLADE_TYPE_OBJECT_STUB, 
GladeObjectStubClass))
-
-typedef struct _GladeObjectStubClass GladeObjectStubClass;
-typedef struct _GladeObjectStub GladeObjectStub;
-typedef struct _GladeObjectStubPrivate GladeObjectStubPrivate;
-
-struct _GladeObjectStubClass
-{
-  GtkInfoBarClass parent_class;
-};
-
-struct _GladeObjectStub
-{
-  GtkInfoBar parent_instance;
-  GladeObjectStubPrivate *priv;
-};
-
-GType glade_object_stub_get_type (void) G_GNUC_CONST;
+#define GLADE_TYPE_OBJECT_STUB glade_object_stub_get_type ()
+G_DECLARE_FINAL_TYPE (GladeObjectStub, glade_object_stub, GLADE, OBJECT_STUB, GtkInfoBar)
 
 G_END_DECLS
 


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