You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by he...@apache.org on 2006/11/13 23:55:14 UTC

svn commit: r474551 [46/49] - in /struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo: ./ src/ src/alg/ src/animation/ src/cal/ src/charting/ src/charting/svg/ src/charting/vml/ src/collections/ src/crypto/ src/data/ src/data/cs...

Modified: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/svg/Chart.js
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/svg/Chart.js?view=diff&rev=474551&r1=474550&r2=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/svg/Chart.js (original)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/svg/Chart.js Mon Nov 13 14:54:45 2006
@@ -1,5 +1,5 @@
 /*
-	Copyright (c) 2004-2005, The Dojo Foundation
+	Copyright (c) 2004-2006, The Dojo Foundation
 	All Rights Reserved.
 
 	Licensed under the Academic Free License version 2.1 or above OR the
@@ -12,367 +12,364 @@
 
 dojo.require("dojo.widget.HtmlWidget");
 dojo.require("dojo.widget.Chart");
+dojo.require("dojo.html.layout");
 dojo.require("dojo.math");
-dojo.require("dojo.html");
 dojo.require("dojo.svg");
-dojo.require("dojo.graphics.color");
+dojo.require("dojo.gfx.color");
 
-dojo.widget.svg.Chart=function(){
-	dojo.widget.Chart.call(this);
-	dojo.widget.HtmlWidget.call(this);
-};
-dojo.inherits(dojo.widget.svg.Chart, dojo.widget.HtmlWidget);
-dojo.lang.extend(dojo.widget.svg.Chart, {
-	//	widget props
-	templatePath:null,
-	templateCssPath:null,
-
-	//	state
-	_isInitialized:false,
-	hasData:false,
-
-	//	chart props
-	vectorNode:null,
-	plotArea:null,
-	dataGroup:null,
-	axisGroup:null,
-
-	properties:{
-		height:400,	//	defaults, will resize to the domNode.
-		width:600,
-		plotType:null,
-		padding:{
-			top:10,
-			bottom:2,
-			left:60,
-			right:30
-		},
-		axes:{
-			x:{
-				plotAt:0,
-				label:"",
-				unitLabel:"",
-				unitType:Number,
-				nUnitsToShow:10,
-				range:{
-					min:0,
-					max:200
-				}
+dojo.require("dojo.json");
+
+dojo.widget.defineWidget(
+	"dojo.widget.svg.Chart",
+	[dojo.widget.HtmlWidget, dojo.widget.Chart],
+	function(){
+		//	summary
+		//	initializes the SVG version of Chart.
+		this.templatePath=null;
+		this.templateCssPath=null;
+		this._isInitialize=false;
+		this.hasData=false;
+		this.vectorNode=null;
+		this.plotArea=null;
+		this.dataGroup=null;
+		this.axisGroup=null;
+		this.properties={
+			height:0,	//	defaults, will resize to the domNode.
+			width:0,
+			defaultWidth:600,
+			defaultHeight:400,
+			plotType:null,
+			padding:{
+				top:10,
+				bottom:2,
+				left:60,
+				right:30
 			},
-			y:{
-				plotAt:0,
-				label:"",
-				unitLabel:"",
-				unitType:Number,
-				nUnitsToShow:10,
-				range:{
-					min:0,
-					max:200
+			axes:{
+				x:{
+					plotAt:0,
+					label:"",
+					unitLabel:"",
+					unitType:Number,
+					nUnitsToShow:10,
+					range:{
+						min:0,
+						max:200
+					}
+				},
+				y:{
+					plotAt:0,
+					label:"",
+					unitLabel:"",
+					unitType:Number,
+					nUnitsToShow:10,
+					range:{
+						min:0,
+						max:200
+					}
 				}
 			}
-		}
+		};
 	},
-	
-	fillInTemplate:function(args,frag){
-		this.parseData();
-		this.initialize();
-		this.render();
-	},
-	parseData:function(){
-	},
-	initialize:function(){
-		//	begin by grabbing the table, and reading it in.
-		var table=this.domNode.getElementsByTagName("table")[0];
-		if (!table) return;
-		
-		var bRangeX=false;
-		var bRangeY=false;
-		
-		//	properties off the table
-		if (table.getAttribute("width")) this.properties.width=table.getAttribute("width");
-		if (table.getAttribute("height")) this.properties.height=table.getAttribute("height");
-		if (table.getAttribute("plotType")) this.properties.plotType=table.getAttribute("plotType");
-		if (table.getAttribute("padding")){
-			if (table.getAttribute("padding").indexOf(",") > -1)
-				var p=table.getAttribute("padding").split(","); 
-			else var p=table.getAttribute("padding").split(" ");
-			if (p.length==1){
-				var pad=parseFloat(p[0]);
-				this.properties.padding.top=pad;
-				this.properties.padding.right=pad;
-				this.properties.padding.bottom=pad;
-				this.properties.padding.left=pad;
-			} else if(p.length==2){
-				var padV=parseFloat(p[0]);
-				var padH=parseFloat(p[1]);
-				this.properties.padding.top=padV;
-				this.properties.padding.right=padH;
-				this.properties.padding.bottom=padV;
-				this.properties.padding.left=padH;
-			} else if(p.length==4){
-				this.properties.padding.top=parseFloat(p[0]);
-				this.properties.padding.right=parseFloat(p[1]);
-				this.properties.padding.bottom=parseFloat(p[2]);
-				this.properties.padding.left=parseFloat(p[3]);
+	{
+		parseProperties:function(/* HTMLElement */node){
+			//	summary
+			//	Parse the properties off the main tag
+			var bRangeX=false;
+			var bRangeY=false;
+			if (node.getAttribute("width")){ 
+				this.properties.width=node.getAttribute("width");
 			}
-		}
-		if (table.getAttribute("rangeX")){
-			var p=table.getAttribute("rangeX");
-			if (p.indexOf(",")>-1) p=p.split(",");
-			else p=p.split(" ");
-			this.properties.axes.x.range.min=parseFloat(p[0]);
-			this.properties.axes.x.range.max=parseFloat(p[1]);
-			bRangeX=true;
-		}
-		if (table.getAttribute("rangeY")){
-			var p=table.getAttribute("rangeY");
-			if (p.indexOf(",")>-1) p=p.split(",");
-			else p=p.split(" ");
-			this.properties.axes.y.range.min=parseFloat(p[0]);
-			this.properties.axes.y.range.max=parseFloat(p[1]);
-			bRangeY=true;
-		}
+			if (node.getAttribute("height")){
+				this.properties.height=node.getAttribute("height");
+			}
+			if (node.getAttribute("plotType")){
+				this.properties.plotType=node.getAttribute("plotType");
+			}
+			if (node.getAttribute("padding")){
+				if (node.getAttribute("padding").indexOf(",") > -1)
+					var p=node.getAttribute("padding").split(","); 
+				else var p=node.getAttribute("padding").split(" ");
+				if (p.length==1){
+					var pad=parseFloat(p[0]);
+					this.properties.padding.top=pad;
+					this.properties.padding.right=pad;
+					this.properties.padding.bottom=pad;
+					this.properties.padding.left=pad;
+				} else if(p.length==2){
+					var padV=parseFloat(p[0]);
+					var padH=parseFloat(p[1]);
+					this.properties.padding.top=padV;
+					this.properties.padding.right=padH;
+					this.properties.padding.bottom=padV;
+					this.properties.padding.left=padH;
+				} else if(p.length==4){
+					this.properties.padding.top=parseFloat(p[0]);
+					this.properties.padding.right=parseFloat(p[1]);
+					this.properties.padding.bottom=parseFloat(p[2]);
+					this.properties.padding.left=parseFloat(p[3]);
+				}
+			}
+			if (node.getAttribute("rangeX")){
+				var p=node.getAttribute("rangeX");
+				if (p.indexOf(",")>-1) p=p.split(",");
+				else p=p.split(" ");
+				this.properties.axes.x.range.min=parseFloat(p[0]);
+				this.properties.axes.x.range.max=parseFloat(p[1]);
+				bRangeX=true;
+			}
+			if (node.getAttribute("rangeY")){
+				var p=node.getAttribute("rangeY");
+				if (p.indexOf(",")>-1) p=p.split(",");
+				else p=p.split(" ");
+				this.properties.axes.y.range.min=parseFloat(p[0]);
+				this.properties.axes.y.range.max=parseFloat(p[1]);
+				bRangeY=true;
+			}
+			return { rangeX:bRangeX, rangeY:bRangeY };
+		},
+		setAxesPlot:function(/* HTMLElement */table){
+			//	summary
+			//	figure out where to plot the axes
+			if (table.getAttribute("axisAt")){
+				var p=table.getAttribute("axisAt");
+				if (p.indexOf(",")>-1) p=p.split(",");
+				else p=p.split(" ");
+				
+				//	x axis
+				if (!isNaN(parseFloat(p[0]))){
+					this.properties.axes.x.plotAt=parseFloat(p[0]);
+				} else if (p[0].toLowerCase()=="ymin"){
+					this.properties.axes.x.plotAt=this.properties.axes.y.range.min;
+				} else if (p[0].toLowerCase()=="ymax"){
+					this.properties.axes.x.plotAt=this.properties.axes.y.range.max;
+				}
 
-		var thead=table.getElementsByTagName("thead")[0];
-		var tbody=table.getElementsByTagName("tbody")[0];
-		if(!(thead&&tbody)) dojo.raise("dojo.widget.Chart: supplied table must define a head and a body.");
+				// y axis
+				if (!isNaN(parseFloat(p[1]))){
+					this.properties.axes.y.plotAt=parseFloat(p[1]);
+				} else if (p[1].toLowerCase()=="xmin"){
+					this.properties.axes.y.plotAt=this.properties.axes.x.range.min;
+				} else if (p[1].toLowerCase()=="xmax"){
+					this.properties.axes.y.plotAt=this.properties.axes.x.range.max;
+				}
+			} else {
+				this.properties.axes.x.plotAt=this.properties.axes.y.range.min;
+				this.properties.axes.y.plotAt=this.properties.axes.x.range.min;
+			}
+		},
+		drawVectorNode:function(){
+			//	summary
+			//	Draws the main canvas for the chart
+			dojo.svg.g.suspend();		
+			if(this.vectorNode) this.destroy();
+			this.vectorNode=document.createElementNS(dojo.svg.xmlns.svg, "svg");
+			this.vectorNode.setAttribute("width", this.properties.width);
+			this.vectorNode.setAttribute("height", this.properties.height);
+			dojo.svg.g.resume();
+		},
+		drawPlotArea:function(){
+			//	summary
+			//	Draws the plot area for the chart
+			dojo.svg.g.suspend();		
+			if(this.plotArea){
+				this.plotArea.parentNode.removeChild(this.plotArea);
+				this.plotArea=null;
+			}
+			var defs = document.createElementNS(dojo.svg.xmlns.svg, "defs");
+			var clip = document.createElementNS(dojo.svg.xmlns.svg, "clipPath");
+			clip.setAttribute("id","plotClip"+this.widgetId);
+			var rect = document.createElementNS(dojo.svg.xmlns.svg, "rect");		
+			rect.setAttribute("x", this.properties.padding.left);
+			rect.setAttribute("y", this.properties.padding.top);
+			rect.setAttribute("width", this.properties.width-this.properties.padding.left-this.properties.padding.right);
+			rect.setAttribute("height", this.properties.height-this.properties.padding.top-this.properties.padding.bottom);
+			clip.appendChild(rect);
+			defs.appendChild(clip);
+			this.vectorNode.appendChild(defs);
+
+			//	the plot background.
+			this.plotArea = document.createElementNS(dojo.svg.xmlns.svg, "g");
+			this.vectorNode.appendChild(this.plotArea);
+			var rect = document.createElementNS(dojo.svg.xmlns.svg, "rect");		
+			rect.setAttribute("x", this.properties.padding.left);
+			rect.setAttribute("y", this.properties.padding.top);
+			rect.setAttribute("width", this.properties.width-this.properties.padding.left-this.properties.padding.right);
+			rect.setAttribute("height", this.properties.height-this.properties.padding.top-this.properties.padding.bottom);
+			rect.setAttribute("fill", "#fff");
+			this.plotArea.appendChild(rect);
+			dojo.svg.g.resume();
+		},
+		drawDataGroup:function(){
+			//	summary
+			//	Draws the data group for the chart
+			dojo.svg.g.suspend();		
+			if(this.dataGroup){
+				this.dataGroup.parentNode.removeChild(this.dataGroup);
+				this.dataGroup=null;
+			}
+			this.dataGroup = document.createElementNS(dojo.svg.xmlns.svg, "g");
+			this.dataGroup.setAttribute("style","clip-path:url(#plotClip"+this.widgetId+");");
+			this.plotArea.appendChild(this.dataGroup);
+			dojo.svg.g.resume();
+		},
+		drawAxes:function(){
+			//	summary
+			//	Draws the axes for the chart
+			dojo.svg.g.suspend();		
+			if(this.axisGroup){
+				this.axisGroup.parentNode.removeChild(this.axisGroup);
+				this.axisGroup=null;
+			}
+			//	axis group
+			this.axisGroup = document.createElementNS(dojo.svg.xmlns.svg, "g");
+			this.plotArea.appendChild(this.axisGroup);
 
-		//	set up the series.
-		var columns=thead.getElementsByTagName("tr")[0].getElementsByTagName("th");	//	should be <tr><..>
-		
-		//	assume column 0 == X
-		for (var i=1; i<columns.length; i++){
-			var key="column"+i;
-			var label=columns[i].innerHTML;
-			var plotType=columns[i].getAttribute("plotType")||"line";
-			var color=columns[i].getAttribute("color");
-			var ds=new dojo.widget.Chart.DataSeries(key,label,plotType,color);
-			this.series.push(ds);
-		}
+			//	x axis
+			var stroke=1;
+			var line = document.createElementNS(dojo.svg.xmlns.svg, "line");
+			var y=dojo.widget.svg.Chart.Plotter.getY(this.properties.axes.x.plotAt, this);
+			line.setAttribute("y1", y);
+			line.setAttribute("y2", y);
+			line.setAttribute("x1",this.properties.padding.left-stroke);
+			line.setAttribute("x2",this.properties.width-this.properties.padding.right);
+			line.setAttribute("style","stroke:#000;stroke-width:"+stroke+";");
+			this.axisGroup.appendChild(line);
+			
+			//	x axis units.
+			//	(min and max)
+			var textSize=10;
+			var text = document.createElementNS(dojo.svg.xmlns.svg, "text");
+			text.setAttribute("x", this.properties.padding.left);
+			text.setAttribute("y", this.properties.height-this.properties.padding.bottom+textSize+2);
+			text.setAttribute("style", "text-anchor:middle;font-size:"+textSize+"px;fill:#000;");
+			text.appendChild(document.createTextNode(dojo.math.round(parseFloat(this.properties.axes.x.range.min),2)));
+			this.axisGroup.appendChild(text);
+			
+			var text = document.createElementNS(dojo.svg.xmlns.svg, "text");
+			text.setAttribute("x", this.properties.width-this.properties.padding.right-(textSize/2));
+			text.setAttribute("y", this.properties.height-this.properties.padding.bottom+textSize+2);
+			text.setAttribute("style", "text-anchor:middle;font-size:"+textSize+"px;fill:#000;");
+			text.appendChild(document.createTextNode(dojo.math.round(parseFloat(this.properties.axes.x.range.max),2)));
+			this.axisGroup.appendChild(text);	
+			
+			//	y axis
+			var line=document.createElementNS(dojo.svg.xmlns.svg, "line");
+			var x=dojo.widget.svg.Chart.Plotter.getX(this.properties.axes.y.plotAt, this);
+			line.setAttribute("x1", x);
+			line.setAttribute("x2", x);
+			line.setAttribute("y1", this.properties.padding.top);
+			line.setAttribute("y2", this.properties.height-this.properties.padding.bottom);
+			line.setAttribute("style", "stroke:#000;stroke-width:"+stroke+";");
+			this.axisGroup.appendChild(line);
+
+			//	y axis units
+			var text = document.createElementNS(dojo.svg.xmlns.svg, "text");
+			text.setAttribute("x", this.properties.padding.left-4);
+			text.setAttribute("y", this.properties.height-this.properties.padding.bottom);
+			text.setAttribute("style", "text-anchor:end;font-size:"+textSize+"px;fill:#000;");
+			text.appendChild(document.createTextNode(dojo.math.round(parseFloat(this.properties.axes.y.range.min),2)));
+			this.axisGroup.appendChild(text);
+			
+			var text = document.createElementNS(dojo.svg.xmlns.svg, "text");
+			text.setAttribute("x", this.properties.padding.left-4);
+			text.setAttribute("y", this.properties.padding.top+(textSize/2));
+			text.setAttribute("style", "text-anchor:end;font-size:"+textSize+"px;fill:#000;");
+			text.appendChild(document.createTextNode(dojo.math.round(parseFloat(this.properties.axes.y.range.max),2)));
+			this.axisGroup.appendChild(text);	
+			dojo.svg.g.resume();
+		},
 
