Logo fix +

lang.ini fix+
alert fix
This commit is contained in:
Georg Reisinger 2021-03-18 23:38:52 +01:00
parent c31728a92b
commit 5d860eed3c
7 changed files with 67 additions and 34 deletions

View File

@ -1,5 +1,7 @@
[start]
message = Tour Planer App gestartet
apptitle = Tour Planer
logo = logo.png
[lang]
lang = langde

View File

@ -30,4 +30,7 @@ dauermsg = Dauer des Logeintrages
doppelpunkt = :
fktnichtimplementiert = Diese Funktion ist noch nicht Implementiert
vergessenodernochnichtsoweit = Entweder hat DerGeorg darauf vergessen oder ist noch nicht so weit gekommen um das zu machen!
logtournotselectedmsg = Bitte wählen Sie zuerst eine Tour aus, bevor sie einen log Eintrag erstellen!
logtournotselectedmsg = Bitte wählen Sie zuerst eine Tour aus, bevor sie einen log Eintrag erstellen!
keintextimfeld = Bitte tragen Sie einen Text in das Feld ein!
nurzahlen = Bitte geben Sie nur Zahlen an!
nurpositivezahlen = Bitte geben Sie nur positive Zahlen an!

View File

@ -6,3 +6,5 @@
2021-03-18 22:58:33 ERROR ViewModel -> DelTour:33 - Keine Tour ausgewählt!
2021-03-18 22:58:34 ERROR ViewModel -> DelTour:33 - Keine Tour ausgewählt!
2021-03-18 23:05:00 ERROR ViewModel -> DelTour:33 - Keine Tour ausgewählt!
2021-03-18 23:11:45 ERROR ViewModel -> DelTour:33 - Keine Tour ausgewählt!
2021-03-18 23:14:55 ERROR ViewModel -> DelTour:33 - Keine Tour ausgewählt!

BIN
logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 266 KiB

View File

