Unified progress bar code

This commit is contained in:
Daniel Wolf 2018-02-16 21:29:34 +01:00
parent 19f6772c30
commit eb2a6a3264
1 changed files with 8 additions and 9 deletions

View File

@ -133,24 +133,23 @@ class MainView : View() {
AudioFileStatus.NotAnimated -> Text("Not animated").apply {
fill = Color.GRAY
}
AudioFileStatus.Pending -> ProgressBar().apply {
progress = -1.0 // Indeterminate
maxWidth = Double.MAX_VALUE
}
AudioFileStatus.Pending,
AudioFileStatus.Animating -> HBox().apply {
val progress = state.progress ?: 0.0
val bar = progressbar(progress) {
val progress: Double? = state.progress
val indeterminate = -1.0
val bar = progressbar(progress ?: indeterminate) {
maxWidth = Double.MAX_VALUE
}
HBox.setHgrow(bar, Priority.ALWAYS)
val progressString = "${(progress * 100).toInt()}%"
hbox {
minWidth = 30.0
text(progressString) {
if (progress != null) {
text("${(progress * 100).toInt()}%") {
alignment = Pos.BASELINE_RIGHT
}
}
}
}
AudioFileStatus.Canceling -> Text("Canceling")
AudioFileStatus.Done -> Text("Done").apply {
font = Font.font(font.family, FontWeight.BOLD, font.size)