This is the mail archive of the
kawa@sources.redhat.com
mailing list for the Kawa project.
New Kawa GUI functions
- From: Per Bothner <per at bothner dot com>
- To: kawa at sources dot redhat dot com
- Cc: jemacs-info at lists dot sourceforge dot net
- Date: Wed, 29 Jan 2003 23:07:46 -0800
- Subject: New Kawa GUI functions
Instead of doing the things I had promised to do, I was
a bad buy and hacked up some ideas for a simple Kawa GUI
framework. It's laughably primitive - but then I only
worked on it one evening. I don't know when if ever there
will be any more, but perhaps what is there will inspire
other to run with it.
Programs using this API looks rather look XUL (see
http://www.xulplanet.com/), except using Scheme functions
instead of XML syntax. Similar things have been done in
other languages, including XEmacs Lisp menu specifications
- which JEmacs implements.
Since we use a real programming language instead of XML
we can use real values and expressions, instead of just
text strings. For example, action listeners, specified
using the oncommand: keyword can be either an ActionListener
insteance or a zero-parameter procedure. And of course
most of the functions aren't just *descriptions* of the
layout of a window; they're expressions that *evaluate*
to components.
What I'm particularly interested in a similar functional
model for composing the "model" and not just the "view",
and also mapping from "model" to "view". But that will
have to wait.
The current implementatio uses Swing, but I'd like to
keep the Scheme API independent of Swing.
No documentation. A demo/test is in testsuite/gui-test.scm.
The code is in gnu/kawa/slib/gui.scm. If you're interested,
you'll figure it out.
--
--Per Bothner
per@bothner.com http://www.bothner.com/per/