)}); function mxOrgChartLayout(b,a,h,d){mxGraphLayout.call(this,b);this.correctY=!1;switch(parseInt(a)){case 0:this.branchOptimizer=mxOrgChartLayout.prototype.BRANCH_OPT_LINEAR;this.correctY=!0;break;case 1:this.branchOptimizer=mxOrgChartLayout.prototype.BRANCH_OPT_HANGER2;this.correctY=!0;break;case 3:this.branchOptimizer=mxOrgChartLayout.prototype.BRANCH_OPT_FISHBONE1;break;case 4:this.branchOptimizer=mxOrgChartLayout.prototype.BRANCH_OPT_FISHBONE2;break;case 5:this.branchOptimizer=mxOrgChartLayout.prototype.BRANCH_OPT_1COLUMN_L; break;case 6:this.branchOptimizer=mxOrgChartLayout.prototype.BRANCH_OPT_1COLUMN_R;break;case 7:this.branchOptimizer=mxOrgChartLayout.prototype.BRANCH_OPT_SMART;break;default:this.branchOptimizer=mxOrgChartLayout.prototype.BRANCH_OPT_HANGER4,this.correctY=!0}this.parentChildSpacing=0=a)return"vstack";for(var h=0,d=0;d=h?4>=a?"vstack":8>=a?"fishbone1":"fishbone2":"hanger4"},boxSizeFunc:function(b){b=RPOrgChart.diagram.getBoxes().getBoxesByDataId().getItem(b).Id;return RPOrgChart.diagram.getBoxes().getBoxesById().getItem(b).Size},getBoxElementSize:function(b){b=RPOrgChart.graph.model.cells[b].geometry; return new OrgChart.Layout.Size.$ctor1(b.width,b.height)},positionBoxes:function(){var b=RPOrgChart.diagram,a=new OrgChart.Layout.LayoutState(b);a.addOperationChanged(RPOrgChart.onLayoutStateChanged);a.BoxSizeFunc=Bridge.fn.bind(this,RPOrgChart.boxSizeFunc,null,!0);a.LayoutOptimizerFunc=Bridge.fn.bind(this,RPOrgChart.getBranchOptimizerFunc(),null,!0);OrgChart.Layout.LayoutAlgorithm.Apply(a);a=OrgChart.Layout.LayoutAlgorithm.ComputeBranchVisualBoundingRect(b.getVisualTree());var h=-a.getLeft()+a.getTop(), d=RPOrgChart.graph,x=d.model.cells,u=[];b.getVisualTree().IterateParentFirst(function(f){if(f.State.IsHidden)return!1;var B=f.Element;if(B.getIsDataBound()){B=x[B.DataId];var C=B.geometry.clone();C.x=f.State.TopLeft.X+h;C.y=f.State.TopLeft.Y;d.model.setGeometry(B,C)}return!0});b.getVisualTree().IterateParentFirst(function(f){var B=RPOrgChart.correctY?Math.min(0,-(RPOrgChart.parentChildSpacing/2)+5):0;if(null!=f.State.Connector){var C=function(l,m){for(var v=l.geometry.clone(),D=0;m&&D=l.x&&m.x<=l.x+l.width&&m.y>=l.y&&m.y<=l.y+l.height},n=x[f.Element.DataId],k=d.getOutgoingEdges(n);k={};for(var r=0;rA||t==A&&p>z){var e=c.From;c.From=c.To;c.To=e}}for(r=0;r=F&&E<=p&&w>=p?(w=new mxPoint(p,F),u.push(w),w.mark=c.mark|g.mark,g=k[p+","+F],null!=g?g.mark|=w.mark:k[p+","+F]=w):t==A&&p<=E&&z>=E&&F<=t&&J>=t&&(w=new mxPoint(E,t),u.push(w),w.mark=c.mark|g.mark,g=k[E+","+t],null!=g?g.mark|=w.mark:k[E+","+t]=w)}}var y=[],q;for(q in k)y.push(k[q]);y.sort(function(l,m){var v=l.y-m.y;return 0==v?l.x-m.x:v});k=d.getOutgoingEdges(n);if(2==y.length&&1==k.length)C(k[0],y);else{f=function(l){for(var m=0;mc;)if(c++,p=f(r),null==p)n.pop(),r=n[n.length-1];else if(n.push(p),r=p,I(q,p))break;if(2c&&n[q].x