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)
    }

}