I've read through the API docs and the tag library (and a fair bit of the archives). I have some selfish interests in this project--I'm looking at several XML-based approaches for GUI development. Swixml seems to be Just Right--very lightweight and straightforward. I've got a few things I'd like to do with XML-based GUI development that I'd like to pass by everyone.

+Interpreted vs Generated

From what I can tell, Theodore presents an XML interpreter for swixml files, right? Has anyone considered the option of generating Java code from the XML files that is 100% compatible with the existing stuff? Please stop me if this is redundant or off-topic. I would like to use XML while prototyping, then flip a switch for the final product.

Here's what I was thinking:

-XSL to convert swixml files to Java code
-A gui builder factory that either builds the GUI using the interpreter or using java code (depending on some given property that indicates which mode is prefered).

+Binding

Has anyone considered adding binding language for attaching listeners to GUI elements? I'm looking to separate my business logic (i.e. listeners) from my view (i.e. the GUI). Right now, it seems like swixml still requires Java code with intimate knowledge of the GUI defined in the XML file (such as the names of widgets). I'd like to separate that out into an external file, sort of like XBL. Of course, I want a much lighter-weight language than XBL, but XBL has a lot of good things from which to learn.

----- </end_suggestions>

I've done some work in this area years ago, back when XML was first emerging. I had built my own Swixml-like interpreter for a project I was working on. When XSL emerged, I investigated using it to generate the Java code, too, instead of interpreting it. My initial tests indicated it would be fairly straightforward, but the project got cancelled, I left the company, and I started focusing on server-side Java.

I may be able to offer some assistance with the project if you still need some. I'm a 5+ year veteran of Java, with about a 50/50 split between client-side and server-side. I used to write Java/Swing components for software tools company, so I feel fairly comfortable with Swing and all. I probably wouldn't be able to commit to more than 10 hours a week, and my availability varies with my career load (currently very low--anybody looking for programmers?). How do I like to share code? I'm not sure what you mean by that. LGPL is nice because I like to use the code in commercial products. But, hey, there are lots of reasonable licenses out there. I've got plenty of experience (?7 years) with other CVS clients (if you're a windows user, I suggest TortoiseCVS...plus they have a similar shell plug-in for Subversion).

Sorry for the long email. I didn't want to bother everyone with multiple emails to the forum.

-dan


Reply via email to