How simple? How about this? Given "this" is an instanceof Composite:
implicit def unboxText2Double(t : Text) = java.lang.Double.parseDouble(t.getText())
implicit def convertDouble2String(d : Double) = d.toString
var fahrenheit : Text = null
var celcius : Text = null
this.contains (
layout = new GridLayout(2, true),
label("Fahrenheit"),
label("Celcius"),
text(fahrenheit = _),
text(celcius = _),
button("Fareinheight => Celcius", {e : SelectionEvent => celcius.setText((5.0/9.0) * (fahrenheit - 32)) }),
button("Celcius => Fareinheight", {e : SelectionEvent => fahrenheit.setText((9.0/5.0) * celcius + 32) })
)
This is listed in chronological order and the older documents are a bit out of date right now, but if you read them through, you'll get a good sense for how everything works. Of course, you can also just pull the source code. :-)
XScalaWT source is maintained on the "gh_pages" branch at GitHub. Currently I don't have a web host for binary builds / P2 repositories, but I'm working on that.
You can build the latest XScalaWT by pulling the "gh_pages" branch, then running "mvn clean install" using Maven 3 from the "build" directory. Then you'll have your own P2 repository you can add to your Maven/Tycho build in the "updatesite" project.