From: "Horacio López" Date: 2002-01-22T10:25:17+09:00 Subject: Re: RANT: Ruby GUI API [snip] > What about a meta-language to describe interfaces (much like Glade > uses XML, though Glade is limited to GTK) and then have a program > produce specific code for the various toolkits? A similar idea comes to mind when reading about XForms. XForms is a W3C standard meta-language for Forms, but XForms don't tell you the visual appearance the Form will have, the "meta" level XForms use is more abstract, like: "expose a mutually exclusive option set" but you can't tell it: "draw a listbox with a yellow background, and if the user makes a selection, fire the onClick event" (more info: http://www.w3c.org/MarkUp/Forms/) Glade and XForms are "resource based" approaches, forms are instantiated, but you still have to handle and dispatch events. You also have to be able to hide objects, resize them, disable them, change their captions, etc. AWT wasn't resource based, and due to its lame object orientation, it was also hard to come up with a decent GUI, by writing code. Java, until Swing, didn't have neither resource-based nor good object oriented interface. As I see it, A meta-language to describe user interfaces is just a script to an object oriented programming interface, that reads the script and instantiates GUI objects. (possibly, these have been previously serialized from a GUI builder tool) IMHO, a good GUI abstraction layer should provide BOTH, resource-based forms, and a good object oriented interface. I will keep studying this problems because at FreeRIDE we will have to deal with it eventually. I am concerned about making GUIs internationalizable, so *any* information you can provide, please let me know. Anyway, it's a start, and I have thought of using Glade metalanguage too, glad you mentioned it, there must be something good there :-) cheers, vruz