Skip to content
Eugen Kiss edited this page Apr 27, 2014 · 30 revisions

More Functionality

The library currently contains only as much functionality as is needed to make the few examples int the kotlinfx-demos subproject look good. Naturally, there is much functionality still to add.

More Examples

In the kotlinfx-demos subproject I actually don't want to have too many examples. I want to keep the demos clear and succinct. As KotlinFX is a layer on top of JavaFX that is not too alien from JavaFX it is often obious how a particular JavaFX example would look in KotlinFX so it does not make sense to have a lot of examples just because. A good example shows particular benefits of KotlinFX over pure Kotlin+JavaFX or it is a reimplementation of a (widespread) tutorial (e.g. from JavaFX docs or an interesting example from ScalaFX/GroovyFX) and it does not repeat essentially another example that already exists as a demo. Still, currently there are far too few examples in the kotlinfx-demos subproject.

Of course, I'm more than happy to see a lot of examples outside of the kotlinfx-demos subproject in separate repositories like it is done for ScalaFX with ProScalaFX or ScalaFX Ensemble. If you do this then please add a link to the wiki!

Animation DSL

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

CSS DSL

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

Code Generation

I suspect a lot of layer code could be generated instead of manually specified in particular the extension properties.

TODO: This could help: https://github.com/JetBrains/kotlin/tree/master/libraries/stdlib

Gradle and Packaging

It'd be great if someday people could just add a dependency to their build.gradle file in order to use KotlinFX. Currently, this is not possible.

Documentation Reuse

It'd be great if the JavaDoc from JavaFX could be injected into the builders and extension properties. But I don't know how feasible this is.

Clone this wiki locally