added ipv4 validation in startupview
This commit is contained in:
parent
5976e16f0d
commit
de34fc5531
@ -1,5 +1,6 @@
|
|||||||
package org.hso.texturesyncclient.view.startupView
|
package org.hso.texturesyncclient.view.startupView
|
||||||
|
|
||||||
|
import com.jfoenix.animation.alert.CenterTransition
|
||||||
import com.jfoenix.controls.JFXButton
|
import com.jfoenix.controls.JFXButton
|
||||||
import com.jfoenix.controls.JFXSpinner
|
import com.jfoenix.controls.JFXSpinner
|
||||||
import com.jfoenix.controls.JFXTextField
|
import com.jfoenix.controls.JFXTextField
|
||||||
@ -40,6 +41,9 @@ class StartupView : View() {
|
|||||||
add(labelServerIP)
|
add(labelServerIP)
|
||||||
add(tfServerIP)
|
add(tfServerIP)
|
||||||
add(btnConnect)
|
add(btnConnect)
|
||||||
|
|
||||||
|
// tfServerIP.style { alignment=Center} TODO
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -50,12 +54,17 @@ class StartupView : View() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
btnConnect.setOnAction {
|
btnConnect.setOnAction {
|
||||||
|
spinnerStatus.isVisible = true
|
||||||
svc.btnConnectAction(tfServerIP.text)
|
svc.btnConnectAction(tfServerIP.text)
|
||||||
|
spinnerStatus.isVisible = false
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
tfServerIP.setOnKeyPressed {
|
tfServerIP.setOnKeyPressed {
|
||||||
if (it.code == KeyCode.ENTER) {
|
if (it.code == KeyCode.ENTER) {
|
||||||
|
spinnerStatus.isVisible = true
|
||||||
svc.btnConnectAction(tfServerIP.text)
|
svc.btnConnectAction(tfServerIP.text)
|
||||||
|
spinnerStatus.isVisible = false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,25 +1,23 @@
|
|||||||
package org.hso.texturesyncclient.view.startupView
|
package org.hso.texturesyncclient.view.startupView
|
||||||
|
|
||||||
import tornadofx.Controller
|
import tornadofx.Controller
|
||||||
|
import com.sun.org.apache.xalan.internal.xsltc.compiler.sym.PATTERN
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class StartupViewController : Controller() {
|
class StartupViewController : Controller() {
|
||||||
|
|
||||||
fun btnConnectAction(txt:String){
|
fun btnConnectAction(txt:String){
|
||||||
println("Connect BTN: $txt")
|
println("Connect BTN: $txt")
|
||||||
//TODO check IP4
|
|
||||||
|
|
||||||
spinnterStart()
|
if (validateIPv4(txt)){
|
||||||
|
println("valid ipv4")
|
||||||
|
//TODO connect to server ...
|
||||||
|
}else{
|
||||||
|
println("invalid ipv4")
|
||||||
|
//TODO show error
|
||||||
}
|
}
|
||||||
|
|
||||||
fun spinnterStart(){
|
|
||||||
val startupView = find(StartupView::class)
|
|
||||||
startupView.spinnerStatus.isVisible = true
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
fun spinnerStop(){
|
|
||||||
val startupView = find(StartupView::class)
|
|
||||||
startupView.spinnerStatus.isVisible = false
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fun labelStatusSetText (txt:String){
|
fun labelStatusSetText (txt:String){
|
||||||
@ -27,4 +25,11 @@ class StartupViewController : Controller() {
|
|||||||
startupView.labelStatus.text = txt
|
startupView.labelStatus.text = txt
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun validateIPv4(ip: String): Boolean {
|
||||||
|
val regex = Regex(pattern = "^(([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.){3}([01]?\\d\\d?|2[0-4]\\d|25[0-5])\$")
|
||||||
|
return regex.containsMatchIn(input = ip) // matched: true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user