-		//	ok, get the values.
-		var rows=tbody.getElementsByTagName("tr");
-		var xMin=Number.MAX_VALUE,xMax=Number.MIN_VALUE;
-		var yMin=Number.MAX_VALUE,yMax=Number.MIN_VALUE;
-		var ignore = ["accesskey","align","bgcolor","class","colspan","height","id","nowrap","rowspan","style","tabindex","title","valign","width"];
-
-		for(var i=0; i<rows.length; i++){
-			var row=rows[i];
-			var cells=row.getElementsByTagName("td");
-			var x=Number.MIN_VALUE;
-			for (var j=0; j<cells.length; j++){
-				if (j==0){
-					x=parseFloat(cells[j].innerHTML);
-					xMin=Math.min(xMin, x);
-					xMax=Math.max(xMax, x);
-				} else {
-					var ds=this.series[j-1];
-					var y=parseFloat(cells[j].innerHTML);
-					yMin=Math.min(yMin,y);
-					yMax=Math.max(yMax,y);
-					var o={x:x, value:y};
-					var attrs=cells[j].attributes;
-					for(var k=0; k<attrs.length; k++){
-						var attr=attrs.item(k);
-						var bIgnore=false;
-						for (var l=0; l<ignore.length; l++){
-							if (attr.nodeName.toLowerCase()==ignore[l]){
-								bIgnore=true;
-								break;
-							}
-						}
-						if(!bIgnore) o[attr.nodeName]=attr.nodeValue;
-					}
-					ds.add(o);
+		init:function(){
+			//	summary
+			//	Initialize the chart
+			if(!this.properties.width || !this.properties.height){
+				var box=dojo.html.getContentBox(this.domNode);
+				if(!this.properties.width){
+					this.properties.width=(box.width<32)?this.properties.defaultWidth:box.width;
+				}
+				if(!this.properties.height){
+					this.properties.height=(box.height<32)?this.properties.defaultHeight:box.height;
 				}
 			}
-		}
 
-		//	fix the axes
-		if(!bRangeX){
-			this.properties.axes.x.range={min:xMin, max:xMax};
-		}
-		if(!bRangeY){
-			this.properties.axes.y.range={min:yMin, max:yMax};
-		}
-
-		//	where to plot the axes
-		if (table.getAttribute("axisAt")){
-			var p=table.getAttribute("axisAt");
-			if (p.indexOf(",")>-1) p=p.split(",");
-			else p=p.split(" ");
+			//	set up the chart; each is a method so that it can be selectively overridden.
+			this.drawVectorNode();
+			this.drawPlotArea();
+			this.drawDataGroup();
+			this.drawAxes();
+
+			//	this is last.
+			this.domNode.appendChild(this.vectorNode);
+			this.assignColors();
+			this._isInitialized=true;
+		},
+		destroy:function(){
+			//	summary
+			//	Node cleanup
+			while(this.domNode.childNodes.length>0){
+				this.domNode.removeChild(this.domNode.childNodes.item(0));
+			}
+			this.vectorNode=this.plotArea=this.dataGroup=this.axisGroup=null;
+		},
+		render:function(){
+			//	summary
+			//	Draws the data on the chart
+			dojo.svg.g.suspend();
 			
-			//	x axis
-			if (!isNaN(parseFloat(p[0]))){
-				this.properties.axes.x.plotAt=parseFloat(p[0]);
-			} else if (p[0].toLowerCase()=="ymin"){
-				this.properties.axes.x.plotAt=this.properties.axes.y.range.min;
-			} else if (p[0].toLowerCase()=="ymax"){
-				this.properties.axes.x.plotAt=this.properties.axes.y.range.max;
+			if (this.dataGroup){
+				while(this.dataGroup.childNodes.length>0){
+					this.dataGroup.removeChild(this.dataGroup.childNodes.item(0));
+				}
+			} else {
+				this.init();
 			}
 
-			// y axis
-			if (!isNaN(parseFloat(p[1]))){
-				this.properties.axes.y.plotAt=parseFloat(p[1]);
-			} else if (p[1].toLowerCase()=="xmin"){
-				this.properties.axes.y.plotAt=this.properties.axes.x.range.min;
-			} else if (p[1].toLowerCase()=="xmax"){
-				this.properties.axes.y.plotAt=this.properties.axes.x.range.max;
+			//	plot it.
+			for(var i=0; i<this.series.length; i++){
+				dojo.widget.svg.Chart.Plotter.plot(this.series[i], this);
 			}
-		} else {
-			this.properties.axes.x.plotAt=this.properties.axes.y.range.min;
-			this.properties.axes.y.plotAt=this.properties.axes.x.range.min;
-		}
-
-		//	table values should be populated, now pop it off.
-		this.domNode.removeChild(table);
+			dojo.svg.g.resume();
+		},
+		postCreate:function(){
+			//	summary
+			//	Parse any data if included with the chart, and kick off the rendering.
+			var table=this.domNode.getElementsByTagName("table")[0];
+			if (table){
+				var ranges=this.parseProperties(table);
+				var bRangeX=false;
+				var bRangeY=false;
+			
+				//	fix the axes
+				var axisValues = this.parseData(table);
+				if(!bRangeX){
+					this.properties.axes.x.range={min:axisValues.x.min, max:axisValues.x.max};
+				}
+				if(!bRangeY){
+					this.properties.axes.y.range={min:axisValues.y.min, max:axisValues.y.max};
+				}
+				this.setAxesPlot(table);
 
-		//	get the width and the height.
-//		this.properties.width=dojo.html.getInnerWidth(this.domNode);
-//		this.properties.height=dojo.html.getInnerHeight(this.domNode);
-
-		// ok, lets create the chart itself.
-		dojo.svg.g.suspend();		
-		if(this.vectorNode) this.destroy();
-		this.vectorNode=document.createElementNS(dojo.svg.xmlns.svg, "svg");
-		this.vectorNode.setAttribute("width", this.properties.width);
-		this.vectorNode.setAttribute("height", this.properties.height);
-
-		//	set up the clip path for the plot area.
-		var defs = document.createElementNS(dojo.svg.xmlns.svg, "defs");
-		var clip = document.createElementNS(dojo.svg.xmlns.svg, "clipPath");
-		clip.setAttribute("id","plotClip"+this.widgetId);
-		var rect = document.createElementNS(dojo.svg.xmlns.svg, "rect");		
-		rect.setAttribute("x", this.properties.padding.left);
-		rect.setAttribute("y", this.properties.padding.top);
-		rect.setAttribute("width", this.properties.width-this.properties.padding.left-this.properties.padding.right);
-		rect.setAttribute("height", this.properties.height-this.properties.padding.bottom-this.properties.padding.bottom);
-		clip.appendChild(rect);
-		defs.appendChild(clip);
-		this.vectorNode.appendChild(defs);
-
-		//	the plot background.
-		this.plotArea = document.createElementNS(dojo.svg.xmlns.svg, "g");
-		this.vectorNode.appendChild(this.plotArea);
-		var rect = document.createElementNS(dojo.svg.xmlns.svg, "rect");		
-		rect.setAttribute("x", this.properties.padding.left);
-		rect.setAttribute("y", this.properties.padding.top);
-		rect.setAttribute("width", this.properties.width-this.properties.padding.left-this.properties.padding.right);
-		rect.setAttribute("height", this.properties.height-this.properties.padding.bottom-this.properties.padding.bottom);
-		rect.setAttribute("fill", "#fff");
-		this.plotArea.appendChild(rect);
-
-		//	data group
-		this.dataGroup = document.createElementNS(dojo.svg.xmlns.svg, "g");
-		this.dataGroup.setAttribute("style","clip-path:url(#plotClip"+this.widgetId+");");
-		this.plotArea.appendChild(this.dataGroup);
-
-		//	axis group
-		this.axisGroup = document.createElementNS(dojo.svg.xmlns.svg, "g");
-		this.plotArea.appendChild(this.axisGroup);
-
-		//	x axis
-		var stroke=1;
-		var line = document.createElementNS(dojo.svg.xmlns.svg, "line");
-		var y=dojo.widget.svg.Chart.Plotter.getY(this.properties.axes.x.plotAt, this);
-		line.setAttribute("y1", y);
-		line.setAttribute("y2", y);
-		line.setAttribute("x1",this.properties.padding.left-stroke);
-		line.setAttribute("x2",this.properties.width-this.properties.padding.right);
-		line.setAttribute("style","stroke:#000;stroke-width:"+stroke+";");
-		this.axisGroup.appendChild(line);
-		
-		//	x axis units.
-		//	(min and max)
-		var textSize=10;
-		var text = document.createElementNS(dojo.svg.xmlns.svg, "text");
-		text.setAttribute("x", this.properties.padding.left);
-		text.setAttribute("y", this.properties.height-this.properties.padding.bottom+textSize+2);
-		text.setAttribute("style", "text-anchor:middle;font-size:"+textSize+"px;fill:#000;");
-		text.appendChild(document.createTextNode(dojo.math.round(parseFloat(this.properties.axes.x.range.min)),2));
-		this.axisGroup.appendChild(text);
-		
-		var text = document.createElementNS(dojo.svg.xmlns.svg, "text");
-		text.setAttribute("x", this.properties.width-this.properties.padding.right-(textSize/2));
-		text.setAttribute("y", this.properties.height-this.properties.padding.bottom+textSize+2);
-		text.setAttribute("style", "text-anchor:middle;font-size:"+textSize+"px;fill:#000;");
-		text.appendChild(document.createTextNode(dojo.math.round(parseFloat(this.properties.axes.x.range.max)),2));
-		this.axisGroup.appendChild(text);	
-		
-		//	y axis
-		var line=document.createElementNS(dojo.svg.xmlns.svg, "line");
-		var x=dojo.widget.svg.Chart.Plotter.getX(this.properties.axes.y.plotAt, this);
-		line.setAttribute("x1", x);
-		line.setAttribute("x2", x);
-		line.setAttribute("y1", this.properties.padding.top);
-		line.setAttribute("y2", this.properties.height-this.properties.padding.bottom);
-		line.setAttribute("style", "stroke:#000;stroke-width:"+stroke+";");
-		this.axisGroup.appendChild(line);
-
-		//	y axis units
-		var text = document.createElementNS(dojo.svg.xmlns.svg, "text");
-		text.setAttribute("x", this.properties.padding.left-4);
-		text.setAttribute("y", this.properties.height-this.properties.padding.bottom);
-		text.setAttribute("style", "text-anchor:end;font-size:"+textSize+"px;fill:#000;");
-		text.appendChild(document.createTextNode(dojo.math.round(parseFloat(this.properties.axes.y.range.min)),2));
-		this.axisGroup.appendChild(text);
-		
-		var text = document.createElementNS(dojo.svg.xmlns.svg, "text");
-		text.setAttribute("x", this.properties.padding.left-4);
-		text.setAttribute("y", this.properties.padding.top+(textSize/2));
-		text.setAttribute("style", "text-anchor:end;font-size:"+textSize+"px;fill:#000;");
-		text.appendChild(document.createTextNode(dojo.math.round(parseFloat(this.properties.axes.y.range.max)),2));
-		this.axisGroup.appendChild(text);	
-
-		this.domNode.appendChild(this.vectorNode);
-		dojo.svg.g.resume();
-
-		//	this is last.
-		this.assignColors();
-		this._isInitialized=true;
-	},
-	destroy:function(){
-		while(this.domNode.childNodes.length>0){
-			this.domNode.removeChild(this.domNode.childNodes.item(0));
-		}
-		this.vectorNode=this.plotArea=this.dataGroup=this.axisGroup=null;
-	},
-	render:function(){
-		dojo.svg.g.suspend();
-		
-		if (this.dataGroup){
-			while(this.dataGroup.childNodes.length>0){
-				this.dataGroup.removeChild(this.dataGroup.childNodes.item(0));
+				//	table values should be populated, now pop it off.
+				this.domNode.removeChild(table);
+			}
+			if(this.series.length>0){
+				this.render();
 			}
-		} else {
-			this.initialize();
-		}
-
-		//	the remove/append is an attempt to streamline the rendering, it's totally optional
-//		var p=this.dataGroup.parentNode;
-//		p.removeChild(this.dataGroup);
-		for(var i=0; i<this.series.length; i++){
-			dojo.widget.svg.Chart.Plotter.plot(this.series[i], this);
 		}
-//		p.appendChild(this.dataGroup);
-		
-		dojo.svg.g.resume();
 	}
-});
-
-dojo.widget.svg.Chart.PlotTypes = {
-	Bar:"bar",
-	Line:"line",
-	Scatter:"scatter",
-	Bubble:"bubble"
-};
+);
 
 dojo.widget.svg.Chart.Plotter=new function(){
-	var _this=this;
+	//	summary
+	//	Singleton for plotting series of data.
+	var self=this;
 	var plotters = {};
-	var types=dojo.widget.svg.Chart.PlotTypes;
+	var types=dojo.widget.Chart.PlotTypes;
 	
-	this.getX=function(value, chart){
+	this.getX=function(/* string||number */value, /* dojo.widget.Chart */chart){
+		//	summary
+		//	Calculate the x coord on the passed chart for the passed value
 		var v=parseFloat(value);
 		var min=chart.properties.axes.x.range.min;
 		var max=chart.properties.axes.x.range.max;
@@ -382,9 +379,11 @@
 		var xmin=chart.properties.padding.left;
 		var xmax=chart.properties.width-chart.properties.padding.right;
 		var x=(v*((xmax-xmin)/max))+xmin;
-		return x;
+		return x;	// float
 	};
-	this.getY=function(value, chart){
+	this.getY=function(/* string||number */value, /* dojo.widget.Chart */chart){
+		//	summary
+		//	Calculate the y coord on the passed chart for the passed value
 		var v=parseFloat(value);
 		var max=chart.properties.axes.y.range.max;
 		var min=chart.properties.axes.y.range.min;
@@ -395,42 +394,45 @@
 		var ymin=chart.properties.height-chart.properties.padding.bottom;
 		var ymax=chart.properties.padding.top;
 		var y=(((ymin-ymax)/(max-min))*(max-v))+ymax;
-		return y;
+		return y;	// float
 	};
 
-	this.addPlotter=function(name, func){
+	this.addPlotter=function(/* string */name, /* function */func){
+		//	summary
+		//	add a custom plotter function to this object.
 		plotters[name]=func;
 	};
-	this.plot=function(series, chart){
-		if (series.values.length==0) return;
+	this.plot=function(/* dojo.widget.Chart.DataSeries */series, /* dojo.widget.Chart */chart){
+		//	summary
+		//	plot the passed series.
+		if (series.values.length==0) return;	//	void
 		if (series.plotType && plotters[series.plotType]){
-			return plotters[series.plotType](series, chart);
+			return plotters[series.plotType](series, chart);	//	void
 		}
 		else if (chart.plotType && plotters[chart.plotType]){
-			return plotters[chart.plotType](series, chart);
+			return plotters[chart.plotType](series, chart);		//	void
 		}
-//		else {
-//			return plotters[types.Bar](series, chart);
-//		}
 	};
 
 	//	plotting
-	plotters[types.Bar]=function(series, chart){
+	plotters["bar"]=function(/* dojo.widget.Chart.DataSeries */series, /* dojo.widget.Chart */chart){
+		//	summary
+		//	plot the passed series as a set of bars.
 		var space=1;
 		var lastW = 0;
 		for (var i=0; i<series.values.length; i++){
-			var x=_this.getX(series.values[i].x, chart);
+			var x=self.getX(series.values[i].x, chart);
 			var w;
 			if (i==series.values.length-1){
 				w=lastW;
 			} else{
-				w=_this.getX(series.values[i+1].x, chart)-x-space;
+				w=self.getX(series.values[i+1].x, chart)-x-space;
 				lastW=w;
 			}
 			x-=(w/2);
 
-			var yA=_this.getY(chart.properties.axes.x.plotAt, chart);
-			var y=_this.getY(series.values[i].value, chart);
+			var yA=self.getY(chart.properties.axes.x.plotAt, chart);
+			var y=self.getY(series.values[i].value, chart);
 			var h=Math.abs(yA-y);
 			if (parseFloat(series.values[i].value)<chart.properties.axes.x.plotAt){
 				var oy=yA;
@@ -450,26 +452,28 @@
 			chart.dataGroup.appendChild(bar);
 		}
 	};
-	plotters[types.Line]=function(series, chart){
-		var tension=3;
+	plotters["line"]=function(/* dojo.widget.Chart.DataSeries */series, /* dojo.widget.Chart */chart){
+		//	summary
+		//	plot the passed series as a line with tensioning
+		var tension=1.5;
 		var line = document.createElementNS(dojo.svg.xmlns.svg, "path");
 		line.setAttribute("fill", "none");
 		line.setAttribute("stroke", series.color);
-		line.setAttribute("stroke-width", "1.5");
+		line.setAttribute("stroke-width", "2");
 		line.setAttribute("stroke-opacity", "0.85");
 		line.setAttribute("title", series.label);
 		chart.dataGroup.appendChild(line);
 
 		var path = [];
 		for (var i=0; i<series.values.length; i++){
-			var x = _this.getX(series.values[i].x, chart)
-			var y = _this.getY(series.values[i].value, chart);
+			var x = self.getX(series.values[i].x, chart)
+			var y = self.getY(series.values[i].value, chart);
 
 			var dx = chart.properties.padding.left+1;
 			var dy = chart.properties.height-chart.properties.padding.bottom;
 			if (i>0){
-				dx=x-_this.getX(series.values[i-1].x, chart);
-				dy=_this.getY(series.values[i-1].value, chart);
+				dx=x-self.getX(series.values[i-1].x, chart);
+				dy=self.getY(series.values[i-1].value, chart);
 			}
 			
 			if (i==0) path.push("M");
@@ -484,11 +488,56 @@
 		}
 		line.setAttribute("d", path.join(" "));
 	};
-	plotters[types.Scatter]=function(series, chart){
+	plotters["area"]=function(/* dojo.widget.Chart.DataSeries */series, /* dojo.widget.Chart */chart){
+		//	summary
+		//	plot the passed series as an area with tensioning.
+		var tension=1.5;
+		var line = document.createElementNS(dojo.svg.xmlns.svg, "path");
+		line.setAttribute("fill", series.color);
+		line.setAttribute("fill-opacity", "0.4");
+		line.setAttribute("stroke", series.color);
+		line.setAttribute("stroke-width", "1");
+		line.setAttribute("stroke-opacity", "0.8");
+		line.setAttribute("title", series.label);
+		chart.dataGroup.appendChild(line);
+
+		var path = [];
+		for (var i=0; i<series.values.length; i++){
+			var x = self.getX(series.values[i].x, chart)
+			var y = self.getY(series.values[i].value, chart);
+
+			var dx = chart.properties.padding.left+1;
+			var dy = chart.properties.height-chart.properties.padding.bottom;
+			if (i>0){
+				dx=x-self.getX(series.values[i-1].x, chart);
+				dy=self.getY(series.values[i-1].value, chart);
+			}
+			
+			if (i==0) path.push("M");
+			else {
+				path.push("C");
+				var cx=x-(tension-1)*(dx/tension);
+				path.push(cx+","+dy);
+				cx=x-(dx/tension);
+				path.push(cx+","+y);
+			}
+			path.push(x+","+y);
+		}
+		//	finish it off
+		path.push("L");
+		path.push(x + "," + self.getY(0, chart));
+		path.push("L");
+		path.push(self.getX(0, chart) + "," + self.getY(0, chart));
+		path.push("Z");
+		line.setAttribute("d", path.join(" "));
+	},
+	plotters["scatter"]=function(/* dojo.widget.Chart.DataSeries */series, /* dojo.widget.Chart */chart){
+		//	summary
+		//	plot the passed series as a scatter chart
 		var r=7;
 		for (var i=0; i<series.values.length; i++){
-			var x=_this.getX(series.values[i].x, chart);
-			var y=_this.getY(series.values[i].value, chart);
+			var x=self.getX(series.values[i].x, chart);
+			var y=self.getY(series.values[i].value, chart);
 			var point = document.createElementNS(dojo.svg.xmlns.svg, "path");
 			point.setAttribute("fill", series.color);
 			point.setAttribute("stroke-width", "0");
@@ -504,7 +553,9 @@
 			chart.dataGroup.appendChild(point);
 		}
 	};
-	plotters[types.Bubble]=function(series, chart){
+	plotters["bubble"]=function(/* dojo.widget.Chart.DataSeries */series, /* dojo.widget.Chart */chart){
+		//	summary
+		//	plot the passed series as a series of bubbles (scatter with 3rd dimension)
 		//	added param for series[n].value: size
 		var minR=1;
 		
@@ -512,7 +563,8 @@
 		var min=chart.properties.axes.x.range.min;
 		var max=chart.properties.axes.x.range.max;
 		var ofst=0-min;
-		min+=ofst; max+=ofst; v+=ofst;
+		min+=ofst; max+=ofst;
+
 		var xmin=chart.properties.padding.left;
 		var xmax=chart.properties.width-chart.properties.padding.right;
 		var factor=(max-min)/(xmax-xmin)*25;
@@ -525,8 +577,8 @@
 			point.setAttribute("fill", series.color);
 			point.setAttribute("fill-opacity", "0.8");
 			point.setAttribute("r", (parseFloat(size)*factor)/2);
-			point.setAttribute("cx", _this.getX(series.values[i].x, chart));
-			point.setAttribute("cy", _this.getY(series.values[i].value, chart));
+			point.setAttribute("cx", self.getX(series.values[i].x, chart));
+			point.setAttribute("cy", self.getY(series.values[i].value, chart));
 			point.setAttribute("title", series.label + ": " + series.values[i].value + " (" + size + ")");
 			chart.dataGroup.appendChild(point);
 		}

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/AccordionPane.css
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/AccordionPane.css?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/AccordionPane.css (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/AccordionPane.css Mon Nov 13 14:54:45 2006
@@ -0,0 +1,22 @@
+.dojoAccordionPane .label {
+	color: #000;
+	font-weight: bold;
+	background: url("images/soriaAccordionOff.gif") repeat-x top left #85aeec;
+	border:1px solid #d9d9d9;
+	font-size:0.9em;
+}
+
+.dojoAccordionPane-selected .label {
+	background: url("images/soriaAccordionSelected.gif") repeat-x top left #85aeec;
+	border:1px solid #84a3d1;
+}
+
+.dojoAccordionPane .label :hover {
+	cursor: pointer;
+}
+
+.dojoAccordionPane .accBody {
+	background: #fff;
+	overflow: auto;
+	border:1px solid #84a3d1;
+}
\ No newline at end of file

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/AccordionPane.css
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/AccordionPane.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/AccordionPane.html?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/AccordionPane.html (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/AccordionPane.html Mon Nov 13 14:54:45 2006
@@ -0,0 +1,4 @@
+<div dojoAttachPoint="domNode">
+<div dojoAttachPoint="labelNode" dojoAttachEvent="onclick: onLabelClick" class="${this.labelNodeClass}">${this.label}</div>
+<div dojoAttachPoint="containerNode" style="overflow: hidden;" class="${this.containerNodeClass}"></div>
+</div>

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/AccordionPane.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ButtonTemplate.css
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ButtonTemplate.css?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ButtonTemplate.css (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ButtonTemplate.css Mon Nov 13 14:54:45 2006
@@ -0,0 +1,59 @@
+/* ---- button --- */
+.dojoButton {
+	padding: 0 0 0 0;
+	font-size: 8pt;
+	white-space: nowrap;
+	cursor: pointer;
+	font-family: Myriad, Tahoma, Verdana, sans-serif;
+}
+
+.dojoButton .dojoButtonContents {
+	padding: 2px 2px 2px 2px;
+	text-align: center;		/* if icon and label are split across two lines, center icon */
+	color: white;
+}
+
+.dojoButtonLeftPart .dojoButtonContents {
+	padding-right: 8px;
+}
+
+.dojoButtonDisabled {
+	cursor: url("images/no.gif"), default;
+}
+
+
+.dojoButtonContents img {
+	vertical-align: middle;	/* if icon and label are on same line, center them */
+}
+
+/* -------- colors ------------ */
+
+.dojoButtonHover .dojoButtonContents {
+}
+
+.dojoButtonDepressed .dojoButtonContents {
+	color: #293a4b;
+}
+
+.dojoButtonDisabled .dojoButtonContents {
+	color: #aaa;
+}
+
+
+/* ---------- drop down button specific ---------- */
+
+/* border between label and arrow (for drop down buttons */
+.dojoButton .border {
+	width: 1px;
+	background: gray;
+}
+
+/* button arrow */
+.dojoButton .downArrow {
+	padding-left: 10px;
+	text-align: center;
+}
+
+.dojoButton.disabled .downArrow {
+	cursor : default;
+}
\ No newline at end of file

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ButtonTemplate.css
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ButtonTemplate.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ButtonTemplate.html?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ButtonTemplate.html (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ButtonTemplate.html Mon Nov 13 14:54:45 2006
@@ -0,0 +1,6 @@
+<div dojoAttachPoint="buttonNode" class="dojoButton" style="position:relative;" dojoAttachEvent="onMouseOver; onMouseOut; onMouseDown; onMouseUp; onClick:buttonClick; onKey:onKey; onFocus;">
+  <div class="dojoButtonContents" align=center dojoAttachPoint="containerNode" style="position:absolute;z-index:2;"></div>
+  <img dojoAttachPoint="leftImage" style="position:absolute;left:0px;">
+  <img dojoAttachPoint="centerImage" style="position:absolute;z-index:1;">
+  <img dojoAttachPoint="rightImage" style="position:absolute;top:0px;right:0px;">
+</div>

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ButtonTemplate.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Checkbox.css
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Checkbox.css?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Checkbox.css (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Checkbox.css Mon Nov 13 14:54:45 2006
@@ -0,0 +1,26 @@
+.dojoHtmlCheckbox {
+	border: 0px;
+	width: 16px;
+	height: 16px;
+	margin: 2px;
+	vertical-align: middle;
+}
+
+.dojoHtmlCheckboxOn {
+	background: url(check.gif) 0px 0px;
+}
+.dojoHtmlCheckboxOff {
+	background: url(check.gif) -16px 0px;
+}
+.dojoHtmlCheckboxDisabledOn {
+	background: url(check.gif) -32px 0px;
+}
+.dojoHtmlCheckboxDisabledOff {
+	background: url(check.gif) -48px 0px;
+}
+.dojoHtmlCheckboxOnHover {
+	background: url(check.gif) -64px 0px;
+}
+.dojoHtmlCheckboxOffHover {
+	background: url(check.gif) -80px 0px;
+}
\ No newline at end of file

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Checkbox.css
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Checkbox.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Checkbox.html?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Checkbox.html (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Checkbox.html Mon Nov 13 14:54:45 2006
@@ -0,0 +1,5 @@
+<span style="display: inline-block;" tabIndex="${this.tabIndex}" waiRole="checkbox" id="${this.id}">
+	<img dojoAttachPoint="imageNode" class="dojoHtmlCheckbox" src="${dojoRoot}src/widget/templates/images/blank.gif" alt="" />
+	<input type="checkbox" name="${this.name}" style="display: none" value="${this.value}"
+		dojoAttachPoint="inputNode">
+</span>
\ No newline at end of file

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Checkbox.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/CheckboxA11y.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/CheckboxA11y.html?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/CheckboxA11y.html (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/CheckboxA11y.html Mon Nov 13 14:54:45 2006
@@ -0,0 +1,4 @@
+<span class='dojoHtmlCheckbox'>
+	<input type="checkbox" name="${this.name}" tabIndex="${this.tabIndex}" id="${this.id}" value="${this.value}"
+		 dojoAttachEvent="onClick: _onClick;" dojoAttachPoint="inputNode"> 
+</span>

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/CheckboxA11y.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/CiviCrmDatePicker.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/CiviCrmDatePicker.html?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/CiviCrmDatePicker.html (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/CiviCrmDatePicker.html Mon Nov 13 14:54:45 2006
@@ -0,0 +1,12 @@
+<table cellpadding="0" cellspacing="0" border="0" width="400">
+	<tr>
+		<td id="dateHolderTd" width="200">
+		</td>
+		<td id="timeHolderTd" width="200">
+		</td>
+	</tr>
+	<tr style="display: none;" id="formItemsTr">
+		<td id="formItemsTd">&nbsp;</td>
+		<td>&nbsp;</td>
+	</tr>
+</table>

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/CiviCrmDatePicker.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ComboBox.css
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ComboBox.css?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ComboBox.css (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ComboBox.css Mon Nov 13 14:54:45 2006
@@ -0,0 +1,68 @@
+.dojoComboBoxOuter {
+	border: 0px !important;
+	margin: 0px !important;
+	padding: 0px !important;
+	background: transparent !important;
+	white-space: nowrap !important;
+}
+
+.dojoComboBox {
+	border: 1px inset #afafaf;
+	margin: 0px;
+	padding: 0px;
+	vertical-align: middle !important;
+	float: none !important;
+	position: static !important;
+	display: inline !important;
+}
+
+/* the input box */
+input.dojoComboBox {
+	border-right-width: 0px !important; 
+	margin-right: 0px !important;
+	padding-right: 0px !important;
+}
+
+/* the down arrow */
+img.dojoComboBox {
+	border-left-width: 0px !important;
+	padding-left: 0px !important;
+	margin-left: 0px !important;
+}
+
+/* IE vertical-alignment calculations can be off by +-1 but these margins are collapsed away */
+.dj_ie img.dojoComboBox {
+	margin-top: 1px; 
+	margin-bottom: 1px; 
+}
+
+/* the drop down */
+.dojoComboBoxOptions {
+	font-family: Verdana, Helvetica, Garamond, sans-serif;
+	/* font-size: 0.7em; */
+	background-color: white;
+	border: 1px solid #afafaf;
+	position: absolute;
+	z-index: 1000; 
+	overflow: auto;
+	cursor: default;
+}
+
+.dojoComboBoxItem {
+	padding-left: 2px;
+	padding-top: 2px;
+	margin: 0px;
+}
+
+.dojoComboBoxItemEven {
+	background-color: #f4f4f4;
+}
+
+.dojoComboBoxItemOdd {
+	background-color: white;
+}
+
+.dojoComboBoxItemHighlight {
+	background-color: #63709A;
+	color: white;
+}

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ComboBox.css
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ComboBox.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ComboBox.html?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ComboBox.html (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ComboBox.html Mon Nov 13 14:54:45 2006
@@ -0,0 +1,16 @@
+<span _="whitespace and CR's between tags adds &nbsp; in FF"
+	class="dojoComboBoxOuter"
+	><input style="display:none"  tabindex="-1" name="" value="" 
+		dojoAttachPoint="comboBoxValue"
+	><input style="display:none"  tabindex="-1" name="" value="" 
+		dojoAttachPoint="comboBoxSelectionValue"
+	><input type="text" autocomplete="off" class="dojoComboBox"
+		dojoAttachEvent="key:_handleKeyEvents; keyUp: onKeyUp; compositionEnd; onResize;"
+		dojoAttachPoint="textInputNode"
+	><img hspace="0"
+		vspace="0"
+		class="dojoComboBox"
+		dojoAttachPoint="downArrowNode"
+		dojoAttachEvent="onMouseUp: handleArrowClick; onResize;"
+		src="${this.buttonSrc}"
+></span>

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ComboBox.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ComboButtonTemplate.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ComboButtonTemplate.html?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ComboButtonTemplate.html (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ComboButtonTemplate.html Mon Nov 13 14:54:45 2006
@@ -0,0 +1,18 @@
+<div class="dojoButton" style="position:relative;top:0px;left:0px; text-align:none;" dojoAttachEvent="onKey;onFocus">
+
+	<div dojoAttachPoint="buttonNode" class="dojoButtonLeftPart" style="position:absolute;left:0px;top:0px;"
+		dojoAttachEvent="onMouseOver; onMouseOut; onMouseDown; onMouseUp; onClick:buttonClick;">
+		<div class="dojoButtonContents" dojoAttachPoint="containerNode" style="position:absolute;top:0px;right:0px;z-index:2;"></div>
+		<img dojoAttachPoint="leftImage" style="position:absolute;left:0px;top:0px;">
+		<img dojoAttachPoint="centerImage" style="position:absolute;right:0px;top:0px;z-index:1;">
+	</div>
+
+	<div dojoAttachPoint="rightPart" class="dojoButtonRightPart" style="position:absolute;top:0px;right:0px;"
+		dojoAttachEvent="onMouseOver:rightOver; onMouseOut:rightOut; onMouseDown:rightDown; onMouseUp:rightUp; onClick:rightClick;">
+		<img dojoAttachPoint="arrowBackgroundImage" style="position:absolute;top:0px;left:0px;z-index:1;">
+		<img src="${dojoRoot}src/widget/templates/images/whiteDownArrow.gif"
+		  		style="z-index:2;position:absolute;left:3px;top:50%;">
+		<img dojoAttachPoint="rightImage" style="position:absolute;top:0px;right:0px;">
+	</div>
+
+</div>

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/ComboButtonTemplate.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DatePicker.css
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DatePicker.css?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DatePicker.css (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DatePicker.css Mon Nov 13 14:54:45 2006
@@ -0,0 +1,167 @@
+.datePickerContainer {
+	width:164px; /* needed for proper user styling */
+}
+
+.calendarContainer {
+/*	border:1px solid #566f8f;*/
+}
+
+.calendarBodyContainer {
+	width:100%; /* needed for the explode effect (explain?) */
+	background: #7591bc url("images/dpBg.gif") top left repeat-x;
+}
+
+.calendarBodyContainer thead tr td {
+	color:#293a4b;
+	font:bold 0.75em Helvetica, Arial, Verdana, sans-serif;
+	text-align:center;
+	padding:0.25em;
+	background: url("images/dpHorizLine.gif") bottom left repeat-x;
+}
+
+.calendarBodyContainer tbody tr td {
+	color:#fff;
+	font:bold 0.7em Helvetica, Arial, Verdana, sans-serif;
+	text-align:center;
+	padding:0.4em;
+	background: url("images/dpVertLine.gif") top right repeat-y;
+	cursor:pointer;
+	cursor:hand;
+}
+
+
+.monthWrapper {
+	padding-bottom:2px;
+	background: url("images/dpHorizLine.gif") bottom left repeat-x;
+}
+
+.monthContainer {
+	width:100%;
+}
+
+.monthLabelContainer {
+	text-align:center;
+	font:bold 0.75em Helvetica, Arial, Verdana, sans-serif;
+	background: url("images/dpMonthBg.png") repeat-x top left !important;
+	color:#293a4b;
+	padding:0.25em;
+}
+
+.monthCurve {
+	width:12px;
+}
+
+.monthCurveTL {
+	background: url("images/dpCurveTL.png") no-repeat top left !important;
+}
+
+.monthCurveTR {
+		background: url("images/dpCurveTR.png") no-repeat top right !important;
+}
+
+
+.yearWrapper {
+	background: url("images/dpHorizLineFoot.gif") top left repeat-x;
+	padding-top:2px;
+}
+
+.yearContainer {
+	width:100%;
+}
+
+.yearContainer td {
+	background:url("images/dpYearBg.png") top left repeat-x;
+}
+
+.yearContainer .yearLabel {
+	margin:0;
+	padding:0.45em 0 0.45em 0;
+	color:#fff;
+	font:bold 0.75em Helvetica, Arial, Verdana, sans-serif;
+	text-align:center;
+}
+
+.curveBL {
+	background: url("images/dpCurveBL.png") bottom left no-repeat !important;
+	width:9px !important;
+	padding:0;
+	margin:0;
+}
+
+.curveBR {
+	background: url("images/dpCurveBR.png") bottom right no-repeat !important;
+	width:9px !important;
+	padding:0;
+	margin:0;
+}
+
+
+.previousMonth {
+	background-color:#6782a8 !important;
+}
+
+.previousMonthDisabled {
+	background-color:#a4a5a6 !important;
+	cursor:default !important
+}
+.currentMonth {
+}
+
+.currentMonthDisabled {
+	background-color:#bbbbbc !important;
+	cursor:default !important
+}
+.nextMonth {
+	background-color:#6782a8 !important;
+}
+.nextMonthDisabled {
+	background-color:#a4a5a6 !important;
+	cursor:default !important;
+}
+
+.currentDate {
+	text-decoration:underline;
+	font-style:italic;
+}
+
+.selectedItem {
+	background-color:#fff !important;
+	color:#6782a8 !important;
+}
+
+.yearLabel .selectedYear {
+	padding:0.2em;
+	background-color:#9ec3fb !important;
+}
+
+.nextYear, .previousYear {
+	cursor:pointer;cursor:hand;
+	padding:0;
+}
+
+.nextYear {
+	margin:0 0 0 0.55em;
+}
+
+.previousYear {
+	margin:0 0.55em 0 0;
+}
+
+.incrementControl {
+	cursor:pointer;cursor:hand;
+	width:1em;
+}
+
+.increase {
+	float:right;
+}
+
+.decrease {
+	float:left;
+}
+
+.lastColumn {
+	background-image:none !important;
+}
+
+

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DatePicker.css
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DatePicker.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DatePicker.html?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DatePicker.html (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DatePicker.html Mon Nov 13 14:54:45 2006
@@ -0,0 +1,96 @@
+<div class="datePickerContainer" dojoAttachPoint="datePickerContainerNode">
+	<table cellspacing="0" cellpadding="0" class="calendarContainer">
+		<thead>
+			<tr>
+				<td class="monthWrapper" valign="top">
+					<table class="monthContainer" cellspacing="0" cellpadding="0" border="0">
+						<tr>
+							<td class="monthCurve monthCurveTL" valign="top"></td>
+							<td class="monthLabelContainer" valign="top">
+								<span dojoAttachPoint="increaseWeekNode" 
+									dojoAttachEvent="onClick: onIncrementWeek;" 
+									class="incrementControl increase">
+									<img src="${dojoRoot}src/widget/templates/images/incrementMonth.png" 
+									alt="&darr;" style="width:7px;height:5px;" />
+								</span>
+								<span 
+									dojoAttachPoint="increaseMonthNode" 
+									dojoAttachEvent="onClick: onIncrementMonth;" class="incrementControl increase">
+									<img src="${dojoRoot}src/widget/templates/images/incrementMonth.png" 
+										alt="&darr;"  dojoAttachPoint="incrementMonthImageNode">
+								</span>
+								<span 
+									dojoAttachPoint="decreaseWeekNode" 
+									dojoAttachEvent="onClick: onIncrementWeek;" 
+									class="incrementControl decrease">
+									<img src="${dojoRoot}src/widget/templates/images/decrementMonth.png" alt="&uarr;" style="width:7px;height:5px;" />
+								</span>
+								<span 
+									dojoAttachPoint="decreaseMonthNode" 
+									dojoAttachEvent="onClick: onIncrementMonth;" class="incrementControl decrease">
+									<img src="${dojoRoot}src/widget/templates/images/decrementMonth.png" 
+										alt="&uarr;" dojoAttachPoint="decrementMonthImageNode">
+								</span>
+								<span dojoAttachPoint="monthLabelNode" class="month"></span>
+							</td>
+							<td class="monthCurve monthCurveTR" valign="top"></td>
+						</tr>
+					</table>
+				</td>
+			</tr>
+		</thead>
+		<tbody>
+			<tr>
+				<td colspan="3">
+					<table class="calendarBodyContainer" cellspacing="0" cellpadding="0" border="0">
+						<thead>
+							<tr dojoAttachPoint="dayLabelsRow">
+								<td></td>
+								<td></td>
+								<td></td>
+								<td></td>
+								<td></td>
+								<td></td>
+								<td></td>
+							</tr>
+						</thead>
+						<tbody dojoAttachPoint="calendarDatesContainerNode" 
+							dojoAttachEvent="onClick: _handleUiClick;">
+							<tr dojoAttachPoint="calendarWeekTemplate">
+								<td></td>
+								<td></td>
+								<td></td>
+								<td></td>
+								<td></td>
+								<td></td>
+								<td></td>
+							</tr>
+						</tbody>
+					</table>
+				</td>
+			</tr>
+		</tbody>
+		<tfoot>
+			<tr>
+				<td colspan="3" class="yearWrapper">
+					<table cellspacing="0" cellpadding="0" border="0" class="yearContainer">
+						<tr>
+							<td class="curveBL" valign="top"></td>
+							<td valign="top">
+								<h3 class="yearLabel">
+									<span dojoAttachPoint="previousYearLabelNode"
+										dojoAttachEvent="onClick: onIncrementYear;" class="previousYear"></span>
+									<span class="selectedYear" dojoAttachPoint="currentYearLabelNode"></span>
+									<span dojoAttachPoint="nextYearLabelNode" 
+										dojoAttachEvent="onClick: onIncrementYear;" class="nextYear"></span>
+								</h3>
+							</td>
+							<td class="curveBR" valign="top"></td>
+						</tr>
+					</table>
+				</td>
+			</tr>
+		</tfoot>
+	</table>
+	
+</div>

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DatePicker.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DemoEngine.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DemoEngine.html?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DemoEngine.html (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DemoEngine.html Mon Nov 13 14:54:45 2006
@@ -0,0 +1,24 @@
+<div dojoAttachPoint="domNode">
+	<div dojoAttachPoint="navigationNode">
+		<table border="0" cellspacing="0" cellpadding="0">
+			<tr>
+				<td width="1%" valign="top" class="navigationCell"><h1>Categories</h1><div dojoAttachPoint="menuNavigationNode"></div></td>
+				<td width="99%" valign="top">
+					<div dojoAttachPoint="demoNavigationNode">
+					</div>
+				</td>
+			</tr>
+		</table>
+	</div>
+
+	<div dojoAttachPoint="demoContainerNode">
+
+		<div dojoAttachPoint="demoPaneNode">
+		</div>
+
+		<div dojoAttachPoint="demoHeaderNode">
+			<span dojoAttachPoint="collapsedMenuNode" dojoAttachEvent="onclick: expandDemoNavigation"></span>
+			<div dojoAttachPoint="aboutNode">About this Demo</div>
+		</div>
+	</div>
+</div>

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DemoEngine.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Dialog.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Dialog.html?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Dialog.html (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Dialog.html Mon Nov 13 14:54:45 2006
@@ -0,0 +1,7 @@
+<div id="${this.widgetId}" class="dojoDialog" dojoattachpoint="wrapper">
+	<span dojoattachpoint="tabStartOuter" dojoonfocus="trapTabs" dojoonblur="clearTrap"	tabindex="0"></span>
+	<span dojoattachpoint="tabStart" dojoonfocus="trapTabs" dojoonblur="clearTrap" tabindex="0"></span>
+	<div dojoattachpoint="containerNode" style="position: relative; z-index: 2;"></div>
+	<span dojoattachpoint="tabEnd" dojoonfocus="trapTabs" dojoonblur="clearTrap" tabindex="0"></span>
+	<span dojoattachpoint="tabEndOuter" dojoonfocus="trapTabs" dojoonblur="clearTrap" tabindex="0"></span>
+</div>

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Dialog.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DocPane.css
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DocPane.css?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DocPane.css (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DocPane.css Mon Nov 13 14:54:45 2006
@@ -0,0 +1,49 @@
+.dojoDocPane { padding:1em; font: 1em Georgia,Times,"Times New Roman",serif; }
+
+.dojoDocPane .container{ }
+
+.dojoDocPane .dialog{ }
+.dojoDocPane .dialog .container{ padding: 0.5em; background: #fff; border: 2px solid #333; }
+.dojoDocPane .dialog .docDialog{ background: transparent; width: 20em; }
+.dojoDocPane .dialog .docDialog h2{ margin-top: 0; padding-top: 0; }
+.dojoDocPane .dialog .docDialog input { float: right; margin-right: 1em; }
+.dojoDocPane .dialog .docDialog p{ clear: both; }
+#dojoDocUserName, #dojoDocPassword { width: 10em; }
+
+.dojoDocPane .nav{ }
+.dojoDocPane .nav span{ }
+
+.dojoDocPane .detail{ }
+.dojoDocPane .detail h1{ }
+.dojoDocPane .detail h1 span.fn{ }
+.dojoDocPane .detail .description{ }
+.dojoDocPane .detail .params{ }
+.dojoDocPane .detail .params .row{ }
+.dojoDocPane .detail .params .row span{ }
+.dojoDocPane .detail .variables{ }
+.dojoDocPane .detail .variables .row{ }
+.dojoDocPane .detail .signature{ }
+.dojoDocPane .detail .signature .source{ white-space: pre; font: 0.8em Monaco, Courier, "Courier New", monospace; }
+.dojoDocPane .detail .signature .source .return{ color:#369; }
+.dojoDocPane .detail .signature .source .function{ color: #98543F; font-weight: bold; }
+.dojoDocPane .detail .signature .source .params{ }
+.dojoDocPane .detail .signature .source .params .type{ font-style: italic; color: #d17575; }
+.dojoDocPane .detail .signature .source .params .name{ color: #d14040; }
+
+.dojoDocPane .result{ }
+.dojoDocPane .result h1{ }
+.dojoDocPane .result .row{ }
+.dojoDocPane .result .row .summary{ }
+
+.dojoDocPane .package{ }
+.dojoDocPane .package h1{ }
+.dojoDocPane .package .row{ }
+.dojoDocPane .package .row .summary{ }
+.dojoDocPane .package .description{ }
+.dojoDocPane .package .methods{ }
+.dojoDocPane .package .methods h2{ }
+.dojoDocPane .package .methods .row{ }
+.dojoDocPane .package .methods .row .description{ }
+.dojoDocPane .package .requires{ }
+.dojoDocPane .package .requires h2{ }
+.dojoDocPane .package .requires .row{ }

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DocPane.css
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DocPane.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DocPane.html?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DocPane.html (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DocPane.html Mon Nov 13 14:54:45 2006
@@ -0,0 +1,79 @@
+<div class="dojoDocPane">
+	<div dojoAttachPoint="containerNode" class="container"></div>
+
+	<div dojoAttachPoint="dialog" class="dialog">
+		<div class="container" dojoAttachPoint="dialogBg">
+			<div class="docDialog" dojoAttachPoint="dialogFg">
+				<h2>Log In</h2>
+				<p><input id="dojoDocUserName" dojoAttachPoint="userName"><label for="dojoDocUserName">User Name:</label></p>
+				<p><input id="dojoDocPassword" dojoAttachPoint="password" type="password"><label for="dojoDocPassword">Password:</label></p>
+				<p><input type="button" dojoAttachPoint="cancel" value="cancel"> <input type="button" dojoAttachPoint="logIn" value="Log In"></p>
+				<p></p>
+			</div>
+		</div>
+	</div>
+
+	<div dojoAttachPoint="nav" class="nav"><span>Detail</span> | <span>Source</span> | <span>Examples</span> | <span>Walkthrough</span></div>
+
+	<div dojoAttachPoint="detail" class="detail">
+		<h1>Detail: <span class="fn" dojoAttachPoint="fn">dojo.select</span></h1>
+		<div class="description" dojoAttachPoint="description">Description</div>
+		<div class="params" dojoAttachPoint="parameters">
+			<h2>Parameters</h2>
+			<div class="row" dojoAttachPoint="pRow">
+				<span dojoAttachPoint="pOpt"><em>optional</em> </span>
+				<span><span dojoAttachPoint="pType">type</span> </span>
+				<a href="#" dojoAttachPoint="pLink">variable</a>
+				<span> - <span dojoAttachPoint="pDesc"></span></span>
+			</div>
+		</div>
+		<div class="variables" dojoAttachPoint="variables">
+			<h2>Variables</h2>
+			<div class"row" dojoAttachPoint="vRow">
+				<a href="#" dojoAttachPoint="vLink">variable</a><span> - <span dojoAttachPoint="vDesc"></span></span>
+			</div>
+		</div>
+		<div class="signature">
+			<h2>Signature</h2>
+			<div class="source">
+				<span class="return" dojoAttachPoint="sType">returnType</span> 
+				<span class="function" dojoAttachPoint="sName">foo</span>
+				(<span class="params" dojoAttachPoint="sParams">
+					<span class="type" dojoAttachPoint="sPType">type </span>
+					<span class="name" dojoAttachPoint="sPName">paramName</span>
+				</span>)
+			</div>
+		</div>
+	</div>
+	
+	<div dojoAttachPoint="result" class="result">
+		<h1>Search Results: <span dojoAttachPoint="count">0</span> matches</h1>
+		<div class="row" dojoAttachPoint="row">
+			<a href="#" dojoAttachPoint="fnLink">dojo.fnLink</a>
+			<span> - <span class="summary" dojoAttachPoint="summary">summary</span></span>
+		</div>
+	</div>
+
+	<div dojoAttachPoint="packag" class="package">
+		<h1>Package: 
+			<span class="pkg" dojoAttachPoint="pkg">dojo.package</span> 
+			<span class="edit" dojoAttachPoint="edit">[edit]</span> 
+			<span class="save" dojoAttachPoint="save">[save]</span>
+		</h1>
+		<div dojoAttachPoint="pkgDescription" class="description">Description</div>
+		<div class="methods" dojoAttachPoint="methods">
+			<h2>Methods</h2>
+			<div class="row" dojoAttachPoint="mRow">
+				<a href="#" dojoAttachPoint="mLink">method</a>
+				<span> - <span class="description" dojoAttachPoint="mDesc"></span></span>
+			</div>
+		</div>
+		<div class="requires" dojoAttachPoint="requires">
+			<h2>Requires</h2>
+			<div class="row" dojoAttachPoint="rRow">
+				<h3 dojoAttachPoint="rH3">Environment</h3>
+				<div dojoAttachPoint="rRow2"><a href="#" dojoAttachPoint="rLink" class="package">require</a></div>
+			</div>
+		</div>
+	</div>
+</div>

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DocPane.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DropDownButtonTemplate.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DropDownButtonTemplate.html?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DropDownButtonTemplate.html (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DropDownButtonTemplate.html Mon Nov 13 14:54:45 2006
@@ -0,0 +1,9 @@
+<button dojoAttachPoint="button" class="dojoButton dojoButtonNoHover" dojoAttachEvent="onMouseOver: ; onMouseOut: ; onClick: ;">
+  <table dojoAttachPoint="table" style="margin:0 0 0 0;"><tr>
+    <td class="label" dojoAttachPoint="labelCell"></td>
+    <td class="border" dojoAttachPoint="borderCell"></td>
+    <td class="downArrow" dojoAttachPoint="arrowCell">
+      <img dojoAttachPoint="arrow">
+    </td>
+  </tr></table>
+</button>
\ No newline at end of file

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/DropDownButtonTemplate.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/createlink.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/createlink.html?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/createlink.html (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/createlink.html Mon Nov 13 14:54:45 2006
@@ -0,0 +1,15 @@
+<table>
+<tr><td>URL</td><td> <input type="text" dojoAttachPoint="link_href" name="dojo_createLink_href"/></td></tr>
+<tr><td>Target </td><td><select dojoAttachPoint="link_target">
+	<option value="">Self</option>
+	<option value="_blank">New Window</option>
+	<option value="_top">Top Window</option>
+	</select></td></tr>
+<tr><td>Class </td><td><input type="text" dojoAttachPoint="link_class" /></td></tr>
+<tr><td colspan="2">
+	<table><tr>
+	<td><button dojoType='Button' dojoAttachEvent='onClick:ok'>OK</button></td>
+	<td><button dojoType='Button' dojoAttachEvent='onClick:cancel'>Cancel</button></td>
+	</tr></table>
+	</td></tr>
+</table>
\ No newline at end of file

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/createlink.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/find.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/find.html?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/find.html (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/find.html Mon Nov 13 14:54:45 2006
@@ -0,0 +1,15 @@
+<table style="white-space: nowrap;">
+<tr><td colspan='2'>Find: <input type="text" dojoAttachPoint="find_text" /></td></tr>
+<tr><td><input type="checkbox" dojoType="CheckBox" dojoAttachPoint="find_option_casesens" />
+		<label for="find_option_casesens">Case Sensitive</label></td>
+			<td><input type="checkbox" dojoType="CheckBox" dojoAttachPoint="find_option_backwards" />
+		<label for="find_option_backwards">Search Backwards</label></td></tr>
+<tr><td style="display: none;"><input type="checkbox" dojoType="CheckBox" dojoAttachPoint="find_option_wholeword" />
+		<label for="find_option_wholeword">Whole Word</label></td>
+<tr><td colspan="1">
+	<table><tr>
+	<td><button dojoType='Button' dojoAttachEvent='onClick:find'>Find</button></td>
+	<td><button dojoType='Button' dojoAttachEvent='onClick:cancel'>Close</button></td>
+	</tr></table>
+	</td></tr>
+</table>
\ No newline at end of file

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/find.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/insertimage.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/insertimage.html?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/insertimage.html (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/insertimage.html Mon Nov 13 14:54:45 2006
@@ -0,0 +1,114 @@
+<table cellspacing="1" cellpadding="1" border="0" width="100%" height="100%">
+	<tr>
+		<td>
+			<table cellspacing="0" cellpadding="0" width="100%" border="0">
+				<tr>
+					<td width="100%">
+						<span>URL</span>
+					</td>
+					<td style="display: none" nowrap="nowrap" rowspan="2">
+						<!--input id="btnBrowse" onclick="BrowseServer();" type="button" value="Browse Server"/-->
+					</td>
+				</tr>
+				<tr>
+					<td valign="top">
+						<input dojoAttachPoint="image_src" style="width: 100%" type="text" />
+					</td>
+				</tr>
+			</table>
+		</td>
+	</tr>
+	<tr>
+		<td>
+			<span>Alternative Text</span><br />
+			<input dojoAttachPoint="image_alt" style="width: 100%" type="text" /><br />
+		</td>
+	</tr>
+	<tr>
+		<td valign="top">
+			<table><tr><td>
+						<table cellspacing="0" cellpadding="0" border="0">
+							<tr>
+								<td nowrap="nowrap">
+									<span>Width</span>&nbsp;</td>
+								<td>
+									<input type="text" size="3" dojoAttachPoint="image_width" /></td>
+
+								<td rowspan="2">
+									<!--div id="btnLockSizes" class="BtnLocked" onmouseover="this.className = (bLockRatio ? 'BtnLocked' : 'BtnUnlocked' ) + ' BtnOver';"
+										onmouseout="this.className = (bLockRatio ? 'BtnLocked' : 'BtnUnlocked' );" title="Lock Sizes"
+										onclick="SwitchLock(this);">
+									</div-->
+								</td>
+								<td rowspan="2">
+									<!--div id="btnResetSize" class="BtnReset" onmouseover="this.className='BtnReset BtnOver';"
+										onmouseout="this.className='BtnReset';" title="Reset Size" onclick="ResetSizes();">
+									</div-->
+								</td>
+							</tr>
+
+							<tr>
+								<td nowrap="nowrap">
+									<span>Height</span>&nbsp;</td>
+								<td>
+									<input type="text" size="3" dojoAttachPoint="image_height" /></td>
+							</tr>
+						</table>
+					</td><td>
+
+						<table cellspacing="0" cellpadding="0" border="0">
+							<tr>
+
+								<td nowrap="nowrap">
+									<span >HSpace</span>&nbsp;</td>
+								<td>
+									<input type="text" size="2" dojoAttachPoint="image_hspace"/></td>
+							</tr>
+							<tr>
+								<td nowrap="nowrap">
+									<span >VSpace</span>&nbsp;</td>
+
+								<td>
+									<input type="text" size="2" dojoAttachPoint="image_vspace" /></td>
+							</tr>
+						</table>
+					</td></tr>
+					<tr><td colspan="2">
+						<table cellspacing="0" cellpadding="0" border="0">
+							<tr>
+								<td nowrap="nowrap">
+									<span>Border</span>&nbsp;</td>
+								<td>
+									<input type="text" size="2" value="" dojoAttachPoint="image_border" /></td>
+								<td>&nbsp;&nbsp;&nbsp;</td>
+								<td nowrap="nowrap">
+									<span >Align</span>&nbsp;</td>
+								<td>
+									<select dojoAttachPoint="image_align">
+
+										<option value="" selected="selected"></option>
+										<option value="left">Left</option>
+										<option value="absBottom">Abs Bottom</option>
+										<option value="absMiddle">Abs Middle</option>
+										<option value="baseline">Baseline</option>
+										<option value="bottom">Bottom</option>
+
+										<option value="middle">Middle</option>
+										<option value="right">Right</option>
+										<option value="textTop">Text Top</option>
+										<option value="top">Top</option>
+									</select>
+								</td>
+							</tr>
+						</table>
+					</td>
+				</tr></table>
+		</td>
+	</tr>
+	<tr><td>
+		<table><tr>
+		<td><button dojoType='Button' dojoAttachEvent='onClick:ok'>OK</button></td>
+		<td><button dojoType='Button' dojoAttachEvent='onClick:cancel'>Cancel</button></td>
+		</tr></table>
+	</td></tr>
+</table>
\ No newline at end of file

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/insertimage.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/inserttable.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/inserttable.html?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/inserttable.html (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/inserttable.html Mon Nov 13 14:54:45 2006
@@ -0,0 +1,91 @@
+<div>
+<table cellSpacing="1" cellPadding="1" width="100%" border="0">
+	<tr>
+		<td valign="top">
+			<table cellSpacing="0" cellPadding="0" border="0">
+				<tr>
+
+					<td><span>Rows</span>:</td>
+					<td>&nbsp;<input dojoAttachPoint="table_rows" type="text" maxLength="3" size="2" value="3"></td>
+				</tr>
+				<tr>
+					<td><span>Columns</span>:</td>
+					<td>&nbsp;<input dojoAttachPoint="table_cols" type="text" maxLength="2" size="2" value="2"></td>
+				</tr>
+
+				<tr>
+					<td>&nbsp;</td>
+					<td>&nbsp;</td>
+				</tr>
+				<tr>
+					<td><span>Border size</span>:</td>
+					<td>&nbsp;<INPUT dojoAttachPoint="table_border" type="text" maxLength="2" size="2" value="1"></td>
+				</tr>
+
+				<tr>
+					<td><span>Alignment</span>:</td>
+					<td>&nbsp;<select dojoAttachPoint="table_align">
+							<option value="" selected>&lt;Not set&gt;</option>
+							<option value="left">Left</option>
+							<option value="center">Center</option>
+							<option value="right">Right</option>
+						</select></td>
+				</tr>
+			</table>
+		</td>
+		<td>&nbsp;&nbsp;&nbsp;</td>
+		<td align="right" valign="top">
+			<table cellSpacing="0" cellPadding="0" border="0">
+				<tr>
+					<td><span>Width</span>:</td>
+					<td>&nbsp;<input dojoAttachPoint="table_width" type="text" maxLength="4" size="3"></td>
+					<td>&nbsp;<select dojoAttachPoint="table_widthtype">
+							<option value="percent" selected>percent</option>
+							<option value="pixels">pixels</option>
+						</select></td>
+
+				</tr>
+				<tr>
+					<td><span>Height</span>:</td>
+					<td>&nbsp;<INPUT dojoAttachPoint="table_height" type="text" maxLength="4" size="3"></td>
+					<td>&nbsp;<span>pixels</span></td>
+				</tr>
+				<tr>
+					<td>&nbsp;</td>
+					<td>&nbsp;</td>
+					<td>&nbsp;</td>
+				</tr>
+				<tr>
+					<td nowrap><span>Cell spacing</span>:</td>
+					<td>&nbsp;<input dojoAttachPoint="table_cellspacing" type="text" maxLength="2" size="2" value="1"></td>
+					<td>&nbsp;</td>
+
+				</tr>
+				<tr>
+					<td nowrap><span>Cell padding</span>:</td>
+					<td>&nbsp;<input dojoAttachPoint="table_cellpadding" type="text" maxLength="2" size="2" value="1"></td>
+					<td>&nbsp;</td>
+				</tr>
+			</table>
+		</td>
+	</tr>
+</table>
+<table cellSpacing="0" cellPadding="0" width="100%" border="0">
+	<tr>
+		<td nowrap><span>Caption</span>:</td>
+		<td>&nbsp;</td>
+		<td width="100%" nowrap>&nbsp;
+			<input dojoAttachPoint="table_caption" type="text" style="WIDTH: 90%"></td>
+	</tr>
+	<tr>
+		<td nowrap><span>Summary</span>:</td>
+		<td>&nbsp;</td>
+		<td width="100%" nowrap>&nbsp;
+			<input dojoAttachPoint="table_summery" type="text" style="WIDTH: 90%"></td>
+	</tr>
+</table>
+<table><tr>
+<td><button dojoType='Button' dojoAttachEvent='onClick:ok'>Ok</button></td>
+<td><button dojoType='Button' dojoAttachEvent='onClick:cancel'>Cancel</button></td>
+</tr></table>
+</div>
\ No newline at end of file

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/inserttable.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/replace.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/replace.html?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/replace.html (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/replace.html Mon Nov 13 14:54:45 2006
@@ -0,0 +1,15 @@
+<table style="white-space: nowrap;">
+<tr><td>Find: </td><td> <input type="text" dojoAttachPoint="replace_text" /></td></tr>
+<tr><td>Replace with: </td><td> <input type="text" dojoAttachPoint="replace_text" /></td></tr>
+<tr><td colspan='2'><table><tr><td><input type="checkbox" dojoType="CheckBox" dojoAttachPoint="replace_option_casesens" id="dojo_replace_option_casesens" />
+		<label for="dojo_replace_option_casesens">Case Sensitive</label></td>
+			<td><input type="checkbox" dojoType="CheckBox" dojoAttachPoint="replace_option_backwards" id="dojo_replace_option_backwards" />
+		<label for="dojo_replace_option_backwards">Search Backwards</label></td></tr></table></td></tr>
+<tr><td colspan=2">
+	<table><tr>
+	<td><button dojoType='Button' dojoAttachEvent='onClick:replace'>Replace</button></td>
+	<td><button dojoType='Button' dojoAttachEvent='onClick:replaceAll'>Replace All</button></td>
+	<td><button dojoType='Button' dojoAttachEvent='onClick:cancel'>Close</button></td>
+	</tr></table>
+	</td></tr>
+</table>

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/Dialog/replace.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/EditorDialog.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/EditorDialog.html?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/EditorDialog.html (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/EditorDialog.html Mon Nov 13 14:54:45 2006
@@ -0,0 +1,18 @@
+<div id="${this.widgetId}" dojoAttachEvent="onMouseDown" class="dojoFloatingPane">
+	<div dojoAttachPoint="titleBar" class="dojoFloatingPaneTitleBar"  style="display:none">
+	  	<img dojoAttachPoint="titleBarIcon"  class="dojoFloatingPaneTitleBarIcon">
+		<div dojoAttachPoint="closeAction" dojoAttachEvent="onClick:hide"
+   	  		class="dojoFloatingPaneCloseIcon"></div>
+		<div dojoAttachPoint="restoreAction" dojoAttachEvent="onClick:restoreWindow"
+   	  		class="dojoFloatingPaneRestoreIcon"></div>
+		<div dojoAttachPoint="maximizeAction" dojoAttachEvent="onClick:maximizeWindow"
+   	  		class="dojoFloatingPaneMaximizeIcon"></div>
+		<div dojoAttachPoint="minimizeAction" dojoAttachEvent="onClick:minimizeWindow"
+   	  		class="dojoFloatingPaneMinimizeIcon"></div>
+	  	<div dojoAttachPoint="titleBarText" class="dojoFloatingPaneTitleText">${this.title}</div>
+	</div>
+
+	<div id="${this.widgetId}_container" dojoAttachPoint="containerNode" class="dojoFloatingPaneClient"></div>
+
+	<div dojoAttachPoint="resizeBar" class="dojoFloatingPaneResizebar" style="display:none"></div>
+</div>
\ No newline at end of file

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/EditorDialog.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/EditorToolbar_FontName.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/EditorToolbar_FontName.html?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/EditorToolbar_FontName.html (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/EditorToolbar_FontName.html Mon Nov 13 14:54:45 2006
@@ -0,0 +1,20 @@
+<div class="SC_Panel" style="width: 150px; height: 150px;">
+	<div class="SC_Item" dropDownItemName="Arial">
+		<font face="Arial" style="font-size: 12px;">Arial</font>
+	</div>
+	<div class="SC_Item" dropDownItemName="Comic Sans MS">
+		<font face="Comic Sans MS" style="font-size: 12px;">Comic Sans MS</font>
+	</div>
+	<div class="SC_Item" dropDownItemName="Courier New">
+		<font face="Courier New" style="font-size: 12px;">Courier New</font>
+	</div>
+	<div class="SC_Item" dropDownItemName="Tahoma">
+		<font face="Tahoma" style="font-size: 12px;">Tahoma</font>
+	</div>
+	<div class="SC_Item" dropDownItemName="Times New Roman">
+		<font face="Times New Roman" style="font-size: 12px;">Times New Roman</font>
+	</div>
+	<div class="SC_Item" dropDownItemName="Verdana">
+		<font face="Verdana" style="font-size: 12px;">Verdana</font>
+	</div>
+</div>
\ No newline at end of file

Propchange: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/EditorToolbar_FontName.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/EditorToolbar_FontSize.html
URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/EditorToolbar_FontSize.html?view=auto&rev=474551
==============================================================================
--- struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/EditorToolbar_FontSize.html (added)
+++ struts/struts2/trunk/core/src/main/resources/org/apache/struts2/static/dojo/src/widget/templates/Editor2/EditorToolbar_FontSize.html Mon Nov 13 14:54:45 2006
@@ -0,0 +1,31 @@
+<div class="SC_Panel" style="width: 150px; height: 150px;">
+<table width="100%" cellspacing="0" cellpadding="0" style="table-layout: fixed;">
+<tbody>
+<tr>
+<td nowrap="">
+	<div class="SC_Item" dropDownItemName="1">
+	<font size="1">xx-small</font>
+	</div>
+	<div class="SC_Item" dropDownItemName="2">
+	<font size="2">x-small</font>
+	</div>
+	<div class="SC_Item" dropDownItemName="3">
+	<font size="3">small</font>
+	</div>
+	<div class="SC_Item" dropDownItemName="4">
+	<font size="4">medium</font>
+	</div>
+	<div class="SC_Item" dropDownItemName="5">
+	<font size="5">large</font>
+	</div>
+	<div class="SC_Item" dropDownItemName="6">
+	<font size="6">x-large</font>
+	</div>
+	<div class="SC_Item" dropDownItemName="7">
+	<font size="7">xx-large</font>
+	</div>
+</td>
+</tr>
+</tbody>
+</table>
+</div>
\ No newline at end of file