libglade-1.99 (for development gtk+)
- From: James Henstridge <james daa com au>
- To: <gnome-2-0-list gnome org>
- Cc: <glade-devel ximian com>
- Subject: libglade-1.99 (for development gtk+)
- Date: Thu, 16 Aug 2001 23:01:52 +0800 (WST)
I have just put up a tarball of the HEAD branch of libglade. It is
available at:
ftp://ftp.gnome.org/pub/GNOME/pre-gnome2/sources/libglade/
This version uses the new file format that is also being used by glade2.
It makes extensive use of object properties and child packing properties.
Most GTK+ widgets are supported to some extent in this release (there are
still a number of container widgets that need work). Support for
libgnomeui widgets and bonbobo controls will be in a later release (their
addition won't affect the C API though).
The C API is almost the same as the stable version, except that GladeXML
is now a GObject. There are a few changes I am still planning on making
though:
1) consider removing the `long name' APIs. These allow you to look up a
widget with a name like "toplevelname.container.widgetname", rather
than just "widgetname". As widget names are required to be unique
within a glade file with the new format, the short names should be
sufficient.
2) Make each widget that gets constructed by libglade hold a reference
to the corresponding GladeXML object, and use weak references to
remove entries from the GladeXML object's widget hash table on
destruction (this requires weak notify changes being discussed on
gtk-devel-list).
This would ensure that glade_get_widget_tree() always returned a
valid GladeXML object, and glade_xml_get_widget() always returned a
valid widget or NULL (ie. not return invalid memory if the widget got
destroyed).
In order to help the migration to the new format, a libglade-convert
script is included. This script won't do a perfect translation, but is a
good start (and it shouldn't be too difficult to extend it to do a better
job). The script requires Python >= 2.0 with an XML parser module
(currently this means Expat). The XML parser module is required to make
the xml.dom.minidom module work.
James.
--
Email: james daa com au
WWW: http://www.daa.com.au/~james/
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]