package ee.tkasekamp.vickywaranalyzer.controller.tab;
import ee.tkasekamp.vickywaranalyzer.controller.MainController;
import ee.tkasekamp.vickywaranalyzer.controller.box.BattleCountryBox;
import ee.tkasekamp.vickywaranalyzer.core.Battle;
import ee.tkasekamp.vickywaranalyzer.service.ModelService;
import javafx.fxml.FXML;
import javafx.scene.control.Label;
import javafx.scene.control.Tab;
public class BattleController extends AbstractController {
@FXML
private Label battleName;
@FXML
private Label battleType;
@FXML
private Label battleResult;
@FXML
private Label battleLocation;
@FXML
private Label battleDate;
@FXML
private Label battleTotalLosses;
@FXML
private BattleCountryBox attackerBoxController;
@FXML
private BattleCountryBox defenderBoxController;
private MainController main;
private Tab tab;
private ModelService modelService;
public void init(MainController mainController, ModelService modelService,
Tab tab) {
main = mainController;
this.tab = tab;
this.modelService = modelService;
attackerBoxController.init(modelService, "Attacker");
defenderBoxController.init(modelService, "Defender");
}
@Override
public void reset() {
tab.setDisable(true);
tab.setText("Battle");
}
public void populate(Battle battle) {
tab.setDisable(false);
tab.setText("Battle of " + battle.getName());
battleName.setText("Battle of " + battle.getName());
battleDate.setText(battle.getDate());
battleType.setText(battle.getBattleType().toString());
battleLocation.setText(Integer.toString(battle.getLocation()));
battleResult.setText(battle.getRes().toString());
battleTotalLosses.setText(Integer.toString(battle.getTotalLosses()));
attackerBoxController.populate(battle);
defenderBoxController.populate(battle);
}
}