gtkaml is an XML parser that extends the Vala.Parser (literally) and transforms all your tags into a valid Gtk+ UI class described in the Vala language.
<VBox xmlns:g="http://gtkaml.org/0.2" xmlns="Gtk"
g:name="MyVBox">
<Label label="_Hello" with-mnemonic="true"
expand="false" fill="false" padding="0" />
</VBox>Features
- compact XML syntax for describing Gtk widgets
- code 'islands' (written in Vala) for signal handling and other methods/signals/properties/ in your widget class (so you don't modify the generated code ever)
- doesn't depend on an external library at run-time
- much more readable than the usual UI boilerplate (e.g. you don't need to worry about temporary variable names, or ever write hundreds of lines of code/markup)
To see a sample of what gtkaml looks like, see the example here. Have a look at the design goals for a quick specification + advancements in development.
You can discuss about gtkaml on the gtkaml-dev mailing list.
(2009-06-02) gtkaml 0.2.7 released!
This version is updated for Vala 0.7.3
(2009-07-01 works with Vala 0.7.4 too)
See the release notes.
Status
Gtkaml 0.2.x is currently in maintainence mode. Only releases to sync with Vala are made, and bugs may be fixed if they don't require re-architecturing.
Gtkaml 0.4 is in prototyping phase. Changes include re-using Vala's parser for expressions and Vala symbol resolver as much as possible, opening the oportunity to data binding based on 'notify' signal.
Thanks for understanding, Vlad