ajsfw
Version:
Ajs Framework
44 lines (43 loc) • 2.13 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var Tsx_1 = require("../Tsx/Tsx");
var Body = (function () {
function Body(console, currentModule) {
this._console = console;
this._currentModule = currentModule;
}
Object.defineProperty(Body.prototype, "currentModule", {
get: function () { return this._currentModule; },
enumerable: true,
configurable: true
});
Body.prototype.onButtonClick = function (e) {
if (this._currentModule !== e.srcElement.ajsdata) {
this._currentModule = e.srcElement.ajsdata;
this._console.refresh();
}
};
Body.prototype.render = function () {
var _this = this;
var buttons = [];
var moduleToolbar = null;
var moduleBody = null;
for (var key in this._console.modules) {
if (this._console.modules.hasOwnProperty(key)) {
buttons.push(Tsx_1.AjsDebugTsxFactory.createElement("input", { type: "button", value: this._console.modules[key].getButtonLabel(), click: function (e) { _this.onButtonClick(e); }, ajsdata: this._console.modules[key] }));
}
}
buttons.push(Tsx_1.AjsDebugTsxFactory.createElement("input", { type: "button", value: "Hide", click: function () { _this._console.hide(); } }));
if (this._currentModule !== null) {
moduleToolbar = (Tsx_1.AjsDebugTsxFactory.createElement("div", { class: "ajsDebugToolbar" }, this._currentModule.renderToolbar()));
moduleBody = (Tsx_1.AjsDebugTsxFactory.createElement("div", null, this._currentModule.renderBody()));
}
return (Tsx_1.AjsDebugTsxFactory.createElement("div", { class: "ajsDebug" },
Tsx_1.AjsDebugTsxFactory.createElement("div", { class: "ajsDebugToolbar" }, buttons),
moduleToolbar,
moduleBody,
Tsx_1.AjsDebugTsxFactory.createElement("div", { class: "ajsDebugInfo", id: "ajsDebugInfo" }, "Debugging console ready!")));
};
return Body;
}());
exports.Body = Body;