Skip to content
Eugen Kiss edited this page May 16, 2014 · 30 revisions

Complete Remaining Builders

See https://github.com/eugenkiss/kotlinfx/issues/2

More Examples

Currently there are far too few examples in the kotlinfx-demos subproject.

KotlinFX Ensemble could use some help!

Creating more examples also helps in finding API issues. E.g. maybe a builder for a control should have an additional attribute as a named parameter to improve convenience of the API.

JFXApp Pendant

In ScalaFX it is sufficient to create an object that extends JFXApp and set its stage to create a launchable application. Presumably, JFXApp contains a main method that is implicitly executed when the object that extends JFXApp is run. So there is no need to define a main method for simple cases. KotlinFX should have this, too! See http://youtrack.jetbrains.com/issue/KT-5004

Animation DSL

One eye-candy feature of JavaFX are animations. ScalaFX provides a tailored syntax for animations. KotlinFX should have this, too, if possible.

Kalium Improvements

TODO: Improve efficiency (Link Towards paper). Add Obs construct.

Abbreviations for Observable Collections

Like Kotlin's listOf etc. create functions for observable collections so as to not always have to FXCollections.observableList or observableList if statically imported FXCollections but rather package obs and then obs.listOf() etc.

CSS DSL

It would be cool if KotlinFX provided a type-assisted CSS DSL.

ReactFX & Kalium

Research the distinctions of ReactFX and Kalium (Kalium focused on time-varying values, ReactFX focused on event-streams, observable collections and asynchronicity). Find out if and how ReactFX and Kalium can be combined.

Scala.React

There is this imperative reactive language in the Scala.React paper. Research if and how it can be integrated into KotlinFX or something similar and if it is even worthwhile to do so.

Subprojects for Popular External JavaFX Libraries

Create subprojects in this repository with bindings for popular external libraries like

Clone this wiki locally