thomasnield
10/05/2018, 7:38 PMthomasnield
10/05/2018, 7:38 PMamanda.hinchman-dominguez
10/05/2018, 7:38 PMSiebelsTim
10/05/2018, 7:40 PMthomasnield
10/05/2018, 7:44 PMSiebelsTim
10/05/2018, 7:46 PMamanda.hinchman-dominguez
10/06/2018, 8:05 AMValV
10/06/2018, 8:14 AMHamza
10/06/2018, 8:14 AMValV
10/06/2018, 8:15 AMHamza
10/06/2018, 8:15 AMValV
10/06/2018, 8:16 AMHamza
10/06/2018, 8:16 AMValV
10/06/2018, 8:19 AMthomasnield
10/06/2018, 8:44 AMHamza
10/06/2018, 8:45 AMHamza
10/06/2018, 8:45 AMHamza
10/06/2018, 1:49 PMValV
10/06/2018, 2:37 PMTextFormatter
with TornadoFX functions, not overriding full dependency chain: TextFormatter -> setTextFormatter -> TextField -> TableCell -> cellFactory -> useTextField? String converter does not seem to be sufficient. The big trick inside TextFormatter
is that, if it returns null
, then input is not being processed into that TextField
, so it happens between string converter's invocations of toString
(setting _TextField_'s text) and fromString
(setting observable's value) on user inputedvin
10/06/2018, 10:25 PMedvin
10/06/2018, 10:26 PMValV
10/07/2018, 2:41 AMValV
10/07/2018, 2:45 AMTableView
with columns of arbitrary types):ValV
10/07/2018, 2:46 AMValV
10/07/2018, 2:52 AMuseTextField
function to generate custom TableCell
, perhaps, calling them useIntegerField
, useDoubleField
, and so onValV
10/07/2018, 3:01 AMTableCell
. Possibly inherit it, and override startEdit
methodNico Smeenk
10/07/2018, 4:28 PMron
10/07/2018, 7:21 PMkotlin
class AuthorTableView : View() {
private val controller: MainController by inject()
override val root = tableview<EntryWithTypes> {
columnResizePolicy = SmartResize.POLICY
column("title", EntryWithTypes::title).remainingWidth()
column("types", EntryWithTypes::types).contentWidth(padding=50.0)
onSelectionChange {
if(selectedItem!=null) {
runAsync {
readStoryInformation(selectedItem!!.url)
} ui {
controller.storyModel.item = it
}
}
}
controller.authorModel.itemProperty.onChange {
runAsync {
val strip = controller.authorModel.url.value.substring(controller.authorModel.url.value.indexOf("/Authors"))
readIndex(controller.authorModel.url.value, strip, true)
} ui {
items = it.observable()
}
}
}
}
ron
10/07/2018, 7:21 PMedvin
10/07/2018, 7:28 PM