package HT.fx; import fi.jyu.mit.fxgui.Dialogs; import fi.jyu.mit.fxgui.ModalController; import fi.jyu.mit.fxgui.ModalControllerInterface; import javafx.event.ActionEvent; import javafx.event.EventHandler; import javafx.fxml.FXML; import javafx.scene.Node; import javafx.scene.control.Button; import javafx.scene.control.TextField; import javafx.scene.input.MouseEvent; import javafx.scene.layout.VBox; import javafx.stage.Stage; /** * @author joonatan, tuomas * @version 13.3.2024 * */ public class OtteluIkkunaGUIController implements ModalControllerInterface<String> { @FXML private VBox Joukkue1VBox; @FXML private VBox Joukkue2VBox; @FXML private VBox MuokkaaVBox; @FXML private VBox TulosVBox; @FXML private void lisaatekstikentta(VBox boksi) { TextField newField = new TextField(); boksi.getChildren().add(newField); } @FXML private void lisaaNappi(VBox boksi) { Button uusiNappi = new Button("Muokkaa"); uusiNappi.setOnMouseClicked(new EventHandler<MouseEvent>() { @Override public void handle(MouseEvent arg0) { int i = boksi.getChildren().indexOf(uusiNappi); muokkaaOttelu(null, "kanat", i); } }); boksi.getChildren().add(uusiNappi); } @FXML void handleLisaaOttelu() { lisaakentat(); LisaaOttelu(null, "kanat"); SyotaTulos(); } //===================================== public static String LisaaOttelu(Stage modalityStage, String oletus) { return ModalController.showModal( PadelLisaaOtteluGUIController.class.getResource("PadelLisaaOtteluGUIView.fxml"), "Lisää ottelu", modalityStage, oletus); } public static String muokkaaOttelu(Stage modalityStage, String oletus, int i) { return ModalController.showModal( PadelLisaaOtteluGUIController.class.getResource("PadelLisaaOtteluGUIView.fxml"), "Lisää ottelu", modalityStage, oletus); } public void lisaakentat() { lisaatekstikentta(Joukkue1VBox); lisaatekstikentta(Joukkue2VBox); lisaaNappi(MuokkaaVBox); lisaatekstikentta(TulosVBox); } public void SyotaTulos() { int i = 0; Ottelu ottelu = PadelMainGUIController.getKarkelo().noudaOttelu(i); int[] numerot = ottelu.getPelaajaNrot(); for (Node lapsi : Joukkue1VBox.getChildren()) { if (lapsi instanceof TextField) { TextField tf = (TextField) lapsi; tf.setText(haePelaaja(numerot[0]) + ", " + haePelaaja(numerot[1])); i++; } } for (Node lapsi : TulosVBox.getChildren()) { if (lapsi instanceof TextField) { TextField tf = (TextField) lapsi; tf.setText(ottelu.getLopputulos()); } } for (Node lapsi : Joukkue2VBox.getChildren()) { if (lapsi instanceof TextField) { TextField tf = (TextField) lapsi; tf.setText(haePelaaja(numerot[2]) + ", " + haePelaaja(numerot[3])); } } } public String haePelaaja(int i) { return PadelMainGUIController.getKarkelo().annaPelaaja(i).getNimi(); } @Override public String getResult() { // TODO Auto-generated method stub return null; } @Override public void handleShown() { // TODO Auto-generated method stub } @Override public void setDefault(String arg0) { // TODO Auto-generated method stub } }