diff options
Diffstat (limited to 'sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/draggablePanel/draggablePanel.js')
-rw-r--r-- | sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/draggablePanel/draggablePanel.js | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/draggablePanel/draggablePanel.js b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/draggablePanel/draggablePanel.js new file mode 100644 index 000000000..ee0a98a14 --- /dev/null +++ b/sdnr/wt/devicemanager/provider/src/main/resources/elasticsearch/plugins/head/src/app/ui/draggablePanel/draggablePanel.js @@ -0,0 +1,42 @@ +(function( $, app ) { + + var ui = app.ns("ui"); + + ui.DraggablePanel = ui.AbstractPanel.extend({ + defaults: { + // title: "" // (required) text for the panel title + }, + + _baseCls: "uiPanel", + + init: function() { + this._super(); + this.body = $(this._body_template()); + this.title = $(this._title_template()); + this.el = $.joey( this._main_template() ); + this.el.css( { width: this.config.width } ); + this.dd = new app.ux.DragDrop({ + pickupSelector: this.el.find(".uiPanel-titleBar"), + dragObj: this.el + }); + // open the panel if set in configuration + this.config.open && this.open(); + }, + + setBody: function(body) { + this.body.empty().append(body); + }, + _body_template: function() { return { tag: "DIV", cls: "uiPanel-body", css: { height: this.config.height + (this.config.height === 'auto' ? "" : "px" ) }, children: [ this.config.body ] }; }, + _title_template: function() { return { tag: "SPAN", cls: "uiPanel-title", text: this.config.title }; }, + _main_template: function() { return ( + { tag: "DIV", id: this.id(), cls: this._baseCls, children: [ + { tag: "DIV", cls: "uiPanel-titleBar", children: [ + { tag: "DIV", cls: "uiPanel-close", onclick: this._close_handler, text: "x" }, + this.title + ]}, + this.body + ] } + ); } + }); + +})( this.jQuery, this.app ); |