From 604b9559c487f2ce5a21dc31457fdc643909600c Mon Sep 17 00:00:00 2001 From: Stephan Richter Date: Fri, 11 Dec 2020 02:10:16 +0100 Subject: [PATCH] bugfix --- pom.xml | 2 +- resources/translations/Application.de.translation | 5 ++++- .../de/srsoftware/web4rail/actions/SetRelay.java | 13 ++++++++++++- .../java/de/srsoftware/web4rail/tiles/Relay.java | 8 ++++---- 4 files changed, 21 insertions(+), 7 deletions(-) diff --git a/pom.xml b/pom.xml index 4ee5967..e0a49c3 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ 4.0.0 de.srsoftware web4rail - 1.2.43 + 1.2.44 Web4Rail jar Java Model Railway Control diff --git a/resources/translations/Application.de.translation b/resources/translations/Application.de.translation index 4c4660b..ff8fd1d 100644 --- a/resources/translations/Application.de.translation +++ b/resources/translations/Application.de.translation @@ -12,7 +12,7 @@ add car\: : Waggon hinzufügen: Add condition : Bedingung hinzufügen add locomotive\: : Lok hinzufügen: add new car : neuen Waggon anlegen -Add new custom field : neues benutzerdefinierted Feld hinzufügen +Add new custom field : neues benutzerdefiniertes Feld hinzufügen add new locomotive : neue Lok anlegen add new train : neuen Zug anlegen Add tile : Kachel hinzufügen @@ -114,6 +114,7 @@ inverted : invertiert known cars : bekannte Waggons known locomotives : bekannte Lokomotiven known trains : bekannte Züge +Label for state {} : Beschriftung für Status {} learn : lernen LEFT : links Left port\: : Port für links @@ -157,6 +158,7 @@ other train properties : andere Zug-Eigenschaften Origin and destination : Start und Ziel Origin\: {} to {} : Start: {} nach {} Plan saved as "{}". : Plan als „{}“ gespeichert. +Port for state {} : Anschluss für Status {} PreserveRoute : Anschlußroute vorwählen Properties : Eigenschaften Properties of {} : Eigenschaften von {} @@ -183,6 +185,7 @@ Select contact\: : Kotakt auswählen: Select display : Anzeige auswählen Select from plan : Auf Plan auswählen Select relay\: : Relais auswählen: +Select state : Status auswählen Select train : Zug auswählen Select turnout : Weiche wählen SendCommand : Kommando senden diff --git a/src/main/java/de/srsoftware/web4rail/actions/SetRelay.java b/src/main/java/de/srsoftware/web4rail/actions/SetRelay.java index bdf5f8e..eeb1a1c 100644 --- a/src/main/java/de/srsoftware/web4rail/actions/SetRelay.java +++ b/src/main/java/de/srsoftware/web4rail/actions/SetRelay.java @@ -40,7 +40,18 @@ public class SetRelay extends Action { @Override public Action load(JSONObject json) { super.load(json); - if (json.has(RELAY)) relay = BaseClass.get(new Id(json.getString(RELAY))); + if (json.has(RELAY)) { + String relayId = json.getString(RELAY); + relay = BaseClass.get(new Id(relayId)); + if (isNull(relay)) new Thread() { // if relay not loaded, yet: wait one sec and try again + public void run() { + try { + sleep(1000); + } catch (InterruptedException e) {} + relay = BaseClass.get(new Id(relayId)); + }; + }.start(); + } if (json.has(Relay.STATE)) state = json.getBoolean(Relay.STATE); return this; } diff --git a/src/main/java/de/srsoftware/web4rail/tiles/Relay.java b/src/main/java/de/srsoftware/web4rail/tiles/Relay.java index a1a5037..59bc595 100644 --- a/src/main/java/de/srsoftware/web4rail/tiles/Relay.java +++ b/src/main/java/de/srsoftware/web4rail/tiles/Relay.java @@ -137,10 +137,10 @@ public class Relay extends Tile implements Device{ } formInputs.add(t("Decoder address"),div); formInputs.add(t("Address"),new Input(ADDRESS, address).numeric()); - formInputs.add(t("Port for state A"),new Input(PORT_A, portA).numeric()); - formInputs.add(t("Label for state A"),new Input(LABEL_A, stateLabelA)); - formInputs.add(t("Port for state B"),new Input(PORT_B, portB).numeric()); - formInputs.add(t("Label for state B"),new Input(LABEL_B, stateLabelB)); + formInputs.add(t("Label for state {}","A"),new Input(LABEL_A, stateLabelA)); + formInputs.add(t("Label for state {}","B"),new Input(LABEL_B, stateLabelB)); + formInputs.add(t("Port for state {}",stateLabelA),new Input(PORT_A, portA).numeric()); + formInputs.add(t("Port for state {}",stateLabelB),new Input(PORT_B, portB).numeric()); return super.properties(preForm, formInputs, postForm); }