public void writeDML() { string json; try { using (StreamReader r = new StreamReader("c:\\temp\\UIDesign.json")) { json = r.ReadToEnd(); } } catch (Exception) { return; } ui = new DMLUIElementList(); //delete the previous list and create a new one for any json file change //can be optimized dynamic dynObj = JsonConvert.DeserializeObject(json); foreach (var data in dynObj.UIElements) { string dmlKeyword = data.DMLKeyword; switch (dmlKeyword) { case DMLUIElementSyntax.InputBlock: ue = new InputBlock(); break; case DMLUIElementSyntax.OutputBlock: ue = new OutputBlock(); break; case DMLUIElementSyntax.Text: ue = new JsonToDML.Text(); break; case DMLUIElementSyntax.Line: ue = new JsonToDML.Line(); break; case DMLUIElementSyntax.ItemBlock: ue = new ItemBlock(); break; case DMLUIElementSyntax.MenuBlock: ue = new MenuBlock(); break; case DMLUIElementSyntax.PauseBlock: ue = new PauseBlock(); break; case DMLUIElementSyntax.YesNoBlock: ue = new YesNoBlock(); break; } ue.setMembers(data); ue.qualifiers.setMembers(data); ui.addUIElementToUIElementList(ue); } refreshDisplayedDMLCode(); }
public GenerateDMLCode(DMLUIElement ue) { this.ue = ue; }