diff --git a/src/CurScreen.java b/src/CurScreen.java index 7511258..f448f4a 100644 --- a/src/CurScreen.java +++ b/src/CurScreen.java @@ -11,18 +11,7 @@ public String getValue() { return new String(this.value); } - public void updateFromState1(String scId, String wid, int state) { - String temp_if0; - if ((state==0)) { - temp_if0 = "001"; - } else { - temp_if0 = this.value; - } - this.value = temp_if0; - Map screenTemplate = screenTemplates.getScreenTemplate(this.value).getValue(); - this.screen.updateFromCurScreen(this.value, screenTemplate); - } - public void updateFromState2(String scId, String wid, int state) { + public void updateFromState(String scId, String wid, int state) { String temp_if1; if ((state==0)) { temp_if1 = "000"; @@ -33,6 +22,17 @@ Map screenTemplate = screenTemplates.getScreenTemplate(this.value).getValue(); this.screen.updateFromCurScreen(this.value, screenTemplate); } + public void updateFromState2(String scId, String wid, int state) { + String temp_if0; + if ((state==0)) { + temp_if0 = "001"; + } else { + temp_if0 = this.value; + } + this.value = temp_if0; + Map screenTemplate = screenTemplates.getScreenTemplate(this.value).getValue(); + this.screen.updateFromCurScreen(this.value, screenTemplate); + } public void changeCurScreen(String nextScId) { this.value = nextScId; Map screenTemplate = screenTemplates.getScreenTemplate(this.value).getValue(); diff --git a/src/ScreenTemplates.java b/src/ScreenTemplates.java index 6608cef..1594e42 100644 --- a/src/ScreenTemplates.java +++ b/src/ScreenTemplates.java @@ -3,30 +3,47 @@ public class ScreenTemplates { private CurScreen curScreen; private Map value = new HashMap<>(); - public ScreenTemplates() { + { + Map temp_json3 = new HashMap<>(); + temp_json3.put("visible", true); + temp_json3.put("text", ""); + temp_json3.put("state", 0); + temp_json3.put("type", "textInput"); + Map temp_json4 = new HashMap<>(); + temp_json4.put("visible", true); + temp_json4.put("text", "Next"); + temp_json4.put("state", 0); + temp_json4.put("type", "button"); + Map temp_json2 = new HashMap<>(); + temp_json2.put("001", temp_json3); + temp_json2.put("002", temp_json4); + Map temp_json1 = new HashMap<>(); + temp_json1.put("layout", true); + temp_json1.put("screenId", "000"); + temp_json1.put("widgets", temp_json2); + Map temp_json7 = new HashMap<>(); + temp_json7.put("visible", true); + temp_json7.put("text", "label"); + temp_json7.put("state", 0); + temp_json7.put("type", "label"); + Map temp_json8 = new HashMap<>(); + temp_json8.put("visible", true); + temp_json8.put("text", "Back"); + temp_json8.put("state", 0); + temp_json8.put("type", "button"); + Map temp_json6 = new HashMap<>(); + temp_json6.put("003", temp_json7); + temp_json6.put("004", temp_json8); + Map temp_json5 = new HashMap<>(); + temp_json5.put("layout", true); + temp_json5.put("screenId", "001"); + temp_json5.put("widgets", temp_json6); + Map temp_json0 = new HashMap<>(); ScreenTemplate screenTemplate_tmp000 = new ScreenTemplate(); - screenTemplate_tmp000.setValue(Map.of("widgets", Map.of("001", Map.of("type", "textInput", - "text", "", - "state", 0, - "visible", true), - "002", Map.of("type", "button", - "text", "Next", - "state", 0, - "visible", true)), - "layout", true, - "screenId", "000")); - value.put("000", screenTemplate_tmp000); + screenTemplate_tmp000.setValue(temp_json1); ScreenTemplate screenTemplate_tmp001 = new ScreenTemplate(); - screenTemplate_tmp001.setValue(Map.of("widgets", Map.of("003", Map.of("type", "label", - "text", "label", - "state", 0, - "visible", true), - "004", Map.of("type", "button", - "text", "Back", - "state", 0, - "visible", true)), - "layout", true, - "screenId", "001")); + screenTemplate_tmp001.setValue(temp_json5); + value.put("000", screenTemplate_tmp000); value.put("001", screenTemplate_tmp001); } public Map getValue() { diff --git a/src/Widget1.java b/src/Widget1.java index 7229d02..e0db833 100644 --- a/src/Widget1.java +++ b/src/Widget1.java @@ -45,10 +45,10 @@ } public void updateStateFromState(String self, String self2, String wid, int state, String curScreen) { this.state = state; - if (curScreen.equals("000") && wid.equals("002")) { - this.curScreen.updateFromState1(curScreen, wid, this.state); + if ((curScreen.equals("001")&&wid.equals("004"))) { + this.curScreen.updateFromState(curScreen, wid, this.state); } - if (curScreen.equals("001") && wid.equals("004")) { + if ((curScreen.equals("000")&&wid.equals("002"))) { this.curScreen.updateFromState2(curScreen, wid, this.state); } }