#fix 19 TabPohja on nyt Tab, joka hoitaa monia asioita kuin itsestään

Signed-off-by: laurimaaninka <lauri.maaninka@gmail.com>
This commit is contained in:
2026-05-14 23:24:22 +03:00
parent 1b589d0fb5
commit 342f62dedd
11 changed files with 175 additions and 163 deletions
+21 -38
View File
@@ -2,11 +2,10 @@ package fi.lpam;
import fi.lpam.dataluokat.Tietokanta;
import fi.lpam.gui.*;
import fi.lpam.gui.elementit.MuutosIlmoitus;
import fi.lpam.gui.elementit.TabPohja;
import javafx.application.Application;
import javafx.geometry.Side;
import javafx.scene.Scene;
import javafx.scene.control.Alert;
import javafx.scene.control.Tab;
import javafx.scene.control.TabPane;
import javafx.scene.image.Image;
import javafx.stage.Stage;
@@ -15,6 +14,8 @@ import java.util.Objects;
@SuppressWarnings("InstantiationOfUtilityClass")
public class App extends Application {
TabPohja asiakasHallinta, kierrostenHallinta, kuljetusListat, kuljetetut, asetukset;
static void main() {
launch();
}
@@ -23,41 +24,6 @@ public class App extends Application {
public void start(Stage primaryStage) {
new Tietokanta(Main.dev);
TabPane root = new TabPane();
root.setSide(Side.LEFT);
root.setTabMinWidth(50);
root.setTabMinHeight(Double.parseDouble(Main.properties.getProperty("buttonFonttiKoko"))*2);
root.setTabMaxHeight(Double.parseDouble(Main.properties.getProperty("buttonFonttiKoko"))*2);
Tab asiakasHallinta, kierrostenHallinta, kuljetusListat, kuljetetut, asetukset;
asiakasHallinta = new Tab("Asiakashallinta", new Asiakashallinta());
kierrostenHallinta = new Tab("Kierrostenhallinta");
kuljetusListat = new Tab("Kuljetuslistat");
kuljetetut = new Tab("Kuljetetut");
asetukset = new Tab("Asetukset");
root.getTabs().addAll(asiakasHallinta, kierrostenHallinta, kuljetusListat, kuljetetut, asetukset);
root.getSelectionModel().selectedItemProperty().addListener((_, _, newValue) -> {
switch (newValue.getText()) {
case "Asiakashallinta": newValue.setContent(new Asiakashallinta()); break;
case "Kierrostenhallinta": newValue.setContent(new Kierroshallinta()); break;
case "Kuljetuslistat": newValue.setContent(new KuljetusListat()); break;
case "Kuljetetut": newValue.setContent(new KuljetusRaportit()); break;
case "Asetukset": newValue.setContent(new Asetukset()); break;
}
});
for (Tab tab : root.getTabs()) {
tab.setClosable(false);
tab.setStyle(
"-fx-font-size: " + Main.properties.getProperty("buttonFonttiKoko") + "px;" +
" -fx-font-weight: bold;" +
" -fx-font-family: " + Main.properties.getProperty("buttonFontti"));
}
Scene scene = new Scene(root);
primaryStage.setScene(scene);
StringBuilder title = new StringBuilder();
title.append("Ruokamanageri");
title.append(" v").append(Main.properties.getProperty("version"));
@@ -65,9 +31,26 @@ public class App extends Application {
primaryStage.setTitle(title.toString());
primaryStage.setMaximized(true);
primaryStage.show();
primaryStage.getIcons().add(new Image(Objects.requireNonNull(Main.class.getClassLoader().getResourceAsStream("kuljetusruokalaatikko.jpg"))));
TabPane tabPane = new TabPane();
tabPane.setSide(Side.LEFT);
tabPane.setTabMinWidth(50);
tabPane.setTabMinHeight(Double.parseDouble(Main.properties.getProperty("buttonFonttiKoko"))*2);
tabPane.setTabMaxHeight(Double.parseDouble(Main.properties.getProperty("buttonFonttiKoko"))*2);
asiakasHallinta = new Asiakashallinta();
kierrostenHallinta = new Kierroshallinta();
kuljetusListat = new KuljetusListat();
kuljetetut = new KuljetusRaportit();
asetukset = new Asetukset();
tabPane.getTabs().addAll(asiakasHallinta, kierrostenHallinta, kuljetusListat, kuljetetut, asetukset);
Scene scene = new Scene(tabPane);
primaryStage.setScene(scene);
primaryStage.show();
if (!Main.properties.getProperty("version").equals(Main.properties.getProperty("viimeisinVersio", "0.0.0"))) new MuutosIlmoitus();
}
}