ControlPanelController.kt
942 Bytes
package application.controller
import application.model.MessageListener
import application.model.Vessel
import application.model.observableMessages
import javafx.collections.FXCollections
import javafx.collections.ObservableList
import javafx.event.EventHandler
import javafx.fxml.FXML
import javafx.fxml.Initializable
import javafx.scene.control.Button
import javafx.scene.control.ListView
import java.net.URL
import java.util.*
class ControlPanelController : Initializable, MessageListener {
@FXML
var shipListView: ListView<Int> = ListView()
var shipList: ObservableList<Int> = FXCollections.observableArrayList()
override fun initialize(location: URL?, resources: ResourceBundle?) {
shipListView.items = shipList
observableMessages.listeners.add(this)
}
override fun onValueChanged(newValue: MutableMap<Int?, Vessel>) {
shipList.clear()
shipList.addAll(newValue.keys)
}
}