
Toolbar.count=0;function Toolbar(){this.index=Toolbar.count++;this.items=new Array();this.buttons=new Object();this.imagesPath="";this.buttonWidth=10;this.buttonHeight=10;this.onButtonClick=null;this.classToolbar="toolbar";this.classToolbarButton="toolbarButton";this.classToolbarButtonHover="toolbarButton TBHover";this.classToolbarButtonSelected="toolbarButton TBSelected";this.classToolbarSeparator="toolbarSeparator";}
Toolbar.prototype.setButtonSize=function(width,height){this.buttonWidth=width;this.buttonHeight=height;}
Toolbar.prototype.setImagesPath=function(imagesPath){this.imagesPath=imagesPath;}
Toolbar.prototype.addButton=function(command,description,image,value){var button=new ToolbarButton(command,description,(this.imagesPath+image),false,(this.buttonWidth-4),(this.buttonHeight-4),value);button.toolbar=this;button.index=this.items.length;this.items[button.index]=button;this.buttons[command]=button;return button;}
Toolbar.prototype.addSeparator=function(){var separator=new ToolbarSeparator(this.buttonHeight);separator.toolbar=this;this.items[this.items.length]=separator;return separator;}
Toolbar.prototype.toggleCommands=function(commands){for(var i=0;i<commands.length;i++){var command=commands[i][0];var enable=commands[i][1];var button=this.buttons[command];if(enable){if(button.disabled)button.enable();}else{if(!button.disabled)button.disable();}}}
Toolbar.prototype.render=function(parentNode){var toolbarDiv=document.createElement("div");toolbarDiv.id="toolbar"+this.index;toolbarDiv.className=this.classToolbar;var table=document.createElement("table");table.border=0;table.cellPadding=0;table.cellSpacing=0;var tbody=document.createElement("tbody");var row=document.createElement("tr");for(var i=0;i<this.items.length;i++){var column=document.createElement("td");this.items[i].render(column);row.appendChild(column);}
tbody.appendChild(row);table.appendChild(tbody);toolbarDiv.appendChild(table);parentNode.appendChild(toolbarDiv);this.tableToolbar=table;}
Toolbar.prototype.renderItem=function(toolbarItem){var column=document.createElement("td");toolbarItem.render(column);this.tableToolbar.rows[0].appendChild(column);}
function ToolbarButton(command,description,image,disabled,width,height,value){this.command=command;this.description=description;this.image=image;this.width=width;this.height=height;this.disabled=disabled;this.value=value;this.toolbar=null;this.index=-1;this.divElement=null;this.imgElement=null;}
ToolbarButton.prototype.render=function(parentNode){var button=this;var buttonDiv=document.createElement("div");buttonDiv.id="toolbar"+this.toolbar.index+"button"+this.index;buttonDiv.title=this.description;buttonDiv.style.textAlign="center";buttonDiv.style.padding="2px";buttonDiv.style.width=this.width+"px";buttonDiv.style.height=this.height+"px";buttonDiv.className=this.toolbar.classToolbarButton;buttonDiv.onmouseover=function(e){button.onMouseOver(e);};buttonDiv.onmouseout=function(e){button.onMouseOut(e);};buttonDiv.onmousedown=function(e){button.onMouseDown(e);};buttonDiv.onmouseup=function(e){button.onMouseUp(e);};buttonDiv.onclick=function(e){button.onClick(e);};this.divElement=buttonDiv;var buttonImage=new Image();buttonImage.src=this.image;buttonImage.style.width=this.width+"px";buttonImage.style.height=this.height+"px";this.imgElement=buttonImage;if(this.disabled)this.disable();buttonDiv.appendChild(buttonImage);parentNode.appendChild(buttonDiv);}
ToolbarButton.prototype.onMouseOver=function(e){if(this.disabled)return;this.divElement.className=this.toolbar.classToolbarButtonHover;this.divElement.style.padding="2px";}
ToolbarButton.prototype.onMouseOut=function(e){if(this.disabled)return;this.divElement.className=this.toolbar.classToolbarButton;this.divElement.style.padding="2px";}
ToolbarButton.prototype.onMouseDown=function(e){if(this.disabled)return;if(!e)var e=window.event
var mouseButton=(e.which)?e.which:e.button
if(mouseButton!=1)return;this.divElement.className=this.toolbar.classToolbarButtonSelected;this.divElement.style.paddingTop="3px";this.divElement.style.paddingLeft="3px";this.divElement.style.paddingBottom="1px";this.divElement.style.paddingRight="1px";}
ToolbarButton.prototype.onMouseUp=function(e){if(this.disabled)return;if(!e)var e=window.event
var mouseButton=(e.which)?e.which:e.button
if(mouseButton!=1)return;this.divElement.className=this.toolbar.classToolbarButtonHover;this.divElement.style.padding="2px";}
ToolbarButton.prototype.onClick=function(e){if(this.disabled)return;if(!e)var e=window.event;if(this.toolbar.onButtonClick)this.toolbar.onButtonClick(e,this);}
ToolbarButton.prototype.enable=function(){if(!this.disabled)return;this.divElement.disabled=false;setOpacity(this.divElement,10);this.disabled=false;}
ToolbarButton.prototype.disable=function(){if(this.disabled)return;this.divElement.disabled=true;setOpacity(this.divElement,4);this.disabled=true;}
function ToolbarSeparator(height){this.height=height;this.toolbar=null;}
ToolbarSeparator.prototype.render=function(parentNode){var separatorDiv=document.createElement("div");separatorDiv.style.marginTop="0px";separatorDiv.style.marginLeft="3px";separatorDiv.style.marginBottom="0px";separatorDiv.style.marginRight="3px";separatorDiv.style.width="1px";separatorDiv.style.height=this.height+"px";separatorDiv.className=this.toolbar.classToolbarSeparator;parentNode.appendChild(separatorDiv);}