blob: 211f0fed35049463b2610ba7322f4930f52059cf [file] [log] [blame]
/*
Copyright (c) 2004-2009, The Dojo Foundation All Rights Reserved.
Available via Academic Free License >= 2.1 OR the modified BSD license.
see: http://dojotoolkit.org/license for details
*/
if(!dojo._hasResource["dojox.drawing.ui.dom.Toolbar"]){
dojo._hasResource["dojox.drawing.ui.dom.Toolbar"]=true;
dojo.provide("dojox.drawing.ui.dom.Toolbar");
dojo.deprecated("dojox.drawing.ui.dom.Toolbar","It may not even make it to the 1.4 release.",1.4);
(function(){
dojo.declare("dojox.drawing.ui.dom.Toolbar",[],{baseClass:"drawingToolbar",buttonClass:"drawingButton",iconClass:"icon",constructor:function(_1,_2){
dojo.addOnLoad(this,function(){
this.domNode=dojo.byId(_2);
dojo.addClass(this.domNode,this.baseClass);
this.parse();
});
},createIcon:function(_3,_4){
var _5=_4&&_4.setup?_4.setup:{};
if(_5.iconClass){
var _6=_5.iconClass?_5.iconClass:"iconNone";
var _7=_5.tooltip?_5.tooltip:"Tool";
var _8=dojo.create("div",{title:_7},_3);
dojo.addClass(_8,this.iconClass);
dojo.addClass(_8,_6);
dojo.connect(_3,"mouseup",function(_9){
dojo.stopEvent(_9);
dojo.removeClass(_3,"active");
});
dojo.connect(_3,"mouseover",function(_a){
dojo.stopEvent(_a);
dojo.addClass(_3,"hover");
});
dojo.connect(_3,"mousedown",this,function(_b){
dojo.stopEvent(_b);
dojo.addClass(_3,"active");
});
dojo.connect(_3,"mouseout",this,function(_c){
dojo.stopEvent(_c);
dojo.removeClass(_3,"hover");
});
}
},createTool:function(_d){
_d.innerHTML="";
var _e=dojo.attr(_d,"tool");
this.toolNodes[_e]=_d;
dojo.attr(_d,"tabIndex",1);
var _f=dojo.getObject(_e);
this.createIcon(_d,_f);
this.drawing.registerTool(_e,_f);
dojo.connect(_d,"mouseup",this,function(evt){
dojo.stopEvent(evt);
dojo.removeClass(_d,"active");
this.onClick(_e);
});
dojo.connect(_d,"mouseover",function(evt){
dojo.stopEvent(evt);
dojo.addClass(_d,"hover");
});
dojo.connect(_d,"mousedown",this,function(evt){
dojo.stopEvent(evt);
dojo.addClass(_d,"active");
});
dojo.connect(_d,"mouseout",this,function(evt){
dojo.stopEvent(evt);
dojo.removeClass(_d,"hover");
});
},parse:function(){
var _10=dojo.attr(this.domNode,"drawingId");
this.drawing=dojox.drawing.util.common.byId(_10);
!this.drawing&&console.error("Drawing not found based on 'drawingId' in Toolbar. ");
this.toolNodes={};
var _11;
dojo.query(">",this.domNode).forEach(function(_12,i){
_12.className=this.buttonClass;
var _13=dojo.attr(_12,"tool");
var _14=dojo.attr(_12,"action");
var _15=dojo.attr(_12,"plugin");
if(_13){
if(i==0||dojo.attr(_12,"selected")=="true"){
_11=_13;
}
this.createTool(_12);
}else{
if(_15){
var p={name:_15,options:{}},opt=dojo.attr(_12,"options");
if(opt){
p.options=eval("("+opt+")");
}
p.options.node=_12;
_12.innerHTML="";
this.drawing.addPlugin(p);
this.createIcon(_12,dojo.getObject(dojo.attr(_12,"plugin")));
}
}
},this);
this.drawing.initPlugins();
dojo.connect(this.drawing,"setTool",this,"onSetTool");
this.drawing.setTool(_11);
},onClick:function(_16){
this.drawing.setTool(_16);
},onSetTool:function(_17){
for(var n in this.toolNodes){
if(n==_17){
dojo.addClass(this.toolNodes[_17],"selected");
this.toolNodes[_17].blur();
}else{
dojo.removeClass(this.toolNodes[n],"selected");
}
}
}});
})();
}