Client: add ImportView and clean up StartupView
This commit is contained in:
parent
cd8a3218d5
commit
5976e16f0d
@ -1,5 +1,6 @@
|
|||||||
package org.hso.texturesyncclient.app
|
package org.hso.texturesyncclient.app
|
||||||
|
|
||||||
|
import org.hso.texturesyncclient.view.importView.ImportView
|
||||||
import org.hso.texturesyncclient.view.startupView.StartupView
|
import org.hso.texturesyncclient.view.startupView.StartupView
|
||||||
import tornadofx.App
|
import tornadofx.App
|
||||||
|
|
||||||
|
@ -1,10 +1,76 @@
|
|||||||
package org.hso.texturesyncclient.view.importView
|
package org.hso.texturesyncclient.view.importView
|
||||||
|
|
||||||
import javafx.scene.Parent
|
import com.jfoenix.controls.JFXButton
|
||||||
|
import com.jfoenix.controls.JFXChipView
|
||||||
|
import com.jfoenix.controls.JFXTextField
|
||||||
|
import javafx.geometry.Pos
|
||||||
|
import javafx.scene.control.Label
|
||||||
|
import javafx.scene.layout.Priority
|
||||||
|
import javafx.scene.text.Font
|
||||||
|
import javafx.scene.text.FontWeight
|
||||||
import tornadofx.*
|
import tornadofx.*
|
||||||
|
|
||||||
class ImportView : View() {
|
class ImportView : View() {
|
||||||
|
|
||||||
override val root: Parent
|
val labelHeading = Label("Textur hinzufügen")
|
||||||
get() = TODO("not implemented") //To change initializer of created properties use File | Settings | File Templates.
|
val tfFilePath = JFXTextField()
|
||||||
|
val btnFileChooser = JFXButton("Datei öffnen")
|
||||||
|
val labelName = Label("Name")
|
||||||
|
val tfName = JFXTextField()
|
||||||
|
val labelTags = Label("Tags")
|
||||||
|
val cvTags = JFXChipView<String>()
|
||||||
|
|
||||||
|
private val ivc: ImportViewController by inject()
|
||||||
|
|
||||||
|
|
||||||
|
override val root = borderpane {
|
||||||
|
minWidth = 1000.0
|
||||||
|
minHeight = 500.0
|
||||||
|
|
||||||
|
center = vbox(50) {
|
||||||
|
maxWidth = 350.0
|
||||||
|
alignment = Pos.CENTER
|
||||||
|
|
||||||
|
add(labelHeading)
|
||||||
|
|
||||||
|
vbox(20) {
|
||||||
|
hbox(10) {
|
||||||
|
add(tfFilePath)
|
||||||
|
add(btnFileChooser)
|
||||||
|
}
|
||||||
|
|
||||||
|
vbox(5) {
|
||||||
|
add(labelName)
|
||||||
|
add(tfName)
|
||||||
|
}
|
||||||
|
|
||||||
|
vbox(5) {
|
||||||
|
add(labelTags)
|
||||||
|
add(cvTags)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
style {
|
||||||
|
labelHeading.font = Font.font("Verdana", FontWeight.MEDIUM, 40.0)
|
||||||
|
|
||||||
|
tfFilePath.promptText = "Pfad ..."
|
||||||
|
tfFilePath.hgrow = Priority.ALWAYS
|
||||||
|
btnFileChooser.style = "-fx-button-type: RAISED; -fx-background-color: #FAAFFF; -fx-text-fill: BLACK;"
|
||||||
|
|
||||||
|
labelName.style = "-fx-font: 14px Verdana; -fx-text-fill: BLACK;"
|
||||||
|
tfName.promptText = "Name ..."
|
||||||
|
|
||||||
|
labelTags.style = "-fx-font: 14px Verdana; -fx-text-fill: BLACK;"
|
||||||
|
cvTags.style = "-fx-background-color: #FFFFFF;"
|
||||||
|
}
|
||||||
|
|
||||||
|
btnFileChooser.setOnAction {
|
||||||
|
ivc.btnFileChooserAction()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -3,4 +3,8 @@ package org.hso.texturesyncclient.view.importView
|
|||||||
import tornadofx.Controller
|
import tornadofx.Controller
|
||||||
|
|
||||||
class ImportViewController : Controller() {
|
class ImportViewController : Controller() {
|
||||||
|
|
||||||
|
fun btnFileChooserAction() {
|
||||||
|
println("btn click")
|
||||||
|
}
|
||||||
}
|
}
|
@ -16,18 +16,16 @@ import tornadofx.*
|
|||||||
class StartupView : View() {
|
class StartupView : View() {
|
||||||
|
|
||||||
val labelStatus = Label("Verbinden")
|
val labelStatus = Label("Verbinden")
|
||||||
|
|
||||||
val spinnerStatus = JFXSpinner()
|
val spinnerStatus = JFXSpinner()
|
||||||
|
|
||||||
val labelServerIP = Label("Server-IP")
|
val labelServerIP = Label("Server-IP")
|
||||||
|
|
||||||
val tfServerIP = JFXTextField()
|
val tfServerIP = JFXTextField()
|
||||||
|
|
||||||
val btnConnect = JFXButton("Manuell Verbinden")
|
val btnConnect = JFXButton("Manuell Verbinden")
|
||||||
|
|
||||||
private val svc: StartupViewController by inject()
|
private val svc: StartupViewController by inject()
|
||||||
|
|
||||||
override val root = borderpane {
|
override val root = borderpane {
|
||||||
|
minWidth = 1000.0
|
||||||
|
minHeight = 500.0
|
||||||
|
|
||||||
center = vbox(50) {
|
center = vbox(50) {
|
||||||
maxWidth = 150.0
|
maxWidth = 150.0
|
||||||
@ -36,35 +34,31 @@ class StartupView : View() {
|
|||||||
add(labelStatus)
|
add(labelStatus)
|
||||||
add(spinnerStatus)
|
add(spinnerStatus)
|
||||||
|
|
||||||
labelStatus.apply {
|
vbox(10) {
|
||||||
this.background = Background(BackgroundFill(Color.YELLOWGREEN, CornerRadii.EMPTY, Insets.EMPTY))
|
|
||||||
}
|
|
||||||
|
|
||||||
spinnerStatus.isVisible = false
|
|
||||||
|
|
||||||
vbox(10){
|
|
||||||
alignment = Pos.CENTER
|
alignment = Pos.CENTER
|
||||||
|
|
||||||
add(labelServerIP)
|
add(labelServerIP)
|
||||||
add(tfServerIP)
|
add(tfServerIP)
|
||||||
add(btnConnect)
|
add(btnConnect)
|
||||||
|
|
||||||
btnConnect.apply { action { svc.btnConnectAction(tfServerIP.text)} }
|
|
||||||
tfServerIP.setOnKeyPressed {
|
|
||||||
if (it.code == KeyCode.ENTER){
|
|
||||||
svc.btnConnectAction(tfServerIP.text)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
style {
|
style {
|
||||||
minWidth = 900.px
|
labelStatus.background = Background(BackgroundFill(Color.YELLOWGREEN, CornerRadii.EMPTY, Insets.EMPTY))
|
||||||
minHeight = 600.px
|
spinnerStatus.isVisible = false
|
||||||
|
}
|
||||||
|
|
||||||
|
btnConnect.setOnAction {
|
||||||
|
svc.btnConnectAction(tfServerIP.text)
|
||||||
|
}
|
||||||
|
|
||||||
|
tfServerIP.setOnKeyPressed {
|
||||||
|
if (it.code == KeyCode.ENTER) {
|
||||||
|
svc.btnConnectAction(tfServerIP.text)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user