62 lines
2.0 KiB
JavaScript
62 lines
2.0 KiB
JavaScript
//>>built
|
|
define("dojox/treemap/DrillDownUp",["dojo/_base/lang","dojo/_base/event","dojo/_base/declare","dojo/dom-geometry","dojo/dom-construct","dojo/dom-style","dojo/_base/fx","dojo/has!touch?dojox/gesture/tap"],function(_1,_2,_3,_4,_5,_6,fx,_7){
|
|
return _3("dojox.treemap.DrillDownUp",null,{postCreate:function(){
|
|
this.inherited(arguments);
|
|
this.connect(this.domNode,"dblclick",this._onDoubleClick);
|
|
if(_7){
|
|
this.connect(this.domNode,_7.doubletap,this._onDoubleClick);
|
|
}
|
|
},_onDoubleClick:function(e){
|
|
var _8=this._getRendererFromTarget(e.target);
|
|
if(_8.item){
|
|
var _9=_8.item;
|
|
if(this._isLeaf(_9)){
|
|
_9=_8.parentItem;
|
|
_8=this.itemToRenderer[this.getIdentity(_9)];
|
|
if(_8==null){
|
|
return;
|
|
}
|
|
}
|
|
if(this.rootItem==_9){
|
|
this.drillUp(_8);
|
|
}else{
|
|
this.drillDown(_8);
|
|
}
|
|
_2.stop(e);
|
|
}
|
|
},drillUp:function(_a){
|
|
var _b=_a.item;
|
|
this.domNode.removeChild(_a);
|
|
var _c=this._getRenderer(_b).parentItem;
|
|
this.set("rootItem",_c);
|
|
this.validateRendering();
|
|
_5.place(_a,this.domNode);
|
|
_6.set(_a,"zIndex",40);
|
|
var _d=_4.position(this._getRenderer(_b),true);
|
|
var _e=_4.getMarginBox(this.domNode);
|
|
fx.animateProperty({node:_a,duration:500,properties:{left:{end:_d.x-_e.l},top:{end:_d.y-_e.t},height:{end:_d.h},width:{end:_d.w}},onAnimate:_1.hitch(this,function(_f){
|
|
var box=_4.getContentBox(_a);
|
|
this._layoutGroupContent(_a,box.w,box.h,_a.level+1,false,true);
|
|
}),onEnd:_1.hitch(this,function(){
|
|
this.domNode.removeChild(_a);
|
|
})}).play();
|
|
},drillDown:function(_10){
|
|
var box=_4.getMarginBox(this.domNode);
|
|
var _11=_10.item;
|
|
var _12=_10.parentNode;
|
|
var _13=_4.position(_10,true);
|
|
_12.removeChild(_10);
|
|
_5.place(_10,this.domNode);
|
|
_6.set(_10,{left:(_13.x-box.l)+"px",top:(_13.y-box.t)+"px"});
|
|
var _14=_6.get(_10,"zIndex");
|
|
_6.set(_10,"zIndex",40);
|
|
fx.animateProperty({node:_10,duration:500,properties:{left:{end:box.l},top:{end:box.t},height:{end:box.h},width:{end:box.w}},onAnimate:_1.hitch(this,function(_15){
|
|
var _16=_4.getContentBox(_10);
|
|
this._layoutGroupContent(_10,_16.w,_16.h,_10.level+1,false);
|
|
}),onEnd:_1.hitch(this,function(){
|
|
_6.set(_10,"zIndex",_14);
|
|
this.set("rootItem",_11);
|
|
})}).play();
|
|
}});
|
|
});
|