James Henstridge wrote:
>
> On 24 Apr 2001, Owen Taylor wrote:
>
> > One possibility would be to have libglade support both DTDs. Since
> > libglade has ~8300 lines of source, the amount of total bloat wouldn't
> > be huge.
> >
> > (Of course, if libglade is part of the GNOME-2.0 devel platform, and
> > it definitely should be, then it also need to meet the end-of-July
> > freeze..)
>
> Sounds good to me. The SAX parser that actually reads the .glade files is
> even shorter than that:
> 786 ../libglade/glade/glade-sax.c
>
> I assume that if we are going to change the file format, then it will have
> a similar format, which should make it fairly easy to switch between two
> formats.
>
> As for a new format, my opinion is that the format should be simple (ie.
> its DTD should not need to encode the attributes of every widget ever
> created). This is similar to I said during the last DTD debate on this
> list :)
>
> It might look something like this:
>
> <glade-interface xmlns="http://glade.gnome.org/glade-interface-2.0.dtd">
> <!-- widget class and name are attributes of the widget element.
> id is an ID attr, so must be unique in the interface -->
> <widget class="GtkWindow" id="the-name-of-this-window">
> <!-- widget properties look like this. Do we want the type attr? -->
> <property name="x" type="gint">60</property>
>
> <!-- signals look similar to before, but using attributes -->
> <signal name="delete-event"
> handler="on_delete_event"
> object="some-other-object" />
> <!-- object is IDREF, so it must match a widget name. I don't
> know if you can do IDREF and #implied together though, which
> is what we would want, since object isn't always wanted -->
>
> <children>
> <widget class="..." id="...">
> </widget>
> ...
> </children>
> </widget>
> </glade-interface>
>
> I am not quite sure what format <property> elements should take. Is it
> worth including type information? Would the following be better?
> <property name="x"><int val="42" /></property>
I preferred the first version:
<property name="x" type="gint">60</property>
And abbreviate it and have default types so you can just do:
<p name="x">60</p>
Though maybe we should look at things like SOAP to see if there is
anything
of use there.
> I can write a DTD for this format if it would help. Since we talked about
> switching over to libxml2 for glade, I could also write a SAX parser for
> the format (if we agree on it). The parser could then be used in both
> glade and libglade.
It may be better to save all this for a completely new version of Glade,
maybe Chema's new version which uses GtkArgs and stuff.
Damon
_______________________________________________
Glade-devel maillist - [EMAIL PROTECTED]
http://lists.helixcode.com/mailman/listinfo/glade-devel