diff --git a/src/rekisteri/RalliGUIController.java b/src/rekisteri/RalliGUIController.java index ea959deab00e3c8c9cf28ec3439452fcb0aeb32a..4df5ecacc76d7532ed41db83a3f75c8c2b659cb6 100644 --- a/src/rekisteri/RalliGUIController.java +++ b/src/rekisteri/RalliGUIController.java @@ -11,6 +11,7 @@ import javafx.fxml.FXML; import javafx.fxml.Initializable; import javafx.scene.control.TextField; +import rekisteriJAVA.Rekisteri; @@ -23,46 +24,100 @@ import javafx.scene.control.TextField; public class RalliGUIController implements Initializable { @FXML private TextField textHaettava; //haettava aloitusikkunasta + @FXML private TextField textrajaus; - @FXML private void handleHae() { - hae(); - } + private String rekisterinNimi = "ralliAsia"; + @FXML private void handleHae() { hae(); } - @FXML private void handleLopeta() { - tallenna(); - Platform.exit(); - } + @FXML private void handleTarkasteluun() { tarkasteluun();} + + + /** + * Ajetaan, kun klikataan "Lisää uusi" + */ + @FXML private void handleUusi() { lisaaUusi();} - @FXML private void handleTarkasteluun() { - tarkasteluun(); + /** + * Ajetaan kun klikataan menusta "Tulosta" + */ + @FXML private void handleTulosta() { + //TulostusController.tulosta(null); } + /** + * Ajetaan, kun klikataan "Peruuta" näppäintä. Auki ollut ikkuna suljetaan eikä mahdollisia muutoksia tallenneta + */ + @FXML private void handlePeruuta() { peruuta();} + /** + * Ajetaan kun klikataan "Muokkaa". Avaa uuden ikkunan, missä valitun henkilön tai rallin tietoja voi muokata + */ + @FXML private void handleMuokkaa() { + ModalController.showModal(RalliGUIController.class.getResource("HenkiloDialogView.fxml"), "Henkilo", null, ""); + } - @FXML private void handleUusi() { - lisaaUusi(); + /** + * Ajetaan, kun klikataan "Poista henkilö" henkilön kohdalla + */ + @FXML private void handlePoistaHenkilo() { + Dialogs.showMessageDialog("Poistetaan henkilö, ei toimi vielä"); } - @FXML private void handlePeruuta() { - peruuta(); + /** + * Ajetaan, kun klikataan "Poista ralli" rallien kohdalla + */ + @FXML private void handlePoistaRalli() { + Dialogs.showMessageDialog("Poistetaan ralli, ei toimi vielä"); } - @FXML private void handleMuokkaa() { - muokkaa(); + /** + * Ajetaan, kun klikataan "Tallenna" + */ + @FXML private void handleTallenna() { tallenna();} + + + /** + * Ajetaan, kun klikataan "Poistu" näppäintä + */ + @FXML private void handlePoistu() { peruuta();} + + + /** + * Ajetaan, kun valitaan rajaus/hakuehto valikosta + */ + @FXML private void handleRajaus() { + Dialogs.showMessageDialog("Rajataan hakuehtoja, ei toimi"); + //String hakukentta = rajaus.getSelectedText(); //hakee rajauksen + //String ehto = hakuehto.getText(); //saadaan hakuehto tekstikentästä + // if(ehto.isEmpty() ) naytaVirhe(null); //miten toimitaan jos hakuehtoa ei määritelty + // else naytaVirhe("Ei osata vielä hakea " + hakukentta + ": " + ehto); //kun hakuehto määritellään } - @FXML private void handleTallenna() { - tallenna(); + /** + * Ajetaan, kun klikataan yläpalkista "Apua" + */ + @FXML private void handleApua() { + apua(); } + /** + * Ajetaan, kun klikataan menusta "Tiedot". Avaa uuden ikkunan, Tietoja.fxml tiedostosta + */ + @FXML private void handleTiedot() { + ModalController.showModal(RalliGUIController.class.getResource("Tietoja.fxml"), "Ralli", null, ""); + } - @FXML private void handlePoistu() { - peruuta(); + /** + * @return voiko sulkea + */ + @FXML public boolean voikoSulkea() { + tallenna(); + return true; } @@ -73,6 +128,12 @@ public class RalliGUIController implements Initializable { //========================================================== + private Rekisteri rekisteri; + + + private void alusta() { + //chooserHenkilot(); + } /** * */ @@ -87,6 +148,15 @@ public class RalliGUIController implements Initializable { public void lisaaUusi(){ Dialogs.showMessageDialog("Avataan uuden lisääminen, ei toimi vielä"); //ModalController.showModal(RalliGUIController.class.getResource("uusi.fxml"), "", null, ""); + //Henkilo uusi new Henkilo(); + //uusi.rekisteroi(); + //uusi.vastaaKalleRovanpera(); //täyttää kallerovanperä tiedoilla + //try { + // rekisteri.lisaa(uusi); + //} catch (SailoException e) { + // Dialogs.showMessageDialog("Ongelmia uuden luomisessa " + e.getMessage()); + //} + //hae(uusi.getTunnusNro()); } /** @@ -103,6 +173,13 @@ public class RalliGUIController implements Initializable { //String hakukenttaString = cbKentat.getSelectedText(); Dialogs.showMessageDialog("Haetaan, ei toimi vielä"); + + //chooserHenkilot.clear(); + //int index = 0; + } + + private void apua() { + Dialogs.showMessageDialog("Avaa Apua-ikkunan, ei toimi vielä"); } /** @@ -118,6 +195,16 @@ public class RalliGUIController implements Initializable { public void peruuta() { Dialogs.showMessageDialog("Palataan takaisin, ei toimi vielä"); } + + + + + public boolean avaa() { + //String uusiString = RekisterinNimiController.kysyNimi() + Dialogs.showMessageDialog("Avaa"); + } + + } \ No newline at end of file diff --git a/src/rekisteri/RalliMain.java b/src/rekisteri/RalliMain.java index 8a81ffe8b671c7bfefde521e45f9b5d1e814090f..40a13a42999fd002df37a6d3c4d635e062134246 100644 --- a/src/rekisteri/RalliMain.java +++ b/src/rekisteri/RalliMain.java @@ -1,6 +1,7 @@ package rekisteri; import javafx.application.Application; +import javafx.application.Platform; import javafx.stage.Stage; import javafx.scene.Scene; import javafx.scene.layout.BorderPane; @@ -18,18 +19,23 @@ public class RalliMain extends Application { public void start(Stage primaryStage) { try { - BorderPane root = (BorderPane)FXMLLoader.load(getClass().getResource("RalliGUIView.fxml")); + //BorderPane root = (BorderPane)FXMLLoader.load(getClass().getResource("tarkastele.fxml")); - //FXMLLoader ldr = new FXMLLoader(getClass().getResource("RalliGUIView.fxml")); - //final Pane root = ldr.load(); - //final RalliGUIController ralliCtrl = (RalliGUIController) ldr.getController(); + final FXMLLoader ldr = new FXMLLoader(getClass().getResource("tarkastele.fxml")); //määritellään mistä aloitetaan ja ladataan + final Pane root = (Pane)ldr.load(); + final RalliGUIController ralliCtrl = (RalliGUIController)ldr.getController(); //ladataan kontrolleri - Scene scene = new Scene(root); - scene.getStylesheets().add(getClass().getResource("ralli.css").toExternalForm()); + final Scene scene = new Scene(root); + scene.getStylesheets().add(getClass().getResource("ralli.css").toExternalForm()); //.css määrittely primaryStage.setScene(scene); primaryStage.setTitle("Ralli"); + + primaryStage.setOnCloseRequest((event) -> { + if ( !ralliCtrl.voikoSulkea() ) event.consume(); + }); + primaryStage.show(); - //ralliCtrl.jotain(getParameters()); ///KORJAA + if ( !ralliCtrl.avaa() ) Platform.exit(); } catch(Exception e) { e.printStackTrace(); } diff --git a/src/rekisteri/tarkastele.fxml b/src/rekisteri/tarkastele.fxml index 77cd650cc37edeca59871b86503bfb3d0d74a0d7..a43fff46238ca3cbee13d027687d2a1dd170c5d5 100644 --- a/src/rekisteri/tarkastele.fxml +++ b/src/rekisteri/tarkastele.fxml @@ -1,8 +1,8 @@ <?xml version="1.0" encoding="UTF-8"?> -<?import fi.jyu.mit.fxgui.ListChooser?> <?import javafx.geometry.Insets?> <?import javafx.scene.control.Button?> +<?import javafx.scene.control.ComboBox?> <?import javafx.scene.control.Label?> <?import javafx.scene.control.Menu?> <?import javafx.scene.control.MenuBar?> @@ -45,16 +45,17 @@ <Button mnemonicParsing="false" onAction="#handleUusi" text="Lisää uusi" /> <Button mnemonicParsing="false" onAction="#handleMuokkaa" text="Muokkaa tietoja" /> <Button mnemonicParsing="false" onAction="#handlePoistu" text="Takaisin" /> + <Button mnemonicParsing="false" onAction="#handlePoistu" text="Poistu" /> </children> </HBox> </bottom> <left> <BorderPane prefHeight="200.0" prefWidth="200.0" BorderPane.alignment="CENTER"> <top> - <Label text="Rallit" BorderPane.alignment="CENTER" /> + <Label text="Hakuehto" BorderPane.alignment="CENTER" /> </top> <center> - <ListChooser rivit="SM-Ralli Pohjanmaa TGS-Ralli Korpilahti Takomoralli" BorderPane.alignment="CENTER" /> + <ComboBox fx:id="rajaus" onAction="#handleRajaus" prefWidth="150.0" BorderPane.alignment="CENTER" /> </center> </BorderPane> </left> diff --git a/src/rekisteri/uusi.fxml b/src/rekisteri/uusi.fxml index b03238bf984e96f002f7243529831a399a6ae8a5..03ba2f89ef6c52bd0f6afe703519ce0d734f8fef 100644 --- a/src/rekisteri/uusi.fxml +++ b/src/rekisteri/uusi.fxml @@ -117,11 +117,11 @@ <content> <AnchorPane minHeight="0.0" minWidth="0.0" prefHeight="180.0" prefWidth="200.0"> <children> - <GridPane layoutX="278.0" layoutY="21.0" prefHeight="238.0" prefWidth="300.0"> + <GridPane layoutX="194.0" layoutY="21.0" prefHeight="238.0" prefWidth="384.0"> <columnConstraints> - <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" /> - <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" /> - <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" /> + <ColumnConstraints hgrow="SOMETIMES" maxWidth="123.199951171875" minWidth="10.0" prefWidth="84.0" /> + <ColumnConstraints hgrow="SOMETIMES" maxWidth="172.0" minWidth="10.0" prefWidth="151.20001220703125" /> + <ColumnConstraints hgrow="SOMETIMES" maxWidth="134.79998779296875" minWidth="10.0" prefWidth="134.79998779296875" /> </columnConstraints> <rowConstraints> <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" /> @@ -143,7 +143,7 @@ <Insets bottom="10.0" left="10.0" right="10.0" top="10.0" /> </GridPane.margin> </DatePicker> - <DatePicker GridPane.columnIndex="2" GridPane.rowIndex="2"> + <DatePicker prefHeight="26.0" prefWidth="128.0" GridPane.columnIndex="2" GridPane.rowIndex="2"> <GridPane.margin> <Insets bottom="10.0" left="10.0" right="10.0" top="10.0" /> </GridPane.margin> @@ -154,7 +154,7 @@ <TextField GridPane.columnIndex="2" GridPane.rowIndex="6" /> <Label text="Tuloslista" GridPane.columnIndex="1" GridPane.rowIndex="6" /> <Label text="Osallistujalista" GridPane.columnIndex="1" GridPane.rowIndex="5" /> - <Label text="Linkki tapahtuman sivuille" GridPane.columnIndex="1" GridPane.rowIndex="4" /> + <Label prefHeight="18.0" prefWidth="157.0" text="Linkki tapahtuman sivuille" GridPane.columnIndex="1" GridPane.rowIndex="4" /> <Label text="Järjestäjä" GridPane.columnIndex="1" GridPane.rowIndex="3" /> </children> </GridPane> diff --git a/src/rekisteriJAVA/Henkilo.java b/src/rekisteriJAVA/Henkilo.java new file mode 100644 index 0000000000000000000000000000000000000000..af40f804e869cbbfbfdbf61676b19933475233ae --- /dev/null +++ b/src/rekisteriJAVA/Henkilo.java @@ -0,0 +1,69 @@ +package rekisteriJAVA; + +import java.io.PrintStream; + + +/** + * + * @author idamk + * @version 22.2.2023 + * + */ +public class Henkilo { + + private int tunnusNro = 0; + private String nimi = ""; + private String syntymaAika = ""; // vai int? + private int tehtava = 0; + private String kotiKunta = ""; + private String seura = ""; + + + /** + * Oletusmuodostaja, asettaa henkilon tiedot tyhjäksi + */ + public Henkilo() { + // ei tarvitse oletusmuodostajaa + } + + /** + * Tulostaa tietovirran, nyt "Kalle" + * @param out Kalle + */ + public void tulosta(PrintStream out) { + out.println(String.format("%03d", tunnusNro) + " " + nimi); + out.println(syntymaAika + " " + kotiKunta); + out.println(tehtava + " " + seura); + } + + /** + * @param args ei käytössä + */ + public static void main(String[] args) { //ei kuuluisi olla kuin yksi kpl ohjelmassa, ajaessa kerrotaan mikä main ajetaan + Henkilo kalle = new Henkilo(); //luo uuden jäsenen + //Henkilo kalle2 = new Henkilo(); + + //kalle.rekisteroi(); //antaa numeron + //kalle2.rekisteroi(); + + kalle.tulosta(System.out); //tulostaa näkyville, muttei shelliin + //kalle2.tulosta(System.out); + + //kalle.vastaaKalleRovanpera(); //täyttää lomakkeen valmiiksi + //kalle2.vastaaKalleRovanpera(); + + //kalle.tulosta(System.out); + //kalle2.tulosta(System.out); + + } + + + + /** + * + */ + public void vastaaKalleRovanpera() { + // + } + +} diff --git a/src/rekisteriJAVA/Henkilot.java b/src/rekisteriJAVA/Henkilot.java new file mode 100644 index 0000000000000000000000000000000000000000..cba31ee1dd8b37833f45b556dce6ed7dda15f9e9 --- /dev/null +++ b/src/rekisteriJAVA/Henkilot.java @@ -0,0 +1,5 @@ +package rekisteriJAVA; + +public class Henkilot { + +} diff --git a/src/rekisteriJAVA/Rekisteri.java b/src/rekisteriJAVA/Rekisteri.java new file mode 100644 index 0000000000000000000000000000000000000000..aa9448e8ba2eeaefeebd1ec72fd729e4535950d0 --- /dev/null +++ b/src/rekisteriJAVA/Rekisteri.java @@ -0,0 +1,31 @@ +package rekisteriJAVA; + +public class Rekisteri { + + Henkilot henkilot = new Henkilot(); + + + /**¨Lisätään uusi jäsen + * + * @param args + */ + public void lisaa(Henkilo henkilo) { + henkilot.lisaa(henkilo); + } + + public int getHenkiloita() { + return henkilot.getLkm(); + } + + //CRC-sisällöt tähän + + public static void main(String[] args) { + // TODO Auto-generated method stub + + Rekisteri rekisteri = new Rekisteri(); + + Henkilo henkilo1 = new Henkilo(); + Henkilo henkilo2 = new Henkilo(); + } + +}