[ANN] Griffon 2.9.0 released!

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[ANN] Griffon 2.9.0 released!

aalmiray
Administrator
The Griffon team is happy to announce the release of Griffon 2.9.0!

The following list summarizes the changes brought by this release:

 * Action properties can react to application `Locale` changes.
 * `Labeled`, `Tab` and `MenuItem` nodes can react to application `Locale` changes.
 * `JavaFXAction` has the following updates:
 ** `style`: used to set style on the bound widget.
 ** `graphic`: used to set the graphic node on the bound widget.
 ** `graphicStyle`: used to set style on the graphic node of the bound widget.
 ** `graphicStyleClass`: used to set style classes on the graphic node of the bound widget.
 * Added an UI Thread proxy `ObservableSet`; all of its updates will be triggered inside the UI thread.
 * Added an UI Thread proxy `ObservableMap`; all of its updates will be triggered inside the UI thread.
 * New `CollectionBindings` class provides binding factories on `ObservableList`/`ObservableSet`/`ObservableMap`
 ** Join source observable collection to `StringBinding`.
 ** Calculate `min`, `max`, `average`, and `sum` on source observable collection.
 * New `FilteringBindings` class provides filtering capabilities on `ObservableList`/`ObservableSet`/`ObservableMap`
 ** Filter `ObservableList`/`ObservableSet`/`ObservableMap` and find first match, creating a `ObjectBinding`.
 ** Filter `ObservableList`/`ObservableSet`/`ObservableMap` then map and find first match to X; where X may be a wrapper type, String or a type `R`.
 ** Map elements of `ObservableList`/`ObservableSet`/`ObservableMap` to X then filter and find first match; where X may be a wrapper type, String or a type `R`.
 * New `ReducingBindings` class provides reduce capabilities on `ObservableList`/`ObservableSet`/`ObservableMap`
 ** Reduce `ObservableList`/`ObservableSet`/`ObservableMap` to `ObjectBinding`.
 ** Reduce `ObservableList`/`ObservableSet`/`ObservableMap` then map to X; where X may be a wrapper type, String or a type `R`.
 ** Map elements of `ObservableList`/`ObservableSet`/`ObservableMap` to X then reduce; where X may be a wrapper type, String or a type `R`.
 * New `MappingBindings` class provides lots of useful binding and property factories
 ** Convert `ObservableValue<X>` to is corresponding `XBinding`.
 ** Convert `ObservableXValue` to `ObjectBinding<X>`.
 ** Create bindings that update their value and notify listeners inside the UI thread.

A more detailed description of the changes and compatibility issues can be found at the release notes [http://griffon-framework.org/releasenotes/griffon_2.9.0.html].

We look forward to your feedback. Please report any problems you find to the Griffon User list, or better yet, file a bug at http://github.com/griffon/griffon/issues

Remember you can also contact the team on Twitter: @theaviary [http://twitter.com/theaviary].

Many thanks to all who contributed to this release!

The Griffon Team