01 March 2015

Griffon 2.2.0 Release Notes

Dependencies

The following dependencies have been upgraded

  • org.codehaus.groovy:groovy-all:2.4.1

  • org.slf4j:slf4j-api:1.7.10

Runtime

Application

Applications now have the capability to store key/value pairs inside a Context. Contexts are hierarchical, meaning a child context may shadow keys available in a parent context. Values of shadowed keys are not modified; you can grab the original value by asking the owning context for it.

MVC

MVCGroups now have a Context of their own. This is useful for storing group only data that can be shared between MVC members of just controller actions. It’s also possible to automatically inject context values as action arguments as long as said arguments are annotated with @griffon.inject.Contextual.

Configuration

Configuration objects are made read-only by default. Now you can make them writable if wrapped with MutableConfiguration.

Swing

Icon resources support a new format (processed by IconPropertyEditor). The format is as follows

iconClassName|constructorArg

Where constructorArg is assumed to be a String. Here’s an example using the griffon-fontawesome-plugin

org.example.AppController.action.Preferences.icon=griffon.swing.support.fontawesome.FontAwesomeIcon|fa-gear

JavaFX

Icon resources support a new format (processed by JavaFXUtils). The format is as follows

iconClassName|constructorArg

Where constructorArg is assumed to be a String. Here’s an example using the griffon-fontawesome-plugin

org.example.AppController.action.Preferences.icon=griffon.javafx.support.fontawesome.FontAwesomeIcon|fa-gear

Additionally JavaFXUtils has the following functionality

Compatibility

Full binary compatibility report between Griffon 2.2.0 and 2.1.0 can be found here.

A list of fixed issues can be found at the 2.2.0 milestone page.