@ -4,6 +4,7 @@ import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.scene.image.Image;
import javafx.stage.Stage;
import tourplaner.business.ConfigHelper;
@ -21,6 +22,7 @@ public class Main extends Application {
public void start(Stage primaryStage) throws IOException {
Parent root = FXMLLoader.load(Main.class.getResource("tourplaner.fxml"));
primaryStage.setTitle(ConfigHelper.getIniString(ConfigHelper.getStandartConfig(), "start", "apptitle"));
primaryStage.getIcons().add(new Image("file:"+ ConfigHelper.getIniString(ConfigHelper.getStandartConfig(), "start", "logo")));
primaryStage.setScene(new Scene(root, 600, 600));
primaryStage.show();
}

View File

@ -4,6 +4,7 @@ import javafx.scene.Scene;
import javafx.scene.control.*;
import javafx.scene.control.Label;
import javafx.scene.control.TextArea;
import javafx.scene.image.Image;
import javafx.scene.layout.*;
import javafx.scene.text.Text;
import javafx.stage.Stage;
@ -100,7 +101,9 @@ public class AlertHelper {
alert.setTitle(title);
alert.setHeaderText(header);
alert.setContentText(msg);
Stage stage = (Stage) alert.getDialogPane().getScene().getWindow();
stage.getIcons().add(
new Image("file:"+ ConfigHelper.getIniString(ConfigHelper.getStandartConfig(), "start", "logo")));
alert.showAndWait();
}
@ -112,18 +115,39 @@ public class AlertHelper {
* @return Null bei keiner eingabe
*/
public static String inputText(String title, String header, String msg) {
String returnStr = "";
while (returnStr.isEmpty()) {
Optional<String> result = inputHelper(title, header, msg);
AtomicReference<String> returnText = new AtomicReference<>("");
result.ifPresent(returnText::set);
returnStr = returnText.get();
if (returnStr.isEmpty()) {
AlertHelper.warn(ConfigHelper.getLangIniString("tournametitle"),
ConfigHelper.getLangIniString("achtung"),
ConfigHelper.getLangIniString("keintextimfeld"));
}
}
return returnStr;
}
/**
* Erstellt einen Text Input Dialog
* @param title Title des Dialogs
* @param header Header des Dialogs
* @param msg Nachricht des Dialogs
* @return Result des Inputs
*/
private static Optional<String> inputHelper(String title, String header, String msg){
TextInputDialog dialog = new TextInputDialog();
dialog.setTitle(title);
dialog.setHeaderText(header);
dialog.setContentText(msg);
Optional<String> result = dialog.showAndWait();
AtomicReference<String> returnText = new AtomicReference<>("");
result.ifPresent(returnText::set);
if(!returnText.get().isEmpty()){
return returnText.get();
}else{
return null;
}
Stage stage = (Stage) dialog.getDialogPane().getScene().getWindow();
stage.getIcons().add(
new Image("file:"+ ConfigHelper.getIniString(ConfigHelper.getStandartConfig(), "start", "logo")));
return dialog.showAndWait();
}
/**
@ -134,23 +158,27 @@ public class AlertHelper {
* @return -1 bei error sonst ein Int
*/
public static int inputNumber(String title, String header, String msg) {
TextInputDialog dialog = new TextInputDialog();
dialog.setTitle(title);
dialog.setHeaderText(header);
dialog.setContentText(msg);
Optional<String> result = dialog.showAndWait();
AtomicReference<Integer> returnText = new AtomicReference<Integer>(-1);
result.ifPresent(s -> {
try {
int resultInt = Integer.parseInt(result.get());
returnText.set(resultInt);
}catch (NumberFormatException e){
AlertHelper.warn(ConfigHelper.getLangIniString("achtung"), "Bitte nur Zahlen eingeben!", "Bitte geben sie nur Zahlen von 0 - 10 an!");
returnText.set(-1);
}
});
int returnInt = -2;
while (returnInt <= 0 ) {
Optional<String> result = inputHelper(title, header, msg);
AtomicReference<Integer> returnText = new AtomicReference<Integer>(-1);
result.ifPresent(s -> {
try {
int resultInt = Integer.parseInt(result.get());
returnText.set(resultInt);
if (resultInt < 0){
AlertHelper.warn(title, ConfigHelper.getLangIniString("achtung"), ConfigHelper.getLangIniString("nurpositivezahlen"));
}
} catch (NumberFormatException e) {
AlertHelper.warn(title, ConfigHelper.getLangIniString("achtung"), ConfigHelper.getLangIniString("nurzahlen"));
returnText.set(-1);
}
return returnText.get();
});
returnInt = returnText.get();
}
return returnInt;
}
/**
@ -161,6 +189,8 @@ public class AlertHelper {
public static LocalDate datePicker(String title){
final DatePicker datePicker = new DatePicker(LocalDate.now());
final Stage stage = new Stage();
stage.getIcons().add(
new Image("file:"+ ConfigHelper.getIniString(ConfigHelper.getStandartConfig(), "start", "logo")));
AtomicReference<LocalDate> selectedDate = new AtomicReference<>();
datePicker.setOnAction(event -> {
LocalDate date = datePicker.getValue();

View File

@ -182,24 +182,18 @@ public class TourplanerController implements Initializable {
newId.set(UUID.randomUUID().toString());
}
});
double neueDauer = -1;
double neueStrecke = -1;
LocalDate neuesDatum = null;
while (neuesDatum == null) {
neuesDatum = AlertHelper.datePicker(ConfigHelper.getLangIniString("datum"));
}
while (neueDauer == -1) {
neueDauer = AlertHelper.inputNumber(ConfigHelper.getLangIniString("dauer"),
double neueDauer = AlertHelper.inputNumber(ConfigHelper.getLangIniString("dauer"),
ConfigHelper.getLangIniString("dauermsg"),
ConfigHelper.getLangIniString("dauer") +
ConfigHelper.getLangIniString("doppelpunkt"));
}
while (neueStrecke == -1) {
neueStrecke = AlertHelper.inputNumber(ConfigHelper.getLangIniString("strecke"),
double neueStrecke = AlertHelper.inputNumber(ConfigHelper.getLangIniString("strecke"),
ConfigHelper.getLangIniString("streckemsg"),
ConfigHelper.getLangIniString("strecke") +
ConfigHelper.getLangIniString("doppelpunkt"));
}
Log newLog = new Log(newId.get(), neueDauer + "", neuesDatum, neueStrecke);
logData.add(newLog);