[gtk+/composite-templates: 16/17] Removed return value of gtk_builder_expose_object() and added check to notify when the object exist
- From: Juan Pablo Ugarte <jpu src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+/composite-templates: 16/17] Removed return value of gtk_builder_expose_object() and added check to notify when the object exist
- Date: Mon, 10 Dec 2012 14:27:14 +0000 (UTC)
commit e0ce659f342e8e485a245ea40a34ff37bfbd2720
Author: Juan Pablo Ugarte <juanpablougarte gmail com>
Date: Mon Dec 10 11:19:26 2012 -0300
Removed return value of gtk_builder_expose_object()
and added check to notify when the object exist
gtk/gtkbuilder.c | 32 +++++++++++---------------------
gtk/gtkbuilder.h | 2 +-
2 files changed, 12 insertions(+), 22 deletions(-)
---
diff --git a/gtk/gtkbuilder.c b/gtk/gtkbuilder.c
index 27e3962..f0006db 100644
--- a/gtk/gtkbuilder.c
+++ b/gtk/gtkbuilder.c
@@ -642,7 +642,7 @@ _gtk_builder_construct (GtkBuilder *builder,
if (info->object)
{
- /* template_object */
+ /* external_object */
obj = g_object_ref (info->object);
}
else if (info->constructor)
@@ -1305,36 +1305,26 @@ gtk_builder_get_translation_domain (GtkBuilder *builder)
* other object built by builder.
*
* To make this function even more useful a new special entry point element
- * <template> is defined. It is similar to <object> with the only difference
- * it can only be defined as a toplevel element (that is it has to be a child of
- * <interface>) and its id has to reference an external object exposed with this
- * function. This way you can change properties and even add children to an
+ * <external-object> is defined. It is similar to <object> but has
+ * to reference an external object exposed with this function.
+ * This way you can change properties and even add children to an
* external object using builder, not just reference it.
- *
- * Returns: True if object was exposed.
*
* Since: 3.8
**/
-gboolean
+void
gtk_builder_expose_object (GtkBuilder *builder,
const gchar *name,
GObject *object)
{
- GtkBuilderPrivate *priv;
-
- g_return_val_if_fail (GTK_IS_BUILDER (builder), FALSE);
- g_return_val_if_fail (name && name[0], FALSE);
- g_return_val_if_fail (G_IS_OBJECT (object), FALSE);
-
- priv = builder->priv;
+ g_return_if_fail (GTK_IS_BUILDER (builder));
+ g_return_if_fail (name && name[0]);
+ g_return_if_fail (gtk_builder_get_object (builder, name) == NULL);
- if (g_hash_table_contains (priv->objects, name))
- return FALSE;
-
object_set_name (object, name);
- g_hash_table_insert (priv->objects, g_strdup (name), g_object_ref (object));
-
- return TRUE;
+ g_hash_table_insert (builder->priv->objects,
+ g_strdup (name),
+ g_object_ref (object));
}
diff --git a/gtk/gtkbuilder.h b/gtk/gtkbuilder.h
index c44dbd4..3338162 100644
--- a/gtk/gtkbuilder.h
+++ b/gtk/gtkbuilder.h
@@ -143,7 +143,7 @@ guint gtk_builder_add_objects_from_string (GtkBuilder *builder,
GObject* gtk_builder_get_object (GtkBuilder *builder,
const gchar *name);
GSList* gtk_builder_get_objects (GtkBuilder *builder);
-gboolean gtk_builder_expose_object (GtkBuilder *builder,
+void gtk_builder_expose_object (GtkBuilder *builder,
const gchar *name,
GObject *object);
void gtk_builder_connect_signals (GtkBuilder *builder,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]