diff options
author | Matthias Clasen <mclasen@redhat.com> | 2015-04-27 22:53:42 -0400 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2015-04-27 22:53:42 -0400 |
commit | 1525d4ab89722a19129b1e2f11135fdb3e5fc58b (patch) | |
tree | bfe85ba4102122a742fa996ef341db89d2346a36 /gtk/gtkbuilder.c | |
parent | 7332fefe96debbdb95452ebbcdd031dcbd96ab77 (diff) | |
download | gtk+-1525d4ab89722a19129b1e2f11135fdb3e5fc58b.tar.gz |
GtkBuilder: Document private convenience API
Diffstat (limited to 'gtk/gtkbuilder.c')
-rw-r--r-- | gtk/gtkbuilder.c | 48 |
1 files changed, 44 insertions, 4 deletions
diff --git a/gtk/gtkbuilder.c b/gtk/gtkbuilder.c index 96b33478ca..6cd801c712 100644 --- a/gtk/gtkbuilder.c +++ b/gtk/gtkbuilder.c @@ -310,18 +310,18 @@ static void gtk_builder_finalize (GObject *object) { GtkBuilderPrivate *priv = GTK_BUILDER (object)->priv; - + g_free (priv->domain); g_free (priv->filename); g_free (priv->resource_prefix); - + g_hash_table_destroy (priv->objects); if (priv->callbacks) g_hash_table_destroy (priv->callbacks); g_slist_foreach (priv->signals, (GFunc) _free_signal_info, NULL); g_slist_free (priv->signals); - + G_OBJECT_CLASS (gtk_builder_parent_class)->finalize (object); } @@ -2607,6 +2607,20 @@ gtk_builder_get_application (GtkBuilder *builder) return builder->priv->application; } +/*< private > + * _gtk_builder_prefix_error: + * @builder: a #GtkBuilder + * @context: the #GMarkupParseContext + * @error: an error + * + * Calls g_prefix_error() to prepend a filename:line:column marker + * to the given error. The filename is taken from @builder, and + * the line and column are obtained by calling + * g_markup_parse_context_get_position(). + * + * This is intended to be called on errors returned by + * g_markup_collect_attributes() in a start_element vfunc. + */ void _gtk_builder_prefix_error (GtkBuilder *builder, GMarkupParseContext *context, @@ -2618,6 +2632,19 @@ _gtk_builder_prefix_error (GtkBuilder *builder, g_prefix_error (error, "%s:%d:%d ", builder->priv->filename, line, col); } +/*< private > + * _gtk_builder_error_unhandled_tag: + * @builder: a #GtkBuilder + * @context: the #GMarkupParseContext + * @object: name of the object that is being handled + * @element_name: name of the element whose start tag is being handled + * @error: return location for the error + * + * Sets @error to a suitable error indicating that an @element_name + * tag is not expected in the custom markup for @object. + * + * This is intended to be called in a start_element vfunc. + */ void _gtk_builder_error_unhandled_tag (GtkBuilder *builder, GMarkupParseContext *context, @@ -2636,6 +2663,20 @@ _gtk_builder_error_unhandled_tag (GtkBuilder *builder, object, element_name); } +/*< private > + * @builder: a #GtkBuilder + * @context: the #GMarkupParseContext + * @parent_name: the name of the expected parent element + * @error: return location for an error + * + * Checks that the parent element of the currently handled + * start tag is @parent_name and set @error if it isn't. + * + * This is intended to be called in start_element vfuncs to + * ensure that element nesting is as intended. + * + * Returns: %TRUE if @parent_name is the parent element + */ gboolean _gtk_builder_check_parent (GtkBuilder *builder, GMarkupParseContext *context, @@ -2665,4 +2706,3 @@ _gtk_builder_check_parent (GtkBuilder *builder, return FALSE; } - |