Relation between fxgraph and fxml

I just saw some people coming to my blog from an article published on The Register where the author referenced e(fx)clipse.

The author there talks about FXGraph and that it limits the appeal of e(fx)clipse which is think is not correct because nobody is forced to use the DSL I’ve been working on (use what ever you want – Java, GrooveFX, ScalaFX, …). It’s true that I currently don’t provide good tooling support for FXML but I plan to work on an FXML tooling so that people who want to directly edit them get decent support for it.

I think an important fact when it comes to FXGraph is that the DSL is not translated into Java or JavaByte code but into FXML so you can think of FXGraph-Files as a nicer textual representation of the FXML files content. The advantage of spitting out FXML are in my opinion:

  • No lock in – you are not forced to work with FXGraph for ever because the generated FXML-File should be supported by e.g. Netbeans, IDEA, … you can switch to another IDE and continue with the work there
  • Tool exchange – My opinion is that FXML is designed as an interchange format between different tools and not really designed to be authored directly so all upcoming tools (e.g. Scene Builder) will use it as interchange format
  • No runtime layer – FXGraph-Files get translated automatically in FXML while coding and so you don’t need an extra library to make things work

Here’s a small diagram how I think FXML is designed to be used:

What’s missing at the moment is an FXML to FXGraph translator but this is something not really hard to implement so it’s already on my TODO-List for 0.0.10.

All-in-one download of e(fx)clipse

To make it as easy as possible to get started with JavaFX 2.0 development with Eclipse I’ve just uploaded prepackaged SDKs for Windows and OS-X to efxclipse.org.

This makes it super easy for you to take e(fx)clipse for a spin – just grab the package appropriate for your platfrom, unpack and start writing your first JavaFX 2.0 application (after you configured the SDK-Location in Window > Preferences > JavaFX).

e(fx)clipse 0.0.8 released

Another few weeks have passed and here is a new release of e(fx)clipse. There are not many new features but the stuff available already has been improved. Let’s look at the most important things one by one:

  • e(fx)clipse now has reached a point where I think it deserves itsown homepage with informations on the project, … so I’ve created one which you can find at efxclipse.org

  • Enhanced PDE-Classpath container. e(fx)clipse comes with a patched PDE-Classpath container which automatically recoginzes that you import javafx-packages to your project and so adds them to your classpath.

    To make exporting work one still needs the javafx.jar in the build.properties for now but we are looking into this problem and can hopefully fix it with an upcoming release.

  • The fxgraph-DSL and its Live-Preview got some more love:
    • Preview shows error information in an extra tab
    • Preview is still visible if one switches to the CSS-Editor
    • Preview updates itself on CSS changes
    • The DSL allows to reference external jars needed by the preview to build up the UI (e.g. external controls, layout-panels,..)

    I’ve recorded a video for you to see it in action:

  • OS-X support: I’ve added support for Mac OS X. The CSS and FXGraph editors are working smoothly but I’m having some issues with the Live-Preview which though it works there are many things that need to be fixed.
  • JavaFX on the Eclipse 4 Application Platform got improved by Kai T√∂dter and is now able to render menus, … . He also improved the themeing support to allow switching of themes at runtime.

    Once more I’ve recorded you a small video showing all in action:

  • Switched to Xtext 2.1 which is a prerequist now
  • Supported platforms are going to be 3.7.1 and Eclipse 4.2
  • You can now install and keep e(fx)clipse up-to-date by configuring the following p2-repository url: http://www.efxclipse.org/p2-repos/releases/latest/.

    Please take a look at the Install-page to see how to set things up

The source is released under EPL and available from our git-repository https://github.com/tomsontom/e-fx-clipse.

Special note to all people who had installed a previous version because I’ve switched to Xtext 2.1 you’ll have to follow the installation guide lines outlined on the Install-page else you’ll get dependency errors when trying to install or even worse some things are not working like the fxgraph editor

Slides from latest talks

I’ve seen some people coming to my blog from the eclipsecon.org website and are probably looking for slides of the talks I’ve given:

Just in case you liked my talks and think they might be interesting to others as well think about voting for my EclipseCon 2012 North America submissions:

Beside that I’m going to be in Bay Area end of November joining Lars@Eclipse-Day-At-Googleplex which is already sold out but if you are interested in e(fx)clipse I’ve proposed a demo for the San Francisco Democamp – having been to Democamps in Europe I can only say discussing cool technologies while having one or two beers is one of the most enjoyable things in our business.