X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=gtk%2Fgtkbuilderprivate.h;h=3667ed52d0e06ca82af69dcff7650f983c37e711;hb=3a86af43fa208786b5c848c09f9c8e1d3f060931;hp=1a45aca2369d2f754c3efb223ea44cea3f1adb60;hpb=e2534d54e12c3d9c4b2047608574bf3e2fa5db76;p=~andy%2Fgtk diff --git a/gtk/gtkbuilderprivate.h b/gtk/gtkbuilderprivate.h index 1a45aca23..3667ed52d 100644 --- a/gtk/gtkbuilderprivate.h +++ b/gtk/gtkbuilderprivate.h @@ -13,18 +13,12 @@ * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public - * License along with this library; if not, write to the - * Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. + * License along with this library. If not, see . */ #ifndef __GTK_BUILDER_PRIVATE_H__ #define __GTK_BUILDER_PRIVATE_H__ -#include -#include - -#include #include "gtkbuilder.h" typedef struct { @@ -46,6 +40,12 @@ typedef struct { CommonInfo *parent; } ObjectInfo; +typedef struct { + TagInfo tag; + gchar *id; + GHashTable *objects; +} MenuInfo; + typedef struct { TagInfo tag; GSList *packing_properties; @@ -74,6 +74,13 @@ typedef struct { gchar *connect_object_name; } SignalInfo; +typedef struct { + TagInfo tag; + gchar *library; + gint major; + gint minor; +} RequiresInfo; + typedef struct { GMarkupParser *parser; gchar *tagname; @@ -93,6 +100,13 @@ typedef struct { const gchar *filename; GSList *finalizers; GSList *custom_finalizers; + + GSList *requested_objects; /* NULL if all the objects are requested */ + gboolean inside_requested_object; + gint requested_object_level; + gint cur_object_level; + + GHashTable *object_ids; } ParserData; typedef GType (*GTypeGetFunc) (void); @@ -102,10 +116,14 @@ void _gtk_builder_parser_parse_buffer (GtkBuilder *builder, const gchar *filename, const gchar *buffer, gsize length, + gchar **requested_objs, GError **error); GObject * _gtk_builder_construct (GtkBuilder *builder, ObjectInfo *info, GError **error); +void _gtk_builder_add_object (GtkBuilder *builder, + const gchar *id, + GObject *object); void _gtk_builder_add (GtkBuilder *builder, ChildInfo *child_info); void _gtk_builder_add_signals (GtkBuilder *builder, @@ -118,6 +136,10 @@ void _free_signal_info (SignalInfo *info, gboolean _gtk_builder_boolean_from_string (const gchar *string, gboolean *value, GError **error); +gboolean _gtk_builder_enum_from_string (GType type, + const gchar *string, + gint *enum_value, + GError **error); gboolean _gtk_builder_flags_from_string (GType type, const char *string, guint *value, @@ -125,5 +147,17 @@ gboolean _gtk_builder_flags_from_string (GType type, gchar * _gtk_builder_parser_translate (const gchar *domain, const gchar *context, const gchar *text); +gchar * _gtk_builder_get_resource_path (GtkBuilder *builder, + const gchar *string); +gchar * _gtk_builder_get_absolute_filename (GtkBuilder *builder, + const gchar *string); + +void _gtk_builder_menu_start (ParserData *parser_data, + const gchar *element_name, + const gchar **attribute_names, + const gchar **attribute_values, + GError **error); +void _gtk_builder_menu_end (ParserData *parser_data); + #endif /* __GTK_BUILDER_PRIVATE_H__ */