Tab$Page.min.js 4.4 KB

1
  1. MWF.xApplication.process.FormDesigner.Module=MWF.xApplication.process.FormDesigner.Module||{};MWF.xDesktop.requireApp("process.FormDesigner","Module.$Element",null,false);MWF.xApplication.process.FormDesigner.Module.Tab$Page=MWF.FCTab$Page=new Class({Extends:MWF.FC$Element,Implements:[Options,Events],options:{style:"default",propertyPath:"/x_component_process_FormDesigner/Module/Tab$Page/tab$Page.html",actions:[{name:"move",icon:"move1.png",event:"mousedown",action:"move",title:MWF.APPFD.LP.formAction.move},{name:"add",icon:"add.png",event:"click",action:"addPage",title:MWF.APPFD.LP.formAction.add},{name:"delete",icon:"delete1.png",event:"click",action:"delete",title:MWF.APPFD.LP.formAction["delete"]}]},initialize:function(e,t,o){this.setOptions(o);this.path="/x_component_process_FormDesigner/Module/Tab$Page/";this.cssPath="/x_component_process_FormDesigner/Module/Tab$Page/"+this.options.style+"/css.wcss";this._loadCss();this.moduleType="element";this.moduleName="tab$Page";this.form=e.form;this.tab=e;this.page=t},setAllStyles:function(){},_initModule:function(){this._setNodeProperty();this._createIconAction();this._setNodeEvent();if(this.form.moduleElementNodeList.indexOf(this.node)!=-1)this.form.moduleElementNodeList.erase(this.node)},load:function(e,t,o){this.json=e;this.node=t;this.node.store("module",this);this.node.setStyles(this.css.moduleNode);if(!this.json.id){var s=this._getNewId(o.json.id);this.json.id=s}if(this.json.name)this.page.textNode.set("text",this.json.name);t.set({MWFType:"tab$Page",id:this.json.id});if(!this.form.json.moduleList[this.json.id]){this.form.json.moduleList[this.json.id]=this.json}this._initModule();this._loadTreeNode(o);this.parentContainer=this.treeNode.parentNode.module;this.page.setOptions({onPostShow:function(){this.initialStyles=this.page.tab.css.tabNodeCurrent;this.node.store("normalBorder",this.page.tab.css.tabNodeCurrent)}.bind(this),onPostHide:function(){this.initialStyles=this.page.tab.css.tabNode;this.node.store("normalBorder",this.page.tab.css.tabNode)}.bind(this)});this._setEditStyle_custom("id");this.json.moduleName=this.moduleName},_setEditStyle_custom:function(e){if(e=="width"){if(this.json.width){if(this.json.width.toInt()>60)this.node.setStyle("width",""+this.json.width+"px")}}if(e=="name"){this.page.textNode.set("text",this.json.name)}},addPage:function(){var e=this.tab.addPage();e.tabNode.inject(this.page.tabNode,"before");e.showTabIm()},delete:function(e){var t=this;this.form.designer.confirm("warn",e,MWF.APPFD.LP.notice.deleteElementTitle,MWF.APPFD.LP.notice.deleteElement,300,120,function(){if(t.tab.containers.length<=1){t.tab.destroy()}else{var e=t.page.contentNode.retrieve("module");t.destroy();t.tab.elements.erase(t);e.destroy();t.tab.containers.erase(e);t.page.closeTab()}this.close()},function(){this.close()},null)},destroy:function(){this.form.moduleList.erase(this);this.form.moduleNodeList.erase(this.node);this.form.moduleElementNodeList.erase(this.node);this.node.destroy();this.actionArea.destroy();delete this.form.json.moduleList[this.json.id];this.json=null;delete this.json;this.treeNode.destroy()},move:function(e){var t=[];this.tab.tabWidget.pages.each(function(e){if(e!=this.page){t.push(e.tabNode)}}.bind(this));this._createMoveNode();this._setNodeMove(t,e)},_createMoveNode:function(){this.moveNode=this.node.clone();this.moveNode.inject(this.form.node);this.moveNode.setStyles({border:"2px dashed #ffa200",opacity:.7,position:"absolute"})},_onEnterOther:function(){},_createCopyNode:function(){this.copyNode=new Element("div");this.copyNode.setStyles(this.css.moduleNodeShow);this.copyNode.addEvent("selectstart",function(){return false})},_setNodeMove:function(e,t){this._setMoveNodePosition(t);var o=this.moveNode.getPosition();var s=this.moveNode.getSize();var i=this.tab.node.getPosition();var n=this.tab.node.getSize();var d=new Drag.Move(this.moveNode,{droppables:e,limit:{x:[i.x,i.x+n.x],y:[o.y,o.y+s.y]},onEnter:function(e,t){var o=t.retrieve("module");if(o)o._dragIn(this);this._onEnterOther(e,t)}.bind(this),onLeave:function(e,t){var o=t.retrieve("module");if(o)o._dragOut(this);this._onLeaveOther(e,t)}.bind(this),onDrop:function(e,t){if(t){var o=t.retrieve("module");if(o)o._dragDrop(this);this._nodeDrop();if(o){this.page.contentNodeArea.inject(o.page.contentNodeArea,"before")}}else{this._dragCancel(e)}}.bind(this),onCancel:function(e){this._dragCancel(e)}.bind(this)});d.start(t);this.form.moveModule=this;this.form.recordCurrentSelectedModule=this.form.currentSelectedModule;this.form.selected()}});