[Editor] Simplify temporary MainView code

This commit is contained in:
2021-02-06 11:08:31 +01:00
parent 9c1373434e
commit f6fcfdbd81
2 changed files with 9 additions and 39 deletions

View File

@@ -1,22 +1,14 @@
package com.bartlomiejpluta.base.editor.controller.map
import com.bartlomiejpluta.base.editor.command.service.UndoRedoService
import com.bartlomiejpluta.base.editor.controller.tileset.TileSetController
import com.bartlomiejpluta.base.editor.model.map.map.GameMap
import com.bartlomiejpluta.base.editor.model.tileset.TileSet
import org.springframework.stereotype.Component
import tornadofx.Controller
@Component
class MapController : Controller() {
private val undoRedoService: UndoRedoService by inject()
private val tileSetController: TileSetController by inject()
private val map1 = GameMap(tileSetController.tileset, 20, 20)
private val map2 = GameMap(tileSetController.tileset, 50, 50)
fun getMap(id: Int) = when (id) {
1 -> map1
else -> map2
}
fun createMap(tileSet: TileSet, rows: Int, columns: Int) = GameMap(tileSet, rows, columns)
}

View File

@@ -1,52 +1,30 @@
package com.bartlomiejpluta.base.editor.view.main
import com.bartlomiejpluta.base.editor.command.context.UndoableScope
import com.bartlomiejpluta.base.editor.command.service.UndoRedoService
import com.bartlomiejpluta.base.editor.controller.map.MapController
import com.bartlomiejpluta.base.editor.event.RedrawMapRequestEvent
import com.bartlomiejpluta.base.editor.controller.tileset.TileSetController
import com.bartlomiejpluta.base.editor.view.map.MapFragment
import javafx.scene.control.TabPane
import org.kordamp.ikonli.javafx.FontIcon
import tornadofx.*
class MainView : View() {
private val undoRedoService: UndoRedoService by di()
private val mapController: MapController by di()
private val tileSetController: TileSetController by di()
private val tabPane = TabPane()
override val root = borderpane {
top = hbox {
button("Map 1") {
top = toolbar {
button(graphic = FontIcon("fa-file-o")) {
action {
val map = mapController.getMap(1)
val tileSet = tileSetController.tileset
val map = mapController.createMap(tileSet, 25, 25)
tabPane += find<MapFragment>(UndoableScope(), MapFragment::map to map).apply {
title = "Map 1"
}
}
}
button("Map 2") {
action {
val map = mapController.getMap(2)
tabPane += find<MapFragment>(UndoableScope(), MapFragment::map to map).apply {
title = "Map 2"
}
}
}
button("Undo") {
action {
undoRedoService.undo()
fire(RedrawMapRequestEvent)
}
}
button("Redo") {
action {
undoRedoService.redo()
fire(RedrawMapRequestEvent)
}
}
}
center = tabPane