TextureSync/client/src/main/kotlin/org/hso/texturesyncclient/view/startupView/StartupView.kt

70 lines
1.7 KiB
Kotlin
Raw Normal View History

package org.hso.texturesyncclient.view.startupView
2019-04-30 18:50:41 +02:00
import com.jfoenix.controls.JFXButton
import com.jfoenix.controls.JFXSpinner
import com.jfoenix.controls.JFXTextField
import javafx.geometry.Insets
import javafx.geometry.Pos
import javafx.scene.control.Label
import javafx.scene.input.KeyCode
2019-04-30 18:50:41 +02:00
import javafx.scene.layout.Background
import javafx.scene.layout.BackgroundFill
import javafx.scene.layout.CornerRadii
import javafx.scene.paint.Color
import tornadofx.*
class StartupView : View() {
2019-04-30 18:50:41 +02:00
val labelStatus = Label("Verbinden")
2019-04-30 18:50:41 +02:00
val spinnerStatus = JFXSpinner()
2019-04-30 18:50:41 +02:00
val labelServerIP = Label("Server-IP")
2019-04-30 18:50:41 +02:00
val tfServerIP = JFXTextField()
val btnConnect = JFXButton("Manuell Verbinden")
private val svc: StartupViewController by inject()
2019-04-30 18:50:41 +02:00
override val root = borderpane {
center = vbox(50) {
maxWidth = 150.0
alignment = Pos.CENTER
add(labelStatus)
2019-04-30 18:50:41 +02:00
add(spinnerStatus)
labelStatus.apply {
this.background = Background(BackgroundFill(Color.YELLOWGREEN, CornerRadii.EMPTY, Insets.EMPTY))
}
spinnerStatus.isVisible = false
2019-04-30 18:50:41 +02:00
vbox(10){
alignment = Pos.CENTER
add(labelServerIP)
add(tfServerIP)
add(btnConnect)
btnConnect.apply { action { svc.btnConnectAction(tfServerIP.text)} }
tfServerIP.setOnKeyPressed {
if (it.code == KeyCode.ENTER){
svc.btnConnectAction(tfServerIP.text)
}
}
2019-04-30 18:50:41 +02:00
}
}
style {
minWidth = 900.px
minHeight = 600.px
}
}
}