JFXtras 0.1 Release – Grids, Dialogs, Testing, and more!

29 12 2008

The JavaFX 1.0 release came out a couple weeks ago, but one of the big questions has been about missing UI functionality, such as layouts, menus, and UI components.  Future release of JavaFX will support this, but in the meantime application developers are stuck up the river without a paddle.

The JFXtras project was conceived out of just such a discussion between Jim Weaver and I as we were brainstorming on all the missing functionality we wished JavaFX supported today.  As a starting point we each had a repository of components and widgets to share, and an endless list of things we wished we had to work with.

Today marks the 0.1 milestone release of JFXtras.  The components are not all complete, but are well documented and very usable for early adopters.

JFXtras Grid in Action

JFXtras Grid in Action

Some of the out-of-the-box components you can take advantage include:

  • The JFXtras Grid – Absolute positioning only goes so far, then you need some real layouts.  The JFXtras Grid supports resizable nodes, alignment, span, grow, and even column widths.
  • Dialog – The JFXtra Dialog provides a drop-in replacement for a Stage that will pop-up a real Java Dialog. This includes support for an owner window, modality, alwaysOnTop, the ability to hide the taskbar icon, and many other features.
  • Testing – The JFXtras test takes all the best testing concepts from junit, hamcrest, rspec, and others, and melds them together with a succinct declarative syntax.
  • Asynchronous Worker – Working on the theory that developers deserve their share of rope, JFXtras provides an asynchronous worker wrapper that allows you to execute pure JavaFX code on a background thread.

I will be writing in more depth about how to use the main features of JFXtras here on my blog, so please look forward to it!


Actions

Information

9 responses

30 12 2008
Dieter

Hi Steve,

I am new in JavaFx. How I can integrate your features in (NetBean-) project?
Dieter

30 12 2008
steveonjava

Dieter,

All you have to do is download the JFXtras.jar file and add it to your Libraries in the Project Properties dialog.

Please also look over the Javadoc on the website or in the source bundle for more information about the available classes.

30 12 2008
steveonjava

All,

I posted a 0.1.1 patch release to fix the packaging structure for layout and shape to be consistent with the JavaFX APIs where they are nested beneath javafx.scene. I figured this is better to do ASAP before anyone gets too attached to the old package structure. Please grab the new files instead!

30 12 2008
Sven Drieling

The JFXtras-0.1.1.jar contains the Window pathseperator \ instead of / so this .jar does not work on Linux.

$ jar tf JFXtras-0.1.jar
java.util.zip.ZipException: invalid entry size (expected 857866248 but got 102 bytes)

$ unzip -l JFXtras-0.1.jar
Archive: JFXtras-0.1.jar
Length Date Time Name
——– —- —- —-
102 12-29-08 06:25 META-INF\MANIFEST.MF
2859 12-29-08 06:25 org\jfxtras\async\JFXWorker$1ObjectSwingWorker$anon1.class
1308 12-29-08 06:25 org\jfxtras\async\JFXWorker$Intf.class

$ javafx -classpath .:/home/joe/JFXtras-0.1.1.jar JFXStageTest
Exception in thread “main” java.lang.NoClassDefFoundError: org/jfxtras/stage/JFXStage$Intf

Workaround:

Create new .jar

unzip JFXtras-0.1.jar
jar -cf JFXtras-0.1.jar META-INF/ org/

30 12 2008
steveonjava

Sven,

I’ve posted a 0.1.1b version that fixes the packaging issue for Linux.

Thanks for pointing this out and mentioning a workaround!

31 12 2008
Sven Drieling

Hallo Steve,

0.1.1b works fine.

And provides many useful/missing features like Grid, JFXDialog.packed and JFXWorker 🙂

9 01 2009
Eric Kolotyluk

Where can we find the example source that implements the Span Layout window in your example? This page would be so much better if a link to the source were included.

Currently I am finding the layout stuff equally frustrating to use as GridBag, worse actually because the FX tooling is still very fragile and the documentation is incomplete.

12 01 2009
steveonjava

I will post a more detailed example to my blog soon, but for now here is a link to the Span Layout code:
http://code.google.com/p/jfxtras/source/browse/trunk/test/org/jfxtras/scene/layout/SpanTest.fx

11 02 2010
Luis Barragan

Hi Steve,

I’m using JFXtras 0.5 and I’m also getting the class not found error:

NoClassDefFoundError: org/jfxtras/stage/JFXDialog

Doesn’t this version contain the fix that you added in 0.1.1b? I’m using Linux

Thanks in advance

Leave a reply to steveonjava Cancel reply