diff --git a/src/ui/DropdownPanel.js b/src/ui/DropdownPanel.js index 8791cde742..0a3a6ac7f7 100644 --- a/src/ui/DropdownPanel.js +++ b/src/ui/DropdownPanel.js @@ -20,11 +20,32 @@ function DropdownPanel (_name, _opts) { this.view } +DropdownPanel.prototype.setMessage = function (message) { + if (this.view) { + this.view.querySelector('.dropdownpanel .dropdownrawcontent').style.display = 'none' + this.view.querySelector('.dropdownpanel .dropdowncontent').style.display = 'none' + this.view.querySelector('.dropdownpanel .fa-refresh').style.display = 'none' + this.message(message) + } +} + +DropdownPanel.prototype.setLoading = function () { + if (this.view) { + this.view.querySelector('.dropdownpanel .dropdownrawcontent').style.display = 'none' + this.view.querySelector('.dropdownpanel .dropdowncontent').style.display = 'none' + this.view.querySelector('.dropdownpanel .fa-refresh').style.display = 'inline-block' + this.message('') + } +} + DropdownPanel.prototype.update = function (_data, _header) { if (this.view) { + this.view.querySelector('.dropdownpanel .fa-refresh').style.display = 'none' + this.view.querySelector('.dropdownpanel .dropdowncontent').style.display = 'block' this.view.querySelector('.dropdownpanel .dropdownrawcontent').innerText = JSON.stringify(_data, null, '\t') this.view.querySelector('.dropdownpanel button.btn').style.display = 'block' this.view.querySelector('.title span').innerText = _header || ' ' + this.message('') if (this.json) { this.treeView.update(_data) } @@ -32,8 +53,10 @@ DropdownPanel.prototype.update = function (_data, _header) { } DropdownPanel.prototype.setContent = function (node) { - var parent = this.view.querySelector('.dropdownpanel div.dropdowncontent') - parent.replaceChild(node, parent.firstElementChild) + if (this.view) { + var parent = this.view.querySelector('.dropdownpanel div.dropdowncontent') + parent.replaceChild(node, parent.firstElementChild) + } } DropdownPanel.prototype.render = function (overridestyle) { @@ -43,7 +66,19 @@ DropdownPanel.prototype.render = function (overridestyle) { } overridestyle === undefined ? {} : overridestyle var self = this - var view = yo`