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"> </td>
+ <td> </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 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="↓" 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="↓" dojoAttachPoint="incrementMonthImageNode">
+ </span>
+ <span
+ dojoAttachPoint="decreaseWeekNode"
+ dojoAttachEvent="onClick: onIncrementWeek;"
+ class="incrementControl decrease">
+ <img src="${dojoRoot}src/widget/templates/images/decrementMonth.png" alt="↑" 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="↑" 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> </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> </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> </td>
+ <td>
+ <input type="text" size="2" dojoAttachPoint="image_hspace"/></td>
+ </tr>
+ <tr>
+ <td nowrap="nowrap">
+ <span >VSpace</span> </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> </td>
+ <td>
+ <input type="text" size="2" value="" dojoAttachPoint="image_border" /></td>
+ <td> </td>
+ <td nowrap="nowrap">
+ <span >Align</span> </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> <input dojoAttachPoint="table_rows" type="text" maxLength="3" size="2" value="3"></td>
+ </tr>
+ <tr>
+ <td><span>Columns</span>:</td>
+ <td> <input dojoAttachPoint="table_cols" type="text" maxLength="2" size="2" value="2"></td>
+ </tr>
+
+ <tr>
+ <td> </td>
+ <td> </td>
+ </tr>
+ <tr>
+ <td><span>Border size</span>:</td>
+ <td> <INPUT dojoAttachPoint="table_border" type="text" maxLength="2" size="2" value="1"></td>
+ </tr>
+
+ <tr>
+ <td><span>Alignment</span>:</td>
+ <td> <select dojoAttachPoint="table_align">
+ <option value="" selected><Not set></option>
+ <option value="left">Left</option>
+ <option value="center">Center</option>
+ <option value="right">Right</option>
+ </select></td>
+ </tr>
+ </table>
+ </td>
+ <td> </td>
+ <td align="right" valign="top">
+ <table cellSpacing="0" cellPadding="0" border="0">
+ <tr>
+ <td><span>Width</span>:</td>
+ <td> <input dojoAttachPoint="table_width" type="text" maxLength="4" size="3"></td>
+ <td> <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> <INPUT dojoAttachPoint="table_height" type="text" maxLength="4" size="3"></td>
+ <td> <span>pixels</span></td>
+ </tr>
+ <tr>
+ <td> </td>
+ <td> </td>
+ <td> </td>
+ </tr>
+ <tr>
+ <td nowrap><span>Cell spacing</span>:</td>
+ <td> <input dojoAttachPoint="table_cellspacing" type="text" maxLength="2" size="2" value="1"></td>
+ <td> </td>
+
+ </tr>
+ <tr>
+ <td nowrap><span>Cell padding</span>:</td>
+ <td> <input dojoAttachPoint="table_cellpadding" type="text" maxLength="2" size="2" value="1"></td>
+ <td> </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellSpacing="0" cellPadding="0" width="100%" border="0">
+ <tr>
+ <td nowrap><span>Caption</span>:</td>
+ <td> </td>
+ <td width="100%" nowrap>
+ <input dojoAttachPoint="table_caption" type="text" style="WIDTH: 90%"></td>
+ </tr>
+ <tr>
+ <td nowrap><span>Summary</span>:</td>
+ <td> </td>
+ <td width="100%" nowrap>
+ <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