{ "custom": {}, "params": { "device_name": "Test", "driver": "value", "enabled": false, "host_name": "value", "status": "value" }, "propConfig": { "params.device_name": { "paramDirection": "input", "persistent": true }, "params.driver": { "paramDirection": "input", "persistent": true }, "params.enabled": { "paramDirection": "input", "persistent": true }, "params.host_name": { "paramDirection": "input", "persistent": true }, "params.status": { "paramDirection": "input", "persistent": true } }, "props": { "defaultSize": { "height": 50, "width": 1908 } }, "root": { "children": [ { "meta": { "name": "Label" }, "position": { "basis": "400px" }, "propConfig": { "props.text": { "binding": { "config": { "path": "view.params.device_name" }, "type": "property" } } }, "props": { "style": { "textAlign": "center" } }, "type": "ia.display.label" }, { "meta": { "name": "Label_0" }, "position": { "basis": "400px" }, "propConfig": { "props.text": { "binding": { "config": { "path": "view.params.driver" }, "type": "property" } } }, "props": { "style": { "textAlign": "center" } }, "type": "ia.display.label" }, { "meta": { "name": "Label_1" }, "position": { "basis": "200px" }, "propConfig": { "props.text": { "binding": { "config": { "path": "view.params.enabled" }, "type": "property" } } }, "props": { "style": { "textAlign": "center" } }, "type": "ia.display.label" }, { "meta": { "name": "Label_2" }, "position": { "basis": "564px" }, "propConfig": { "props.text": { "binding": { "config": { "path": "view.params.status" }, "type": "property" } } }, "props": { "style": { "textAlign": "center" } }, "type": "ia.display.label" }, { "meta": { "name": "Label_3" }, "position": { "basis": "564px" }, "propConfig": { "props.text": { "binding": { "config": { "path": "view.params.host_name" }, "type": "property" } } }, "props": { "style": { "textAlign": "center" } }, "type": "ia.display.label" }, { "children": [ { "meta": { "name": "Label_0" }, "position": { "basis": "2px", "grow": 1 }, "type": "ia.display.label" }, { "events": { "component": { "onActionPerformed": { "config": { "script": "\timport sys\n\tfrom java.lang import Exception\n\t\n\ttry:\n\t\tif system.tag.exists(\"System/DeviceList\"):\n\t\t\tdevice_cfg \u003d system.tag.read(\"System/DeviceList\").value\n\t\t\tif device_cfg\u003d\u003d\u0027\u0027:\n\t\t\t\tdevice_cfg\u003d\u0027{}\u0027\n\t\t\tcfg \u003d system.util.jsonDecode(device_cfg)\n\t\t\tenabled \u003d self.view.params.enabled\n\t\t\tdevice \u003d self.view.params.device_name\n\t\t\tsystem.perspective.print(enabled)\n\t\t\tif enabled:\n\t\t\t\tdevice_list \u003d cfg.get(\"Devicedisable\",[])\n\t\t\t\tif device not in device_list:\n\t\t\t\t\tdevice_list.append(device)\n\t\t\t\tcfg[\"Devicedisable\"] \u003d device_list\n\t\t\tif not enabled:\n\t\t\t\tdevice_list \u003d cfg.get(\"DeviceEnable\",[])\n\t\t\t\tif device not in device_list:\n\t\t\t\t\tdevice_list.append(device)\n\t\t\t\tcfg[\"DeviceEnable\"] \u003d device_list\n\t\t\tsystem.perspective.print(cfg) \n\t\t\tencode \u003d system.util.jsonEncode(cfg)\n\t\t\tsystem.tag.write(\"System/DeviceList\",encode)\t\n\texcept:\n\t logger \u003d system.util.getLogger(\"Device_Enable\")\n\t exc_type, exc_obj, tb \u003d sys.exc_info()\n\t lineno \u003d tb.tb_lineno\n\t errorMessage\u003d str(lineno) + str(exc_type) + str(exc_obj)\n\t #system.gui.errorBox(errorMessage,\"Error\")\n\t " }, "scope": "G", "type": "script" } } }, "meta": { "name": "Button_0" }, "position": { "basis": "50px" }, "propConfig": { "props.text": { "binding": { "config": { "expression": "if({view.params.enabled} \u003d True, \"Disable Device\", \"Enable Device\")" }, "type": "expr" } } }, "props": { "style": { "classes": "Buttons/PB_1" } }, "type": "ia.input.button" }, { "meta": { "name": "Label" }, "position": { "basis": "2px", "grow": 1 }, "type": "ia.display.label" } ], "meta": { "name": "FlexContainer" }, "position": { "basis": "200px" }, "props": { "direction": "column" }, "type": "ia.container.flex" } ], "custom": { "update": "value", "update_enable": "value" }, "meta": { "name": "root" }, "props": { "style": { "borderStyle": "ridge" } }, "type": "ia.container.flex" } }