XScalaWT - Scala DSL for Eclipse RCP and SWT applications

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) })
  )

Documentation

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. :-)

Download and Build

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.