import QtQuick Rectangle { id: root color: "#f0f0f0" property var itemList : [] property var aJsText: "aW1wb3J0IHRpbWUNCmZyb20gZGF0ZXRpbWUgaW1wb3J0IGRhdGV0aW1lDQoNCnJlY3ZEYXRhID0gYnl0ZWFycmF5KCkgI+aOpeaUtueahOaVsOaNruWtmOaUvuatpOaVsOe7hA0Kc3RhcnRUaW1lID0gdGltZS50aW1lKCkgDQoNCiMg5bCGYnl0ZWFycmF55Lul5a2X5Li65Y2V5L2N6L2s5o2i5oiQMTbov5vliLblrZfnrKbkuLLvvIzmlrnkvr/mmL7npLoNCmRlZiB3b3JkRGF0YTJIZXhTdHIoZGF0YSk6DQogICAgcmV0ID0gJyAnLmpvaW4oZGF0YVtpOmkrMl0uaGV4KCkgZm9yIGkgaW4gcmFuZ2UoMCwgbGVuKGRhdGEpLCAyKSkNCiAgICByZXR1cm4gcmV0LnVwcGVyKCkNCg0KIyDojrflj5blvZPliY3ml7bpl7TlrZfnrKbkuLINCmRlZiBub3dTdHIoKToNCiAgICBub3cgPSBkYXRldGltZS5ub3coKQ0KICAgIHJldCA9IG5vdy5zdHJmdGltZSgnJUg6JU06JVMuJykgKyBmIntub3cubWljcm9zZWNvbmQgLy8gMTAwMDowM2R9Ig0KICAgIHJldHVybiByZXQNCiAgICANCmRlZiBjaGVja1ZhbHVlKGRhdGE6IGJ5dGVzKSAtPiBpbnQ6DQogICAgIyDliJ3lp4vljJZjcmPkuLoweEZGRkYNCiAgICBjcmMgPSAweEZGRkYNCg0KICAgIGxlbmd0aCA9IGxlbihkYXRhKQ0KICAgIGlmIGxlbmd0aCAlIDIgIT0gMDoNCiAgICAgICAgcmV0dXJuIDANCiAgICANCiAgICBmb3IgaSBpbiByYW5nZSgwLCBsZW5ndGgsIDIpOg0KICAgICAgICB2YWwgPSBkYXRhW2ldICogMjU2ICsgZGF0YVtpICsgMV0NCiAgICAgICAgY3JjID0gY3JjIF4gdmFsDQoNCiAgICAjIOi/lOWbnuacgOe7iOeahGNyY+WAvA0KICAgIHJldHVybiBjcmMNCg0KIyDlkK/liqjlh73mlbDvvIzlkb3ku6TlvIDlp4vkvJrosIPnlKjmraTlh73mlbANCmRlZiBzdGFydCgpOg0KDQogICAgbG9nX2koJy0tLS0tLS0tLS0tLS0tLS0tICcgKyBjbWRJbmZvWyduYW1lJ10gKyAnIC0tLS0tLS0tLS0tLS0tLS0nKQ0KICAgICNsb2coZiJbe2RldkluZm9bJ25hbWUnXX1de2NtZEluZm9bJ25hbWUnXX0iKQ0KICAgIA0KICAgIHN0YXJ0VGltZSA9IHRpbWUudGltZSgpICPorrDlvZXlkK/liqjml7bpl7QNCiAgICANCiAgICByZWN2RGF0YSA9IGJ5dGVhcnJheSgpICPmuIXnqbrmjqXmlLbmlbDnu4QNCg0KICAgIGF0dHIgPSBjbWRJbmZvWydhdHRyJ10NCiAgICBjbWRTdHIgPSBhdHRyWydjbWQnXSArIGF0dHJbJ2RhdGEnXSAj57uE5ZCI6KaB5Y+R6YCB55qE5oql5paH77yM5Y2B5YWt6L+b5Yi25a2X56ym5LiyDQogICAgICAgICAgICANCiAgICBkYXRhID0gYnl0ZWFycmF5KCkuZnJvbWhleChjbWRTdHIpICPlsIbljYHlha3ov5vliLblrZfnrKbkuLLovazmiJDlrZfoioLmlbDmja7lj5HpgIENCiAgICANCiAgICBpZiBhdHRyWydyZXFfaXNfY2hlY2snXSA9PSBUcnVlOg0KICAgICAgICBjcmMgPSBjaGVja1ZhbHVlKGRhdGEpDQogICAgICAgIGRhdGEgPSBkYXRhICsgYnl0ZWFycmF5KGNyYy50b19ieXRlcygyLCAnYmlnJykpDQogICAgc2VuZChkYXRhKQ0KDQogICAgbG9nX2QoZiJbe25vd1N0cigpfV0gU2VudDp7d29yZERhdGEySGV4U3RyKGRhdGEpfSIpDQogICAgICAgIA0KICAgIHJldHVybiBUcnVlDQoNCiMg5o6l5pS25pWw5o2u5aSE55CG5Ye95pWw77yM5b2T5pS25Yiw5pWw5o2u5Lya6LCD55So5q2k5Ye95pWwDQpkZWYgcmVjdkRhdGFIYW5kbGVyKGRhdGEpOg0KICAgIGdsb2JhbCByZWN2RGF0YQ0KICAgIHJlY3ZEYXRhID0gcmVjdkRhdGEgKyBkYXRhDQogICAgYXR0ciA9IGNtZEluZm9bJ2F0dHInXQ0KICAgIHJzcF9sZW4gPSBpbnQoYXR0clsncnNwX2xlbiddKSAqIDINCiAgICBpZiBsZW4ocmVjdkRhdGEpID49IHJzcF9sZW46ICNUQlVT5oyH5LukcnNwX2xlbuS7peWtl+S4uuWNleS9jSAgICAgICAgDQogICAgICAgIGxvZ19kKGYiW3tub3dTdHIoKX1dIEVjaG86e3dvcmREYXRhMkhleFN0cihyZWN2RGF0YSl9IikNCiAgICAgICAgaWYgYXR0clsncnNwX2lzX2NoZWNrJ10gPT0gVHJ1ZToNCiAgICAgICAgICAgICMg5qCh6aqM5pWw5o2u5q2j56Gu5oCnDQogICAgICAgICAgICBjcmMgPSBpbnQuZnJvbV9ieXRlcyhyZWN2RGF0YVtyc3BfbGVuIC0gMjpyc3BfbGVuXSwgYnl0ZW9yZGVyPSdiaWcnKQ0KICAgICAgICAgICAgY2FsY192YWx1ZSA9IGNoZWNrVmFsdWUocmVjdkRhdGFbMDpyc3BfbGVuIC0gMl0pDQogICAgICAgICAgICBpZiBjcmMgIT0gY2FsY192YWx1ZToNCiAgICAgICAgICAgICAgICBsb2dfdygiQ1JDIGVycm9yOiIgKw0KICAgICAgICAgICAgICAgICAgICAic2hvdWxkIGJlICIgKyAnezowNFh9Jy5mb3JtYXQoY2FsY192YWx1ZSkgKyANCiAgICAgICAgICAgICAgICAgICAgIixnb3QgIiArICd7OjA0WH0nLmZvcm1hdChjcmMpKQ0KICAgICAgICAgICAgICAgIGZpbmlzaCgpDQogICAgICAgICAgICAgICAgcmV0dXJuDQogICAgICAgIGxvZ19pKCJzdWNjZXNzIikgICAgDQogICAgICAgIGZpbmlzaCgpDQogICAgICAgIA0KIyDmraTlh73mlbDkvJrooqvph43lpI3osIPnlKjvvIzpl7TpmpQxMOavq+enku+8jOebtOWIsGZpbmlzaCgpICAgICAgICANCmRlZiBsb29wKCk6DQogICAgZ2xvYmFsIHJlY3ZEYXRhDQogICAgaWYgdGltZS50aW1lKCkgPiBzdGFydFRpbWUgKyBpbnQoY21kSW5mb1snYXR0ciddWydyc3BfdGltZW91dCddKSAvIDEwMDAuMDoNCiAgICAgICAgaWYgbGVuKHJlY3ZEYXRhKSA+IDA6DQogICAgICAgICAgICBsb2dfdyhmIlt7bm93U3RyKCl9XVJYIHRpbWVvdXQ6e3dvcmREYXRhMkhleFN0cihyZWN2RGF0YSl9IikNCiAgICAgICAgZWxzZToNCiAgICAgICAgICAgIGxvZ193KGYiW3tub3dTdHIoKX1dUlggdGltZW91dCIpDQogICAgICAgIGxvZ19lKGYiW3tkZXZJbmZvWyduYW1lJ119XXtjbWRJbmZvWyduYW1lJ119IGZhaWwuIikNCiAgICAgICAgZmluaXNoKCkNCg==" // 添加组件 function appendItem(item) { itemList.push(item) } // 属性设置 function attrChange(attr) { for(var i=0;i