diff --git a/src/main/webapp/js/app.min.js b/src/main/webapp/js/app.min.js index b0ccbeccb2..7dc262786b 100644 --- a/src/main/webapp/js/app.min.js +++ b/src/main/webapp/js/app.min.js @@ -2010,12 +2010,12 @@ Editor.prototype.setFilename=function(a){this.filename=a}; Editor.prototype.createUndoManager=function(){var a=this.graph,b=new mxUndoManager;this.undoListener=function(e,g){b.undoableEditHappened(g.getProperty("edit"))};var f=mxUtils.bind(this,function(e,g){this.undoListener.apply(this,arguments)});a.getModel().addListener(mxEvent.UNDO,f);a.getView().addListener(mxEvent.UNDO,f);f=function(e,g){e=a.getSelectionCellsForChanges(g.getProperty("edit").changes,function(m){return!(m instanceof mxChildChange)});if(0T.clientHeight-E&&(b.style.overflowY="auto");b.style.overflowX="hidden";if(d&&(d=document.createElement("img"),d.setAttribute("src",Dialog.prototype.closeImage), -d.setAttribute("title",mxResources.get("close")),d.className="geDialogClose",d.style.top=S+14+"px",d.style.left=O+f+38-x+"px",d.style.zIndex=this.zIndex,mxEvent.addListener(d,"click",mxUtils.bind(this,function(){a.hideDialog(!0)})),document.body.appendChild(d),this.dialogImg=d,!p)){var P=!1;mxEvent.addGestureListeners(this.bg,mxUtils.bind(this,function(ba){P=!0}),null,mxUtils.bind(this,function(ba){P&&(a.hideDialog(!0),P=!1)}))}this.resizeListener=mxUtils.bind(this,function(){if(null!=k){var ba=k(); -null!=ba&&(B=f=ba.w,C=e=ba.h)}ba=mxUtils.getDocumentSize();F=ba.height;this.bg.style.height=F+"px";Editor.inlineFullscreen||null==a.embedViewport||(this.bg.style.height=mxUtils.getDocumentSize().height+"px");O=Math.max(1,Math.round((ba.width-f-E)/2));S=Math.max(1,Math.round((F-e-a.footerHeight)/3));f=null!=document.body?Math.min(B,document.body.scrollWidth-E):B;e=Math.min(C,F-E);ba=this.getPosition(O,S,f,e);O=ba.x;S=ba.y;T.style.left=O+"px";T.style.top=S+"px";T.style.width=f+"px";T.style.height=e+ -"px";!n&&b.clientHeight>T.clientHeight-E&&(b.style.overflowY="auto");null!=this.dialogImg&&(this.dialogImg.style.top=S+14+"px",this.dialogImg.style.left=O+f+38-x+"px")});mxEvent.addListener(window,"resize",this.resizeListener);this.onDialogClose=m;this.container=T;a.editor.fireEvent(new mxEventObject("showDialog"))}Dialog.backdropColor="white";Dialog.prototype.zIndex=mxPopupMenu.prototype.zIndex-2; +function Dialog(a,b,f,e,g,d,m,n,t,k,p){var x=t?57:0,B=f,C=e,E=t?0:64,I=Editor.inlineFullscreen||null==a.embedViewport?mxUtils.getDocumentSize():mxUtils.clone(a.embedViewport);null==a.embedViewport&&null!=window.innerHeight&&(I.height=window.innerHeight);var F=I.height,O=Math.max(1,Math.round((I.width-f-E)/2)),T=Math.max(1,Math.round((F-e-a.footerHeight)/3));b.style.maxHeight="100%";f=null!=document.body?Math.min(f,document.body.scrollWidth-E):f;e=Math.min(e,F-E);0S.clientHeight-E&&(b.style.overflowY="auto");b.style.overflowX="hidden";if(d&&(d=document.createElement("img"),d.setAttribute("src",Dialog.prototype.closeImage), +d.setAttribute("title",mxResources.get("close")),d.className="geDialogClose",d.style.top=T+14+"px",d.style.left=O+f+38-x+"px",d.style.zIndex=this.zIndex,mxEvent.addListener(d,"click",mxUtils.bind(this,function(){a.hideDialog(!0)})),document.body.appendChild(d),this.dialogImg=d,!p)){var P=!1;mxEvent.addGestureListeners(this.bg,mxUtils.bind(this,function(ba){P=!0}),null,mxUtils.bind(this,function(ba){P&&(a.hideDialog(!0),P=!1)}))}this.resizeListener=mxUtils.bind(this,function(){if(null!=k){var ba=k(); +null!=ba&&(B=f=ba.w,C=e=ba.h)}ba=mxUtils.getDocumentSize();F=ba.height;this.bg.style.height=F+"px";Editor.inlineFullscreen||null==a.embedViewport||(this.bg.style.height=mxUtils.getDocumentSize().height+"px");O=Math.max(1,Math.round((ba.width-f-E)/2));T=Math.max(1,Math.round((F-e-a.footerHeight)/3));f=null!=document.body?Math.min(B,document.body.scrollWidth-E):B;e=Math.min(C,F-E);ba=this.getPosition(O,T,f,e);O=ba.x;T=ba.y;S.style.left=O+"px";S.style.top=T+"px";S.style.width=f+"px";S.style.height=e+ +"px";!n&&b.clientHeight>S.clientHeight-E&&(b.style.overflowY="auto");null!=this.dialogImg&&(this.dialogImg.style.top=T+14+"px",this.dialogImg.style.left=O+f+38-x+"px")});mxEvent.addListener(window,"resize",this.resizeListener);this.onDialogClose=m;this.container=S;a.editor.fireEvent(new mxEventObject("showDialog"))}Dialog.backdropColor="white";Dialog.prototype.zIndex=mxPopupMenu.prototype.zIndex-2; Dialog.prototype.noColorImage=mxClient.IS_SVG?"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyBpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBXaW5kb3dzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkEzRDlBMUUwODYxMTExRTFCMzA4RDdDMjJBMEMxRDM3IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkEzRDlBMUUxODYxMTExRTFCMzA4RDdDMjJBMEMxRDM3Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QTNEOUExREU4NjExMTFFMUIzMDhEN0MyMkEwQzFEMzciIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QTNEOUExREY4NjExMTFFMUIzMDhEN0MyMkEwQzFEMzciLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5xh3fmAAAABlBMVEX////MzMw46qqDAAAAGElEQVR42mJggAJGKGAYIIGBth8KAAIMAEUQAIElnLuQAAAAAElFTkSuQmCC":IMAGE_PATH+ "/nocolor.png";Dialog.prototype.closeImage=mxClient.IS_SVG?"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJAQMAAADaX5RTAAAABlBMVEV7mr3///+wksspAAAAAnRSTlP/AOW3MEoAAAAdSURBVAgdY9jXwCDDwNDRwHCwgeExmASygSL7GgB12QiqNHZZIwAAAABJRU5ErkJggg==":IMAGE_PATH+"/close.png"; Dialog.prototype.clearImage=mxClient.IS_SVG?"data:image/gif;base64,R0lGODlhDQAKAIABAMDAwP///yH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4wLWMwNjAgNjEuMTM0Nzc3LCAyMDEwLzAyLzEyLTE3OjMyOjAwICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6OUIzOEM1NzI4NjEyMTFFMUEzMkNDMUE3NjZERDE2QjIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6OUIzOEM1NzM4NjEyMTFFMUEzMkNDMUE3NjZERDE2QjIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo5QjM4QzU3MDg2MTIxMUUxQTMyQ0MxQTc2NkREMTZCMiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo5QjM4QzU3MTg2MTIxMUUxQTMyQ0MxQTc2NkREMTZCMiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PgH//v38+/r5+Pf29fTz8vHw7+7t7Ovq6ejn5uXk4+Lh4N/e3dzb2tnY19bV1NPS0dDPzs3My8rJyMfGxcTDwsHAv769vLu6ubi3trW0s7KxsK+urayrqqmop6alpKOioaCfnp2cm5qZmJeWlZSTkpGQj46NjIuKiYiHhoWEg4KBgH9+fXx7enl4d3Z1dHNycXBvbm1sa2ppaGdmZWRjYmFgX15dXFtaWVhXVlVUU1JRUE9OTUxLSklIR0ZFRENCQUA/Pj08Ozo5ODc2NTQzMjEwLy4tLCsqKSgnJiUkIyIhIB8eHRwbGhkYFxYVFBMSERAPDg0MCwoJCAcGBQQDAgEAACH5BAEAAAEALAAAAAANAAoAAAIXTGCJebD9jEOTqRlttXdrB32PJ2ncyRQAOw==":IMAGE_PATH+ @@ -2024,8 +2024,8 @@ Dialog.prototype.close=function(a,b){if(null!=this.onDialogClose){if(0==this.onD var ErrorDialog=function(a,b,f,e,g,d,m,n,t,k,p){t=null!=t?t:!0;var x=document.createElement("div");x.style.textAlign="center";if(null!=b){var B=document.createElement("div");B.style.padding="0px";B.style.margin="0px";B.style.fontSize="18px";B.style.paddingBottom="16px";B.style.marginBottom="10px";B.style.borderBottom="1px solid #c0c0c0";B.style.color="gray";B.style.whiteSpace="nowrap";B.style.textOverflow="ellipsis";B.style.overflow="hidden";mxUtils.write(B,b);B.setAttribute("title",b);x.appendChild(B)}b= document.createElement("div");b.style.lineHeight="1.2em";b.style.padding="6px";b.innerHTML=f;x.appendChild(b);f=document.createElement("div");f.style.marginTop="12px";f.style.textAlign="center";null!=d&&(b=mxUtils.button(mxResources.get("tryAgain"),function(){a.hideDialog();d()}),b.className="geBtn",f.appendChild(b),f.style.textAlign="center");null!=k&&(k=mxUtils.button(k,function(){null!=p&&p()}),k.className="geBtn",f.appendChild(k));var C=mxUtils.button(e,function(){t&&a.hideDialog();null!=g&&g()}); C.className="geBtn";f.appendChild(C);null!=m&&(e=mxUtils.button(m,function(){t&&a.hideDialog();null!=n&&n()}),e.className="geBtn gePrimaryBtn",f.appendChild(e));this.init=function(){C.focus()};x.appendChild(f);this.container=x},PrintDialog=function(a,b){this.create(a,b)}; -PrintDialog.prototype.create=function(a){function b(C){var E=m.checked||k.checked,I=parseInt(x.value)/100;isNaN(I)&&(I=1,x.value="100%");I*=.75;var F=f.pageFormat||mxConstants.PAGE_FORMAT_A4_PORTRAIT,O=1/f.pageScale;if(E){var S=m.checked?1:parseInt(p.value);isNaN(S)||(O=mxUtils.getScaleForPageCount(S,f,F))}f.getGraphBounds();var T=S=0;F=mxRectangle.fromRectangle(F);F.width=Math.ceil(F.width*I);F.height=Math.ceil(F.height*I);O*=I;!E&&f.pageVisible?(I=f.getPageLayout(),S-=I.x*F.width,T-=I.y*F.height): -E=!0;E=PrintDialog.createPrintPreview(f,O,F,0,S,T,E);E.open();C&&PrintDialog.printPreview(E)}var f=a.editor.graph,e=document.createElement("table");e.style.width="100%";e.style.height="100%";var g=document.createElement("tbody");var d=document.createElement("tr");var m=document.createElement("input");m.setAttribute("type","checkbox");var n=document.createElement("td");n.setAttribute("colspan","2");n.style.fontSize="10pt";n.appendChild(m);var t=document.createElement("span");mxUtils.write(t," "+mxResources.get("fitPage")); +PrintDialog.prototype.create=function(a){function b(C){var E=m.checked||k.checked,I=parseInt(x.value)/100;isNaN(I)&&(I=1,x.value="100%");I*=.75;var F=f.pageFormat||mxConstants.PAGE_FORMAT_A4_PORTRAIT,O=1/f.pageScale;if(E){var T=m.checked?1:parseInt(p.value);isNaN(T)||(O=mxUtils.getScaleForPageCount(T,f,F))}f.getGraphBounds();var S=T=0;F=mxRectangle.fromRectangle(F);F.width=Math.ceil(F.width*I);F.height=Math.ceil(F.height*I);O*=I;!E&&f.pageVisible?(I=f.getPageLayout(),T-=I.x*F.width,S-=I.y*F.height): +E=!0;E=PrintDialog.createPrintPreview(f,O,F,0,T,S,E);E.open();C&&PrintDialog.printPreview(E)}var f=a.editor.graph,e=document.createElement("table");e.style.width="100%";e.style.height="100%";var g=document.createElement("tbody");var d=document.createElement("tr");var m=document.createElement("input");m.setAttribute("type","checkbox");var n=document.createElement("td");n.setAttribute("colspan","2");n.style.fontSize="10pt";n.appendChild(m);var t=document.createElement("span");mxUtils.write(t," "+mxResources.get("fitPage")); n.appendChild(t);mxEvent.addListener(t,"click",function(C){m.checked=!m.checked;k.checked=!m.checked;mxEvent.consume(C)});mxEvent.addListener(m,"change",function(){k.checked=!m.checked});d.appendChild(n);g.appendChild(d);d=d.cloneNode(!1);var k=document.createElement("input");k.setAttribute("type","checkbox");n=document.createElement("td");n.style.fontSize="10pt";n.appendChild(k);t=document.createElement("span");mxUtils.write(t," "+mxResources.get("posterPrint")+":");n.appendChild(t);mxEvent.addListener(t, "click",function(C){k.checked=!k.checked;m.checked=!k.checked;mxEvent.consume(C)});d.appendChild(n);var p=document.createElement("input");p.setAttribute("value","1");p.setAttribute("type","number");p.setAttribute("min","1");p.setAttribute("size","4");p.setAttribute("disabled","disabled");p.style.width="50px";n=document.createElement("td");n.style.fontSize="10pt";n.appendChild(p);mxUtils.write(n," "+mxResources.get("pages")+" (max)");d.appendChild(n);g.appendChild(d);mxEvent.addListener(k,"change", function(){k.checked?p.removeAttribute("disabled"):p.setAttribute("disabled","disabled");m.checked=!k.checked});d=d.cloneNode(!1);n=document.createElement("td");mxUtils.write(n,mxResources.get("pageScale")+":");d.appendChild(n);n=document.createElement("td");var x=document.createElement("input");x.setAttribute("value","100 %");x.setAttribute("size","5");x.style.width="50px";n.appendChild(x);d.appendChild(n);g.appendChild(d);d=document.createElement("tr");n=document.createElement("td");n.colSpan=2; @@ -2040,23 +2040,23 @@ d.appendChild(m);m=document.createElement("td");var k=document.createElement("bu p.style.width="64px";p.style.cursor="pointer";p.style.padding="4px";var x=f.backgroundImage,B=f.background,C=function(E){a.showBackgroundImageDialog(function(I,F,O){F||(null!=I&&null!=I.src&&Graph.isPageLink(I.src)&&(I={originalSrc:I.src}),x=I);B=O;b()},x,B);mxEvent.consume(E)};mxEvent.addListener(k,"click",C);mxEvent.addListener(p,"click",C);b();m.appendChild(p);m.appendChild(k);d.appendChild(m);g.appendChild(d);d=document.createElement("tr");m=document.createElement("td");m.colSpan=2;m.style.paddingTop= "16px";m.setAttribute("align","right");k=mxUtils.button(mxResources.get("cancel"),function(){a.hideDialog()});k.className="geBtn";a.editor.cancelFirst&&m.appendChild(k);C=mxUtils.button(mxResources.get("apply"),function(){a.hideDialog();var E=parseInt(t.value);isNaN(E)||f.gridSize===E||f.setGridSize(E);E=new ChangePageSetup(a,B,x,n.get());E.ignoreColor=f.background==B;E.ignoreImage=(null!=f.backgroundImage?f.backgroundImage.src:null)===(null!=x?x.src:null);f.pageFormat.width==E.previousFormat.width&& f.pageFormat.height==E.previousFormat.height&&E.ignoreColor&&E.ignoreImage||f.model.execute(E)});C.className="geBtn gePrimaryBtn";m.appendChild(C);a.editor.cancelFirst||m.appendChild(k);d.appendChild(m);g.appendChild(d);e.appendChild(g);this.container=e}; -PageSetupDialog.addPageFormatPanel=function(a,b,f,e){function g(ba,U,R){if(R||x!=document.activeElement&&B!=document.activeElement){ba=!1;for(U=0;U=ba)x.value=f.width/100;ba=parseFloat(B.value);if(isNaN(ba)||0>=ba)B.value=f.height/100;ba=new mxRectangle(0,0,Math.floor(100*parseFloat(x.value)), -Math.floor(100*parseFloat(B.value)));"custom"!=n.value&&m.checked&&(ba=new mxRectangle(0,0,ba.height,ba.width));U&&S||ba.width==T.width&&ba.height==T.height||(T=ba,null!=e&&e(T))};mxEvent.addListener(b,"click",function(ba){d.checked=!0;P(ba);mxEvent.consume(ba)});mxEvent.addListener(k,"click",function(ba){m.checked=!0;P(ba);mxEvent.consume(ba)});mxEvent.addListener(x,"blur",P);mxEvent.addListener(x,"click",P);mxEvent.addListener(B,"blur",P);mxEvent.addListener(B,"click",P);mxEvent.addListener(m,"change", -P);mxEvent.addListener(d,"change",P);mxEvent.addListener(n,"change",function(ba){S="custom"==n.value;P(ba,!0)});P();return{set:function(ba){f=ba;g(null,null,!0)},get:function(){return T},widthInput:x,heightInput:B}}; +F.key);mxUtils.write(O,F.title);n.appendChild(O)}var T=!1;g();a.appendChild(n);mxUtils.br(a);a.appendChild(t);a.appendChild(p);var S=f,P=function(ba,U){ba=C[n.value];null!=ba.format?(x.value=ba.format.width/100,B.value=ba.format.height/100,p.style.display="none",t.style.display=""):(t.style.display="none",p.style.display="");ba=parseFloat(x.value);if(isNaN(ba)||0>=ba)x.value=f.width/100;ba=parseFloat(B.value);if(isNaN(ba)||0>=ba)B.value=f.height/100;ba=new mxRectangle(0,0,Math.floor(100*parseFloat(x.value)), +Math.floor(100*parseFloat(B.value)));"custom"!=n.value&&m.checked&&(ba=new mxRectangle(0,0,ba.height,ba.width));U&&T||ba.width==S.width&&ba.height==S.height||(S=ba,null!=e&&e(S))};mxEvent.addListener(b,"click",function(ba){d.checked=!0;P(ba);mxEvent.consume(ba)});mxEvent.addListener(k,"click",function(ba){m.checked=!0;P(ba);mxEvent.consume(ba)});mxEvent.addListener(x,"blur",P);mxEvent.addListener(x,"click",P);mxEvent.addListener(B,"blur",P);mxEvent.addListener(B,"click",P);mxEvent.addListener(m,"change", +P);mxEvent.addListener(d,"change",P);mxEvent.addListener(n,"change",function(ba){T="custom"==n.value;P(ba,!0)});P();return{set:function(ba){f=ba;g(null,null,!0)},get:function(){return S},widthInput:x,heightInput:B}}; PageSetupDialog.getFormats=function(){return[{key:"letter",title:'US-Letter (8,5" x 11")',format:mxConstants.PAGE_FORMAT_LETTER_PORTRAIT},{key:"legal",title:'US-Legal (8,5" x 14")',format:new mxRectangle(0,0,850,1400)},{key:"tabloid",title:'US-Tabloid (11" x 17")',format:new mxRectangle(0,0,1100,1700)},{key:"executive",title:'US-Executive (7" x 10")',format:new mxRectangle(0,0,700,1E3)},{key:"a0",title:"A0 (841 mm x 1189 mm)",format:new mxRectangle(0,0,3300,4681)},{key:"a1",title:"A1 (594 mm x 841 mm)", format:new mxRectangle(0,0,2339,3300)},{key:"a2",title:"A2 (420 mm x 594 mm)",format:new mxRectangle(0,0,1654,2336)},{key:"a3",title:"A3 (297 mm x 420 mm)",format:new mxRectangle(0,0,1169,1654)},{key:"a4",title:"A4 (210 mm x 297 mm)",format:mxConstants.PAGE_FORMAT_A4_PORTRAIT},{key:"a5",title:"A5 (148 mm x 210 mm)",format:new mxRectangle(0,0,583,827)},{key:"a6",title:"A6 (105 mm x 148 mm)",format:new mxRectangle(0,0,413,583)},{key:"a7",title:"A7 (74 mm x 105 mm)",format:new mxRectangle(0,0,291,413)}, {key:"b4",title:"B4 (250 mm x 353 mm)",format:new mxRectangle(0,0,980,1390)},{key:"b5",title:"B5 (176 mm x 250 mm)",format:new mxRectangle(0,0,690,980)},{key:"16-9",title:"16:9 (1600 x 900)",format:new mxRectangle(0,0,900,1600)},{key:"16-10",title:"16:10 (1920 x 1200)",format:new mxRectangle(0,0,1200,1920)},{key:"4-3",title:"4:3 (1600 x 1200)",format:new mxRectangle(0,0,1200,1600)},{key:"custom",title:mxResources.get("custom"),format:null}]}; var FilenameDialog=function(a,b,f,e,g,d,m,n,t,k,p,x,B){t=null!=t?t:!0;var C=document.createElement("table"),E=document.createElement("tbody");C.style.position="absolute";C.style.top="30px";C.style.left="20px";var I=document.createElement("tr");var F=document.createElement("td");F.style.textOverflow="ellipsis";F.style.textAlign="right";F.style.maxWidth=(B?B+15:100)+"px";F.style.fontSize="10pt";F.style.width=(B?B:84)+"px";mxUtils.write(F,(g||mxResources.get("filename"))+":");I.appendChild(F);var O= -document.createElement("input");O.setAttribute("value",b||"");O.style.marginLeft="4px";O.style.width=null!=x?x+"px":"180px";var S=mxUtils.button(f,function(){if(null==d||d(O.value))t&&a.hideDialog(),e(O.value)});S.className="geBtn gePrimaryBtn";this.init=function(){if(null!=g||null==m)if(O.focus(),mxClient.IS_GC||mxClient.IS_FF||5<=document.documentMode?O.select():document.execCommand("selectAll",!1,null),Graph.fileSupport){var T=C.parentNode;if(null!=T){var P=null;mxEvent.addListener(T,"dragleave", -function(ba){null!=P&&(P.style.backgroundColor="",P=null);ba.stopPropagation();ba.preventDefault()});mxEvent.addListener(T,"dragover",mxUtils.bind(this,function(ba){null==P&&(!mxClient.IS_IE||10'};var a=mxGraph.prototype.panGraph;mxGraph.prototype.panGraph=function(m,n){a.apply(this,arguments);if(null!=this.shiftPreview1){var t=this.view.canvas;null!=t.ownerSVGElement&&(t=t.ownerSVGElement);var k=this.gridSize*this.view.scale*this.view.gridSteps;k=-Math.round(k-mxUtils.mod(this.view.translate.x* this.view.scale+m,k))+"px "+-Math.round(k-mxUtils.mod(this.view.translate.y*this.view.scale+n,k))+"px";t.style.backgroundPosition=k}};mxGraph.prototype.updatePageBreaks=function(m,n,t){var k=this.view.scale,p=this.view.translate,x=this.pageFormat,B=k*this.pageScale,C=this.view.getBackgroundPageBounds();n=C.width;t=C.height;var E=new mxRectangle(k*p.x,k*p.y,x.width*B,x.height*B),I=(m=m&&Math.min(E.width,E.height)>this.minPageBreakDist)?Math.ceil(t/E.height)-1:0,F=m?Math.ceil(n/E.width)-1:0,O=C.x+n, -S=C.y+t;null==this.horizontalPageBreaks&&0document.documentMode)?mxEvent.addListener(this.diagramContainer, "contextmenu",b):this.diagramContainer.oncontextmenu=b):e.panningHandler.usePopupTrigger=!1;e.init(this.diagramContainer);mxClient.IS_SVG&&null!=e.view.getDrawPane()&&(b=e.view.getDrawPane().ownerSVGElement,null!=b&&(b.style.position="absolute"));this.hoverIcons=this.createHoverIcons();if(null!=e.graphHandler){var I=e.graphHandler.start;e.graphHandler.start=function(){null!=da.hoverIcons&&da.hoverIcons.reset();I.apply(this,arguments)}}mxEvent.addListener(this.diagramContainer,"mousemove",mxUtils.bind(this, function(N){var Q=mxUtils.getOffset(this.diagramContainer);0mxUtils.indexOf(this.toolbar.staticElements,N)&&(N.parentNode.removeChild(N),Q.push(N));N=K}N=this.toolbar.fontMenu;K=this.toolbar.sizeMenu;if(null==X)this.toolbar.createTextToolbar();else{for(var ca=0;caia&&null!=Ca&&!mxEvent.isShiftDown(Ia)&&(mxUtils.getValue(Ca.style,mxConstants.STYLE_SHAPE)!=mxUtils.getValue(Fa,mxConstants.STYLE_SHAPE)&&(mxUtils.getValue(Ca.style, -mxConstants.STYLE_STROKECOLOR,mxConstants.NONE)!=mxConstants.NONE||mxUtils.getValue(Ca.style,mxConstants.STYLE_FILLCOLOR,mxConstants.NONE)!=mxConstants.NONE||mxUtils.getValue(Ca.style,mxConstants.STYLE_GRADIENTCOLOR,mxConstants.NONE)!=mxConstants.NONE)||"image"==mxUtils.getValue(Fa,mxConstants.STYLE_SHAPE)||1500this.dropTargetDelay&&!this.isDropStyleTargetIgnored(Ca)&&(ja.model.isVertex(Ca.cell)&&null!=p||ja.model.isEdge(Ca.cell)&&ja.model.isEdge(e[0]))){if(ja.isCellEditable(Ca.cell)){S= -Ca;var qa=ja.model.isEdge(Ca.cell)?ja.view.getPoint(Ca):new mxPoint(Ca.getCenterX(),Ca.getCenterY());qa=new mxRectangle(qa.x-this.refreshTarget.width/2,qa.y-this.refreshTarget.height/2,this.refreshTarget.width,this.refreshTarget.height);X.style.left=Math.floor(qa.x)+"px";X.style.top=Math.floor(qa.y)+"px";null==Y&&(ja.container.appendChild(X),Y=X.parentNode);m(xa,ya,qa,X)}}else null==S||!mxUtils.contains(S,xa,ya)||1500this.dropTargetDelay&&!this.isDropStyleTargetIgnored(Ca)&&(ja.model.isVertex(Ca.cell)&&null!=p||ja.model.isEdge(Ca.cell)&&ja.model.isEdge(e[0]))){if(ja.isCellEditable(Ca.cell)){T= +Ca;var qa=ja.model.isEdge(Ca.cell)?ja.view.getPoint(Ca):new mxPoint(Ca.getCenterX(),Ca.getCenterY());qa=new mxRectangle(qa.x-this.refreshTarget.width/2,qa.y-this.refreshTarget.height/2,this.refreshTarget.width,this.refreshTarget.height);X.style.left=Math.floor(qa.x)+"px";X.style.top=Math.floor(qa.y)+"px";null==Y&&(ja.container.appendChild(X),Y=X.parentNode);m(xa,ya,qa,X)}}else null==T||!mxUtils.contains(T,xa,ya)||1500ia&&ia>this.dropTargetDelay||ja.model.isEdge(Ja)?Ca:null,null!=F&&qa){ta=[da,la,P,ba,U,R];for(qa=0;qaia&&ia>this.dropTargetDelay||ja.model.isEdge(Ja)?Ca:null,null!=F&&qa){ta=[da,la,P,ba,U,R];for(qa=0;qaB?"a":"p",tt:12>B?"am":"pm",T:12>B?"A":"P",TT:12>B?"AM":"PM",Z:f?"UTC":(String(a).match(g)||[""]).pop().replace(d,""),o:(0I||Math.abs(P.y-S.y)>I)&&(Math.abs(P.x-O.x)>I||Math.abs(P.y-O.y)>I)&&(Math.abs(P.x-Y.x)>I||Math.abs(P.y-Y.y)>I)&&(Math.abs(P.x-X.x)>I||Math.abs(P.y-X.y)>I)){X=P.x-S.x;Y=P.y-S.y;P={distSq:X*X+Y*Y,x:P.x,y:P.y};for(X=0;XP.distSq){T.splice(X,0,P);P=null;break}null==P||0!=T.length&&T[T.length-1].x===P.x&&T[T.length-1].y===P.y||T.push(P)}}}for(U=0;U< -T.length;U++)B=E(1,T[U].x,T[U].y)||B}P=x[x.length-1];B=E(0,P.x,P.y)||B}p.routedPoints=C;return B}return!1};var d=mxConnector.prototype.paintLine;mxConnector.prototype.paintLine=function(p,x,B){this.routedPoints=null!=this.state?this.state.routedPoints:null;if(this.outline||null==this.state||null==this.style||null==this.state.routedPoints||0==this.state.routedPoints.length)d.apply(this,arguments);else{var C=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2,E=(parseInt(mxUtils.getValue(this.style, -"jumpSize",Graph.defaultJumpSize))-2)/2+this.strokewidth,I=mxUtils.getValue(this.style,"jumpStyle","none"),F=!0,O=null,S=null,T=[],P=null;p.begin();for(var ba=0;baE*E&&0E*E&&(X=new mxPoint(R.x-P.x,R.y-P.y),U=new mxPoint(R.x+P.x,R.y+P.y),T.push(X),this.addPoints(p,T,B,C,!1,null,F),T=0>Math.round(P.x)||0==Math.round(P.x)&&0>=Math.round(P.y)?1:-1,F=!1,"sharp"==I?(p.lineTo(X.x-P.y*T,X.y+P.x*T),p.lineTo(U.x-P.y*T,U.y+P.x*T),p.lineTo(U.x,U.y)):"line"==I?(p.moveTo(X.x+P.y*T,X.y-P.x*T),p.lineTo(X.x-P.y*T,X.y+P.x*T),p.moveTo(U.x-P.y*T,U.y+P.x*T),p.lineTo(U.x+ -P.y*T,U.y-P.x*T),p.moveTo(U.x,U.y)):"arc"==I?(T*=1.3,p.curveTo(X.x-P.y*T,X.y+P.x*T,U.x-P.y*T,U.y+P.x*T,U.x,U.y)):(p.moveTo(U.x,U.y),F=!0),T=[U],X=!0))}else P=null;X||(T.push(R),O=R)}this.addPoints(p,T,B,C,!1,null,F);p.stroke()}};var m=mxGraphView.prototype.getFixedTerminalPoint;mxGraphView.prototype.getFixedTerminalPoint=function(p,x,B,C){return null!=x&&"centerPerimeter"==x.style[mxConstants.STYLE_PERIMETER]?new mxPoint(x.getCenterX(),x.getCenterY()):m.apply(this,arguments)};var n=mxGraphView.prototype.updateFloatingTerminalPoint; -mxGraphView.prototype.updateFloatingTerminalPoint=function(p,x,B,C){if(null==x||null==p||"1"!=x.style.snapToPoint&&"1"!=p.style.snapToPoint)n.apply(this,arguments);else{x=this.getTerminalPort(p,x,C);var E=this.getNextPoint(p,B,C),I=this.graph.isOrthogonal(p),F=mxUtils.toRadians(Number(x.style[mxConstants.STYLE_ROTATION]||"0")),O=new mxPoint(x.getCenterX(),x.getCenterY());if(0!=F){var S=Math.cos(-F),T=Math.sin(-F);E=mxUtils.getRotatedPoint(E,S,T,O)}S=parseFloat(p.style[mxConstants.STYLE_PERIMETER_SPACING]|| -0);S+=parseFloat(p.style[C?mxConstants.STYLE_SOURCE_PERIMETER_SPACING:mxConstants.STYLE_TARGET_PERIMETER_SPACING]||0);E=this.getPerimeterPoint(x,E,0==F&&I,S);0!=F&&(S=Math.cos(F),T=Math.sin(F),E=mxUtils.getRotatedPoint(E,S,T,O));p.setAbsoluteTerminalPoint(this.snapToAnchorPoint(p,x,B,C,E),C)}};mxGraphView.prototype.snapToAnchorPoint=function(p,x,B,C,E){if(null!=x&&null!=p){p=this.graph.getAllConnectionConstraints(x);C=B=null;if(null!=p)for(var I=0;II||Math.abs(P.y-T.y)>I)&&(Math.abs(P.x-O.x)>I||Math.abs(P.y-O.y)>I)&&(Math.abs(P.x-Y.x)>I||Math.abs(P.y-Y.y)>I)&&(Math.abs(P.x-X.x)>I||Math.abs(P.y-X.y)>I)){X=P.x-T.x;Y=P.y-T.y;P={distSq:X*X+Y*Y,x:P.x,y:P.y};for(X=0;XP.distSq){S.splice(X,0,P);P=null;break}null==P||0!=S.length&&S[S.length-1].x===P.x&&S[S.length-1].y===P.y||S.push(P)}}}for(U=0;U< +S.length;U++)B=E(1,S[U].x,S[U].y)||B}P=x[x.length-1];B=E(0,P.x,P.y)||B}p.routedPoints=C;return B}return!1};var d=mxConnector.prototype.paintLine;mxConnector.prototype.paintLine=function(p,x,B){this.routedPoints=null!=this.state?this.state.routedPoints:null;if(this.outline||null==this.state||null==this.style||null==this.state.routedPoints||0==this.state.routedPoints.length)d.apply(this,arguments);else{var C=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2,E=(parseInt(mxUtils.getValue(this.style, +"jumpSize",Graph.defaultJumpSize))-2)/2+this.strokewidth,I=mxUtils.getValue(this.style,"jumpStyle","none"),F=!0,O=null,T=null,S=[],P=null;p.begin();for(var ba=0;baE*E&&0E*E&&(X=new mxPoint(R.x-P.x,R.y-P.y),U=new mxPoint(R.x+P.x,R.y+P.y),S.push(X),this.addPoints(p,S,B,C,!1,null,F),S=0>Math.round(P.x)||0==Math.round(P.x)&&0>=Math.round(P.y)?1:-1,F=!1,"sharp"==I?(p.lineTo(X.x-P.y*S,X.y+P.x*S),p.lineTo(U.x-P.y*S,U.y+P.x*S),p.lineTo(U.x,U.y)):"line"==I?(p.moveTo(X.x+P.y*S,X.y-P.x*S),p.lineTo(X.x-P.y*S,X.y+P.x*S),p.moveTo(U.x-P.y*S,U.y+P.x*S),p.lineTo(U.x+ +P.y*S,U.y-P.x*S),p.moveTo(U.x,U.y)):"arc"==I?(S*=1.3,p.curveTo(X.x-P.y*S,X.y+P.x*S,U.x-P.y*S,U.y+P.x*S,U.x,U.y)):(p.moveTo(U.x,U.y),F=!0),S=[U],X=!0))}else P=null;X||(S.push(R),O=R)}this.addPoints(p,S,B,C,!1,null,F);p.stroke()}};var m=mxGraphView.prototype.getFixedTerminalPoint;mxGraphView.prototype.getFixedTerminalPoint=function(p,x,B,C){return null!=x&&"centerPerimeter"==x.style[mxConstants.STYLE_PERIMETER]?new mxPoint(x.getCenterX(),x.getCenterY()):m.apply(this,arguments)};var n=mxGraphView.prototype.updateFloatingTerminalPoint; +mxGraphView.prototype.updateFloatingTerminalPoint=function(p,x,B,C){if(null==x||null==p||"1"!=x.style.snapToPoint&&"1"!=p.style.snapToPoint)n.apply(this,arguments);else{x=this.getTerminalPort(p,x,C);var E=this.getNextPoint(p,B,C),I=this.graph.isOrthogonal(p),F=mxUtils.toRadians(Number(x.style[mxConstants.STYLE_ROTATION]||"0")),O=new mxPoint(x.getCenterX(),x.getCenterY());if(0!=F){var T=Math.cos(-F),S=Math.sin(-F);E=mxUtils.getRotatedPoint(E,T,S,O)}T=parseFloat(p.style[mxConstants.STYLE_PERIMETER_SPACING]|| +0);T+=parseFloat(p.style[C?mxConstants.STYLE_SOURCE_PERIMETER_SPACING:mxConstants.STYLE_TARGET_PERIMETER_SPACING]||0);E=this.getPerimeterPoint(x,E,0==F&&I,T);0!=F&&(T=Math.cos(F),S=Math.sin(F),E=mxUtils.getRotatedPoint(E,T,S,O));p.setAbsoluteTerminalPoint(this.snapToAnchorPoint(p,x,B,C,E),C)}};mxGraphView.prototype.snapToAnchorPoint=function(p,x,B,C,E){if(null!=x&&null!=p){p=this.graph.getAllConnectionConstraints(x);C=B=null;if(null!=p)for(var I=0;I
"));ea=Graph.sanitizeHtml(z?ea.replace(/\n/g,"").replace(/<br\s*.?>/g,"
"):ea,!0);this.textarea.className="mxCellEditor mxPlainTextEditor";var Z=mxConstants.DEFAULT_FONTSIZE;this.textarea.style.lineHeight=mxConstants.ABSOLUTE_LINE_HEIGHT? Math.round(Z*mxConstants.LINE_HEIGHT)+"px":mxConstants.LINE_HEIGHT;this.textarea.style.fontSize=Math.round(Z)+"px";this.textarea.style.textDecoration="";this.textarea.style.fontWeight="normal";this.textarea.style.fontStyle="";this.textarea.style.fontFamily=mxConstants.DEFAULT_FONTFAMILY;this.textarea.style.textAlign="left";this.textarea.style.width="";this.textarea.style.padding="2px";this.textarea.innerHTML!=ea&&(this.textarea.innerHTML=ea);this.codeViewMode=!0}this.textarea.focus();null!=this.switchSelectionState&& -this.restoreSelection(this.switchSelectionState);this.switchSelectionState=A;this.resize()}};var S=mxCellEditor.prototype.resize;mxCellEditor.prototype.resize=function(u,z){if(null!=this.textarea)if(u=this.graph.getView().getState(this.editingCell),this.codeViewMode&&null!=u){var A=u.view.scale;this.bounds=mxRectangle.fromRectangle(u);if(0==this.bounds.width&&0==this.bounds.height){this.bounds.width=160*A;this.bounds.height=60*A;var D=null!=u.text?u.text.margin:null;null==D&&(D=mxUtils.getAlignmentAsPoint(mxUtils.getValue(u.style, +this.restoreSelection(this.switchSelectionState);this.switchSelectionState=A;this.resize()}};var T=mxCellEditor.prototype.resize;mxCellEditor.prototype.resize=function(u,z){if(null!=this.textarea)if(u=this.graph.getView().getState(this.editingCell),this.codeViewMode&&null!=u){var A=u.view.scale;this.bounds=mxRectangle.fromRectangle(u);if(0==this.bounds.width&&0==this.bounds.height){this.bounds.width=160*A;this.bounds.height=60*A;var D=null!=u.text?u.text.margin:null;null==D&&(D=mxUtils.getAlignmentAsPoint(mxUtils.getValue(u.style, mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER),mxUtils.getValue(u.style,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE)));this.bounds.x+=D.x*this.bounds.width;this.bounds.y+=D.y*this.bounds.height}this.textarea.style.width=Math.round((this.bounds.width-4)/A)+"px";this.textarea.style.height=Math.round((this.bounds.height-4)/A)+"px";this.textarea.style.overflow="auto";this.textarea.clientHeight"));return A=Graph.sanitizeHtml(A,!0)};mxCellEditorGetCurrentValue=mxCellEditor.prototype.getCurrentValue; -mxCellEditor.prototype.getCurrentValue=function(u){if("0"==mxUtils.getValue(u.style,"html","0"))return mxCellEditorGetCurrentValue.apply(this,arguments);var z=Graph.sanitizeHtml(this.textarea.innerHTML,!0);return z="1"==mxUtils.getValue(u.style,"nl2Br","1")?z.replace(/\r\n/g,"
").replace(/\n/g,"
"):z.replace(/\r\n/g,"").replace(/\n/g,"")};var T=mxCellEditor.prototype.stopEditing;mxCellEditor.prototype.stopEditing=function(u){this.codeViewMode&&this.toggleViewMode();T.apply(this,arguments); +A+")")}else this.textarea.style.height="",this.textarea.style.overflow="",T.apply(this,arguments)};mxCellEditorGetInitialValue=mxCellEditor.prototype.getInitialValue;mxCellEditor.prototype.getInitialValue=function(u,z){if("0"==mxUtils.getValue(u.style,"html","0"))return mxCellEditorGetInitialValue.apply(this,arguments);var A=this.graph.getEditingValue(u.cell,z);"1"==mxUtils.getValue(u.style,"nl2Br","1")&&(A=A.replace(/\n/g,"
"));return A=Graph.sanitizeHtml(A,!0)};mxCellEditorGetCurrentValue=mxCellEditor.prototype.getCurrentValue; +mxCellEditor.prototype.getCurrentValue=function(u){if("0"==mxUtils.getValue(u.style,"html","0"))return mxCellEditorGetCurrentValue.apply(this,arguments);var z=Graph.sanitizeHtml(this.textarea.innerHTML,!0);return z="1"==mxUtils.getValue(u.style,"nl2Br","1")?z.replace(/\r\n/g,"
").replace(/\n/g,"
"):z.replace(/\r\n/g,"").replace(/\n/g,"")};var S=mxCellEditor.prototype.stopEditing;mxCellEditor.prototype.stopEditing=function(u){this.codeViewMode&&this.toggleViewMode();S.apply(this,arguments); this.focusContainer()};mxCellEditor.prototype.focusContainer=function(){try{this.graph.container.focus()}catch(u){}};var P=mxCellEditor.prototype.applyValue;mxCellEditor.prototype.applyValue=function(u,z){this.graph.getModel().beginUpdate();try{P.apply(this,arguments),""==z&&this.graph.isCellDeletable(u.cell)&&0==this.graph.model.getChildCount(u.cell)&&this.graph.isTransparentState(u)&&this.graph.removeCells([u.cell],!1)}finally{this.graph.getModel().endUpdate()}};mxCellEditor.prototype.getBackgroundColor= function(u){var z=mxUtils.getValue(u.style,mxConstants.STYLE_LABEL_BACKGROUNDCOLOR,null);null!=z&&z!=mxConstants.NONE||!(null!=u.cell.geometry&&0B;B++)(function(ha){mxEvent.addListener(k[ha],"click",function(){b(k[ha],""==k[ha].style.backgroundImage)})})(B);var Ia=mxUtils.bind(this,function(ha,Da,Ka){var Ha=f.editor.graph;g=f.getSelectionState(); ha=mxUtils.getValue(g.style,mxConstants.STYLE_FONTSTYLE,0);b(k[0],(ha&mxConstants.FONT_BOLD)==mxConstants.FONT_BOLD);b(k[1],(ha&mxConstants.FONT_ITALIC)==mxConstants.FONT_ITALIC);b(k[2],(ha&mxConstants.FONT_UNDERLINE)==mxConstants.FONT_UNDERLINE);t.firstChild.nodeValue=mxUtils.getValue(g.style,mxConstants.STYLE_FONTFAMILY,Menus.prototype.defaultFont);if(Ka||document.activeElement!=J)ha=parseFloat(mxUtils.getValue(g.style,mxConstants.STYLE_FONTSIZE,Menus.prototype.defaultFontSize)),J.value=isNaN(ha)? -"":ha+" pt";ha=g.cells.filter(function(La){return"SHAPE"===La.getAttribute("type")});0!==ha.length&&ha.map(function(La){return Ha.getCellStyle(La)}).forEach(function(La){var Ma=mxUtils.getValue(La,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER);b(C,Ma==mxConstants.ALIGN_LEFT);b(E,Ma==mxConstants.ALIGN_CENTER);b(I,Ma==mxConstants.ALIGN_RIGHT);La=mxUtils.getValue(La,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE);b(O,La==mxConstants.ALIGN_TOP);b(S,La==mxConstants.ALIGN_MIDDLE);b(T,La== +"":ha+" pt";ha=g.cells.filter(function(La){return"SHAPE"===La.getAttribute("type")});0!==ha.length&&ha.map(function(La){return Ha.getCellStyle(La)}).forEach(function(La){var Ma=mxUtils.getValue(La,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER);b(C,Ma==mxConstants.ALIGN_LEFT);b(E,Ma==mxConstants.ALIGN_CENTER);b(I,Ma==mxConstants.ALIGN_RIGHT);La=mxUtils.getValue(La,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE);b(O,La==mxConstants.ALIGN_TOP);b(T,La==mxConstants.ALIGN_MIDDLE);b(S,La== mxConstants.ALIGN_BOTTOM)});ha=mxUtils.getValue(g.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER);Da=mxUtils.getValue(g.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE);da.value=ha==mxConstants.ALIGN_LEFT&&Da==mxConstants.ALIGN_TOP?"topLeft":ha==mxConstants.ALIGN_CENTER&&Da==mxConstants.ALIGN_TOP?"top":ha==mxConstants.ALIGN_RIGHT&&Da==mxConstants.ALIGN_TOP?"topRight":ha==mxConstants.ALIGN_LEFT&&Da==mxConstants.ALIGN_BOTTOM?"bottomLeft":ha==mxConstants.ALIGN_CENTER&& Da==mxConstants.ALIGN_BOTTOM?"bottom":ha==mxConstants.ALIGN_RIGHT&&Da==mxConstants.ALIGN_BOTTOM?"bottomRight":ha==mxConstants.ALIGN_LEFT?"left":ha==mxConstants.ALIGN_RIGHT?"right":"center";if(Ka||document.activeElement!=ca)ha=parseFloat(mxUtils.getValue(g.style,mxConstants.STYLE_SPACING,2)),ca.value=isNaN(ha)?"":ha+" pt";if(Ka||document.activeElement!=K)ha=parseFloat(mxUtils.getValue(g.style,mxConstants.STYLE_SPACING_TOP,0)),K.value=isNaN(ha)?"":ha+" pt";if(Ka||document.activeElement!=Fa)ha=parseFloat(mxUtils.getValue(g.style, mxConstants.STYLE_SPACING_RIGHT,0)),Fa.value=isNaN(ha)?"":ha+" pt";if(Ka||document.activeElement!=na)ha=parseFloat(mxUtils.getValue(g.style,mxConstants.STYLE_SPACING_BOTTOM,0)),na.value=isNaN(ha)?"":ha+" pt";if(Ka||document.activeElement!=ia)ha=parseFloat(mxUtils.getValue(g.style,mxConstants.STYLE_SPACING_LEFT,0)),ia.value=isNaN(ha)?"":ha+" pt"});var Ja=this.installInputHandler(ca,mxConstants.STYLE_SPACING,2,-999,999," pt");var ta=this.installInputHandler(K,mxConstants.STYLE_SPACING_TOP,0,-999,999, @@ -3096,22 +3096,22 @@ var C=mxUtils.bind(this,function(Y,da,la,J,W){Y=this.editorUi.menus.styleChange( ["1","1 2"]).setAttribute("title",mxResources.get("dotted")+" (2)");C(Y,75,"dotted",[mxConstants.STYLE_DASHED,mxConstants.STYLE_DASH_PATTERN],["1","1 4"]).setAttribute("title",mxResources.get("dotted")+" (3)")}));var E=B.cloneNode(!1),I=this.editorUi.toolbar.addMenuFunctionInContainer(E,"geSprite-connection",mxResources.get("connection"),!1,mxUtils.bind(this,function(Y){this.editorUi.menus.styleChange(Y,"",[mxConstants.STYLE_SHAPE,mxConstants.STYLE_STARTSIZE,mxConstants.STYLE_ENDSIZE,"width"],[null, null,null,null],"geIcon geSprite geSprite-connection",null,!0).setAttribute("title",mxResources.get("line"))}));k=this.editorUi.toolbar.addMenuFunctionInContainer(E,"geSprite-orthogonal",mxResources.get("pattern"),!1,mxUtils.bind(this,function(Y){C(Y,33,"solid",[mxConstants.STYLE_DASHED,mxConstants.STYLE_DASH_PATTERN],[null,null]).setAttribute("title",mxResources.get("solid"));C(Y,33,"dashed",[mxConstants.STYLE_DASHED,mxConstants.STYLE_DASH_PATTERN],["1",null]).setAttribute("title",mxResources.get("dashed")); C(Y,33,"dotted",[mxConstants.STYLE_DASHED,mxConstants.STYLE_DASH_PATTERN],["1","1 1"]).setAttribute("title",mxResources.get("dotted")+" (1)");C(Y,33,"dotted",[mxConstants.STYLE_DASHED,mxConstants.STYLE_DASH_PATTERN],["1","1 2"]).setAttribute("title",mxResources.get("dotted")+" (2)");C(Y,33,"dotted",[mxConstants.STYLE_DASHED,mxConstants.STYLE_DASH_PATTERN],["1","1 4"]).setAttribute("title",mxResources.get("dotted")+" (3)")}));p=B.cloneNode(!1);var F=document.createElement("input");F.style.position= -"absolute";F.style.textAlign="right";F.style.marginTop="2px";F.style.width="52px";F.style.height="21px";F.style.left="146px";F.style.border="1px solid rgb(160, 160, 160)";F.style.borderRadius="4px";F.style.boxSizing="border-box";F.setAttribute("title",mxResources.get("linewidth"));B.appendChild(F);var O=F.cloneNode(!0);E.appendChild(O);var S=this.createStepper(F,b,1,9);S.style.display=F.style.display;S.style.marginTop="2px";S.style.left="198px";B.appendChild(S);S=this.createStepper(O,f,1,9);S.style.display= -O.style.display;S.style.marginTop="2px";O.style.position="absolute";S.style.left="198px";E.appendChild(S);mxEvent.addListener(F,"blur",b);mxEvent.addListener(F,"change",b);mxEvent.addListener(O,"blur",f);mxEvent.addListener(O,"change",f);var T=this.editorUi.toolbar.addMenuFunctionInContainer(p,"geSprite-orthogonal",mxResources.get("waypoints"),!1,mxUtils.bind(this,function(Y){"arrow"!=d.style.shape&&this.editorUi.menus.edgeStyleChange(Y,"",[mxConstants.STYLE_EDGE,mxConstants.STYLE_CURVED,mxConstants.STYLE_NOEDGESTYLE], +"absolute";F.style.textAlign="right";F.style.marginTop="2px";F.style.width="52px";F.style.height="21px";F.style.left="146px";F.style.border="1px solid rgb(160, 160, 160)";F.style.borderRadius="4px";F.style.boxSizing="border-box";F.setAttribute("title",mxResources.get("linewidth"));B.appendChild(F);var O=F.cloneNode(!0);E.appendChild(O);var T=this.createStepper(F,b,1,9);T.style.display=F.style.display;T.style.marginTop="2px";T.style.left="198px";B.appendChild(T);T=this.createStepper(O,f,1,9);T.style.display= +O.style.display;T.style.marginTop="2px";O.style.position="absolute";T.style.left="198px";E.appendChild(T);mxEvent.addListener(F,"blur",b);mxEvent.addListener(F,"change",b);mxEvent.addListener(O,"blur",f);mxEvent.addListener(O,"change",f);var S=this.editorUi.toolbar.addMenuFunctionInContainer(p,"geSprite-orthogonal",mxResources.get("waypoints"),!1,mxUtils.bind(this,function(Y){"arrow"!=d.style.shape&&this.editorUi.menus.edgeStyleChange(Y,"",[mxConstants.STYLE_EDGE,mxConstants.STYLE_CURVED,mxConstants.STYLE_NOEDGESTYLE], [null,null,null],"geIcon geSprite geSprite-straight",null,!0).setAttribute("title",mxResources.get("straight"))})),P=this.editorUi.toolbar.addMenuFunctionInContainer(p,"geSprite-startclassic",mxResources.get("linestart"),!1,mxUtils.bind(this,function(Y){if("connector"==d.style.shape||"flexArrow"==d.style.shape||"filledEdge"==d.style.shape){var da=this.editorUi.menus.edgeStyleChange(Y,"",[mxConstants.STYLE_STARTARROW,"startFill"],[mxConstants.NONE,0],"geIcon",null,!1);da.setAttribute("title",mxResources.get("none")); var la=document.createElement("font");la.style.fontSize="10px";mxUtils.write(la,mxResources.get("none"));da.firstChild.firstChild.appendChild(la);"connector"==d.style.shape||"filledEdge"==d.style.shape?Format.processMenuIcon(this.editorUi.menus.edgeStyleChange(Y,"",[mxConstants.STYLE_STARTARROW,"startFill"],[mxConstants.ARROW_CLASSIC,1],null,null,!1,Format.classicFilledMarkerImage.src)):this.editorUi.menus.edgeStyleChange(Y,"",[mxConstants.STYLE_STARTARROW],[mxConstants.ARROW_BLOCK],"geIcon geSprite geSprite-startblocktrans", null,!1).setAttribute("title",mxResources.get("block"));Y.div.style.width="40px";window.setTimeout(mxUtils.bind(this,function(){null!=Y.div&&mxUtils.fit(Y.div)}),0)}})),ba=this.editorUi.toolbar.addMenuFunctionInContainer(p,"geSprite-endclassic",mxResources.get("lineend"),!1,mxUtils.bind(this,function(Y){if("connector"==d.style.shape||"flexArrow"==d.style.shape||"filledEdge"==d.style.shape){var da=this.editorUi.menus.edgeStyleChange(Y,"",[mxConstants.STYLE_ENDARROW,"endFill"],[mxConstants.NONE,0], "geIcon",null,!1);da.setAttribute("title",mxResources.get("none"));var la=document.createElement("font");la.style.fontSize="10px";mxUtils.write(la,mxResources.get("none"));da.firstChild.firstChild.appendChild(la);"connector"==d.style.shape||"filledEdge"==d.style.shape?Format.processMenuIcon(this.editorUi.menus.edgeStyleChange(Y,"",[mxConstants.STYLE_ENDARROW,"endFill"],[mxConstants.ARROW_CLASSIC,1],null,null,!1,Format.classicFilledMarkerImage.src),"scaleX(-1)"):this.editorUi.menus.edgeStyleChange(Y, -"",[mxConstants.STYLE_ENDARROW],[mxConstants.ARROW_BLOCK],"geIcon geSprite geSprite-endblocktrans",null,!1).setAttribute("title",mxResources.get("block"));Y.div.style.width="40px";window.setTimeout(mxUtils.bind(this,function(){null!=Y.div&&mxUtils.fit(Y.div)}),0)}}));p=this.addArrow(I,8);p.nextSibling.style.position="relative";p.nextSibling.style.top="-2px";p=this.addArrow(T,10);p.nextSibling.style.position="relative";p.nextSibling.style.top="-3px";T.getElementsByTagName("img")[0].style.top="-1px"; -this.addArrow(P,null,!0);this.addArrow(ba,null,!0);p=this.addArrow(t,9);p.className="geIcon";p.style.width="auto";S=this.addArrow(k,9);S.className="geIcon";S.style.width="22px";var U=document.createElement("div");U.style.width="84px";U.style.height="1px";U.style.borderBottom="1px solid "+this.defaultStrokeColor;U.style.marginBottom="7px";p.appendChild(U);var R=document.createElement("div");R.style.width="23px";R.style.height="1px";R.style.borderBottom="1px solid "+this.defaultStrokeColor;R.style.marginBottom= -"7px";S.appendChild(R);t.style.height="15px";t.style.marginLeft="16px";k.style.height="15px";k.style.marginLeft="3px";I.style.marginLeft="10px";I.style.height="15px";T.style.marginLeft="10px";T.style.height="17px";P.style.marginLeft="3px";P.style.height="17px";ba.style.marginLeft="3px";ba.style.height="17px";0===d.cells.filter(function(Y){return g.getModel().isEdge(Y)&&"LINK"===Y.getAttribute("type")&&"SIMPLE"!==Y.getAttribute("linkType")}).length&&a.appendChild(m);a.appendChild(B);t=B.cloneNode(!1); +"",[mxConstants.STYLE_ENDARROW],[mxConstants.ARROW_BLOCK],"geIcon geSprite geSprite-endblocktrans",null,!1).setAttribute("title",mxResources.get("block"));Y.div.style.width="40px";window.setTimeout(mxUtils.bind(this,function(){null!=Y.div&&mxUtils.fit(Y.div)}),0)}}));p=this.addArrow(I,8);p.nextSibling.style.position="relative";p.nextSibling.style.top="-2px";p=this.addArrow(S,10);p.nextSibling.style.position="relative";p.nextSibling.style.top="-3px";S.getElementsByTagName("img")[0].style.top="-1px"; +this.addArrow(P,null,!0);this.addArrow(ba,null,!0);p=this.addArrow(t,9);p.className="geIcon";p.style.width="auto";T=this.addArrow(k,9);T.className="geIcon";T.style.width="22px";var U=document.createElement("div");U.style.width="84px";U.style.height="1px";U.style.borderBottom="1px solid "+this.defaultStrokeColor;U.style.marginBottom="7px";p.appendChild(U);var R=document.createElement("div");R.style.width="23px";R.style.height="1px";R.style.borderBottom="1px solid "+this.defaultStrokeColor;R.style.marginBottom= +"7px";T.appendChild(R);t.style.height="15px";t.style.marginLeft="16px";k.style.height="15px";k.style.marginLeft="3px";I.style.marginLeft="10px";I.style.height="15px";S.style.marginLeft="10px";S.style.height="17px";P.style.marginLeft="3px";P.style.height="17px";ba.style.marginLeft="3px";ba.style.height="17px";0===d.cells.filter(function(Y){return g.getModel().isEdge(Y)&&"LINK"===Y.getAttribute("type")&&"SIMPLE"!==Y.getAttribute("linkType")}).length&&a.appendChild(m);a.appendChild(B);t=B.cloneNode(!1); t.style.padding="5px 4px 6px 0px";t.style.fontWeight="normal";m=m.cloneNode(!1);m.style.fontWeight="normal";m.style.position="relative";m.style.paddingLeft="16px";m.style.marginBottom="2px";m.style.marginTop="6px";m.style.borderWidth="0px";m.style.paddingBottom="18px";m.className="FormatPanel-perimeterPanel";t=document.createElement("div");t.style.position="absolute";t.style.marginLeft="3px";t.style.marginBottom="12px";t.style.marginTop="1px";t.style.fontWeight="normal";t.style.width="120px";mxUtils.write(t, mxResources.get("perimeter"));m.appendChild(t);this.addUnitInput(m,"pt",30,52,function(){(void 0).apply(this,arguments)});d.vertices.length==d.cells.length&&a.appendChild(m);var X=mxUtils.bind(this,function(Y,da,la){function J(W,N,Q,K){Q=Q.getElementsByTagName("div")[0];null!=Q&&e.updateCssForMarker(Q,K,d.style.shape,W,N);return Q}d=e.getSelectionState();if(la||document.activeElement!=F)Y=parseFloat(mxUtils.getValue(d.style,mxConstants.STYLE_STROKEWIDTH,1)),F.value=isNaN(Y)?"":Y+" pt";if(la||document.activeElement!= O)Y=parseFloat(mxUtils.getValue(d.style,mxConstants.STYLE_STROKEWIDTH,1)),O.value=isNaN(Y)?"":Y+" pt";n.style.visibility="connector"==d.style.shape||"filledEdge"==d.style.shape?"":"hidden";"1"==mxUtils.getValue(d.style,mxConstants.STYLE_CURVED,null)?n.value="curved":"1"==mxUtils.getValue(d.style,mxConstants.STYLE_ROUNDED,null)&&(n.value="rounded");"1"==mxUtils.getValue(d.style,mxConstants.STYLE_DASHED,null)?null==mxUtils.getValue(d.style,mxConstants.STYLE_DASH_PATTERN,null)?U.style.borderBottom="1px dashed "+ -this.defaultStrokeColor:U.style.borderBottom="1px dotted "+this.defaultStrokeColor:U.style.borderBottom="1px solid "+this.defaultStrokeColor;R.style.borderBottom=U.style.borderBottom;la=T.getElementsByTagName("div")[0];null!=la&&(Y=mxUtils.getValue(d.style,mxConstants.STYLE_EDGE,null),"1"==mxUtils.getValue(d.style,mxConstants.STYLE_NOEDGESTYLE,null)&&(Y=null),"orthogonalEdgeStyle"==Y&&"1"==mxUtils.getValue(d.style,mxConstants.STYLE_CURVED,null)?la.className="geSprite geSprite-curved":la.className= +this.defaultStrokeColor:U.style.borderBottom="1px dotted "+this.defaultStrokeColor:U.style.borderBottom="1px solid "+this.defaultStrokeColor;R.style.borderBottom=U.style.borderBottom;la=S.getElementsByTagName("div")[0];null!=la&&(Y=mxUtils.getValue(d.style,mxConstants.STYLE_EDGE,null),"1"==mxUtils.getValue(d.style,mxConstants.STYLE_NOEDGESTYLE,null)&&(Y=null),"orthogonalEdgeStyle"==Y&&"1"==mxUtils.getValue(d.style,mxConstants.STYLE_CURVED,null)?la.className="geSprite geSprite-curved":la.className= "straight"==Y||"none"==Y||null==Y?"geSprite geSprite-straight":"entityRelationEdgeStyle"==Y?"geSprite geSprite-entity":"elbowEdgeStyle"==Y?"geSprite "+("vertical"==mxUtils.getValue(d.style,mxConstants.STYLE_ELBOW,null)?"geSprite-verticalelbow":"geSprite-horizontalelbow"):"isometricEdgeStyle"==Y?"geSprite "+("vertical"==mxUtils.getValue(d.style,mxConstants.STYLE_ELBOW,null)?"geSprite-verticalisometric":"geSprite-horizontalisometric"):"geSprite geSprite-orthogonal");la=I.getElementsByTagName("div")[0]; null!=la&&(la.className="link"==d.style.shape?"geSprite geSprite-linkedge":"flexArrow"==d.style.shape?"geSprite geSprite-arrow":"arrow"==d.style.shape?"geSprite geSprite-simplearrow":"geSprite geSprite-connection");E.style.display="none";B.style.display="";Graph.lineJumpsEnabled&&0S&&(m=function(R){mxEvent.addListener(R,"mouseenter",function(){R.style.opacity="1"});mxEvent.addListener(R,"mouseleave",function(){R.style.opacity="0.5"})},k=document.createElement("div"),k.style.className="geAdaptiveAsset",k.style.position="absolute", +J));F.appendChild(J)}),T=Math.ceil(Editor.styles.length/10);this.format.currentStylePage=null!=this.format.currentStylePage?this.format.currentStylePage:0;var S=[],P=mxUtils.bind(this,function(){0T&&(m=function(R){mxEvent.addListener(R,"mouseenter",function(){R.style.opacity="1"});mxEvent.addListener(R,"mouseleave",function(){R.style.opacity="0.5"})},k=document.createElement("div"),k.style.className="geAdaptiveAsset",k.style.position="absolute", k.style.left="0px",k.style.top="0px",k.style.bottom="0px",k.style.width="24px",k.style.height="24px",k.style.margin="0px",k.style.cursor="pointer",k.style.opacity="0.5",k.style.backgroundRepeat="no-repeat",k.style.backgroundPosition="center center",k.style.backgroundSize="24px 24px",k.style.backgroundImage="url("+Editor.previousImage+")",p=k.cloneNode(!1),p.style.backgroundImage="url("+Editor.nextImage+")",p.style.left="",p.style.right="2px",d.appendChild(k),d.appendChild(p),mxEvent.addListener(k, -"click",mxUtils.bind(this,function(){ba(mxUtils.mod(this.format.currentStylePage-1,S))})),mxEvent.addListener(p,"click",mxUtils.bind(this,function(){ba(mxUtils.mod(this.format.currentStylePage+1,S))})),m(k),m(p))}else P();return a}; +"click",mxUtils.bind(this,function(){ba(mxUtils.mod(this.format.currentStylePage-1,T))})),mxEvent.addListener(p,"click",mxUtils.bind(this,function(){ba(mxUtils.mod(this.format.currentStylePage+1,T))})),m(k),m(p))}else P();return a}; DiagramStylePanel.prototype.addResetButton=function(a){var b=this.editorUi,f=b.editor.graph,e=f.model,g=mxUtils.button(mxResources.get("reset"),mxUtils.bind(this,function(d){d=f.getVerticesAndEdges(!0,!0);this.format.rounded=!1;this.format.curved=!1;if(0w+y?c.y=r.y:c.x=r.x);return mxUtils.getPerimeterPoint(H,c,r)};mxStyleRegistry.putValue("parallelogramPerimeter",mxPerimeter.ParallelogramPerimeter);mxPerimeter.TrapezoidPerimeter=function(c,h,r,l){var q="0"!=mxUtils.getValue(h.style, "fixedSize","0"),v=q?P.prototype.fixedSize:P.prototype.size;null!=h&&(v=mxUtils.getValue(h.style,"size",v));q&&(v*=h.view.scale);var w=c.x,H=c.y,y=c.width,aa=c.height;h=null!=h?mxUtils.getValue(h.style,mxConstants.STYLE_DIRECTION,mxConstants.DIRECTION_EAST):mxConstants.DIRECTION_EAST;h==mxConstants.DIRECTION_EAST?(q=q?Math.max(0,Math.min(.5*y,v)):y*Math.max(0,Math.min(1,v)),H=[new mxPoint(w+q,H),new mxPoint(w+y-q,H),new mxPoint(w+y,H+aa),new mxPoint(w,H+aa),new mxPoint(w+q,H)]):h==mxConstants.DIRECTION_WEST? (q=q?Math.max(0,Math.min(y,v)):y*Math.max(0,Math.min(1,v)),H=[new mxPoint(w,H),new mxPoint(w+y,H),new mxPoint(w+y-q,H+aa),new mxPoint(w+q,H+aa),new mxPoint(w,H)]):h==mxConstants.DIRECTION_NORTH?(q=q?Math.max(0,Math.min(aa,v)):aa*Math.max(0,Math.min(1,v)),H=[new mxPoint(w,H+q),new mxPoint(w+y,H),new mxPoint(w+y,H+aa),new mxPoint(w,H+aa-q),new mxPoint(w,H+q)]):(q=q?Math.max(0,Math.min(aa,v)):aa*Math.max(0,Math.min(1,v)),H=[new mxPoint(w,H),new mxPoint(w+y,H+q),new mxPoint(w+y,H+aa-q),new mxPoint(w, @@ -3362,23 +3362,23 @@ h.push(gb(c));return h},module:function(c){return[Wa(c,["jettyWidth","jettyHeigh r.y-h.y))/2)})]},corner:function(c){return[Wa(c,["dx","dy"],function(h){var r=Math.max(0,Math.min(h.width,mxUtils.getValue(this.state.style,"dx",Ma.prototype.dx))),l=Math.max(0,Math.min(h.height,mxUtils.getValue(this.state.style,"dy",Ma.prototype.dy)));return new mxPoint(h.x+r,h.y+l)},function(h,r){this.state.style.dx=Math.round(Math.max(0,Math.min(h.width,r.x-h.x)));this.state.style.dy=Math.round(Math.max(0,Math.min(h.height,r.y-h.y)))},!1)]},tee:function(c){return[Wa(c,["dx","dy"],function(h){var r= Math.max(0,Math.min(h.width,mxUtils.getValue(this.state.style,"dx",eb.prototype.dx))),l=Math.max(0,Math.min(h.height,mxUtils.getValue(this.state.style,"dy",eb.prototype.dy)));return new mxPoint(h.x+(h.width+r)/2,h.y+l)},function(h,r){this.state.style.dx=Math.round(Math.max(0,2*Math.min(h.width/2,r.x-h.x-h.width/2)));this.state.style.dy=Math.round(Math.max(0,Math.min(h.height,r.y-h.y)))},!1)]},singleArrow:ib(1),doubleArrow:ib(.5),"mxgraph.arrows2.wedgeArrow":hb(20,20),"mxgraph.arrows2.wedgeArrowDashed":hb(20, 20),"mxgraph.arrows2.wedgeArrowDashed2":hb(20,20),folder:function(c){return[Wa(c,["tabWidth","tabHeight"],function(h){var r=Math.max(0,Math.min(h.width,mxUtils.getValue(this.state.style,"tabWidth",E.prototype.tabWidth))),l=Math.max(0,Math.min(h.height,mxUtils.getValue(this.state.style,"tabHeight",E.prototype.tabHeight)));mxUtils.getValue(this.state.style,"tabPosition",E.prototype.tabPosition)==mxConstants.ALIGN_RIGHT&&(r=h.width-r);return new mxPoint(h.x+r,h.y+l)},function(h,r){var l=Math.max(0,Math.min(h.width, -r.x-h.x));mxUtils.getValue(this.state.style,"tabPosition",E.prototype.tabPosition)==mxConstants.ALIGN_RIGHT&&(l=h.width-l);this.state.style.tabWidth=Math.round(l);this.state.style.tabHeight=Math.round(Math.max(0,Math.min(h.height,r.y-h.y)))},!1)]},document:function(c){return[Wa(c,["size"],function(h){var r=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",S.prototype.size))));return new mxPoint(h.x+3*h.width/4,h.y+(1-r)*h.height)},function(h,r){this.state.style.size=Math.max(0, +r.x-h.x));mxUtils.getValue(this.state.style,"tabPosition",E.prototype.tabPosition)==mxConstants.ALIGN_RIGHT&&(l=h.width-l);this.state.style.tabWidth=Math.round(l);this.state.style.tabHeight=Math.round(Math.max(0,Math.min(h.height,r.y-h.y)))},!1)]},document:function(c){return[Wa(c,["size"],function(h){var r=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",T.prototype.size))));return new mxPoint(h.x+3*h.width/4,h.y+(1-r)*h.height)},function(h,r){this.state.style.size=Math.max(0, Math.min(1,(h.y+h.height-r.y)/h.height))},!1)]},tape:function(c){return[Wa(c,["size"],function(h){var r=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",O.prototype.size))));return new mxPoint(h.getCenterX(),h.y+r*h.height/2)},function(h,r){this.state.style.size=Math.max(0,Math.min(1,(r.y-h.y)/h.height*2))},!1)]},isoCube2:function(c){return[Wa(c,["isoAngle"],function(h){var r=Math.max(.01,Math.min(94,parseFloat(mxUtils.getValue(this.state.style,"isoAngle",p.isoAngle))))*Math.PI/ 200;return new mxPoint(h.x,h.y+Math.min(h.width*Math.tan(r),.5*h.height))},function(h,r){this.state.style.isoAngle=Math.max(0,50*(r.y-h.y)/h.height)},!0)]},cylinder2:bb(x.prototype.size),cylinder3:bb(B.prototype.size),offPageConnector:function(c){return[Wa(c,["size"],function(h){var r=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",L.prototype.size))));return new mxPoint(h.getCenterX(),h.y+(1-r)*h.height)},function(h,r){this.state.style.size=Math.max(0,Math.min(1,(h.y+h.height- r.y)/h.height))},!1)]},"mxgraph.basic.rect":function(c){var h=[Graph.createHandle(c,["size"],function(r){var l=Math.max(0,Math.min(r.width/2,r.height/2,parseFloat(mxUtils.getValue(this.state.style,"size",this.size))));return new mxPoint(r.x+l,r.y+l)},function(r,l){this.state.style.size=Math.round(100*Math.max(0,Math.min(r.height/2,r.width/2,l.x-r.x)))/100})];c=Graph.createHandle(c,["indent"],function(r){var l=Math.max(0,Math.min(100,parseFloat(mxUtils.getValue(this.state.style,"indent",this.dx2)))); return new mxPoint(r.x+.75*r.width,r.y+l*r.height/200)},function(r,l){this.state.style.indent=Math.round(100*Math.max(0,Math.min(100,200*(l.y-r.y)/r.height)))/100});h.push(c);return h},step:qb(la.prototype.size,!0,null,!0,la.prototype.fixedSize),hexagon:qb(J.prototype.size,!0,.5,!0,J.prototype.fixedSize),curlyBracket:qb(ba.prototype.size,!1),display:qb(Aa.prototype.size,!1),cube:sb(1,e.prototype.size,!1),card:sb(.5,F.prototype.size,!0),loopLimit:sb(.5,G.prototype.size,!0),trapezoid:ub(.5,P.prototype.size, -P.prototype.fixedSize),parallelogram:ub(1,T.prototype.size,T.prototype.fixedSize)};Graph.createHandle=Wa;Graph.handleFactory=rb;var tb=mxVertexHandler.prototype.createCustomHandles;mxVertexHandler.prototype.createCustomHandles=function(){var c=tb.apply(this,arguments);if(this.graph.isCellRotatable(this.state.cell)){var h=this.state.style.shape;null==mxCellRenderer.defaultShapes[h]&&null==mxStencilRegistry.getStencil(h)?h=mxConstants.SHAPE_RECTANGLE:this.state.view.graph.isSwimlane(this.state.cell)&& -(h=mxConstants.SHAPE_SWIMLANE);h=rb[h];null==h&&null!=this.state.shape&&this.state.shape.isRoundable()&&(h=rb[mxConstants.SHAPE_RECTANGLE]);null!=h&&(h=h(this.state),null!=h&&(c=null==c?h:c.concat(h)))}return c};mxEdgeHandler.prototype.createCustomHandles=function(){var c=this.state.style.shape;null==mxCellRenderer.defaultShapes[c]&&null==mxStencilRegistry.getStencil(c)&&(c=mxConstants.SHAPE_CONNECTOR);c=rb[c];return null!=c?c(this.state):null}}else Graph.createHandle=function(){},Graph.handleFactory= -{};var jb=new mxPoint(1,0),kb=new mxPoint(1,0),mb=mxUtils.toRadians(-30);jb=mxUtils.getRotatedPoint(jb,Math.cos(mb),Math.sin(mb));var ob=mxUtils.toRadians(-150);kb=mxUtils.getRotatedPoint(kb,Math.cos(ob),Math.sin(ob));mxEdgeStyle.IsometricConnector=function(c,h,r,l,q){var v=c.view;l=null!=l&&0=2*l&&c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));return c};mxRectangleShape.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(1, -0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0), -new mxConnectionConstraint(new mxPoint(1,1),!0)];mxEllipse.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(1,.5))];Qa.prototype.constraints=mxRectangleShape.prototype.constraints; +P.prototype.fixedSize),parallelogram:ub(1,S.prototype.size,S.prototype.fixedSize)};Graph.createHandle=Wa;Graph.handleFactory=rb;var tb=mxVertexHandler.prototype.createCustomHandles;mxVertexHandler.prototype.createCustomHandles=function(){var c=tb.apply(this,arguments);if(this.graph.isCellRotatable(this.state.cell)){var h=this.state.style.shape;null==mxCellRenderer.defaultShapes[h]&&null==mxStencilRegistry.getStencil(h)?h=mxConstants.SHAPE_RECTANGLE:this.state.view.graph.isSwimlane(this.state.cell)&& +(h=mxConstants.SHAPE_SWIMLANE);h=rb[h];null==h&&null!=this.state.shape&&this.state.shape.isRoundable()&&(h=rb[mxConstants.SHAPE_RECTANGLE]);null!=h&&(h=h(this.state),null!=h&&(c=null==c?h:c.concat(h)))}return c};mxEdgeHandler.prototype.createCustomHandles=function(){if("LINK"===this.state.cell.getAttribute("type"))return null;var c=this.state.style.shape;null==mxCellRenderer.defaultShapes[c]&&null==mxStencilRegistry.getStencil(c)&&(c=mxConstants.SHAPE_CONNECTOR);c=rb[c];return null!=c?c(this.state): +null}}else Graph.createHandle=function(){},Graph.handleFactory={};var jb=new mxPoint(1,0),kb=new mxPoint(1,0),mb=mxUtils.toRadians(-30);jb=mxUtils.getRotatedPoint(jb,Math.cos(mb),Math.sin(mb));var ob=mxUtils.toRadians(-150);kb=mxUtils.getRotatedPoint(kb,Math.cos(ob),Math.sin(ob));mxEdgeStyle.IsometricConnector=function(c,h,r,l,q){var v=c.view;l=null!=l&&0=2*l&&c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));return c};mxRectangleShape.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75, +0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75, +1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0)];mxEllipse.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(1,.5))];Qa.prototype.constraints=mxRectangleShape.prototype.constraints; mxImageShape.prototype.constraints=mxRectangleShape.prototype.constraints;mxSwimlane.prototype.constraints=mxRectangleShape.prototype.constraints;W.prototype.constraints=mxRectangleShape.prototype.constraints;mxLabel.prototype.constraints=mxRectangleShape.prototype.constraints;t.prototype.getConstraints=function(c,h,r){c=[];var l=Math.max(0,Math.min(h,Math.min(r,parseFloat(mxUtils.getValue(this.style,"size",this.size)))));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0, 0),!1,null,.5*(h-l),0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,h-l,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,h-.5*l,.5*l));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,h,l));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,h,.5*(r+l)));c.push(new mxConnectionConstraint(new mxPoint(1,1),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0, .5),!1));h>=2*l&&c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));return c};F.prototype.getConstraints=function(c,h,r){c=[];var l=Math.max(0,Math.min(h,Math.min(r,parseFloat(mxUtils.getValue(this.style,"size",this.size)))));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(h+l),0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*l,.5*l));c.push(new mxConnectionConstraint(new mxPoint(0, @@ -3406,7 +3406,7 @@ Z.prototype.constraints=mxEllipse.prototype.constraints;Ra.prototype.constraints 0),!1),new mxConnectionConstraint(new mxPoint(.5,1),!1)];mxDoubleEllipse.prototype.constraints=mxEllipse.prototype.constraints;mxRhombus.prototype.constraints=mxEllipse.prototype.constraints;mxTriangle.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(1, .5),!0)];mxHexagon.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.375,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.625,0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(.375, 1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.625,1),!0)];mxCloud.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,.25),!1),new mxConnectionConstraint(new mxPoint(.4,.1),!1),new mxConnectionConstraint(new mxPoint(.16,.55),!1),new mxConnectionConstraint(new mxPoint(.07,.4),!1),new mxConnectionConstraint(new mxPoint(.31,.8),!1),new mxConnectionConstraint(new mxPoint(.13,.77),!1),new mxConnectionConstraint(new mxPoint(.8,.8),!1),new mxConnectionConstraint(new mxPoint(.55, -.95),!1),new mxConnectionConstraint(new mxPoint(.875,.5),!1),new mxConnectionConstraint(new mxPoint(.96,.7),!1),new mxConnectionConstraint(new mxPoint(.625,.2),!1),new mxConnectionConstraint(new mxPoint(.88,.25),!1)];T.prototype.constraints=mxRectangleShape.prototype.constraints;P.prototype.constraints=mxRectangleShape.prototype.constraints;S.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75, +.95),!1),new mxConnectionConstraint(new mxPoint(.875,.5),!1),new mxConnectionConstraint(new mxPoint(.96,.7),!1),new mxConnectionConstraint(new mxPoint(.625,.2),!1),new mxConnectionConstraint(new mxPoint(.88,.25),!1)];S.prototype.constraints=mxRectangleShape.prototype.constraints;P.prototype.constraints=mxRectangleShape.prototype.constraints;T.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75, 0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0)];mxArrow.prototype.constraints=null;eb.prototype.getConstraints=function(c,h,r){c=[];var l=Math.max(0,Math.min(h,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),q=Math.max(0,Math.min(r,parseFloat(mxUtils.getValue(this.style, "dy",this.dy))));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,h,.5*q));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,h,q));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.75*h+.25*l,q));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(h+l),q));c.push(new mxConnectionConstraint(new mxPoint(0, 0),!1,null,.5*(h+l),.5*(r+q)));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(h+l),r));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(h-l),r));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(h-l),.5*(r+q)));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(h-l),q));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*h-.25*l,q));c.push(new mxConnectionConstraint(new mxPoint(0, @@ -3430,8 +3430,8 @@ this.addAction("open...",function(){window.openNew=!0;window.openKey="open";e.op 620,420,!0,!1);k.init()});this.addAction("pageSetup...",function(){e.showDialog((new PageSetupDialog(e)).container,320,240,!0,!0)}).isEnabled=m;this.addAction("print...",function(){e.showDialog((new PrintDialog(e)).container,300,180,!0,!0)},null,"sprite-print",Editor.ctrlKey+"+P");this.addAction("preview",function(){mxUtils.show(d,null,10,10)});this.addAction("undo",function(){e.undo()},null,"sprite-undo",Editor.ctrlKey+"+Z");this.addAction("redo",function(){e.redo()},null,"sprite-redo",mxClient.IS_WIN? Editor.ctrlKey+"+Y":Editor.ctrlKey+"+Shift+Z");this.addAction("cut",function(){var k=null;try{k=e.copyXml(),null!=k&&d.removeCells(k,!1)}catch(p){}null==k&&mxClipboard.cut(d)},null,"sprite-cut",Editor.ctrlKey+"+X");this.addAction("copy",function(){try{e.copyXml()}catch(k){}try{mxClipboard.copy(d)}catch(k){e.handleError(k)}},null,"sprite-copy",Editor.ctrlKey+"+C");this.addAction("paste",function(){if(d.isEnabled()&&!d.isCellLocked(d.getDefaultParent())){var k=!1;try{Editor.enableNativeCipboard&&(e.readGraphModelFromClipboard(function(p){if(null!= p){d.getModel().beginUpdate();try{e.pasteXml(p,!0)}finally{d.getModel().endUpdate()}}else mxClipboard.paste(d)}),k=!0)}catch(p){}k||mxClipboard.paste(d)}},!1,"sprite-paste",Editor.ctrlKey+"+V");this.addAction("pasteHere",function(k){function p(B){if(null!=B){for(var C=0;C/g," ").replace(/ /g," "):T,P}}).filter(function(S){return void 0!==S})}var p=d.getSelectionCell()||d.getModel().getRoot();if(p&&p.value){var x=p.getAttribute("type");if(!("WIDGET"===x&&"LINK_LEGEND"===p.getAttribute("widgetType")||"LINK"===x&&"SIMPLE"===p.getAttribute("linkType"))&&["LINK","MEDIA","RESOURCE","WIDGET","CONTAINER"].includes(x)){x="type resourceType resourceId displayLabel displayImage displayParentName useResourceName label resourceName modelId viewId parentName parentType parentId displayWeatherStatusBackgroundColor useBackgroundStatusColor".split(" "); +p.length&&d.setSelectionCells(p)}},null,null,Editor.ctrlKey+"+Shift+U");this.addAction("removeFromGroup",function(){if(d.isEnabled()){var k=d.getSelectionCells();if(null!=k){for(var p=[],x=0;x/g," ").replace(/ /g," "):S,P}}).filter(function(T){return void 0!==T})}var p=d.getSelectionCell()||d.getModel().getRoot();if(p&&p.value){var x=p.getAttribute("type");if(!("WIDGET"===x&&"LINK_LEGEND"===p.getAttribute("widgetType")||"LINK"===x&&"SIMPLE"===p.getAttribute("linkType"))&&["LINK","MEDIA","RESOURCE","WIDGET","CONTAINER"].includes(x)){x="type resourceType resourceId displayLabel displayImage displayParentName useResourceName label resourceName modelId viewId parentName parentType parentId displayWeatherStatusBackgroundColor useBackgroundStatusColor".split(" "); var B="type linkType parentName parentType parentId resourceType resourceId resourceName modelId metric1Min metric1Max metric2Min metric2Max metricName1 metricName2 displayPercent".split(" "),C="type mediaType newTab elementUrl imageName centreonImageId label".split(" "),E="type widgetType resourceType useFontStatusColor useBackgroundStatusColor applyStatusColor resourceId pieChartInnerRadius useFontStatusColor pieChartDisplayLabel pieChartExplosion outputWidgetFormat chartDisplayThreshold chartFillLines chartNbPoints chartPeriod chartShowGrid chartStack displayLegend hiddenLine metric1Max metric1Min metricName1 metric2Max metric2Min metricName2 metricsColorStart metricsColorEnd parentName parentType parentId displayPercent resourceName orientation useResourceName displayLabel displayParentName label".split(" "), I="type modelId viewId imageName centreonImageId label displayLabel displayImage displayWeatherStatusBackgroundColor useBackgroundStatusColor".split(" "),F=[];void 0!==p.getAttribute("resourceType")&&(F=k(x));void 0!==p.getAttribute("linkType")&&(F=k(B));void 0!==p.getAttribute("mediaType")&&(F=k(C));void 0!==p.getAttribute("widgetType")&&(F=k(E));"CONTAINER"===p.getAttribute("type")&&(F=k(I));parent.postMessage(JSON.stringify({mxObject:F,mxStyle:p.getStyle(),event:"setShowWizardShapeProperties"}), "*")}}},null,null,Editor.ctrlKey+"+E");this.addAction("editCentreonStyle",function(){var k=d.getSelectionCells()||d.getModel().getRoot();if(k){var p=["RESOURCE","CONTAINER"];k=k.filter(function(x){x=x.getAttribute("type");return p.includes(x)});1>k.length||(1===k.length?(k=d.getCellStyle(k[0]).style,parent.postMessage(JSON.stringify({mxObject:[{type:"RESOURCE_AND_CONTAINER"}],mxStyle:k||"ICON",event:"setCentreonStyle"}),"*")):parent.postMessage(JSON.stringify({mxObject:[{type:"RESOURCE_AND_CONTAINER"}], @@ -3487,9 +3487,9 @@ p="1";null!=k&&null!=d.getFoldingImage(k)&&(p="0");d.setCellStyles("collapsible" if(p instanceof mxEdgeHandler){var x=d.view.translate,B=d.view.scale,C=x.x;x=x.y;k=d.getModel().getParent(k);for(var E=d.getCellGeometry(k);d.getModel().isVertex(k)&&null!=E;)C+=E.x,x+=E.y,k=d.getModel().getParent(k),E=d.getCellGeometry(k);C=Math.round(d.snap(d.popupMenuHandler.triggerX/B-C));B=Math.round(d.snap(d.popupMenuHandler.triggerY/B-x));p.addPointAt(p.state,C,B)}}});this.addAction("removeWaypoint",function(){var k=e.actions.get("removeWaypoint");null!=k.handler&&k.handler.removePoint(k.handler.state, k.index)});this.addAction("clearWaypoints",function(k,p){k=null!=p?p:k;var x=d.getSelectionCells();if(null!=x){x=d.getEditableCells(d.addAllEdges(x));d.getModel().beginUpdate();try{for(var B=0;B"];for(var T=0;T");for(var P=0;P
");O.push("")}O.push("");E=O.join("");S.call(F,E);E=F.cellEditor.textarea.getElementsByTagName("table");if(E.length==C.length+1)for(S=E.length-1;0<=S;S--)if(0==S||E[S]!=C[S-1]){F.selectNode(E[S].rows[0].cells[0]);break}}});var d=this.editorUi.editor.graph,m=null,n=null;null==f&&(a.div.className+=" geToolbarMenu", +Menus.prototype.addInsertTableItem=function(a,b,f,e){function g(C){n=d.getParentByName(mxEvent.getSource(C),"TD");var E=!1;if(null!=n){m=d.getParentByName(n,"TR");var I=mxEvent.isMouseEvent(C)?2:4,F=x,O=Math.min(20,m.sectionRowIndex+I);I=Math.min(20,n.cellIndex+I);for(var T=F.rows.length;T"];for(var S=0;S");for(var P=0;P
");O.push("")}O.push("");E=O.join("");T.call(F,E);E=F.cellEditor.textarea.getElementsByTagName("table");if(E.length==C.length+1)for(T=E.length-1;0<=T;T--)if(0==T||E[T]!=C[T-1]){F.selectNode(E[T].rows[0].cells[0]);break}}});var d=this.editorUi.editor.graph,m=null,n=null;null==f&&(a.div.className+=" geToolbarMenu", a.labels=!1);a=a.addItem("",null,null,f,null,null,null,!0);a.firstChild.style.fontSize=Menus.prototype.defaultFontSize+"px";f=a.getElementsByTagName("td");1d.div.clientHeight&&(d.div.style.width="40px");d.hideMenu=mxUtils.bind(this,function(){mxPopupMenu.prototype.hideMenu.apply(d,arguments);this.editorUi.resetCurrentMenu(); d.destroy()});var t=mxUtils.getOffset(a);d.popup(t.x,t.y+a.offsetHeight,null,n);this.editorUi.setCurrentMenu(d,a)}m=!0;mxEvent.consume(n)}));mxEvent.addListener(a,mxClient.IS_POINTER?"pointerdown":"mousedown",mxUtils.bind(this,function(n){m=null==d||null==d.div||null==d.div.parentNode;n.preventDefault()}))}};Toolbar.prototype.destroy=function(){null!=this.gestureHandler&&(mxEvent.removeGestureListeners(document,this.gestureHandler),this.gestureHandler=null)};var OpenDialog=function(){var a=document.createElement("iframe");a.style.backgroundColor="transparent";a.allowTransparency="true";a.style.borderStyle="none";a.style.borderWidth="0px";a.style.overflow="hidden";a.style.maxWidth="100%";a.frameBorder="0";a.setAttribute("width",(Editor.useLocalStorage?640:320)+"px");a.setAttribute("height",(Editor.useLocalStorage?480:220)+"px");a.setAttribute("src",OPEN_FORM);this.container=a},ColorDialog=function(a,b,f,e){function g(){var I=m.value;/(^#?[a-zA-Z0-9]*$)/.test(I)? ("none"!=I&&"#"!=I.charAt(0)&&(I="#"+I),ColorDialog.addRecentColor("none"!=I?I.substring(1):I,12),n(I),a.hideDialog()):a.handleError({message:mxResources.get("invalidInput")})}function d(){var I=p(0==ColorDialog.recentColors.length?["FFFFFF"]:ColorDialog.recentColors,11,"FFFFFF",!0);I.style.marginBottom="8px";return I}this.editorUi=a;var m=document.createElement("input");m.style.marginBottom="10px";mxClient.IS_IE&&(m.style.marginTop="10px",document.body.appendChild(m));var n=null!=f?f:this.createApplyFunction(); -this.init=function(){mxClient.IS_TOUCH||m.focus()};var t=new mxJSColor.color(m);t.pickerOnfocus=!1;t.showPicker();f=document.createElement("div");mxJSColor.picker.box.style.position="relative";mxJSColor.picker.box.style.width="230px";mxJSColor.picker.box.style.height="100px";mxJSColor.picker.box.style.paddingBottom="10px";f.appendChild(mxJSColor.picker.box);var k=document.createElement("center"),p=mxUtils.bind(this,function(I,F,O,S){F=null!=F?F:12;var T=document.createElement("table");T.style.borderCollapse= -"collapse";T.setAttribute("cellspacing","0");T.style.marginBottom="20px";T.style.cellSpacing="0px";T.style.marginLeft="1px";var P=document.createElement("tbody");T.appendChild(P);for(var ba=I.length/F,U=0;UMAX_AREA||0>=C.value?"red":"";E.style.backgroundColor=C.value*E.value>MAX_AREA||0>=E.value?"red":""}var e=a.editor.graph,g=e.getGraphBounds(),d=e.view.scale,m=Math.ceil(g.width/ +var ExportDialog=function(a){function b(){var R=p.value,X=R.lastIndexOf(".");p.value=0MAX_AREA||0>=C.value?"red":"";E.style.backgroundColor=C.value*E.value>MAX_AREA||0>=E.value?"red":""}var e=a.editor.graph,g=e.getGraphBounds(),d=e.view.scale,m=Math.ceil(g.width/ d),n=Math.ceil(g.height/d);d=document.createElement("table");var t=document.createElement("tbody");d.setAttribute("cellpadding",mxClient.IS_SF?"0":"2");g=document.createElement("tr");var k=document.createElement("td");k.style.fontSize="10pt";k.style.width="100px";mxUtils.write(k,mxResources.get("filename")+":");g.appendChild(k);var p=document.createElement("input");p.setAttribute("value",a.editor.getOrCreateFilename());p.style.width="180px";k=document.createElement("td");k.appendChild(p);g.appendChild(k); t.appendChild(g);g=document.createElement("tr");k=document.createElement("td");k.style.fontSize="10pt";mxUtils.write(k,mxResources.get("format")+":");g.appendChild(k);var x=document.createElement("select");x.style.width="180px";k=document.createElement("option");k.setAttribute("value","png");mxUtils.write(k,mxResources.get("formatPng"));x.appendChild(k);k=document.createElement("option");ExportDialog.showGifOption&&(k.setAttribute("value","gif"),mxUtils.write(k,mxResources.get("formatGif")),x.appendChild(k)); k=document.createElement("option");k.setAttribute("value","jpg");mxUtils.write(k,mxResources.get("formatJpg"));x.appendChild(k);a.printPdfExport||(k=document.createElement("option"),k.setAttribute("value","pdf"),mxUtils.write(k,mxResources.get("formatPdf")),x.appendChild(k));k=document.createElement("option");k.setAttribute("value","svg");mxUtils.write(k,mxResources.get("formatSvg"));x.appendChild(k);ExportDialog.showXmlOption&&(k=document.createElement("option"),k.setAttribute("value","xml"),mxUtils.write(k, @@ -3648,25 +3648,25 @@ k=document.createElement("td");k.style.fontSize="10pt";mxUtils.write(k,mxResourc "180px";k=document.createElement("td");k.appendChild(E);g.appendChild(k);t.appendChild(g);g=document.createElement("tr");k=document.createElement("td");k.style.fontSize="10pt";mxUtils.write(k,mxResources.get("dpi")+":");g.appendChild(k);var I=document.createElement("select");I.style.width="180px";k=document.createElement("option");k.setAttribute("value","100");mxUtils.write(k,"100dpi");I.appendChild(k);k=document.createElement("option");k.setAttribute("value","200");mxUtils.write(k,"200dpi");I.appendChild(k); k=document.createElement("option");k.setAttribute("value","300");mxUtils.write(k,"300dpi");I.appendChild(k);k=document.createElement("option");k.setAttribute("value","400");mxUtils.write(k,"400dpi");I.appendChild(k);k=document.createElement("option");k.setAttribute("value","custom");mxUtils.write(k,mxResources.get("custom"));I.appendChild(k);var F=document.createElement("input");F.style.width="180px";F.style.display="none";F.setAttribute("value","100");F.setAttribute("type","number");F.setAttribute("min", "50");F.setAttribute("step","50");var O=!1;mxEvent.addListener(I,"change",function(){"custom"==this.value?(this.style.display="none",F.style.display="",F.focus()):(F.value=this.value,O||(B.value=this.value))});mxEvent.addListener(F,"change",function(){var R=parseInt(F.value);isNaN(R)||0>=R?F.style.backgroundColor="red":(F.style.backgroundColor="",O||(B.value=R))});k=document.createElement("td");k.appendChild(I);k.appendChild(F);g.appendChild(k);t.appendChild(g);g=document.createElement("tr");k=document.createElement("td"); -k.style.fontSize="10pt";mxUtils.write(k,mxResources.get("background")+":");g.appendChild(k);var S=document.createElement("input");S.setAttribute("type","checkbox");S.checked=null==e.background||e.background==mxConstants.NONE;k=document.createElement("td");k.appendChild(S);mxUtils.write(k,mxResources.get("transparent"));g.appendChild(k);t.appendChild(g);g=document.createElement("tr");k=document.createElement("td");k.style.fontSize="10pt";mxUtils.write(k,mxResources.get("grid")+":");g.appendChild(k); -var T=document.createElement("input");T.setAttribute("type","checkbox");T.checked=!1;k=document.createElement("td");k.appendChild(T);g.appendChild(k);t.appendChild(g);g=document.createElement("tr");k=document.createElement("td");k.style.fontSize="10pt";mxUtils.write(k,mxResources.get("borderWidth")+":");g.appendChild(k);var P=document.createElement("input");P.setAttribute("type","number");P.setAttribute("value",ExportDialog.lastBorderValue);P.style.width="180px";k=document.createElement("td");k.appendChild(P); +k.style.fontSize="10pt";mxUtils.write(k,mxResources.get("background")+":");g.appendChild(k);var T=document.createElement("input");T.setAttribute("type","checkbox");T.checked=null==e.background||e.background==mxConstants.NONE;k=document.createElement("td");k.appendChild(T);mxUtils.write(k,mxResources.get("transparent"));g.appendChild(k);t.appendChild(g);g=document.createElement("tr");k=document.createElement("td");k.style.fontSize="10pt";mxUtils.write(k,mxResources.get("grid")+":");g.appendChild(k); +var S=document.createElement("input");S.setAttribute("type","checkbox");S.checked=!1;k=document.createElement("td");k.appendChild(S);g.appendChild(k);t.appendChild(g);g=document.createElement("tr");k=document.createElement("td");k.style.fontSize="10pt";mxUtils.write(k,mxResources.get("borderWidth")+":");g.appendChild(k);var P=document.createElement("input");P.setAttribute("type","number");P.setAttribute("value",ExportDialog.lastBorderValue);P.style.width="180px";k=document.createElement("td");k.appendChild(P); g.appendChild(k);t.appendChild(g);d.appendChild(t);mxEvent.addListener(x,"change",b);b();mxEvent.addListener(B,"change",function(){O=!0;var R=Math.max(0,parseFloat(B.value)||100)/100;B.value=parseFloat((100*R).toFixed(2));0=parseInt(B.value))mxUtils.alert(mxResources.get("drawingEmpty"));else{var R=p.value,X=x.value,Y=Math.max(0,parseFloat(B.value)||100)/ -100,da=Math.max(0,parseInt(P.value)),la=e.background,J=Math.max(1,parseInt(F.value));if(("svg"==X||"png"==X||"pdf"==X)&&S.checked)la=null;else if(null==la||la==mxConstants.NONE)la="#ffffff";ExportDialog.lastBorderValue=da;ExportDialog.exportFile(a,R,X,la,Y,da,J,T.checked)}}));ba.className="geBtn gePrimaryBtn";var U=mxUtils.button(mxResources.get("cancel"),function(){a.hideDialog()});U.className="geBtn";a.editor.cancelFirst?(k.appendChild(U),k.appendChild(ba)):(k.appendChild(ba),k.appendChild(U)); +100,da=Math.max(0,parseInt(P.value)),la=e.background,J=Math.max(1,parseInt(F.value));if(("svg"==X||"png"==X||"pdf"==X)&&T.checked)la=null;else if(null==la||la==mxConstants.NONE)la="#ffffff";ExportDialog.lastBorderValue=da;ExportDialog.exportFile(a,R,X,la,Y,da,J,S.checked)}}));ba.className="geBtn gePrimaryBtn";var U=mxUtils.button(mxResources.get("cancel"),function(){a.hideDialog()});U.className="geBtn";a.editor.cancelFirst?(k.appendChild(U),k.appendChild(ba)):(k.appendChild(ba),k.appendChild(U)); g.appendChild(k);t.appendChild(g);d.appendChild(t);this.container=d};ExportDialog.lastBorderValue=0;ExportDialog.showGifOption=!0;ExportDialog.showXmlOption=!0; ExportDialog.exportFile=function(a,b,f,e,g,d,m,n){n=a.editor.graph;if("xml"==f)ExportDialog.saveLocalFile(a,mxUtils.getXml(a.editor.getGraphXml()),b,f);else if("svg"==f)ExportDialog.saveLocalFile(a,mxUtils.getXml(n.getSvg(e,g,d)),b,f);else{var t=n.getGraphBounds(),k=mxUtils.createXmlDocument(),p=k.createElement("output");k.appendChild(p);k=new mxXmlCanvas2D(p);k.translate(Math.floor((d/g-t.x)/n.view.scale),Math.floor((d/g-t.y)/n.view.scale));k.scale(g/n.view.scale);(new mxImageExport).drawState(n.getView().getState(n.model.root), k);p="xml="+encodeURIComponent(mxUtils.getXml(p));k=Math.ceil(t.width*g/n.view.scale+2*d);g=Math.ceil(t.height*g/n.view.scale+2*d);p.length<=MAX_REQUEST_SIZE&&k*gR.name?1:0});if(null!=E){p=document.createElement("div");p.style.width= -"100%";p.style.fontSize="11px";p.style.textAlign="center";mxUtils.write(p,E);var S=k.addField(mxResources.get("id")+":",p);mxEvent.addListener(p,"dblclick",function(U){mxEvent.isShiftDown(U)&&(U=new FilenameDialog(a,E,mxResources.get("apply"),mxUtils.bind(this,function(R){null!=R&&0U.indexOf(":"))try{var R= -mxUtils.indexOf(x,U);if(0<=R&&null!=B[R])B[R].focus();else{d.cloneNode(!1).setAttribute(U,"");0<=R&&(x.splice(R,1),B.splice(R,1));x.push(U);var X=k.addTextarea(U+":","",2);X.style.width="100%";B.push(X);I(X,U);X.focus()}P.setAttribute("disabled","disabled");T.value=""}catch(Y){mxUtils.alert(Y)}else mxUtils.alert(mxResources.get("invalidName"))});mxEvent.addListener(T,"keypress",function(U){13==U.keyCode&&P.click()});this.init=function(){0U.indexOf(":"))try{var R= +mxUtils.indexOf(x,U);if(0<=R&&null!=B[R])B[R].focus();else{d.cloneNode(!1).setAttribute(U,"");0<=R&&(x.splice(R,1),B.splice(R,1));x.push(U);var X=k.addTextarea(U+":","",2);X.style.width="100%";B.push(X);I(X,U);X.focus()}P.setAttribute("disabled","disabled");S.value=""}catch(Y){mxUtils.alert(Y)}else mxUtils.alert(mxResources.get("invalidName"))});mxEvent.addListener(S,"keypress",function(U){13==U.keyCode&&P.click()});this.init=function(){0T.clientHeight-E&&(b.style.overflowY="auto");b.style.overflowX="hidden";if(d&&(d=document.createElement("img"),d.setAttribute("src",Dialog.prototype.closeImage), -d.setAttribute("title",mxResources.get("close")),d.className="geDialogClose",d.style.top=S+14+"px",d.style.left=O+f+38-x+"px",d.style.zIndex=this.zIndex,mxEvent.addListener(d,"click",mxUtils.bind(this,function(){a.hideDialog(!0)})),document.body.appendChild(d),this.dialogImg=d,!p)){var P=!1;mxEvent.addGestureListeners(this.bg,mxUtils.bind(this,function(ba){P=!0}),null,mxUtils.bind(this,function(ba){P&&(a.hideDialog(!0),P=!1)}))}this.resizeListener=mxUtils.bind(this,function(){if(null!=k){var ba=k(); -null!=ba&&(B=f=ba.w,C=e=ba.h)}ba=mxUtils.getDocumentSize();F=ba.height;this.bg.style.height=F+"px";Editor.inlineFullscreen||null==a.embedViewport||(this.bg.style.height=mxUtils.getDocumentSize().height+"px");O=Math.max(1,Math.round((ba.width-f-E)/2));S=Math.max(1,Math.round((F-e-a.footerHeight)/3));f=null!=document.body?Math.min(B,document.body.scrollWidth-E):B;e=Math.min(C,F-E);ba=this.getPosition(O,S,f,e);O=ba.x;S=ba.y;T.style.left=O+"px";T.style.top=S+"px";T.style.width=f+"px";T.style.height=e+ -"px";!n&&b.clientHeight>T.clientHeight-E&&(b.style.overflowY="auto");null!=this.dialogImg&&(this.dialogImg.style.top=S+14+"px",this.dialogImg.style.left=O+f+38-x+"px")});mxEvent.addListener(window,"resize",this.resizeListener);this.onDialogClose=m;this.container=T;a.editor.fireEvent(new mxEventObject("showDialog"))}Dialog.backdropColor="white";Dialog.prototype.zIndex=mxPopupMenu.prototype.zIndex-2; +function Dialog(a,b,f,e,g,d,m,n,t,k,p){var x=t?57:0,B=f,C=e,E=t?0:64,I=Editor.inlineFullscreen||null==a.embedViewport?mxUtils.getDocumentSize():mxUtils.clone(a.embedViewport);null==a.embedViewport&&null!=window.innerHeight&&(I.height=window.innerHeight);var F=I.height,O=Math.max(1,Math.round((I.width-f-E)/2)),T=Math.max(1,Math.round((F-e-a.footerHeight)/3));b.style.maxHeight="100%";f=null!=document.body?Math.min(f,document.body.scrollWidth-E):f;e=Math.min(e,F-E);0S.clientHeight-E&&(b.style.overflowY="auto");b.style.overflowX="hidden";if(d&&(d=document.createElement("img"),d.setAttribute("src",Dialog.prototype.closeImage), +d.setAttribute("title",mxResources.get("close")),d.className="geDialogClose",d.style.top=T+14+"px",d.style.left=O+f+38-x+"px",d.style.zIndex=this.zIndex,mxEvent.addListener(d,"click",mxUtils.bind(this,function(){a.hideDialog(!0)})),document.body.appendChild(d),this.dialogImg=d,!p)){var P=!1;mxEvent.addGestureListeners(this.bg,mxUtils.bind(this,function(ba){P=!0}),null,mxUtils.bind(this,function(ba){P&&(a.hideDialog(!0),P=!1)}))}this.resizeListener=mxUtils.bind(this,function(){if(null!=k){var ba=k(); +null!=ba&&(B=f=ba.w,C=e=ba.h)}ba=mxUtils.getDocumentSize();F=ba.height;this.bg.style.height=F+"px";Editor.inlineFullscreen||null==a.embedViewport||(this.bg.style.height=mxUtils.getDocumentSize().height+"px");O=Math.max(1,Math.round((ba.width-f-E)/2));T=Math.max(1,Math.round((F-e-a.footerHeight)/3));f=null!=document.body?Math.min(B,document.body.scrollWidth-E):B;e=Math.min(C,F-E);ba=this.getPosition(O,T,f,e);O=ba.x;T=ba.y;S.style.left=O+"px";S.style.top=T+"px";S.style.width=f+"px";S.style.height=e+ +"px";!n&&b.clientHeight>S.clientHeight-E&&(b.style.overflowY="auto");null!=this.dialogImg&&(this.dialogImg.style.top=T+14+"px",this.dialogImg.style.left=O+f+38-x+"px")});mxEvent.addListener(window,"resize",this.resizeListener);this.onDialogClose=m;this.container=S;a.editor.fireEvent(new mxEventObject("showDialog"))}Dialog.backdropColor="white";Dialog.prototype.zIndex=mxPopupMenu.prototype.zIndex-2; Dialog.prototype.noColorImage=mxClient.IS_SVG?"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyBpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBXaW5kb3dzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkEzRDlBMUUwODYxMTExRTFCMzA4RDdDMjJBMEMxRDM3IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkEzRDlBMUUxODYxMTExRTFCMzA4RDdDMjJBMEMxRDM3Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6QTNEOUExREU4NjExMTFFMUIzMDhEN0MyMkEwQzFEMzciIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6QTNEOUExREY4NjExMTFFMUIzMDhEN0MyMkEwQzFEMzciLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5xh3fmAAAABlBMVEX////MzMw46qqDAAAAGElEQVR42mJggAJGKGAYIIGBth8KAAIMAEUQAIElnLuQAAAAAElFTkSuQmCC":IMAGE_PATH+ "/nocolor.png";Dialog.prototype.closeImage=mxClient.IS_SVG?"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJAQMAAADaX5RTAAAABlBMVEV7mr3///+wksspAAAAAnRSTlP/AOW3MEoAAAAdSURBVAgdY9jXwCDDwNDRwHCwgeExmASygSL7GgB12QiqNHZZIwAAAABJRU5ErkJggg==":IMAGE_PATH+"/close.png"; Dialog.prototype.clearImage=mxClient.IS_SVG?"data:image/gif;base64,R0lGODlhDQAKAIABAMDAwP///yH/C1hNUCBEYXRhWE1QPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS4wLWMwNjAgNjEuMTM0Nzc3LCAyMDEwLzAyLzEyLTE3OjMyOjAwICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdFJlZj0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlUmVmIyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1IFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6OUIzOEM1NzI4NjEyMTFFMUEzMkNDMUE3NjZERDE2QjIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6OUIzOEM1NzM4NjEyMTFFMUEzMkNDMUE3NjZERDE2QjIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo5QjM4QzU3MDg2MTIxMUUxQTMyQ0MxQTc2NkREMTZCMiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo5QjM4QzU3MTg2MTIxMUUxQTMyQ0MxQTc2NkREMTZCMiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PgH//v38+/r5+Pf29fTz8vHw7+7t7Ovq6ejn5uXk4+Lh4N/e3dzb2tnY19bV1NPS0dDPzs3My8rJyMfGxcTDwsHAv769vLu6ubi3trW0s7KxsK+urayrqqmop6alpKOioaCfnp2cm5qZmJeWlZSTkpGQj46NjIuKiYiHhoWEg4KBgH9+fXx7enl4d3Z1dHNycXBvbm1sa2ppaGdmZWRjYmFgX15dXFtaWVhXVlVUU1JRUE9OTUxLSklIR0ZFRENCQUA/Pj08Ozo5ODc2NTQzMjEwLy4tLCsqKSgnJiUkIyIhIB8eHRwbGhkYFxYVFBMSERAPDg0MCwoJCAcGBQQDAgEAACH5BAEAAAEALAAAAAANAAoAAAIXTGCJebD9jEOTqRlttXdrB32PJ2ncyRQAOw==":IMAGE_PATH+ @@ -2024,8 +2024,8 @@ Dialog.prototype.close=function(a,b){if(null!=this.onDialogClose){if(0==this.onD var ErrorDialog=function(a,b,f,e,g,d,m,n,t,k,p){t=null!=t?t:!0;var x=document.createElement("div");x.style.textAlign="center";if(null!=b){var B=document.createElement("div");B.style.padding="0px";B.style.margin="0px";B.style.fontSize="18px";B.style.paddingBottom="16px";B.style.marginBottom="10px";B.style.borderBottom="1px solid #c0c0c0";B.style.color="gray";B.style.whiteSpace="nowrap";B.style.textOverflow="ellipsis";B.style.overflow="hidden";mxUtils.write(B,b);B.setAttribute("title",b);x.appendChild(B)}b= document.createElement("div");b.style.lineHeight="1.2em";b.style.padding="6px";b.innerHTML=f;x.appendChild(b);f=document.createElement("div");f.style.marginTop="12px";f.style.textAlign="center";null!=d&&(b=mxUtils.button(mxResources.get("tryAgain"),function(){a.hideDialog();d()}),b.className="geBtn",f.appendChild(b),f.style.textAlign="center");null!=k&&(k=mxUtils.button(k,function(){null!=p&&p()}),k.className="geBtn",f.appendChild(k));var C=mxUtils.button(e,function(){t&&a.hideDialog();null!=g&&g()}); C.className="geBtn";f.appendChild(C);null!=m&&(e=mxUtils.button(m,function(){t&&a.hideDialog();null!=n&&n()}),e.className="geBtn gePrimaryBtn",f.appendChild(e));this.init=function(){C.focus()};x.appendChild(f);this.container=x},PrintDialog=function(a,b){this.create(a,b)}; -PrintDialog.prototype.create=function(a){function b(C){var E=m.checked||k.checked,I=parseInt(x.value)/100;isNaN(I)&&(I=1,x.value="100%");I*=.75;var F=f.pageFormat||mxConstants.PAGE_FORMAT_A4_PORTRAIT,O=1/f.pageScale;if(E){var S=m.checked?1:parseInt(p.value);isNaN(S)||(O=mxUtils.getScaleForPageCount(S,f,F))}f.getGraphBounds();var T=S=0;F=mxRectangle.fromRectangle(F);F.width=Math.ceil(F.width*I);F.height=Math.ceil(F.height*I);O*=I;!E&&f.pageVisible?(I=f.getPageLayout(),S-=I.x*F.width,T-=I.y*F.height): -E=!0;E=PrintDialog.createPrintPreview(f,O,F,0,S,T,E);E.open();C&&PrintDialog.printPreview(E)}var f=a.editor.graph,e=document.createElement("table");e.style.width="100%";e.style.height="100%";var g=document.createElement("tbody");var d=document.createElement("tr");var m=document.createElement("input");m.setAttribute("type","checkbox");var n=document.createElement("td");n.setAttribute("colspan","2");n.style.fontSize="10pt";n.appendChild(m);var t=document.createElement("span");mxUtils.write(t," "+mxResources.get("fitPage")); +PrintDialog.prototype.create=function(a){function b(C){var E=m.checked||k.checked,I=parseInt(x.value)/100;isNaN(I)&&(I=1,x.value="100%");I*=.75;var F=f.pageFormat||mxConstants.PAGE_FORMAT_A4_PORTRAIT,O=1/f.pageScale;if(E){var T=m.checked?1:parseInt(p.value);isNaN(T)||(O=mxUtils.getScaleForPageCount(T,f,F))}f.getGraphBounds();var S=T=0;F=mxRectangle.fromRectangle(F);F.width=Math.ceil(F.width*I);F.height=Math.ceil(F.height*I);O*=I;!E&&f.pageVisible?(I=f.getPageLayout(),T-=I.x*F.width,S-=I.y*F.height): +E=!0;E=PrintDialog.createPrintPreview(f,O,F,0,T,S,E);E.open();C&&PrintDialog.printPreview(E)}var f=a.editor.graph,e=document.createElement("table");e.style.width="100%";e.style.height="100%";var g=document.createElement("tbody");var d=document.createElement("tr");var m=document.createElement("input");m.setAttribute("type","checkbox");var n=document.createElement("td");n.setAttribute("colspan","2");n.style.fontSize="10pt";n.appendChild(m);var t=document.createElement("span");mxUtils.write(t," "+mxResources.get("fitPage")); n.appendChild(t);mxEvent.addListener(t,"click",function(C){m.checked=!m.checked;k.checked=!m.checked;mxEvent.consume(C)});mxEvent.addListener(m,"change",function(){k.checked=!m.checked});d.appendChild(n);g.appendChild(d);d=d.cloneNode(!1);var k=document.createElement("input");k.setAttribute("type","checkbox");n=document.createElement("td");n.style.fontSize="10pt";n.appendChild(k);t=document.createElement("span");mxUtils.write(t," "+mxResources.get("posterPrint")+":");n.appendChild(t);mxEvent.addListener(t, "click",function(C){k.checked=!k.checked;m.checked=!k.checked;mxEvent.consume(C)});d.appendChild(n);var p=document.createElement("input");p.setAttribute("value","1");p.setAttribute("type","number");p.setAttribute("min","1");p.setAttribute("size","4");p.setAttribute("disabled","disabled");p.style.width="50px";n=document.createElement("td");n.style.fontSize="10pt";n.appendChild(p);mxUtils.write(n," "+mxResources.get("pages")+" (max)");d.appendChild(n);g.appendChild(d);mxEvent.addListener(k,"change", function(){k.checked?p.removeAttribute("disabled"):p.setAttribute("disabled","disabled");m.checked=!k.checked});d=d.cloneNode(!1);n=document.createElement("td");mxUtils.write(n,mxResources.get("pageScale")+":");d.appendChild(n);n=document.createElement("td");var x=document.createElement("input");x.setAttribute("value","100 %");x.setAttribute("size","5");x.style.width="50px";n.appendChild(x);d.appendChild(n);g.appendChild(d);d=document.createElement("tr");n=document.createElement("td");n.colSpan=2; @@ -2040,23 +2040,23 @@ d.appendChild(m);m=document.createElement("td");var k=document.createElement("bu p.style.width="64px";p.style.cursor="pointer";p.style.padding="4px";var x=f.backgroundImage,B=f.background,C=function(E){a.showBackgroundImageDialog(function(I,F,O){F||(null!=I&&null!=I.src&&Graph.isPageLink(I.src)&&(I={originalSrc:I.src}),x=I);B=O;b()},x,B);mxEvent.consume(E)};mxEvent.addListener(k,"click",C);mxEvent.addListener(p,"click",C);b();m.appendChild(p);m.appendChild(k);d.appendChild(m);g.appendChild(d);d=document.createElement("tr");m=document.createElement("td");m.colSpan=2;m.style.paddingTop= "16px";m.setAttribute("align","right");k=mxUtils.button(mxResources.get("cancel"),function(){a.hideDialog()});k.className="geBtn";a.editor.cancelFirst&&m.appendChild(k);C=mxUtils.button(mxResources.get("apply"),function(){a.hideDialog();var E=parseInt(t.value);isNaN(E)||f.gridSize===E||f.setGridSize(E);E=new ChangePageSetup(a,B,x,n.get());E.ignoreColor=f.background==B;E.ignoreImage=(null!=f.backgroundImage?f.backgroundImage.src:null)===(null!=x?x.src:null);f.pageFormat.width==E.previousFormat.width&& f.pageFormat.height==E.previousFormat.height&&E.ignoreColor&&E.ignoreImage||f.model.execute(E)});C.className="geBtn gePrimaryBtn";m.appendChild(C);a.editor.cancelFirst||m.appendChild(k);d.appendChild(m);g.appendChild(d);e.appendChild(g);this.container=e}; -PageSetupDialog.addPageFormatPanel=function(a,b,f,e){function g(ba,U,R){if(R||x!=document.activeElement&&B!=document.activeElement){ba=!1;for(U=0;U=ba)x.value=f.width/100;ba=parseFloat(B.value);if(isNaN(ba)||0>=ba)B.value=f.height/100;ba=new mxRectangle(0,0,Math.floor(100*parseFloat(x.value)), -Math.floor(100*parseFloat(B.value)));"custom"!=n.value&&m.checked&&(ba=new mxRectangle(0,0,ba.height,ba.width));U&&S||ba.width==T.width&&ba.height==T.height||(T=ba,null!=e&&e(T))};mxEvent.addListener(b,"click",function(ba){d.checked=!0;P(ba);mxEvent.consume(ba)});mxEvent.addListener(k,"click",function(ba){m.checked=!0;P(ba);mxEvent.consume(ba)});mxEvent.addListener(x,"blur",P);mxEvent.addListener(x,"click",P);mxEvent.addListener(B,"blur",P);mxEvent.addListener(B,"click",P);mxEvent.addListener(m,"change", -P);mxEvent.addListener(d,"change",P);mxEvent.addListener(n,"change",function(ba){S="custom"==n.value;P(ba,!0)});P();return{set:function(ba){f=ba;g(null,null,!0)},get:function(){return T},widthInput:x,heightInput:B}}; +F.key);mxUtils.write(O,F.title);n.appendChild(O)}var T=!1;g();a.appendChild(n);mxUtils.br(a);a.appendChild(t);a.appendChild(p);var S=f,P=function(ba,U){ba=C[n.value];null!=ba.format?(x.value=ba.format.width/100,B.value=ba.format.height/100,p.style.display="none",t.style.display=""):(t.style.display="none",p.style.display="");ba=parseFloat(x.value);if(isNaN(ba)||0>=ba)x.value=f.width/100;ba=parseFloat(B.value);if(isNaN(ba)||0>=ba)B.value=f.height/100;ba=new mxRectangle(0,0,Math.floor(100*parseFloat(x.value)), +Math.floor(100*parseFloat(B.value)));"custom"!=n.value&&m.checked&&(ba=new mxRectangle(0,0,ba.height,ba.width));U&&T||ba.width==S.width&&ba.height==S.height||(S=ba,null!=e&&e(S))};mxEvent.addListener(b,"click",function(ba){d.checked=!0;P(ba);mxEvent.consume(ba)});mxEvent.addListener(k,"click",function(ba){m.checked=!0;P(ba);mxEvent.consume(ba)});mxEvent.addListener(x,"blur",P);mxEvent.addListener(x,"click",P);mxEvent.addListener(B,"blur",P);mxEvent.addListener(B,"click",P);mxEvent.addListener(m,"change", +P);mxEvent.addListener(d,"change",P);mxEvent.addListener(n,"change",function(ba){T="custom"==n.value;P(ba,!0)});P();return{set:function(ba){f=ba;g(null,null,!0)},get:function(){return S},widthInput:x,heightInput:B}}; PageSetupDialog.getFormats=function(){return[{key:"letter",title:'US-Letter (8,5" x 11")',format:mxConstants.PAGE_FORMAT_LETTER_PORTRAIT},{key:"legal",title:'US-Legal (8,5" x 14")',format:new mxRectangle(0,0,850,1400)},{key:"tabloid",title:'US-Tabloid (11" x 17")',format:new mxRectangle(0,0,1100,1700)},{key:"executive",title:'US-Executive (7" x 10")',format:new mxRectangle(0,0,700,1E3)},{key:"a0",title:"A0 (841 mm x 1189 mm)",format:new mxRectangle(0,0,3300,4681)},{key:"a1",title:"A1 (594 mm x 841 mm)", format:new mxRectangle(0,0,2339,3300)},{key:"a2",title:"A2 (420 mm x 594 mm)",format:new mxRectangle(0,0,1654,2336)},{key:"a3",title:"A3 (297 mm x 420 mm)",format:new mxRectangle(0,0,1169,1654)},{key:"a4",title:"A4 (210 mm x 297 mm)",format:mxConstants.PAGE_FORMAT_A4_PORTRAIT},{key:"a5",title:"A5 (148 mm x 210 mm)",format:new mxRectangle(0,0,583,827)},{key:"a6",title:"A6 (105 mm x 148 mm)",format:new mxRectangle(0,0,413,583)},{key:"a7",title:"A7 (74 mm x 105 mm)",format:new mxRectangle(0,0,291,413)}, {key:"b4",title:"B4 (250 mm x 353 mm)",format:new mxRectangle(0,0,980,1390)},{key:"b5",title:"B5 (176 mm x 250 mm)",format:new mxRectangle(0,0,690,980)},{key:"16-9",title:"16:9 (1600 x 900)",format:new mxRectangle(0,0,900,1600)},{key:"16-10",title:"16:10 (1920 x 1200)",format:new mxRectangle(0,0,1200,1920)},{key:"4-3",title:"4:3 (1600 x 1200)",format:new mxRectangle(0,0,1200,1600)},{key:"custom",title:mxResources.get("custom"),format:null}]}; var FilenameDialog=function(a,b,f,e,g,d,m,n,t,k,p,x,B){t=null!=t?t:!0;var C=document.createElement("table"),E=document.createElement("tbody");C.style.position="absolute";C.style.top="30px";C.style.left="20px";var I=document.createElement("tr");var F=document.createElement("td");F.style.textOverflow="ellipsis";F.style.textAlign="right";F.style.maxWidth=(B?B+15:100)+"px";F.style.fontSize="10pt";F.style.width=(B?B:84)+"px";mxUtils.write(F,(g||mxResources.get("filename"))+":");I.appendChild(F);var O= -document.createElement("input");O.setAttribute("value",b||"");O.style.marginLeft="4px";O.style.width=null!=x?x+"px":"180px";var S=mxUtils.button(f,function(){if(null==d||d(O.value))t&&a.hideDialog(),e(O.value)});S.className="geBtn gePrimaryBtn";this.init=function(){if(null!=g||null==m)if(O.focus(),mxClient.IS_GC||mxClient.IS_FF||5<=document.documentMode?O.select():document.execCommand("selectAll",!1,null),Graph.fileSupport){var T=C.parentNode;if(null!=T){var P=null;mxEvent.addListener(T,"dragleave", -function(ba){null!=P&&(P.style.backgroundColor="",P=null);ba.stopPropagation();ba.preventDefault()});mxEvent.addListener(T,"dragover",mxUtils.bind(this,function(ba){null==P&&(!mxClient.IS_IE||10'};var a=mxGraph.prototype.panGraph;mxGraph.prototype.panGraph=function(m,n){a.apply(this,arguments);if(null!=this.shiftPreview1){var t=this.view.canvas;null!=t.ownerSVGElement&&(t=t.ownerSVGElement);var k=this.gridSize*this.view.scale*this.view.gridSteps;k=-Math.round(k-mxUtils.mod(this.view.translate.x* this.view.scale+m,k))+"px "+-Math.round(k-mxUtils.mod(this.view.translate.y*this.view.scale+n,k))+"px";t.style.backgroundPosition=k}};mxGraph.prototype.updatePageBreaks=function(m,n,t){var k=this.view.scale,p=this.view.translate,x=this.pageFormat,B=k*this.pageScale,C=this.view.getBackgroundPageBounds();n=C.width;t=C.height;var E=new mxRectangle(k*p.x,k*p.y,x.width*B,x.height*B),I=(m=m&&Math.min(E.width,E.height)>this.minPageBreakDist)?Math.ceil(t/E.height)-1:0,F=m?Math.ceil(n/E.width)-1:0,O=C.x+n, -S=C.y+t;null==this.horizontalPageBreaks&&0document.documentMode)?mxEvent.addListener(this.diagramContainer, "contextmenu",b):this.diagramContainer.oncontextmenu=b):e.panningHandler.usePopupTrigger=!1;e.init(this.diagramContainer);mxClient.IS_SVG&&null!=e.view.getDrawPane()&&(b=e.view.getDrawPane().ownerSVGElement,null!=b&&(b.style.position="absolute"));this.hoverIcons=this.createHoverIcons();if(null!=e.graphHandler){var I=e.graphHandler.start;e.graphHandler.start=function(){null!=da.hoverIcons&&da.hoverIcons.reset();I.apply(this,arguments)}}mxEvent.addListener(this.diagramContainer,"mousemove",mxUtils.bind(this, function(N){var Q=mxUtils.getOffset(this.diagramContainer);0mxUtils.indexOf(this.toolbar.staticElements,N)&&(N.parentNode.removeChild(N),Q.push(N));N=K}N=this.toolbar.fontMenu;K=this.toolbar.sizeMenu;if(null==X)this.toolbar.createTextToolbar();else{for(var ca=0;caia&&null!=Ca&&!mxEvent.isShiftDown(Ia)&&(mxUtils.getValue(Ca.style,mxConstants.STYLE_SHAPE)!=mxUtils.getValue(Fa,mxConstants.STYLE_SHAPE)&&(mxUtils.getValue(Ca.style, -mxConstants.STYLE_STROKECOLOR,mxConstants.NONE)!=mxConstants.NONE||mxUtils.getValue(Ca.style,mxConstants.STYLE_FILLCOLOR,mxConstants.NONE)!=mxConstants.NONE||mxUtils.getValue(Ca.style,mxConstants.STYLE_GRADIENTCOLOR,mxConstants.NONE)!=mxConstants.NONE)||"image"==mxUtils.getValue(Fa,mxConstants.STYLE_SHAPE)||1500this.dropTargetDelay&&!this.isDropStyleTargetIgnored(Ca)&&(ja.model.isVertex(Ca.cell)&&null!=p||ja.model.isEdge(Ca.cell)&&ja.model.isEdge(e[0]))){if(ja.isCellEditable(Ca.cell)){S= -Ca;var qa=ja.model.isEdge(Ca.cell)?ja.view.getPoint(Ca):new mxPoint(Ca.getCenterX(),Ca.getCenterY());qa=new mxRectangle(qa.x-this.refreshTarget.width/2,qa.y-this.refreshTarget.height/2,this.refreshTarget.width,this.refreshTarget.height);X.style.left=Math.floor(qa.x)+"px";X.style.top=Math.floor(qa.y)+"px";null==Y&&(ja.container.appendChild(X),Y=X.parentNode);m(xa,ya,qa,X)}}else null==S||!mxUtils.contains(S,xa,ya)||1500this.dropTargetDelay&&!this.isDropStyleTargetIgnored(Ca)&&(ja.model.isVertex(Ca.cell)&&null!=p||ja.model.isEdge(Ca.cell)&&ja.model.isEdge(e[0]))){if(ja.isCellEditable(Ca.cell)){T= +Ca;var qa=ja.model.isEdge(Ca.cell)?ja.view.getPoint(Ca):new mxPoint(Ca.getCenterX(),Ca.getCenterY());qa=new mxRectangle(qa.x-this.refreshTarget.width/2,qa.y-this.refreshTarget.height/2,this.refreshTarget.width,this.refreshTarget.height);X.style.left=Math.floor(qa.x)+"px";X.style.top=Math.floor(qa.y)+"px";null==Y&&(ja.container.appendChild(X),Y=X.parentNode);m(xa,ya,qa,X)}}else null==T||!mxUtils.contains(T,xa,ya)||1500ia&&ia>this.dropTargetDelay||ja.model.isEdge(Ja)?Ca:null,null!=F&&qa){ta=[da,la,P,ba,U,R];for(qa=0;qaia&&ia>this.dropTargetDelay||ja.model.isEdge(Ja)?Ca:null,null!=F&&qa){ta=[da,la,P,ba,U,R];for(qa=0;qaB?"a":"p",tt:12>B?"am":"pm",T:12>B?"A":"P",TT:12>B?"AM":"PM",Z:f?"UTC":(String(a).match(g)||[""]).pop().replace(d,""),o:(0I||Math.abs(P.y-S.y)>I)&&(Math.abs(P.x-O.x)>I||Math.abs(P.y-O.y)>I)&&(Math.abs(P.x-Y.x)>I||Math.abs(P.y-Y.y)>I)&&(Math.abs(P.x-X.x)>I||Math.abs(P.y-X.y)>I)){X=P.x-S.x;Y=P.y-S.y;P={distSq:X*X+Y*Y,x:P.x,y:P.y};for(X=0;XP.distSq){T.splice(X,0,P);P=null;break}null==P||0!=T.length&&T[T.length-1].x===P.x&&T[T.length-1].y===P.y||T.push(P)}}}for(U=0;U< -T.length;U++)B=E(1,T[U].x,T[U].y)||B}P=x[x.length-1];B=E(0,P.x,P.y)||B}p.routedPoints=C;return B}return!1};var d=mxConnector.prototype.paintLine;mxConnector.prototype.paintLine=function(p,x,B){this.routedPoints=null!=this.state?this.state.routedPoints:null;if(this.outline||null==this.state||null==this.style||null==this.state.routedPoints||0==this.state.routedPoints.length)d.apply(this,arguments);else{var C=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2,E=(parseInt(mxUtils.getValue(this.style, -"jumpSize",Graph.defaultJumpSize))-2)/2+this.strokewidth,I=mxUtils.getValue(this.style,"jumpStyle","none"),F=!0,O=null,S=null,T=[],P=null;p.begin();for(var ba=0;baE*E&&0E*E&&(X=new mxPoint(R.x-P.x,R.y-P.y),U=new mxPoint(R.x+P.x,R.y+P.y),T.push(X),this.addPoints(p,T,B,C,!1,null,F),T=0>Math.round(P.x)||0==Math.round(P.x)&&0>=Math.round(P.y)?1:-1,F=!1,"sharp"==I?(p.lineTo(X.x-P.y*T,X.y+P.x*T),p.lineTo(U.x-P.y*T,U.y+P.x*T),p.lineTo(U.x,U.y)):"line"==I?(p.moveTo(X.x+P.y*T,X.y-P.x*T),p.lineTo(X.x-P.y*T,X.y+P.x*T),p.moveTo(U.x-P.y*T,U.y+P.x*T),p.lineTo(U.x+ -P.y*T,U.y-P.x*T),p.moveTo(U.x,U.y)):"arc"==I?(T*=1.3,p.curveTo(X.x-P.y*T,X.y+P.x*T,U.x-P.y*T,U.y+P.x*T,U.x,U.y)):(p.moveTo(U.x,U.y),F=!0),T=[U],X=!0))}else P=null;X||(T.push(R),O=R)}this.addPoints(p,T,B,C,!1,null,F);p.stroke()}};var m=mxGraphView.prototype.getFixedTerminalPoint;mxGraphView.prototype.getFixedTerminalPoint=function(p,x,B,C){return null!=x&&"centerPerimeter"==x.style[mxConstants.STYLE_PERIMETER]?new mxPoint(x.getCenterX(),x.getCenterY()):m.apply(this,arguments)};var n=mxGraphView.prototype.updateFloatingTerminalPoint; -mxGraphView.prototype.updateFloatingTerminalPoint=function(p,x,B,C){if(null==x||null==p||"1"!=x.style.snapToPoint&&"1"!=p.style.snapToPoint)n.apply(this,arguments);else{x=this.getTerminalPort(p,x,C);var E=this.getNextPoint(p,B,C),I=this.graph.isOrthogonal(p),F=mxUtils.toRadians(Number(x.style[mxConstants.STYLE_ROTATION]||"0")),O=new mxPoint(x.getCenterX(),x.getCenterY());if(0!=F){var S=Math.cos(-F),T=Math.sin(-F);E=mxUtils.getRotatedPoint(E,S,T,O)}S=parseFloat(p.style[mxConstants.STYLE_PERIMETER_SPACING]|| -0);S+=parseFloat(p.style[C?mxConstants.STYLE_SOURCE_PERIMETER_SPACING:mxConstants.STYLE_TARGET_PERIMETER_SPACING]||0);E=this.getPerimeterPoint(x,E,0==F&&I,S);0!=F&&(S=Math.cos(F),T=Math.sin(F),E=mxUtils.getRotatedPoint(E,S,T,O));p.setAbsoluteTerminalPoint(this.snapToAnchorPoint(p,x,B,C,E),C)}};mxGraphView.prototype.snapToAnchorPoint=function(p,x,B,C,E){if(null!=x&&null!=p){p=this.graph.getAllConnectionConstraints(x);C=B=null;if(null!=p)for(var I=0;II||Math.abs(P.y-T.y)>I)&&(Math.abs(P.x-O.x)>I||Math.abs(P.y-O.y)>I)&&(Math.abs(P.x-Y.x)>I||Math.abs(P.y-Y.y)>I)&&(Math.abs(P.x-X.x)>I||Math.abs(P.y-X.y)>I)){X=P.x-T.x;Y=P.y-T.y;P={distSq:X*X+Y*Y,x:P.x,y:P.y};for(X=0;XP.distSq){S.splice(X,0,P);P=null;break}null==P||0!=S.length&&S[S.length-1].x===P.x&&S[S.length-1].y===P.y||S.push(P)}}}for(U=0;U< +S.length;U++)B=E(1,S[U].x,S[U].y)||B}P=x[x.length-1];B=E(0,P.x,P.y)||B}p.routedPoints=C;return B}return!1};var d=mxConnector.prototype.paintLine;mxConnector.prototype.paintLine=function(p,x,B){this.routedPoints=null!=this.state?this.state.routedPoints:null;if(this.outline||null==this.state||null==this.style||null==this.state.routedPoints||0==this.state.routedPoints.length)d.apply(this,arguments);else{var C=mxUtils.getValue(this.style,mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2,E=(parseInt(mxUtils.getValue(this.style, +"jumpSize",Graph.defaultJumpSize))-2)/2+this.strokewidth,I=mxUtils.getValue(this.style,"jumpStyle","none"),F=!0,O=null,T=null,S=[],P=null;p.begin();for(var ba=0;baE*E&&0E*E&&(X=new mxPoint(R.x-P.x,R.y-P.y),U=new mxPoint(R.x+P.x,R.y+P.y),S.push(X),this.addPoints(p,S,B,C,!1,null,F),S=0>Math.round(P.x)||0==Math.round(P.x)&&0>=Math.round(P.y)?1:-1,F=!1,"sharp"==I?(p.lineTo(X.x-P.y*S,X.y+P.x*S),p.lineTo(U.x-P.y*S,U.y+P.x*S),p.lineTo(U.x,U.y)):"line"==I?(p.moveTo(X.x+P.y*S,X.y-P.x*S),p.lineTo(X.x-P.y*S,X.y+P.x*S),p.moveTo(U.x-P.y*S,U.y+P.x*S),p.lineTo(U.x+ +P.y*S,U.y-P.x*S),p.moveTo(U.x,U.y)):"arc"==I?(S*=1.3,p.curveTo(X.x-P.y*S,X.y+P.x*S,U.x-P.y*S,U.y+P.x*S,U.x,U.y)):(p.moveTo(U.x,U.y),F=!0),S=[U],X=!0))}else P=null;X||(S.push(R),O=R)}this.addPoints(p,S,B,C,!1,null,F);p.stroke()}};var m=mxGraphView.prototype.getFixedTerminalPoint;mxGraphView.prototype.getFixedTerminalPoint=function(p,x,B,C){return null!=x&&"centerPerimeter"==x.style[mxConstants.STYLE_PERIMETER]?new mxPoint(x.getCenterX(),x.getCenterY()):m.apply(this,arguments)};var n=mxGraphView.prototype.updateFloatingTerminalPoint; +mxGraphView.prototype.updateFloatingTerminalPoint=function(p,x,B,C){if(null==x||null==p||"1"!=x.style.snapToPoint&&"1"!=p.style.snapToPoint)n.apply(this,arguments);else{x=this.getTerminalPort(p,x,C);var E=this.getNextPoint(p,B,C),I=this.graph.isOrthogonal(p),F=mxUtils.toRadians(Number(x.style[mxConstants.STYLE_ROTATION]||"0")),O=new mxPoint(x.getCenterX(),x.getCenterY());if(0!=F){var T=Math.cos(-F),S=Math.sin(-F);E=mxUtils.getRotatedPoint(E,T,S,O)}T=parseFloat(p.style[mxConstants.STYLE_PERIMETER_SPACING]|| +0);T+=parseFloat(p.style[C?mxConstants.STYLE_SOURCE_PERIMETER_SPACING:mxConstants.STYLE_TARGET_PERIMETER_SPACING]||0);E=this.getPerimeterPoint(x,E,0==F&&I,T);0!=F&&(T=Math.cos(F),S=Math.sin(F),E=mxUtils.getRotatedPoint(E,T,S,O));p.setAbsoluteTerminalPoint(this.snapToAnchorPoint(p,x,B,C,E),C)}};mxGraphView.prototype.snapToAnchorPoint=function(p,x,B,C,E){if(null!=x&&null!=p){p=this.graph.getAllConnectionConstraints(x);C=B=null;if(null!=p)for(var I=0;I
"));ea=Graph.sanitizeHtml(z?ea.replace(/\n/g,"").replace(/<br\s*.?>/g,"
"):ea,!0);this.textarea.className="mxCellEditor mxPlainTextEditor";var Z=mxConstants.DEFAULT_FONTSIZE;this.textarea.style.lineHeight=mxConstants.ABSOLUTE_LINE_HEIGHT? Math.round(Z*mxConstants.LINE_HEIGHT)+"px":mxConstants.LINE_HEIGHT;this.textarea.style.fontSize=Math.round(Z)+"px";this.textarea.style.textDecoration="";this.textarea.style.fontWeight="normal";this.textarea.style.fontStyle="";this.textarea.style.fontFamily=mxConstants.DEFAULT_FONTFAMILY;this.textarea.style.textAlign="left";this.textarea.style.width="";this.textarea.style.padding="2px";this.textarea.innerHTML!=ea&&(this.textarea.innerHTML=ea);this.codeViewMode=!0}this.textarea.focus();null!=this.switchSelectionState&& -this.restoreSelection(this.switchSelectionState);this.switchSelectionState=A;this.resize()}};var S=mxCellEditor.prototype.resize;mxCellEditor.prototype.resize=function(u,z){if(null!=this.textarea)if(u=this.graph.getView().getState(this.editingCell),this.codeViewMode&&null!=u){var A=u.view.scale;this.bounds=mxRectangle.fromRectangle(u);if(0==this.bounds.width&&0==this.bounds.height){this.bounds.width=160*A;this.bounds.height=60*A;var D=null!=u.text?u.text.margin:null;null==D&&(D=mxUtils.getAlignmentAsPoint(mxUtils.getValue(u.style, +this.restoreSelection(this.switchSelectionState);this.switchSelectionState=A;this.resize()}};var T=mxCellEditor.prototype.resize;mxCellEditor.prototype.resize=function(u,z){if(null!=this.textarea)if(u=this.graph.getView().getState(this.editingCell),this.codeViewMode&&null!=u){var A=u.view.scale;this.bounds=mxRectangle.fromRectangle(u);if(0==this.bounds.width&&0==this.bounds.height){this.bounds.width=160*A;this.bounds.height=60*A;var D=null!=u.text?u.text.margin:null;null==D&&(D=mxUtils.getAlignmentAsPoint(mxUtils.getValue(u.style, mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER),mxUtils.getValue(u.style,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE)));this.bounds.x+=D.x*this.bounds.width;this.bounds.y+=D.y*this.bounds.height}this.textarea.style.width=Math.round((this.bounds.width-4)/A)+"px";this.textarea.style.height=Math.round((this.bounds.height-4)/A)+"px";this.textarea.style.overflow="auto";this.textarea.clientHeight"));return A=Graph.sanitizeHtml(A,!0)};mxCellEditorGetCurrentValue=mxCellEditor.prototype.getCurrentValue; -mxCellEditor.prototype.getCurrentValue=function(u){if("0"==mxUtils.getValue(u.style,"html","0"))return mxCellEditorGetCurrentValue.apply(this,arguments);var z=Graph.sanitizeHtml(this.textarea.innerHTML,!0);return z="1"==mxUtils.getValue(u.style,"nl2Br","1")?z.replace(/\r\n/g,"
").replace(/\n/g,"
"):z.replace(/\r\n/g,"").replace(/\n/g,"")};var T=mxCellEditor.prototype.stopEditing;mxCellEditor.prototype.stopEditing=function(u){this.codeViewMode&&this.toggleViewMode();T.apply(this,arguments); +A+")")}else this.textarea.style.height="",this.textarea.style.overflow="",T.apply(this,arguments)};mxCellEditorGetInitialValue=mxCellEditor.prototype.getInitialValue;mxCellEditor.prototype.getInitialValue=function(u,z){if("0"==mxUtils.getValue(u.style,"html","0"))return mxCellEditorGetInitialValue.apply(this,arguments);var A=this.graph.getEditingValue(u.cell,z);"1"==mxUtils.getValue(u.style,"nl2Br","1")&&(A=A.replace(/\n/g,"
"));return A=Graph.sanitizeHtml(A,!0)};mxCellEditorGetCurrentValue=mxCellEditor.prototype.getCurrentValue; +mxCellEditor.prototype.getCurrentValue=function(u){if("0"==mxUtils.getValue(u.style,"html","0"))return mxCellEditorGetCurrentValue.apply(this,arguments);var z=Graph.sanitizeHtml(this.textarea.innerHTML,!0);return z="1"==mxUtils.getValue(u.style,"nl2Br","1")?z.replace(/\r\n/g,"
").replace(/\n/g,"
"):z.replace(/\r\n/g,"").replace(/\n/g,"")};var S=mxCellEditor.prototype.stopEditing;mxCellEditor.prototype.stopEditing=function(u){this.codeViewMode&&this.toggleViewMode();S.apply(this,arguments); this.focusContainer()};mxCellEditor.prototype.focusContainer=function(){try{this.graph.container.focus()}catch(u){}};var P=mxCellEditor.prototype.applyValue;mxCellEditor.prototype.applyValue=function(u,z){this.graph.getModel().beginUpdate();try{P.apply(this,arguments),""==z&&this.graph.isCellDeletable(u.cell)&&0==this.graph.model.getChildCount(u.cell)&&this.graph.isTransparentState(u)&&this.graph.removeCells([u.cell],!1)}finally{this.graph.getModel().endUpdate()}};mxCellEditor.prototype.getBackgroundColor= function(u){var z=mxUtils.getValue(u.style,mxConstants.STYLE_LABEL_BACKGROUNDCOLOR,null);null!=z&&z!=mxConstants.NONE||!(null!=u.cell.geometry&&0B;B++)(function(ha){mxEvent.addListener(k[ha],"click",function(){b(k[ha],""==k[ha].style.backgroundImage)})})(B);var Ia=mxUtils.bind(this,function(ha,Da,Ka){var Ha=f.editor.graph;g=f.getSelectionState(); ha=mxUtils.getValue(g.style,mxConstants.STYLE_FONTSTYLE,0);b(k[0],(ha&mxConstants.FONT_BOLD)==mxConstants.FONT_BOLD);b(k[1],(ha&mxConstants.FONT_ITALIC)==mxConstants.FONT_ITALIC);b(k[2],(ha&mxConstants.FONT_UNDERLINE)==mxConstants.FONT_UNDERLINE);t.firstChild.nodeValue=mxUtils.getValue(g.style,mxConstants.STYLE_FONTFAMILY,Menus.prototype.defaultFont);if(Ka||document.activeElement!=J)ha=parseFloat(mxUtils.getValue(g.style,mxConstants.STYLE_FONTSIZE,Menus.prototype.defaultFontSize)),J.value=isNaN(ha)? -"":ha+" pt";ha=g.cells.filter(function(La){return"SHAPE"===La.getAttribute("type")});0!==ha.length&&ha.map(function(La){return Ha.getCellStyle(La)}).forEach(function(La){var Ma=mxUtils.getValue(La,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER);b(C,Ma==mxConstants.ALIGN_LEFT);b(E,Ma==mxConstants.ALIGN_CENTER);b(I,Ma==mxConstants.ALIGN_RIGHT);La=mxUtils.getValue(La,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE);b(O,La==mxConstants.ALIGN_TOP);b(S,La==mxConstants.ALIGN_MIDDLE);b(T,La== +"":ha+" pt";ha=g.cells.filter(function(La){return"SHAPE"===La.getAttribute("type")});0!==ha.length&&ha.map(function(La){return Ha.getCellStyle(La)}).forEach(function(La){var Ma=mxUtils.getValue(La,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER);b(C,Ma==mxConstants.ALIGN_LEFT);b(E,Ma==mxConstants.ALIGN_CENTER);b(I,Ma==mxConstants.ALIGN_RIGHT);La=mxUtils.getValue(La,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE);b(O,La==mxConstants.ALIGN_TOP);b(T,La==mxConstants.ALIGN_MIDDLE);b(S,La== mxConstants.ALIGN_BOTTOM)});ha=mxUtils.getValue(g.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER);Da=mxUtils.getValue(g.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE);da.value=ha==mxConstants.ALIGN_LEFT&&Da==mxConstants.ALIGN_TOP?"topLeft":ha==mxConstants.ALIGN_CENTER&&Da==mxConstants.ALIGN_TOP?"top":ha==mxConstants.ALIGN_RIGHT&&Da==mxConstants.ALIGN_TOP?"topRight":ha==mxConstants.ALIGN_LEFT&&Da==mxConstants.ALIGN_BOTTOM?"bottomLeft":ha==mxConstants.ALIGN_CENTER&& Da==mxConstants.ALIGN_BOTTOM?"bottom":ha==mxConstants.ALIGN_RIGHT&&Da==mxConstants.ALIGN_BOTTOM?"bottomRight":ha==mxConstants.ALIGN_LEFT?"left":ha==mxConstants.ALIGN_RIGHT?"right":"center";if(Ka||document.activeElement!=ca)ha=parseFloat(mxUtils.getValue(g.style,mxConstants.STYLE_SPACING,2)),ca.value=isNaN(ha)?"":ha+" pt";if(Ka||document.activeElement!=K)ha=parseFloat(mxUtils.getValue(g.style,mxConstants.STYLE_SPACING_TOP,0)),K.value=isNaN(ha)?"":ha+" pt";if(Ka||document.activeElement!=Fa)ha=parseFloat(mxUtils.getValue(g.style, mxConstants.STYLE_SPACING_RIGHT,0)),Fa.value=isNaN(ha)?"":ha+" pt";if(Ka||document.activeElement!=na)ha=parseFloat(mxUtils.getValue(g.style,mxConstants.STYLE_SPACING_BOTTOM,0)),na.value=isNaN(ha)?"":ha+" pt";if(Ka||document.activeElement!=ia)ha=parseFloat(mxUtils.getValue(g.style,mxConstants.STYLE_SPACING_LEFT,0)),ia.value=isNaN(ha)?"":ha+" pt"});var Ja=this.installInputHandler(ca,mxConstants.STYLE_SPACING,2,-999,999," pt");var ta=this.installInputHandler(K,mxConstants.STYLE_SPACING_TOP,0,-999,999, @@ -3096,22 +3096,22 @@ var C=mxUtils.bind(this,function(Y,da,la,J,W){Y=this.editorUi.menus.styleChange( ["1","1 2"]).setAttribute("title",mxResources.get("dotted")+" (2)");C(Y,75,"dotted",[mxConstants.STYLE_DASHED,mxConstants.STYLE_DASH_PATTERN],["1","1 4"]).setAttribute("title",mxResources.get("dotted")+" (3)")}));var E=B.cloneNode(!1),I=this.editorUi.toolbar.addMenuFunctionInContainer(E,"geSprite-connection",mxResources.get("connection"),!1,mxUtils.bind(this,function(Y){this.editorUi.menus.styleChange(Y,"",[mxConstants.STYLE_SHAPE,mxConstants.STYLE_STARTSIZE,mxConstants.STYLE_ENDSIZE,"width"],[null, null,null,null],"geIcon geSprite geSprite-connection",null,!0).setAttribute("title",mxResources.get("line"))}));k=this.editorUi.toolbar.addMenuFunctionInContainer(E,"geSprite-orthogonal",mxResources.get("pattern"),!1,mxUtils.bind(this,function(Y){C(Y,33,"solid",[mxConstants.STYLE_DASHED,mxConstants.STYLE_DASH_PATTERN],[null,null]).setAttribute("title",mxResources.get("solid"));C(Y,33,"dashed",[mxConstants.STYLE_DASHED,mxConstants.STYLE_DASH_PATTERN],["1",null]).setAttribute("title",mxResources.get("dashed")); C(Y,33,"dotted",[mxConstants.STYLE_DASHED,mxConstants.STYLE_DASH_PATTERN],["1","1 1"]).setAttribute("title",mxResources.get("dotted")+" (1)");C(Y,33,"dotted",[mxConstants.STYLE_DASHED,mxConstants.STYLE_DASH_PATTERN],["1","1 2"]).setAttribute("title",mxResources.get("dotted")+" (2)");C(Y,33,"dotted",[mxConstants.STYLE_DASHED,mxConstants.STYLE_DASH_PATTERN],["1","1 4"]).setAttribute("title",mxResources.get("dotted")+" (3)")}));p=B.cloneNode(!1);var F=document.createElement("input");F.style.position= -"absolute";F.style.textAlign="right";F.style.marginTop="2px";F.style.width="52px";F.style.height="21px";F.style.left="146px";F.style.border="1px solid rgb(160, 160, 160)";F.style.borderRadius="4px";F.style.boxSizing="border-box";F.setAttribute("title",mxResources.get("linewidth"));B.appendChild(F);var O=F.cloneNode(!0);E.appendChild(O);var S=this.createStepper(F,b,1,9);S.style.display=F.style.display;S.style.marginTop="2px";S.style.left="198px";B.appendChild(S);S=this.createStepper(O,f,1,9);S.style.display= -O.style.display;S.style.marginTop="2px";O.style.position="absolute";S.style.left="198px";E.appendChild(S);mxEvent.addListener(F,"blur",b);mxEvent.addListener(F,"change",b);mxEvent.addListener(O,"blur",f);mxEvent.addListener(O,"change",f);var T=this.editorUi.toolbar.addMenuFunctionInContainer(p,"geSprite-orthogonal",mxResources.get("waypoints"),!1,mxUtils.bind(this,function(Y){"arrow"!=d.style.shape&&this.editorUi.menus.edgeStyleChange(Y,"",[mxConstants.STYLE_EDGE,mxConstants.STYLE_CURVED,mxConstants.STYLE_NOEDGESTYLE], +"absolute";F.style.textAlign="right";F.style.marginTop="2px";F.style.width="52px";F.style.height="21px";F.style.left="146px";F.style.border="1px solid rgb(160, 160, 160)";F.style.borderRadius="4px";F.style.boxSizing="border-box";F.setAttribute("title",mxResources.get("linewidth"));B.appendChild(F);var O=F.cloneNode(!0);E.appendChild(O);var T=this.createStepper(F,b,1,9);T.style.display=F.style.display;T.style.marginTop="2px";T.style.left="198px";B.appendChild(T);T=this.createStepper(O,f,1,9);T.style.display= +O.style.display;T.style.marginTop="2px";O.style.position="absolute";T.style.left="198px";E.appendChild(T);mxEvent.addListener(F,"blur",b);mxEvent.addListener(F,"change",b);mxEvent.addListener(O,"blur",f);mxEvent.addListener(O,"change",f);var S=this.editorUi.toolbar.addMenuFunctionInContainer(p,"geSprite-orthogonal",mxResources.get("waypoints"),!1,mxUtils.bind(this,function(Y){"arrow"!=d.style.shape&&this.editorUi.menus.edgeStyleChange(Y,"",[mxConstants.STYLE_EDGE,mxConstants.STYLE_CURVED,mxConstants.STYLE_NOEDGESTYLE], [null,null,null],"geIcon geSprite geSprite-straight",null,!0).setAttribute("title",mxResources.get("straight"))})),P=this.editorUi.toolbar.addMenuFunctionInContainer(p,"geSprite-startclassic",mxResources.get("linestart"),!1,mxUtils.bind(this,function(Y){if("connector"==d.style.shape||"flexArrow"==d.style.shape||"filledEdge"==d.style.shape){var da=this.editorUi.menus.edgeStyleChange(Y,"",[mxConstants.STYLE_STARTARROW,"startFill"],[mxConstants.NONE,0],"geIcon",null,!1);da.setAttribute("title",mxResources.get("none")); var la=document.createElement("font");la.style.fontSize="10px";mxUtils.write(la,mxResources.get("none"));da.firstChild.firstChild.appendChild(la);"connector"==d.style.shape||"filledEdge"==d.style.shape?Format.processMenuIcon(this.editorUi.menus.edgeStyleChange(Y,"",[mxConstants.STYLE_STARTARROW,"startFill"],[mxConstants.ARROW_CLASSIC,1],null,null,!1,Format.classicFilledMarkerImage.src)):this.editorUi.menus.edgeStyleChange(Y,"",[mxConstants.STYLE_STARTARROW],[mxConstants.ARROW_BLOCK],"geIcon geSprite geSprite-startblocktrans", null,!1).setAttribute("title",mxResources.get("block"));Y.div.style.width="40px";window.setTimeout(mxUtils.bind(this,function(){null!=Y.div&&mxUtils.fit(Y.div)}),0)}})),ba=this.editorUi.toolbar.addMenuFunctionInContainer(p,"geSprite-endclassic",mxResources.get("lineend"),!1,mxUtils.bind(this,function(Y){if("connector"==d.style.shape||"flexArrow"==d.style.shape||"filledEdge"==d.style.shape){var da=this.editorUi.menus.edgeStyleChange(Y,"",[mxConstants.STYLE_ENDARROW,"endFill"],[mxConstants.NONE,0], "geIcon",null,!1);da.setAttribute("title",mxResources.get("none"));var la=document.createElement("font");la.style.fontSize="10px";mxUtils.write(la,mxResources.get("none"));da.firstChild.firstChild.appendChild(la);"connector"==d.style.shape||"filledEdge"==d.style.shape?Format.processMenuIcon(this.editorUi.menus.edgeStyleChange(Y,"",[mxConstants.STYLE_ENDARROW,"endFill"],[mxConstants.ARROW_CLASSIC,1],null,null,!1,Format.classicFilledMarkerImage.src),"scaleX(-1)"):this.editorUi.menus.edgeStyleChange(Y, -"",[mxConstants.STYLE_ENDARROW],[mxConstants.ARROW_BLOCK],"geIcon geSprite geSprite-endblocktrans",null,!1).setAttribute("title",mxResources.get("block"));Y.div.style.width="40px";window.setTimeout(mxUtils.bind(this,function(){null!=Y.div&&mxUtils.fit(Y.div)}),0)}}));p=this.addArrow(I,8);p.nextSibling.style.position="relative";p.nextSibling.style.top="-2px";p=this.addArrow(T,10);p.nextSibling.style.position="relative";p.nextSibling.style.top="-3px";T.getElementsByTagName("img")[0].style.top="-1px"; -this.addArrow(P,null,!0);this.addArrow(ba,null,!0);p=this.addArrow(t,9);p.className="geIcon";p.style.width="auto";S=this.addArrow(k,9);S.className="geIcon";S.style.width="22px";var U=document.createElement("div");U.style.width="84px";U.style.height="1px";U.style.borderBottom="1px solid "+this.defaultStrokeColor;U.style.marginBottom="7px";p.appendChild(U);var R=document.createElement("div");R.style.width="23px";R.style.height="1px";R.style.borderBottom="1px solid "+this.defaultStrokeColor;R.style.marginBottom= -"7px";S.appendChild(R);t.style.height="15px";t.style.marginLeft="16px";k.style.height="15px";k.style.marginLeft="3px";I.style.marginLeft="10px";I.style.height="15px";T.style.marginLeft="10px";T.style.height="17px";P.style.marginLeft="3px";P.style.height="17px";ba.style.marginLeft="3px";ba.style.height="17px";0===d.cells.filter(function(Y){return g.getModel().isEdge(Y)&&"LINK"===Y.getAttribute("type")&&"SIMPLE"!==Y.getAttribute("linkType")}).length&&a.appendChild(m);a.appendChild(B);t=B.cloneNode(!1); +"",[mxConstants.STYLE_ENDARROW],[mxConstants.ARROW_BLOCK],"geIcon geSprite geSprite-endblocktrans",null,!1).setAttribute("title",mxResources.get("block"));Y.div.style.width="40px";window.setTimeout(mxUtils.bind(this,function(){null!=Y.div&&mxUtils.fit(Y.div)}),0)}}));p=this.addArrow(I,8);p.nextSibling.style.position="relative";p.nextSibling.style.top="-2px";p=this.addArrow(S,10);p.nextSibling.style.position="relative";p.nextSibling.style.top="-3px";S.getElementsByTagName("img")[0].style.top="-1px"; +this.addArrow(P,null,!0);this.addArrow(ba,null,!0);p=this.addArrow(t,9);p.className="geIcon";p.style.width="auto";T=this.addArrow(k,9);T.className="geIcon";T.style.width="22px";var U=document.createElement("div");U.style.width="84px";U.style.height="1px";U.style.borderBottom="1px solid "+this.defaultStrokeColor;U.style.marginBottom="7px";p.appendChild(U);var R=document.createElement("div");R.style.width="23px";R.style.height="1px";R.style.borderBottom="1px solid "+this.defaultStrokeColor;R.style.marginBottom= +"7px";T.appendChild(R);t.style.height="15px";t.style.marginLeft="16px";k.style.height="15px";k.style.marginLeft="3px";I.style.marginLeft="10px";I.style.height="15px";S.style.marginLeft="10px";S.style.height="17px";P.style.marginLeft="3px";P.style.height="17px";ba.style.marginLeft="3px";ba.style.height="17px";0===d.cells.filter(function(Y){return g.getModel().isEdge(Y)&&"LINK"===Y.getAttribute("type")&&"SIMPLE"!==Y.getAttribute("linkType")}).length&&a.appendChild(m);a.appendChild(B);t=B.cloneNode(!1); t.style.padding="5px 4px 6px 0px";t.style.fontWeight="normal";m=m.cloneNode(!1);m.style.fontWeight="normal";m.style.position="relative";m.style.paddingLeft="16px";m.style.marginBottom="2px";m.style.marginTop="6px";m.style.borderWidth="0px";m.style.paddingBottom="18px";m.className="FormatPanel-perimeterPanel";t=document.createElement("div");t.style.position="absolute";t.style.marginLeft="3px";t.style.marginBottom="12px";t.style.marginTop="1px";t.style.fontWeight="normal";t.style.width="120px";mxUtils.write(t, mxResources.get("perimeter"));m.appendChild(t);this.addUnitInput(m,"pt",30,52,function(){(void 0).apply(this,arguments)});d.vertices.length==d.cells.length&&a.appendChild(m);var X=mxUtils.bind(this,function(Y,da,la){function J(W,N,Q,K){Q=Q.getElementsByTagName("div")[0];null!=Q&&e.updateCssForMarker(Q,K,d.style.shape,W,N);return Q}d=e.getSelectionState();if(la||document.activeElement!=F)Y=parseFloat(mxUtils.getValue(d.style,mxConstants.STYLE_STROKEWIDTH,1)),F.value=isNaN(Y)?"":Y+" pt";if(la||document.activeElement!= O)Y=parseFloat(mxUtils.getValue(d.style,mxConstants.STYLE_STROKEWIDTH,1)),O.value=isNaN(Y)?"":Y+" pt";n.style.visibility="connector"==d.style.shape||"filledEdge"==d.style.shape?"":"hidden";"1"==mxUtils.getValue(d.style,mxConstants.STYLE_CURVED,null)?n.value="curved":"1"==mxUtils.getValue(d.style,mxConstants.STYLE_ROUNDED,null)&&(n.value="rounded");"1"==mxUtils.getValue(d.style,mxConstants.STYLE_DASHED,null)?null==mxUtils.getValue(d.style,mxConstants.STYLE_DASH_PATTERN,null)?U.style.borderBottom="1px dashed "+ -this.defaultStrokeColor:U.style.borderBottom="1px dotted "+this.defaultStrokeColor:U.style.borderBottom="1px solid "+this.defaultStrokeColor;R.style.borderBottom=U.style.borderBottom;la=T.getElementsByTagName("div")[0];null!=la&&(Y=mxUtils.getValue(d.style,mxConstants.STYLE_EDGE,null),"1"==mxUtils.getValue(d.style,mxConstants.STYLE_NOEDGESTYLE,null)&&(Y=null),"orthogonalEdgeStyle"==Y&&"1"==mxUtils.getValue(d.style,mxConstants.STYLE_CURVED,null)?la.className="geSprite geSprite-curved":la.className= +this.defaultStrokeColor:U.style.borderBottom="1px dotted "+this.defaultStrokeColor:U.style.borderBottom="1px solid "+this.defaultStrokeColor;R.style.borderBottom=U.style.borderBottom;la=S.getElementsByTagName("div")[0];null!=la&&(Y=mxUtils.getValue(d.style,mxConstants.STYLE_EDGE,null),"1"==mxUtils.getValue(d.style,mxConstants.STYLE_NOEDGESTYLE,null)&&(Y=null),"orthogonalEdgeStyle"==Y&&"1"==mxUtils.getValue(d.style,mxConstants.STYLE_CURVED,null)?la.className="geSprite geSprite-curved":la.className= "straight"==Y||"none"==Y||null==Y?"geSprite geSprite-straight":"entityRelationEdgeStyle"==Y?"geSprite geSprite-entity":"elbowEdgeStyle"==Y?"geSprite "+("vertical"==mxUtils.getValue(d.style,mxConstants.STYLE_ELBOW,null)?"geSprite-verticalelbow":"geSprite-horizontalelbow"):"isometricEdgeStyle"==Y?"geSprite "+("vertical"==mxUtils.getValue(d.style,mxConstants.STYLE_ELBOW,null)?"geSprite-verticalisometric":"geSprite-horizontalisometric"):"geSprite geSprite-orthogonal");la=I.getElementsByTagName("div")[0]; null!=la&&(la.className="link"==d.style.shape?"geSprite geSprite-linkedge":"flexArrow"==d.style.shape?"geSprite geSprite-arrow":"arrow"==d.style.shape?"geSprite geSprite-simplearrow":"geSprite geSprite-connection");E.style.display="none";B.style.display="";Graph.lineJumpsEnabled&&0S&&(m=function(R){mxEvent.addListener(R,"mouseenter",function(){R.style.opacity="1"});mxEvent.addListener(R,"mouseleave",function(){R.style.opacity="0.5"})},k=document.createElement("div"),k.style.className="geAdaptiveAsset",k.style.position="absolute", +J));F.appendChild(J)}),T=Math.ceil(Editor.styles.length/10);this.format.currentStylePage=null!=this.format.currentStylePage?this.format.currentStylePage:0;var S=[],P=mxUtils.bind(this,function(){0T&&(m=function(R){mxEvent.addListener(R,"mouseenter",function(){R.style.opacity="1"});mxEvent.addListener(R,"mouseleave",function(){R.style.opacity="0.5"})},k=document.createElement("div"),k.style.className="geAdaptiveAsset",k.style.position="absolute", k.style.left="0px",k.style.top="0px",k.style.bottom="0px",k.style.width="24px",k.style.height="24px",k.style.margin="0px",k.style.cursor="pointer",k.style.opacity="0.5",k.style.backgroundRepeat="no-repeat",k.style.backgroundPosition="center center",k.style.backgroundSize="24px 24px",k.style.backgroundImage="url("+Editor.previousImage+")",p=k.cloneNode(!1),p.style.backgroundImage="url("+Editor.nextImage+")",p.style.left="",p.style.right="2px",d.appendChild(k),d.appendChild(p),mxEvent.addListener(k, -"click",mxUtils.bind(this,function(){ba(mxUtils.mod(this.format.currentStylePage-1,S))})),mxEvent.addListener(p,"click",mxUtils.bind(this,function(){ba(mxUtils.mod(this.format.currentStylePage+1,S))})),m(k),m(p))}else P();return a}; +"click",mxUtils.bind(this,function(){ba(mxUtils.mod(this.format.currentStylePage-1,T))})),mxEvent.addListener(p,"click",mxUtils.bind(this,function(){ba(mxUtils.mod(this.format.currentStylePage+1,T))})),m(k),m(p))}else P();return a}; DiagramStylePanel.prototype.addResetButton=function(a){var b=this.editorUi,f=b.editor.graph,e=f.model,g=mxUtils.button(mxResources.get("reset"),mxUtils.bind(this,function(d){d=f.getVerticesAndEdges(!0,!0);this.format.rounded=!1;this.format.curved=!1;if(0w+y?c.y=r.y:c.x=r.x);return mxUtils.getPerimeterPoint(H,c,r)};mxStyleRegistry.putValue("parallelogramPerimeter",mxPerimeter.ParallelogramPerimeter);mxPerimeter.TrapezoidPerimeter=function(c,h,r,l){var q="0"!=mxUtils.getValue(h.style, "fixedSize","0"),v=q?P.prototype.fixedSize:P.prototype.size;null!=h&&(v=mxUtils.getValue(h.style,"size",v));q&&(v*=h.view.scale);var w=c.x,H=c.y,y=c.width,aa=c.height;h=null!=h?mxUtils.getValue(h.style,mxConstants.STYLE_DIRECTION,mxConstants.DIRECTION_EAST):mxConstants.DIRECTION_EAST;h==mxConstants.DIRECTION_EAST?(q=q?Math.max(0,Math.min(.5*y,v)):y*Math.max(0,Math.min(1,v)),H=[new mxPoint(w+q,H),new mxPoint(w+y-q,H),new mxPoint(w+y,H+aa),new mxPoint(w,H+aa),new mxPoint(w+q,H)]):h==mxConstants.DIRECTION_WEST? (q=q?Math.max(0,Math.min(y,v)):y*Math.max(0,Math.min(1,v)),H=[new mxPoint(w,H),new mxPoint(w+y,H),new mxPoint(w+y-q,H+aa),new mxPoint(w+q,H+aa),new mxPoint(w,H)]):h==mxConstants.DIRECTION_NORTH?(q=q?Math.max(0,Math.min(aa,v)):aa*Math.max(0,Math.min(1,v)),H=[new mxPoint(w,H+q),new mxPoint(w+y,H),new mxPoint(w+y,H+aa),new mxPoint(w,H+aa-q),new mxPoint(w,H+q)]):(q=q?Math.max(0,Math.min(aa,v)):aa*Math.max(0,Math.min(1,v)),H=[new mxPoint(w,H),new mxPoint(w+y,H+q),new mxPoint(w+y,H+aa-q),new mxPoint(w, @@ -3362,23 +3362,23 @@ h.push(gb(c));return h},module:function(c){return[Wa(c,["jettyWidth","jettyHeigh r.y-h.y))/2)})]},corner:function(c){return[Wa(c,["dx","dy"],function(h){var r=Math.max(0,Math.min(h.width,mxUtils.getValue(this.state.style,"dx",Ma.prototype.dx))),l=Math.max(0,Math.min(h.height,mxUtils.getValue(this.state.style,"dy",Ma.prototype.dy)));return new mxPoint(h.x+r,h.y+l)},function(h,r){this.state.style.dx=Math.round(Math.max(0,Math.min(h.width,r.x-h.x)));this.state.style.dy=Math.round(Math.max(0,Math.min(h.height,r.y-h.y)))},!1)]},tee:function(c){return[Wa(c,["dx","dy"],function(h){var r= Math.max(0,Math.min(h.width,mxUtils.getValue(this.state.style,"dx",eb.prototype.dx))),l=Math.max(0,Math.min(h.height,mxUtils.getValue(this.state.style,"dy",eb.prototype.dy)));return new mxPoint(h.x+(h.width+r)/2,h.y+l)},function(h,r){this.state.style.dx=Math.round(Math.max(0,2*Math.min(h.width/2,r.x-h.x-h.width/2)));this.state.style.dy=Math.round(Math.max(0,Math.min(h.height,r.y-h.y)))},!1)]},singleArrow:ib(1),doubleArrow:ib(.5),"mxgraph.arrows2.wedgeArrow":hb(20,20),"mxgraph.arrows2.wedgeArrowDashed":hb(20, 20),"mxgraph.arrows2.wedgeArrowDashed2":hb(20,20),folder:function(c){return[Wa(c,["tabWidth","tabHeight"],function(h){var r=Math.max(0,Math.min(h.width,mxUtils.getValue(this.state.style,"tabWidth",E.prototype.tabWidth))),l=Math.max(0,Math.min(h.height,mxUtils.getValue(this.state.style,"tabHeight",E.prototype.tabHeight)));mxUtils.getValue(this.state.style,"tabPosition",E.prototype.tabPosition)==mxConstants.ALIGN_RIGHT&&(r=h.width-r);return new mxPoint(h.x+r,h.y+l)},function(h,r){var l=Math.max(0,Math.min(h.width, -r.x-h.x));mxUtils.getValue(this.state.style,"tabPosition",E.prototype.tabPosition)==mxConstants.ALIGN_RIGHT&&(l=h.width-l);this.state.style.tabWidth=Math.round(l);this.state.style.tabHeight=Math.round(Math.max(0,Math.min(h.height,r.y-h.y)))},!1)]},document:function(c){return[Wa(c,["size"],function(h){var r=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",S.prototype.size))));return new mxPoint(h.x+3*h.width/4,h.y+(1-r)*h.height)},function(h,r){this.state.style.size=Math.max(0, +r.x-h.x));mxUtils.getValue(this.state.style,"tabPosition",E.prototype.tabPosition)==mxConstants.ALIGN_RIGHT&&(l=h.width-l);this.state.style.tabWidth=Math.round(l);this.state.style.tabHeight=Math.round(Math.max(0,Math.min(h.height,r.y-h.y)))},!1)]},document:function(c){return[Wa(c,["size"],function(h){var r=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",T.prototype.size))));return new mxPoint(h.x+3*h.width/4,h.y+(1-r)*h.height)},function(h,r){this.state.style.size=Math.max(0, Math.min(1,(h.y+h.height-r.y)/h.height))},!1)]},tape:function(c){return[Wa(c,["size"],function(h){var r=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",O.prototype.size))));return new mxPoint(h.getCenterX(),h.y+r*h.height/2)},function(h,r){this.state.style.size=Math.max(0,Math.min(1,(r.y-h.y)/h.height*2))},!1)]},isoCube2:function(c){return[Wa(c,["isoAngle"],function(h){var r=Math.max(.01,Math.min(94,parseFloat(mxUtils.getValue(this.state.style,"isoAngle",p.isoAngle))))*Math.PI/ 200;return new mxPoint(h.x,h.y+Math.min(h.width*Math.tan(r),.5*h.height))},function(h,r){this.state.style.isoAngle=Math.max(0,50*(r.y-h.y)/h.height)},!0)]},cylinder2:bb(x.prototype.size),cylinder3:bb(B.prototype.size),offPageConnector:function(c){return[Wa(c,["size"],function(h){var r=Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.state.style,"size",L.prototype.size))));return new mxPoint(h.getCenterX(),h.y+(1-r)*h.height)},function(h,r){this.state.style.size=Math.max(0,Math.min(1,(h.y+h.height- r.y)/h.height))},!1)]},"mxgraph.basic.rect":function(c){var h=[Graph.createHandle(c,["size"],function(r){var l=Math.max(0,Math.min(r.width/2,r.height/2,parseFloat(mxUtils.getValue(this.state.style,"size",this.size))));return new mxPoint(r.x+l,r.y+l)},function(r,l){this.state.style.size=Math.round(100*Math.max(0,Math.min(r.height/2,r.width/2,l.x-r.x)))/100})];c=Graph.createHandle(c,["indent"],function(r){var l=Math.max(0,Math.min(100,parseFloat(mxUtils.getValue(this.state.style,"indent",this.dx2)))); return new mxPoint(r.x+.75*r.width,r.y+l*r.height/200)},function(r,l){this.state.style.indent=Math.round(100*Math.max(0,Math.min(100,200*(l.y-r.y)/r.height)))/100});h.push(c);return h},step:qb(la.prototype.size,!0,null,!0,la.prototype.fixedSize),hexagon:qb(J.prototype.size,!0,.5,!0,J.prototype.fixedSize),curlyBracket:qb(ba.prototype.size,!1),display:qb(Aa.prototype.size,!1),cube:sb(1,e.prototype.size,!1),card:sb(.5,F.prototype.size,!0),loopLimit:sb(.5,G.prototype.size,!0),trapezoid:ub(.5,P.prototype.size, -P.prototype.fixedSize),parallelogram:ub(1,T.prototype.size,T.prototype.fixedSize)};Graph.createHandle=Wa;Graph.handleFactory=rb;var tb=mxVertexHandler.prototype.createCustomHandles;mxVertexHandler.prototype.createCustomHandles=function(){var c=tb.apply(this,arguments);if(this.graph.isCellRotatable(this.state.cell)){var h=this.state.style.shape;null==mxCellRenderer.defaultShapes[h]&&null==mxStencilRegistry.getStencil(h)?h=mxConstants.SHAPE_RECTANGLE:this.state.view.graph.isSwimlane(this.state.cell)&& -(h=mxConstants.SHAPE_SWIMLANE);h=rb[h];null==h&&null!=this.state.shape&&this.state.shape.isRoundable()&&(h=rb[mxConstants.SHAPE_RECTANGLE]);null!=h&&(h=h(this.state),null!=h&&(c=null==c?h:c.concat(h)))}return c};mxEdgeHandler.prototype.createCustomHandles=function(){var c=this.state.style.shape;null==mxCellRenderer.defaultShapes[c]&&null==mxStencilRegistry.getStencil(c)&&(c=mxConstants.SHAPE_CONNECTOR);c=rb[c];return null!=c?c(this.state):null}}else Graph.createHandle=function(){},Graph.handleFactory= -{};var jb=new mxPoint(1,0),kb=new mxPoint(1,0),mb=mxUtils.toRadians(-30);jb=mxUtils.getRotatedPoint(jb,Math.cos(mb),Math.sin(mb));var ob=mxUtils.toRadians(-150);kb=mxUtils.getRotatedPoint(kb,Math.cos(ob),Math.sin(ob));mxEdgeStyle.IsometricConnector=function(c,h,r,l,q){var v=c.view;l=null!=l&&0=2*l&&c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));return c};mxRectangleShape.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(1, -0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0), -new mxConnectionConstraint(new mxPoint(1,1),!0)];mxEllipse.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(1,.5))];Qa.prototype.constraints=mxRectangleShape.prototype.constraints; +P.prototype.fixedSize),parallelogram:ub(1,S.prototype.size,S.prototype.fixedSize)};Graph.createHandle=Wa;Graph.handleFactory=rb;var tb=mxVertexHandler.prototype.createCustomHandles;mxVertexHandler.prototype.createCustomHandles=function(){var c=tb.apply(this,arguments);if(this.graph.isCellRotatable(this.state.cell)){var h=this.state.style.shape;null==mxCellRenderer.defaultShapes[h]&&null==mxStencilRegistry.getStencil(h)?h=mxConstants.SHAPE_RECTANGLE:this.state.view.graph.isSwimlane(this.state.cell)&& +(h=mxConstants.SHAPE_SWIMLANE);h=rb[h];null==h&&null!=this.state.shape&&this.state.shape.isRoundable()&&(h=rb[mxConstants.SHAPE_RECTANGLE]);null!=h&&(h=h(this.state),null!=h&&(c=null==c?h:c.concat(h)))}return c};mxEdgeHandler.prototype.createCustomHandles=function(){if("LINK"===this.state.cell.getAttribute("type"))return null;var c=this.state.style.shape;null==mxCellRenderer.defaultShapes[c]&&null==mxStencilRegistry.getStencil(c)&&(c=mxConstants.SHAPE_CONNECTOR);c=rb[c];return null!=c?c(this.state): +null}}else Graph.createHandle=function(){},Graph.handleFactory={};var jb=new mxPoint(1,0),kb=new mxPoint(1,0),mb=mxUtils.toRadians(-30);jb=mxUtils.getRotatedPoint(jb,Math.cos(mb),Math.sin(mb));var ob=mxUtils.toRadians(-150);kb=mxUtils.getRotatedPoint(kb,Math.cos(ob),Math.sin(ob));mxEdgeStyle.IsometricConnector=function(c,h,r,l,q){var v=c.view;l=null!=l&&0=2*l&&c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));return c};mxRectangleShape.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75, +0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75, +1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0)];mxEllipse.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(1,.5))];Qa.prototype.constraints=mxRectangleShape.prototype.constraints; mxImageShape.prototype.constraints=mxRectangleShape.prototype.constraints;mxSwimlane.prototype.constraints=mxRectangleShape.prototype.constraints;W.prototype.constraints=mxRectangleShape.prototype.constraints;mxLabel.prototype.constraints=mxRectangleShape.prototype.constraints;t.prototype.getConstraints=function(c,h,r){c=[];var l=Math.max(0,Math.min(h,Math.min(r,parseFloat(mxUtils.getValue(this.style,"size",this.size)))));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0, 0),!1,null,.5*(h-l),0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,h-l,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,h-.5*l,.5*l));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,h,l));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,h,.5*(r+l)));c.push(new mxConnectionConstraint(new mxPoint(1,1),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0, .5),!1));h>=2*l&&c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));return c};F.prototype.getConstraints=function(c,h,r){c=[];var l=Math.max(0,Math.min(h,Math.min(r,parseFloat(mxUtils.getValue(this.style,"size",this.size)))));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(h+l),0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*l,.5*l));c.push(new mxConnectionConstraint(new mxPoint(0, @@ -3406,7 +3406,7 @@ Z.prototype.constraints=mxEllipse.prototype.constraints;Ra.prototype.constraints 0),!1),new mxConnectionConstraint(new mxPoint(.5,1),!1)];mxDoubleEllipse.prototype.constraints=mxEllipse.prototype.constraints;mxRhombus.prototype.constraints=mxEllipse.prototype.constraints;mxTriangle.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(1, .5),!0)];mxHexagon.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.375,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.625,0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(.375, 1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.625,1),!0)];mxCloud.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,.25),!1),new mxConnectionConstraint(new mxPoint(.4,.1),!1),new mxConnectionConstraint(new mxPoint(.16,.55),!1),new mxConnectionConstraint(new mxPoint(.07,.4),!1),new mxConnectionConstraint(new mxPoint(.31,.8),!1),new mxConnectionConstraint(new mxPoint(.13,.77),!1),new mxConnectionConstraint(new mxPoint(.8,.8),!1),new mxConnectionConstraint(new mxPoint(.55, -.95),!1),new mxConnectionConstraint(new mxPoint(.875,.5),!1),new mxConnectionConstraint(new mxPoint(.96,.7),!1),new mxConnectionConstraint(new mxPoint(.625,.2),!1),new mxConnectionConstraint(new mxPoint(.88,.25),!1)];T.prototype.constraints=mxRectangleShape.prototype.constraints;P.prototype.constraints=mxRectangleShape.prototype.constraints;S.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75, +.95),!1),new mxConnectionConstraint(new mxPoint(.875,.5),!1),new mxConnectionConstraint(new mxPoint(.96,.7),!1),new mxConnectionConstraint(new mxPoint(.625,.2),!1),new mxConnectionConstraint(new mxPoint(.88,.25),!1)];S.prototype.constraints=mxRectangleShape.prototype.constraints;P.prototype.constraints=mxRectangleShape.prototype.constraints;T.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75, 0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0)];mxArrow.prototype.constraints=null;eb.prototype.getConstraints=function(c,h,r){c=[];var l=Math.max(0,Math.min(h,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),q=Math.max(0,Math.min(r,parseFloat(mxUtils.getValue(this.style, "dy",this.dy))));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,h,.5*q));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,h,q));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.75*h+.25*l,q));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(h+l),q));c.push(new mxConnectionConstraint(new mxPoint(0, 0),!1,null,.5*(h+l),.5*(r+q)));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(h+l),r));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(h-l),r));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(h-l),.5*(r+q)));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(h-l),q));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*h-.25*l,q));c.push(new mxConnectionConstraint(new mxPoint(0, @@ -3430,8 +3430,8 @@ this.addAction("open...",function(){window.openNew=!0;window.openKey="open";e.op 620,420,!0,!1);k.init()});this.addAction("pageSetup...",function(){e.showDialog((new PageSetupDialog(e)).container,320,240,!0,!0)}).isEnabled=m;this.addAction("print...",function(){e.showDialog((new PrintDialog(e)).container,300,180,!0,!0)},null,"sprite-print",Editor.ctrlKey+"+P");this.addAction("preview",function(){mxUtils.show(d,null,10,10)});this.addAction("undo",function(){e.undo()},null,"sprite-undo",Editor.ctrlKey+"+Z");this.addAction("redo",function(){e.redo()},null,"sprite-redo",mxClient.IS_WIN? Editor.ctrlKey+"+Y":Editor.ctrlKey+"+Shift+Z");this.addAction("cut",function(){var k=null;try{k=e.copyXml(),null!=k&&d.removeCells(k,!1)}catch(p){}null==k&&mxClipboard.cut(d)},null,"sprite-cut",Editor.ctrlKey+"+X");this.addAction("copy",function(){try{e.copyXml()}catch(k){}try{mxClipboard.copy(d)}catch(k){e.handleError(k)}},null,"sprite-copy",Editor.ctrlKey+"+C");this.addAction("paste",function(){if(d.isEnabled()&&!d.isCellLocked(d.getDefaultParent())){var k=!1;try{Editor.enableNativeCipboard&&(e.readGraphModelFromClipboard(function(p){if(null!= p){d.getModel().beginUpdate();try{e.pasteXml(p,!0)}finally{d.getModel().endUpdate()}}else mxClipboard.paste(d)}),k=!0)}catch(p){}k||mxClipboard.paste(d)}},!1,"sprite-paste",Editor.ctrlKey+"+V");this.addAction("pasteHere",function(k){function p(B){if(null!=B){for(var C=0;C/g," ").replace(/ /g," "):T,P}}).filter(function(S){return void 0!==S})}var p=d.getSelectionCell()||d.getModel().getRoot();if(p&&p.value){var x=p.getAttribute("type");if(!("WIDGET"===x&&"LINK_LEGEND"===p.getAttribute("widgetType")||"LINK"===x&&"SIMPLE"===p.getAttribute("linkType"))&&["LINK","MEDIA","RESOURCE","WIDGET","CONTAINER"].includes(x)){x="type resourceType resourceId displayLabel displayImage displayParentName useResourceName label resourceName modelId viewId parentName parentType parentId displayWeatherStatusBackgroundColor useBackgroundStatusColor".split(" "); +p.length&&d.setSelectionCells(p)}},null,null,Editor.ctrlKey+"+Shift+U");this.addAction("removeFromGroup",function(){if(d.isEnabled()){var k=d.getSelectionCells();if(null!=k){for(var p=[],x=0;x/g," ").replace(/ /g," "):S,P}}).filter(function(T){return void 0!==T})}var p=d.getSelectionCell()||d.getModel().getRoot();if(p&&p.value){var x=p.getAttribute("type");if(!("WIDGET"===x&&"LINK_LEGEND"===p.getAttribute("widgetType")||"LINK"===x&&"SIMPLE"===p.getAttribute("linkType"))&&["LINK","MEDIA","RESOURCE","WIDGET","CONTAINER"].includes(x)){x="type resourceType resourceId displayLabel displayImage displayParentName useResourceName label resourceName modelId viewId parentName parentType parentId displayWeatherStatusBackgroundColor useBackgroundStatusColor".split(" "); var B="type linkType parentName parentType parentId resourceType resourceId resourceName modelId metric1Min metric1Max metric2Min metric2Max metricName1 metricName2 displayPercent".split(" "),C="type mediaType newTab elementUrl imageName centreonImageId label".split(" "),E="type widgetType resourceType useFontStatusColor useBackgroundStatusColor applyStatusColor resourceId pieChartInnerRadius useFontStatusColor pieChartDisplayLabel pieChartExplosion outputWidgetFormat chartDisplayThreshold chartFillLines chartNbPoints chartPeriod chartShowGrid chartStack displayLegend hiddenLine metric1Max metric1Min metricName1 metric2Max metric2Min metricName2 metricsColorStart metricsColorEnd parentName parentType parentId displayPercent resourceName orientation useResourceName displayLabel displayParentName label".split(" "), I="type modelId viewId imageName centreonImageId label displayLabel displayImage displayWeatherStatusBackgroundColor useBackgroundStatusColor".split(" "),F=[];void 0!==p.getAttribute("resourceType")&&(F=k(x));void 0!==p.getAttribute("linkType")&&(F=k(B));void 0!==p.getAttribute("mediaType")&&(F=k(C));void 0!==p.getAttribute("widgetType")&&(F=k(E));"CONTAINER"===p.getAttribute("type")&&(F=k(I));parent.postMessage(JSON.stringify({mxObject:F,mxStyle:p.getStyle(),event:"setShowWizardShapeProperties"}), "*")}}},null,null,Editor.ctrlKey+"+E");this.addAction("editCentreonStyle",function(){var k=d.getSelectionCells()||d.getModel().getRoot();if(k){var p=["RESOURCE","CONTAINER"];k=k.filter(function(x){x=x.getAttribute("type");return p.includes(x)});1>k.length||(1===k.length?(k=d.getCellStyle(k[0]).style,parent.postMessage(JSON.stringify({mxObject:[{type:"RESOURCE_AND_CONTAINER"}],mxStyle:k||"ICON",event:"setCentreonStyle"}),"*")):parent.postMessage(JSON.stringify({mxObject:[{type:"RESOURCE_AND_CONTAINER"}], @@ -3487,9 +3487,9 @@ p="1";null!=k&&null!=d.getFoldingImage(k)&&(p="0");d.setCellStyles("collapsible" if(p instanceof mxEdgeHandler){var x=d.view.translate,B=d.view.scale,C=x.x;x=x.y;k=d.getModel().getParent(k);for(var E=d.getCellGeometry(k);d.getModel().isVertex(k)&&null!=E;)C+=E.x,x+=E.y,k=d.getModel().getParent(k),E=d.getCellGeometry(k);C=Math.round(d.snap(d.popupMenuHandler.triggerX/B-C));B=Math.round(d.snap(d.popupMenuHandler.triggerY/B-x));p.addPointAt(p.state,C,B)}}});this.addAction("removeWaypoint",function(){var k=e.actions.get("removeWaypoint");null!=k.handler&&k.handler.removePoint(k.handler.state, k.index)});this.addAction("clearWaypoints",function(k,p){k=null!=p?p:k;var x=d.getSelectionCells();if(null!=x){x=d.getEditableCells(d.addAllEdges(x));d.getModel().beginUpdate();try{for(var B=0;B"];for(var T=0;T");for(var P=0;P
");O.push("")}O.push("");E=O.join("");S.call(F,E);E=F.cellEditor.textarea.getElementsByTagName("table");if(E.length==C.length+1)for(S=E.length-1;0<=S;S--)if(0==S||E[S]!=C[S-1]){F.selectNode(E[S].rows[0].cells[0]);break}}});var d=this.editorUi.editor.graph,m=null,n=null;null==f&&(a.div.className+=" geToolbarMenu", +Menus.prototype.addInsertTableItem=function(a,b,f,e){function g(C){n=d.getParentByName(mxEvent.getSource(C),"TD");var E=!1;if(null!=n){m=d.getParentByName(n,"TR");var I=mxEvent.isMouseEvent(C)?2:4,F=x,O=Math.min(20,m.sectionRowIndex+I);I=Math.min(20,n.cellIndex+I);for(var T=F.rows.length;T"];for(var S=0;S");for(var P=0;P
");O.push("")}O.push("");E=O.join("");T.call(F,E);E=F.cellEditor.textarea.getElementsByTagName("table");if(E.length==C.length+1)for(T=E.length-1;0<=T;T--)if(0==T||E[T]!=C[T-1]){F.selectNode(E[T].rows[0].cells[0]);break}}});var d=this.editorUi.editor.graph,m=null,n=null;null==f&&(a.div.className+=" geToolbarMenu", a.labels=!1);a=a.addItem("",null,null,f,null,null,null,!0);a.firstChild.style.fontSize=Menus.prototype.defaultFontSize+"px";f=a.getElementsByTagName("td");1d.div.clientHeight&&(d.div.style.width="40px");d.hideMenu=mxUtils.bind(this,function(){mxPopupMenu.prototype.hideMenu.apply(d,arguments);this.editorUi.resetCurrentMenu(); d.destroy()});var t=mxUtils.getOffset(a);d.popup(t.x,t.y+a.offsetHeight,null,n);this.editorUi.setCurrentMenu(d,a)}m=!0;mxEvent.consume(n)}));mxEvent.addListener(a,mxClient.IS_POINTER?"pointerdown":"mousedown",mxUtils.bind(this,function(n){m=null==d||null==d.div||null==d.div.parentNode;n.preventDefault()}))}};Toolbar.prototype.destroy=function(){null!=this.gestureHandler&&(mxEvent.removeGestureListeners(document,this.gestureHandler),this.gestureHandler=null)};var OpenDialog=function(){var a=document.createElement("iframe");a.style.backgroundColor="transparent";a.allowTransparency="true";a.style.borderStyle="none";a.style.borderWidth="0px";a.style.overflow="hidden";a.style.maxWidth="100%";a.frameBorder="0";a.setAttribute("width",(Editor.useLocalStorage?640:320)+"px");a.setAttribute("height",(Editor.useLocalStorage?480:220)+"px");a.setAttribute("src",OPEN_FORM);this.container=a},ColorDialog=function(a,b,f,e){function g(){var I=m.value;/(^#?[a-zA-Z0-9]*$)/.test(I)? ("none"!=I&&"#"!=I.charAt(0)&&(I="#"+I),ColorDialog.addRecentColor("none"!=I?I.substring(1):I,12),n(I),a.hideDialog()):a.handleError({message:mxResources.get("invalidInput")})}function d(){var I=p(0==ColorDialog.recentColors.length?["FFFFFF"]:ColorDialog.recentColors,11,"FFFFFF",!0);I.style.marginBottom="8px";return I}this.editorUi=a;var m=document.createElement("input");m.style.marginBottom="10px";mxClient.IS_IE&&(m.style.marginTop="10px",document.body.appendChild(m));var n=null!=f?f:this.createApplyFunction(); -this.init=function(){mxClient.IS_TOUCH||m.focus()};var t=new mxJSColor.color(m);t.pickerOnfocus=!1;t.showPicker();f=document.createElement("div");mxJSColor.picker.box.style.position="relative";mxJSColor.picker.box.style.width="230px";mxJSColor.picker.box.style.height="100px";mxJSColor.picker.box.style.paddingBottom="10px";f.appendChild(mxJSColor.picker.box);var k=document.createElement("center"),p=mxUtils.bind(this,function(I,F,O,S){F=null!=F?F:12;var T=document.createElement("table");T.style.borderCollapse= -"collapse";T.setAttribute("cellspacing","0");T.style.marginBottom="20px";T.style.cellSpacing="0px";T.style.marginLeft="1px";var P=document.createElement("tbody");T.appendChild(P);for(var ba=I.length/F,U=0;UMAX_AREA||0>=C.value?"red":"";E.style.backgroundColor=C.value*E.value>MAX_AREA||0>=E.value?"red":""}var e=a.editor.graph,g=e.getGraphBounds(),d=e.view.scale,m=Math.ceil(g.width/ +var ExportDialog=function(a){function b(){var R=p.value,X=R.lastIndexOf(".");p.value=0MAX_AREA||0>=C.value?"red":"";E.style.backgroundColor=C.value*E.value>MAX_AREA||0>=E.value?"red":""}var e=a.editor.graph,g=e.getGraphBounds(),d=e.view.scale,m=Math.ceil(g.width/ d),n=Math.ceil(g.height/d);d=document.createElement("table");var t=document.createElement("tbody");d.setAttribute("cellpadding",mxClient.IS_SF?"0":"2");g=document.createElement("tr");var k=document.createElement("td");k.style.fontSize="10pt";k.style.width="100px";mxUtils.write(k,mxResources.get("filename")+":");g.appendChild(k);var p=document.createElement("input");p.setAttribute("value",a.editor.getOrCreateFilename());p.style.width="180px";k=document.createElement("td");k.appendChild(p);g.appendChild(k); t.appendChild(g);g=document.createElement("tr");k=document.createElement("td");k.style.fontSize="10pt";mxUtils.write(k,mxResources.get("format")+":");g.appendChild(k);var x=document.createElement("select");x.style.width="180px";k=document.createElement("option");k.setAttribute("value","png");mxUtils.write(k,mxResources.get("formatPng"));x.appendChild(k);k=document.createElement("option");ExportDialog.showGifOption&&(k.setAttribute("value","gif"),mxUtils.write(k,mxResources.get("formatGif")),x.appendChild(k)); k=document.createElement("option");k.setAttribute("value","jpg");mxUtils.write(k,mxResources.get("formatJpg"));x.appendChild(k);a.printPdfExport||(k=document.createElement("option"),k.setAttribute("value","pdf"),mxUtils.write(k,mxResources.get("formatPdf")),x.appendChild(k));k=document.createElement("option");k.setAttribute("value","svg");mxUtils.write(k,mxResources.get("formatSvg"));x.appendChild(k);ExportDialog.showXmlOption&&(k=document.createElement("option"),k.setAttribute("value","xml"),mxUtils.write(k, @@ -3648,25 +3648,25 @@ k=document.createElement("td");k.style.fontSize="10pt";mxUtils.write(k,mxResourc "180px";k=document.createElement("td");k.appendChild(E);g.appendChild(k);t.appendChild(g);g=document.createElement("tr");k=document.createElement("td");k.style.fontSize="10pt";mxUtils.write(k,mxResources.get("dpi")+":");g.appendChild(k);var I=document.createElement("select");I.style.width="180px";k=document.createElement("option");k.setAttribute("value","100");mxUtils.write(k,"100dpi");I.appendChild(k);k=document.createElement("option");k.setAttribute("value","200");mxUtils.write(k,"200dpi");I.appendChild(k); k=document.createElement("option");k.setAttribute("value","300");mxUtils.write(k,"300dpi");I.appendChild(k);k=document.createElement("option");k.setAttribute("value","400");mxUtils.write(k,"400dpi");I.appendChild(k);k=document.createElement("option");k.setAttribute("value","custom");mxUtils.write(k,mxResources.get("custom"));I.appendChild(k);var F=document.createElement("input");F.style.width="180px";F.style.display="none";F.setAttribute("value","100");F.setAttribute("type","number");F.setAttribute("min", "50");F.setAttribute("step","50");var O=!1;mxEvent.addListener(I,"change",function(){"custom"==this.value?(this.style.display="none",F.style.display="",F.focus()):(F.value=this.value,O||(B.value=this.value))});mxEvent.addListener(F,"change",function(){var R=parseInt(F.value);isNaN(R)||0>=R?F.style.backgroundColor="red":(F.style.backgroundColor="",O||(B.value=R))});k=document.createElement("td");k.appendChild(I);k.appendChild(F);g.appendChild(k);t.appendChild(g);g=document.createElement("tr");k=document.createElement("td"); -k.style.fontSize="10pt";mxUtils.write(k,mxResources.get("background")+":");g.appendChild(k);var S=document.createElement("input");S.setAttribute("type","checkbox");S.checked=null==e.background||e.background==mxConstants.NONE;k=document.createElement("td");k.appendChild(S);mxUtils.write(k,mxResources.get("transparent"));g.appendChild(k);t.appendChild(g);g=document.createElement("tr");k=document.createElement("td");k.style.fontSize="10pt";mxUtils.write(k,mxResources.get("grid")+":");g.appendChild(k); -var T=document.createElement("input");T.setAttribute("type","checkbox");T.checked=!1;k=document.createElement("td");k.appendChild(T);g.appendChild(k);t.appendChild(g);g=document.createElement("tr");k=document.createElement("td");k.style.fontSize="10pt";mxUtils.write(k,mxResources.get("borderWidth")+":");g.appendChild(k);var P=document.createElement("input");P.setAttribute("type","number");P.setAttribute("value",ExportDialog.lastBorderValue);P.style.width="180px";k=document.createElement("td");k.appendChild(P); +k.style.fontSize="10pt";mxUtils.write(k,mxResources.get("background")+":");g.appendChild(k);var T=document.createElement("input");T.setAttribute("type","checkbox");T.checked=null==e.background||e.background==mxConstants.NONE;k=document.createElement("td");k.appendChild(T);mxUtils.write(k,mxResources.get("transparent"));g.appendChild(k);t.appendChild(g);g=document.createElement("tr");k=document.createElement("td");k.style.fontSize="10pt";mxUtils.write(k,mxResources.get("grid")+":");g.appendChild(k); +var S=document.createElement("input");S.setAttribute("type","checkbox");S.checked=!1;k=document.createElement("td");k.appendChild(S);g.appendChild(k);t.appendChild(g);g=document.createElement("tr");k=document.createElement("td");k.style.fontSize="10pt";mxUtils.write(k,mxResources.get("borderWidth")+":");g.appendChild(k);var P=document.createElement("input");P.setAttribute("type","number");P.setAttribute("value",ExportDialog.lastBorderValue);P.style.width="180px";k=document.createElement("td");k.appendChild(P); g.appendChild(k);t.appendChild(g);d.appendChild(t);mxEvent.addListener(x,"change",b);b();mxEvent.addListener(B,"change",function(){O=!0;var R=Math.max(0,parseFloat(B.value)||100)/100;B.value=parseFloat((100*R).toFixed(2));0=parseInt(B.value))mxUtils.alert(mxResources.get("drawingEmpty"));else{var R=p.value,X=x.value,Y=Math.max(0,parseFloat(B.value)||100)/ -100,da=Math.max(0,parseInt(P.value)),la=e.background,J=Math.max(1,parseInt(F.value));if(("svg"==X||"png"==X||"pdf"==X)&&S.checked)la=null;else if(null==la||la==mxConstants.NONE)la="#ffffff";ExportDialog.lastBorderValue=da;ExportDialog.exportFile(a,R,X,la,Y,da,J,T.checked)}}));ba.className="geBtn gePrimaryBtn";var U=mxUtils.button(mxResources.get("cancel"),function(){a.hideDialog()});U.className="geBtn";a.editor.cancelFirst?(k.appendChild(U),k.appendChild(ba)):(k.appendChild(ba),k.appendChild(U)); +100,da=Math.max(0,parseInt(P.value)),la=e.background,J=Math.max(1,parseInt(F.value));if(("svg"==X||"png"==X||"pdf"==X)&&T.checked)la=null;else if(null==la||la==mxConstants.NONE)la="#ffffff";ExportDialog.lastBorderValue=da;ExportDialog.exportFile(a,R,X,la,Y,da,J,S.checked)}}));ba.className="geBtn gePrimaryBtn";var U=mxUtils.button(mxResources.get("cancel"),function(){a.hideDialog()});U.className="geBtn";a.editor.cancelFirst?(k.appendChild(U),k.appendChild(ba)):(k.appendChild(ba),k.appendChild(U)); g.appendChild(k);t.appendChild(g);d.appendChild(t);this.container=d};ExportDialog.lastBorderValue=0;ExportDialog.showGifOption=!0;ExportDialog.showXmlOption=!0; ExportDialog.exportFile=function(a,b,f,e,g,d,m,n){n=a.editor.graph;if("xml"==f)ExportDialog.saveLocalFile(a,mxUtils.getXml(a.editor.getGraphXml()),b,f);else if("svg"==f)ExportDialog.saveLocalFile(a,mxUtils.getXml(n.getSvg(e,g,d)),b,f);else{var t=n.getGraphBounds(),k=mxUtils.createXmlDocument(),p=k.createElement("output");k.appendChild(p);k=new mxXmlCanvas2D(p);k.translate(Math.floor((d/g-t.x)/n.view.scale),Math.floor((d/g-t.y)/n.view.scale));k.scale(g/n.view.scale);(new mxImageExport).drawState(n.getView().getState(n.model.root), k);p="xml="+encodeURIComponent(mxUtils.getXml(p));k=Math.ceil(t.width*g/n.view.scale+2*d);g=Math.ceil(t.height*g/n.view.scale+2*d);p.length<=MAX_REQUEST_SIZE&&k*gR.name?1:0});if(null!=E){p=document.createElement("div");p.style.width= -"100%";p.style.fontSize="11px";p.style.textAlign="center";mxUtils.write(p,E);var S=k.addField(mxResources.get("id")+":",p);mxEvent.addListener(p,"dblclick",function(U){mxEvent.isShiftDown(U)&&(U=new FilenameDialog(a,E,mxResources.get("apply"),mxUtils.bind(this,function(R){null!=R&&0U.indexOf(":"))try{var R= -mxUtils.indexOf(x,U);if(0<=R&&null!=B[R])B[R].focus();else{d.cloneNode(!1).setAttribute(U,"");0<=R&&(x.splice(R,1),B.splice(R,1));x.push(U);var X=k.addTextarea(U+":","",2);X.style.width="100%";B.push(X);I(X,U);X.focus()}P.setAttribute("disabled","disabled");T.value=""}catch(Y){mxUtils.alert(Y)}else mxUtils.alert(mxResources.get("invalidName"))});mxEvent.addListener(T,"keypress",function(U){13==U.keyCode&&P.click()});this.init=function(){0U.indexOf(":"))try{var R= +mxUtils.indexOf(x,U);if(0<=R&&null!=B[R])B[R].focus();else{d.cloneNode(!1).setAttribute(U,"");0<=R&&(x.splice(R,1),B.splice(R,1));x.push(U);var X=k.addTextarea(U+":","",2);X.style.width="100%";B.push(X);I(X,U);X.focus()}P.setAttribute("disabled","disabled");S.value=""}catch(Y){mxUtils.alert(Y)}else mxUtils.alert(mxResources.get("invalidName"))});mxEvent.addListener(S,"keypress",function(U){13==U.keyCode&&P.click()});this.init=function(){0=2*n&&c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));return c};mxRectangleShape.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75, -0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75, -1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0)];mxEllipse.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(1,.5))];La.prototype.constraints=mxRectangleShape.prototype.constraints; -mxImageShape.prototype.constraints=mxRectangleShape.prototype.constraints;mxSwimlane.prototype.constraints=mxRectangleShape.prototype.constraints;V.prototype.constraints=mxRectangleShape.prototype.constraints;mxLabel.prototype.constraints=mxRectangleShape.prototype.constraints;T.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0,Math.min(l,Math.min(v,parseFloat(mxUtils.getValue(this.style,"size",this.size)))));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,.5*(l-n),0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-.5*n,.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.5*(v+n)));c.push(new mxConnectionConstraint(new mxPoint(1,1),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0, -.5),!1));l>=2*n&&c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));return c};t.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0,Math.min(l,Math.min(v,parseFloat(mxUtils.getValue(this.style,"size",this.size)))));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*n,.5*n));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,0,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*(v+n)));c.push(new mxConnectionConstraint(new mxPoint(0,1),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(1,1),!1));c.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));l>=2*n&&c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));return c};m.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0,Math.min(l,Math.min(v,parseFloat(mxUtils.getValue(this.style, -"size",this.size)))));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-n),0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-.5*n,.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.5*(v+n)));c.push(new mxConnectionConstraint(new mxPoint(1,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,.5*(l+n),v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*n,v-.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,v-n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*(v-n)));return c};d.prototype.getConstraints=function(c,l,v){c=[];l=Math.max(0,Math.min(v,parseFloat(mxUtils.getValue(this.style,"size",this.size))));c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0, -.5),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,l));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,l));c.push(new mxConnectionConstraint(new mxPoint(1,1),!1,null,0,-l));c.push(new mxConnectionConstraint(new mxPoint(0,1),!1,null,0,-l));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,l+.5*(.5*v-l)));c.push(new mxConnectionConstraint(new mxPoint(1, -0),!1,null,0,l+.5*(.5*v-l)));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,v-l-.5*(.5*v-l)));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,v-l-.5*(.5*v-l)));c.push(new mxConnectionConstraint(new mxPoint(.145,0),!1,null,0,.29*l));c.push(new mxConnectionConstraint(new mxPoint(.855,0),!1,null,0,.29*l));c.push(new mxConnectionConstraint(new mxPoint(.855,1),!1,null,0,.29*-l));c.push(new mxConnectionConstraint(new mxPoint(.145,1),!1,null,0,.29*-l));return c};g.prototype.getConstraints= -function(c,l,v){c=[];var n=Math.max(0,Math.min(l,parseFloat(mxUtils.getValue(this.style,"tabWidth",this.tabWidth)))),u=Math.max(0,Math.min(v,parseFloat(mxUtils.getValue(this.style,"tabHeight",this.tabHeight))));"left"==mxUtils.getValue(this.style,"tabPosition",this.tabPosition)?(c.push(new mxConnectionConstraint(new mxPoint(0,0),!1)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*n,0)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,0)),c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,n,u)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),u))):(c.push(new mxConnectionConstraint(new mxPoint(1,0),!1)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-.5*n,0)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,0)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,u)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-n),u)));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,u));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,l,.25*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.5*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.75*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.25*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,0,.75*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,v));c.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));return c};Na.prototype.constraints=mxRectangleShape.prototype.constraints;G.prototype.constraints=mxRectangleShape.prototype.constraints;ka.prototype.constraints=mxEllipse.prototype.constraints;ta.prototype.constraints=mxEllipse.prototype.constraints; -pa.prototype.constraints=mxEllipse.prototype.constraints;Ua.prototype.constraints=mxEllipse.prototype.constraints;Pa.prototype.constraints=mxRectangleShape.prototype.constraints;Sa.prototype.constraints=mxRectangleShape.prototype.constraints;Ha.prototype.getConstraints=function(c,l,v){c=[];var n=Math.min(l,v/2),u=Math.min(l-n,Math.max(0,parseFloat(mxUtils.getValue(this.style,"size",this.size)))*l);c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,u,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(u+l-n),0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,0));c.push(new mxConnectionConstraint(new mxPoint(1,.5),!1,null));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(u+l-n),v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,v));return c};xa.prototype.getConstraints=function(c,l,v){l=parseFloat(mxUtils.getValue(c, -"jettyWidth",xa.prototype.jettyWidth))/2;c=parseFloat(mxUtils.getValue(c,"jettyHeight",xa.prototype.jettyHeight));var n=[new mxConnectionConstraint(new mxPoint(0,0),!1,null,l),new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1, -.75),!0),new mxConnectionConstraint(new mxPoint(0,1),!1,null,l),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0),new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,Math.min(v-.5*c,1.5*c)),new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,Math.min(v-.5*c,3.5*c))];v>5*c&&n.push(new mxConnectionConstraint(new mxPoint(0,.75),!1,null,l));v>8*c&&n.push(new mxConnectionConstraint(new mxPoint(0, -.5),!1,null,l));v>15*c&&n.push(new mxConnectionConstraint(new mxPoint(0,.25),!1,null,l));return n};aa.prototype.constraints=mxRectangleShape.prototype.constraints;fa.prototype.constraints=mxRectangleShape.prototype.constraints;mxCylinder.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.15,.05),!1),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.85,.05),!1),new mxConnectionConstraint(new mxPoint(0,.3),!0),new mxConnectionConstraint(new mxPoint(0, -.5),!0),new mxConnectionConstraint(new mxPoint(0,.7),!0),new mxConnectionConstraint(new mxPoint(1,.3),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.7),!0),new mxConnectionConstraint(new mxPoint(.15,.95),!1),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.85,.95),!1)];Z.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,.1),!1),new mxConnectionConstraint(new mxPoint(.5,0),!1),new mxConnectionConstraint(new mxPoint(.75, -.1),!1),new mxConnectionConstraint(new mxPoint(0,1/3),!1),new mxConnectionConstraint(new mxPoint(0,1),!1),new mxConnectionConstraint(new mxPoint(1,1/3),!1),new mxConnectionConstraint(new mxPoint(1,1),!1),new mxConnectionConstraint(new mxPoint(.5,.5),!1)];qa.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(0,.3),!0),new mxConnectionConstraint(new mxPoint(0, -.7),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0)];mxActor.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.25,.2),!1),new mxConnectionConstraint(new mxPoint(.1,.5),!1),new mxConnectionConstraint(new mxPoint(0, -.75),!0),new mxConnectionConstraint(new mxPoint(.75,.25),!1),new mxConnectionConstraint(new mxPoint(.9,.5),!1),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0)];f.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!1),new mxConnectionConstraint(new mxPoint(.5,.25),!1),new mxConnectionConstraint(new mxPoint(1,0),!1),new mxConnectionConstraint(new mxPoint(.25, -.5),!1),new mxConnectionConstraint(new mxPoint(.75,.5),!1),new mxConnectionConstraint(new mxPoint(0,1),!1),new mxConnectionConstraint(new mxPoint(.5,.75),!1),new mxConnectionConstraint(new mxPoint(1,1),!1)];C.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.35),!1),new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(0,.65),!1),new mxConnectionConstraint(new mxPoint(1,.35),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(1, -.65),!1),new mxConnectionConstraint(new mxPoint(.25,1),!1),new mxConnectionConstraint(new mxPoint(.75,0),!1)];ra.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0, -.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0)];mxLine.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.75,.5),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1)];ba.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.5, -0),!1),new mxConnectionConstraint(new mxPoint(.5,1),!1)];mxDoubleEllipse.prototype.constraints=mxEllipse.prototype.constraints;mxRhombus.prototype.constraints=mxEllipse.prototype.constraints;mxTriangle.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(1, -.5),!0)];mxHexagon.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.375,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.625,0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(.375, -1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.625,1),!0)];mxCloud.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,.25),!1),new mxConnectionConstraint(new mxPoint(.4,.1),!1),new mxConnectionConstraint(new mxPoint(.16,.55),!1),new mxConnectionConstraint(new mxPoint(.07,.4),!1),new mxConnectionConstraint(new mxPoint(.31,.8),!1),new mxConnectionConstraint(new mxPoint(.13,.77),!1),new mxConnectionConstraint(new mxPoint(.8,.8),!1),new mxConnectionConstraint(new mxPoint(.55, -.95),!1),new mxConnectionConstraint(new mxPoint(.875,.5),!1),new mxConnectionConstraint(new mxPoint(.96,.7),!1),new mxConnectionConstraint(new mxPoint(.625,.2),!1),new mxConnectionConstraint(new mxPoint(.88,.25),!1)];P.prototype.constraints=mxRectangleShape.prototype.constraints;M.prototype.constraints=mxRectangleShape.prototype.constraints;I.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75, -0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0)];mxArrow.prototype.constraints=null;db.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0,Math.min(l,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),u=Math.max(0,Math.min(v,parseFloat(mxUtils.getValue(this.style, -"dy",this.dy))));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.5*u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.75*l+.25*n,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),u));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,.5*(l+n),.5*(v+u)));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),v));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-n),v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-n),.5*(v+u)));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-n),u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*l-.25*n,u));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,0,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*u));return c};Ka.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0,Math.min(l,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),u=Math.max(0,Math.min(v,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,l,.5*u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,.5*(v+u)));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*n,v));c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0, -1),!1));return c};ya.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!1),new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(0,1),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.5,.5),!1),new mxConnectionConstraint(new mxPoint(.75,.5),!1),new mxConnectionConstraint(new mxPoint(1,0),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(1,1),!1)];$a.prototype.getConstraints= -function(c,l,v){c=[];var n=v*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowWidth",this.arrowWidth)))),u=l*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowSize",this.arrowSize))));n=(v-n)/2;c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-u),n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-u,0));c.push(new mxConnectionConstraint(new mxPoint(1, -.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-u,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-u),v-n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,v-n));return c};x.prototype.getConstraints=function(c,l,v){c=[];var n=v*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowWidth",$a.prototype.arrowWidth)))),u=l*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowSize",$a.prototype.arrowSize))));n=(v-n)/2;c.push(new mxConnectionConstraint(new mxPoint(0, -.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*l,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-u,0));c.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-u,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*l,v-n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,v));return c};Da.prototype.getConstraints= -function(c,l,v){c=[];var n=Math.min(v,l),u=Math.max(0,Math.min(n,n*parseFloat(mxUtils.getValue(this.style,"size",this.size))));n=(v-u)/2;var z=n+u,A=(l-u)/2;u=A+u;c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,A,.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,A,0));c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,.5*n));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,u,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,A,v-.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,A,v));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,v-.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+u),n));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,l,n));c.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+u),z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,A,z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*A,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,n));c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,0,z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*A,z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,A,n));return c};ca.prototype.constraints=null;L.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.25),!1),new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(0,.75),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(.7,.1),!1),new mxConnectionConstraint(new mxPoint(.7, -.9),!1)];W.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.175,.25),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.175,.75),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(.7,.1),!1),new mxConnectionConstraint(new mxPoint(.7,.9),!1)];oa.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1)];sa.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0, -.5),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1)]})();function Actions(b){this.editorUi=b;this.actions={};this.init()} +null==mxStencilRegistry.getStencil(l)?l=mxConstants.SHAPE_RECTANGLE:this.state.view.graph.isSwimlane(this.state.cell)&&(l=mxConstants.SHAPE_SWIMLANE);l=ub[l];null==l&&null!=this.state.shape&&this.state.shape.isRoundable()&&(l=ub[mxConstants.SHAPE_RECTANGLE]);null!=l&&(l=l(this.state),null!=l&&(c=null==c?l:c.concat(l)))}return c};mxEdgeHandler.prototype.createCustomHandles=function(){if("LINK"===this.state.cell.getAttribute("type"))return null;var c=this.state.style.shape;null==mxCellRenderer.defaultShapes[c]&& +null==mxStencilRegistry.getStencil(c)&&(c=mxConstants.SHAPE_CONNECTOR);c=ub[c];return null!=c?c(this.state):null}}else Graph.createHandle=function(){},Graph.handleFactory={};var xb=new mxPoint(1,0),zb=new mxPoint(1,0),qb=mxUtils.toRadians(-30);xb=mxUtils.getRotatedPoint(xb,Math.cos(qb),Math.sin(qb));var yb=mxUtils.toRadians(-150);zb=mxUtils.getRotatedPoint(zb,Math.cos(yb),Math.sin(yb));mxEdgeStyle.IsometricConnector=function(c,l,v,n,u){var z=c.view;n=null!=n&&0=2*n&&c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));return c};mxRectangleShape.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(.25, +0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(.25, +1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0)];mxEllipse.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(0, +.5),!0),new mxConnectionConstraint(new mxPoint(1,.5))];La.prototype.constraints=mxRectangleShape.prototype.constraints;mxImageShape.prototype.constraints=mxRectangleShape.prototype.constraints;mxSwimlane.prototype.constraints=mxRectangleShape.prototype.constraints;V.prototype.constraints=mxRectangleShape.prototype.constraints;mxLabel.prototype.constraints=mxRectangleShape.prototype.constraints;T.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0,Math.min(l,Math.min(v,parseFloat(mxUtils.getValue(this.style, +"size",this.size)))));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-n),0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-.5*n,.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.5*(v+n)));c.push(new mxConnectionConstraint(new mxPoint(1,1),!1));c.push(new mxConnectionConstraint(new mxPoint(.5, +1),!1));c.push(new mxConnectionConstraint(new mxPoint(0,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));l>=2*n&&c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));return c};t.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0,Math.min(l,Math.min(v,parseFloat(mxUtils.getValue(this.style,"size",this.size)))));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),0));c.push(new mxConnectionConstraint(new mxPoint(0, +0),!1,null,n,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*n,.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*(v+n)));c.push(new mxConnectionConstraint(new mxPoint(0,1),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(1,1),!1));c.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));l>=2*n&&c.push(new mxConnectionConstraint(new mxPoint(.5, +0),!1));return c};m.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0,Math.min(l,Math.min(v,parseFloat(mxUtils.getValue(this.style,"size",this.size)))));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-n),0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-.5*n,.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,n));c.push(new mxConnectionConstraint(new mxPoint(0, +0),!1,null,l,.5*(v+n)));c.push(new mxConnectionConstraint(new mxPoint(1,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*n,v-.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,v-n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*(v-n)));return c};d.prototype.getConstraints=function(c,l,v){c=[];l=Math.max(0,Math.min(v, +parseFloat(mxUtils.getValue(this.style,"size",this.size))));c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,l));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,l));c.push(new mxConnectionConstraint(new mxPoint(1,1),!1,null,0,-l));c.push(new mxConnectionConstraint(new mxPoint(0, +1),!1,null,0,-l));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,l+.5*(.5*v-l)));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,l+.5*(.5*v-l)));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,v-l-.5*(.5*v-l)));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,v-l-.5*(.5*v-l)));c.push(new mxConnectionConstraint(new mxPoint(.145,0),!1,null,0,.29*l));c.push(new mxConnectionConstraint(new mxPoint(.855,0),!1,null,0,.29*l));c.push(new mxConnectionConstraint(new mxPoint(.855, +1),!1,null,0,.29*-l));c.push(new mxConnectionConstraint(new mxPoint(.145,1),!1,null,0,.29*-l));return c};g.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0,Math.min(l,parseFloat(mxUtils.getValue(this.style,"tabWidth",this.tabWidth)))),u=Math.max(0,Math.min(v,parseFloat(mxUtils.getValue(this.style,"tabHeight",this.tabHeight))));"left"==mxUtils.getValue(this.style,"tabPosition",this.tabPosition)?(c.push(new mxConnectionConstraint(new mxPoint(0,0),!1)),c.push(new mxConnectionConstraint(new mxPoint(0, +0),!1,null,.5*n,0)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,0)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,u)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),u))):(c.push(new mxConnectionConstraint(new mxPoint(1,0),!1)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-.5*n,0)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,0)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,u)),c.push(new mxConnectionConstraint(new mxPoint(0, +0),!1,null,.5*(l-n),u)));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.25*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.5*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.75*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null, +0,.25*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.75*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,v));c.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));return c};Na.prototype.constraints=mxRectangleShape.prototype.constraints;G.prototype.constraints= +mxRectangleShape.prototype.constraints;ka.prototype.constraints=mxEllipse.prototype.constraints;ta.prototype.constraints=mxEllipse.prototype.constraints;pa.prototype.constraints=mxEllipse.prototype.constraints;Ua.prototype.constraints=mxEllipse.prototype.constraints;Pa.prototype.constraints=mxRectangleShape.prototype.constraints;Sa.prototype.constraints=mxRectangleShape.prototype.constraints;Ha.prototype.getConstraints=function(c,l,v){c=[];var n=Math.min(l,v/2),u=Math.min(l-n,Math.max(0,parseFloat(mxUtils.getValue(this.style, +"size",this.size)))*l);c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(u+l-n),0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,0));c.push(new mxConnectionConstraint(new mxPoint(1,.5),!1,null));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(u+l-n),v));c.push(new mxConnectionConstraint(new mxPoint(0, +0),!1,null,u,v));return c};xa.prototype.getConstraints=function(c,l,v){l=parseFloat(mxUtils.getValue(c,"jettyWidth",xa.prototype.jettyWidth))/2;c=parseFloat(mxUtils.getValue(c,"jettyHeight",xa.prototype.jettyHeight));var n=[new mxConnectionConstraint(new mxPoint(0,0),!1,null,l),new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(1, +.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(0,1),!1,null,l),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0),new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,Math.min(v-.5*c,1.5*c)),new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,Math.min(v- +.5*c,3.5*c))];v>5*c&&n.push(new mxConnectionConstraint(new mxPoint(0,.75),!1,null,l));v>8*c&&n.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,l));v>15*c&&n.push(new mxConnectionConstraint(new mxPoint(0,.25),!1,null,l));return n};aa.prototype.constraints=mxRectangleShape.prototype.constraints;fa.prototype.constraints=mxRectangleShape.prototype.constraints;mxCylinder.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.15,.05),!1),new mxConnectionConstraint(new mxPoint(.5,0),!0), +new mxConnectionConstraint(new mxPoint(.85,.05),!1),new mxConnectionConstraint(new mxPoint(0,.3),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.7),!0),new mxConnectionConstraint(new mxPoint(1,.3),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.7),!0),new mxConnectionConstraint(new mxPoint(.15,.95),!1),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.85,.95),!1)];Z.prototype.constraints= +[new mxConnectionConstraint(new mxPoint(.25,.1),!1),new mxConnectionConstraint(new mxPoint(.5,0),!1),new mxConnectionConstraint(new mxPoint(.75,.1),!1),new mxConnectionConstraint(new mxPoint(0,1/3),!1),new mxConnectionConstraint(new mxPoint(0,1),!1),new mxConnectionConstraint(new mxPoint(1,1/3),!1),new mxConnectionConstraint(new mxPoint(1,1),!1),new mxConnectionConstraint(new mxPoint(.5,.5),!1)];qa.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5, +0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(0,.3),!0),new mxConnectionConstraint(new mxPoint(0,.7),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0)];mxActor.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.5, +0),!0),new mxConnectionConstraint(new mxPoint(.25,.2),!1),new mxConnectionConstraint(new mxPoint(.1,.5),!1),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(.75,.25),!1),new mxConnectionConstraint(new mxPoint(.9,.5),!1),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0)];f.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0, +0),!1),new mxConnectionConstraint(new mxPoint(.5,.25),!1),new mxConnectionConstraint(new mxPoint(1,0),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.75,.5),!1),new mxConnectionConstraint(new mxPoint(0,1),!1),new mxConnectionConstraint(new mxPoint(.5,.75),!1),new mxConnectionConstraint(new mxPoint(1,1),!1)];C.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.35),!1),new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(0, +.65),!1),new mxConnectionConstraint(new mxPoint(1,.35),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(1,.65),!1),new mxConnectionConstraint(new mxPoint(.25,1),!1),new mxConnectionConstraint(new mxPoint(.75,0),!1)];ra.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5, +1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0)];mxLine.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.75, +.5),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1)];ba.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.5,0),!1),new mxConnectionConstraint(new mxPoint(.5,1),!1)];mxDoubleEllipse.prototype.constraints=mxEllipse.prototype.constraints;mxRhombus.prototype.constraints=mxEllipse.prototype.constraints;mxTriangle.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(.5, +0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0)];mxHexagon.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.375,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.625,0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1, +.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(.375,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.625,1),!0)];mxCloud.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,.25),!1),new mxConnectionConstraint(new mxPoint(.4,.1),!1),new mxConnectionConstraint(new mxPoint(.16,.55),!1),new mxConnectionConstraint(new mxPoint(.07,.4),!1),new mxConnectionConstraint(new mxPoint(.31,.8),!1),new mxConnectionConstraint(new mxPoint(.13, +.77),!1),new mxConnectionConstraint(new mxPoint(.8,.8),!1),new mxConnectionConstraint(new mxPoint(.55,.95),!1),new mxConnectionConstraint(new mxPoint(.875,.5),!1),new mxConnectionConstraint(new mxPoint(.96,.7),!1),new mxConnectionConstraint(new mxPoint(.625,.2),!1),new mxConnectionConstraint(new mxPoint(.88,.25),!1)];P.prototype.constraints=mxRectangleShape.prototype.constraints;M.prototype.constraints=mxRectangleShape.prototype.constraints;I.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25, +0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0)];mxArrow.prototype.constraints=null;db.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0, +Math.min(l,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),u=Math.max(0,Math.min(v,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.5*u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1, +null,.75*l+.25*n,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),.5*(v+u)));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),v));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-n),v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-n),.5*(v+u)));c.push(new mxConnectionConstraint(new mxPoint(0,0), +!1,null,.5*(l-n),u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*l-.25*n,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*u));return c};Ka.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0,Math.min(l,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),u=Math.max(0,Math.min(v,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));c.push(new mxConnectionConstraint(new mxPoint(0,0), +!1));c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.5*u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,.5*(v+u)));c.push(new mxConnectionConstraint(new mxPoint(0, +0),!1,null,n,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*n,v));c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,1),!1));return c};ya.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!1),new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(0,1),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.5,.5),!1),new mxConnectionConstraint(new mxPoint(.75, +.5),!1),new mxConnectionConstraint(new mxPoint(1,0),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(1,1),!1)];$a.prototype.getConstraints=function(c,l,v){c=[];var n=v*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowWidth",this.arrowWidth)))),u=l*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowSize",this.arrowSize))));n=(v-n)/2;c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0, +0),!1,null,0,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-u),n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-u,0));c.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-u,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-u),v-n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,v-n));return c};x.prototype.getConstraints=function(c,l,v){c=[];var n=v*Math.max(0,Math.min(1, +parseFloat(mxUtils.getValue(this.style,"arrowWidth",$a.prototype.arrowWidth)))),u=l*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowSize",$a.prototype.arrowSize))));n=(v-n)/2;c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*l,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-u,0));c.push(new mxConnectionConstraint(new mxPoint(1,.5), +!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-u,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*l,v-n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,v));return c};Da.prototype.getConstraints=function(c,l,v){c=[];var n=Math.min(v,l),u=Math.max(0,Math.min(n,n*parseFloat(mxUtils.getValue(this.style,"size",this.size))));n=(v-u)/2;var z=n+u,A=(l-u)/2;u=A+u;c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,A,.5*n));c.push(new mxConnectionConstraint(new mxPoint(0, +0),!1,null,A,0));c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,A,v-.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,A,v));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0, +0),!1,null,u,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,v-.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+u),n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,n));c.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+u),z));c.push(new mxConnectionConstraint(new mxPoint(0, +0),!1,null,A,z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*A,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,n));c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*A,z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,A,n));return c};ca.prototype.constraints=null;L.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0, +.25),!1),new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(0,.75),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(.7,.1),!1),new mxConnectionConstraint(new mxPoint(.7,.9),!1)];W.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.175,.25),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.175,.75),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(.7, +.1),!1),new mxConnectionConstraint(new mxPoint(.7,.9),!1)];oa.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1)];sa.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1)]})();function Actions(b){this.editorUi=b;this.actions={};this.init()} Actions.prototype.init=function(){function b(D){p.escape();var H=p.getDeletableCells(p.getSelectionCells());null!=H&&0Math.abs(D-p.view.scale)&&H==p.container.scrollLeft&&N==p.container.scrollTop&&d==p.view.translate.x&&f==p.view.translate.y&&m.actions.get(p.pageVisible?"fitPage": diff --git a/src/main/webapp/js/viewer.min.js b/src/main/webapp/js/viewer.min.js index 2a559f18c1..9f66978f21 100644 --- a/src/main/webapp/js/viewer.min.js +++ b/src/main/webapp/js/viewer.min.js @@ -2917,60 +2917,60 @@ Math.round(Math.max(0,Math.min(l.height,v.y-l.y)))},!1)]},singleArrow:mb(1),doub return new mxPoint(l.getCenterX(),l.y+(1-v)*l.height)},function(l,v){this.state.style.size=Math.max(0,Math.min(1,(l.y+l.height-v.y)/l.height))},!1)]},"mxgraph.basic.rect":function(c){var l=[Graph.createHandle(c,["size"],function(v){var n=Math.max(0,Math.min(v.width/2,v.height/2,parseFloat(mxUtils.getValue(this.state.style,"size",this.size))));return new mxPoint(v.x+n,v.y+n)},function(v,n){this.state.style.size=Math.round(100*Math.max(0,Math.min(v.height/2,v.width/2,n.x-v.x)))/100})];c=Graph.createHandle(c, ["indent"],function(v){var n=Math.max(0,Math.min(100,parseFloat(mxUtils.getValue(this.state.style,"indent",this.dx2))));return new mxPoint(v.x+.75*v.width,v.y+n*v.height/200)},function(v,n){this.state.style.indent=Math.round(100*Math.max(0,Math.min(100,200*(n.y-v.y)/v.height)))/100});l.push(c);return l},step:pb(ra.prototype.size,!0,null,!0,ra.prototype.fixedSize),hexagon:pb(R.prototype.size,!0,.5,!0,R.prototype.fixedSize),curlyBracket:pb(X.prototype.size,!1),display:pb(Ha.prototype.size,!1),cube:vb(1, m.prototype.size,!1),card:vb(.5,t.prototype.size,!0),loopLimit:vb(.5,aa.prototype.size,!0),trapezoid:ob(.5,M.prototype.size,M.prototype.fixedSize),parallelogram:ob(1,P.prototype.size,P.prototype.fixedSize)};Graph.createHandle=ib;Graph.handleFactory=ub;var Cb=mxVertexHandler.prototype.createCustomHandles;mxVertexHandler.prototype.createCustomHandles=function(){var c=Cb.apply(this,arguments);if(this.graph.isCellRotatable(this.state.cell)){var l=this.state.style.shape;null==mxCellRenderer.defaultShapes[l]&& -null==mxStencilRegistry.getStencil(l)?l=mxConstants.SHAPE_RECTANGLE:this.state.view.graph.isSwimlane(this.state.cell)&&(l=mxConstants.SHAPE_SWIMLANE);l=ub[l];null==l&&null!=this.state.shape&&this.state.shape.isRoundable()&&(l=ub[mxConstants.SHAPE_RECTANGLE]);null!=l&&(l=l(this.state),null!=l&&(c=null==c?l:c.concat(l)))}return c};mxEdgeHandler.prototype.createCustomHandles=function(){var c=this.state.style.shape;null==mxCellRenderer.defaultShapes[c]&&null==mxStencilRegistry.getStencil(c)&&(c=mxConstants.SHAPE_CONNECTOR); -c=ub[c];return null!=c?c(this.state):null}}else Graph.createHandle=function(){},Graph.handleFactory={};var xb=new mxPoint(1,0),zb=new mxPoint(1,0),qb=mxUtils.toRadians(-30);xb=mxUtils.getRotatedPoint(xb,Math.cos(qb),Math.sin(qb));var yb=mxUtils.toRadians(-150);zb=mxUtils.getRotatedPoint(zb,Math.cos(yb),Math.sin(yb));mxEdgeStyle.IsometricConnector=function(c,l,v,n,u){var z=c.view;n=null!=n&&0=2*n&&c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));return c};mxRectangleShape.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75, -0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75, -1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0)];mxEllipse.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(1,.5))];La.prototype.constraints=mxRectangleShape.prototype.constraints; -mxImageShape.prototype.constraints=mxRectangleShape.prototype.constraints;mxSwimlane.prototype.constraints=mxRectangleShape.prototype.constraints;V.prototype.constraints=mxRectangleShape.prototype.constraints;mxLabel.prototype.constraints=mxRectangleShape.prototype.constraints;T.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0,Math.min(l,Math.min(v,parseFloat(mxUtils.getValue(this.style,"size",this.size)))));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,.5*(l-n),0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-.5*n,.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.5*(v+n)));c.push(new mxConnectionConstraint(new mxPoint(1,1),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0, -.5),!1));l>=2*n&&c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));return c};t.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0,Math.min(l,Math.min(v,parseFloat(mxUtils.getValue(this.style,"size",this.size)))));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*n,.5*n));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,0,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*(v+n)));c.push(new mxConnectionConstraint(new mxPoint(0,1),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(1,1),!1));c.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));l>=2*n&&c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));return c};m.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0,Math.min(l,Math.min(v,parseFloat(mxUtils.getValue(this.style, -"size",this.size)))));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-n),0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-.5*n,.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.5*(v+n)));c.push(new mxConnectionConstraint(new mxPoint(1,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,.5*(l+n),v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*n,v-.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,v-n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*(v-n)));return c};d.prototype.getConstraints=function(c,l,v){c=[];l=Math.max(0,Math.min(v,parseFloat(mxUtils.getValue(this.style,"size",this.size))));c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0, -.5),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,l));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,l));c.push(new mxConnectionConstraint(new mxPoint(1,1),!1,null,0,-l));c.push(new mxConnectionConstraint(new mxPoint(0,1),!1,null,0,-l));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,l+.5*(.5*v-l)));c.push(new mxConnectionConstraint(new mxPoint(1, -0),!1,null,0,l+.5*(.5*v-l)));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,v-l-.5*(.5*v-l)));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,v-l-.5*(.5*v-l)));c.push(new mxConnectionConstraint(new mxPoint(.145,0),!1,null,0,.29*l));c.push(new mxConnectionConstraint(new mxPoint(.855,0),!1,null,0,.29*l));c.push(new mxConnectionConstraint(new mxPoint(.855,1),!1,null,0,.29*-l));c.push(new mxConnectionConstraint(new mxPoint(.145,1),!1,null,0,.29*-l));return c};g.prototype.getConstraints= -function(c,l,v){c=[];var n=Math.max(0,Math.min(l,parseFloat(mxUtils.getValue(this.style,"tabWidth",this.tabWidth)))),u=Math.max(0,Math.min(v,parseFloat(mxUtils.getValue(this.style,"tabHeight",this.tabHeight))));"left"==mxUtils.getValue(this.style,"tabPosition",this.tabPosition)?(c.push(new mxConnectionConstraint(new mxPoint(0,0),!1)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*n,0)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,0)),c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,n,u)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),u))):(c.push(new mxConnectionConstraint(new mxPoint(1,0),!1)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-.5*n,0)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,0)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,u)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-n),u)));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,u));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,l,.25*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.5*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.75*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.25*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,0,.75*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,v));c.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));return c};Na.prototype.constraints=mxRectangleShape.prototype.constraints;G.prototype.constraints=mxRectangleShape.prototype.constraints;ka.prototype.constraints=mxEllipse.prototype.constraints;ta.prototype.constraints=mxEllipse.prototype.constraints; -pa.prototype.constraints=mxEllipse.prototype.constraints;Ua.prototype.constraints=mxEllipse.prototype.constraints;Pa.prototype.constraints=mxRectangleShape.prototype.constraints;Sa.prototype.constraints=mxRectangleShape.prototype.constraints;Ha.prototype.getConstraints=function(c,l,v){c=[];var n=Math.min(l,v/2),u=Math.min(l-n,Math.max(0,parseFloat(mxUtils.getValue(this.style,"size",this.size)))*l);c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,u,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(u+l-n),0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,0));c.push(new mxConnectionConstraint(new mxPoint(1,.5),!1,null));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(u+l-n),v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,v));return c};xa.prototype.getConstraints=function(c,l,v){l=parseFloat(mxUtils.getValue(c, -"jettyWidth",xa.prototype.jettyWidth))/2;c=parseFloat(mxUtils.getValue(c,"jettyHeight",xa.prototype.jettyHeight));var n=[new mxConnectionConstraint(new mxPoint(0,0),!1,null,l),new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1, -.75),!0),new mxConnectionConstraint(new mxPoint(0,1),!1,null,l),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0),new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,Math.min(v-.5*c,1.5*c)),new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,Math.min(v-.5*c,3.5*c))];v>5*c&&n.push(new mxConnectionConstraint(new mxPoint(0,.75),!1,null,l));v>8*c&&n.push(new mxConnectionConstraint(new mxPoint(0, -.5),!1,null,l));v>15*c&&n.push(new mxConnectionConstraint(new mxPoint(0,.25),!1,null,l));return n};aa.prototype.constraints=mxRectangleShape.prototype.constraints;fa.prototype.constraints=mxRectangleShape.prototype.constraints;mxCylinder.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.15,.05),!1),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.85,.05),!1),new mxConnectionConstraint(new mxPoint(0,.3),!0),new mxConnectionConstraint(new mxPoint(0, -.5),!0),new mxConnectionConstraint(new mxPoint(0,.7),!0),new mxConnectionConstraint(new mxPoint(1,.3),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.7),!0),new mxConnectionConstraint(new mxPoint(.15,.95),!1),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.85,.95),!1)];Z.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,.1),!1),new mxConnectionConstraint(new mxPoint(.5,0),!1),new mxConnectionConstraint(new mxPoint(.75, -.1),!1),new mxConnectionConstraint(new mxPoint(0,1/3),!1),new mxConnectionConstraint(new mxPoint(0,1),!1),new mxConnectionConstraint(new mxPoint(1,1/3),!1),new mxConnectionConstraint(new mxPoint(1,1),!1),new mxConnectionConstraint(new mxPoint(.5,.5),!1)];qa.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(0,.3),!0),new mxConnectionConstraint(new mxPoint(0, -.7),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0)];mxActor.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.25,.2),!1),new mxConnectionConstraint(new mxPoint(.1,.5),!1),new mxConnectionConstraint(new mxPoint(0, -.75),!0),new mxConnectionConstraint(new mxPoint(.75,.25),!1),new mxConnectionConstraint(new mxPoint(.9,.5),!1),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0)];f.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!1),new mxConnectionConstraint(new mxPoint(.5,.25),!1),new mxConnectionConstraint(new mxPoint(1,0),!1),new mxConnectionConstraint(new mxPoint(.25, -.5),!1),new mxConnectionConstraint(new mxPoint(.75,.5),!1),new mxConnectionConstraint(new mxPoint(0,1),!1),new mxConnectionConstraint(new mxPoint(.5,.75),!1),new mxConnectionConstraint(new mxPoint(1,1),!1)];C.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.35),!1),new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(0,.65),!1),new mxConnectionConstraint(new mxPoint(1,.35),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(1, -.65),!1),new mxConnectionConstraint(new mxPoint(.25,1),!1),new mxConnectionConstraint(new mxPoint(.75,0),!1)];ra.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0, -.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0)];mxLine.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.75,.5),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1)];ba.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.5, -0),!1),new mxConnectionConstraint(new mxPoint(.5,1),!1)];mxDoubleEllipse.prototype.constraints=mxEllipse.prototype.constraints;mxRhombus.prototype.constraints=mxEllipse.prototype.constraints;mxTriangle.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(1, -.5),!0)];mxHexagon.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.375,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.625,0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(.375, -1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.625,1),!0)];mxCloud.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,.25),!1),new mxConnectionConstraint(new mxPoint(.4,.1),!1),new mxConnectionConstraint(new mxPoint(.16,.55),!1),new mxConnectionConstraint(new mxPoint(.07,.4),!1),new mxConnectionConstraint(new mxPoint(.31,.8),!1),new mxConnectionConstraint(new mxPoint(.13,.77),!1),new mxConnectionConstraint(new mxPoint(.8,.8),!1),new mxConnectionConstraint(new mxPoint(.55, -.95),!1),new mxConnectionConstraint(new mxPoint(.875,.5),!1),new mxConnectionConstraint(new mxPoint(.96,.7),!1),new mxConnectionConstraint(new mxPoint(.625,.2),!1),new mxConnectionConstraint(new mxPoint(.88,.25),!1)];P.prototype.constraints=mxRectangleShape.prototype.constraints;M.prototype.constraints=mxRectangleShape.prototype.constraints;I.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75, -0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0)];mxArrow.prototype.constraints=null;db.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0,Math.min(l,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),u=Math.max(0,Math.min(v,parseFloat(mxUtils.getValue(this.style, -"dy",this.dy))));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.5*u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.75*l+.25*n,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),u));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,.5*(l+n),.5*(v+u)));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),v));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-n),v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-n),.5*(v+u)));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-n),u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*l-.25*n,u));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,0,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*u));return c};Ka.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0,Math.min(l,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),u=Math.max(0,Math.min(v,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,l,.5*u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,.5*(v+u)));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*n,v));c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0, -1),!1));return c};ya.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!1),new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(0,1),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.5,.5),!1),new mxConnectionConstraint(new mxPoint(.75,.5),!1),new mxConnectionConstraint(new mxPoint(1,0),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(1,1),!1)];$a.prototype.getConstraints= -function(c,l,v){c=[];var n=v*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowWidth",this.arrowWidth)))),u=l*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowSize",this.arrowSize))));n=(v-n)/2;c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-u),n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-u,0));c.push(new mxConnectionConstraint(new mxPoint(1, -.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-u,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-u),v-n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,v-n));return c};x.prototype.getConstraints=function(c,l,v){c=[];var n=v*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowWidth",$a.prototype.arrowWidth)))),u=l*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowSize",$a.prototype.arrowSize))));n=(v-n)/2;c.push(new mxConnectionConstraint(new mxPoint(0, -.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*l,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-u,0));c.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-u,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*l,v-n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,v));return c};Da.prototype.getConstraints= -function(c,l,v){c=[];var n=Math.min(v,l),u=Math.max(0,Math.min(n,n*parseFloat(mxUtils.getValue(this.style,"size",this.size))));n=(v-u)/2;var z=n+u,A=(l-u)/2;u=A+u;c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,A,.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,A,0));c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,.5*n));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,u,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,A,v-.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,A,v));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,v-.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+u),n));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,l,n));c.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+u),z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,A,z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*A,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,n));c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0, -0),!1,null,0,z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*A,z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,A,n));return c};ca.prototype.constraints=null;L.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.25),!1),new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(0,.75),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(.7,.1),!1),new mxConnectionConstraint(new mxPoint(.7, -.9),!1)];W.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.175,.25),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.175,.75),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(.7,.1),!1),new mxConnectionConstraint(new mxPoint(.7,.9),!1)];oa.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1)];sa.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0, -.5),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1)]})();function Actions(b){this.editorUi=b;this.actions={};this.init()} +null==mxStencilRegistry.getStencil(l)?l=mxConstants.SHAPE_RECTANGLE:this.state.view.graph.isSwimlane(this.state.cell)&&(l=mxConstants.SHAPE_SWIMLANE);l=ub[l];null==l&&null!=this.state.shape&&this.state.shape.isRoundable()&&(l=ub[mxConstants.SHAPE_RECTANGLE]);null!=l&&(l=l(this.state),null!=l&&(c=null==c?l:c.concat(l)))}return c};mxEdgeHandler.prototype.createCustomHandles=function(){if("LINK"===this.state.cell.getAttribute("type"))return null;var c=this.state.style.shape;null==mxCellRenderer.defaultShapes[c]&& +null==mxStencilRegistry.getStencil(c)&&(c=mxConstants.SHAPE_CONNECTOR);c=ub[c];return null!=c?c(this.state):null}}else Graph.createHandle=function(){},Graph.handleFactory={};var xb=new mxPoint(1,0),zb=new mxPoint(1,0),qb=mxUtils.toRadians(-30);xb=mxUtils.getRotatedPoint(xb,Math.cos(qb),Math.sin(qb));var yb=mxUtils.toRadians(-150);zb=mxUtils.getRotatedPoint(zb,Math.cos(yb),Math.sin(yb));mxEdgeStyle.IsometricConnector=function(c,l,v,n,u){var z=c.view;n=null!=n&&0=2*n&&c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));return c};mxRectangleShape.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(.25, +0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(.25, +1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0)];mxEllipse.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(0,1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(0, +.5),!0),new mxConnectionConstraint(new mxPoint(1,.5))];La.prototype.constraints=mxRectangleShape.prototype.constraints;mxImageShape.prototype.constraints=mxRectangleShape.prototype.constraints;mxSwimlane.prototype.constraints=mxRectangleShape.prototype.constraints;V.prototype.constraints=mxRectangleShape.prototype.constraints;mxLabel.prototype.constraints=mxRectangleShape.prototype.constraints;T.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0,Math.min(l,Math.min(v,parseFloat(mxUtils.getValue(this.style, +"size",this.size)))));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-n),0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-.5*n,.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.5*(v+n)));c.push(new mxConnectionConstraint(new mxPoint(1,1),!1));c.push(new mxConnectionConstraint(new mxPoint(.5, +1),!1));c.push(new mxConnectionConstraint(new mxPoint(0,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));l>=2*n&&c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));return c};t.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0,Math.min(l,Math.min(v,parseFloat(mxUtils.getValue(this.style,"size",this.size)))));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),0));c.push(new mxConnectionConstraint(new mxPoint(0, +0),!1,null,n,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*n,.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*(v+n)));c.push(new mxConnectionConstraint(new mxPoint(0,1),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(1,1),!1));c.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));l>=2*n&&c.push(new mxConnectionConstraint(new mxPoint(.5, +0),!1));return c};m.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0,Math.min(l,Math.min(v,parseFloat(mxUtils.getValue(this.style,"size",this.size)))));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-n),0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-.5*n,.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,n));c.push(new mxConnectionConstraint(new mxPoint(0, +0),!1,null,l,.5*(v+n)));c.push(new mxConnectionConstraint(new mxPoint(1,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*n,v-.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,v-n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*(v-n)));return c};d.prototype.getConstraints=function(c,l,v){c=[];l=Math.max(0,Math.min(v, +parseFloat(mxUtils.getValue(this.style,"size",this.size))));c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,l));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,l));c.push(new mxConnectionConstraint(new mxPoint(1,1),!1,null,0,-l));c.push(new mxConnectionConstraint(new mxPoint(0, +1),!1,null,0,-l));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,l+.5*(.5*v-l)));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,l+.5*(.5*v-l)));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1,null,0,v-l-.5*(.5*v-l)));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,v-l-.5*(.5*v-l)));c.push(new mxConnectionConstraint(new mxPoint(.145,0),!1,null,0,.29*l));c.push(new mxConnectionConstraint(new mxPoint(.855,0),!1,null,0,.29*l));c.push(new mxConnectionConstraint(new mxPoint(.855, +1),!1,null,0,.29*-l));c.push(new mxConnectionConstraint(new mxPoint(.145,1),!1,null,0,.29*-l));return c};g.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0,Math.min(l,parseFloat(mxUtils.getValue(this.style,"tabWidth",this.tabWidth)))),u=Math.max(0,Math.min(v,parseFloat(mxUtils.getValue(this.style,"tabHeight",this.tabHeight))));"left"==mxUtils.getValue(this.style,"tabPosition",this.tabPosition)?(c.push(new mxConnectionConstraint(new mxPoint(0,0),!1)),c.push(new mxConnectionConstraint(new mxPoint(0, +0),!1,null,.5*n,0)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,0)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,u)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),u))):(c.push(new mxConnectionConstraint(new mxPoint(1,0),!1)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-.5*n,0)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,0)),c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,u)),c.push(new mxConnectionConstraint(new mxPoint(0, +0),!1,null,.5*(l-n),u)));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.25*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.5*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.75*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null, +0,.25*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.75*(v-u)+u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,v));c.push(new mxConnectionConstraint(new mxPoint(.25,1),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(.75,1),!1));return c};Na.prototype.constraints=mxRectangleShape.prototype.constraints;G.prototype.constraints= +mxRectangleShape.prototype.constraints;ka.prototype.constraints=mxEllipse.prototype.constraints;ta.prototype.constraints=mxEllipse.prototype.constraints;pa.prototype.constraints=mxEllipse.prototype.constraints;Ua.prototype.constraints=mxEllipse.prototype.constraints;Pa.prototype.constraints=mxRectangleShape.prototype.constraints;Sa.prototype.constraints=mxRectangleShape.prototype.constraints;Ha.prototype.getConstraints=function(c,l,v){c=[];var n=Math.min(l,v/2),u=Math.min(l-n,Math.max(0,parseFloat(mxUtils.getValue(this.style, +"size",this.size)))*l);c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(u+l-n),0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,0));c.push(new mxConnectionConstraint(new mxPoint(1,.5),!1,null));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-n,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(u+l-n),v));c.push(new mxConnectionConstraint(new mxPoint(0, +0),!1,null,u,v));return c};xa.prototype.getConstraints=function(c,l,v){l=parseFloat(mxUtils.getValue(c,"jettyWidth",xa.prototype.jettyWidth))/2;c=parseFloat(mxUtils.getValue(c,"jettyHeight",xa.prototype.jettyHeight));var n=[new mxConnectionConstraint(new mxPoint(0,0),!1,null,l),new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(1,0),!0),new mxConnectionConstraint(new mxPoint(1, +.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(0,1),!1,null,l),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0),new mxConnectionConstraint(new mxPoint(1,1),!0),new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,Math.min(v-.5*c,1.5*c)),new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,Math.min(v- +.5*c,3.5*c))];v>5*c&&n.push(new mxConnectionConstraint(new mxPoint(0,.75),!1,null,l));v>8*c&&n.push(new mxConnectionConstraint(new mxPoint(0,.5),!1,null,l));v>15*c&&n.push(new mxConnectionConstraint(new mxPoint(0,.25),!1,null,l));return n};aa.prototype.constraints=mxRectangleShape.prototype.constraints;fa.prototype.constraints=mxRectangleShape.prototype.constraints;mxCylinder.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.15,.05),!1),new mxConnectionConstraint(new mxPoint(.5,0),!0), +new mxConnectionConstraint(new mxPoint(.85,.05),!1),new mxConnectionConstraint(new mxPoint(0,.3),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.7),!0),new mxConnectionConstraint(new mxPoint(1,.3),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.7),!0),new mxConnectionConstraint(new mxPoint(.15,.95),!1),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.85,.95),!1)];Z.prototype.constraints= +[new mxConnectionConstraint(new mxPoint(.25,.1),!1),new mxConnectionConstraint(new mxPoint(.5,0),!1),new mxConnectionConstraint(new mxPoint(.75,.1),!1),new mxConnectionConstraint(new mxPoint(0,1/3),!1),new mxConnectionConstraint(new mxPoint(0,1),!1),new mxConnectionConstraint(new mxPoint(1,1/3),!1),new mxConnectionConstraint(new mxPoint(1,1),!1),new mxConnectionConstraint(new mxPoint(.5,.5),!1)];qa.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5, +0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(0,.3),!0),new mxConnectionConstraint(new mxPoint(0,.7),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0)];mxActor.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.5, +0),!0),new mxConnectionConstraint(new mxPoint(.25,.2),!1),new mxConnectionConstraint(new mxPoint(.1,.5),!1),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(.75,.25),!1),new mxConnectionConstraint(new mxPoint(.9,.5),!1),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0)];f.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0, +0),!1),new mxConnectionConstraint(new mxPoint(.5,.25),!1),new mxConnectionConstraint(new mxPoint(1,0),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.75,.5),!1),new mxConnectionConstraint(new mxPoint(0,1),!1),new mxConnectionConstraint(new mxPoint(.5,.75),!1),new mxConnectionConstraint(new mxPoint(1,1),!1)];C.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.35),!1),new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(0, +.65),!1),new mxConnectionConstraint(new mxPoint(1,.35),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(1,.65),!1),new mxConnectionConstraint(new mxPoint(.25,1),!1),new mxConnectionConstraint(new mxPoint(.75,0),!1)];ra.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(.25,1),!0),new mxConnectionConstraint(new mxPoint(.5, +1),!0),new mxConnectionConstraint(new mxPoint(.75,1),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0)];mxLine.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.75, +.5),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1)];ba.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.5,0),!1),new mxConnectionConstraint(new mxPoint(.5,1),!1)];mxDoubleEllipse.prototype.constraints=mxEllipse.prototype.constraints;mxRhombus.prototype.constraints=mxEllipse.prototype.constraints;mxTriangle.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(.5, +0),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0)];mxHexagon.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.375,0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.625,0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1, +.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0),new mxConnectionConstraint(new mxPoint(.375,1),!0),new mxConnectionConstraint(new mxPoint(.5,1),!0),new mxConnectionConstraint(new mxPoint(.625,1),!0)];mxCloud.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25,.25),!1),new mxConnectionConstraint(new mxPoint(.4,.1),!1),new mxConnectionConstraint(new mxPoint(.16,.55),!1),new mxConnectionConstraint(new mxPoint(.07,.4),!1),new mxConnectionConstraint(new mxPoint(.31,.8),!1),new mxConnectionConstraint(new mxPoint(.13, +.77),!1),new mxConnectionConstraint(new mxPoint(.8,.8),!1),new mxConnectionConstraint(new mxPoint(.55,.95),!1),new mxConnectionConstraint(new mxPoint(.875,.5),!1),new mxConnectionConstraint(new mxPoint(.96,.7),!1),new mxConnectionConstraint(new mxPoint(.625,.2),!1),new mxConnectionConstraint(new mxPoint(.88,.25),!1)];P.prototype.constraints=mxRectangleShape.prototype.constraints;M.prototype.constraints=mxRectangleShape.prototype.constraints;I.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.25, +0),!0),new mxConnectionConstraint(new mxPoint(.5,0),!0),new mxConnectionConstraint(new mxPoint(.75,0),!0),new mxConnectionConstraint(new mxPoint(0,.25),!0),new mxConnectionConstraint(new mxPoint(0,.5),!0),new mxConnectionConstraint(new mxPoint(0,.75),!0),new mxConnectionConstraint(new mxPoint(1,.25),!0),new mxConnectionConstraint(new mxPoint(1,.5),!0),new mxConnectionConstraint(new mxPoint(1,.75),!0)];mxArrow.prototype.constraints=null;db.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0, +Math.min(l,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),u=Math.max(0,Math.min(v,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1));c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.5*u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1, +null,.75*l+.25*n,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),.5*(v+u)));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),v));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-n),v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-n),.5*(v+u)));c.push(new mxConnectionConstraint(new mxPoint(0,0), +!1,null,.5*(l-n),u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.25*l-.25*n,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,.5*u));return c};Ka.prototype.getConstraints=function(c,l,v){c=[];var n=Math.max(0,Math.min(l,parseFloat(mxUtils.getValue(this.style,"dx",this.dx)))),u=Math.max(0,Math.min(v,parseFloat(mxUtils.getValue(this.style,"dy",this.dy))));c.push(new mxConnectionConstraint(new mxPoint(0,0), +!1));c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));c.push(new mxConnectionConstraint(new mxPoint(1,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,.5*u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+n),u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,u));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,n,.5*(v+u)));c.push(new mxConnectionConstraint(new mxPoint(0, +0),!1,null,n,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*n,v));c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,1),!1));return c};ya.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,0),!1),new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(0,1),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.5,.5),!1),new mxConnectionConstraint(new mxPoint(.75, +.5),!1),new mxConnectionConstraint(new mxPoint(1,0),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(1,1),!1)];$a.prototype.getConstraints=function(c,l,v){c=[];var n=v*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowWidth",this.arrowWidth)))),u=l*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowSize",this.arrowSize))));n=(v-n)/2;c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0, +0),!1,null,0,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-u),n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-u,0));c.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-u,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l-u),v-n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,v-n));return c};x.prototype.getConstraints=function(c,l,v){c=[];var n=v*Math.max(0,Math.min(1, +parseFloat(mxUtils.getValue(this.style,"arrowWidth",$a.prototype.arrowWidth)))),u=l*Math.max(0,Math.min(1,parseFloat(mxUtils.getValue(this.style,"arrowSize",$a.prototype.arrowSize))));n=(v-n)/2;c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*l,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-u,0));c.push(new mxConnectionConstraint(new mxPoint(1,.5), +!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l-u,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*l,v-n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,v));return c};Da.prototype.getConstraints=function(c,l,v){c=[];var n=Math.min(v,l),u=Math.max(0,Math.min(n,n*parseFloat(mxUtils.getValue(this.style,"size",this.size))));n=(v-u)/2;var z=n+u,A=(l-u)/2;u=A+u;c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,A,.5*n));c.push(new mxConnectionConstraint(new mxPoint(0, +0),!1,null,A,0));c.push(new mxConnectionConstraint(new mxPoint(.5,0),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,0));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,A,v-.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,A,v));c.push(new mxConnectionConstraint(new mxPoint(.5,1),!1));c.push(new mxConnectionConstraint(new mxPoint(0, +0),!1,null,u,v));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,v-.5*n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,u,z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+u),n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,n));c.push(new mxConnectionConstraint(new mxPoint(1,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,l,z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*(l+u),z));c.push(new mxConnectionConstraint(new mxPoint(0, +0),!1,null,A,z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*A,n));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,n));c.push(new mxConnectionConstraint(new mxPoint(0,.5),!1));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,0,z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,.5*A,z));c.push(new mxConnectionConstraint(new mxPoint(0,0),!1,null,A,n));return c};ca.prototype.constraints=null;L.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0, +.25),!1),new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(0,.75),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(.7,.1),!1),new mxConnectionConstraint(new mxPoint(.7,.9),!1)];W.prototype.constraints=[new mxConnectionConstraint(new mxPoint(.175,.25),!1),new mxConnectionConstraint(new mxPoint(.25,.5),!1),new mxConnectionConstraint(new mxPoint(.175,.75),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1),new mxConnectionConstraint(new mxPoint(.7, +.1),!1),new mxConnectionConstraint(new mxPoint(.7,.9),!1)];oa.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1)];sa.prototype.constraints=[new mxConnectionConstraint(new mxPoint(0,.5),!1),new mxConnectionConstraint(new mxPoint(1,.5),!1)]})();function Actions(b){this.editorUi=b;this.actions={};this.init()} Actions.prototype.init=function(){function b(D){p.escape();var H=p.getDeletableCells(p.getSelectionCells());null!=H&&0Math.abs(D-p.view.scale)&&H==p.container.scrollLeft&&N==p.container.scrollTop&&d==p.view.translate.x&&f==p.view.translate.y&&m.actions.get(p.pageVisible?"fitPage":