[gtk/wip/baedert/transforms5] spinner: Remove private struct



commit 18d5036383a43d14e3ffd62225ec2828eebae260
Author: Timm Bäder <mail baedert org>
Date:   Sun Aug 19 13:26:34 2018 +0200

    spinner: Remove private struct
    
    Since priv->active is equivalent to the widget state being CHECKED, we
    can as well use that everywhere.

 gtk/gtkspinner.c | 24 ++++++++++--------------
 1 file changed, 10 insertions(+), 14 deletions(-)
---
diff --git a/gtk/gtkspinner.c b/gtk/gtkspinner.c
index 800a3ed9f8..2eba10f5c2 100644
--- a/gtk/gtkspinner.c
+++ b/gtk/gtkspinner.c
@@ -67,13 +67,7 @@ enum {
   PROP_ACTIVE
 };
 
-struct _GtkSpinnerPrivate
-{
-  guint active : 1;
-};
-typedef struct _GtkSpinnerPrivate GtkSpinnerPrivate;
-
-G_DEFINE_TYPE_WITH_PRIVATE (GtkSpinner, gtk_spinner, GTK_TYPE_WIDGET)
+G_DEFINE_TYPE (GtkSpinner, gtk_spinner, GTK_TYPE_WIDGET)
 
 #define DEFAULT_SIZE 16
 
@@ -118,18 +112,22 @@ gtk_spinner_snapshot (GtkWidget   *widget,
                                GTK_CSS_IMAGE_BUILTIN_SPINNER);
 }
 
+static gboolean
+gtk_spinner_get_active (GtkSpinner *spinner)
+{
+  return (gtk_widget_get_state_flags ((GtkWidget *)spinner) & GTK_STATE_FLAG_CHECKED) > 0;
+}
+
 static void
 gtk_spinner_set_active (GtkSpinner *spinner,
                         gboolean    active)
 {
-  GtkSpinnerPrivate *priv = gtk_spinner_get_instance_private (spinner);
+  gboolean current_active = gtk_spinner_get_active (spinner);
 
   active = !!active;
 
-  if (priv->active != active)
+  if (active != current_active)
     {
-      priv->active = active;
-
       g_object_notify (G_OBJECT (spinner), "active");
 
       if (active)
@@ -147,12 +145,10 @@ gtk_spinner_get_property (GObject    *object,
                           GValue     *value,
                           GParamSpec *pspec)
 {
-  GtkSpinnerPrivate *priv = gtk_spinner_get_instance_private (GTK_SPINNER (object));
-
   switch (param_id)
     {
       case PROP_ACTIVE:
-        g_value_set_boolean (value, priv->active);
+        g_value_set_boolean (value, gtk_spinner_get_active (GTK_SPINNER (object)));
         break;
       default:
         G_OBJECT_WARN_INVALID_PROPERTY_ID (object, param_id, pspec);


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