bugfix + unified link code

This commit is contained in:
Stephan Richter
2020-11-06 00:46:22 +01:00
parent e1d3384110
commit ead5a45d2e
18 changed files with 64 additions and 65 deletions

View File

@@ -10,8 +10,8 @@ import org.json.JSONObject;
import de.srsoftware.tools.Tag;
import de.srsoftware.web4rail.Connector;
import de.srsoftware.web4rail.moving.Train;
import de.srsoftware.web4rail.tags.Button;
import de.srsoftware.web4rail.tags.Checkbox;
import de.srsoftware.web4rail.tags.Form;
import de.srsoftware.web4rail.tags.Input;
import de.srsoftware.web4rail.tags.Label;
import de.srsoftware.web4rail.tags.Select;
@@ -51,8 +51,8 @@ public abstract class Block extends StretchableTile{
}
@Override
public Tag propForm(String id) {
Tag form = super.propForm(id);
public Form propForm(String id) {
Form form = super.propForm(id);
new Tag("h4").content(t("Block properties")).addTo(form);
new Input(NAME, name).addTo(new Label(t("name:")+NBSP)).addTo(new Tag("p")).addTo(form);
@@ -64,20 +64,7 @@ public abstract class Block extends StretchableTile{
return form;
}
@Override
public Tag propMenu() {
Tag window = super.propMenu();
if (isSet(train)) {
window.children().insertElementAt(new Button(t("stop"),"train("+train.id+",'"+ACTION_STOP+"')"), 1);
window.children().insertElementAt(new Button(t("start"),"train("+train.id+",'"+ACTION_START+"')"), 1);
window.children().insertElementAt(train.link("span"), 1);
window.children().insertElementAt(new Tag("h4").content(t("Train:")), 1);
}
return window;
}
public abstract List<Connector> startPoints();
@Override
@@ -111,8 +98,8 @@ public abstract class Block extends StretchableTile{
} else {
Train newTrain = Train.get(trainId);
if (isSet(newTrain) && newTrain != train) {
newTrain.set(this);
newTrain.dropTrace();
newTrain.set(this);
}
}
}

View File

@@ -8,6 +8,7 @@ import org.json.JSONObject;
import de.srsoftware.tools.Tag;
import de.srsoftware.web4rail.tags.Button;
import de.srsoftware.web4rail.tags.Form;
import de.srsoftware.web4rail.tags.Input;
import de.srsoftware.web4rail.tags.Label;
@@ -105,8 +106,8 @@ public abstract class Contact extends Tile{
@Override
public Tag propForm(String formId) {
Tag form = super.propForm(formId);
public Form propForm(String formId) {
Form form = super.propForm(formId);
new Tag("h4").content(t("Hardware settings")).addTo(form);
Tag label = new Input(ADDRESS, addr).addTo(new Label(t("Address:")+NBSP));
Map<String, String> props = Map.of(REALM,REALM_CONTACT,ID,id(),ACTION,ACTION_ANALYZE);

View File

@@ -14,6 +14,7 @@ import de.srsoftware.web4rail.Command.Reply;
import de.srsoftware.web4rail.Device;
import de.srsoftware.web4rail.Protocol;
import de.srsoftware.web4rail.tags.Fieldset;
import de.srsoftware.web4rail.tags.Form;
import de.srsoftware.web4rail.tags.Input;
import de.srsoftware.web4rail.tags.Label;
import de.srsoftware.web4rail.tags.Radio;
@@ -123,8 +124,8 @@ public class Relay extends Tile implements Device{
}
@Override
public Tag propForm(String id) {
Tag form = super.propForm(id);
public Form propForm(String id) {
Form form = super.propForm(id);
Fieldset fieldset = new Fieldset(t("Decoder settings"));
Label protocol = new Label(t("Protocol:"));
for (Protocol proto : Protocol.values()) {

View File

@@ -7,6 +7,7 @@ import java.util.Map.Entry;
import org.json.JSONObject;
import de.srsoftware.tools.Tag;
import de.srsoftware.web4rail.tags.Form;
import de.srsoftware.web4rail.tags.Input;
import de.srsoftware.web4rail.tags.Label;
@@ -36,8 +37,8 @@ public abstract class StretchableTile extends Tile {
}
@Override
public Tag propForm(String id) {
Tag form = super.propForm(id);
public Form propForm(String id) {
Form form = super.propForm(id);
new Tag("h4").content(stretchType()).addTo(form);
new Input(STRETCH_LENGTH, stretch).numeric().addTo(new Label(stretchType()+":"+NBSP)).addTo(new Tag("p")).addTo(form);

View File

@@ -195,7 +195,7 @@ public abstract class Tile extends BaseClass{
return new Vector<Plan.Direction>();
}
public Tag propForm(String formId) {
public Form propForm(String formId) {
Form form = new Form(formId);
new Input(ACTION, ACTION_UPDATE).hideIn(form);
new Input(REALM, REALM_PLAN).hideIn(form);
@@ -214,16 +214,23 @@ public abstract class Tile extends BaseClass{
public Tag propMenu() {
Window window = new Window("tile-properties",t("Properties of {} @ ({},{})",title(),x,y));
String formId = "tile-properties-"+id();
Tag form = propForm(formId);
if (isSet(train)) {
window.children().insertElementAt(new Button(t("stop"),"train("+train.id+",'"+ACTION_STOP+"')"), 1);
window.children().insertElementAt(new Button(t("start"),"train("+train.id+",'"+ACTION_START+"')"), 1);
window.children().insertElementAt(train.link("span"), 1);
window.children().insertElementAt(new Tag("h4").content(t("Train:")), 1);
}
Form form = propForm("tile-properties-"+id());
new Tag("h4").content(t("Length")).addTo(form);
new Input(LENGTH,length).numeric().addTo(new Label(t("Length")+":"+NBSP)).addTo(form);
new Tag("h4").content(t("Availability")).addTo(form);
new Checkbox(DISABLED, t("disabled"), disabled).addTo(form);
new Button(t("Apply"),"submitForm('"+formId+"')").addTo(form);
new Button(t("Apply"),form).addTo(form);
form.addTo(window);
if (isSet(route)) {
if (isSet(route)) {
new Tag("p").content(t("Locked by {}",route)).addTo(window);
}
@@ -398,4 +405,4 @@ public abstract class Tile extends BaseClass{
public int width() {
return 1;
}
}
}

View File

@@ -13,6 +13,7 @@ import de.srsoftware.web4rail.Command.Reply;
import de.srsoftware.web4rail.Device;
import de.srsoftware.web4rail.Protocol;
import de.srsoftware.web4rail.tags.Fieldset;
import de.srsoftware.web4rail.tags.Form;
import de.srsoftware.web4rail.tags.Input;
import de.srsoftware.web4rail.tags.Label;
import de.srsoftware.web4rail.tags.Radio;
@@ -108,8 +109,8 @@ public abstract class Turnout extends Tile implements Device{
}
@Override
public Tag propForm(String id) {
Tag form = super.propForm(id);
public Form propForm(String id) {
Form form = super.propForm(id);
Fieldset fieldset = new Fieldset(t("Decoder settings"));
Label protocol = new Label(t("Protocol:"));
for (Protocol proto : Protocol.values()) {

View File

@@ -5,6 +5,7 @@ import java.util.HashMap;
import de.srsoftware.tools.Tag;
import de.srsoftware.web4rail.tags.Fieldset;
import de.srsoftware.web4rail.tags.Form;
import de.srsoftware.web4rail.tags.Input;
import de.srsoftware.web4rail.tags.Label;
@@ -34,8 +35,8 @@ public class TurnoutL extends Turnout {
}
@Override
public Tag propForm(String id) {
Tag form = super.propForm(id);
public Form propForm(String id) {
Form form = super.propForm(id);
Tag fieldset = null;
for (Tag child : form.children()) {
if (child.is(Fieldset.TYPE)) {

View File

@@ -5,6 +5,7 @@ import java.util.HashMap;
import de.srsoftware.tools.Tag;
import de.srsoftware.web4rail.tags.Fieldset;
import de.srsoftware.web4rail.tags.Form;
import de.srsoftware.web4rail.tags.Input;
import de.srsoftware.web4rail.tags.Label;
@@ -35,8 +36,8 @@ public class TurnoutR extends Turnout {
}
@Override
public Tag propForm(String id) {
Tag form = super.propForm(id);
public Form propForm(String id) {
Form form = super.propForm(id);
Tag fieldset = null;
for (Tag child : form.children()) {
if (child.is(Fieldset.TYPE)) {