[gnome-builder] builder: modernize GObjects.Use G_DECLARE_FINAL_TYPE() and G_DECLARE_DERIVABLE_TYPE()
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-builder] builder: modernize GObjects.Use G_DECLARE_FINAL_TYPE() and G_DECLARE_DERIVABLE_TYPE()
- Date: Fri, 8 May 2015 18:54:18 +0000 (UTC)
commit 9440dc0c27162e8ca268b00f2c495a12da639a26
Author: Dimitris Zenios <dimitris zenios gmail com>
Date: Fri May 8 16:14:22 2015 +0300
builder: modernize GObjects.Use G_DECLARE_FINAL_TYPE() and G_DECLARE_DERIVABLE_TYPE()
https://bugzilla.gnome.org/show_bug.cgi?id=749033
src/commands/gb-command-bar-item.c | 38 ++--
src/commands/gb-command-bar-item.h | 31 +---
src/commands/gb-command-gaction-provider.c | 5 +
src/commands/gb-command-gaction-provider.h | 35 +---
src/commands/gb-command-gaction.c | 54 +++---
src/commands/gb-command-gaction.h | 28 +---
src/commands/gb-command-manager.c | 28 ++--
src/commands/gb-command-manager.h | 27 +---
src/commands/gb-command-provider.c | 31 ++--
src/commands/gb-command-provider.h | 27 +---
src/commands/gb-command-result.c | 49 +++---
src/commands/gb-command-result.h | 27 +---
src/commands/gb-command-vim.c | 33 ++--
src/commands/gb-command-vim.h | 31 +---
src/commands/gb-command.h | 19 +--
src/devhelp/gb-devhelp-document.c | 62 +++----
src/devhelp/gb-devhelp-document.h | 30 +---
src/devhelp/gb-devhelp-view.c | 61 +++----
src/devhelp/gb-devhelp-view.h | 30 +---
src/dialogs/gb-recent-project-row.c | 5 -
src/dialogs/gb-recent-project-row.h | 17 +--
src/editor/gb-editor-settings-widget.c | 79 ++++-----
src/editor/gb-editor-settings-widget.h | 26 +---
src/gd/gd-tagged-entry.c | 225 +++++++++++-------------
src/gd/gd-tagged-entry.h | 46 +-----
src/gedit/gedit-menu-stack-switcher.c | 146 +++++++---------
src/gedit/gedit-menu-stack-switcher.h | 31 +---
src/html/gb-html-document.c | 46 +++---
src/html/gb-html-document.h | 26 +---
src/nautilus/nautilus-floating-bar.c | 92 +++++-----
src/nautilus/nautilus-floating-bar.h | 27 +---
src/preferences/gb-preferences-page-git.c | 62 +++----
src/preferences/gb-preferences-page-git.h | 28 +---
src/preferences/gb-preferences-page-language.c | 90 ++++------
src/preferences/gb-preferences-page-language.h | 28 +---
src/preferences/gb-preferences-page.c | 43 +++--
src/preferences/gb-preferences-page.h | 23 +---
src/tree/gb-tree-builder.c | 34 ++--
src/tree/gb-tree-builder.h | 21 +--
src/tree/gb-tree-node.c | 87 +++++-----
src/tree/gb-tree-node.h | 31 +---
src/tree/gb-tree.c | 104 +++++------
src/tree/gb-tree.h | 23 +---
43 files changed, 721 insertions(+), 1265 deletions(-)
---
diff --git a/src/commands/gb-command-bar-item.c b/src/commands/gb-command-bar-item.c
index de4575b..8587cbd 100644
--- a/src/commands/gb-command-bar-item.c
+++ b/src/commands/gb-command-bar-item.c
@@ -19,17 +19,19 @@
#include <glib/gi18n.h>
#include "gb-command-bar-item.h"
+#include "gb-widget.h"
-struct _GbCommandBarItemPrivate
+struct _GbCommandBarItem
{
+ GtkBin parent_instance;
GbCommandResult *result;
- GtkWidget *command_text;
- GtkWidget *result_text;
- GtkWidget *equal_label;
+ GtkWidget *command_text;
+ GtkWidget *result_text;
+ GtkWidget *equal_label;
};
-G_DEFINE_TYPE_WITH_PRIVATE (GbCommandBarItem, gb_command_bar_item, GTK_TYPE_BIN)
+G_DEFINE_TYPE (GbCommandBarItem, gb_command_bar_item, GTK_TYPE_BIN)
enum {
PROP_0,
@@ -61,7 +63,7 @@ gb_command_bar_item_get_result (GbCommandBarItem *item)
{
g_return_val_if_fail (GB_IS_COMMAND_BAR_ITEM (item), NULL);
- return item->priv->result_text;
+ return item->result_text;
}
static gboolean
@@ -81,21 +83,21 @@ gb_command_bar_item_set_result (GbCommandBarItem *item,
g_return_if_fail (GB_IS_COMMAND_BAR_ITEM (item));
g_return_if_fail (GB_IS_COMMAND_RESULT (result));
- if (item->priv->result != result)
+ if (item->result != result)
{
- g_clear_object (&item->priv->result);
+ g_clear_object (&item->result);
if (result)
{
- item->priv->result = g_object_ref (result);
+ item->result = g_object_ref (result);
g_object_bind_property (result, "command-text",
- item->priv->command_text, "label",
+ item->command_text, "label",
G_BINDING_SYNC_CREATE);
g_object_bind_property (result, "result-text",
- item->priv->result_text, "label",
+ item->result_text, "label",
G_BINDING_SYNC_CREATE);
g_object_bind_property_full (result, "result-text",
- item->priv->equal_label, "visible",
+ item->equal_label, "visible",
G_BINDING_SYNC_CREATE,
string_to_boolean,
NULL, NULL, NULL);
@@ -108,9 +110,9 @@ gb_command_bar_item_set_result (GbCommandBarItem *item,
static void
gb_command_bar_item_dispose (GObject *object)
{
- GbCommandBarItemPrivate *priv = GB_COMMAND_BAR_ITEM (object)->priv;
+ GbCommandBarItem *self = GB_COMMAND_BAR_ITEM (object);
- g_clear_object (&priv->result);
+ g_clear_object (&self->result);
G_OBJECT_CLASS (gb_command_bar_item_parent_class)->dispose (object);
}
@@ -166,9 +168,9 @@ gb_command_bar_item_class_init (GbCommandBarItemClass *klass)
gtk_widget_class_set_template_from_resource (widget_class,
"/org/gnome/builder/ui/gb-command-bar-item.ui");
- gtk_widget_class_bind_template_child_private (widget_class, GbCommandBarItem, command_text);
- gtk_widget_class_bind_template_child_private (widget_class, GbCommandBarItem, result_text);
- gtk_widget_class_bind_template_child_private (widget_class, GbCommandBarItem, equal_label);
+ GB_WIDGET_CLASS_BIND (widget_class, GbCommandBarItem, command_text);
+ GB_WIDGET_CLASS_BIND (widget_class, GbCommandBarItem, result_text);
+ GB_WIDGET_CLASS_BIND (widget_class, GbCommandBarItem, equal_label);
gParamSpecs [PROP_RESULT] =
g_param_spec_object ("result",
@@ -185,7 +187,5 @@ gb_command_bar_item_class_init (GbCommandBarItemClass *klass)
static void
gb_command_bar_item_init (GbCommandBarItem *self)
{
- self->priv = gb_command_bar_item_get_instance_private (self);
-
gtk_widget_init_template (GTK_WIDGET (self));
}
diff --git a/src/commands/gb-command-bar-item.h b/src/commands/gb-command-bar-item.h
index 2aa4d72..ad35d84 100644
--- a/src/commands/gb-command-bar-item.h
+++ b/src/commands/gb-command-bar-item.h
@@ -25,32 +25,11 @@
G_BEGIN_DECLS
-#define GB_TYPE_COMMAND_BAR_ITEM (gb_command_bar_item_get_type())
-#define GB_COMMAND_BAR_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_COMMAND_BAR_ITEM,
GbCommandBarItem))
-#define GB_COMMAND_BAR_ITEM_CONST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_COMMAND_BAR_ITEM,
GbCommandBarItem const))
-#define GB_COMMAND_BAR_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GB_TYPE_COMMAND_BAR_ITEM,
GbCommandBarItemClass))
-#define GB_IS_COMMAND_BAR_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GB_TYPE_COMMAND_BAR_ITEM))
-#define GB_IS_COMMAND_BAR_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GB_TYPE_COMMAND_BAR_ITEM))
-#define GB_COMMAND_BAR_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GB_TYPE_COMMAND_BAR_ITEM,
GbCommandBarItemClass))
-
-typedef struct _GbCommandBarItem GbCommandBarItem;
-typedef struct _GbCommandBarItemClass GbCommandBarItemClass;
-typedef struct _GbCommandBarItemPrivate GbCommandBarItemPrivate;
-
-struct _GbCommandBarItem
-{
- GtkBin parent;
-
- /*< private >*/
- GbCommandBarItemPrivate *priv;
-};
-
-struct _GbCommandBarItemClass
-{
- GtkBinClass parent;
-};
-
-GType gb_command_bar_item_get_type (void);
+#define GB_TYPE_COMMAND_BAR_ITEM (gb_command_bar_item_get_type())
+
+G_DECLARE_FINAL_TYPE (GbCommandBarItem, gb_command_bar_item,
+ GB, COMMAND_BAR_ITEM, GtkBin)
+
GtkWidget *gb_command_bar_item_new (GbCommandResult *result);
GtkWidget *gb_command_bar_item_get_result (GbCommandBarItem *item);
diff --git a/src/commands/gb-command-gaction-provider.c b/src/commands/gb-command-gaction-provider.c
index 23ff3f4..5199335 100644
--- a/src/commands/gb-command-gaction-provider.c
+++ b/src/commands/gb-command-gaction-provider.c
@@ -29,6 +29,11 @@
#include "gb-command-gaction.h"
#include "gb-view.h"
+struct _GbCommandGactionProvider
+{
+ GbCommandProvider parent_instance;
+};
+
G_DEFINE_TYPE (GbCommandGactionProvider, gb_command_gaction_provider, GB_TYPE_COMMAND_PROVIDER)
/* Set this to 1 to enable the debug helper which prints the
diff --git a/src/commands/gb-command-gaction-provider.h b/src/commands/gb-command-gaction-provider.h
index 1ace8a0..aeb4e50 100644
--- a/src/commands/gb-command-gaction-provider.h
+++ b/src/commands/gb-command-gaction-provider.h
@@ -23,35 +23,12 @@
G_BEGIN_DECLS
-#define GB_TYPE_COMMAND_GACTION_PROVIDER (gb_command_gaction_provider_get_type())
-#define GB_COMMAND_GACTION_PROVIDER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj),
GB_TYPE_COMMAND_GACTION_PROVIDER, GbCommandGactionProvider))
-#define GB_COMMAND_GACTION_PROVIDER_CONST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj),
GB_TYPE_COMMAND_GACTION_PROVIDER, GbCommandGactionProvider const))
-#define GB_COMMAND_GACTION_PROVIDER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass),
GB_TYPE_COMMAND_GACTION_PROVIDER, GbCommandGactionProviderClass))
-#define GB_IS_COMMAND_GACTION_PROVIDER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj),
GB_TYPE_COMMAND_GACTION_PROVIDER))
-#define GB_IS_COMMAND_GACTION_PROVIDER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass),
GB_TYPE_COMMAND_GACTION_PROVIDER))
-#define GB_COMMAND_GACTION_PROVIDER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj),
GB_TYPE_COMMAND_GACTION_PROVIDER, GbCommandGactionProviderClass))
-
-typedef struct _GbCommandGactionProvider GbCommandGactionProvider;
-typedef struct _GbCommandGactionProviderClass GbCommandGactionProviderClass;
-typedef struct _GbCommandGactionProviderPrivate GbCommandGactionProviderPrivate;
-
-G_DEFINE_AUTOPTR_CLEANUP_FUNC (GbCommandGactionProvider, g_object_unref)
-
-struct _GbCommandGactionProvider
-{
- GbCommandProvider parent;
-
- /*< private >*/
- GbCommandGactionProviderPrivate *priv;
-};
-
-struct _GbCommandGactionProviderClass
-{
- GbCommandProviderClass parent;
-};
-
-GType gb_command_gaction_provider_get_type (void);
-GbCommandProvider *gb_command_gaction_provider_new (GbWorkbench *workbench);
+#define GB_TYPE_COMMAND_GACTION_PROVIDER (gb_command_gaction_provider_get_type())
+
+G_DECLARE_FINAL_TYPE (GbCommandGactionProvider, gb_command_gaction_provider,
+ GB, COMMAND_GACTION_PROVIDER, GbCommandProvider)
+
+GbCommandProvider *gb_command_gaction_provider_new (GbWorkbench *workbench);
G_END_DECLS
diff --git a/src/commands/gb-command-gaction.c b/src/commands/gb-command-gaction.c
index 90e4a4d..0082469 100644
--- a/src/commands/gb-command-gaction.c
+++ b/src/commands/gb-command-gaction.c
@@ -23,15 +23,16 @@
#include "gb-command-gaction.h"
-struct _GbCommandGactionPrivate
+struct _GbCommandGaction
{
+ GbCommand parent_instance;
+
GActionGroup *action_group;
gchar *action_name;
GVariant *parameters;
};
-G_DEFINE_TYPE_WITH_PRIVATE (GbCommandGaction, gb_command_gaction,
- GB_TYPE_COMMAND)
+G_DEFINE_TYPE (GbCommandGaction, gb_command_gaction, GB_TYPE_COMMAND)
enum {
PROP_0,
@@ -50,10 +51,10 @@ gb_command_gaction_set_action_group (GbCommandGaction *gaction,
g_return_if_fail (GB_IS_COMMAND_GACTION (gaction));
g_return_if_fail (G_IS_ACTION_GROUP (action_group));
- if (gaction->priv->action_group != action_group)
+ if (gaction->action_group != action_group)
{
- g_clear_object (&gaction->priv->action_group);
- gaction->priv->action_group = g_object_ref (action_group);
+ g_clear_object (&gaction->action_group);
+ gaction->action_group = g_object_ref (action_group);
}
}
@@ -63,10 +64,10 @@ gb_command_gaction_set_action_name (GbCommandGaction *gaction,
{
g_return_if_fail (GB_IS_COMMAND_GACTION (gaction));
- if (gaction->priv->action_name != action_name)
+ if (gaction->action_name != action_name)
{
- g_clear_pointer (&gaction->priv->action_name, g_free);
- gaction->priv->action_name = g_strdup (action_name);
+ g_clear_pointer (&gaction->action_name, g_free);
+ gaction->action_name = g_strdup (action_name);
}
}
@@ -76,10 +77,10 @@ gb_command_gaction_set_parameters (GbCommandGaction *gaction,
{
g_return_if_fail (GB_IS_COMMAND_GACTION (gaction));
- if (gaction->priv->parameters != variant)
+ if (gaction->parameters != variant)
{
- g_clear_pointer (&gaction->priv->parameters, g_variant_unref);
- gaction->priv->parameters = g_variant_ref (variant);
+ g_clear_pointer (&gaction->parameters, g_variant_unref);
+ gaction->parameters = g_variant_ref (variant);
}
}
@@ -90,14 +91,14 @@ gb_command_gaction_execute (GbCommand *command)
g_return_val_if_fail (GB_IS_COMMAND_GACTION (self), NULL);
- if (self->priv->action_group &&
- self->priv->action_name &&
- g_action_group_has_action (self->priv->action_group,
- self->priv->action_name))
+ if (self->action_group &&
+ self->action_name &&
+ g_action_group_has_action (self->action_group,
+ self->action_name))
{
- g_action_group_activate_action (self->priv->action_group,
- self->priv->action_name,
- self->priv->parameters);
+ g_action_group_activate_action (self->action_group,
+ self->action_name,
+ self->parameters);
}
return NULL;
@@ -106,11 +107,11 @@ gb_command_gaction_execute (GbCommand *command)
static void
gb_command_gaction_finalize (GObject *object)
{
- GbCommandGactionPrivate *priv = GB_COMMAND_GACTION (object)->priv;
+ GbCommandGaction *self = GB_COMMAND_GACTION (object);
- g_clear_object (&priv->action_group);
- g_clear_pointer (&priv->action_name, g_free);
- g_clear_pointer (&priv->parameters, g_variant_unref);
+ g_clear_object (&self->action_group);
+ g_clear_pointer (&self->action_name, g_free);
+ g_clear_pointer (&self->parameters, g_variant_unref);
G_OBJECT_CLASS (gb_command_gaction_parent_class)->finalize (object);
}
@@ -126,15 +127,15 @@ gb_command_gaction_get_property (GObject *object,
switch (prop_id)
{
case PROP_ACTION_GROUP:
- g_value_set_object (value, self->priv->action_group);
+ g_value_set_object (value, self->action_group);
break;
case PROP_ACTION_NAME:
- g_value_set_string (value, self->priv->action_name);
+ g_value_set_string (value, self->action_name);
break;
case PROP_PARAMETERS:
- g_value_set_variant (value, self->priv->parameters);
+ g_value_set_variant (value, self->parameters);
break;
default:
@@ -209,5 +210,4 @@ gb_command_gaction_class_init (GbCommandGactionClass *klass)
static void
gb_command_gaction_init (GbCommandGaction *self)
{
- self->priv = gb_command_gaction_get_instance_private (self);
}
diff --git a/src/commands/gb-command-gaction.h b/src/commands/gb-command-gaction.h
index 942ad0e..0b94079 100644
--- a/src/commands/gb-command-gaction.h
+++ b/src/commands/gb-command-gaction.h
@@ -23,32 +23,10 @@
G_BEGIN_DECLS
-#define GB_TYPE_COMMAND_GACTION (gb_command_gaction_get_type())
-#define GB_COMMAND_GACTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_COMMAND_GACTION,
GbCommandGaction))
-#define GB_COMMAND_GACTION_CONST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_COMMAND_GACTION,
GbCommandGaction const))
-#define GB_COMMAND_GACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GB_TYPE_COMMAND_GACTION,
GbCommandGactionClass))
-#define GB_IS_COMMAND_GACTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GB_TYPE_COMMAND_GACTION))
-#define GB_IS_COMMAND_GACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GB_TYPE_COMMAND_GACTION))
-#define GB_COMMAND_GACTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GB_TYPE_COMMAND_GACTION,
GbCommandGactionClass))
+#define GB_TYPE_COMMAND_GACTION (gb_command_gaction_get_type())
-typedef struct _GbCommandGaction GbCommandGaction;
-typedef struct _GbCommandGactionClass GbCommandGactionClass;
-typedef struct _GbCommandGactionPrivate GbCommandGactionPrivate;
-
-struct _GbCommandGaction
-{
- GbCommand parent;
-
- /*< private >*/
- GbCommandGactionPrivate *priv;
-};
-
-struct _GbCommandGactionClass
-{
- GbCommandClass parent;
-};
-
-GType gb_command_gaction_get_type (void);
+G_DECLARE_FINAL_TYPE (GbCommandGaction, gb_command_gaction,
+ GB, COMMAND_GACTION, GbCommand)
G_END_DECLS
diff --git a/src/commands/gb-command-manager.c b/src/commands/gb-command-manager.c
index e9d9c3d..896ae7a 100644
--- a/src/commands/gb-command-manager.c
+++ b/src/commands/gb-command-manager.c
@@ -23,12 +23,14 @@
#include "gb-command-manager.h"
#include "gb-workbench.h"
-struct _GbCommandManagerPrivate
+struct _GbCommandManager
{
+ GObject parent_instance;
+
GPtrArray *providers;
};
-G_DEFINE_TYPE_WITH_PRIVATE (GbCommandManager, gb_command_manager, G_TYPE_OBJECT)
+G_DEFINE_TYPE (GbCommandManager, gb_command_manager, G_TYPE_OBJECT)
GbCommandManager *
gb_command_manager_new (void)
@@ -70,7 +72,7 @@ on_notify_priority_cb (GbCommandProvider *provider,
g_return_if_fail (GB_IS_COMMAND_PROVIDER (provider));
g_return_if_fail (GB_IS_COMMAND_MANAGER (manager));
- g_ptr_array_sort (manager->priv->providers, provider_compare_func);
+ g_ptr_array_sort (manager->providers, provider_compare_func);
}
void
@@ -84,8 +86,8 @@ gb_command_manager_add_provider (GbCommandManager *manager,
G_CALLBACK (on_notify_priority_cb),
manager, 0);
- g_ptr_array_add (manager->priv->providers, g_object_ref (provider));
- g_ptr_array_sort (manager->priv->providers, provider_compare_func);
+ g_ptr_array_add (manager->providers, g_object_ref (provider));
+ g_ptr_array_sort (manager->providers, provider_compare_func);
}
GbCommand *
@@ -98,11 +100,11 @@ gb_command_manager_lookup (GbCommandManager *manager,
g_return_val_if_fail (GB_IS_COMMAND_MANAGER (manager), NULL);
g_return_val_if_fail (command_text, NULL);
- for (i = 0; i < manager->priv->providers->len; i++)
+ for (i = 0; i < manager->providers->len; i++)
{
GbCommandProvider *provider;
- provider = g_ptr_array_index (manager->priv->providers, i);
+ provider = g_ptr_array_index (manager->providers, i);
ret = gb_command_provider_lookup (provider, command_text);
if (ret)
@@ -131,11 +133,11 @@ gb_command_manager_complete (GbCommandManager *manager,
completions = g_ptr_array_new ();
- for (i = 0; i < manager->priv->providers->len; i++)
+ for (i = 0; i < manager->providers->len; i++)
{
GbCommandProvider *provider;
- provider = g_ptr_array_index (manager->priv->providers, i);
+ provider = g_ptr_array_index (manager->providers, i);
gb_command_provider_complete (provider, completions, initial_command_text);
}
@@ -150,9 +152,9 @@ gb_command_manager_complete (GbCommandManager *manager,
static void
gb_command_manager_finalize (GObject *object)
{
- GbCommandManagerPrivate *priv = GB_COMMAND_MANAGER (object)->priv;
+ GbCommandManager *self = GB_COMMAND_MANAGER (object);
- g_clear_pointer (&priv->providers, g_ptr_array_unref);
+ g_clear_pointer (&self->providers, g_ptr_array_unref);
G_OBJECT_CLASS (gb_command_manager_parent_class)->finalize (object);
}
@@ -168,7 +170,5 @@ gb_command_manager_class_init (GbCommandManagerClass *klass)
static void
gb_command_manager_init (GbCommandManager *self)
{
- self->priv = gb_command_manager_get_instance_private (self);
-
- self->priv->providers = g_ptr_array_new_with_free_func (g_object_unref);
+ self->providers = g_ptr_array_new_with_free_func (g_object_unref);
}
diff --git a/src/commands/gb-command-manager.h b/src/commands/gb-command-manager.h
index 0a8740a..c23b425 100644
--- a/src/commands/gb-command-manager.h
+++ b/src/commands/gb-command-manager.h
@@ -26,32 +26,11 @@
G_BEGIN_DECLS
-#define GB_TYPE_COMMAND_MANAGER (gb_command_manager_get_type())
-#define GB_COMMAND_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_COMMAND_MANAGER,
GbCommandManager))
-#define GB_COMMAND_MANAGER_CONST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_COMMAND_MANAGER,
GbCommandManager const))
-#define GB_COMMAND_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GB_TYPE_COMMAND_MANAGER,
GbCommandManagerClass))
-#define GB_IS_COMMAND_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GB_TYPE_COMMAND_MANAGER))
-#define GB_IS_COMMAND_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GB_TYPE_COMMAND_MANAGER))
-#define GB_COMMAND_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GB_TYPE_COMMAND_MANAGER,
GbCommandManagerClass))
+#define GB_TYPE_COMMAND_MANAGER (gb_command_manager_get_type())
-typedef struct _GbCommandManager GbCommandManager;
-typedef struct _GbCommandManagerClass GbCommandManagerClass;
-typedef struct _GbCommandManagerPrivate GbCommandManagerPrivate;
+G_DECLARE_FINAL_TYPE (GbCommandManager, gb_command_manager,
+ GB, COMMAND_MANAGER, GObject)
-struct _GbCommandManager
-{
- GObject parent;
-
- /*< private >*/
- GbCommandManagerPrivate *priv;
-};
-
-struct _GbCommandManagerClass
-{
- GObjectClass parent;
-};
-
-GType gb_command_manager_get_type (void);
GbCommandManager *gb_command_manager_new (void);
GbCommand *gb_command_manager_lookup (GbCommandManager *manager,
const gchar *command_text);
diff --git a/src/commands/gb-command-provider.c b/src/commands/gb-command-provider.c
index e43993c..15b4d92 100644
--- a/src/commands/gb-command-provider.c
+++ b/src/commands/gb-command-provider.c
@@ -21,12 +21,12 @@
#include "gb-command-provider.h"
#include "gb-workbench.h"
-struct _GbCommandProviderPrivate
+typedef struct
{
GbWorkbench *workbench;
GbView *active_view;
gint priority;
-};
+} GbCommandProviderPrivate;
G_DEFINE_TYPE_WITH_PRIVATE (GbCommandProvider, gb_command_provider, G_TYPE_OBJECT)
@@ -66,22 +66,22 @@ gb_command_provider_new (GbWorkbench *workbench)
GbView *
gb_command_provider_get_active_view (GbCommandProvider *provider)
{
+ GbCommandProviderPrivate *priv = gb_command_provider_get_instance_private (provider);
+
g_return_val_if_fail (GB_IS_COMMAND_PROVIDER (provider), NULL);
- return provider->priv->active_view;
+ return priv->active_view;
}
static void
gb_command_provider_set_active_view (GbCommandProvider *provider,
GbView *tab)
{
- GbCommandProviderPrivate *priv;
+ GbCommandProviderPrivate *priv = gb_command_provider_get_instance_private (provider);
g_return_if_fail (GB_IS_COMMAND_PROVIDER (provider));
g_return_if_fail (!tab || GB_IS_VIEW (tab));
- priv = provider->priv;
-
if (priv->active_view)
{
g_object_remove_weak_pointer (G_OBJECT (priv->active_view),
@@ -149,22 +149,22 @@ gb_command_provider_disconnect (GbCommandProvider *provider,
GbWorkbench *
gb_command_provider_get_workbench (GbCommandProvider *provider)
{
+ GbCommandProviderPrivate *priv = gb_command_provider_get_instance_private (provider);
+
g_return_val_if_fail (GB_IS_COMMAND_PROVIDER (provider), NULL);
- return provider->priv->workbench;
+ return priv->workbench;
}
static void
gb_command_provider_set_workbench (GbCommandProvider *provider,
GbWorkbench *workbench)
{
- GbCommandProviderPrivate *priv;
+ GbCommandProviderPrivate *priv = gb_command_provider_get_instance_private (provider);
g_return_if_fail (GB_IS_COMMAND_PROVIDER (provider));
g_return_if_fail (!workbench || GB_IS_WORKBENCH (workbench));
- priv = provider->priv;
-
if (priv->workbench != workbench)
{
if (priv->workbench)
@@ -191,20 +191,24 @@ gb_command_provider_set_workbench (GbCommandProvider *provider,
gint
gb_command_provider_get_priority (GbCommandProvider *provider)
{
+ GbCommandProviderPrivate *priv = gb_command_provider_get_instance_private (provider);
+
g_return_val_if_fail (GB_IS_COMMAND_PROVIDER (provider), 0);
- return provider->priv->priority;
+ return priv->priority;
}
void
gb_command_provider_set_priority (GbCommandProvider *provider,
gint priority)
{
+ GbCommandProviderPrivate *priv = gb_command_provider_get_instance_private (provider);
+
g_return_if_fail (GB_IS_COMMAND_PROVIDER (provider));
- if (provider->priv->priority != priority)
+ if (priv->priority != priority)
{
- provider->priv->priority = priority;
+ priv->priority = priority;
g_object_notify_by_pspec (G_OBJECT (provider),
gParamSpecs [PROP_PRIORITY]);
}
@@ -406,5 +410,4 @@ gb_command_provider_class_init (GbCommandProviderClass *klass)
static void
gb_command_provider_init (GbCommandProvider *self)
{
- self->priv = gb_command_provider_get_instance_private (self);
}
diff --git a/src/commands/gb-command-provider.h b/src/commands/gb-command-provider.h
index 21c4b12..f1ee95b 100644
--- a/src/commands/gb-command-provider.h
+++ b/src/commands/gb-command-provider.h
@@ -27,40 +27,21 @@
G_BEGIN_DECLS
-#define GB_TYPE_COMMAND_PROVIDER (gb_command_provider_get_type())
-#define GB_COMMAND_PROVIDER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_COMMAND_PROVIDER,
GbCommandProvider))
-#define GB_COMMAND_PROVIDER_CONST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_COMMAND_PROVIDER,
GbCommandProvider const))
-#define GB_COMMAND_PROVIDER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GB_TYPE_COMMAND_PROVIDER,
GbCommandProviderClass))
-#define GB_IS_COMMAND_PROVIDER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GB_TYPE_COMMAND_PROVIDER))
-#define GB_IS_COMMAND_PROVIDER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GB_TYPE_COMMAND_PROVIDER))
-#define GB_COMMAND_PROVIDER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GB_TYPE_COMMAND_PROVIDER,
GbCommandProviderClass))
+#define GB_TYPE_COMMAND_PROVIDER (gb_command_provider_get_type())
-typedef struct _GbCommandProvider GbCommandProvider;
-typedef struct _GbCommandProviderClass GbCommandProviderClass;
-typedef struct _GbCommandProviderPrivate GbCommandProviderPrivate;
-
-G_DEFINE_AUTOPTR_CLEANUP_FUNC (GbCommandProvider, g_object_unref)
-
-struct _GbCommandProvider
-{
- GObject parent;
-
- /*< private >*/
- GbCommandProviderPrivate *priv;
-};
+G_DECLARE_DERIVABLE_TYPE (GbCommandProvider, gb_command_provider, GB, COMMAND_PROVIDER, GObject)
struct _GbCommandProviderClass
{
GObjectClass parent;
- GbCommand *(*lookup) (GbCommandProvider *provider,
- const gchar *command_text);
+ GbCommand *(*lookup) (GbCommandProvider *provider,
+ const gchar *command_text);
void (*complete) (GbCommandProvider *provider,
GPtrArray *completions,
const gchar *command_text);
};
-GType gb_command_provider_get_type (void);
GbCommandProvider *gb_command_provider_new (GbWorkbench *workbench);
GbWorkbench *gb_command_provider_get_workbench (GbCommandProvider *provider);
GbView *gb_command_provider_get_active_view (GbCommandProvider *provider);
diff --git a/src/commands/gb-command-result.c b/src/commands/gb-command-result.c
index e9f45e6..f44e5c0 100644
--- a/src/commands/gb-command-result.c
+++ b/src/commands/gb-command-result.c
@@ -20,15 +20,17 @@
#include "gb-command-result.h"
-struct _GbCommandResultPrivate
+struct _GbCommandResult
{
- gchar *command_text;
- gchar *result_text;
- guint is_error : 1;
- guint is_running : 1;
+ GObject parent_instance;
+
+ gchar *command_text;
+ gchar *result_text;
+ guint is_error : 1;
+ guint is_running : 1;
};
-G_DEFINE_TYPE_WITH_PRIVATE (GbCommandResult, gb_command_result, G_TYPE_OBJECT)
+G_DEFINE_TYPE (GbCommandResult, gb_command_result, G_TYPE_OBJECT)
enum {
PROP_0,
@@ -52,7 +54,7 @@ gb_command_result_get_command_text (GbCommandResult *result)
{
g_return_val_if_fail (GB_IS_COMMAND_RESULT (result), NULL);
- return result->priv->command_text;
+ return result->command_text;
}
void
@@ -61,10 +63,10 @@ gb_command_result_set_command_text (GbCommandResult *result,
{
g_return_if_fail (GB_IS_COMMAND_RESULT (result));
- if (result->priv->command_text != command_text)
+ if (result->command_text != command_text)
{
- g_free (result->priv->command_text);
- result->priv->command_text = g_strdup (command_text);
+ g_free (result->command_text);
+ result->command_text = g_strdup (command_text);
g_object_notify_by_pspec (G_OBJECT (result),
gParamSpecs [PROP_COMMAND_TEXT]);
}
@@ -75,7 +77,7 @@ gb_command_result_get_result_text (GbCommandResult *result)
{
g_return_val_if_fail (GB_IS_COMMAND_RESULT (result), NULL);
- return result->priv->result_text;
+ return result->result_text;
}
void
@@ -84,10 +86,10 @@ gb_command_result_set_result_text (GbCommandResult *result,
{
g_return_if_fail (GB_IS_COMMAND_RESULT (result));
- if (result->priv->result_text != result_text)
+ if (result->result_text != result_text)
{
- g_free (result->priv->result_text);
- result->priv->result_text = g_strdup (result_text);
+ g_free (result->result_text);
+ result->result_text = g_strdup (result_text);
g_object_notify_by_pspec (G_OBJECT (result),
gParamSpecs [PROP_RESULT_TEXT]);
}
@@ -98,7 +100,7 @@ gb_command_result_get_is_running (GbCommandResult *result)
{
g_return_val_if_fail (GB_IS_COMMAND_RESULT (result), FALSE);
- return result->priv->is_running;
+ return result->is_running;
}
void
@@ -107,9 +109,9 @@ gb_command_result_set_is_running (GbCommandResult *result,
{
g_return_if_fail (GB_IS_COMMAND_RESULT (result));
- if (result->priv->is_running != is_running)
+ if (result->is_running != is_running)
{
- result->priv->is_running = !!is_running;
+ result->is_running = !!is_running;
g_object_notify_by_pspec (G_OBJECT (result),
gParamSpecs [PROP_IS_RUNNING]);
}
@@ -120,7 +122,7 @@ gb_command_result_get_is_error (GbCommandResult *result)
{
g_return_val_if_fail (GB_IS_COMMAND_RESULT (result), FALSE);
- return result->priv->is_error;
+ return result->is_error;
}
void
@@ -129,9 +131,9 @@ gb_command_result_set_is_error (GbCommandResult *result,
{
g_return_if_fail (GB_IS_COMMAND_RESULT (result));
- if (result->priv->is_error != is_error)
+ if (result->is_error != is_error)
{
- result->priv->is_error = !!is_error;
+ result->is_error = !!is_error;
g_object_notify_by_pspec (G_OBJECT (result),
gParamSpecs [PROP_IS_ERROR]);
}
@@ -140,10 +142,10 @@ gb_command_result_set_is_error (GbCommandResult *result,
static void
gb_command_result_finalize (GObject *object)
{
- GbCommandResultPrivate *priv = GB_COMMAND_RESULT (object)->priv;
+ GbCommandResult *self = GB_COMMAND_RESULT (object);
- g_clear_pointer (&priv->command_text, g_free);
- g_clear_pointer (&priv->result_text, g_free);
+ g_clear_pointer (&self->command_text, g_free);
+ g_clear_pointer (&self->result_text, g_free);
G_OBJECT_CLASS (gb_command_result_parent_class)->finalize (object);
}
@@ -257,5 +259,4 @@ gb_command_result_class_init (GbCommandResultClass *klass)
static void
gb_command_result_init (GbCommandResult *self)
{
- self->priv = gb_command_result_get_instance_private (self);
}
diff --git a/src/commands/gb-command-result.h b/src/commands/gb-command-result.h
index ab82d1f..a50ebed 100644
--- a/src/commands/gb-command-result.h
+++ b/src/commands/gb-command-result.h
@@ -23,32 +23,11 @@
G_BEGIN_DECLS
-#define GB_TYPE_COMMAND_RESULT (gb_command_result_get_type())
-#define GB_COMMAND_RESULT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_COMMAND_RESULT,
GbCommandResult))
-#define GB_COMMAND_RESULT_CONST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_COMMAND_RESULT,
GbCommandResult const))
-#define GB_COMMAND_RESULT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GB_TYPE_COMMAND_RESULT,
GbCommandResultClass))
-#define GB_IS_COMMAND_RESULT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GB_TYPE_COMMAND_RESULT))
-#define GB_IS_COMMAND_RESULT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GB_TYPE_COMMAND_RESULT))
-#define GB_COMMAND_RESULT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GB_TYPE_COMMAND_RESULT,
GbCommandResultClass))
+#define GB_TYPE_COMMAND_RESULT (gb_command_result_get_type())
-typedef struct _GbCommandResult GbCommandResult;
-typedef struct _GbCommandResultClass GbCommandResultClass;
-typedef struct _GbCommandResultPrivate GbCommandResultPrivate;
+G_DECLARE_FINAL_TYPE (GbCommandResult, gb_command_result,
+ GB, COMMAND_RESULT, GObject)
-struct _GbCommandResult
-{
- GObject parent;
-
- /*< private >*/
- GbCommandResultPrivate *priv;
-};
-
-struct _GbCommandResultClass
-{
- GObjectClass parent;
-};
-
-GType gb_command_result_get_type (void);
GbCommandResult *gb_command_result_new (void);
gboolean gb_command_result_get_is_running (GbCommandResult *result);
void gb_command_result_set_is_running (GbCommandResult *result,
diff --git a/src/commands/gb-command-vim.c b/src/commands/gb-command-vim.c
index 9ecdbef..bb0981a 100644
--- a/src/commands/gb-command-vim.c
+++ b/src/commands/gb-command-vim.c
@@ -24,13 +24,15 @@
#include "gb-command-vim.h"
#include "gb-vim.h"
-struct _GbCommandVimPrivate
+struct _GbCommandVim
{
+ GbCommand parent_instance;
+
IdeSourceView *source_view;
gchar *command_text;
};
-G_DEFINE_TYPE_WITH_PRIVATE (GbCommandVim, gb_command_vim, GB_TYPE_COMMAND)
+G_DEFINE_TYPE (GbCommandVim, gb_command_vim, GB_TYPE_COMMAND)
enum {
PROP_0,
@@ -46,7 +48,7 @@ gb_command_vim_get_source_view (GbCommandVim *vim)
{
g_return_val_if_fail (GB_IS_COMMAND_VIM (vim), NULL);
- return vim->priv->source_view;
+ return vim->source_view;
}
static void
@@ -56,7 +58,7 @@ gb_command_vim_set_source_view (GbCommandVim *vim,
g_return_if_fail (GB_IS_COMMAND_VIM (vim));
g_return_if_fail (IDE_IS_SOURCE_VIEW (source_view));
- if (ide_set_weak_pointer (&vim->priv->source_view, source_view))
+ if (ide_set_weak_pointer (&vim->source_view, source_view))
g_object_notify_by_pspec (G_OBJECT (vim), gParamSpecs [PROP_SOURCE_VIEW]);
}
@@ -65,7 +67,7 @@ gb_command_vim_get_command_text (GbCommandVim *vim)
{
g_return_val_if_fail (GB_IS_COMMAND_VIM (vim), NULL);
- return vim->priv->command_text;
+ return vim->command_text;
}
void
@@ -75,10 +77,10 @@ gb_command_vim_set_command_text (GbCommandVim *vim,
g_return_if_fail (GB_IS_COMMAND_VIM (vim));
g_return_if_fail (command_text);
- if (command_text != vim->priv->command_text)
+ if (command_text != vim->command_text)
{
- g_free (vim->priv->command_text);
- vim->priv->command_text = g_strdup (command_text);
+ g_free (vim->command_text);
+ vim->command_text = g_strdup (command_text);
g_object_notify_by_pspec (G_OBJECT (vim), gParamSpecs [PROP_COMMAND_TEXT]);
}
}
@@ -90,14 +92,14 @@ gb_command_vim_execute (GbCommand *command)
g_return_val_if_fail (GB_IS_COMMAND_VIM (self), NULL);
- if (self->priv->source_view)
+ if (self->source_view)
{
- GtkSourceView *source_view = (GtkSourceView *)self->priv->source_view;
+ GtkSourceView *source_view = (GtkSourceView *)self->source_view;
GError *error = NULL;
- IDE_TRACE_MSG ("Executing Vim command: %s", self->priv->command_text);
+ IDE_TRACE_MSG ("Executing Vim command: %s", self->command_text);
- if (!gb_vim_execute (source_view, self->priv->command_text, &error))
+ if (!gb_vim_execute (source_view, self->command_text, &error))
{
g_warning ("%s", error->message);
g_clear_error (&error);
@@ -110,10 +112,10 @@ gb_command_vim_execute (GbCommand *command)
static void
gb_command_vim_finalize (GObject *object)
{
- GbCommandVimPrivate *priv = GB_COMMAND_VIM (object)->priv;
+ GbCommandVim *self = GB_COMMAND_VIM (object);
- ide_clear_weak_pointer (&priv->source_view);
- g_clear_pointer (&priv->command_text, g_free);
+ ide_clear_weak_pointer (&self->source_view);
+ g_clear_pointer (&self->command_text, g_free);
G_OBJECT_CLASS (gb_command_vim_parent_class)->finalize (object);
}
@@ -198,5 +200,4 @@ gb_command_vim_class_init (GbCommandVimClass *klass)
static void
gb_command_vim_init (GbCommandVim *self)
{
- self->priv = gb_command_vim_get_instance_private (self);
}
diff --git a/src/commands/gb-command-vim.h b/src/commands/gb-command-vim.h
index f134f38..c173a39 100644
--- a/src/commands/gb-command-vim.h
+++ b/src/commands/gb-command-vim.h
@@ -23,32 +23,11 @@
G_BEGIN_DECLS
-#define GB_TYPE_COMMAND_VIM (gb_command_vim_get_type())
-#define GB_COMMAND_VIM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_COMMAND_VIM,
GbCommandVim))
-#define GB_COMMAND_VIM_CONST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_COMMAND_VIM, GbCommandVim
const))
-#define GB_COMMAND_VIM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GB_TYPE_COMMAND_VIM,
GbCommandVimClass))
-#define GB_IS_COMMAND_VIM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GB_TYPE_COMMAND_VIM))
-#define GB_IS_COMMAND_VIM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GB_TYPE_COMMAND_VIM))
-#define GB_COMMAND_VIM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GB_TYPE_COMMAND_VIM,
GbCommandVimClass))
-
-typedef struct _GbCommandVim GbCommandVim;
-typedef struct _GbCommandVimClass GbCommandVimClass;
-typedef struct _GbCommandVimPrivate GbCommandVimPrivate;
-
-struct _GbCommandVim
-{
- GbCommand parent;
-
- /*< private >*/
- GbCommandVimPrivate *priv;
-};
-
-struct _GbCommandVimClass
-{
- GbCommandClass parent;
-};
-
-GType gb_command_vim_get_type (void);
+#define GB_TYPE_COMMAND_VIM (gb_command_vim_get_type())
+
+G_DECLARE_FINAL_TYPE (GbCommandVim, gb_command_vim,
+ GB, COMMAND_VIM, GbCommand)
+
G_END_DECLS
diff --git a/src/commands/gb-command.h b/src/commands/gb-command.h
index d667088..1d666ed 100644
--- a/src/commands/gb-command.h
+++ b/src/commands/gb-command.h
@@ -26,24 +26,8 @@
G_BEGIN_DECLS
#define GB_TYPE_COMMAND (gb_command_get_type())
-#define GB_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_COMMAND, GbCommand))
-#define GB_COMMAND_CONST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_COMMAND, GbCommand const))
-#define GB_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GB_TYPE_COMMAND, GbCommandClass))
-#define GB_IS_COMMAND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GB_TYPE_COMMAND))
-#define GB_IS_COMMAND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GB_TYPE_COMMAND))
-#define GB_COMMAND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GB_TYPE_COMMAND, GbCommandClass))
-
-typedef struct _GbCommand GbCommand;
-typedef struct _GbCommandClass GbCommandClass;
-typedef struct _GbCommandPrivate GbCommandPrivate;
-
-struct _GbCommand
-{
- GObject parent;
- /*< private >*/
- GbCommandPrivate *priv;
-};
+G_DECLARE_DERIVABLE_TYPE (GbCommand, gb_command, GB, COMMAND, GObject)
struct _GbCommandClass
{
@@ -52,7 +36,6 @@ struct _GbCommandClass
GbCommandResult *(*execute) (GbCommand *command);
};
-GType gb_command_get_type (void);
GbCommand *gb_command_new (void);
GbCommandResult *gb_command_execute (GbCommand *command);
diff --git a/src/devhelp/gb-devhelp-document.c b/src/devhelp/gb-devhelp-document.c
index 83715f2..eb89dba 100644
--- a/src/devhelp/gb-devhelp-document.c
+++ b/src/devhelp/gb-devhelp-document.c
@@ -24,22 +24,20 @@
#include "gb-devhelp-document.h"
#include "gb-devhelp-view.h"
-struct _GbDevhelpDocumentPrivate
+struct _GbDevhelpDocument
{
- DhBookManager *book_manager;
+ GObjectClass parent_instance;
+
+ DhBookManager *book_manager;
DhKeywordModel *model;
- gchar *title;
- gchar *uri;
+ gchar *title;
+ gchar *uri;
};
static void gb_document_init (GbDocumentInterface *iface);
-G_DEFINE_TYPE_EXTENDED (GbDevhelpDocument,
- gb_devhelp_document,
- G_TYPE_OBJECT,
- 0,
- G_ADD_PRIVATE (GbDevhelpDocument)
- G_IMPLEMENT_INTERFACE (GB_TYPE_DOCUMENT,
+G_DEFINE_TYPE_WITH_CODE (GbDevhelpDocument, gb_devhelp_document, G_TYPE_OBJECT,
+ G_IMPLEMENT_INTERFACE (GB_TYPE_DOCUMENT,
gb_document_init))
enum {
@@ -67,10 +65,10 @@ gb_devhelp_document_set_title (GbDevhelpDocument *document,
{
g_return_if_fail (GB_IS_DEVHELP_DOCUMENT (document));
- if (document->priv->title != title)
+ if (document->title != title)
{
- g_clear_pointer (&document->priv->title, g_free);
- document->priv->title = g_strdup_printf (_("Documentation (%s)"), title);
+ g_clear_pointer (&document->title, g_free);
+ document->title = g_strdup_printf (_("Documentation (%s)"), title);
g_object_notify (G_OBJECT (document), "title");
}
}
@@ -80,7 +78,7 @@ gb_devhelp_document_get_uri (GbDevhelpDocument *document)
{
g_return_val_if_fail (GB_IS_DEVHELP_DOCUMENT (document), NULL);
- return document->priv->uri;
+ return document->uri;
}
void
@@ -90,10 +88,10 @@ gb_devhelp_document_set_uri (GbDevhelpDocument *document,
g_return_if_fail (GB_IS_DEVHELP_DOCUMENT (document));
g_return_if_fail (uri);
- if (document->priv->uri != uri)
+ if (document->uri != uri)
{
- g_clear_pointer (&document->priv->uri, g_free);
- document->priv->uri = g_strdup (uri);
+ g_clear_pointer (&document->uri, g_free);
+ document->uri = g_strdup (uri);
g_object_notify_by_pspec (G_OBJECT (document), gParamSpecs [PROP_URI]);
}
}
@@ -102,17 +100,14 @@ void
gb_devhelp_document_set_search (GbDevhelpDocument *document,
const gchar *search)
{
- GbDevhelpDocumentPrivate *priv;
GtkTreeIter iter;
g_return_if_fail (GB_IS_DEVHELP_DOCUMENT (document));
- priv = document->priv;
-
/* TODO: Filter books/language based on project? */
- dh_keyword_model_filter (priv->model, search, NULL, NULL);
+ dh_keyword_model_filter (document->model, search, NULL, NULL);
- if (gtk_tree_model_get_iter_first (GTK_TREE_MODEL (priv->model), &iter))
+ if (gtk_tree_model_get_iter_first (GTK_TREE_MODEL (document->model), &iter))
{
DhLink *link_ = NULL;
gchar *name = NULL;
@@ -124,7 +119,7 @@ gb_devhelp_document_set_search (GbDevhelpDocument *document,
* G_TYPE_POINTER so dh_link_unref() does not need to be called
* on the resulting structure.
*/
- gtk_tree_model_get (GTK_TREE_MODEL (priv->model), &iter,
+ gtk_tree_model_get (GTK_TREE_MODEL (document->model), &iter,
DH_KEYWORD_MODEL_COL_NAME, &name,
DH_KEYWORD_MODEL_COL_LINK, &link_,
-1);
@@ -147,8 +142,8 @@ gb_devhelp_document_get_title (GbDocument *document)
g_return_val_if_fail (GB_IS_DEVHELP_DOCUMENT (self), NULL);
- if (self->priv->title)
- return self->priv->title;
+ if (self->title)
+ return self->title;
return _("Documentation");
}
@@ -175,10 +170,10 @@ gb_devhelp_document_create_view (GbDocument *document)
static void
gb_devhelp_document_constructed (GObject *object)
{
- GbDevhelpDocumentPrivate *priv = GB_DEVHELP_DOCUMENT (object)->priv;
+ GbDevhelpDocument *self = GB_DEVHELP_DOCUMENT (object);
- dh_book_manager_populate (priv->book_manager);
- dh_keyword_model_set_words (priv->model, priv->book_manager);
+ dh_book_manager_populate (self->book_manager);
+ dh_keyword_model_set_words (self->model, self->book_manager);
G_OBJECT_CLASS (gb_devhelp_document_parent_class)->constructed (object);
}
@@ -186,10 +181,10 @@ gb_devhelp_document_constructed (GObject *object)
static void
gb_devhelp_document_finalize (GObject *object)
{
- GbDevhelpDocumentPrivate *priv = GB_DEVHELP_DOCUMENT (object)->priv;
+ GbDevhelpDocument *self = GB_DEVHELP_DOCUMENT (object);
- g_clear_pointer (&priv->title, g_free);
- g_clear_object (&priv->book_manager);
+ g_clear_pointer (&self->title, g_free);
+ g_clear_object (&self->book_manager);
G_OBJECT_CLASS (gb_devhelp_document_parent_class)->finalize (object);
}
@@ -269,9 +264,8 @@ gb_devhelp_document_class_init (GbDevhelpDocumentClass *klass)
static void
gb_devhelp_document_init (GbDevhelpDocument *self)
{
- self->priv = gb_devhelp_document_get_instance_private (self);
- self->priv->book_manager = dh_book_manager_new ();
- self->priv->model = dh_keyword_model_new ();
+ self->book_manager = dh_book_manager_new ();
+ self->model = dh_keyword_model_new ();
}
static void
diff --git a/src/devhelp/gb-devhelp-document.h b/src/devhelp/gb-devhelp-document.h
index dc1868f..0993e56 100644
--- a/src/devhelp/gb-devhelp-document.h
+++ b/src/devhelp/gb-devhelp-document.h
@@ -23,32 +23,10 @@
G_BEGIN_DECLS
-#define GB_TYPE_DEVHELP_DOCUMENT (gb_devhelp_document_get_type())
-#define GB_DEVHELP_DOCUMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_DEVHELP_DOCUMENT,
GbDevhelpDocument))
-#define GB_DEVHELP_DOCUMENT_CONST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_DEVHELP_DOCUMENT,
GbDevhelpDocument const))
-#define GB_DEVHELP_DOCUMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GB_TYPE_DEVHELP_DOCUMENT,
GbDevhelpDocumentClass))
-#define GB_IS_DEVHELP_DOCUMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GB_TYPE_DEVHELP_DOCUMENT))
-#define GB_IS_DEVHELP_DOCUMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GB_TYPE_DEVHELP_DOCUMENT))
-#define GB_DEVHELP_DOCUMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GB_TYPE_DEVHELP_DOCUMENT,
GbDevhelpDocumentClass))
-
-typedef struct _GbDevhelpDocument GbDevhelpDocument;
-typedef struct _GbDevhelpDocumentClass GbDevhelpDocumentClass;
-typedef struct _GbDevhelpDocumentPrivate GbDevhelpDocumentPrivate;
-
-struct _GbDevhelpDocument
-{
- GObject parent;
-
- /*< private >*/
- GbDevhelpDocumentPrivate *priv;
-};
-
-struct _GbDevhelpDocumentClass
-{
- GObjectClass parent;
-};
-
-GType gb_devhelp_document_get_type (void);
+#define GB_TYPE_DEVHELP_DOCUMENT (gb_devhelp_document_get_type())
+
+G_DECLARE_FINAL_TYPE (GbDevhelpDocument, gb_devhelp_document, GB, DEVHELP_DOCUMENT, GObject)
+
GbDevhelpDocument *gb_devhelp_document_new (void);
void gb_devhelp_document_set_search (GbDevhelpDocument *document,
const gchar *search);
diff --git a/src/devhelp/gb-devhelp-view.c b/src/devhelp/gb-devhelp-view.c
index 02735d0..a8dfee8 100644
--- a/src/devhelp/gb-devhelp-view.c
+++ b/src/devhelp/gb-devhelp-view.c
@@ -24,8 +24,9 @@
#include "gb-devhelp-view.h"
#include "gb-widget.h"
-struct _GbDevhelpViewPrivate
+struct _GbDevhelpView
{
+ GbView parent_instance;
/* References owned by view */
GbDevhelpDocument *document;
@@ -36,7 +37,7 @@ struct _GbDevhelpViewPrivate
GtkPaned *paned;
};
-G_DEFINE_TYPE_WITH_PRIVATE (GbDevhelpView, gb_devhelp_view, GB_TYPE_VIEW)
+G_DEFINE_TYPE (GbDevhelpView, gb_devhelp_view, GB_TYPE_VIEW)
enum {
PROP_0,
@@ -59,7 +60,7 @@ gb_devhelp_view_get_document (GbView *view)
{
g_return_val_if_fail (GB_IS_DEVHELP_VIEW (view), NULL);
- return GB_DOCUMENT (GB_DEVHELP_VIEW (view)->priv->document);
+ return GB_DOCUMENT (GB_DEVHELP_VIEW (view)->document);
}
static void
@@ -75,10 +76,10 @@ gb_devhelp_view_notify_uri (GbDevhelpView *view,
uri = gb_devhelp_document_get_uri (document);
if (uri)
{
- webkit_web_view_load_uri (view->priv->web_view1, uri);
+ webkit_web_view_load_uri (view->web_view1, uri);
- if (view->priv->web_view2 != NULL)
- webkit_web_view_load_uri (view->priv->web_view2, uri);
+ if (view->web_view2 != NULL)
+ webkit_web_view_load_uri (view->web_view2, uri);
}
}
@@ -86,26 +87,23 @@ static void
gb_devhelp_view_set_document (GbDevhelpView *view,
GbDevhelpDocument *document)
{
- GbDevhelpViewPrivate *priv;
-
g_return_if_fail (GB_IS_DEVHELP_VIEW (view));
- priv = view->priv;
- if (priv->document != document)
+ if (view->document != document)
{
- if (priv->document)
+ if (view->document)
{
- g_signal_handlers_disconnect_by_func (priv->document,
+ g_signal_handlers_disconnect_by_func (view->document,
G_CALLBACK (gb_devhelp_view_notify_uri),
view);
- g_clear_object (&priv->document);
+ g_clear_object (&view->document);
}
if (document)
{
- priv->document = g_object_ref (document);
- g_signal_connect_object (priv->document,
+ view->document = g_object_ref (document);
+ g_signal_connect_object (view->document,
"notify::uri",
G_CALLBACK (gb_devhelp_view_notify_uri),
view,
@@ -138,30 +136,27 @@ gb_devhelp_view_set_split_view (GbView *view,
gboolean split_view)
{
GbDevhelpView *self = (GbDevhelpView *)view;
- GbDevhelpViewPrivate *priv;
g_assert (GB_IS_DEVHELP_VIEW (self));
g_return_if_fail (GB_IS_DEVHELP_VIEW (view));
- priv = self->priv;
-
- if (split_view && (priv->web_view2 != NULL))
+ if (split_view && (self->web_view2 != NULL))
return;
- if (!split_view && (priv->web_view2 == NULL))
+ if (!split_view && (self->web_view2 == NULL))
return;
if (split_view)
{
- priv->web_view2 = g_object_new (WEBKIT_TYPE_WEB_VIEW,
+ self->web_view2 = g_object_new (WEBKIT_TYPE_WEB_VIEW,
"visible", TRUE,
NULL);
- gtk_container_add_with_properties (GTK_CONTAINER (priv->paned), GTK_WIDGET (priv->web_view2),
+ gtk_container_add_with_properties (GTK_CONTAINER (self->paned), GTK_WIDGET (self->web_view2),
"shrink", FALSE,
"resize", TRUE,
NULL);
- gtk_widget_grab_focus (GTK_WIDGET (priv->web_view2));
+ gtk_widget_grab_focus (GTK_WIDGET (self->web_view2));
gb_devhelp_view_notify_uri (self,
NULL,
@@ -169,20 +164,20 @@ gb_devhelp_view_set_split_view (GbView *view,
}
else
{
- GtkWidget *copy = GTK_WIDGET (priv->web_view2);
+ GtkWidget *copy = GTK_WIDGET (self->web_view2);
- priv->web_view2 = NULL;
- gtk_container_remove (GTK_CONTAINER (priv->paned), copy);
- gtk_widget_grab_focus (GTK_WIDGET (priv->web_view1));
+ self->web_view2 = NULL;
+ gtk_container_remove (GTK_CONTAINER (self->paned), copy);
+ gtk_widget_grab_focus (GTK_WIDGET (self->web_view1));
}
}
static void
gb_devhelp_view_finalize (GObject *object)
{
- GbDevhelpViewPrivate *priv = GB_DEVHELP_VIEW (object)->priv;
+ GbDevhelpView *self = GB_DEVHELP_VIEW (object);
- g_clear_object (&priv->document);
+ g_clear_object (&self->document);
G_OBJECT_CLASS (gb_devhelp_view_parent_class)->finalize (object);
}
@@ -198,7 +193,7 @@ gb_devhelp_view_get_property (GObject *object,
switch (prop_id)
{
case PROP_DOCUMENT:
- g_value_set_object (value, self->priv->document);
+ g_value_set_object (value, self->document);
break;
default:
@@ -249,8 +244,8 @@ gb_devhelp_view_class_init (GbDevhelpViewClass *klass)
g_object_class_install_properties (object_class, LAST_PROP, gParamSpecs);
GB_WIDGET_CLASS_TEMPLATE (klass, "gb-devhelp-view.ui");
- GB_WIDGET_CLASS_BIND_PRIVATE (klass, GbDevhelpView, web_view1);
- GB_WIDGET_CLASS_BIND_PRIVATE (klass, GbDevhelpView, paned);
+ GB_WIDGET_CLASS_BIND (klass, GbDevhelpView, web_view1);
+ GB_WIDGET_CLASS_BIND (klass, GbDevhelpView, paned);
g_type_ensure (WEBKIT_TYPE_WEB_VIEW);
}
@@ -258,7 +253,5 @@ gb_devhelp_view_class_init (GbDevhelpViewClass *klass)
static void
gb_devhelp_view_init (GbDevhelpView *self)
{
- self->priv = gb_devhelp_view_get_instance_private (self);
-
gtk_widget_init_template (GTK_WIDGET (self));
}
diff --git a/src/devhelp/gb-devhelp-view.h b/src/devhelp/gb-devhelp-view.h
index 5f09dc2..d2ee3be 100644
--- a/src/devhelp/gb-devhelp-view.h
+++ b/src/devhelp/gb-devhelp-view.h
@@ -24,32 +24,10 @@
G_BEGIN_DECLS
-#define GB_TYPE_DEVHELP_VIEW (gb_devhelp_view_get_type())
-#define GB_DEVHELP_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_DEVHELP_VIEW,
GbDevhelpView))
-#define GB_DEVHELP_VIEW_CONST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_DEVHELP_VIEW,
GbDevhelpView const))
-#define GB_DEVHELP_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GB_TYPE_DEVHELP_VIEW,
GbDevhelpViewClass))
-#define GB_IS_DEVHELP_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GB_TYPE_DEVHELP_VIEW))
-#define GB_IS_DEVHELP_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GB_TYPE_DEVHELP_VIEW))
-#define GB_DEVHELP_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GB_TYPE_DEVHELP_VIEW,
GbDevhelpViewClass))
-
-typedef struct _GbDevhelpView GbDevhelpView;
-typedef struct _GbDevhelpViewClass GbDevhelpViewClass;
-typedef struct _GbDevhelpViewPrivate GbDevhelpViewPrivate;
-
-struct _GbDevhelpView
-{
- GbView parent;
-
- /*< private >*/
- GbDevhelpViewPrivate *priv;
-};
-
-struct _GbDevhelpViewClass
-{
- GbViewClass parent;
-};
-
-GType gb_devhelp_view_get_type (void);
+#define GB_TYPE_DEVHELP_VIEW (gb_devhelp_view_get_type())
+
+G_DECLARE_FINAL_TYPE (GbDevhelpView, gb_devhelp_view, GB, DEVHELP_VIEW, GbView)
+
GbView *gb_devhelp_view_new (GbDevhelpDocument *document);
G_END_DECLS
diff --git a/src/dialogs/gb-recent-project-row.c b/src/dialogs/gb-recent-project-row.c
index 80e14f2..700884a 100644
--- a/src/dialogs/gb-recent-project-row.c
+++ b/src/dialogs/gb-recent-project-row.c
@@ -36,11 +36,6 @@ struct _GbRecentProjectRow
GtkRevealer *revealer;
};
-struct _GbRecentProjectRowClass
-{
- GtkListBoxRowClass parent_class;
-};
-
enum
{
PROP_0,
diff --git a/src/dialogs/gb-recent-project-row.h b/src/dialogs/gb-recent-project-row.h
index 9ad84d4..13245b3 100644
--- a/src/dialogs/gb-recent-project-row.h
+++ b/src/dialogs/gb-recent-project-row.h
@@ -24,18 +24,11 @@
G_BEGIN_DECLS
-#define GB_TYPE_RECENT_PROJECT_ROW (gb_recent_project_row_get_type())
-#define GB_RECENT_PROJECT_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj),
GB_TYPE_RECENT_PROJECT_ROW, GbRecentProjectRow))
-#define GB_RECENT_PROJECT_ROW_CONST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj),
GB_TYPE_RECENT_PROJECT_ROW, GbRecentProjectRow const))
-#define GB_RECENT_PROJECT_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass),
GB_TYPE_RECENT_PROJECT_ROW, GbRecentProjectRowClass))
-#define GB_IS_RECENT_PROJECT_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj),
GB_TYPE_RECENT_PROJECT_ROW))
-#define GB_IS_RECENT_PROJECT_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass),
GB_TYPE_RECENT_PROJECT_ROW))
-#define GB_RECENT_PROJECT_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj),
GB_TYPE_RECENT_PROJECT_ROW, GbRecentProjectRowClass))
-
-typedef struct _GbRecentProjectRow GbRecentProjectRow;
-typedef struct _GbRecentProjectRowClass GbRecentProjectRowClass;
-
-GType gb_recent_project_row_get_type (void);
+#define GB_TYPE_RECENT_PROJECT_ROW (gb_recent_project_row_get_type())
+
+G_DECLARE_FINAL_TYPE (GbRecentProjectRow, gb_recent_project_row,
+ GB, RECENT_PROJECT_ROW, GtkListBoxRow)
+
GtkWidget *gb_recent_project_row_new (IdeProjectInfo *project_info);
IdeProjectInfo *gb_recent_project_row_get_project_info (GbRecentProjectRow *self);
gboolean gb_recent_project_row_get_selected (GbRecentProjectRow *self);
diff --git a/src/editor/gb-editor-settings-widget.c b/src/editor/gb-editor-settings-widget.c
index 150a017..ea3c1cb 100644
--- a/src/editor/gb-editor-settings-widget.c
+++ b/src/editor/gb-editor-settings-widget.c
@@ -21,8 +21,10 @@
#include "gb-editor-settings-widget.h"
#include "gb-widget.h"
-struct _GbEditorSettingsWidgetPrivate
+struct _GbEditorSettingsWidget
{
+ GtkGrid parent_instance;
+
GSettings *settings;
gchar *language;
@@ -36,8 +38,7 @@ struct _GbEditorSettingsWidgetPrivate
GtkCheckButton *trim_trailing_whitespace;
};
-G_DEFINE_TYPE_WITH_PRIVATE (GbEditorSettingsWidget, gb_editor_settings_widget,
- GTK_TYPE_GRID)
+G_DEFINE_TYPE (GbEditorSettingsWidget, gb_editor_settings_widget, GTK_TYPE_GRID)
enum {
PROP_0,
@@ -52,57 +53,53 @@ gb_editor_settings_widget_get_language (GbEditorSettingsWidget *widget)
{
g_return_val_if_fail (GB_IS_EDITOR_SETTINGS_WIDGET (widget), NULL);
- return widget->priv->language;
+ return widget->language;
}
void
gb_editor_settings_widget_set_language (GbEditorSettingsWidget *widget,
const gchar *language)
{
- GbEditorSettingsWidgetPrivate *priv;
-
g_return_if_fail (GB_IS_EDITOR_SETTINGS_WIDGET (widget));
- priv = widget->priv;
-
- if (language != priv->language)
+ if (language != widget->language)
{
gchar *path;
- g_free (priv->language);
- priv->language = g_strdup (language);
+ g_free (widget->language);
+ widget->language = g_strdup (language);
- g_clear_object (&priv->settings);
+ g_clear_object (&widget->settings);
path = g_strdup_printf ("/org/gnome/builder/editor/language/%s/",
language);
- priv->settings = g_settings_new_with_path (
+ widget->settings = g_settings_new_with_path (
"org.gnome.builder.editor.language", path);
g_free (path);
- g_settings_bind (priv->settings, "auto-indent",
- priv->auto_indent, "active",
+ g_settings_bind (widget->settings, "auto-indent",
+ widget->auto_indent, "active",
G_SETTINGS_BIND_DEFAULT);
- g_settings_bind (priv->settings, "insert-matching-brace",
- priv->insert_matching_brace, "active",
+ g_settings_bind (widget->settings, "insert-matching-brace",
+ widget->insert_matching_brace, "active",
G_SETTINGS_BIND_DEFAULT);
- g_settings_bind (priv->settings, "insert-spaces-instead-of-tabs",
- priv->insert_spaces_instead_of_tabs, "active",
+ g_settings_bind (widget->settings, "insert-spaces-instead-of-tabs",
+ widget->insert_spaces_instead_of_tabs, "active",
G_SETTINGS_BIND_DEFAULT);
- g_settings_bind (priv->settings, "overwrite-braces",
- priv->overwrite_braces, "active",
+ g_settings_bind (widget->settings, "overwrite-braces",
+ widget->overwrite_braces, "active",
G_SETTINGS_BIND_DEFAULT);
- g_settings_bind (priv->settings, "show-right-margin",
- priv->show_right_margin, "active",
+ g_settings_bind (widget->settings, "show-right-margin",
+ widget->show_right_margin, "active",
G_SETTINGS_BIND_DEFAULT);
- g_settings_bind (priv->settings, "right-margin-position",
- priv->right_margin_position, "value",
+ g_settings_bind (widget->settings, "right-margin-position",
+ widget->right_margin_position, "value",
G_SETTINGS_BIND_DEFAULT);
- g_settings_bind (priv->settings, "tab-width",
- priv->tab_width, "value",
+ g_settings_bind (widget->settings, "tab-width",
+ widget->tab_width, "value",
G_SETTINGS_BIND_DEFAULT);
- g_settings_bind (priv->settings, "trim-trailing-whitespace",
- priv->trim_trailing_whitespace, "active",
+ g_settings_bind (widget->settings, "trim-trailing-whitespace",
+ widget->trim_trailing_whitespace, "active",
G_SETTINGS_BIND_DEFAULT);
g_object_notify_by_pspec (G_OBJECT (widget), gParamSpecs [PROP_LANGUAGE]);
@@ -112,10 +109,10 @@ gb_editor_settings_widget_set_language (GbEditorSettingsWidget *widget,
static void
gb_editor_settings_widget_finalize (GObject *object)
{
- GbEditorSettingsWidgetPrivate *priv = GB_EDITOR_SETTINGS_WIDGET (object)->priv;
+ GbEditorSettingsWidget *self = GB_EDITOR_SETTINGS_WIDGET (object);
- g_clear_pointer (&priv->language, g_free);
- g_clear_object (&priv->settings);
+ g_clear_pointer (&self->language, g_free);
+ g_clear_object (&self->settings);
G_OBJECT_CLASS (gb_editor_settings_widget_parent_class)->finalize (object);
}
@@ -168,14 +165,14 @@ gb_editor_settings_widget_class_init (GbEditorSettingsWidgetClass *klass)
object_class->set_property = gb_editor_settings_widget_set_property;
GB_WIDGET_CLASS_TEMPLATE (klass, "gb-editor-settings-widget.ui");
- GB_WIDGET_CLASS_BIND_PRIVATE (klass, GbEditorSettingsWidget, auto_indent);
- GB_WIDGET_CLASS_BIND_PRIVATE (klass, GbEditorSettingsWidget, insert_matching_brace);
- GB_WIDGET_CLASS_BIND_PRIVATE (klass, GbEditorSettingsWidget, insert_spaces_instead_of_tabs);
- GB_WIDGET_CLASS_BIND_PRIVATE (klass, GbEditorSettingsWidget, right_margin_position);
- GB_WIDGET_CLASS_BIND_PRIVATE (klass, GbEditorSettingsWidget, overwrite_braces);
- GB_WIDGET_CLASS_BIND_PRIVATE (klass, GbEditorSettingsWidget, show_right_margin);
- GB_WIDGET_CLASS_BIND_PRIVATE (klass, GbEditorSettingsWidget, tab_width);
- GB_WIDGET_CLASS_BIND_PRIVATE (klass, GbEditorSettingsWidget, trim_trailing_whitespace);
+ GB_WIDGET_CLASS_BIND (klass, GbEditorSettingsWidget, auto_indent);
+ GB_WIDGET_CLASS_BIND (klass, GbEditorSettingsWidget, insert_matching_brace);
+ GB_WIDGET_CLASS_BIND (klass, GbEditorSettingsWidget, insert_spaces_instead_of_tabs);
+ GB_WIDGET_CLASS_BIND (klass, GbEditorSettingsWidget, right_margin_position);
+ GB_WIDGET_CLASS_BIND (klass, GbEditorSettingsWidget, overwrite_braces);
+ GB_WIDGET_CLASS_BIND (klass, GbEditorSettingsWidget, show_right_margin);
+ GB_WIDGET_CLASS_BIND (klass, GbEditorSettingsWidget, tab_width);
+ GB_WIDGET_CLASS_BIND (klass, GbEditorSettingsWidget, trim_trailing_whitespace);
gParamSpecs [PROP_LANGUAGE] =
g_param_spec_string ("language",
@@ -190,7 +187,5 @@ gb_editor_settings_widget_class_init (GbEditorSettingsWidgetClass *klass)
static void
gb_editor_settings_widget_init (GbEditorSettingsWidget *self)
{
- self->priv = gb_editor_settings_widget_get_instance_private (self);
-
gtk_widget_init_template (GTK_WIDGET (self));
}
diff --git a/src/editor/gb-editor-settings-widget.h b/src/editor/gb-editor-settings-widget.h
index 6dbbba5..c9a402c 100644
--- a/src/editor/gb-editor-settings-widget.h
+++ b/src/editor/gb-editor-settings-widget.h
@@ -24,31 +24,9 @@
G_BEGIN_DECLS
#define GB_TYPE_EDITOR_SETTINGS_WIDGET (gb_editor_settings_widget_get_type())
-#define GB_EDITOR_SETTINGS_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj),
GB_TYPE_EDITOR_SETTINGS_WIDGET, GbEditorSettingsWidget))
-#define GB_EDITOR_SETTINGS_WIDGET_CONST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj),
GB_TYPE_EDITOR_SETTINGS_WIDGET, GbEditorSettingsWidget const))
-#define GB_EDITOR_SETTINGS_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass),
GB_TYPE_EDITOR_SETTINGS_WIDGET, GbEditorSettingsWidgetClass))
-#define GB_IS_EDITOR_SETTINGS_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj),
GB_TYPE_EDITOR_SETTINGS_WIDGET))
-#define GB_IS_EDITOR_SETTINGS_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass),
GB_TYPE_EDITOR_SETTINGS_WIDGET))
-#define GB_EDITOR_SETTINGS_WIDGET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj),
GB_TYPE_EDITOR_SETTINGS_WIDGET, GbEditorSettingsWidgetClass))
-typedef struct _GbEditorSettingsWidget GbEditorSettingsWidget;
-typedef struct _GbEditorSettingsWidgetClass GbEditorSettingsWidgetClass;
-typedef struct _GbEditorSettingsWidgetPrivate GbEditorSettingsWidgetPrivate;
-
-struct _GbEditorSettingsWidget
-{
- GtkGrid parent;
-
- /*< private >*/
- GbEditorSettingsWidgetPrivate *priv;
-};
-
-struct _GbEditorSettingsWidgetClass
-{
- GtkGridClass parent;
-};
-
-GType gb_editor_settings_widget_get_type (void);
+G_DECLARE_FINAL_TYPE (GbEditorSettingsWidget, gb_editor_settings_widget,
+ GB, EDITOR_SETTINGS_WIDGET, GtkGrid)
G_END_DECLS
diff --git a/src/gd/gd-tagged-entry.c b/src/gd/gd-tagged-entry.c
index 0ff2234..4dbf397 100644
--- a/src/gd/gd-tagged-entry.c
+++ b/src/gd/gd-tagged-entry.c
@@ -28,7 +28,9 @@
#define BUTTON_INTERNAL_SPACING 6
-struct _GdTaggedEntryTagPrivate {
+struct _GdTaggedEntryTag {
+ GObject parent_instance;
+
GdTaggedEntry *entry;
GdkWindow *window;
PangoLayout *layout;
@@ -41,7 +43,9 @@ struct _GdTaggedEntryTagPrivate {
GtkStateFlags last_button_state;
};
-struct _GdTaggedEntryPrivate {
+struct _GdTaggedEntry {
+ GtkSearchEntry parent_instance;
+
GList *tags;
GdTaggedEntryTag *in_child;
@@ -109,12 +113,12 @@ gd_tagged_entry_tag_ensure_close_surface (GdTaggedEntryTag *tag,
gint icon_size;
gint scale_factor;
- if (tag->priv->close_surface != NULL)
+ if (tag->close_surface != NULL)
return;
gtk_icon_size_lookup (GTK_ICON_SIZE_MENU,
&icon_size, NULL);
- scale_factor = gtk_widget_get_scale_factor (GTK_WIDGET (tag->priv->entry));
+ scale_factor = gtk_widget_get_scale_factor (GTK_WIDGET (tag->entry));
info = gtk_icon_theme_lookup_icon_for_scale (gtk_icon_theme_get_default (),
"window-close-symbolic",
@@ -123,7 +127,7 @@ gd_tagged_entry_tag_ensure_close_surface (GdTaggedEntryTag *tag,
/* FIXME: we need a fallback icon in case the icon is not found */
pixbuf = gtk_icon_info_load_symbolic_for_context (info, context, NULL, NULL);
- tag->priv->close_surface = gdk_cairo_surface_create_from_pixbuf (pixbuf, scale_factor, tag->priv->window);
+ tag->close_surface = gdk_cairo_surface_create_from_pixbuf (pixbuf, scale_factor, tag->window);
g_object_unref (info);
g_object_unref (pixbuf);
@@ -182,7 +186,7 @@ gd_tagged_entry_tag_panel_get_width (GdTaggedEntry *self)
width = 0;
- for (l = self->priv->tags; l != NULL; l = l->next)
+ for (l = self->tags; l != NULL; l = l->next)
{
tag = l->data;
width += gd_tagged_entry_tag_get_width (tag, self);
@@ -195,11 +199,11 @@ static void
gd_tagged_entry_tag_ensure_layout (GdTaggedEntryTag *tag,
GdTaggedEntry *entry)
{
- if (tag->priv->layout != NULL)
+ if (tag->layout != NULL)
return;
- tag->priv->layout = pango_layout_new (gtk_widget_get_pango_context (GTK_WIDGET (entry)));
- pango_layout_set_text (tag->priv->layout, tag->priv->label, -1);
+ tag->layout = pango_layout_new (gtk_widget_get_pango_context (GTK_WIDGET (entry)));
+ pango_layout_set_text (tag->layout, tag->label, -1);
}
static GtkStateFlags
@@ -208,10 +212,10 @@ gd_tagged_entry_tag_get_state (GdTaggedEntryTag *tag,
{
GtkStateFlags state = GTK_STATE_FLAG_NORMAL;
- if (entry->priv->in_child == tag)
+ if (entry->in_child == tag)
state |= GTK_STATE_FLAG_PRELIGHT;
- if (entry->priv->in_child_active)
+ if (entry->in_child_active)
state |= GTK_STATE_FLAG_ACTIVE;
return state;
@@ -223,12 +227,12 @@ gd_tagged_entry_tag_get_button_state (GdTaggedEntryTag *tag,
{
GtkStateFlags state = GTK_STATE_FLAG_NORMAL;
- if (entry->priv->in_child == tag)
+ if (entry->in_child == tag)
{
- if (entry->priv->in_child_button_active)
+ if (entry->in_child_button_active)
state |= GTK_STATE_FLAG_ACTIVE;
- else if (entry->priv->in_child_button)
+ else if (entry->in_child_button)
state |= GTK_STATE_FLAG_PRELIGHT;
}
@@ -248,7 +252,7 @@ gd_tagged_entry_tag_get_context (GdTaggedEntryTag *tag,
path = gtk_widget_path_copy (gtk_widget_get_path (widget));
pos = gtk_widget_path_append_type (path, GD_TYPE_TAGGED_ENTRY);
- gtk_widget_path_iter_add_class (path, pos, tag->priv->style);
+ gtk_widget_path_iter_add_class (path, pos, tag->style);
gtk_style_context_set_path (retval, path);
@@ -269,7 +273,7 @@ gd_tagged_entry_tag_get_width (GdTaggedEntryTag *tag,
gint scale_factor;
gd_tagged_entry_tag_ensure_layout (tag, entry);
- pango_layout_get_pixel_size (tag->priv->layout, &layout_width, NULL);
+ pango_layout_get_pixel_size (tag->layout, &layout_width, NULL);
context = gd_tagged_entry_tag_get_context (tag, entry);
state = gd_tagged_entry_tag_get_state (tag, entry);
@@ -283,10 +287,10 @@ gd_tagged_entry_tag_get_width (GdTaggedEntryTag *tag,
g_object_unref (context);
button_width = 0;
- if (entry->priv->button_visible && tag->priv->has_close_button)
+ if (entry->button_visible && tag->has_close_button)
{
scale_factor = gtk_widget_get_scale_factor (GTK_WIDGET (entry));
- button_width = cairo_image_surface_get_width (tag->priv->close_surface) / scale_factor +
+ button_width = cairo_image_surface_get_width (tag->close_surface) / scale_factor +
BUTTON_INTERNAL_SPACING;
}
@@ -328,9 +332,9 @@ gd_tagged_entry_tag_get_relative_allocations (GdTaggedEntryTag *tag,
GtkBorder padding, border;
GtkStateFlags state;
- width = gdk_window_get_width (tag->priv->window);
- height = gdk_window_get_height (tag->priv->window);
- scale_factor = gdk_window_get_scale_factor (tag->priv->window);
+ width = gdk_window_get_width (tag->window);
+ height = gdk_window_get_height (tag->window);
+ scale_factor = gdk_window_get_scale_factor (tag->window);
state = gd_tagged_entry_tag_get_state (tag, entry);
gtk_style_context_get_margin (context, state, &padding);
@@ -351,15 +355,15 @@ gd_tagged_entry_tag_get_relative_allocations (GdTaggedEntryTag *tag,
gtk_style_context_get_border (context, state, &border);
gd_tagged_entry_tag_ensure_layout (tag, entry);
- pango_layout_get_pixel_size (tag->priv->layout, &layout_width, &layout_height);
+ pango_layout_get_pixel_size (tag->layout, &layout_width, &layout_height);
layout_allocation.x += border.left + padding.left;
layout_allocation.y += (layout_allocation.height - layout_height) / 2;
- if (entry->priv->button_visible && tag->priv->has_close_button)
+ if (entry->button_visible && tag->has_close_button)
{
- pix_width = cairo_image_surface_get_width (tag->priv->close_surface) / scale_factor;
- pix_height = cairo_image_surface_get_height (tag->priv->close_surface) / scale_factor;
+ pix_width = cairo_image_surface_get_width (tag->close_surface) / scale_factor;
+ pix_height = cairo_image_surface_get_height (tag->close_surface) / scale_factor;
}
else
{
@@ -389,7 +393,7 @@ gd_tagged_entry_tag_event_is_button (GdTaggedEntryTag *tag,
GtkAllocation button_allocation;
GtkStyleContext *context;
- if (!entry->priv->button_visible || !tag->priv->has_close_button)
+ if (!entry->button_visible || !tag->has_close_button)
return FALSE;
context = gd_tagged_entry_tag_get_context (tag, entry);
@@ -419,10 +423,10 @@ gd_tagged_entry_tag_get_area (GdTaggedEntryTag *tag,
g_return_val_if_fail (GD_IS_TAGGED_ENTRY_TAG (tag), FALSE);
g_return_val_if_fail (rect != NULL, FALSE);
- gdk_window_get_position (tag->priv->window, &window_x, &window_y);
- gtk_widget_get_allocation (GTK_WIDGET (tag->priv->entry), &alloc);
- context = gd_tagged_entry_tag_get_context (tag, tag->priv->entry);
- gd_tagged_entry_tag_get_relative_allocations (tag, tag->priv->entry, context,
+ gdk_window_get_position (tag->window, &window_x, &window_y);
+ gtk_widget_get_allocation (GTK_WIDGET (tag->entry), &alloc);
+ context = gd_tagged_entry_tag_get_context (tag, tag->entry);
+ gd_tagged_entry_tag_get_relative_allocations (tag, tag->entry, context,
&background_allocation,
NULL, NULL);
@@ -450,7 +454,7 @@ gd_tagged_entry_tag_draw (GdTaggedEntryTag *tag,
&button_allocation);
cairo_save (cr);
- gtk_cairo_transform_to_window (cr, GTK_WIDGET (entry), tag->priv->window);
+ gtk_cairo_transform_to_window (cr, GTK_WIDGET (entry), tag->window);
gtk_style_context_save (context);
@@ -465,11 +469,11 @@ gd_tagged_entry_tag_draw (GdTaggedEntryTag *tag,
gtk_render_layout (context, cr,
layout_allocation.x, layout_allocation.y,
- tag->priv->layout);
+ tag->layout);
gtk_style_context_restore (context);
- if (!entry->priv->button_visible || !tag->priv->has_close_button)
+ if (!entry->button_visible || !tag->has_close_button)
goto done;
gtk_style_context_add_class (context, GTK_STYLE_CLASS_BUTTON);
@@ -479,12 +483,12 @@ gd_tagged_entry_tag_draw (GdTaggedEntryTag *tag,
/* if the state changed since last time we draw the pixbuf,
* clear and redraw it.
*/
- if (state != tag->priv->last_button_state)
+ if (state != tag->last_button_state)
{
- g_clear_pointer (&tag->priv->close_surface, cairo_surface_destroy);
+ g_clear_pointer (&tag->close_surface, cairo_surface_destroy);
gd_tagged_entry_tag_ensure_close_surface (tag, context);
- tag->priv->last_button_state = state;
+ tag->last_button_state = state;
}
gtk_render_background (context, cr,
@@ -495,7 +499,7 @@ gd_tagged_entry_tag_draw (GdTaggedEntryTag *tag,
button_allocation.width, button_allocation.height);
gtk_render_icon_surface (context, cr,
- tag->priv->close_surface,
+ tag->close_surface,
button_allocation.x, button_allocation.y);
done:
@@ -507,12 +511,12 @@ done:
static void
gd_tagged_entry_tag_unrealize (GdTaggedEntryTag *tag)
{
- if (tag->priv->window == NULL)
+ if (tag->window == NULL)
return;
- gdk_window_set_user_data (tag->priv->window, NULL);
- gdk_window_destroy (tag->priv->window);
- tag->priv->window = NULL;
+ gdk_window_set_user_data (tag->window, NULL);
+ gdk_window_destroy (tag->window);
+ tag->window = NULL;
}
static void
@@ -524,7 +528,7 @@ gd_tagged_entry_tag_realize (GdTaggedEntryTag *tag,
gint attributes_mask;
gint tag_width, tag_height;
- if (tag->priv->window != NULL)
+ if (tag->window != NULL)
return;
attributes.window_type = GDK_WINDOW_CHILD;
@@ -542,9 +546,9 @@ gd_tagged_entry_tag_realize (GdTaggedEntryTag *tag,
attributes_mask = GDK_WA_X | GDK_WA_Y;
- tag->priv->window = gdk_window_new (gtk_widget_get_window (widget),
+ tag->window = gdk_window_new (gtk_widget_get_window (widget),
&attributes, attributes_mask);
- gdk_window_set_user_data (tag->priv->window, widget);
+ gdk_window_set_user_data (tag->window, widget);
}
static gboolean
@@ -557,7 +561,7 @@ gd_tagged_entry_draw (GtkWidget *widget,
GTK_WIDGET_CLASS (gd_tagged_entry_parent_class)->draw (widget, cr);
- for (l = self->priv->tags; l != NULL; l = l->next)
+ for (l = self->tags; l != NULL; l = l->next)
{
tag = l->data;
gd_tagged_entry_tag_draw (tag, cr, self);
@@ -577,10 +581,10 @@ gd_tagged_entry_map (GtkWidget *widget)
{
GTK_WIDGET_CLASS (gd_tagged_entry_parent_class)->map (widget);
- for (l = self->priv->tags; l != NULL; l = l->next)
+ for (l = self->tags; l != NULL; l = l->next)
{
tag = l->data;
- gdk_window_show (tag->priv->window);
+ gdk_window_show (tag->window);
}
}
}
@@ -594,10 +598,10 @@ gd_tagged_entry_unmap (GtkWidget *widget)
if (gtk_widget_get_mapped (widget))
{
- for (l = self->priv->tags; l != NULL; l = l->next)
+ for (l = self->tags; l != NULL; l = l->next)
{
tag = l->data;
- gdk_window_hide (tag->priv->window);
+ gdk_window_hide (tag->window);
}
GTK_WIDGET_CLASS (gd_tagged_entry_parent_class)->unmap (widget);
@@ -613,7 +617,7 @@ gd_tagged_entry_realize (GtkWidget *widget)
GTK_WIDGET_CLASS (gd_tagged_entry_parent_class)->realize (widget);
- for (l = self->priv->tags; l != NULL; l = l->next)
+ for (l = self->tags; l != NULL; l = l->next)
{
tag = l->data;
gd_tagged_entry_tag_realize (tag, self);
@@ -629,7 +633,7 @@ gd_tagged_entry_unrealize (GtkWidget *widget)
GTK_WIDGET_CLASS (gd_tagged_entry_parent_class)->unrealize (widget);
- for (l = self->priv->tags; l != NULL; l = l->next)
+ for (l = self->tags; l != NULL; l = l->next)
{
tag = l->data;
gd_tagged_entry_tag_unrealize (tag);
@@ -670,14 +674,14 @@ gd_tagged_entry_size_allocate (GtkWidget *widget,
{
gd_tagged_entry_tag_panel_get_position (self, &x, &y);
- for (l = self->priv->tags; l != NULL; l = l->next)
+ for (l = self->tags; l != NULL; l = l->next)
{
GtkBorder margin;
tag = l->data;
gd_tagged_entry_tag_get_size (tag, self, &width, &height);
gd_tagged_entry_tag_get_margin (tag, self, &margin);
- gdk_window_move_resize (tag->priv->window, x, y + margin.top, width, height);
+ gdk_window_move_resize (tag->window, x, y + margin.top, width, height);
x += width;
}
@@ -709,10 +713,10 @@ gd_tagged_entry_finalize (GObject *obj)
{
GdTaggedEntry *self = GD_TAGGED_ENTRY (obj);
- if (self->priv->tags != NULL)
+ if (self->tags != NULL)
{
- g_list_free_full (self->priv->tags, g_object_unref);
- self->priv->tags = NULL;
+ g_list_free_full (self->tags, g_object_unref);
+ self->tags = NULL;
}
G_OBJECT_CLASS (gd_tagged_entry_parent_class)->finalize (obj);
@@ -725,10 +729,10 @@ gd_tagged_entry_find_tag_by_window (GdTaggedEntry *self,
GdTaggedEntryTag *tag = NULL, *elem;
GList *l;
- for (l = self->priv->tags; l != NULL; l = l->next)
+ for (l = self->tags; l != NULL; l = l->next)
{
elem = l->data;
- if (elem->priv->window == window)
+ if (elem->window == window)
{
tag = elem;
break;
@@ -749,7 +753,7 @@ gd_tagged_entry_enter_notify (GtkWidget *widget,
if (tag != NULL)
{
- self->priv->in_child = tag;
+ self->in_child = tag;
gtk_widget_queue_draw (widget);
}
@@ -762,9 +766,9 @@ gd_tagged_entry_leave_notify (GtkWidget *widget,
{
GdTaggedEntry *self = GD_TAGGED_ENTRY (widget);
- if (self->priv->in_child != NULL)
+ if (self->in_child != NULL)
{
- self->priv->in_child = NULL;
+ self->in_child = NULL;
gtk_widget_queue_draw (widget);
}
@@ -784,8 +788,8 @@ gd_tagged_entry_motion_notify (GtkWidget *widget,
{
gdk_event_request_motions (event);
- self->priv->in_child = tag;
- self->priv->in_child_button = gd_tagged_entry_tag_event_is_button (tag, self, event->x, event->y);
+ self->in_child = tag;
+ self->in_child_button = gd_tagged_entry_tag_event_is_button (tag, self, event->x, event->y);
gtk_widget_queue_draw (widget);
return FALSE;
@@ -805,11 +809,11 @@ gd_tagged_entry_button_release_event (GtkWidget *widget,
if (tag != NULL)
{
- self->priv->in_child_active = FALSE;
+ self->in_child_active = FALSE;
if (gd_tagged_entry_tag_event_is_button (tag, self, event->x, event->y))
{
- self->priv->in_child_button_active = FALSE;
+ self->in_child_button_active = FALSE;
g_signal_emit (self, signals[SIGNAL_TAG_BUTTON_CLICKED], 0, tag);
}
else
@@ -837,9 +841,9 @@ gd_tagged_entry_button_press_event (GtkWidget *widget,
if (tag != NULL)
{
if (gd_tagged_entry_tag_event_is_button (tag, self, event->x, event->y))
- self->priv->in_child_button_active = TRUE;
+ self->in_child_button_active = TRUE;
else
- self->priv->in_child_active = TRUE;
+ self->in_child_active = TRUE;
gtk_widget_queue_draw (widget);
@@ -852,8 +856,7 @@ gd_tagged_entry_button_press_event (GtkWidget *widget,
static void
gd_tagged_entry_init (GdTaggedEntry *self)
{
- self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, GD_TYPE_TAGGED_ENTRY, GdTaggedEntryPrivate);
- self->priv->button_visible = TRUE;
+ self->button_visible = TRUE;
}
static void
@@ -938,34 +941,27 @@ gd_tagged_entry_class_init (GdTaggedEntryClass *klass)
_("Whether the close button should be shown in tags."), TRUE,
G_PARAM_WRITABLE | G_PARAM_STATIC_STRINGS);
- g_type_class_add_private (klass, sizeof (GdTaggedEntryPrivate));
g_object_class_install_properties (oclass, NUM_PROPERTIES, properties);
}
static void
gd_tagged_entry_tag_init (GdTaggedEntryTag *self)
{
- GdTaggedEntryTagPrivate *priv;
-
- self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, GD_TYPE_TAGGED_ENTRY_TAG, GdTaggedEntryTagPrivate);
- priv = self->priv;
-
- priv->last_button_state = GTK_STATE_FLAG_NORMAL;
+ self->last_button_state = GTK_STATE_FLAG_NORMAL;
}
static void
gd_tagged_entry_tag_finalize (GObject *obj)
{
GdTaggedEntryTag *tag = GD_TAGGED_ENTRY_TAG (obj);
- GdTaggedEntryTagPrivate *priv = tag->priv;
- if (priv->window != NULL)
+ if (tag->window != NULL)
gd_tagged_entry_tag_unrealize (tag);
- g_clear_object (&priv->layout);
- g_clear_pointer (&priv->close_surface, cairo_surface_destroy);
- g_free (priv->label);
- g_free (priv->style);
+ g_clear_object (&tag->layout);
+ g_clear_pointer (&tag->close_surface, cairo_surface_destroy);
+ g_free (tag->label);
+ g_free (tag->style);
G_OBJECT_CLASS (gd_tagged_entry_tag_parent_class)->finalize (obj);
}
@@ -1040,7 +1036,6 @@ gd_tagged_entry_tag_class_init (GdTaggedEntryTagClass *klass)
_("Style of the tag."), "documents-entry-tag",
G_PARAM_CONSTRUCT | G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
- g_type_class_add_private (klass, sizeof (GdTaggedEntryTagPrivate));
g_object_class_install_properties (oclass, NUM_TAG_PROPERTIES, tag_properties);
}
@@ -1055,18 +1050,18 @@ gd_tagged_entry_insert_tag (GdTaggedEntry *self,
GdTaggedEntryTag *tag,
gint position)
{
- if (g_list_find (self->priv->tags, tag) != NULL)
+ if (g_list_find (self->tags, tag) != NULL)
return FALSE;
- tag->priv->entry = self;
+ tag->entry = self;
- self->priv->tags = g_list_insert (self->priv->tags, g_object_ref (tag), position);
+ self->tags = g_list_insert (self->tags, g_object_ref (tag), position);
if (gtk_widget_get_realized (GTK_WIDGET (self)))
gd_tagged_entry_tag_realize (tag, self);
if (gtk_widget_get_mapped (GTK_WIDGET (self)))
- gdk_window_show_unraised (tag->priv->window);
+ gdk_window_show_unraised (tag->window);
gtk_widget_queue_resize (GTK_WIDGET (self));
@@ -1084,12 +1079,12 @@ gboolean
gd_tagged_entry_remove_tag (GdTaggedEntry *self,
GdTaggedEntryTag *tag)
{
- if (!g_list_find (self->priv->tags, tag))
+ if (!g_list_find (self->tags, tag))
return FALSE;
gd_tagged_entry_tag_unrealize (tag);
- self->priv->tags = g_list_remove (self->priv->tags, tag);
+ self->tags = g_list_remove (self->tags, tag);
g_object_unref (tag);
gtk_widget_queue_resize (GTK_WIDGET (self));
@@ -1107,21 +1102,17 @@ void
gd_tagged_entry_tag_set_label (GdTaggedEntryTag *tag,
const gchar *label)
{
- GdTaggedEntryTagPrivate *priv;
-
g_return_if_fail (GD_IS_TAGGED_ENTRY_TAG (tag));
- priv = tag->priv;
-
- if (g_strcmp0 (priv->label, label) != 0)
+ if (g_strcmp0 (tag->label, label) != 0)
{
GtkWidget *entry;
- g_free (priv->label);
- priv->label = g_strdup (label);
- g_clear_object (&priv->layout);
+ g_free (tag->label);
+ tag->label = g_strdup (label);
+ g_clear_object (&tag->layout);
- entry = GTK_WIDGET (tag->priv->entry);
+ entry = GTK_WIDGET (tag->entry);
if (entry)
gtk_widget_queue_resize (entry);
}
@@ -1132,28 +1123,24 @@ gd_tagged_entry_tag_get_label (GdTaggedEntryTag *tag)
{
g_return_val_if_fail (GD_IS_TAGGED_ENTRY_TAG (tag), NULL);
- return tag->priv->label;
+ return tag->label;
}
void
gd_tagged_entry_tag_set_has_close_button (GdTaggedEntryTag *tag,
gboolean has_close_button)
{
- GdTaggedEntryTagPrivate *priv;
-
g_return_if_fail (GD_IS_TAGGED_ENTRY_TAG (tag));
- priv = tag->priv;
-
has_close_button = has_close_button != FALSE;
- if (priv->has_close_button != has_close_button)
+ if (tag->has_close_button != has_close_button)
{
GtkWidget *entry;
- priv->has_close_button = has_close_button;
- g_clear_object (&priv->layout);
+ tag->has_close_button = has_close_button;
+ g_clear_object (&tag->layout);
- entry = GTK_WIDGET (priv->entry);
+ entry = GTK_WIDGET (tag->entry);
if (entry)
gtk_widget_queue_resize (entry);
}
@@ -1164,28 +1151,24 @@ gd_tagged_entry_tag_get_has_close_button (GdTaggedEntryTag *tag)
{
g_return_val_if_fail (GD_IS_TAGGED_ENTRY_TAG (tag), FALSE);
- return tag->priv->has_close_button;
+ return tag->has_close_button;
}
void
gd_tagged_entry_tag_set_style (GdTaggedEntryTag *tag,
const gchar *style)
{
- GdTaggedEntryTagPrivate *priv;
-
g_return_if_fail (GD_IS_TAGGED_ENTRY_TAG (tag));
- priv = tag->priv;
-
- if (g_strcmp0 (priv->style, style) != 0)
+ if (g_strcmp0 (tag->style, style) != 0)
{
GtkWidget *entry;
- g_free (priv->style);
- priv->style = g_strdup (style);
- g_clear_object (&priv->layout);
+ g_free (tag->style);
+ tag->style = g_strdup (style);
+ g_clear_object (&tag->layout);
- entry = GTK_WIDGET (tag->priv->entry);
+ entry = GTK_WIDGET (tag->entry);
if (entry)
gtk_widget_queue_resize (entry);
}
@@ -1196,7 +1179,7 @@ gd_tagged_entry_tag_get_style (GdTaggedEntryTag *tag)
{
g_return_val_if_fail (GD_IS_TAGGED_ENTRY_TAG (tag), NULL);
- return tag->priv->style;
+ return tag->style;
}
void
@@ -1205,10 +1188,10 @@ gd_tagged_entry_set_tag_button_visible (GdTaggedEntry *self,
{
g_return_if_fail (GD_IS_TAGGED_ENTRY (self));
- if (self->priv->button_visible == visible)
+ if (self->button_visible == visible)
return;
- self->priv->button_visible = visible;
+ self->button_visible = visible;
gtk_widget_queue_resize (GTK_WIDGET (self));
g_object_notify_by_pspec (G_OBJECT (self), properties[PROP_TAG_BUTTON_VISIBLE]);
@@ -1219,5 +1202,5 @@ gd_tagged_entry_get_tag_button_visible (GdTaggedEntry *self)
{
g_return_val_if_fail (GD_IS_TAGGED_ENTRY (self), FALSE);
- return self->priv->button_visible;
+ return self->button_visible;
}
diff --git a/src/gd/gd-tagged-entry.h b/src/gd/gd-tagged-entry.h
index 87d9da4..f755bc2 100644
--- a/src/gd/gd-tagged-entry.h
+++ b/src/gd/gd-tagged-entry.h
@@ -30,52 +30,15 @@
G_BEGIN_DECLS
#define GD_TYPE_TAGGED_ENTRY gd_tagged_entry_get_type()
-#define GD_TAGGED_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GD_TYPE_TAGGED_ENTRY, GdTaggedEntry))
-#define GD_TAGGED_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GD_TYPE_TAGGED_ENTRY,
GdTaggedEntryClass))
-#define GD_IS_TAGGED_ENTRY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GD_TYPE_TAGGED_ENTRY))
-#define GD_IS_TAGGED_ENTRY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GD_TYPE_TAGGED_ENTRY))
-#define GD_TAGGED_ENTRY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GD_TYPE_TAGGED_ENTRY,
GdTaggedEntryClass))
-typedef struct _GdTaggedEntry GdTaggedEntry;
-typedef struct _GdTaggedEntryClass GdTaggedEntryClass;
-typedef struct _GdTaggedEntryPrivate GdTaggedEntryPrivate;
-
-typedef struct _GdTaggedEntryTag GdTaggedEntryTag;
-typedef struct _GdTaggedEntryTagClass GdTaggedEntryTagClass;
-typedef struct _GdTaggedEntryTagPrivate GdTaggedEntryTagPrivate;
-
-struct _GdTaggedEntry
-{
- GtkSearchEntry parent;
-
- GdTaggedEntryPrivate *priv;
-};
-
-struct _GdTaggedEntryClass
-{
- GtkSearchEntryClass parent_class;
-};
+G_DECLARE_FINAL_TYPE (GdTaggedEntry, gd_tagged_entry,
+ GD, TAGGED_ENTRY, GtkSearchEntry)
#define GD_TYPE_TAGGED_ENTRY_TAG gd_tagged_entry_tag_get_type()
-#define GD_TAGGED_ENTRY_TAG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GD_TYPE_TAGGED_ENTRY_TAG,
GdTaggedEntryTag))
-#define GD_TAGGED_ENTRY_TAG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GD_TYPE_TAGGED_ENTRY_TAG,
GdTaggedEntryTagClass))
-#define GD_IS_TAGGED_ENTRY_TAG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GD_TYPE_TAGGED_ENTRY_TAG))
-#define GD_IS_TAGGED_ENTRY_TAG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GD_TYPE_TAGGED_ENTRY_TAG))
-#define GD_TAGGED_ENTRY_TAG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GD_TYPE_TAGGED_ENTRY_TAG,
GdTaggedEntryTagClass))
-
-struct _GdTaggedEntryTag
-{
- GObject parent;
-
- GdTaggedEntryTagPrivate *priv;
-};
-struct _GdTaggedEntryTagClass
-{
- GObjectClass parent_class;
-};
+G_DECLARE_FINAL_TYPE (GdTaggedEntryTag, gd_tagged_entry_tag,
+ GD, TAGGED_ENTRY_TAG, GObject)
-GType gd_tagged_entry_get_type (void);
GdTaggedEntry *gd_tagged_entry_new (void);
@@ -93,7 +56,6 @@ gboolean gd_tagged_entry_add_tag (GdTaggedEntry *self,
gboolean gd_tagged_entry_remove_tag (GdTaggedEntry *self,
GdTaggedEntryTag *tag);
-GType gd_tagged_entry_tag_get_type (void);
GdTaggedEntryTag *gd_tagged_entry_tag_new (const gchar *label);
diff --git a/src/gedit/gedit-menu-stack-switcher.c b/src/gedit/gedit-menu-stack-switcher.c
index 15fc289..d66b409 100644
--- a/src/gedit/gedit-menu-stack-switcher.c
+++ b/src/gedit/gedit-menu-stack-switcher.c
@@ -27,14 +27,16 @@
#include <gtk/gtk.h>
#include "gedit-menu-stack-switcher.h"
-struct _GeditMenuStackSwitcherPrivate
+struct _GeditMenuStackSwitcher
{
- GtkStack *stack;
- GtkWidget *label;
- GtkWidget *button_box;
- GtkWidget *popover;
- GHashTable *buttons;
- gboolean in_child_changed;
+ GtkMenuButton parent_instance;
+
+ GtkStack *stack;
+ GtkWidget *label;
+ GtkWidget *button_box;
+ GtkWidget *popover;
+ GHashTable *buttons;
+ gboolean in_child_changed;
};
enum {
@@ -42,74 +44,67 @@ enum {
PROP_STACK
};
-G_DEFINE_TYPE_WITH_PRIVATE (GeditMenuStackSwitcher, gedit_menu_stack_switcher, GTK_TYPE_MENU_BUTTON)
+G_DEFINE_TYPE (GeditMenuStackSwitcher, gedit_menu_stack_switcher, GTK_TYPE_MENU_BUTTON)
static void
gedit_menu_stack_switcher_init (GeditMenuStackSwitcher *switcher)
{
- GeditMenuStackSwitcherPrivate *priv;
GtkWidget *box;
GtkWidget *arrow;
GtkStyleContext *context;
- priv = gedit_menu_stack_switcher_get_instance_private (switcher);
- switcher->priv = priv;
-
box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6);
arrow = gtk_image_new_from_icon_name ("pan-down-symbolic", GTK_ICON_SIZE_BUTTON);
gtk_box_pack_end (GTK_BOX (box), arrow, FALSE, TRUE, 6);
gtk_widget_set_valign (arrow, GTK_ALIGN_BASELINE);
- priv->label = gtk_label_new (NULL);
- gtk_widget_set_valign (priv->label, GTK_ALIGN_BASELINE);
- gtk_box_pack_start (GTK_BOX (box), priv->label, TRUE, TRUE, 6);
+ switcher->label = gtk_label_new (NULL);
+ gtk_widget_set_valign (switcher->label, GTK_ALIGN_BASELINE);
+ gtk_box_pack_start (GTK_BOX (box), switcher->label, TRUE, TRUE, 6);
// FIXME: this is not correct if this widget becomes more generic
// and used also outside the header bar, but for now we just want
// the same style as title labels
- context = gtk_widget_get_style_context (priv->label);
+ context = gtk_widget_get_style_context (switcher->label);
gtk_style_context_add_class (context, "title");
gtk_widget_show_all (box);
gtk_container_add (GTK_CONTAINER (switcher), box);
- priv->popover = gtk_popover_new (GTK_WIDGET (switcher));
- gtk_popover_set_position (GTK_POPOVER (priv->popover), GTK_POS_BOTTOM);
- context = gtk_widget_get_style_context (priv->popover);
+ switcher->popover = gtk_popover_new (GTK_WIDGET (switcher));
+ gtk_popover_set_position (GTK_POPOVER (switcher->popover), GTK_POS_BOTTOM);
+ context = gtk_widget_get_style_context (switcher->popover);
gtk_style_context_add_class (context, "gedit-menu-stack-switcher");
- priv->button_box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 6);
+ switcher->button_box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 6);
- gtk_widget_show (priv->button_box);
+ gtk_widget_show (switcher->button_box);
- gtk_container_add (GTK_CONTAINER (priv->popover), priv->button_box);
+ gtk_container_add (GTK_CONTAINER (switcher->popover), switcher->button_box);
- gtk_menu_button_set_popover (GTK_MENU_BUTTON (switcher), priv->popover);
+ gtk_menu_button_set_popover (GTK_MENU_BUTTON (switcher), switcher->popover);
- priv->buttons = g_hash_table_new (g_direct_hash, g_direct_equal);
+ switcher->buttons = g_hash_table_new (g_direct_hash, g_direct_equal);
}
static void
clear_popover (GeditMenuStackSwitcher *switcher)
{
- GeditMenuStackSwitcherPrivate *priv = switcher->priv;
-
- gtk_container_foreach (GTK_CONTAINER (priv->button_box), (GtkCallback) gtk_widget_destroy, switcher);
+ gtk_container_foreach (GTK_CONTAINER (switcher->button_box), (GtkCallback) gtk_widget_destroy, switcher);
}
static void
on_button_clicked (GtkWidget *widget,
GeditMenuStackSwitcher *switcher)
{
- GeditMenuStackSwitcherPrivate *priv = switcher->priv;
GtkWidget *child;
- if (!priv->in_child_changed)
+ if (!switcher->in_child_changed)
{
child = g_object_get_data (G_OBJECT (widget), "stack-child");
- gtk_stack_set_visible_child (priv->stack, child);
- gtk_widget_hide (priv->popover);
+ gtk_stack_set_visible_child (switcher->stack, child);
+ gtk_widget_hide (switcher->popover);
}
}
@@ -118,18 +113,17 @@ update_button (GeditMenuStackSwitcher *switcher,
GtkWidget *widget,
GtkWidget *button)
{
- GeditMenuStackSwitcherPrivate *priv = switcher->priv;
GList *children;
/* We get spurious notifications while the stack is being
* destroyed, so for now check the child actually exists
*/
- children = gtk_container_get_children (GTK_CONTAINER (priv->stack));
+ children = gtk_container_get_children (GTK_CONTAINER (switcher->stack));
if (g_list_index (children, widget) >= 0)
{
gchar *title;
- gtk_container_child_get (GTK_CONTAINER (priv->stack), widget,
+ gtk_container_child_get (GTK_CONTAINER (switcher->stack), widget,
"title", &title,
NULL);
@@ -137,9 +131,9 @@ update_button (GeditMenuStackSwitcher *switcher,
gtk_widget_set_visible (button, gtk_widget_get_visible (widget) && (title != NULL));
gtk_widget_set_size_request (button, 100, -1);
- if (widget == gtk_stack_get_visible_child (priv->stack))
+ if (widget == gtk_stack_get_visible_child (switcher->stack))
{
- gtk_label_set_label (GTK_LABEL (priv->label), title);
+ gtk_label_set_label (GTK_LABEL (switcher->label), title);
}
g_free (title);
@@ -153,10 +147,9 @@ on_title_icon_visible_updated (GtkWidget *widget,
GParamSpec *pspec,
GeditMenuStackSwitcher *switcher)
{
- GeditMenuStackSwitcherPrivate *priv = switcher->priv;
GtkWidget *button;
- button = g_hash_table_lookup (priv->buttons, widget);
+ button = g_hash_table_lookup (switcher->buttons, widget);
update_button (switcher, widget, button);
}
@@ -165,24 +158,23 @@ on_position_updated (GtkWidget *widget,
GParamSpec *pspec,
GeditMenuStackSwitcher *switcher)
{
- GeditMenuStackSwitcherPrivate *priv = switcher->priv;
GtkWidget *button;
gint position;
- button = g_hash_table_lookup (priv->buttons, widget);
+ button = g_hash_table_lookup (switcher->buttons, widget);
- gtk_container_child_get (GTK_CONTAINER (priv->stack), widget,
+ gtk_container_child_get (GTK_CONTAINER (switcher->stack), widget,
"position", &position,
NULL);
- gtk_box_reorder_child (GTK_BOX (priv->button_box), button, position);
+ gtk_box_reorder_child (GTK_BOX (switcher->button_box), button, position);
}
static void
add_child (GeditMenuStackSwitcher *switcher,
GtkWidget *widget)
{
- GeditMenuStackSwitcherPrivate *priv = switcher->priv;
+
GtkWidget *button;
GList *group;
@@ -192,14 +184,14 @@ add_child (GeditMenuStackSwitcher *switcher,
update_button (switcher, widget, button);
- group = gtk_container_get_children (GTK_CONTAINER (priv->button_box));
+ group = gtk_container_get_children (GTK_CONTAINER (switcher->button_box));
if (group != NULL)
{
gtk_radio_button_join_group (GTK_RADIO_BUTTON (button), GTK_RADIO_BUTTON (group->data));
g_list_free (group);
}
- gtk_container_add (GTK_CONTAINER (priv->button_box), button);
+ gtk_container_add (GTK_CONTAINER (switcher->button_box), button);
g_object_set_data (G_OBJECT (button), "stack-child", widget);
g_signal_connect (button, "clicked", G_CALLBACK (on_button_clicked), switcher);
@@ -208,7 +200,7 @@ add_child (GeditMenuStackSwitcher *switcher,
g_signal_connect (widget, "child-notify::icon-name", G_CALLBACK (on_title_icon_visible_updated), switcher);
g_signal_connect (widget, "child-notify::position", G_CALLBACK (on_position_updated), switcher);
- g_hash_table_insert (priv->buttons, widget, button);
+ g_hash_table_insert (switcher->buttons, widget, button);
}
static void
@@ -221,9 +213,7 @@ foreach_stack (GtkWidget *widget,
static void
populate_popover (GeditMenuStackSwitcher *switcher)
{
- GeditMenuStackSwitcherPrivate *priv = switcher->priv;
-
- gtk_container_foreach (GTK_CONTAINER (priv->stack), (GtkCallback)foreach_stack, switcher);
+ gtk_container_foreach (GTK_CONTAINER (switcher->stack), (GtkCallback)foreach_stack, switcher);
}
static void
@@ -231,7 +221,6 @@ on_child_changed (GtkWidget *widget,
GParamSpec *pspec,
GeditMenuStackSwitcher *switcher)
{
- GeditMenuStackSwitcherPrivate *priv = switcher->priv;
GtkWidget *child;
GtkWidget *button;
@@ -240,20 +229,20 @@ on_child_changed (GtkWidget *widget,
{
gchar *title;
- gtk_container_child_get (GTK_CONTAINER (priv->stack), child,
+ gtk_container_child_get (GTK_CONTAINER (switcher->stack), child,
"title", &title,
NULL);
- gtk_label_set_label (GTK_LABEL (priv->label), title);
+ gtk_label_set_label (GTK_LABEL (switcher->label), title);
g_free (title);
}
- button = g_hash_table_lookup (priv->buttons, child);
+ button = g_hash_table_lookup (switcher->buttons, child);
if (button != NULL)
{
- priv->in_child_changed = TRUE;
+ switcher->in_child_changed = TRUE;
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button), TRUE);
- priv->in_child_changed = FALSE;
+ switcher->in_child_changed = FALSE;
}
}
@@ -270,37 +259,32 @@ on_stack_child_removed (GtkStack *stack,
GtkWidget *widget,
GeditMenuStackSwitcher *switcher)
{
- GeditMenuStackSwitcherPrivate *priv = switcher->priv;
GtkWidget *button;
- button = g_hash_table_lookup (priv->buttons, widget);
- gtk_container_remove (GTK_CONTAINER (priv->button_box), button);
- g_hash_table_remove (priv->buttons, widget);
+ button = g_hash_table_lookup (switcher->buttons, widget);
+ gtk_container_remove (GTK_CONTAINER (switcher->button_box), button);
+ g_hash_table_remove (switcher->buttons, widget);
}
static void
disconnect_stack_signals (GeditMenuStackSwitcher *switcher)
{
- GeditMenuStackSwitcherPrivate *priv = switcher->priv;
-
- g_signal_handlers_disconnect_by_func (priv->stack, on_stack_child_added, switcher);
- g_signal_handlers_disconnect_by_func (priv->stack, on_stack_child_removed, switcher);
- g_signal_handlers_disconnect_by_func (priv->stack, on_child_changed, switcher);
- g_signal_handlers_disconnect_by_func (priv->stack, disconnect_stack_signals, switcher);
+ g_signal_handlers_disconnect_by_func (switcher->stack, on_stack_child_added, switcher);
+ g_signal_handlers_disconnect_by_func (switcher->stack, on_stack_child_removed, switcher);
+ g_signal_handlers_disconnect_by_func (switcher->stack, on_child_changed, switcher);
+ g_signal_handlers_disconnect_by_func (switcher->stack, disconnect_stack_signals, switcher);
}
static void
connect_stack_signals (GeditMenuStackSwitcher *switcher)
{
- GeditMenuStackSwitcherPrivate *priv = switcher->priv;
-
- g_signal_connect (priv->stack, "add",
+ g_signal_connect (switcher->stack, "add",
G_CALLBACK (on_stack_child_added), switcher);
- g_signal_connect (priv->stack, "remove",
+ g_signal_connect (switcher->stack, "remove",
G_CALLBACK (on_stack_child_removed), switcher);
- g_signal_connect (priv->stack, "notify::visible-child",
+ g_signal_connect (switcher->stack, "notify::visible-child",
G_CALLBACK (on_child_changed), switcher);
- g_signal_connect_swapped (priv->stack, "destroy",
+ g_signal_connect_swapped (switcher->stack, "destroy",
G_CALLBACK (disconnect_stack_signals), switcher);
}
@@ -308,26 +292,22 @@ void
gedit_menu_stack_switcher_set_stack (GeditMenuStackSwitcher *switcher,
GtkStack *stack)
{
- GeditMenuStackSwitcherPrivate *priv;
-
g_return_if_fail (GEDIT_IS_MENU_STACK_SWITCHER (switcher));
g_return_if_fail (stack == NULL || GTK_IS_STACK (stack));
- priv = switcher->priv;
-
- if (priv->stack == stack)
+ if (switcher->stack == stack)
return;
- if (priv->stack)
+ if (switcher->stack)
{
disconnect_stack_signals (switcher);
clear_popover (switcher);
- g_clear_object (&priv->stack);
+ g_clear_object (&switcher->stack);
}
if (stack)
{
- priv->stack = g_object_ref (stack);
+ switcher->stack = g_object_ref (stack);
populate_popover (switcher);
connect_stack_signals (switcher);
}
@@ -342,7 +322,7 @@ gedit_menu_stack_switcher_get_stack (GeditMenuStackSwitcher *switcher)
{
g_return_val_if_fail (GEDIT_IS_MENU_STACK_SWITCHER (switcher), NULL);
- return switcher->priv->stack;
+ return switcher->stack;
}
static void
@@ -352,12 +332,11 @@ gedit_menu_stack_switcher_get_property (GObject *object,
GParamSpec *pspec)
{
GeditMenuStackSwitcher *switcher = GEDIT_MENU_STACK_SWITCHER (object);
- GeditMenuStackSwitcherPrivate *priv = switcher->priv;
switch (prop_id)
{
case PROP_STACK:
- g_value_set_object (value, priv->stack);
+ g_value_set_object (value, switcher->stack);
break;
default:
@@ -400,9 +379,8 @@ static void
gedit_menu_stack_switcher_finalize (GObject *object)
{
GeditMenuStackSwitcher *switcher = GEDIT_MENU_STACK_SWITCHER (object);
- GeditMenuStackSwitcherPrivate *priv = switcher->priv;
- g_hash_table_destroy (priv->buttons);
+ g_hash_table_destroy (switcher->buttons);
G_OBJECT_CLASS (gedit_menu_stack_switcher_parent_class)->finalize (object);
}
diff --git a/src/gedit/gedit-menu-stack-switcher.h b/src/gedit/gedit-menu-stack-switcher.h
index e2727de..c0b07b0 100644
--- a/src/gedit/gedit-menu-stack-switcher.h
+++ b/src/gedit/gedit-menu-stack-switcher.h
@@ -26,36 +26,9 @@
G_BEGIN_DECLS
#define GEDIT_TYPE_MENU_STACK_SWITCHER (gedit_menu_stack_switcher_get_type())
-#define GEDIT_MENU_STACK_SWITCHER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),
GEDIT_TYPE_MENU_STACK_SWITCHER, GeditMenuStackSwitcher))
-#define GEDIT_MENU_STACK_SWITCHER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),
GEDIT_TYPE_MENU_STACK_SWITCHER, GeditMenuStackSwitcherClass))
-#define GEDIT_IS_MENU_STACK_SWITCHER(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),
GEDIT_TYPE_MENU_STACK_SWITCHER))
-#define GEDIT_IS_MENU_STACK_SWITCHER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass),
GEDIT_TYPE_MENU_STACK_SWITCHER))
-#define GEDIT_MENU_STACK_SWITCHER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj),
GEDIT_TYPE_MENU_STACK_SWITCHER, GeditMenuStackSwitcherClass))
-typedef struct _GeditMenuStackSwitcher GeditMenuStackSwitcher;
-typedef struct _GeditMenuStackSwitcherClass GeditMenuStackSwitcherClass;
-typedef struct _GeditMenuStackSwitcherPrivate GeditMenuStackSwitcherPrivate;
-
-struct _GeditMenuStackSwitcher
-{
- GtkMenuButton parent;
-
- /*< private >*/
- GeditMenuStackSwitcherPrivate *priv;
-};
-
-struct _GeditMenuStackSwitcherClass
-{
- GtkMenuButtonClass parent_class;
-
- /* Padding for future expansion */
- void (*_gedit_reserved1) (void);
- void (*_gedit_reserved2) (void);
- void (*_gedit_reserved3) (void);
- void (*_gedit_reserved4) (void);
-};
-
-GType gedit_menu_stack_switcher_get_type (void);
+G_DECLARE_FINAL_TYPE (GeditMenuStackSwitcher, gedit_menu_stack_switcher,
+ GEDIT, MENU_STACK_SWITCHER, GtkMenuButton)
GtkWidget * gedit_menu_stack_switcher_new (void);
diff --git a/src/html/gb-html-document.c b/src/html/gb-html-document.c
index fed6e8d..c063d3c 100644
--- a/src/html/gb-html-document.c
+++ b/src/html/gb-html-document.c
@@ -27,8 +27,10 @@
#include "gb-html-document.h"
#include "gb-html-view.h"
-struct _GbHtmlDocumentPrivate
+struct _GbHtmlDocument
{
+ GObject parent_instance;
+
GtkTextBuffer *buffer;
gchar *title;
GbHtmlDocumentTransform transform;
@@ -36,10 +38,9 @@ struct _GbHtmlDocumentPrivate
static void gb_html_document_init_document (GbDocumentInterface *iface);
-G_DEFINE_TYPE_EXTENDED (GbHtmlDocument, gb_html_document, G_TYPE_OBJECT, 0,
- G_ADD_PRIVATE (GbHtmlDocument)
- G_IMPLEMENT_INTERFACE (GB_TYPE_DOCUMENT,
- gb_html_document_init_document))
+G_DEFINE_TYPE_WITH_CODE (GbHtmlDocument, gb_html_document, G_TYPE_OBJECT,
+ G_IMPLEMENT_INTERFACE (GB_TYPE_DOCUMENT,
+ gb_html_document_init_document))
enum {
PROP_0,
@@ -66,7 +67,7 @@ gb_html_document_set_transform_func (GbHtmlDocument *document,
{
g_return_if_fail (GB_IS_HTML_DOCUMENT (document));
- document->priv->transform = transform;
+ document->transform = transform;
}
gchar *
@@ -79,15 +80,15 @@ gb_html_document_get_content (GbHtmlDocument *document)
g_return_val_if_fail (GB_IS_HTML_DOCUMENT (document), NULL);
- if (!document->priv->buffer)
+ if (!document->buffer)
return NULL;
- gtk_text_buffer_get_bounds (document->priv->buffer, &begin, &end);
+ gtk_text_buffer_get_bounds (document->buffer, &begin, &end);
str = gtk_text_iter_get_slice (&begin, &end);
- if (document->priv->transform)
+ if (document->transform)
{
- tmp = document->priv->transform (document, str);
+ tmp = document->transform (document, str);
g_free (str);
str = tmp;
}
@@ -102,8 +103,8 @@ gb_html_document_get_title (GbDocument *document)
g_return_val_if_fail (GB_IS_HTML_DOCUMENT (self), NULL);
- if (self->priv->title)
- return self->priv->title;
+ if (self->title)
+ return self->title;
return _("HTML Preview");
}
@@ -120,14 +121,14 @@ gb_html_document_notify_location (GbHtmlDocument *document,
location = ide_file_get_file (file);
- g_clear_pointer (&document->priv->title, g_free);
+ g_clear_pointer (&document->title, g_free);
if (location)
{
gchar *filename;
filename = g_file_get_basename (location);
- document->priv->title = g_strdup_printf (_("%s (Preview)"), filename);
+ document->title = g_strdup_printf (_("%s (Preview)"), filename);
}
g_object_notify (G_OBJECT (document), "title");
@@ -177,7 +178,7 @@ gb_html_document_get_buffer (GbHtmlDocument *document)
{
g_return_val_if_fail (GB_IS_HTML_DOCUMENT (document), NULL);
- return document->priv->buffer;
+ return document->buffer;
}
static void
@@ -189,17 +190,17 @@ gb_html_document_set_buffer (GbHtmlDocument *document,
g_return_if_fail (GB_IS_HTML_DOCUMENT (self));
g_return_if_fail (!buffer || GTK_IS_TEXT_BUFFER (buffer));
- if (buffer != self->priv->buffer)
+ if (buffer != self->buffer)
{
- if (self->priv->buffer)
+ if (self->buffer)
{
gb_html_document_disconnect (self, buffer);
- g_clear_object (&self->priv->buffer);
+ g_clear_object (&self->buffer);
}
if (buffer)
{
- self->priv->buffer = g_object_ref (buffer);
+ self->buffer = g_object_ref (buffer);
gb_html_document_connect (self, buffer);
}
@@ -235,10 +236,10 @@ gb_html_document_get_read_only (GbDocument *document)
static void
gb_html_document_finalize (GObject *object)
{
- GbHtmlDocumentPrivate *priv = GB_HTML_DOCUMENT (object)->priv;
+ GbHtmlDocument *self = GB_HTML_DOCUMENT (object);
- g_clear_pointer (&priv->title, g_free);
- g_clear_object (&priv->buffer);
+ g_clear_pointer (&self->title, g_free);
+ g_clear_object (&self->buffer);
G_OBJECT_CLASS (gb_html_document_parent_class)->finalize (object);
}
@@ -323,7 +324,6 @@ gb_html_document_class_init (GbHtmlDocumentClass *klass)
static void
gb_html_document_init (GbHtmlDocument *self)
{
- self->priv = gb_html_document_get_instance_private (self);
}
static void
diff --git a/src/html/gb-html-document.h b/src/html/gb-html-document.h
index a3fd37f..ce5dc89 100644
--- a/src/html/gb-html-document.h
+++ b/src/html/gb-html-document.h
@@ -23,35 +23,13 @@
G_BEGIN_DECLS
-#define GB_TYPE_HTML_DOCUMENT (gb_html_document_get_type())
-#define GB_HTML_DOCUMENT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_HTML_DOCUMENT,
GbHtmlDocument))
-#define GB_HTML_DOCUMENT_CONST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_HTML_DOCUMENT,
GbHtmlDocument const))
-#define GB_HTML_DOCUMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GB_TYPE_HTML_DOCUMENT,
GbHtmlDocumentClass))
-#define GB_IS_HTML_DOCUMENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GB_TYPE_HTML_DOCUMENT))
-#define GB_IS_HTML_DOCUMENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GB_TYPE_HTML_DOCUMENT))
-#define GB_HTML_DOCUMENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GB_TYPE_HTML_DOCUMENT,
GbHtmlDocumentClass))
+#define GB_TYPE_HTML_DOCUMENT (gb_html_document_get_type())
-typedef struct _GbHtmlDocument GbHtmlDocument;
-typedef struct _GbHtmlDocumentClass GbHtmlDocumentClass;
-typedef struct _GbHtmlDocumentPrivate GbHtmlDocumentPrivate;
-
-struct _GbHtmlDocument
-{
- GObject parent;
-
- /*< private >*/
- GbHtmlDocumentPrivate *priv;
-};
-
-struct _GbHtmlDocumentClass
-{
- GObjectClass parent;
-};
+G_DECLARE_FINAL_TYPE (GbHtmlDocument, gb_html_document, GB, HTML_DOCUMENT, GObject)
typedef gchar *(*GbHtmlDocumentTransform) (GbHtmlDocument *document,
const gchar *content);
-GType gb_html_document_get_type (void);
GtkTextBuffer *gb_html_document_get_buffer (GbHtmlDocument *document);
void gb_html_document_set_transform_func (GbHtmlDocument *document,
GbHtmlDocumentTransform transform);
diff --git a/src/nautilus/nautilus-floating-bar.c b/src/nautilus/nautilus-floating-bar.c
index 2aee9c6..d35a9fb 100644
--- a/src/nautilus/nautilus-floating-bar.c
+++ b/src/nautilus/nautilus-floating-bar.c
@@ -27,15 +27,17 @@
#include "nautilus-floating-bar.h"
-struct _NautilusFloatingBarDetails {
- gchar *primary_label;
- gchar *details_label;
-
- GtkWidget *primary_label_widget;
- GtkWidget *details_label_widget;
- GtkWidget *spinner;
- gboolean show_spinner;
- gboolean is_interactive;
+struct _NautilusFloatingBar {
+ GtkBox parent_instance;
+
+ gchar *primary_label;
+ gchar *details_label;
+
+ GtkWidget *primary_label_widget;
+ GtkWidget *details_label_widget;
+ GtkWidget *spinner;
+ gboolean show_spinner;
+ gboolean is_interactive;
};
enum {
@@ -73,8 +75,8 @@ nautilus_floating_bar_finalize (GObject *obj)
{
NautilusFloatingBar *self = NAUTILUS_FLOATING_BAR (obj);
- g_free (self->priv->primary_label);
- g_free (self->priv->details_label);
+ g_free (self->primary_label);
+ g_free (self->details_label);
G_OBJECT_CLASS (nautilus_floating_bar_parent_class)->finalize (obj);
}
@@ -89,13 +91,13 @@ nautilus_floating_bar_get_property (GObject *object,
switch (property_id) {
case PROP_PRIMARY_LABEL:
- g_value_set_string (value, self->priv->primary_label);
+ g_value_set_string (value, self->primary_label);
break;
case PROP_DETAILS_LABEL:
- g_value_set_string (value, self->priv->details_label);
+ g_value_set_string (value, self->details_label);
break;
case PROP_SHOW_SPINNER:
- g_value_set_boolean (value, self->priv->show_spinner);
+ g_value_set_boolean (value, self->show_spinner);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
@@ -132,18 +134,18 @@ update_labels (NautilusFloatingBar *self)
{
gboolean primary_visible, details_visible;
- primary_visible = (self->priv->primary_label != NULL) &&
- (strlen (self->priv->primary_label) > 0);
- details_visible = (self->priv->details_label != NULL) &&
- (strlen (self->priv->details_label) > 0);
+ primary_visible = (self->primary_label != NULL) &&
+ (strlen (self->primary_label) > 0);
+ details_visible = (self->details_label != NULL) &&
+ (strlen (self->details_label) > 0);
- gtk_label_set_text (GTK_LABEL (self->priv->primary_label_widget),
- self->priv->primary_label);
- gtk_widget_set_visible (self->priv->primary_label_widget, primary_visible);
+ gtk_label_set_text (GTK_LABEL (self->primary_label_widget),
+ self->primary_label);
+ gtk_widget_set_visible (self->primary_label_widget, primary_visible);
- gtk_label_set_text (GTK_LABEL (self->priv->details_label_widget),
- self->priv->details_label);
- gtk_widget_set_visible (self->priv->details_label_widget, details_visible);
+ gtk_label_set_text (GTK_LABEL (self->details_label_widget),
+ self->details_label);
+ gtk_widget_set_visible (self->details_label_widget, details_visible);
}
static gboolean
@@ -200,8 +202,8 @@ nautilus_floating_bar_show (GtkWidget *widget)
GTK_WIDGET_CLASS (nautilus_floating_bar_parent_class)->show (widget);
- if (self->priv->show_spinner) {
- gtk_spinner_start (GTK_SPINNER (self->priv->spinner));
+ if (self->show_spinner) {
+ gtk_spinner_start (GTK_SPINNER (self->spinner));
}
}
@@ -212,7 +214,7 @@ nautilus_floating_bar_hide (GtkWidget *widget)
GTK_WIDGET_CLASS (nautilus_floating_bar_parent_class)->hide (widget);
- gtk_spinner_stop (GTK_SPINNER (self->priv->spinner));
+ gtk_spinner_stop (GTK_SPINNER (self->spinner));
}
static void
@@ -318,8 +320,8 @@ nautilus_floating_bar_constructed (GObject *obj)
w = gtk_spinner_new ();
gtk_box_pack_start (GTK_BOX (box), w, FALSE, FALSE, 0);
- gtk_widget_set_visible (w, self->priv->show_spinner);
- self->priv->spinner = w;
+ gtk_widget_set_visible (w, self->show_spinner);
+ self->spinner = w;
gtk_widget_set_size_request (w, 16, 16);
gtk_widget_set_margin_start (w, 8);
@@ -338,13 +340,13 @@ nautilus_floating_bar_constructed (GObject *obj)
gtk_label_set_ellipsize (GTK_LABEL (w), PANGO_ELLIPSIZE_MIDDLE);
gtk_label_set_single_line_mode (GTK_LABEL (w), TRUE);
gtk_container_add (GTK_CONTAINER (labels_box), w);
- self->priv->primary_label_widget = w;
+ self->primary_label_widget = w;
gtk_widget_show (w);
w = gtk_label_new (NULL);
gtk_label_set_single_line_mode (GTK_LABEL (w), TRUE);
gtk_container_add (GTK_CONTAINER (labels_box), w);
- self->priv->details_label_widget = w;
+ self->details_label_widget = w;
gtk_widget_show (w);
}
@@ -353,9 +355,6 @@ nautilus_floating_bar_init (NautilusFloatingBar *self)
{
GtkStyleContext *context;
- self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self, NAUTILUS_TYPE_FLOATING_BAR,
- NautilusFloatingBarDetails);
-
context = gtk_widget_get_style_context (GTK_WIDGET (self));
gtk_style_context_add_class (context, "floating-bar");
}
@@ -407,7 +406,6 @@ nautilus_floating_bar_class_init (NautilusFloatingBarClass *klass)
G_TYPE_NONE, 1,
G_TYPE_INT);
- g_type_class_add_private (klass, sizeof (NautilusFloatingBarDetails));
g_object_class_install_properties (oclass, NUM_PROPERTIES, properties);
}
@@ -415,9 +413,9 @@ void
nautilus_floating_bar_set_primary_label (NautilusFloatingBar *self,
const gchar *label)
{
- if (g_strcmp0 (self->priv->primary_label, label) != 0) {
- g_free (self->priv->primary_label);
- self->priv->primary_label = g_strdup (label);
+ if (g_strcmp0 (self->primary_label, label) != 0) {
+ g_free (self->primary_label);
+ self->primary_label = g_strdup (label);
g_object_notify_by_pspec (G_OBJECT (self), properties[PROP_PRIMARY_LABEL]);
@@ -429,9 +427,9 @@ void
nautilus_floating_bar_set_details_label (NautilusFloatingBar *self,
const gchar *label)
{
- if (g_strcmp0 (self->priv->details_label, label) != 0) {
- g_free (self->priv->details_label);
- self->priv->details_label = g_strdup (label);
+ if (g_strcmp0 (self->details_label, label) != 0) {
+ g_free (self->details_label);
+ self->details_label = g_strdup (label);
g_object_notify_by_pspec (G_OBJECT (self), properties[PROP_DETAILS_LABEL]);
@@ -452,10 +450,10 @@ void
nautilus_floating_bar_set_show_spinner (NautilusFloatingBar *self,
gboolean show_spinner)
{
- if (self->priv->show_spinner != show_spinner) {
- self->priv->show_spinner = show_spinner;
- g_object_set (self->priv->spinner, "active", show_spinner, NULL);
- gtk_widget_set_visible (self->priv->spinner,
+ if (self->show_spinner != show_spinner) {
+ self->show_spinner = show_spinner;
+ g_object_set (self->spinner, "active", show_spinner, NULL);
+ gtk_widget_set_visible (self->spinner,
show_spinner);
g_object_notify_by_pspec (G_OBJECT (self), properties[PROP_SHOW_SPINNER]);
@@ -498,7 +496,7 @@ nautilus_floating_bar_add_action (NautilusFloatingBar *self,
g_signal_connect (button, "clicked",
G_CALLBACK (action_button_clicked_cb), self);
- self->priv->is_interactive = TRUE;
+ self->is_interactive = TRUE;
}
void
@@ -524,5 +522,5 @@ nautilus_floating_bar_cleanup_actions (NautilusFloatingBar *self)
g_list_free (children);
- self->priv->is_interactive = FALSE;
+ self->is_interactive = FALSE;
}
diff --git a/src/nautilus/nautilus-floating-bar.h b/src/nautilus/nautilus-floating-bar.h
index 59fd1ab..672cd1a 100644
--- a/src/nautilus/nautilus-floating-bar.h
+++ b/src/nautilus/nautilus-floating-bar.h
@@ -29,32 +29,9 @@
#define NAUTILUS_FLOATING_BAR_ACTION_ID_STOP 1
#define NAUTILUS_TYPE_FLOATING_BAR nautilus_floating_bar_get_type()
-#define NAUTILUS_FLOATING_BAR(obj) \
- (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_FLOATING_BAR, NautilusFloatingBar))
-#define NAUTILUS_FLOATING_BAR_CLASS(klass) \
- (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_FLOATING_BAR, NautilusFloatingBarClass))
-#define NAUTILUS_IS_FLOATING_BAR(obj) \
- (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_FLOATING_BAR))
-#define NAUTILUS_IS_FLOATING_BAR_CLASS(klass) \
- (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_FLOATING_BAR))
-#define NAUTILUS_FLOATING_BAR_GET_CLASS(obj) \
- (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_FLOATING_BAR, NautilusFloatingBarClass))
-typedef struct _NautilusFloatingBar NautilusFloatingBar;
-typedef struct _NautilusFloatingBarClass NautilusFloatingBarClass;
-typedef struct _NautilusFloatingBarDetails NautilusFloatingBarDetails;
-
-struct _NautilusFloatingBar {
- GtkBox parent;
- NautilusFloatingBarDetails *priv;
-};
-
-struct _NautilusFloatingBarClass {
- GtkBoxClass parent_class;
-};
-
-/* GObject */
-GType nautilus_floating_bar_get_type (void);
+G_DECLARE_FINAL_TYPE (NautilusFloatingBar, nautilus_floating_bar,
+ NAUTILUS, FLOATING_BAR, GtkBox)
GtkWidget * nautilus_floating_bar_new (const gchar *primary_label,
const gchar *details_label,
diff --git a/src/preferences/gb-preferences-page-git.c b/src/preferences/gb-preferences-page-git.c
index c5da482..0443eb9 100644
--- a/src/preferences/gb-preferences-page-git.c
+++ b/src/preferences/gb-preferences-page-git.c
@@ -20,20 +20,21 @@
#include <libgit2-glib/ggit.h>
#include "gb-preferences-page-git.h"
+#include "gb-widget.h"
-struct _GbPreferencesPageGitPrivate
+struct _GbPreferencesPageGit
{
- GgitConfig *config;
+ GbPreferencesPage parent_instance;
- GtkEntry *git_author_name_entry;
- GtkEntry *git_author_email_entry;
-
- GtkWidget *name_label;
- GtkWidget *email_label;
+ GgitConfig *config;
+ GtkEntry *git_author_name_entry;
+ GtkEntry *git_author_email_entry;
+ GtkWidget *name_label;
+ GtkWidget *email_label;
};
-G_DEFINE_TYPE_WITH_PRIVATE (GbPreferencesPageGit, gb_preferences_page_git,
- GB_TYPE_PREFERENCES_PAGE)
+G_DEFINE_TYPE (GbPreferencesPageGit, gb_preferences_page_git,
+ GB_TYPE_PREFERENCES_PAGE)
static void
on_author_name_changed (GtkEntry *entry,
@@ -42,7 +43,7 @@ on_author_name_changed (GtkEntry *entry,
g_return_if_fail (GB_IS_PREFERENCES_PAGE_GIT (git));
g_return_if_fail (GTK_IS_ENTRY (entry));
- ggit_config_set_string (git->priv->config, "user.name",
+ ggit_config_set_string (git->config, "user.name",
gtk_entry_get_text (entry), NULL);
}
@@ -53,35 +54,32 @@ on_author_email_changed (GtkEntry *entry,
g_return_if_fail (GB_IS_PREFERENCES_PAGE_GIT (git));
g_return_if_fail (GTK_IS_ENTRY (entry));
- ggit_config_set_string (git->priv->config, "user.email",
+ ggit_config_set_string (git->config, "user.email",
gtk_entry_get_text (entry), NULL);
}
static void
gb_preferences_page_git_constructed (GObject *object)
{
- GbPreferencesPageGitPrivate *priv;
GbPreferencesPageGit *git = (GbPreferencesPageGit *)object;
const gchar *value;
g_return_if_fail (GB_IS_PREFERENCES_PAGE_GIT (git));
- priv = git->priv;
-
/* set current values from git */
- value = ggit_config_get_string (priv->config, "user.name", NULL);
+ value = ggit_config_get_string (git->config, "user.name", NULL);
if (value)
- gtk_entry_set_text (priv->git_author_name_entry, value);
- value = ggit_config_get_string (priv->config, "user.email", NULL);
+ gtk_entry_set_text (git->git_author_name_entry, value);
+ value = ggit_config_get_string (git->config, "user.email", NULL);
if (value)
- gtk_entry_set_text (priv->git_author_email_entry, value);
+ gtk_entry_set_text (git->git_author_email_entry, value);
/* connect to changed signals to update values */
- g_signal_connect (priv->git_author_name_entry,
+ g_signal_connect (git->git_author_name_entry,
"changed",
G_CALLBACK (on_author_name_changed),
git);
- g_signal_connect (priv->git_author_email_entry,
+ g_signal_connect (git->git_author_email_entry,
"changed",
G_CALLBACK (on_author_email_changed),
git);
@@ -92,9 +90,9 @@ gb_preferences_page_git_constructed (GObject *object)
static void
gb_preferences_page_git_finalize (GObject *object)
{
- GbPreferencesPageGitPrivate *priv = GB_PREFERENCES_PAGE_GIT (object)->priv;
+ GbPreferencesPageGit *self = GB_PREFERENCES_PAGE_GIT (object);
- g_clear_object (&priv->config);
+ g_clear_object (&self->config);
G_OBJECT_CLASS (gb_preferences_page_git_parent_class)->finalize (object);
}
@@ -111,30 +109,28 @@ gb_preferences_page_git_class_init (GbPreferencesPageGitClass *klass)
gtk_widget_class_set_template_from_resource (widget_class,
"/org/gnome/builder/ui/gb-preferences-page-git.ui");
- gtk_widget_class_bind_template_child_private (widget_class, GbPreferencesPageGit, git_author_name_entry);
- gtk_widget_class_bind_template_child_private (widget_class, GbPreferencesPageGit, git_author_email_entry);
+ GB_WIDGET_CLASS_BIND (widget_class, GbPreferencesPageGit, git_author_name_entry);
+ GB_WIDGET_CLASS_BIND (widget_class, GbPreferencesPageGit, git_author_email_entry);
- gtk_widget_class_bind_template_child_private (widget_class, GbPreferencesPageGit, name_label);
- gtk_widget_class_bind_template_child_private (widget_class, GbPreferencesPageGit, email_label);
+ GB_WIDGET_CLASS_BIND (widget_class, GbPreferencesPageGit, name_label);
+ GB_WIDGET_CLASS_BIND (widget_class, GbPreferencesPageGit, email_label);
}
static void
gb_preferences_page_git_init (GbPreferencesPageGit *self)
{
- self->priv = gb_preferences_page_git_get_instance_private (self);
-
gtk_widget_init_template (GTK_WIDGET (self));
- self->priv->config = ggit_config_new_default (NULL);
+ self->config = ggit_config_new_default (NULL);
gb_preferences_page_set_keywords_for_widget (GB_PREFERENCES_PAGE (self),
_("git author name surname"),
- self->priv->name_label,
- self->priv->git_author_name_entry,
+ self->name_label,
+ self->git_author_name_entry,
NULL);
gb_preferences_page_set_keywords_for_widget (GB_PREFERENCES_PAGE (self),
_("git author email mail address"),
- self->priv->email_label,
- self->priv->git_author_email_entry,
+ self->email_label,
+ self->git_author_email_entry,
NULL);
}
diff --git a/src/preferences/gb-preferences-page-git.h b/src/preferences/gb-preferences-page-git.h
index 592007c..7e93a26 100644
--- a/src/preferences/gb-preferences-page-git.h
+++ b/src/preferences/gb-preferences-page-git.h
@@ -23,32 +23,10 @@
G_BEGIN_DECLS
-#define GB_TYPE_PREFERENCES_PAGE_GIT (gb_preferences_page_git_get_type())
-#define GB_PREFERENCES_PAGE_GIT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj),
GB_TYPE_PREFERENCES_PAGE_GIT, GbPreferencesPageGit))
-#define GB_PREFERENCES_PAGE_GIT_CONST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj),
GB_TYPE_PREFERENCES_PAGE_GIT, GbPreferencesPageGit const))
-#define GB_PREFERENCES_PAGE_GIT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass),
GB_TYPE_PREFERENCES_PAGE_GIT, GbPreferencesPageGitClass))
-#define GB_IS_PREFERENCES_PAGE_GIT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj),
GB_TYPE_PREFERENCES_PAGE_GIT))
-#define GB_IS_PREFERENCES_PAGE_GIT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass),
GB_TYPE_PREFERENCES_PAGE_GIT))
-#define GB_PREFERENCES_PAGE_GIT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj),
GB_TYPE_PREFERENCES_PAGE_GIT, GbPreferencesPageGitClass))
+#define GB_TYPE_PREFERENCES_PAGE_GIT (gb_preferences_page_git_get_type())
-typedef struct _GbPreferencesPageGit GbPreferencesPageGit;
-typedef struct _GbPreferencesPageGitClass GbPreferencesPageGitClass;
-typedef struct _GbPreferencesPageGitPrivate GbPreferencesPageGitPrivate;
-
-struct _GbPreferencesPageGit
-{
- GbPreferencesPage parent;
-
- /*< private >*/
- GbPreferencesPageGitPrivate *priv;
-};
-
-struct _GbPreferencesPageGitClass
-{
- GbPreferencesPageClass parent;
-};
-
-GType gb_preferences_page_git_get_type (void);
+G_DECLARE_FINAL_TYPE (GbPreferencesPageGit, gb_preferences_page_git,
+ GB, PREFERENCES_PAGE_GIT, GbPreferencesPage)
G_END_DECLS
diff --git a/src/preferences/gb-preferences-page-language.c b/src/preferences/gb-preferences-page-language.c
index a281306..ebce11f 100644
--- a/src/preferences/gb-preferences-page-language.c
+++ b/src/preferences/gb-preferences-page-language.c
@@ -24,21 +24,23 @@
#include "gb-editor-settings-widget.h"
#include "gb-preferences-page-language.h"
#include "gb-string.h"
+#include "gb-widget.h"
-struct _GbPreferencesPageLanguagePrivate
+struct _GbPreferencesPageLanguage
{
- GtkStack *stack;
- GtkListBox *language_list_box;
- GtkSearchEntry *search_entry;
- GtkBox *language_selection;
- GtkWidget *language_settings;
- GtkBox *language_settings_box;
- GtkButton *back_button;
+ GbPreferencesPage parent_instance;
+
+ GtkStack *stack;
+ GtkListBox *language_list_box;
+ GtkSearchEntry *search_entry;
+ GtkBox *language_selection;
+ GtkWidget *language_settings;
+ GtkBox *language_settings_box;
+ GtkButton *back_button;
};
-G_DEFINE_TYPE_WITH_PRIVATE (GbPreferencesPageLanguage,
- gb_preferences_page_language,
- GB_TYPE_PREFERENCES_PAGE)
+G_DEFINE_TYPE (GbPreferencesPageLanguage, gb_preferences_page_language,
+ GB_TYPE_PREFERENCES_PAGE)
GtkWidget *
make_language_row (GtkSourceLanguage *language)
@@ -157,8 +159,8 @@ row_selected (GtkListBox *list_box,
"language", lang_id,
"visible", TRUE,
NULL);
- gtk_container_add (GTK_CONTAINER (page->priv->language_settings_box), GTK_WIDGET (widget));
- gtk_stack_set_visible_child (page->priv->stack,GTK_WIDGET (page->priv->language_settings));
+ gtk_container_add (GTK_CONTAINER (page->language_settings_box), GTK_WIDGET (widget));
+ gtk_stack_set_visible_child (page->stack,GTK_WIDGET (page->language_settings));
gb_preferences_page_set_title (GB_PREFERENCES_PAGE (page), gtk_source_language_get_name (lang));
}
@@ -173,23 +175,23 @@ stack_notify_visible_child (GbPreferencesPageLanguage *page,
g_assert (GTK_IS_STACK (stack));
visible_child = gtk_stack_get_visible_child (stack);
- if (visible_child == GTK_WIDGET (page->priv->language_selection))
+ if (visible_child == GTK_WIDGET (page->language_selection))
{
GList *children;
GList *iter;
- children = gtk_container_get_children (GTK_CONTAINER (page->priv->language_settings_box));
+ children = gtk_container_get_children (GTK_CONTAINER (page->language_settings_box));
for(iter = children; iter != NULL; iter = g_list_next (iter))
gtk_widget_destroy (GTK_WIDGET (iter->data));
g_list_free (children);
- gtk_list_box_unselect_all (page->priv->language_list_box);
- gtk_widget_hide (GTK_WIDGET (page->priv->back_button));
+ gtk_list_box_unselect_all (page->language_list_box);
+ gtk_widget_hide (GTK_WIDGET (page->back_button));
gb_preferences_page_reset_title (GB_PREFERENCES_PAGE (page));
}
- else if (visible_child == GTK_WIDGET (page->priv->language_settings))
+ else if (visible_child == GTK_WIDGET (page->language_settings))
{
- gtk_widget_show (GTK_WIDGET (page->priv->back_button));
+ gtk_widget_show (GTK_WIDGET (page->back_button));
}
}
@@ -200,7 +202,7 @@ back_button_clicked_cb (GbPreferencesPageLanguage *page,
g_assert (GB_IS_PREFERENCES_PAGE_LANGUAGE (page));
g_assert (GTK_IS_BUTTON (back_button));
- gtk_stack_set_visible_child (page->priv->stack, GTK_WIDGET (page->priv->language_selection));
+ gtk_stack_set_visible_child (page->stack, GTK_WIDGET (page->language_selection));
}
static void
@@ -211,29 +213,29 @@ gb_preferences_page_language_constructed (GObject *object)
const gchar * const *lang_ids;
guint i;
- gtk_list_box_set_header_func (page->priv->language_list_box,
+ gtk_list_box_set_header_func (page->language_list_box,
item_header_func, NULL, NULL);
- gtk_list_box_set_filter_func (page->priv->language_list_box,
- item_filter_func, page->priv->search_entry,
+ gtk_list_box_set_filter_func (page->language_list_box,
+ item_filter_func, page->search_entry,
NULL);
- g_signal_connect (page->priv->search_entry,
+ g_signal_connect (page->search_entry,
"changed",
G_CALLBACK (search_entry_changed),
- page->priv->language_list_box);
+ page->language_list_box);
- g_signal_connect (page->priv->language_list_box,
+ g_signal_connect (page->language_list_box,
"row-selected",
G_CALLBACK (row_selected),
page);
- g_signal_connect_object (page->priv->back_button,
+ g_signal_connect_object (page->back_button,
"clicked",
G_CALLBACK (back_button_clicked_cb),
page,
G_CONNECT_SWAPPED);
- g_signal_connect_object (page->priv->stack,
+ g_signal_connect_object (page->stack,
"notify::visible-child",
G_CALLBACK (stack_notify_visible_child),
page,
@@ -264,7 +266,7 @@ gb_preferences_page_language_constructed (GObject *object)
keywords, widget, NULL);
g_free (keywords);
- gtk_container_add (GTK_CONTAINER (page->priv->language_list_box), widget);
+ gtk_container_add (GTK_CONTAINER (page->language_list_box), widget);
}
G_OBJECT_CLASS (gb_preferences_page_language_parent_class)->constructed (object);
@@ -287,27 +289,13 @@ gb_preferences_page_language_class_init (GbPreferencesPageLanguageClass *klass)
gtk_widget_class_set_template_from_resource (widget_class,
"/org/gnome/builder/ui/gb-preferences-page-language.ui");
- gtk_widget_class_bind_template_child_private (widget_class,
- GbPreferencesPageLanguage,
- stack);
- gtk_widget_class_bind_template_child_private (widget_class,
- GbPreferencesPageLanguage,
- language_list_box);
- gtk_widget_class_bind_template_child_private (widget_class,
- GbPreferencesPageLanguage,
- search_entry);
- gtk_widget_class_bind_template_child_private (widget_class,
- GbPreferencesPageLanguage,
- language_selection);
- gtk_widget_class_bind_template_child_private (widget_class,
- GbPreferencesPageLanguage,
- language_settings);
- gtk_widget_class_bind_template_child_private (widget_class,
- GbPreferencesPageLanguage,
- language_settings_box);
- gtk_widget_class_bind_template_child_private (widget_class,
- GbPreferencesPageLanguage,
- back_button);
+ GB_WIDGET_CLASS_BIND (widget_class, GbPreferencesPageLanguage, stack);
+ GB_WIDGET_CLASS_BIND (widget_class, GbPreferencesPageLanguage, language_list_box);
+ GB_WIDGET_CLASS_BIND (widget_class, GbPreferencesPageLanguage, search_entry);
+ GB_WIDGET_CLASS_BIND (widget_class, GbPreferencesPageLanguage, language_selection);
+ GB_WIDGET_CLASS_BIND (widget_class, GbPreferencesPageLanguage, language_settings);
+ GB_WIDGET_CLASS_BIND (widget_class, GbPreferencesPageLanguage, language_settings_box);
+ GB_WIDGET_CLASS_BIND (widget_class, GbPreferencesPageLanguage, back_button);
g_type_ensure (GB_TYPE_EDITOR_SETTINGS_WIDGET);
}
@@ -315,7 +303,5 @@ gb_preferences_page_language_class_init (GbPreferencesPageLanguageClass *klass)
static void
gb_preferences_page_language_init (GbPreferencesPageLanguage *self)
{
- self->priv = gb_preferences_page_language_get_instance_private (self);
-
gtk_widget_init_template (GTK_WIDGET (self));
}
diff --git a/src/preferences/gb-preferences-page-language.h b/src/preferences/gb-preferences-page-language.h
index b1eb256..7958986 100644
--- a/src/preferences/gb-preferences-page-language.h
+++ b/src/preferences/gb-preferences-page-language.h
@@ -23,32 +23,10 @@
G_BEGIN_DECLS
-#define GB_TYPE_PREFERENCES_PAGE_LANGUAGE (gb_preferences_page_language_get_type())
-#define GB_PREFERENCES_PAGE_LANGUAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj),
GB_TYPE_PREFERENCES_PAGE_LANGUAGE, GbPreferencesPageLanguage))
-#define GB_PREFERENCES_PAGE_LANGUAGE_CONST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj),
GB_TYPE_PREFERENCES_PAGE_LANGUAGE, GbPreferencesPageLanguage const))
-#define GB_PREFERENCES_PAGE_LANGUAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass),
GB_TYPE_PREFERENCES_PAGE_LANGUAGE, GbPreferencesPageLanguageClass))
-#define GB_IS_PREFERENCES_PAGE_LANGUAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj),
GB_TYPE_PREFERENCES_PAGE_LANGUAGE))
-#define GB_IS_PREFERENCES_PAGE_LANGUAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass),
GB_TYPE_PREFERENCES_PAGE_LANGUAGE))
-#define GB_PREFERENCES_PAGE_LANGUAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj),
GB_TYPE_PREFERENCES_PAGE_LANGUAGE, GbPreferencesPageLanguageClass))
+#define GB_TYPE_PREFERENCES_PAGE_LANGUAGE (gb_preferences_page_language_get_type())
-typedef struct _GbPreferencesPageLanguage GbPreferencesPageLanguage;
-typedef struct _GbPreferencesPageLanguageClass GbPreferencesPageLanguageClass;
-typedef struct _GbPreferencesPageLanguagePrivate GbPreferencesPageLanguagePrivate;
-
-struct _GbPreferencesPageLanguage
-{
- GbPreferencesPage parent;
-
- /*< private >*/
- GbPreferencesPageLanguagePrivate *priv;
-};
-
-struct _GbPreferencesPageLanguageClass
-{
- GbPreferencesPageClass parent;
-};
-
-GType gb_preferences_page_language_get_type (void);
+G_DECLARE_FINAL_TYPE (GbPreferencesPageLanguage, gb_preferences_page_language,
+ GB, PREFERENCES_PAGE_LANGUAGE, GbPreferencesPage)
G_END_DECLS
diff --git a/src/preferences/gb-preferences-page.c b/src/preferences/gb-preferences-page.c
index 8c7b41b..47293e8 100644
--- a/src/preferences/gb-preferences-page.c
+++ b/src/preferences/gb-preferences-page.c
@@ -25,13 +25,13 @@
#include "gb-preferences-switch.h"
#include "gb-string.h"
-struct _GbPreferencesPagePrivate
+typedef struct
{
GHashTable *widgets;
GtkBox *controls;
gchar *title;
gchar *default_title;
-};
+} GbPreferencesPagePrivate;
static void buildable_iface_init (GtkBuildableIface *iface);
@@ -69,12 +69,13 @@ gb_preferences_page_set_keywords (GbPreferencesPage *page,
gsize size;
guint count = 0;
guint i;
+ GbPreferencesPagePrivate *priv = gb_preferences_page_get_instance_private (page);
g_return_val_if_fail (GB_IS_PREFERENCES_PAGE (page), 0);
if (!keywords || (g_strv_length ((gchar **)keywords) == 0))
{
- g_hash_table_foreach (page->priv->widgets, (GHFunc)gtk_widget_show, NULL);
+ g_hash_table_foreach (priv->widgets, (GHFunc)gtk_widget_show, NULL);
return G_MAXUINT;
}
@@ -84,7 +85,7 @@ gb_preferences_page_set_keywords (GbPreferencesPage *page,
for (i = 0; keywords [i]; i++)
needle [i] = g_utf8_strdown (keywords [i], -1);
- g_hash_table_iter_init (&iter, page->priv->widgets);
+ g_hash_table_iter_init (&iter, priv->widgets);
while (g_hash_table_iter_next (&iter, &key, &value))
{
@@ -123,6 +124,7 @@ gb_preferences_page_set_keywords_for_widget (GbPreferencesPage *page,
va_list args;
GQuark q;
gchar *downcase;
+ GbPreferencesPagePrivate *priv = gb_preferences_page_get_instance_private (page);
g_return_if_fail (GB_IS_PREFERENCES_PAGE (page));
g_return_if_fail (GTK_IS_WIDGET (widget));
@@ -133,7 +135,7 @@ gb_preferences_page_set_keywords_for_widget (GbPreferencesPage *page,
va_start (args, first_widget);
do
- g_hash_table_insert (page->priv->widgets, widget, GINT_TO_POINTER (q));
+ g_hash_table_insert (priv->widgets, widget, GINT_TO_POINTER (q));
while ((widget = va_arg (args, GtkWidget *)));
va_end (args);
}
@@ -149,22 +151,25 @@ gb_preferences_page_set_keywords_for_widget (GbPreferencesPage *page,
GtkWidget *
gb_preferences_page_get_controls (GbPreferencesPage *page)
{
+ GbPreferencesPagePrivate *priv = gb_preferences_page_get_instance_private (page);
g_return_val_if_fail (GB_IS_PREFERENCES_PAGE (page), NULL);
- return GTK_WIDGET (page->priv->controls);
+ return GTK_WIDGET (priv->controls);
}
void
gb_preferences_page_set_title (GbPreferencesPage *page,
const gchar *title)
{
+ GbPreferencesPagePrivate *priv = gb_preferences_page_get_instance_private (page);
+
g_return_if_fail (GB_IS_PREFERENCES_PAGE (page));
- if (!gb_str_equal0 (title, page->priv->title))
+ if (!gb_str_equal0 (title, priv->title))
{
- g_free (page->priv->title);
- page->priv->title = g_strdup (title);
+ g_free (priv->title);
+ priv->title = g_strdup (title);
g_object_notify_by_pspec (G_OBJECT (page),
gParamSpecs [PROP_TITLE]);
}
@@ -173,23 +178,28 @@ gb_preferences_page_set_title (GbPreferencesPage *page,
void
gb_preferences_page_reset_title (GbPreferencesPage *page)
{
+ GbPreferencesPagePrivate *priv = gb_preferences_page_get_instance_private (page);
+
g_return_if_fail (GB_IS_PREFERENCES_PAGE (page));
- gb_preferences_page_set_title (page, page->priv->default_title);
+ gb_preferences_page_set_title (page, priv->default_title);
}
static const gchar *
gb_preferences_page_get_title (GbPreferencesPage *page)
{
+ GbPreferencesPagePrivate *priv = gb_preferences_page_get_instance_private (page);
+
g_return_val_if_fail (GB_IS_PREFERENCES_PAGE (page), NULL);
- return page->priv->title;
+ return priv->title;
}
static void
gb_preferences_page_constructed (GObject *object)
{
- GbPreferencesPagePrivate *priv = GB_PREFERENCES_PAGE (object)->priv;
+ GbPreferencesPage *self = GB_PREFERENCES_PAGE (object);
+ GbPreferencesPagePrivate *priv = gb_preferences_page_get_instance_private (self);
g_object_get (object, "title", &priv->default_title, NULL);
@@ -199,7 +209,8 @@ gb_preferences_page_constructed (GObject *object)
static void
gb_preferences_page_finalize (GObject *object)
{
- GbPreferencesPagePrivate *priv = GB_PREFERENCES_PAGE (object)->priv;
+ GbPreferencesPage *self = GB_PREFERENCES_PAGE (object);
+ GbPreferencesPagePrivate *priv = gb_preferences_page_get_instance_private (self);
g_clear_pointer (&priv->title, g_free);
g_clear_pointer (&priv->default_title, g_free);
@@ -273,17 +284,17 @@ gb_preferences_page_class_init (GbPreferencesPageClass *klass)
static void
gb_preferences_page_init (GbPreferencesPage *self)
{
+ GbPreferencesPagePrivate *priv = gb_preferences_page_get_instance_private (self);
GtkBox *controls;
- self->priv = gb_preferences_page_get_instance_private (self);
- self->priv->widgets = g_hash_table_new_full (g_direct_hash, g_direct_equal,
+ priv->widgets = g_hash_table_new_full (g_direct_hash, g_direct_equal,
NULL, NULL);
controls = g_object_new (GTK_TYPE_BOX,
"orientation", GTK_ORIENTATION_HORIZONTAL,
"visible", TRUE,
NULL);
- self->priv->controls = g_object_ref_sink (controls);
+ priv->controls = g_object_ref_sink (controls);
}
static GObject *
diff --git a/src/preferences/gb-preferences-page.h b/src/preferences/gb-preferences-page.h
index cfcb41a..4994615 100644
--- a/src/preferences/gb-preferences-page.h
+++ b/src/preferences/gb-preferences-page.h
@@ -23,34 +23,15 @@
G_BEGIN_DECLS
-#define GB_TYPE_PREFERENCES_PAGE (gb_preferences_page_get_type())
-#define GB_PREFERENCES_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_PREFERENCES_PAGE,
GbPreferencesPage))
-#define GB_PREFERENCES_PAGE_CONST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_PREFERENCES_PAGE,
GbPreferencesPage const))
-#define GB_PREFERENCES_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GB_TYPE_PREFERENCES_PAGE,
GbPreferencesPageClass))
-#define GB_IS_PREFERENCES_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GB_TYPE_PREFERENCES_PAGE))
-#define GB_IS_PREFERENCES_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GB_TYPE_PREFERENCES_PAGE))
-#define GB_PREFERENCES_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GB_TYPE_PREFERENCES_PAGE,
GbPreferencesPageClass))
+#define GB_TYPE_PREFERENCES_PAGE (gb_preferences_page_get_type())
-typedef struct _GbPreferencesPage GbPreferencesPage;
-typedef struct _GbPreferencesPageClass GbPreferencesPageClass;
-typedef struct _GbPreferencesPagePrivate GbPreferencesPagePrivate;
-
-G_DEFINE_AUTOPTR_CLEANUP_FUNC (GbPreferencesPage, g_object_unref)
-
-struct _GbPreferencesPage
-{
- GtkBin parent;
-
- /*< private >*/
- GbPreferencesPagePrivate *priv;
-};
+G_DECLARE_DERIVABLE_TYPE (GbPreferencesPage, gb_preferences_page, GB, PREFERENCES_PAGE, GtkBin)
struct _GbPreferencesPageClass
{
GtkBinClass parent;
};
-GType gb_preferences_page_get_type (void);
guint gb_preferences_page_set_keywords (GbPreferencesPage *page,
const gchar * const *keywords);
void gb_preferences_page_set_keywords_for_widget (GbPreferencesPage *page,
diff --git a/src/tree/gb-tree-builder.c b/src/tree/gb-tree-builder.c
index 4f38ead..6fbd377 100644
--- a/src/tree/gb-tree-builder.c
+++ b/src/tree/gb-tree-builder.c
@@ -23,12 +23,12 @@
#include "gb-tree.h"
#include "gb-tree-builder.h"
-G_DEFINE_TYPE(GbTreeBuilder, gb_tree_builder, G_TYPE_INITIALLY_UNOWNED)
-
-struct _GbTreeBuilderPrivate
+typedef struct
{
GbTree *tree;
-};
+} GbTreeBuilderPrivate;
+
+G_DEFINE_TYPE_WITH_PRIVATE(GbTreeBuilder, gb_tree_builder, G_TYPE_INITIALLY_UNOWNED)
enum
{
@@ -162,14 +162,12 @@ static void
gb_tree_builder_set_tree (GbTreeBuilder *builder,
GbTree *tree)
{
- GbTreeBuilderPrivate *priv;
+ GbTreeBuilderPrivate *priv = gb_tree_builder_get_instance_private (builder);
g_return_if_fail(GB_IS_TREE_BUILDER(builder));
- g_return_if_fail(builder->priv->tree == NULL);
+ g_return_if_fail(priv->tree == NULL);
g_return_if_fail(GB_IS_TREE(tree));
- priv = builder->priv;
-
if (tree) {
priv->tree = tree;
g_object_add_weak_pointer(G_OBJECT(priv->tree),
@@ -188,8 +186,11 @@ gb_tree_builder_set_tree (GbTreeBuilder *builder,
GtkWidget *
gb_tree_builder_get_tree (GbTreeBuilder *builder)
{
- g_return_val_if_fail(GB_IS_TREE_BUILDER(builder), NULL);
- return GTK_WIDGET(builder->priv->tree);
+ GbTreeBuilderPrivate *priv = gb_tree_builder_get_instance_private (builder);
+
+ g_return_val_if_fail(GB_IS_TREE_BUILDER(builder), NULL);
+
+ return GTK_WIDGET(priv->tree);
}
/**
@@ -201,7 +202,8 @@ gb_tree_builder_get_tree (GbTreeBuilder *builder)
static void
gb_tree_builder_finalize (GObject *object)
{
- GbTreeBuilderPrivate *priv = GB_TREE_BUILDER(object)->priv;
+ GbTreeBuilder *builder = GB_TREE_BUILDER (object);
+ GbTreeBuilderPrivate *priv = gb_tree_builder_get_instance_private (builder);
if (priv->tree) {
g_object_remove_weak_pointer(G_OBJECT(priv->tree),
@@ -227,11 +229,12 @@ gb_tree_builder_get_property (GObject *object,
GValue *value,
GParamSpec *pspec)
{
- GbTreeBuilder *builder = GB_TREE_BUILDER(object);
+ GbTreeBuilder *builder = GB_TREE_BUILDER (object);
+ GbTreeBuilderPrivate *priv = gb_tree_builder_get_instance_private (builder);
switch (prop_id) {
case PROP_TREE:
- g_value_set_object(value, builder->priv->tree);
+ g_value_set_object(value, priv->tree);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID(object, prop_id, pspec);
@@ -282,7 +285,6 @@ gb_tree_builder_class_init (GbTreeBuilderClass *klass)
object_class->finalize = gb_tree_builder_finalize;
object_class->get_property = gb_tree_builder_get_property;
object_class->set_property = gb_tree_builder_set_property;
- g_type_class_add_private(object_class, sizeof(GbTreeBuilderPrivate));
gParamSpecs[PROP_TREE] =
g_param_spec_object("tree",
@@ -306,8 +308,4 @@ gb_tree_builder_class_init (GbTreeBuilderClass *klass)
static void
gb_tree_builder_init (GbTreeBuilder *builder)
{
- builder->priv =
- G_TYPE_INSTANCE_GET_PRIVATE(builder,
- GB_TYPE_TREE_BUILDER,
- GbTreeBuilderPrivate);
}
diff --git a/src/tree/gb-tree-builder.h b/src/tree/gb-tree-builder.h
index 9e9c610..ee94972 100644
--- a/src/tree/gb-tree-builder.h
+++ b/src/tree/gb-tree-builder.h
@@ -26,26 +26,8 @@
G_BEGIN_DECLS
#define GB_TYPE_TREE_BUILDER (gb_tree_builder_get_type())
-#define GB_TREE_BUILDER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_TREE_BUILDER,
GbTreeBuilder))
-#define GB_TREE_BUILDER_CONST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_TREE_BUILDER,
GbTreeBuilder const))
-#define GB_TREE_BUILDER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GB_TYPE_TREE_BUILDER,
GbTreeBuilderClass))
-#define GB_IS_TREE_BUILDER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GB_TYPE_TREE_BUILDER))
-#define GB_IS_TREE_BUILDER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GB_TYPE_TREE_BUILDER))
-#define GB_TREE_BUILDER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GB_TYPE_TREE_BUILDER,
GbTreeBuilderClass))
-typedef struct _GbTreeBuilder GbTreeBuilder;
-typedef struct _GbTreeBuilderClass GbTreeBuilderClass;
-typedef struct _GbTreeBuilderPrivate GbTreeBuilderPrivate;
-
-G_DEFINE_AUTOPTR_CLEANUP_FUNC (GbTreeBuilder, g_object_unref)
-
-struct _GbTreeBuilder
-{
- GInitiallyUnowned parent;
-
- /*< private >*/
- GbTreeBuilderPrivate *priv;
-};
+G_DECLARE_DERIVABLE_TYPE (GbTreeBuilder, gb_tree_builder, GB, TREE_BUILDER, GInitiallyUnowned)
struct _GbTreeBuilderClass
{
@@ -69,7 +51,6 @@ struct _GbTreeBuilderClass
};
GtkWidget *gb_tree_builder_get_tree (GbTreeBuilder *builder);
-GType gb_tree_builder_get_type (void);
void gb_tree_builder_build_node (GbTreeBuilder *builder,
GbTreeNode *node);
gboolean gb_tree_builder_node_activated (GbTreeBuilder *builder,
diff --git a/src/tree/gb-tree-node.c b/src/tree/gb-tree-node.c
index 0b6d174..2684608 100644
--- a/src/tree/gb-tree-node.c
+++ b/src/tree/gb-tree-node.c
@@ -23,14 +23,16 @@
#include "gb-tree.h"
#include "gb-tree-node.h"
-struct _GbTreeNodePrivate
+struct _GbTreeNode
{
- GObject *item;
- GbTreeNode *parent;
- gchar *text;
- GbTree *tree;
- GQuark icon_name;
- guint use_markup : 1;
+ GInitiallyUnowned parent_instance;
+
+ GObject *item;
+ GbTreeNode *parent;
+ gchar *text;
+ GbTree *tree;
+ GQuark icon_name;
+ guint use_markup : 1;
};
typedef struct
@@ -39,7 +41,7 @@ typedef struct
GtkPopover *popover;
} PopupRequest;
-G_DEFINE_TYPE_WITH_PRIVATE (GbTreeNode, gb_tree_node, G_TYPE_INITIALLY_UNOWNED)
+G_DEFINE_TYPE (GbTreeNode, gb_tree_node, G_TYPE_INITIALLY_UNOWNED)
enum {
PROP_0,
@@ -84,9 +86,9 @@ gb_tree_node_get_tree (GbTreeNode *node)
{
g_return_val_if_fail (GB_IS_TREE_NODE (node), NULL);
- for (; node->priv->parent; node = node->priv->parent) { }
+ for (; node->parent; node = node->parent) { }
- return node->priv->tree;
+ return node->tree;
}
/**
@@ -102,10 +104,10 @@ _gb_tree_node_set_tree (GbTreeNode *node,
{
g_return_if_fail (GB_IS_TREE_NODE (node));
g_return_if_fail (GB_IS_TREE (tree));
- g_return_if_fail ((node->priv->tree == NULL) ||
- (node->priv->tree == tree));
+ g_return_if_fail ((node->tree == NULL) ||
+ (node->tree == tree));
- node->priv->tree = tree;
+ node->tree = tree;
}
/**
@@ -199,15 +201,15 @@ gb_tree_node_get_path (GbTreeNode *node)
do
list = g_list_prepend (list, node);
- while ((node = node->priv->parent));
+ while ((node = node->parent));
toplevel = list->data;
g_assert (toplevel);
- g_assert (toplevel->priv->tree);
+ g_assert (toplevel->tree);
list = g_list_remove_link (list, list);
- path = gb_tree_get_path (toplevel->priv->tree, list);
+ path = gb_tree_get_path (toplevel->tree, list);
g_list_free (list);
@@ -227,7 +229,7 @@ gb_tree_node_get_parent (GbTreeNode *node)
{
g_return_val_if_fail (GB_IS_TREE_NODE (node), NULL);
- return node->priv->parent;
+ return node->parent;
}
/**
@@ -240,7 +242,7 @@ gb_tree_node_get_icon_name (GbTreeNode *node)
{
g_return_val_if_fail (GB_IS_TREE_NODE (node), NULL);
- return g_quark_to_string (node->priv->icon_name);
+ return g_quark_to_string (node->icon_name);
}
/**
@@ -257,7 +259,7 @@ gb_tree_node_set_icon_name (GbTreeNode *node,
{
g_return_if_fail (GB_IS_TREE_NODE (node));
- node->priv->icon_name = g_quark_from_string (icon_name);
+ node->icon_name = g_quark_from_string (icon_name);
g_object_notify_by_pspec (G_OBJECT (node), gParamSpecs [PROP_ICON_NAME]);
}
@@ -276,7 +278,7 @@ gb_tree_node_set_item (GbTreeNode *node,
g_return_if_fail (GB_IS_TREE_NODE (node));
g_return_if_fail (!item || G_IS_OBJECT (item));
- if (g_set_object (&node->priv->item, item))
+ if (g_set_object (&node->item, item))
g_object_notify_by_pspec (G_OBJECT (node), gParamSpecs [PROP_ITEM]);
}
@@ -293,14 +295,14 @@ gb_tree_node_set_parent (GbTreeNode *node,
GbTreeNode *parent)
{
g_return_if_fail (GB_IS_TREE_NODE (node));
- g_return_if_fail (node->priv->parent == NULL);
+ g_return_if_fail (node->parent == NULL);
g_return_if_fail (!parent || GB_IS_TREE_NODE (parent));
if (parent)
{
- node->priv->parent = parent;
- g_object_add_weak_pointer (G_OBJECT (node->priv->parent),
- (gpointer *)&node->priv->parent);
+ node->parent = parent;
+ g_object_add_weak_pointer (G_OBJECT (node->parent),
+ (gpointer *)&node->parent);
}
}
@@ -309,7 +311,7 @@ gb_tree_node_get_text (GbTreeNode *node)
{
g_return_val_if_fail (GB_IS_TREE_NODE (node), NULL);
- return node->priv->text;
+ return node->text;
}
/**
@@ -326,10 +328,10 @@ gb_tree_node_set_text (GbTreeNode *node,
{
g_return_if_fail (GB_IS_TREE_NODE (node));
- if (text != node->priv->text)
+ if (text != node->text)
{
- g_free (node->priv->text);
- node->priv->text = g_strdup (text);
+ g_free (node->text);
+ node->text = g_strdup (text);
g_object_notify_by_pspec (G_OBJECT (node), gParamSpecs [PROP_TEXT]);
}
}
@@ -347,7 +349,7 @@ gb_tree_node_set_use_markup (GbTreeNode *node,
{
g_return_if_fail (GB_IS_TREE_NODE (node));
- node->priv->use_markup = !!use_markup;
+ node->use_markup = !!use_markup;
g_object_notify_by_pspec (G_OBJECT (node), gParamSpecs [PROP_USE_MARKUP]);
}
@@ -364,7 +366,7 @@ gb_tree_node_get_item (GbTreeNode *node)
{
g_return_val_if_fail (GB_IS_TREE_NODE (node), NULL);
- return node->priv->item;
+ return node->item;
}
void
@@ -470,16 +472,16 @@ gb_tree_node_get_expanded (GbTreeNode *self)
static void
gb_tree_node_finalize (GObject *object)
{
- GbTreeNodePrivate *priv = GB_TREE_NODE (object)->priv;
+ GbTreeNode *self = GB_TREE_NODE (object);
- g_clear_object (&priv->item);
- g_clear_pointer (&priv->text, g_free);
+ g_clear_object (&self->item);
+ g_clear_pointer (&self->text, g_free);
- if (priv->parent)
+ if (self->parent)
{
- g_object_remove_weak_pointer (G_OBJECT (priv->parent),
- (gpointer *)&priv->parent);
- priv->parent = NULL;
+ g_object_remove_weak_pointer (G_OBJECT (self->parent),
+ (gpointer *)&self->parent);
+ self->parent = NULL;
}
G_OBJECT_CLASS (gb_tree_node_parent_class)->finalize (object);
@@ -505,19 +507,19 @@ gb_tree_node_get_property (GObject *object,
switch (prop_id)
{
case PROP_ICON_NAME:
- g_value_set_string (value, g_quark_to_string (node->priv->icon_name));
+ g_value_set_string (value, g_quark_to_string (node->icon_name));
break;
case PROP_ITEM:
- g_value_set_object (value, node->priv->item);
+ g_value_set_object (value, node->item);
break;
case PROP_PARENT:
- g_value_set_object (value, node->priv->parent);
+ g_value_set_object (value, node->parent);
break;
case PROP_TEXT:
- g_value_set_string (value, node->priv->text);
+ g_value_set_string (value, node->text);
break;
case PROP_TREE:
@@ -525,7 +527,7 @@ gb_tree_node_get_property (GObject *object,
break;
case PROP_USE_MARKUP:
- g_value_set_boolean (value, node->priv->use_markup);
+ g_value_set_boolean (value, node->use_markup);
break;
default:
@@ -676,7 +678,6 @@ gb_tree_node_class_init (GbTreeNodeClass *klass)
static void
gb_tree_node_init (GbTreeNode *node)
{
- node->priv = gb_tree_node_get_instance_private (node);
}
static gboolean
diff --git a/src/tree/gb-tree-node.h b/src/tree/gb-tree-node.h
index be4eeb7..52c56fe 100644
--- a/src/tree/gb-tree-node.h
+++ b/src/tree/gb-tree-node.h
@@ -21,38 +21,12 @@
#include <gtk/gtk.h>
-#if 0
-#include "gb-project-item.h"
-#endif
-
G_BEGIN_DECLS
#define GB_TYPE_TREE_NODE (gb_tree_node_get_type())
-#define GB_TREE_NODE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_TREE_NODE, GbTreeNode))
-#define GB_TREE_NODE_CONST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_TREE_NODE, GbTreeNode
const))
-#define GB_TREE_NODE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GB_TYPE_TREE_NODE, GbTreeNodeClass))
-#define GB_IS_TREE_NODE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GB_TYPE_TREE_NODE))
-#define GB_IS_TREE_NODE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GB_TYPE_TREE_NODE))
-#define GB_TREE_NODE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GB_TYPE_TREE_NODE, GbTreeNodeClass))
-
-typedef struct _GbTreeNode GbTreeNode;
-typedef struct _GbTreeNodeClass GbTreeNodeClass;
-typedef struct _GbTreeNodePrivate GbTreeNodePrivate;
-
-G_DEFINE_AUTOPTR_CLEANUP_FUNC (GbTreeNode, g_object_unref)
-
-struct _GbTreeNode
-{
- GInitiallyUnowned parent;
-
- /*< private >*/
- GbTreeNodePrivate *priv;
-};
-struct _GbTreeNodeClass
-{
- GInitiallyUnownedClass parent_class;
-};
+G_DECLARE_FINAL_TYPE (GbTreeNode, gb_tree_node,
+ GB, TREE_NODE, GInitiallyUnowned)
GbTreeNode *gb_tree_node_new (void);
void gb_tree_node_append (GbTreeNode *node,
@@ -61,7 +35,6 @@ const gchar *gb_tree_node_get_icon_name (GbTreeNode *node);
GObject *gb_tree_node_get_item (GbTreeNode *node);
GbTreeNode *gb_tree_node_get_parent (GbTreeNode *node);
GtkTreePath *gb_tree_node_get_path (GbTreeNode *node);
-GType gb_tree_node_get_type (void);
void gb_tree_node_prepend (GbTreeNode *node,
GbTreeNode *child);
void gb_tree_node_remove (GbTreeNode *node,
diff --git a/src/tree/gb-tree.c b/src/tree/gb-tree.c
index 9ee3b28..bca3f2d 100644
--- a/src/tree/gb-tree.c
+++ b/src/tree/gb-tree.c
@@ -25,7 +25,7 @@
#include "gb-tree-node.h"
#include "gb-widget.h"
-struct _GbTreePrivate
+typedef struct
{
GPtrArray *builders;
GbTreeNode *root;
@@ -36,7 +36,7 @@ struct _GbTreePrivate
GtkTreeStore *store;
guint show_icons : 1;
guint building;
-};
+} GbTreePrivate;
typedef struct
{
@@ -70,23 +70,27 @@ static guint gSignals [LAST_SIGNAL];
gboolean
gb_tree_get_show_icons (GbTree *tree)
{
+ GbTreePrivate *priv = gb_tree_get_instance_private (tree);
+
g_return_val_if_fail (GB_IS_TREE (tree), FALSE);
- return tree->priv->show_icons;
+ return priv->show_icons;
}
void
gb_tree_set_show_icons (GbTree *tree,
gboolean show_icons)
{
+ GbTreePrivate *priv = gb_tree_get_instance_private (tree);
+
g_return_if_fail (GB_IS_TREE (tree));
show_icons = !!show_icons;
- if (show_icons != tree->priv->show_icons)
+ if (show_icons != priv->show_icons)
{
- tree->priv->show_icons = show_icons;
- g_object_set (tree->priv->cell_pixbuf, "visible", show_icons, NULL);
+ priv->show_icons = show_icons;
+ g_object_set (priv->cell_pixbuf, "visible", show_icons, NULL);
/*
* WORKAROUND:
*
@@ -94,8 +98,8 @@ gb_tree_set_show_icons (GbTree *tree,
* tree view. So to force it, we will hide/show our entire pixbuf/text
* column.
*/
- gtk_tree_view_column_set_visible (tree->priv->column, FALSE);
- gtk_tree_view_column_set_visible (tree->priv->column, TRUE);
+ gtk_tree_view_column_set_visible (priv->column, FALSE);
+ gtk_tree_view_column_set_visible (priv->column, TRUE);
g_object_notify_by_pspec (G_OBJECT (tree),
gParamSpecs [PROP_SHOW_ICONS]);
}
@@ -134,16 +138,14 @@ gb_tree_select (GbTree *tree,
GbTreeNode *node)
{
GtkTreeSelection *selection;
- GbTreePrivate *priv;
GtkTreePath *path;
+ GbTreePrivate *priv = gb_tree_get_instance_private (tree);
IDE_ENTRY;
g_return_if_fail (GB_IS_TREE (tree));
g_return_if_fail (GB_IS_TREE_NODE (node));
- priv = tree->priv;
-
if (priv->selection)
{
gb_tree_unselect (tree);
@@ -168,6 +170,7 @@ gb_tree_get_row_height (GbTree *tree)
gint pix_nat_height;
gint text_min_height;
gint text_nat_height;
+ GbTreePrivate *priv = gb_tree_get_instance_private (tree);
/*
* TODO:
@@ -178,11 +181,11 @@ gb_tree_get_row_height (GbTree *tree)
g_assert (GB_IS_TREE (tree));
- gtk_cell_renderer_get_preferred_height (tree->priv->cell_pixbuf,
+ gtk_cell_renderer_get_preferred_height (priv->cell_pixbuf,
GTK_WIDGET (tree),
&pix_min_height,
&pix_nat_height);
- gtk_cell_renderer_get_preferred_height (tree->priv->cell_text,
+ gtk_cell_renderer_get_preferred_height (priv->cell_text,
GTK_WIDGET (tree),
&text_min_height,
&text_nat_height);
@@ -247,17 +250,18 @@ gb_tree_create_menu (GbTree *self,
{
GMenu *menu;
guint i;
+ GbTreePrivate *priv = gb_tree_get_instance_private (self);
g_return_val_if_fail (GB_IS_TREE (self), NULL);
g_return_val_if_fail (GB_IS_TREE_NODE (node), NULL);
menu = g_menu_new ();
- for (i = 0; i < self->priv->builders->len; i++)
+ for (i = 0; i < priv->builders->len; i++)
{
GbTreeBuilder *builder;
- builder = g_ptr_array_index (self->priv->builders, i);
+ builder = g_ptr_array_index (priv->builders, i);
gb_tree_builder_node_popup (builder, node, menu);
}
@@ -352,21 +356,19 @@ static void
gb_tree_selection_changed (GbTree *tree,
GtkTreeSelection *selection)
{
- GbTreePrivate *priv;
GbTreeBuilder *builder;
GtkTreeModel *model;
GtkTreeIter iter;
GbTreeNode *node;
GbTreeNode *unselection;
gint i;
+ GbTreePrivate *priv = gb_tree_get_instance_private (tree);
IDE_ENTRY;
g_return_if_fail (GB_IS_TREE (tree));
g_return_if_fail (GTK_IS_TREE_SELECTION (selection));
- priv = tree->priv;
-
if ((unselection = priv->selection))
{
priv->selection = NULL;
@@ -449,16 +451,15 @@ gb_tree_get_iter_for_node (GbTree *tree,
GtkTreeIter *iter,
GbTreeNode *node)
{
- GbTreePrivate *priv;
GtkTreeModel *model;
GbTreeNode *that = NULL;
gboolean ret;
+ GbTreePrivate *priv = gb_tree_get_instance_private (tree);
g_return_val_if_fail (GB_IS_TREE (tree), FALSE);
g_return_val_if_fail (iter != NULL, FALSE);
g_return_val_if_fail (GB_IS_TREE_NODE (node), FALSE);
- priv = tree->priv;
model = GTK_TREE_MODEL (priv->store);
if (parent)
@@ -497,15 +498,14 @@ GtkTreePath *
gb_tree_get_path (GbTree *tree,
GList *list)
{
- GbTreePrivate *priv;
GtkTreeModel *model;
GtkTreeIter iter;
GtkTreeIter old_iter;
GtkTreeIter *parent = NULL;
+ GbTreePrivate *priv = gb_tree_get_instance_private (tree);
g_return_val_if_fail (GB_IS_TREE (tree), NULL);
- priv = tree->priv;
model = GTK_TREE_MODEL (priv->store);
if (!list || !gtk_tree_model_get_iter_first (model, &iter))
@@ -644,16 +644,14 @@ void
gb_tree_add_builder (GbTree *tree,
GbTreeBuilder *builder)
{
- GbTreePrivate *priv;
GtkTreeIter iter;
+ GbTreePrivate *priv = gb_tree_get_instance_private (tree);
IDE_ENTRY;
g_return_if_fail (GB_IS_TREE (tree));
g_return_if_fail (GB_IS_TREE_BUILDER (builder));
- priv = tree->priv;
-
g_object_set (builder, "tree", tree, NULL);
g_ptr_array_add (priv->builders, g_object_ref_sink (builder));
@@ -681,6 +679,8 @@ void
gb_tree_remove_builder (GbTree *tree,
GbTreeBuilder *builder)
{
+ GbTreePrivate *priv = gb_tree_get_instance_private (tree);
+
IDE_ENTRY;
g_return_if_fail (GB_IS_TREE (tree));
@@ -689,7 +689,7 @@ gb_tree_remove_builder (GbTree *tree,
if (GB_TREE_BUILDER_GET_CLASS (builder)->removed)
GB_TREE_BUILDER_GET_CLASS (builder)->removed (builder, GTK_WIDGET (tree));
- g_ptr_array_remove (tree->priv->builders, builder);
+ g_ptr_array_remove (priv->builders, builder);
IDE_EXIT;
}
@@ -705,9 +705,11 @@ gb_tree_remove_builder (GbTree *tree,
GbTreeNode *
gb_tree_get_root (GbTree *tree)
{
+ GbTreePrivate *priv = gb_tree_get_instance_private (tree);
+
g_return_val_if_fail (GB_IS_TREE (tree), NULL);
- return tree->priv->root;
+ return priv->root;
}
/**
@@ -723,16 +725,14 @@ void
gb_tree_set_root (GbTree *tree,
GbTreeNode *root)
{
- GbTreePrivate *priv;
GbTreeBuilder *builder;
gint i;
+ GbTreePrivate *priv = gb_tree_get_instance_private (tree);
IDE_ENTRY;
g_return_if_fail (GB_IS_TREE (tree));
- priv = tree->priv;
-
gtk_tree_store_clear (priv->store);
g_clear_object (&priv->root);
@@ -753,14 +753,12 @@ gb_tree_set_root (GbTree *tree,
void
gb_tree_rebuild (GbTree *tree)
{
- GbTreePrivate *priv;
GbTreeNode *root;
GtkTreeSelection *selection;
+ GbTreePrivate *priv = gb_tree_get_instance_private (tree);
g_return_if_fail (GB_IS_TREE (tree));
- priv = tree->priv;
-
/* avoid dealign with selection changes while rebuilding */
selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (tree));
gtk_tree_selection_unselect_all (selection);
@@ -841,19 +839,17 @@ gb_tree_add (GbTree *tree,
GbTreeNode *child,
gboolean prepend)
{
- GbTreePrivate *priv;
GbTreeBuilder *builder;
GtkTreePath *path;
GtkTreeIter iter;
GtkTreeIter that;
gint i;
+ GbTreePrivate *priv = gb_tree_get_instance_private (tree);
g_return_if_fail (GB_IS_TREE (tree));
g_return_if_fail (GB_IS_TREE_NODE (node));
g_return_if_fail (GB_IS_TREE_NODE (child));
- priv = tree->priv;
-
g_object_set (child, "parent", node, NULL);
if ((path = gb_tree_node_get_path (node)))
@@ -937,18 +933,17 @@ gb_tree_row_activated (GtkTreeView *tree_view,
GtkTreePath *path)
{
GbTreeBuilder *builder;
- GbTreePrivate *priv;
GtkTreeModel *model;
GtkTreeIter iter;
GbTreeNode *node = NULL;
gboolean handled = FALSE;
GbTree *tree = (GbTree *) tree_view;
gint i;
+ GbTreePrivate *priv = gb_tree_get_instance_private (tree);
g_return_if_fail (GB_IS_TREE (tree));
g_return_if_fail (path != NULL);
- priv = tree->priv;
model = GTK_TREE_MODEL (priv->store);
if (gtk_tree_model_get_iter (model, &iter, path))
@@ -978,16 +973,14 @@ gb_tree_button_press_event (GbTree *tree,
gpointer user_data)
{
GtkAllocation alloc;
- GbTreePrivate *priv;
GtkTreePath *tree_path = NULL;
GtkTreeIter iter;
GbTreeNode *node = NULL;
gint cell_y;
+ GbTreePrivate *priv = gb_tree_get_instance_private (tree);
g_return_val_if_fail (GB_IS_TREE (tree), FALSE);
- priv = tree->priv;
-
if ((button->type == GDK_BUTTON_PRESS) &&
(button->button == GDK_BUTTON_SECONDARY))
{
@@ -1186,7 +1179,8 @@ gb_tree_default_search_equal_func (GtkTreeModel *model,
static void
gb_tree_finalize (GObject *object)
{
- GbTreePrivate *priv = GB_TREE (object)->priv;
+ GbTree *tree = GB_TREE (object);
+ GbTreePrivate *priv = gb_tree_get_instance_private (tree);
g_ptr_array_unref (priv->builders);
g_clear_object (&priv->store);
@@ -1211,19 +1205,20 @@ gb_tree_get_property (GObject *object,
GParamSpec *pspec)
{
GbTree *tree = GB_TREE (object);
+ GbTreePrivate *priv = gb_tree_get_instance_private (tree);
switch (prop_id)
{
case PROP_ROOT:
- g_value_set_object (value, tree->priv->root);
+ g_value_set_object (value, priv->root);
break;
case PROP_SELECTION:
- g_value_set_object (value, tree->priv->selection);
+ g_value_set_object (value, priv->selection);
break;
case PROP_SHOW_ICONS:
- g_value_set_boolean (value, tree->priv->show_icons);
+ g_value_set_boolean (value, priv->show_icons);
break;
default:
@@ -1348,12 +1343,11 @@ gb_tree_init (GbTree *tree)
GtkTreeSelection *selection;
GtkCellRenderer *cell;
GtkCellLayout *column;
+ GbTreePrivate *priv = gb_tree_get_instance_private (tree);
- tree->priv = gb_tree_get_instance_private (tree);
-
- tree->priv->builders = g_ptr_array_new ();
- g_ptr_array_set_free_func (tree->priv->builders, g_object_unref);
- tree->priv->store = gtk_tree_store_new (1, GB_TYPE_TREE_NODE);
+ priv->builders = g_ptr_array_new ();
+ g_ptr_array_set_free_func (priv->builders, g_object_unref);
+ priv->store = gtk_tree_store_new (1, GB_TYPE_TREE_NODE);
selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (tree));
g_signal_connect_swapped (selection, "changed",
@@ -1363,13 +1357,13 @@ gb_tree_init (GbTree *tree)
column = g_object_new (GTK_TYPE_TREE_VIEW_COLUMN,
"title", "Node",
NULL);
- tree->priv->column = GTK_TREE_VIEW_COLUMN (column);
+ priv->column = GTK_TREE_VIEW_COLUMN (column);
cell = g_object_new (GTK_TYPE_CELL_RENDERER_PIXBUF,
"xpad", 3,
- "visible", tree->priv->show_icons,
+ "visible", priv->show_icons,
NULL);
- tree->priv->cell_pixbuf = cell;
+ priv->cell_pixbuf = cell;
g_object_bind_property (tree, "show-icons", cell, "visible", 0);
gtk_cell_layout_pack_start (column, cell, FALSE);
gtk_cell_layout_set_cell_data_func (column, cell, pixbuf_func, NULL, NULL);
@@ -1377,7 +1371,7 @@ gb_tree_init (GbTree *tree)
cell = g_object_new (GTK_TYPE_CELL_RENDERER_TEXT,
"ellipsize", PANGO_ELLIPSIZE_NONE,
NULL);
- tree->priv->cell_text = cell;
+ priv->cell_text = cell;
gtk_cell_layout_pack_start (column, cell, TRUE);
gtk_cell_layout_set_cell_data_func (column, cell, text_func, NULL, NULL);
@@ -1385,7 +1379,7 @@ gb_tree_init (GbTree *tree)
GTK_TREE_VIEW_COLUMN (column));
gtk_tree_view_set_model (GTK_TREE_VIEW (tree),
- GTK_TREE_MODEL (tree->priv->store));
+ GTK_TREE_MODEL (priv->store));
gtk_tree_view_set_search_equal_func (GTK_TREE_VIEW (tree),
gb_tree_default_search_equal_func,
diff --git a/src/tree/gb-tree.h b/src/tree/gb-tree.h
index fdf5622..3c8720a 100644
--- a/src/tree/gb-tree.h
+++ b/src/tree/gb-tree.h
@@ -26,27 +26,9 @@
G_BEGIN_DECLS
-#define GB_TYPE_TREE (gb_tree_get_type())
-#define GB_TREE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_TREE, GbTree))
-#define GB_TREE_CONST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GB_TYPE_TREE, GbTree const))
-#define GB_TREE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GB_TYPE_TREE, GbTreeClass))
-#define GB_IS_TREE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GB_TYPE_TREE))
-#define GB_IS_TREE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GB_TYPE_TREE))
-#define GB_TREE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GB_TYPE_TREE, GbTreeClass))
+#define GB_TYPE_TREE (gb_tree_get_type())
-typedef struct _GbTree GbTree;
-typedef struct _GbTreeClass GbTreeClass;
-typedef struct _GbTreePrivate GbTreePrivate;
-
-G_DEFINE_AUTOPTR_CLEANUP_FUNC (GbTree, g_object_unref)
-
-struct _GbTree
-{
- GtkTreeView parent;
-
- /*< private >*/
- GbTreePrivate *priv;
-};
+G_DECLARE_DERIVABLE_TYPE (GbTree, gb_tree, GB, TREE, GtkTreeView)
struct _GbTreeClass
{
@@ -65,7 +47,6 @@ void gb_tree_add_builder (GbTree *tree,
GtkTreePath *gb_tree_get_path (GbTree *tree,
GList *list);
GbTreeNode *gb_tree_get_selected (GbTree *tree);
-GType gb_tree_get_type (void);
void gb_tree_rebuild (GbTree *tree);
void gb_tree_remove_builder (GbTree *tree,
GbTreeBuilder *builder);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]