Multiple changes in the ChipView will now work for the update to server
This commit is contained in:
parent
ee7fbae29c
commit
491578806e
|
@ -38,7 +38,7 @@ class RootController : Controller() {
|
|||
|
||||
private lateinit var con: Connection
|
||||
|
||||
private lateinit var selectedTexture: Texture
|
||||
private lateinit var selectedTextureModel: GUIModel
|
||||
|
||||
private var lastExportDir: String = System.getProperty("user.home")
|
||||
|
||||
|
@ -242,7 +242,6 @@ class RootController : Controller() {
|
|||
sdf.format(data.addedOn.time)
|
||||
)
|
||||
mvc.setTags(data.tags.toList().observable())
|
||||
selectedTexture = data
|
||||
mvc.setVisibleMetaTags(true)
|
||||
}
|
||||
|
||||
|
@ -253,12 +252,12 @@ class RootController : Controller() {
|
|||
fun deleteTexture(data: Texture) {
|
||||
val dialogDelete = JFXOkayCancelAlert(
|
||||
"Löschen",
|
||||
"Textur ${data.name} wirklich löschen?",
|
||||
"Textur ${selectedTextureModel.data.name} wirklich löschen?",
|
||||
"-fx-button-type: RAISED; -fx-background-color: #2b7bbb; -fx-text-fill: #000000;"
|
||||
)
|
||||
dialogDelete.okayAction = EventHandler {
|
||||
con.deleteTexture(data)
|
||||
mvc.removeTextureFromView(data)
|
||||
con.deleteTexture(selectedTextureModel.data)
|
||||
mvc.removeTextureFromView(selectedTextureModel.data)
|
||||
}
|
||||
dialogDelete.cancelAction = EventHandler {
|
||||
// Do nothing
|
||||
|
@ -274,20 +273,35 @@ class RootController : Controller() {
|
|||
val uuid = UUID.randomUUID()
|
||||
val newTexture = Texture(
|
||||
uuid,
|
||||
selectedTexture.name,
|
||||
selectedTextureModel.data.name,
|
||||
chips.toTypedArray(),
|
||||
selectedTexture.format,
|
||||
selectedTexture.resolution,
|
||||
selectedTexture.addedOn,
|
||||
selectedTexture.textureHash
|
||||
selectedTextureModel.data.format,
|
||||
selectedTextureModel.data.resolution,
|
||||
selectedTextureModel.data.addedOn,
|
||||
selectedTextureModel.data.textureHash
|
||||
)
|
||||
con.updateTexture(selectedTexture, newTexture, con.getTextureFile(selectedTexture.textureHash))
|
||||
try {
|
||||
con.updateTexture(selectedTextureModel.data, newTexture, con.getTextureFile(selectedTextureModel.data.textureHash))
|
||||
selectedTextureModel.setTexture(newTexture)
|
||||
selectedTextureModel.data = newTexture
|
||||
} catch (e: Exception) {
|
||||
println(e)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* show all available textures at start
|
||||
*/
|
||||
fun showAll() {
|
||||
private fun showAll() {
|
||||
queryElements(mvc.getTags())
|
||||
}
|
||||
|
||||
/**
|
||||
* set the last selected texture-GUIModell
|
||||
* @param model the last selected element
|
||||
*/
|
||||
fun setSelectedTexture(model: GUIModel){
|
||||
selectedTextureModel = model
|
||||
}
|
||||
|
||||
}
|
|
@ -13,7 +13,7 @@ enum class TextureFormat {
|
|||
data class Texture(
|
||||
val id : UUID,
|
||||
val name : String,
|
||||
val tags : Array<String>,
|
||||
var tags : Array<String>,
|
||||
val format : TextureFormat,
|
||||
val resolution : Pair<Int, Int>,
|
||||
val addedOn : Calendar,
|
||||
|
|
|
@ -22,9 +22,12 @@ class GUIModel constructor(var data: Texture, img: Image) : VBox(){
|
|||
private var exportItem = MenuItem("exportiern")
|
||||
private var deleteItem = MenuItem("löschen")
|
||||
|
||||
private lateinit var texture: Texture
|
||||
|
||||
private val gmc = find(GUIModelController::class)
|
||||
|
||||
init {
|
||||
texture = data
|
||||
super.setPadding(Insets(5.0, 5.0, 5.0, 5.0))
|
||||
super.getChildren().addAll(image, label)
|
||||
super.setOnContextMenuRequested { p0 -> contextMenu.show(this@GUIModel, p0.screenX, p0.screenY) }
|
||||
|
@ -38,6 +41,8 @@ class GUIModel constructor(var data: Texture, img: Image) : VBox(){
|
|||
gmc.lastSelected = this
|
||||
}
|
||||
gmc.previewSelectedAction(data)
|
||||
gmc.setSelected(this)
|
||||
|
||||
}
|
||||
|
||||
label.paddingTop = 5.0
|
||||
|
@ -62,4 +67,8 @@ class GUIModel constructor(var data: Texture, img: Image) : VBox(){
|
|||
contextMenu.items.add(deleteItem)
|
||||
}
|
||||
|
||||
fun setTexture(data: Texture){
|
||||
texture = data
|
||||
}
|
||||
|
||||
}
|
|
@ -3,7 +3,7 @@ package org.hso.texturesyncclient.model
|
|||
import org.hso.texturesyncclient.controller.RootController
|
||||
import tornadofx.Controller
|
||||
|
||||
class GUIModelController: Controller() {
|
||||
class GUIModelController : Controller() {
|
||||
|
||||
private val rootc = find(RootController::class)
|
||||
|
||||
|
@ -21,4 +21,8 @@ class GUIModelController: Controller() {
|
|||
fun previewSelectedAction(data: Texture) {
|
||||
rootc.showDetail(data)
|
||||
}
|
||||
|
||||
fun setSelected(model: GUIModel) {
|
||||
rootc.setSelectedTexture(model)
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue