tornadofx v1.5.3 Release Notes

Release Date: 2016-08-02 // over 7 years ago
  • โž• Added

    • App.createPrimaryScene overridable function to specify how the scene for the primary View is created
    • ๐Ÿ“‡ OSGI manifest metadata
    • LayoutDebugger can edit new Node properties: spacing
    • ๐Ÿ’… Stylesheets can be dynamically added at runtime and will affect all active scenes
    • Convenience methods for creating bindings on any object. e.g. stringBinding(person, person.firstNameProperty, person.lastNameProperty) { "$firstName, #lastName" }
    • View/Fragment takes optional title in constructor

    ๐Ÿ”„ Changed

    • ๐Ÿšš UIComponent.showModal now supports reopening even if modalStage was never removed
    • fieldset block now operates on an HBox instead of Pane so you can write alignment = Pos.BASELINE_RIGHT to right-align buttons etc
    • Set modalStage before showAndWait() (https://github.com/edvin/tornadofx/pull/151)
    • ๐Ÿ‘ Parent.find and UIComponent.find renamed to lookup for better alignment with JavaFX lookup and to avoid confusion with find(View::class)
    • ๐Ÿ‘Œ Improved BorderPane builders, they also now accept UIComponent references instead of instances
    • ๐Ÿ— Builders now operate on EventTarget instead of Pane and as a result, many builders have improved syntax and functionality
    • ๐Ÿ’… Reduced boilerplate for App creation (you can now use class MyApp : App(MyView::class, Styles::class)
    • โช ViewModel commit and rollback run on the UI thread because decorators might be invoked
    • ViewModel commit accepts a function that will be run if the commit is successful
    • ๐Ÿ—„ find can now also find Fragments, so findFragment is deprecated
    • lookup takes an optional op that operates on the UIComponent it found
    • TreeTableView/TableView.populate accepts any kind of Iterable<T> instead of List