2019-04-30 16:49:02 +02:00
package org.hso.texturesyncclient.view.startupView
2019-05-01 22:57:03 +02:00
import com.jfoenix.animation.alert.CenterTransition
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
2019-04-30 20:51:59 +02:00
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
2019-04-30 16:49:02 +02:00
import tornadofx.*
class StartupView : View ( ) {
2019-04-30 18:50:41 +02:00
val labelStatus = Label ( " Verbinden " )
val spinnerStatus = JFXSpinner ( )
val labelServerIP = Label ( " Server-IP " )
val tfServerIP = JFXTextField ( )
val btnConnect = JFXButton ( " Manuell Verbinden " )
2019-05-01 22:38:30 +02:00
private val svc : StartupViewController by inject ( )
2019-04-30 20:51:59 +02:00
2019-04-30 18:50:41 +02:00
override val root = borderpane {
2019-05-01 22:38:30 +02:00
minWidth = 1000.0
minHeight = 500.0
2019-04-30 18:50:41 +02:00
center = vbox ( 50 ) {
maxWidth = 150.0
alignment = Pos . CENTER
2019-04-30 20:51:59 +02:00
add ( labelStatus )
2019-04-30 18:50:41 +02:00
add ( spinnerStatus )
2019-05-01 22:38:30 +02:00
vbox ( 10 ) {
2019-04-30 18:50:41 +02:00
alignment = Pos . CENTER
add ( labelServerIP )
add ( tfServerIP )
add ( btnConnect )
2019-05-01 22:57:03 +02:00
// tfServerIP.style { alignment=Center} TODO
2019-04-30 18:50:41 +02:00
}
}
style {
2019-05-01 22:38:30 +02:00
labelStatus . background = Background ( BackgroundFill ( Color . YELLOWGREEN , CornerRadii . EMPTY , Insets . EMPTY ) )
spinnerStatus . isVisible = false
2019-04-30 18:50:41 +02:00
}
2019-05-01 22:38:30 +02:00
btnConnect . setOnAction {
2019-05-01 22:57:03 +02:00
spinnerStatus . isVisible = true
2019-05-01 22:38:30 +02:00
svc . btnConnectAction ( tfServerIP . text )
2019-05-01 22:57:03 +02:00
spinnerStatus . isVisible = false
2019-05-01 22:38:30 +02:00
}
2019-04-30 16:49:02 +02:00
2019-05-01 22:38:30 +02:00
tfServerIP . setOnKeyPressed {
if ( it . code == KeyCode . ENTER ) {
2019-05-01 22:57:03 +02:00
spinnerStatus . isVisible = true
2019-05-01 22:38:30 +02:00
svc . btnConnectAction ( tfServerIP . text )
2019-05-01 22:57:03 +02:00
spinnerStatus . isVisible = false
2019-05-01 22:38:30 +02:00
}
}
}
2019-04-30 16:49:02 +02:00
}