/tornadofx-controlsfx

ControlsFX Builder extensions and utilities for TornadoFX

Primary LanguageKotlinApache License 2.0Apache-2.0

TornadoFX-ControlsFX

ControlsFX builder extensions and utilities for TornadoFX.

Maven Central Apache License

Add TornadoFX-ControlsFX to your project

Maven

<dependency>
    <groupId>no.tornado</groupId>
    <artifactId>tornadofx-controlsfx</artifactId>
    <version>0.1</version>
</dependency>

Gradle

compile 'no.tornado:tornadofx-controlsfx:0.1'

Examples

TableView Filter

class TableFilterView : View() {
    override val root = tableview(patients) {

        column("FIRST NAME", Patient::firstName)
        column("LAST NAME", Patient::lastName)
        column("GENDER", Patient::gender) {
            columnfilter {
                exceptValue(Gender.FEMALE)
            }
        }
        column("BIRTHDAY", Patient::birthday)
        column("AGE", Patient::age)
        column("WBCC", Patient::whiteBloodCellCount)

        tableFilter.executeFilter()
    }
}

BreadCrumbBar

class BreadCrumbPane: View() {

    var targetCrumb: TreeItem<String>? = null

    override val root = breadcrumbbar<String> {
        treeitem("Alpha") {
            treeitem("Beta") {
                targetCrumb = treeitem("Gamma")
            }
            treeitem("Zeta")
        }

        selectedCrumb = targetCrumb
    }
}

Contributing

I might have missed some or may have included extraneous utilities, but any help to create a TornadoFX DSL for the following is welcome.

Please read JavaDocs for full list of controls: https://controlsfx.bitbucket.io/

  • BreadCrumbBar
  • Borders
  • CheckListView
  • CheckComboBox
  • CheckTreeView
  • Glyphs
  • CustomPasswordField
  • CustomTextField
  • Picker
  • ProgressDialog
  • ExceptionDialog
  • TableFilter
  • RangeSlider
  • SpreadsheetView
  • StatusBar
  • ToggleSwitch
  • WorldMapView
  • SegmentedBar
  • Rating
  • PropertySheet
  • PopOver
  • Plus/Minus Slider
  • Notifications
  • NotificationsPane
  • MasterDetailPane
  • MaskerPane
  • HyperlinkLabel
  • GridView
  • FontAwesome
  • Decorator
  • InfoOverlay
  • ListSelectionView
  • Prefix Selection Combobox/Choicebox
  • SnapshotView
  • HiddenSidesPane
  • LoginDialog
  • CommandLinksDialog