Scala + JavaFX = ScalaFX

Hartmut Schlosser

ScalaFX ist der Name einer in Scala-geschriebenen DSL, mit der JavaFX-2.0-Oberflächen geschrieben werden können. Jede ScalaFX-Anwendnung ist eine valide Scala-Anwendung und kann auf allen JVM-Systemen mit JavaFX-2.0-Unterstützung betrieben werden.

Auf der Projektseite ist folgendes Beispiel zu finden:

stage = new Stage {
  title.value = "Hello Stage"
  width = 600
  height = 450
  scene = new Scene {
    fill = Color.LIGHTGREEN
    content = new Rectangle {
      x = 25
      y = 40
      width = 100
      height = 100
      fill <== when (hover) then Color.GREEN otherwise Color.RED
    }
  }
  visible = true
}

  

Es wird zu Beginn eine neue „Stage“ kreiert, danach ein Rechteck, welches auf der Basis von Maus-Bewegungen seine Farbe ändert.

Die zum Einsatz kommende Syntax wird als „objektliteral“ bezeichnet. Die ScalaFX Object Declaration Syntax verwendet das normale Object API, sodass die selben Operatoren verwendet werden können, um beispielsweise den Scene Graph zu erzeugen bzw. zu verändern.

Ein weiteres ScalaFX-Anwendungsbeispiel wird auf stevenonjava beschrieben. Gegenüber der Java-Variante soll die ScalaFX-Umsetzung kürzer sein und weniger Redundanzen enthalten.

ScalaFX wird momentan auf Google-Code entwickelt, ein offizielles Release wird noch nicht zum Download angeboten. Über den aktuellen Entwicklungsstand kann man sich auf der Update-Seite informieren.

Geschrieben von
Hartmut Schlosser
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.