TornadoFX 1.5.6

@edvin edvin released this Sep 19, 2016 · 1431 commits to master since this release

This is another feature packed release with features like the DataGrid component, TableView Row Expander, TableView SmartResize Policy, and lots of all round improvements and fixes. Here is the complete changelog:

  • ViewModel.onCommit() function that will be called after a successful commit
  • TableView SmartResize Policy (https://github.com/edvin/tornadofx/wiki/TableView-SmartResize)
  • dynamicContent builder that will replace content in a Node when an observable value changes
  • Alternative TableView.column builder with auto-conversion to observable value (column("Title", ReturnType::class) { value { it.value.somePropertyOrValue })
  • DataGrid component
  • TableColumn cellCache provider to create a cached graphic node per item
  • Padding shortcuts (paddingRight, paddingLeft, paddingTop, paddingBottom) to Region
  • TableView support for Nested Columns (nestedColumn(title) { // add child columns here })
  • TableView support for expanded row node (rowExpander { // create node to show on expand here }) (https://edvin.gitbooks.io/tornadofx-guide/content/5.%20Builders%20II%20-%20Data%20Controls.html#row-expanders)
  • Fixed bug where image URLs defined in CSS were rendered wrong
  • Added support for skipping snake-casing in CSS rules (names still have to be valid css identifiers)
  • Fixed bug where CSS selectors defined with strings would have their capitalization changed (".testThing" => ".test-thing", cssclass("testThing") => .test-thing)
  • Updated the ViewTransition code to be more flexible (including now working with any Node, not just Views and Fragments).
    • Also added several new built in ViewTransitions
  • Added new Node animation helper functions for various transformations
  • FXML files can now contain fx:controller attribute to help with content assist, if hasControllerAttribute = true is passed to the fxml delegate (#179)
  • Fix exception in chooseFile when user cancels in Multi mode