You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by jk...@apache.org on 2008/02/04 23:08:37 UTC

svn commit: r618461 [31/43] - in /tapestry/tapestry4/trunk/tapestry-framework/src/js: dojo-0.4.3-custom-4.1.5/ dojo-0.4.3-custom-4.1.5/nls/ dojo-0.4.3-custom-4.1.5/src/ dojo-0.4.3-custom-4.1.5/src/animation/ dojo-0.4.3-custom-4.1.5/src/cal/ dojo-0.4.3-...

Added: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Form.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Form.js?rev=618461&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Form.js (added)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Form.js Mon Feb  4 14:07:13 2008
@@ -0,0 +1,254 @@
+dojo.provide("dojo.widget.Form");
+dojo.require("dojo.widget.*");
+dojo.require("dojo.widget.HtmlWidget");
+dojo.widget.defineWidget("dojo.widget.Form",dojo.widget.HtmlWidget,{isContainer:true,templateString:"<form dojoAttachPoint='containerNode' dojoAttachEvent='onSubmit:onSubmit'></form>",formElements:[],ignoreNullValues:false,postCreate:function(_1,_2){
+for(var _3 in _1){
+if(_3=="dojotype"){
+continue;
+}
+var _4=document.createAttribute(_3);
+_4.nodeValue=_1[_3];
+this.containerNode.setAttributeNode(_4);
+}
+},_createRepeaters:function(_5,_6){
+for(var i=0;i<_6.children.length;++i){
+if(_6.children[i].widgetType=="RepeaterContainer"){
+var _8=_6.children[i].index;
+var _9=_8.indexOf("%{index}");
+_8=_8.substr(0,_9-1);
+var _a=this._getObject(_5,_8);
+if(typeof (_a)=="object"&&_a.length==0){
+_a=new Array();
+}
+var _b=_6.children[i].getRowCount();
+for(var j=0,_d=_b;j<_d;++j){
+_6.children[i].deleteRow(0);
+}
+for(var j=0;j<_a.length;j++){
+_6.children[i].addRow(false);
+}
+}
+if(_6.children[i].isContainer){
+this._createRepeaters(_5,_6.children[i]);
+}
+}
+},_createFormElements:function(){
+if(dojo.render.html.safari){
+this.formElements=[];
+var _e=["INPUT","SELECT","TEXTAREA"];
+for(var k=0;k<_e.length;k++){
+var _10=this.containerNode.getElementsByTagName(_e[k]);
+for(var j=0,_12=_10.length;j<_12;j++){
+this.formElements.push(_10[j]);
+}
+}
+}else{
+this.formElements=this.containerNode.elements;
+}
+},onSubmit:function(e){
+e.preventDefault();
+},submit:function(){
+this.containerNode.submit();
+},_getFormElement:function(_14){
+if(dojo.render.html.ie){
+for(var i=0,len=this.formElements.length;i<len;i++){
+var _17=this.formElements[i];
+if(_17.name==_14){
+return _17;
+}
+}
+}else{
+var _18=this.formElements[_14];
+if(typeof (_18)!="undefined"){
+return _18;
+}
+}
+return null;
+},_getObject:function(obj,_1a){
+var _1b=[];
+_1b=_1a.split(".");
+var _1c=obj;
+var _1d=_1b[_1b.length-1];
+for(var j=0,len=_1b.length;j<len;++j){
+var p=_1b[j];
+if(typeof (_1c[p])=="undefined"){
+_1c[p]={};
+}
+_1c=_1c[p];
+}
+return _1c;
+},_setToContainers:function(obj,_22){
+for(var i=0,len=_22.children.length;i<len;++i){
+var _25=_22.children[i];
+if(_25.widgetType=="Repeater"){
+for(var j=0,len=_25.getRowCount();j<len;++j){
+_25._initRow(j);
+}
+}
+if(_25.isContainer){
+this._setToContainers(obj,_25);
+continue;
+}
+switch(_25.widgetType){
+case "Checkbox":
+_25.setValue(_25.inputNode.checked);
+break;
+case "DropdownDatePicker":
+_25.setValue(_25.getValue());
+break;
+case "Select":
+continue;
+break;
+case "ComboBox":
+continue;
+break;
+default:
+break;
+}
+}
+},setValues:function(obj){
+this._createFormElements();
+this._createRepeaters(obj,this);
+for(var i=0,len=this.formElements.length;i<len;i++){
+var _2a=this.formElements[i];
+if(_2a.name==""){
+continue;
+}
+var _2b=new Array();
+_2b=_2a.name.split(".");
+var _2c=obj;
+var _2d=_2b[_2b.length-1];
+for(var j=1,_2f=_2b.length;j<_2f;++j){
+var p=_2b[j-1];
+if(typeof (_2c[p])=="undefined"){
+_2c=undefined;
+break;
+}
+_2c=_2c[p];
+}
+if(typeof (_2c)=="undefined"){
+continue;
+}
+if(typeof (_2c[_2d])=="undefined"&&this.ignoreNullValues){
+continue;
+}
+var _31=_2a.type;
+if(_31=="hidden"||_31=="text"||_31=="textarea"||_31=="password"){
+_31="text";
+}
+switch(_31){
+case "checkbox":
+_2a.checked=false;
+if(typeof (_2c[_2d])=="undefined"){
+continue;
+}
+for(var j=0,_2f=_2c[_2d].length;j<_2f;++j){
+if(_2a.value==_2c[_2d][j]){
+_2a.checked=true;
+}
+}
+break;
+case "radio":
+_2a.checked=false;
+if(typeof (_2c[_2d])=="undefined"){
+continue;
+}
+if(_2c[_2d]==_2a.value){
+_2a.checked=true;
+}
+break;
+case "select-multiple":
+_2a.selectedIndex=-1;
+for(var j=0,_2f=_2a.options.length;j<_2f;++j){
+for(var k=0,_33=_2c[_2d].length;k<_33;++k){
+if(_2a.options[j].value==_2c[_2d][k]){
+_2a.options[j].selected=true;
+}
+}
+}
+break;
+case "select-one":
+_2a.selectedIndex="0";
+for(var j=0,_2f=_2a.options.length;j<_2f;++j){
+if(_2a.options[j].value==_2c[_2d]){
+_2a.options[j].selected=true;
+}else{
+}
+}
+break;
+case "text":
+var _34="";
+if(typeof (_2c[_2d])!="undefined"){
+_34=_2c[_2d];
+}
+_2a.value=_34;
+break;
+default:
+dojo.debug("Not supported type ("+_31+")");
+break;
+}
+}
+this._setToContainers(obj,this);
+},getValues:function(){
+this._createFormElements();
+var obj={};
+for(var i=0,len=this.formElements.length;i<len;i++){
+var elm=this.formElements[i];
+var _39=[];
+if(elm.name==""){
+continue;
+}
+_39=elm.name.split(".");
+var _3a=obj;
+var _3b=_39[_39.length-1];
+for(var j=1,_3d=_39.length;j<_3d;++j){
+var _3e=null;
+var p=_39[j-1];
+var _40=p.split("[");
+if(_40.length>1){
+if(typeof (_3a[_40[0]])=="undefined"){
+_3a[_40[0]]=[];
+}
+_3e=parseInt(_40[1]);
+if(typeof (_3a[_40[0]][_3e])=="undefined"){
+_3a[_40[0]][_3e]={};
+}
+}else{
+if(typeof (_3a[_40[0]])=="undefined"){
+_3a[_40[0]]={};
+}
+}
+if(_40.length==1){
+_3a=_3a[_40[0]];
+}else{
+_3a=_3a[_40[0]][_3e];
+}
+}
+if((elm.type!="select-multiple"&&elm.type!="checkbox"&&elm.type!="radio")||(elm.type=="radio"&&elm.checked)){
+if(_3b==_3b.split("[")[0]){
+_3a[_3b]=elm.value;
+}else{
+}
+}else{
+if(elm.type=="checkbox"&&elm.checked){
+if(typeof (_3a[_3b])=="undefined"){
+_3a[_3b]=[];
+}
+_3a[_3b].push(elm.value);
+}else{
+if(elm.type=="select-multiple"){
+if(typeof (_3a[_3b])=="undefined"){
+_3a[_3b]=[];
+}
+for(var jdx=0,_42=elm.options.length;jdx<_42;++jdx){
+if(elm.options[jdx].selected){
+_3a[_3b].push(elm.options[jdx].value);
+}
+}
+}
+}
+}
+_3b=undefined;
+}
+return obj;
+}});

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Form.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Form.js
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Form.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/GoogleMap.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/GoogleMap.js?rev=618461&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/GoogleMap.js (added)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/GoogleMap.js Mon Feb  4 14:07:13 2008
@@ -0,0 +1,156 @@
+dojo.provide("dojo.widget.GoogleMap");
+dojo.require("dojo.event.*");
+dojo.require("dojo.math");
+dojo.require("dojo.widget.*");
+dojo.require("dojo.uri.Uri");
+dojo.require("dojo.widget.HtmlWidget");
+(function(){
+var _1=djConfig["gMapKey"]||djConfig["googleMapKey"];
+var _2=new dojo.uri.Uri(window.location.href);
+if(_2.host=="www.dojotoolkit.org"){
+_1="ABQIAAAACUNdgv_7FGOmUslbm9l6_hRqjp7ri2mNiOEYqetD3xnFHpt5rBSjszDd1sdufPyQKUTyCf_YxoIxvw";
+}else{
+if(_2.host=="blog.dojotoolkit.org"){
+_1="ABQIAAAACUNdgv_7FGOmUslbm9l6_hSkep6Av1xaMhVn3yCLkorJeXeLARQ6fammI_P3qSGleTJhoI5_1JmP_Q";
+}else{
+if(_2.host=="archive.dojotoolkit.org"){
+_1="ABQIAAAACUNdgv_7FGOmUslbm9l6_hTaQpDt0dyGLIHbXMPTzg1kWeAfwRTwZNyrUfbfxYE9yIvRivEjcXoDTg";
+}else{
+if(_2.host=="dojotoolkit.org"){
+_1="ABQIAAAACUNdgv_7FGOmUslbm9l6_hSaOaO_TgJ5c3mtQFnk5JO2zD5dZBRZk-ieqVs7BORREYNzAERmcJoEjQ";
+}
+}
+}
+}
+if(!dojo.hostenv.post_load_){
+if(!_1||_1==""){
+dojo.raise("dojo.widget.GoogleMap: The Google Map widget requires a proper API key in order to be used.");
+}
+var _3="<scr"+"ipt src='http://maps.google.com/maps?file=api&amp;v=2&amp;key="+_1+"'></scri"+"pt>";
+if(!dj_global["GMap2"]){
+document.write(_3);
+}
+}else{
+dojo.debug("Cannot initialize Google Map system after the page has been loaded! Please either manually include the script block provided by Google in your page or require() the GoogleMap widget before onload has fired.");
+}
+})();
+dojo.widget.defineWidget("dojo.widget.GoogleMap",dojo.widget.HtmlWidget,function(){
+this.map=null;
+this.geocoder=null;
+this.data=[];
+this.datasrc="";
+this.controls=["largemap","scale","maptype"];
+},{templatePath:null,templateCssPath:null,isContainer:false,_defaultPoint:{lat:39.10662,lng:-94.578209},setControls:function(){
+var _4={largemap:GLargeMapControl,smallmap:GSmallMapControl,smallzoom:GSmallZoomControl,scale:GScaleControl,maptype:GMapTypeControl,overview:GOverviewMapControl};
+for(var i=0;i<this.controls.length;i++){
+this.map.addControl(new (_4[this.controls[i].toLowerCase()])());
+}
+},findCenter:function(_6){
+if(this.data.length==1){
+return (new GLatLng(this.data[0].lat,this.data[0].lng));
+}
+var _7=(_6.getNorthEast().lat()+_6.getSouthWest().lat())/2;
+var _8=(_6.getNorthEast().lng()+_6.getSouthWest().lng())/2;
+return (new GLatLng(_7,_8));
+},createPinpoint:function(pt,_a){
+var m=new GMarker(pt);
+if(_a){
+GEvent.addListener(m,"click",function(){
+m.openInfoWindowHtml("<div>"+_a+"</div>");
+});
+}
+return m;
+},plot:function(_c){
+var p=new GLatLng(_c.lat,_c.lng);
+var d=_c.description||null;
+var m=this.createPinpoint(p,d);
+this.map.addOverlay(m);
+},plotAddress:function(_10){
+var _11=this;
+this.geocoder.getLocations(_10,function(_12){
+if(!_12||_12.Status.code!=200){
+alert("The address \""+_10+"\" was not found.");
+return;
+}
+var obj={lat:_12.Placemark[0].Point.coordinates[1],lng:_12.Placemark[0].Point.coordinates[0],description:_12.Placemark[0].address};
+_11.data.push(obj);
+_11.render();
+});
+},parse:function(_14){
+this.data=[];
+var h=_14.getElementsByTagName("thead")[0];
+if(!h){
+return;
+}
+var a=[];
+var _17=h.getElementsByTagName("td");
+if(_17.length==0){
+_17=h.getElementsByTagName("th");
+}
+for(var i=0;i<_17.length;i++){
+var c=_17[i].innerHTML.toLowerCase();
+if(c=="long"){
+c="lng";
+}
+a.push(c);
+}
+var b=_14.getElementsByTagName("tbody")[0];
+if(!b){
+return;
+}
+for(var i=0;i<b.childNodes.length;i++){
+if(!(b.childNodes[i].nodeName&&b.childNodes[i].nodeName.toLowerCase()=="tr")){
+continue;
+}
+var _1b=b.childNodes[i].getElementsByTagName("td");
+var o={};
+for(var j=0;j<a.length;j++){
+var col=a[j];
+if(col=="lat"||col=="lng"){
+o[col]=parseFloat(_1b[j].innerHTML);
+}else{
+o[col]=_1b[j].innerHTML;
+}
+}
+this.data.push(o);
+}
+},render:function(){
+if(this.data.length==0){
+this.map.setCenter(new GLatLng(this._defaultPoint.lat,this._defaultPoint.lng),4);
+return;
+}
+this.map.clearOverlays();
+var _1f=new GLatLngBounds();
+var d=this.data;
+for(var i=0;i<d.length;i++){
+_1f.extend(new GLatLng(d[i].lat,d[i].lng));
+}
+var _22=Math.min((this.map.getBoundsZoomLevel(_1f)-1),14);
+this.map.setCenter(this.findCenter(_1f),_22);
+for(var i=0;i<this.data.length;i++){
+this.plot(this.data[i]);
+}
+},initialize:function(_23,_24){
+if(this.datasrc){
+this.parse(dojo.byId(this.datasrc));
+}else{
+if(this.domNode.getElementsByTagName("table")[0]){
+this.parse(this.domNode.getElementsByTagName("table")[0]);
+}
+}
+},postCreate:function(){
+while(this.domNode.childNodes.length>0){
+this.domNode.removeChild(this.domNode.childNodes[0]);
+}
+if(this.domNode.style.position!="absolute"){
+this.domNode.style.position="relative";
+}
+this.map=new GMap2(this.domNode);
+try{
+this.geocoder=new GClientGeocoder();
+}
+catch(ex){
+}
+this.render();
+this.setControls();
+}});

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/GoogleMap.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/GoogleMap.js
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/GoogleMap.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/HslColorPicker.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/HslColorPicker.js?rev=618461&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/HslColorPicker.js (added)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/HslColorPicker.js Mon Feb  4 14:07:13 2008
@@ -0,0 +1,97 @@
+dojo.provide("dojo.widget.svg.HslColorPicker");
+dojo.require("dojo.widget.*");
+dojo.require("dojo.widget.HtmlWidget");
+dojo.require("dojo.widget.HslColorPicker");
+dojo.require("dojo.math");
+dojo.require("dojo.svg");
+dojo.require("dojo.gfx.color");
+dojo.require("dojo.gfx.color.hsl");
+dojo.require("dojo.experimental");
+dojo.experimental("dojo.widget.svg.HslColorPicker");
+dojo.widget.defineWidget("dojo.widget.svg.HslColorPicker",dojo.widget.HtmlWidget,function(){
+dojo.debug("warning: the HslColorPicker is not a finished widget, and is not yet ready for general use");
+this.filterObject={};
+},{hue:"0",saturation:"0",light:"0",storedColor:"#0054aa",templateString:"<svg xmlns=\"http://www.w3.org/2000/svg\"\n\txmlns:xlink=\"http://www.w3.org/1999/xlink\"\n\tversion=\"1.1\" baseProfile=\"full\" width=\"170\" height=\"131\" xmlns:html=\"http://www.w3.org/1999/xhtml\">\n\t<defs>\n\t<linearGradient id=\"colorGradient\" dojoAttachPoint=\"colorGradientNode\" x1=\"0\" x2=\"131\" y1=\"0\" y2=\"0\" gradientUnits=\"userSpaceOnUse\">\n\t\t<stop id=\"leftGradientColor\" dojoAttachPoint=\"leftGradientColorNode\" offset=\"0%\" stop-color=\"#828282\"/>\n\t\t<stop id=\"rightGradientColor\" dojoAttachPoint=\"rightGradientColorNode\" offset=\"100%\" stop-color=\"#053fff\"/>\n\t</linearGradient>\n\t<linearGradient id=\"verticalGradient\" x1=\"0\" x2=\"0\" y1=\"0\" y2=\"131\" gradientUnits=\"userSpaceOnUse\">\n\t\t<stop offset=\"0%\" style=\"stop-color:#000000;\"/>\n\t\t<stop offset=\"50%\" style=\"stop-color:#000000;stop-opacity:0;\"/>\n\t\t<stop offset=\"50%\" style=\"stop-color:#f
 fffff;stop-opacity:0;\"/>\n\t\t<stop offset=\"100%\" style=\"stop-color:#ffffff;\"/>\n\t</linearGradient>\n\t<linearGradient id=\"sliderGradient\">\n\t\t<stop offset=\"0%\" style=\"stop-color:#000000;\"/>\n\t\t<stop offset=\"15%\" style=\"stop-color:#ffffff;\"/>\n\t\t<stop offset=\"30%\" style=\"stop-color:#000000;\"/>\n\t\t<stop offset=\"45%\" style=\"stop-color:#ffffff;\"/>\n\t\t<stop offset=\"60%\" style=\"stop-color:#000000;\"/>\n\t\t<stop offset=\"75%\" style=\"stop-color:#ffffff;\"/>\n\t\t<stop offset=\"90%\" style=\"stop-color:#000000;\"/>\n\t</linearGradient>\n</defs>\n\t<rect x=\"0\" y=\"0\" width=\"131px\" height=\"131px\" fill=\"url(#colorGradient)\"/>\n\t<rect x=\"0\" y=\"0\" width=\"131px\" height=\"131px\" style=\"fill:url(#verticalGradient);\"/>\n\t<rect id=\"saturationLightSlider\" dojoAttachPoint=\"saturationLightSliderNode\" x=\"100\" y=\"100\" width=\"5px\" height=\"5px\" style=\"stroke:url(#sliderGradient);stroke-width:1px;fill-opacity:0;\"/>\n\t<image xl
 ink:href=\"images/hue.png\" dojoAttachPoint=\"hueNode\" x=\"140px\" y=\"0px\" width=\"21px\" height=\"131px\" dojoAttachEvent=\"onclick: onHueClick;\"/>\n\t<rect dojoAttachPoint=\"hueSliderNode\" x=\"139px\" y=\"40px\" width=\"24px\" height=\"4px\" style=\"stroke-opacity:1;fill-opacity:0;stroke:black;\"/>\n</svg>\n",fillInTemplate:function(){
+this.height="131px";
+this.svgDoc=this.hueNode.ownerDocument;
+this.leftGradientColorNode=this.hueNode.ownerDocument.getElementById("leftGradientColor");
+this.rightGradientColorNode=this.hueNode.ownerDocument.getElementById("rightGradientColor");
+this.hueNode.setAttributeNS(dojo.dom.xmlns.xlink,"href",dojo.uri.moduleUri("dojo.widget","templates/images/hue.png"));
+var _1=dojo.gfx.color.hex2hsl(this.storedColor);
+this.hue=_1[0];
+this.saturation=_1[1];
+this.light=_1[2];
+this.setSaturationStopColors();
+},setSaturationStopColors:function(){
+this.leftGradientStopColor=dojo.gfx.color.rgb2hex(this.hsl2rgb(this.hue,0,50));
+this.rightGradientStopColor=dojo.gfx.color.rgb2hex(this.hsl2rgb(this.hue,100,50));
+this.leftGradientColorNode.setAttributeNS(null,"stop-color",this.leftGradientStopColor);
+this.rightGradientColorNode.setAttributeNS(null,"stop-color",this.rightGradientStopColor);
+},setHue:function(_2){
+this.hue=_2;
+},setHueSlider:function(){
+this.hueSliderNode.setAttribute("y",parseInt((this.hue/360)*parseInt(this.height)-2)+"px");
+},setSaturationLight:function(_3,_4){
+this.saturation=_3;
+this.light=_4;
+},setSaturationLightSlider:function(){
+},onHueClick:function(_5){
+var _6=parseInt(_5.clientY)-parseInt(_5.target.getAttribute("y"));
+this.setHue(360-parseInt(_6*(360/parseInt(this.height))));
+this.setSaturationStopColors();
+this.setStoredColor(dojo.gfx.color.hsl2hex(this.hue,this.saturation,this.light));
+},onHueDrag:function(_7){
+},onSaturationLightClick:function(_8){
+var _9=parseInt(_8.clientX)-parseInt(_8.target.getAttribute("y"));
+var _a=parseInt(_8.clientY)-parseInt(_8.target.getAttribute("y"));
+var _b=parseInt(parseInt(_9)*(101/106));
+var _c=parseInt(parseInt(_a)*(101/106));
+this.setSaturationLight(_b,_c);
+this.setStoredColor(dojo.gfx.color.hsl2hex(this.hue,this.saturation,this.light));
+},onSaturationLightDrag:function(_d){
+},getStoredColor:function(){
+return this.storedColor;
+},setStoredColor:function(_e){
+this.storedColor=_e;
+dojo.event.topic.publish("/"+this.widgetId+"/setStoredColor",this.filterObject);
+},hsl2rgb:function(_f,_10,_11){
+function rgb(q1,q2,hue){
+if(hue>360){
+hue=hue-360;
+}
+if(hue<0){
+hue=hue+360;
+}
+if(hue<60){
+return (q1+(q2-q1)*hue/60);
+}else{
+if(hue<180){
+return (q2);
+}else{
+if(hue<240){
+return (q1+(q2-q1)*(240-hue)/60);
+}else{
+return (q1);
+}
+}
+}
+}
+this.rgb=rgb;
+if(_10==0){
+return [Math.round(_11*255/100),Math.round(_11*255/100),Math.round(_11*255/100)];
+}else{
+_11=_11/100;
+_10=_10/100;
+if((_11)<0.5){
+var _15=(_11)*(1+_10);
+}else{
+var _15=(_11+_10-(_11*_10));
+}
+var _16=2*_11-_15;
+var _17=[];
+_17[0]=Math.round(rgb(_16,_15,parseInt(_f)+120)*255);
+_17[1]=Math.round(rgb(_16,_15,_f)*255);
+_17[2]=Math.round(rgb(_16,_15,parseInt(_f)-120)*255);
+return _17;
+}
+}});

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/HslColorPicker.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/HslColorPicker.js
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/HslColorPicker.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/HtmlWidget.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/HtmlWidget.js?rev=618461&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/HtmlWidget.js (added)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/HtmlWidget.js Mon Feb  4 14:07:13 2008
@@ -0,0 +1,88 @@
+dojo.provide("dojo.widget.HtmlWidget");
+dojo.require("dojo.widget.DomWidget");
+dojo.require("dojo.html.util");
+dojo.require("dojo.html.display");
+dojo.require("dojo.html.layout");
+dojo.require("dojo.lang.extras");
+dojo.require("dojo.lang.func");
+dojo.require("dojo.lfx.toggle");
+dojo.declare("dojo.widget.HtmlWidget",dojo.widget.DomWidget,{templateCssPath:null,templatePath:null,lang:"",toggle:"plain",toggleDuration:150,initialize:function(_1,_2){
+},postMixInProperties:function(_3,_4){
+if(this.lang===""){
+this.lang=null;
+}
+this.toggleObj=dojo.lfx.toggle[this.toggle.toLowerCase()]||dojo.lfx.toggle.plain;
+},createNodesFromText:function(_5,_6){
+return dojo.html.createNodesFromText(_5,_6);
+},destroyRendering:function(_7){
+try{
+if(this.bgIframe){
+this.bgIframe.remove();
+delete this.bgIframe;
+}
+if(!_7&&this.domNode){
+dojo.event.browser.clean(this.domNode);
+}
+dojo.widget.HtmlWidget.superclass.destroyRendering.call(this);
+}
+catch(e){
+}
+},isShowing:function(){
+return dojo.html.isShowing(this.domNode);
+},toggleShowing:function(){
+if(this.isShowing()){
+this.hide();
+}else{
+this.show();
+}
+},show:function(){
+if(this.isShowing()){
+return;
+}
+this.animationInProgress=true;
+this.toggleObj.show(this.domNode,this.toggleDuration,null,dojo.lang.hitch(this,this.onShow),this.explodeSrc);
+},onShow:function(){
+this.animationInProgress=false;
+this.checkSize();
+},hide:function(){
+if(!this.isShowing()){
+return;
+}
+this.animationInProgress=true;
+this.toggleObj.hide(this.domNode,this.toggleDuration,null,dojo.lang.hitch(this,this.onHide),this.explodeSrc);
+},onHide:function(){
+this.animationInProgress=false;
+},_isResized:function(w,h){
+if(!this.isShowing()){
+return false;
+}
+var wh=dojo.html.getMarginBox(this.domNode);
+var _b=w||wh.width;
+var _c=h||wh.height;
+if(this.width==_b&&this.height==_c){
+return false;
+}
+this.width=_b;
+this.height=_c;
+return true;
+},checkSize:function(){
+if(!this._isResized()){
+return;
+}
+this.onResized();
+},resizeTo:function(w,h){
+dojo.html.setMarginBox(this.domNode,{width:w,height:h});
+if(this.isShowing()){
+this.onResized();
+}
+},resizeSoon:function(){
+if(this.isShowing()){
+dojo.lang.setTimeout(this,this.onResized,0);
+}
+},onResized:function(){
+dojo.lang.forEach(this.children,function(_f){
+if(_f.checkSize){
+_f.checkSize();
+}
+});
+}});

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/HtmlWidget.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/HtmlWidget.js
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/HtmlWidget.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/InlineEditBox.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/InlineEditBox.js?rev=618461&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/InlineEditBox.js (added)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/InlineEditBox.js Mon Feb  4 14:07:13 2008
@@ -0,0 +1,143 @@
+dojo.provide("dojo.widget.InlineEditBox");
+dojo.require("dojo.widget.*");
+dojo.require("dojo.event.*");
+dojo.require("dojo.lfx.*");
+dojo.require("dojo.gfx.color");
+dojo.require("dojo.string");
+dojo.require("dojo.html.*");
+dojo.require("dojo.html.layout");
+dojo.widget.defineWidget("dojo.widget.InlineEditBox",dojo.widget.HtmlWidget,function(){
+this.history=[];
+},{templateString:"<form class=\"inlineEditBox\" style=\"display: none\" dojoAttachPoint=\"form\" dojoAttachEvent=\"onSubmit:saveEdit; onReset:cancelEdit; onKeyUp: checkForValueChange;\">\n\t<input type=\"text\" dojoAttachPoint=\"text\" style=\"display: none;\" />\n\t<textarea dojoAttachPoint=\"textarea\" style=\"display: none;\"></textarea>\n\t<input type=\"submit\" value=\"Save\" dojoAttachPoint=\"submitButton\" />\n\t<input type=\"reset\" value=\"Cancel\" dojoAttachPoint=\"cancelButton\" />\n</form>\n",templateCssString:".editLabel {\n\tfont-size : small;\n\tpadding : 0 5px;\n\tdisplay : none;\n}\n\n.editableRegionDisabled {\n\tcursor : pointer;\n\t_cursor : hand;\n}\n\n.editableRegion {\n\tbackground-color : #ffc !important;\n\tcursor : pointer;\n\t_cursor : hand;\n}\n\n.editableRegion .editLabel {\n\tdisplay : inline;\n}\n\n.editableTextareaRegion .editLabel {\n\tdisplay : block;\n}\n\n.inlineEditBox {\n\t/*background-color : #ffc;*/\n\tdisplay : inline;\n}\n",templateC
 ssPath:dojo.uri.moduleUri("dojo.widget","templates/InlineEditBox.css"),mode:"text",name:"",minWidth:100,minHeight:200,editing:false,value:"",textValue:"",defaultText:"",postMixInProperties:function(){
+if(this.textValue){
+dojo.deprecated("InlineEditBox: Use value parameter instead of textValue; will be removed in 0.5");
+this.value=this.textValue;
+}
+if(this.defaultText){
+dojo.deprecated("InlineEditBox: Use value parameter instead of defaultText; will be removed in 0.5");
+this.value=this.defaultText;
+}
+},postCreate:function(_1,_2){
+this.editable=this.getFragNodeRef(_2);
+dojo.html.insertAfter(this.editable,this.form);
+dojo.event.connect(this.editable,"onmouseover",this,"onMouseOver");
+dojo.event.connect(this.editable,"onmouseout",this,"onMouseOut");
+dojo.event.connect(this.editable,"onclick",this,"_beginEdit");
+if(this.value){
+this.editable.innerHTML=this.value;
+return;
+}else{
+this.value=dojo.string.trim(this.editable.innerHTML);
+this.editable.innerHTML=this.value;
+}
+},onMouseOver:function(){
+if(!this.editing){
+if(this.disabled){
+dojo.html.addClass(this.editable,"editableRegionDisabled");
+}else{
+dojo.html.addClass(this.editable,"editableRegion");
+if(this.mode=="textarea"){
+dojo.html.addClass(this.editable,"editableTextareaRegion");
+}
+}
+}
+},onMouseOut:function(){
+if(!this.editing){
+dojo.html.removeClass(this.editable,"editableRegion");
+dojo.html.removeClass(this.editable,"editableTextareaRegion");
+dojo.html.removeClass(this.editable,"editableRegionDisabled");
+}
+},_beginEdit:function(e){
+if(this.editing||this.disabled){
+return;
+}
+this.onMouseOut();
+this.editing=true;
+var ee=this[this.mode.toLowerCase()];
+ee.value=dojo.string.trim(this.value);
+ee.style.fontSize=dojo.html.getStyle(this.editable,"font-size");
+ee.style.fontWeight=dojo.html.getStyle(this.editable,"font-weight");
+ee.style.fontStyle=dojo.html.getStyle(this.editable,"font-style");
+var bb=dojo.html.getBorderBox(this.editable);
+ee.style.width=Math.max(bb.width,this.minWidth)+"px";
+if(this.mode.toLowerCase()=="textarea"){
+ee.style.display="block";
+ee.style.height=Math.max(bb.height,this.minHeight)+"px";
+}else{
+ee.style.display="";
+}
+this.form.style.display="";
+this.editable.style.display="none";
+ee.focus();
+ee.select();
+this.submitButton.disabled=true;
+},saveEdit:function(e){
+e.preventDefault();
+e.stopPropagation();
+var ee=this[this.mode.toLowerCase()];
+if((this.value!=ee.value)&&(dojo.string.trim(ee.value)!="")){
+this.doFade=true;
+this.history.push(this.value);
+this.onSave(ee.value,this.value,this.name);
+this.value=ee.value;
+this.editable.innerHTML="";
+var _8=document.createTextNode(this.value);
+this.editable.appendChild(_8);
+}else{
+this.doFade=false;
+}
+this._finishEdit(e);
+},_stopEditing:function(){
+this.editing=false;
+this.form.style.display="none";
+this.editable.style.display="";
+return true;
+},cancelEdit:function(e){
+this._stopEditing();
+this.onCancel();
+return true;
+},_finishEdit:function(e){
+this._stopEditing();
+if(this.doFade){
+dojo.lfx.highlight(this.editable,dojo.gfx.color.hex2rgb("#ffc"),700).play(300);
+}
+this.doFade=false;
+},setText:function(_b){
+dojo.deprecated("setText() is deprecated, call setValue() instead, will be removed in 0.5");
+this.setValue(_b);
+},setValue:function(_c){
+_c=""+_c;
+var tt=dojo.string.trim(_c);
+this.value=tt;
+this.editable.innerHTML=tt;
+},undo:function(){
+if(this.history.length>0){
+var _e=this.value;
+var _f=this.history.pop();
+this.editable.innerHTML=_f;
+this.value=_f;
+this.onUndo(_f);
+this.onSave(_f,_e,this.name);
+}
+},onChange:function(_10,_11){
+},onSave:function(_12,_13,_14){
+},onCancel:function(){
+},checkForValueChange:function(){
+var ee=this[this.mode.toLowerCase()];
+if((this.value!=ee.value)&&(dojo.string.trim(ee.value)!="")){
+this.submitButton.disabled=false;
+}
+this.onChange(this.value,ee.value);
+},disable:function(){
+this.submitButton.disabled=true;
+this.cancelButton.disabled=true;
+var ee=this[this.mode.toLowerCase()];
+ee.disabled=true;
+dojo.widget.InlineEditBox.superclass.disable.apply(this,arguments);
+},enable:function(){
+this.checkForValueChange();
+this.cancelButton.disabled=false;
+var ee=this[this.mode.toLowerCase()];
+ee.disabled=false;
+dojo.widget.InlineEditBox.superclass.enable.apply(this,arguments);
+}});

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/InlineEditBox.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/InlineEditBox.js
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/InlineEditBox.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/IntegerTextbox.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/IntegerTextbox.js?rev=618461&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/IntegerTextbox.js (added)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/IntegerTextbox.js Mon Feb  4 14:07:13 2008
@@ -0,0 +1,29 @@
+dojo.provide("dojo.widget.IntegerTextbox");
+dojo.require("dojo.widget.ValidationTextbox");
+dojo.require("dojo.validate.common");
+dojo.widget.defineWidget("dojo.widget.IntegerTextbox",dojo.widget.ValidationTextbox,{mixInProperties:function(_1,_2){
+dojo.widget.IntegerTextbox.superclass.mixInProperties.apply(this,arguments);
+if((_1.signed=="true")||(_1.signed=="always")){
+this.flags.signed=true;
+}else{
+if((_1.signed=="false")||(_1.signed=="never")){
+this.flags.signed=false;
+this.flags.min=0;
+}else{
+this.flags.signed=[true,false];
+}
+}
+if(_1.separator){
+this.flags.separator=_1.separator;
+}
+if(_1.min){
+this.flags.min=parseInt(_1.min);
+}
+if(_1.max){
+this.flags.max=parseInt(_1.max);
+}
+},isValid:function(){
+return dojo.validate.isInteger(this.textbox.value,this.flags);
+},isInRange:function(){
+return dojo.validate.isInRange(this.textbox.value,this.flags);
+}});

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/IntegerTextbox.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/IntegerTextbox.js
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/IntegerTextbox.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/InternetTextbox.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/InternetTextbox.js?rev=618461&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/InternetTextbox.js (added)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/InternetTextbox.js Mon Feb  4 14:07:13 2008
@@ -0,0 +1,65 @@
+dojo.provide("dojo.widget.InternetTextbox");
+dojo.require("dojo.widget.ValidationTextbox");
+dojo.require("dojo.validate.web");
+dojo.widget.defineWidget("dojo.widget.IpAddressTextbox",dojo.widget.ValidationTextbox,{mixInProperties:function(_1){
+dojo.widget.IpAddressTextbox.superclass.mixInProperties.apply(this,arguments);
+if(_1.allowdotteddecimal){
+this.flags.allowDottedDecimal=(_1.allowdotteddecimal=="true");
+}
+if(_1.allowdottedhex){
+this.flags.allowDottedHex=(_1.allowdottedhex=="true");
+}
+if(_1.allowdottedoctal){
+this.flags.allowDottedOctal=(_1.allowdottedoctal=="true");
+}
+if(_1.allowdecimal){
+this.flags.allowDecimal=(_1.allowdecimal=="true");
+}
+if(_1.allowhex){
+this.flags.allowHex=(_1.allowhex=="true");
+}
+if(_1.allowipv6){
+this.flags.allowIPv6=(_1.allowipv6=="true");
+}
+if(_1.allowhybrid){
+this.flags.allowHybrid=(_1.allowhybrid=="true");
+}
+},isValid:function(){
+return dojo.validate.isIpAddress(this.textbox.value,this.flags);
+}});
+dojo.widget.defineWidget("dojo.widget.UrlTextbox",dojo.widget.IpAddressTextbox,{mixInProperties:function(_2){
+dojo.widget.UrlTextbox.superclass.mixInProperties.apply(this,arguments);
+if(_2.scheme){
+this.flags.scheme=(_2.scheme=="true");
+}
+if(_2.allowip){
+this.flags.allowIP=(_2.allowip=="true");
+}
+if(_2.allowlocal){
+this.flags.allowLocal=(_2.allowlocal=="true");
+}
+if(_2.allowcc){
+this.flags.allowCC=(_2.allowcc=="true");
+}
+if(_2.allowgeneric){
+this.flags.allowGeneric=(_2.allowgeneric=="true");
+}
+},isValid:function(){
+return dojo.validate.isUrl(this.textbox.value,this.flags);
+}});
+dojo.widget.defineWidget("dojo.widget.EmailTextbox",dojo.widget.UrlTextbox,{mixInProperties:function(_3){
+dojo.widget.EmailTextbox.superclass.mixInProperties.apply(this,arguments);
+if(_3.allowcruft){
+this.flags.allowCruft=(_3.allowcruft=="true");
+}
+},isValid:function(){
+return dojo.validate.isEmailAddress(this.textbox.value,this.flags);
+}});
+dojo.widget.defineWidget("dojo.widget.EmailListTextbox",dojo.widget.EmailTextbox,{mixInProperties:function(_4){
+dojo.widget.EmailListTextbox.superclass.mixInProperties.apply(this,arguments);
+if(_4.listseparator){
+this.flags.listSeparator=_4.listseparator;
+}
+},isValid:function(){
+return dojo.validate.isEmailAddressList(this.textbox.value,this.flags);
+}});

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/InternetTextbox.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/InternetTextbox.js
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/InternetTextbox.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/LayoutContainer.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/LayoutContainer.js?rev=618461&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/LayoutContainer.js (added)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/LayoutContainer.js Mon Feb  4 14:07:13 2008
@@ -0,0 +1,21 @@
+dojo.provide("dojo.widget.LayoutContainer");
+dojo.require("dojo.widget.*");
+dojo.require("dojo.widget.html.layout");
+dojo.widget.defineWidget("dojo.widget.LayoutContainer",dojo.widget.HtmlWidget,{isContainer:true,layoutChildPriority:"top-bottom",postCreate:function(){
+dojo.widget.html.layout(this.domNode,this.children,this.layoutChildPriority);
+},addChild:function(_1,_2,_3,_4,_5){
+dojo.widget.LayoutContainer.superclass.addChild.call(this,_1,_2,_3,_4,_5);
+dojo.widget.html.layout(this.domNode,this.children,this.layoutChildPriority);
+},removeChild:function(_6){
+dojo.widget.LayoutContainer.superclass.removeChild.call(this,_6);
+dojo.widget.html.layout(this.domNode,this.children,this.layoutChildPriority);
+},onResized:function(){
+dojo.widget.html.layout(this.domNode,this.children,this.layoutChildPriority);
+},show:function(){
+this.domNode.style.display="";
+this.checkSize();
+this.domNode.style.display="none";
+this.domNode.style.visibility="";
+dojo.widget.LayoutContainer.superclass.show.call(this);
+}});
+dojo.lang.extend(dojo.widget.Widget,{layoutAlign:"none"});

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/LayoutContainer.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/LayoutContainer.js
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/LayoutContainer.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/LinkPane.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/LinkPane.js?rev=618461&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/LinkPane.js (added)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/LinkPane.js Mon Feb  4 14:07:13 2008
@@ -0,0 +1,10 @@
+dojo.provide("dojo.widget.LinkPane");
+dojo.require("dojo.widget.*");
+dojo.require("dojo.widget.ContentPane");
+dojo.require("dojo.html.style");
+dojo.widget.defineWidget("dojo.widget.LinkPane",dojo.widget.ContentPane,{templateString:"<div class=\"dojoLinkPane\"></div>",fillInTemplate:function(_1,_2){
+var _3=this.getFragNodeRef(_2);
+this.label+=_3.innerHTML;
+var _3=this.getFragNodeRef(_2);
+dojo.html.copyStyle(this.domNode,_3);
+}});

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/LinkPane.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/LinkPane.js
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/LinkPane.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Manager.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Manager.js?rev=618461&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Manager.js (added)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Manager.js Mon Feb  4 14:07:13 2008
@@ -0,0 +1,275 @@
+dojo.provide("dojo.widget.Manager");
+dojo.require("dojo.lang.array");
+dojo.require("dojo.lang.func");
+dojo.require("dojo.event.*");
+dojo.widget.manager=new function(){
+this.widgets=[];
+this.widgetIds=[];
+this.topWidgets={};
+var _1={};
+var _2=[];
+this.getUniqueId=function(_3){
+var _4;
+do{
+_4=_3+"_"+(_1[_3]!=undefined?++_1[_3]:_1[_3]=0);
+}while(this.getWidgetById(_4));
+return _4;
+};
+this.add=function(_5){
+this.widgets.push(_5);
+if(!_5.extraArgs["id"]){
+_5.extraArgs["id"]=_5.extraArgs["ID"];
+}
+if(_5.widgetId==""){
+if(_5["id"]){
+_5.widgetId=_5["id"];
+}else{
+if(_5.extraArgs["id"]){
+_5.widgetId=_5.extraArgs["id"];
+}else{
+_5.widgetId=this.getUniqueId(_5.ns+"_"+_5.widgetType);
+}
+}
+}
+if(this.widgetIds[_5.widgetId]){
+dojo.debug("widget ID collision on ID: "+_5.widgetId);
+}
+this.widgetIds[_5.widgetId]=_5;
+};
+this.destroyAll=function(){
+for(var x=this.widgets.length-1;x>=0;x--){
+try{
+this.widgets[x].destroy(true);
+delete this.widgets[x];
+}
+catch(e){
+}
+}
+};
+this.remove=function(_7){
+if(dojo.lang.isNumber(_7)){
+var tw=this.widgets[_7].widgetId;
+delete this.topWidgets[tw];
+delete this.widgetIds[tw];
+this.widgets.splice(_7,1);
+}else{
+this.removeById(_7);
+}
+};
+this.removeById=function(id){
+if(!dojo.lang.isString(id)){
+id=id["widgetId"];
+if(!id){
+dojo.debug("invalid widget or id passed to removeById");
+return;
+}
+}
+for(var i=0;i<this.widgets.length;i++){
+if(this.widgets[i].widgetId==id){
+this.remove(i);
+break;
+}
+}
+};
+this.getWidgetById=function(id){
+if(dojo.lang.isString(id)){
+return this.widgetIds[id];
+}
+return id;
+};
+this.getWidgetsByType=function(_c){
+var lt=_c.toLowerCase();
+var _e=(_c.indexOf(":")<0?function(x){
+return x.widgetType.toLowerCase();
+}:function(x){
+return x.getNamespacedType();
+});
+var ret=[];
+dojo.lang.forEach(this.widgets,function(x){
+if(_e(x)==lt){
+ret.push(x);
+}
+});
+return ret;
+};
+this.getWidgetsByFilter=function(_13,_14){
+var ret=[];
+dojo.lang.every(this.widgets,function(x){
+if(_13(x)){
+ret.push(x);
+if(_14){
+return false;
+}
+}
+return true;
+});
+return (_14?ret[0]:ret);
+};
+this.getAllWidgets=function(){
+return this.widgets.concat();
+};
+this.getWidgetByNode=function(_17){
+var w=this.getAllWidgets();
+_17=dojo.byId(_17);
+for(var i=0;i<w.length;i++){
+if(w[i].domNode==_17){
+return w[i];
+}
+}
+return null;
+};
+this.byId=this.getWidgetById;
+this.byType=this.getWidgetsByType;
+this.byFilter=this.getWidgetsByFilter;
+this.byNode=this.getWidgetByNode;
+var _1a={};
+var _1b=["dojo.widget"];
+for(var i=0;i<_1b.length;i++){
+_1b[_1b[i]]=true;
+}
+this.registerWidgetPackage=function(_1d){
+if(!_1b[_1d]){
+_1b[_1d]=true;
+_1b.push(_1d);
+}
+};
+this.getWidgetPackageList=function(){
+return dojo.lang.map(_1b,function(elt){
+return (elt!==true?elt:undefined);
+});
+};
+this.getImplementation=function(_1f,_20,_21,ns){
+var _23=this.getImplementationName(_1f,ns);
+if(_23){
+var ret=_20?new _23(_20):new _23();
+return ret;
+}
+};
+function buildPrefixCache(){
+for(var _25 in dojo.render){
+if(dojo.render[_25]["capable"]===true){
+var _26=dojo.render[_25].prefixes;
+for(var i=0;i<_26.length;i++){
+_2.push(_26[i].toLowerCase());
+}
+}
+}
+}
+var _28=function(_29,_2a){
+if(!_2a){
+return null;
+}
+for(var i=0,l=_2.length,_2d;i<=l;i++){
+_2d=(i<l?_2a[_2[i]]:_2a);
+if(!_2d){
+continue;
+}
+for(var _2e in _2d){
+if(_2e.toLowerCase()==_29){
+return _2d[_2e];
+}
+}
+}
+return null;
+};
+var _2f=function(_30,_31){
+var _32=dojo.evalObjPath(_31,false);
+return (_32?_28(_30,_32):null);
+};
+this.getImplementationName=function(_33,ns){
+var _35=_33.toLowerCase();
+ns=ns||"dojo";
+var _36=_1a[ns]||(_1a[ns]={});
+var _37=_36[_35];
+if(_37){
+return _37;
+}
+if(!_2.length){
+buildPrefixCache();
+}
+var _38=dojo.ns.get(ns);
+if(!_38){
+dojo.ns.register(ns,ns+".widget");
+_38=dojo.ns.get(ns);
+}
+if(_38){
+_38.resolve(_33);
+}
+_37=_2f(_35,_38.module);
+if(_37){
+return (_36[_35]=_37);
+}
+_38=dojo.ns.require(ns);
+if((_38)&&(_38.resolver)){
+_38.resolve(_33);
+_37=_2f(_35,_38.module);
+if(_37){
+return (_36[_35]=_37);
+}
+}
+dojo.deprecated("dojo.widget.Manager.getImplementationName","Could not locate widget implementation for \""+_33+"\" in \""+_38.module+"\" registered to namespace \""+_38.name+"\". "+"Developers must specify correct namespaces for all non-Dojo widgets","0.5");
+for(var i=0;i<_1b.length;i++){
+_37=_2f(_35,_1b[i]);
+if(_37){
+return (_36[_35]=_37);
+}
+}
+throw new Error("Could not locate widget implementation for \""+_33+"\" in \""+_38.module+"\" registered to namespace \""+_38.name+"\"");
+};
+this.resizing=false;
+this.onWindowResized=function(){
+if(this.resizing){
+return;
+}
+try{
+this.resizing=true;
+for(var id in this.topWidgets){
+var _3b=this.topWidgets[id];
+if(_3b.checkSize){
+_3b.checkSize();
+}
+}
+}
+catch(e){
+}
+finally{
+this.resizing=false;
+}
+};
+if(typeof window!="undefined"){
+dojo.addOnLoad(this,"onWindowResized");
+dojo.event.connect(window,"onresize",this,"onWindowResized");
+}
+};
+(function(){
+var dw=dojo.widget;
+var dwm=dw.manager;
+var h=dojo.lang.curry(dojo.lang,"hitch",dwm);
+var g=function(_40,_41){
+dw[(_41||_40)]=h(_40);
+};
+g("add","addWidget");
+g("destroyAll","destroyAllWidgets");
+g("remove","removeWidget");
+g("removeById","removeWidgetById");
+g("getWidgetById");
+g("getWidgetById","byId");
+g("getWidgetsByType");
+g("getWidgetsByFilter");
+g("getWidgetsByType","byType");
+g("getWidgetsByFilter","byFilter");
+g("getWidgetByNode","byNode");
+dw.all=function(n){
+var _43=dwm.getAllWidgets.apply(dwm,arguments);
+if(arguments.length>0){
+return _43[n];
+}
+return _43;
+};
+g("registerWidgetPackage");
+g("getImplementation","getWidgetImplementation");
+g("getImplementationName","getWidgetImplementationName");
+dw.widgets=dwm.widgets;
+dw.widgetIds=dwm.widgetIds;
+dw.root=dwm.root;
+})();

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Manager.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Manager.js
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Manager.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Menu2.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Menu2.js?rev=618461&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Menu2.js (added)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Menu2.js Mon Feb  4 14:07:13 2008
@@ -0,0 +1,442 @@
+dojo.provide("dojo.widget.Menu2");
+dojo.require("dojo.widget.PopupContainer");
+dojo.declare("dojo.widget.MenuBase",null,function(){
+this.eventNames={open:""};
+},{isContainer:true,isMenu:true,eventNaming:"default",templateCssString:"\n.dojoPopupMenu2 {\n\tposition: absolute;\n\tborder: 1px solid #7298d0;\n\tbackground:#85aeec url(images/soriaMenuBg.gif) repeat-x bottom left !important;\n\tpadding: 1px;\n\tmargin-top: 1px;\n\tmargin-bottom: 1px;\n}\n\n.dojoMenuItem2{\n\twhite-space: nowrap;\n\tfont: menu;\n\tmargin: 0;\n}\n\n.dojoMenuItem2Hover {\n\tbackground-color: #D2E4FD;\n\tcursor:pointer;\n\tcursor:hand;\n}\n\n.dojoMenuItem2Icon {\n\tposition: relative;\n\tbackground-position: center center;\n\tbackground-repeat: no-repeat;\n\twidth: 16px;\n\theight: 16px;\n\tpadding-right: 3px;\n}\n\n.dojoMenuItem2Label {\n\tposition: relative;\n\tvertical-align: middle;\n}\n\n/* main label text */\n.dojoMenuItem2Label {\n\tposition: relative;\n\tvertical-align: middle;\n}\n\n.dojoMenuItem2Accel {\n\tposition: relative;\n\tvertical-align: middle;\n\tpadding-left: 3px;\n}\n\n.dojoMenuItem2Disabled .dojoMenuItem2Label,\n.dojoMenuItem2Disabled .
 dojoMenuItem2Accel {\n\tcolor: #607a9e;\n}\n\n.dojoMenuItem2Submenu {\n\tposition: relative;\n\tbackground-position: center center;\n\tbackground-repeat: no-repeat;\n\tbackground-image: url(images/submenu_off.gif);\n\twidth: 5px;\n\theight: 9px;\n\tpadding-left: 3px;\n}\n.dojoMenuItem2Hover .dojoMenuItem2Submenu {\n\tbackground-image: url(images/submenu_on.gif);\n}\n\n.dojoMenuItem2Disabled .dojoMenuItem2Submenu {\n\tbackground-image: url(images/submenu_disabled.gif);\n}\n\n.dojoMenuSeparator2 {\n\tfont-size: 1px;\n\tmargin: 0;\n}\n\n.dojoMenuSeparator2Top {\n\theight: 50%;\n\tborder-bottom: 1px solid #7a98c4;\n\tmargin: 0px 2px;\n\tfont-size: 1px;\n}\n\n.dojoMenuSeparator2Bottom {\n\theight: 50%;\n\tborder-top: 1px solid #c9deff;\n\tmargin: 0px 2px;\n\tfont-size: 1px;\n}\n\n.dojoMenuBar2 {\n\tbackground:#85aeec url(images/soriaBarBg.gif) repeat-x top left;\n\t/*border-bottom:1px solid #6b9fec;*/\n\tpadding: 1px;\n}\n\n.dojoMenuBar2 .dojoMenuItem2 {\n\twhite-space: nowrap;\n
 \tfont: menu;\n\tmargin: 0;\n\tposition: relative;\n\tvertical-align: middle;\n\tz-index: 1;\n\tpadding: 3px 8px;\n\tdisplay: inline;/* needed in khtml to display correctly */\n\tdisplay: -moz-inline-box;/* needed in firefox */\n\tcursor:pointer;\n\tcursor:hand;\n}\n\n.dojoMenuBar2 .dojoMenuItem2Hover {\n\tbackground-color:#d2e4fd;\n}\n\n.dojoMenuBar2 .dojoMenuItem2Disabled span {\n\tcolor: #4f6582;\n}\n",templateCssPath:dojo.uri.moduleUri("dojo.widget","templates/Menu2.css"),submenuDelay:500,initialize:function(_1,_2){
+if(this.eventNaming=="default"){
+for(var _3 in this.eventNames){
+this.eventNames[_3]=this.widgetId+"/"+_3;
+}
+}
+},_moveToNext:function(_4){
+this._highlightOption(1);
+return true;
+},_moveToPrevious:function(_5){
+this._highlightOption(-1);
+return true;
+},_moveToParentMenu:function(_6){
+if(this._highlighted_option&&this.parentMenu){
+if(_6._menu2UpKeyProcessed){
+return true;
+}else{
+this._highlighted_option.onUnhover();
+this.closeSubmenu();
+_6._menu2UpKeyProcessed=true;
+}
+}
+return false;
+},_moveToChildMenu:function(_7){
+if(this._highlighted_option&&this._highlighted_option.submenuId){
+this._highlighted_option._onClick(true);
+return true;
+}
+return false;
+},_selectCurrentItem:function(_8){
+if(this._highlighted_option){
+this._highlighted_option._onClick();
+return true;
+}
+return false;
+},processKey:function(_9){
+if(_9.ctrlKey||_9.altKey||!_9.key){
+return false;
+}
+var _a=false;
+switch(_9.key){
+case _9.KEY_DOWN_ARROW:
+_a=this._moveToNext(_9);
+break;
+case _9.KEY_UP_ARROW:
+_a=this._moveToPrevious(_9);
+break;
+case _9.KEY_RIGHT_ARROW:
+_a=this._moveToChildMenu(_9);
+break;
+case _9.KEY_LEFT_ARROW:
+_a=this._moveToParentMenu(_9);
+break;
+case " ":
+case _9.KEY_ENTER:
+if(_a=this._selectCurrentItem(_9)){
+break;
+}
+case _9.KEY_ESCAPE:
+case _9.KEY_TAB:
+this.close(true);
+_a=true;
+break;
+}
+return _a;
+},_findValidItem:function(_b,_c){
+if(_c){
+_c=_b>0?_c.getNextSibling():_c.getPreviousSibling();
+}
+for(var i=0;i<this.children.length;++i){
+if(!_c){
+_c=_b>0?this.children[0]:this.children[this.children.length-1];
+}
+if(_c.onHover&&_c.isShowing()){
+return _c;
+}
+_c=_b>0?_c.getNextSibling():_c.getPreviousSibling();
+}
+},_highlightOption:function(_e){
+var _f;
+if((!this._highlighted_option)){
+_f=this._findValidItem(_e);
+}else{
+_f=this._findValidItem(_e,this._highlighted_option);
+}
+if(_f){
+if(this._highlighted_option){
+this._highlighted_option.onUnhover();
+}
+_f.onHover();
+dojo.html.scrollIntoView(_f.domNode);
+try{
+var _10=dojo.html.getElementsByClass("dojoMenuItem2Label",_f.domNode)[0];
+_10.focus();
+}
+catch(e){
+}
+}
+},onItemClick:function(_11){
+},closeSubmenu:function(_12){
+if(this.currentSubmenu==null){
+return;
+}
+this.currentSubmenu.close(_12);
+this.currentSubmenu=null;
+this.currentSubmenuTrigger.is_open=false;
+this.currentSubmenuTrigger._closedSubmenu(_12);
+this.currentSubmenuTrigger=null;
+}});
+dojo.widget.defineWidget("dojo.widget.PopupMenu2",[dojo.widget.HtmlWidget,dojo.widget.PopupContainerBase,dojo.widget.MenuBase],function(){
+this.targetNodeIds=[];
+},{templateString:"<table class=\"dojoPopupMenu2\" border=0 cellspacing=0 cellpadding=0 style=\"display: none; position: absolute;\">"+"<tbody dojoAttachPoint=\"containerNode\"></tbody>"+"</table>",submenuOverlap:5,contextMenuForWindow:false,parentMenu:null,postCreate:function(){
+if(this.contextMenuForWindow){
+var doc=dojo.body();
+this.bindDomNode(doc);
+}else{
+if(this.targetNodeIds.length>0){
+dojo.lang.forEach(this.targetNodeIds,this.bindDomNode,this);
+}
+}
+this._subscribeSubitemsOnOpen();
+},_subscribeSubitemsOnOpen:function(){
+var _14=this.getChildrenOfType(dojo.widget.MenuItem2);
+for(var i=0;i<_14.length;i++){
+dojo.event.topic.subscribe(this.eventNames.open,_14[i],"menuOpen");
+}
+},getTopOpenEvent:function(){
+var _16=this;
+while(_16.parentMenu){
+_16=_16.parentMenu;
+}
+return _16.openEvent;
+},bindDomNode:function(_17){
+_17=dojo.byId(_17);
+var win=dojo.html.getElementWindow(_17);
+if(dojo.html.isTag(_17,"iframe")=="iframe"){
+win=dojo.html.iframeContentWindow(_17);
+_17=dojo.withGlobal(win,dojo.body);
+}
+dojo.widget.Menu2.OperaAndKonqFixer.fixNode(_17);
+dojo.event.kwConnect({srcObj:_17,srcFunc:"oncontextmenu",targetObj:this,targetFunc:"onOpen",once:true});
+if(dojo.render.html.moz&&win.document.designMode.toLowerCase()=="on"){
+dojo.event.browser.addListener(_17,"contextmenu",dojo.lang.hitch(this,"onOpen"));
+}
+dojo.widget.PopupManager.registerWin(win);
+},unBindDomNode:function(_19){
+var _1a=dojo.byId(_19);
+dojo.event.kwDisconnect({srcObj:_1a,srcFunc:"oncontextmenu",targetObj:this,targetFunc:"onOpen",once:true});
+dojo.widget.Menu2.OperaAndKonqFixer.cleanNode(_1a);
+},_openAsSubmenu:function(_1b,_1c,_1d){
+if(this.isShowingNow){
+return;
+}
+this.parentMenu=_1b;
+this.open(_1c,_1b,_1c,_1d);
+},close:function(_1e){
+if(this.animationInProgress){
+dojo.widget.PopupContainerBase.prototype.close.call(this,_1e);
+return;
+}
+if(this._highlighted_option){
+this._highlighted_option.onUnhover();
+}
+dojo.widget.PopupContainerBase.prototype.close.call(this,_1e);
+this.parentMenu=null;
+},closeAll:function(_1f){
+if(this.parentMenu){
+this.parentMenu.closeAll(_1f);
+}else{
+this.close(_1f);
+}
+},_openSubmenu:function(_20,_21){
+_20._openAsSubmenu(this,_21.arrow,{"TR":"TL","TL":"TR"});
+this.currentSubmenu=_20;
+this.currentSubmenuTrigger=_21;
+this.currentSubmenuTrigger.is_open=true;
+},focus:function(){
+if(this.currentSubmenuTrigger){
+if(this.currentSubmenuTrigger.caption){
+try{
+this.currentSubmenuTrigger.caption.focus();
+}
+catch(e){
+}
+}else{
+try{
+this.currentSubmenuTrigger.domNode.focus();
+}
+catch(e){
+}
+}
+}
+},onOpen:function(e){
+this.openEvent=e;
+if(e["target"]){
+this.openedForWindow=dojo.html.getElementWindow(e.target);
+}else{
+this.openedForWindow=null;
+}
+var x=e.pageX,y=e.pageY;
+var win=dojo.html.getElementWindow(e.target);
+var _26=win._frameElement||win.frameElement;
+if(_26){
+var _27=dojo.html.abs(_26,true);
+x+=_27.x-dojo.withGlobal(win,dojo.html.getScroll).left;
+y+=_27.y-dojo.withGlobal(win,dojo.html.getScroll).top;
+}
+this.open(x,y,null,[x,y]);
+dojo.event.browser.stopEvent(e);
+}});
+dojo.widget.defineWidget("dojo.widget.MenuItem2",dojo.widget.HtmlWidget,function(){
+this.eventNames={engage:""};
+},{templateString:"<tr class=\"dojoMenuItem2\" dojoAttachEvent=\"onMouseOver: onHover; onMouseOut: onUnhover; onClick: _onClick; onKey:onKey;\">"+"<td><div class=\"${this.iconClass}\" style=\"${this.iconStyle}\"></div></td>"+"<td tabIndex=\"-1\" class=\"dojoMenuItem2Label\" dojoAttachPoint=\"caption\">${this.caption}</td>"+"<td class=\"dojoMenuItem2Accel\">${this.accelKey}</td>"+"<td><div class=\"dojoMenuItem2Submenu\" style=\"display:${this.arrowDisplay};\" dojoAttachPoint=\"arrow\"></div></td>"+"</tr>",is_hovering:false,hover_timer:null,is_open:false,topPosition:0,caption:"Untitled",accelKey:"",iconSrc:"",disabledClass:"dojoMenuItem2Disabled",iconClass:"dojoMenuItem2Icon",submenuId:"",eventNaming:"default",highlightClass:"dojoMenuItem2Hover",postMixInProperties:function(){
+this.iconStyle="";
+if(this.iconSrc){
+if((this.iconSrc.toLowerCase().substring(this.iconSrc.length-4)==".png")&&(dojo.render.html.ie55||dojo.render.html.ie60)){
+this.iconStyle="filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+this.iconSrc+"', sizingMethod='image')";
+}else{
+this.iconStyle="background-image: url("+this.iconSrc+")";
+}
+}
+this.arrowDisplay=this.submenuId?"block":"none";
+dojo.widget.MenuItem2.superclass.postMixInProperties.apply(this,arguments);
+},fillInTemplate:function(){
+dojo.html.disableSelection(this.domNode);
+if(this.disabled){
+this.setDisabled(true);
+}
+if(this.eventNaming=="default"){
+for(var _28 in this.eventNames){
+this.eventNames[_28]=this.widgetId+"/"+_28;
+}
+}
+},onHover:function(){
+this.onUnhover();
+if(this.is_hovering){
+return;
+}
+if(this.is_open){
+return;
+}
+if(this.parent._highlighted_option){
+this.parent._highlighted_option.onUnhover();
+}
+this.parent.closeSubmenu();
+this.parent._highlighted_option=this;
+dojo.widget.PopupManager.setFocusedMenu(this.parent);
+this._highlightItem();
+if(this.is_hovering){
+this._stopSubmenuTimer();
+}
+this.is_hovering=true;
+this._startSubmenuTimer();
+},onUnhover:function(){
+if(!this.is_open){
+this._unhighlightItem();
+}
+this.is_hovering=false;
+this.parent._highlighted_option=null;
+if(this.parent.parentMenu){
+dojo.widget.PopupManager.setFocusedMenu(this.parent.parentMenu);
+}
+this._stopSubmenuTimer();
+},_onClick:function(_29){
+var _2a=false;
+if(this.disabled){
+return false;
+}
+if(this.submenuId){
+if(!this.is_open){
+this._stopSubmenuTimer();
+this._openSubmenu();
+}
+_2a=true;
+}else{
+this.onUnhover();
+this.parent.closeAll(true);
+}
+this.onClick();
+dojo.event.topic.publish(this.eventNames.engage,this);
+if(_2a&&_29){
+dojo.widget.getWidgetById(this.submenuId)._highlightOption(1);
+}
+return;
+},onClick:function(){
+this.parent.onItemClick(this);
+},_highlightItem:function(){
+dojo.html.addClass(this.domNode,this.highlightClass);
+},_unhighlightItem:function(){
+dojo.html.removeClass(this.domNode,this.highlightClass);
+},_startSubmenuTimer:function(){
+this._stopSubmenuTimer();
+if(this.disabled){
+return;
+}
+var _2b=this;
+var _2c=function(){
+return function(){
+_2b._openSubmenu();
+};
+}();
+this.hover_timer=dojo.lang.setTimeout(_2c,this.parent.submenuDelay);
+},_stopSubmenuTimer:function(){
+if(this.hover_timer){
+dojo.lang.clearTimeout(this.hover_timer);
+this.hover_timer=null;
+}
+},_openSubmenu:function(){
+if(this.disabled){
+return;
+}
+this.parent.closeSubmenu();
+var _2d=dojo.widget.getWidgetById(this.submenuId);
+if(_2d){
+this.parent._openSubmenu(_2d,this);
+}
+},_closedSubmenu:function(){
+this.onUnhover();
+},setDisabled:function(_2e){
+this.disabled=_2e;
+if(this.disabled){
+dojo.html.addClass(this.domNode,this.disabledClass);
+}else{
+dojo.html.removeClass(this.domNode,this.disabledClass);
+}
+},enable:function(){
+this.setDisabled(false);
+},disable:function(){
+this.setDisabled(true);
+},menuOpen:function(_2f){
+}});
+dojo.widget.defineWidget("dojo.widget.MenuSeparator2",dojo.widget.HtmlWidget,{templateString:"<tr class=\"dojoMenuSeparator2\"><td colspan=4>"+"<div class=\"dojoMenuSeparator2Top\"></div>"+"<div class=\"dojoMenuSeparator2Bottom\"></div>"+"</td></tr>",postCreate:function(){
+dojo.html.disableSelection(this.domNode);
+}});
+dojo.widget.defineWidget("dojo.widget.MenuBar2",[dojo.widget.HtmlWidget,dojo.widget.MenuBase],{menuOverlap:2,templateString:"<div class=\"dojoMenuBar2\" dojoAttachPoint=\"containerNode\" tabIndex=\"0\"></div>",close:function(_30){
+if(this._highlighted_option){
+this._highlighted_option.onUnhover();
+}
+this.closeSubmenu(_30);
+},closeAll:function(_31){
+this.close(_31);
+},processKey:function(evt){
+if(evt.ctrlKey||evt.altKey){
+return false;
+}
+var _33=false;
+switch(evt.key){
+case evt.KEY_DOWN_ARROW:
+_33=this._moveToChildMenu(evt);
+break;
+case evt.KEY_UP_ARROW:
+_33=this._moveToParentMenu(evt);
+break;
+case evt.KEY_RIGHT_ARROW:
+_33=this._moveToNext(evt);
+break;
+case evt.KEY_LEFT_ARROW:
+_33=this._moveToPrevious(evt);
+break;
+default:
+_33=dojo.widget.MenuBar2.superclass.processKey.apply(this,arguments);
+break;
+}
+return _33;
+},postCreate:function(){
+dojo.widget.MenuBar2.superclass.postCreate.apply(this,arguments);
+this.isShowingNow=true;
+},_openSubmenu:function(_34,_35){
+_34._openAsSubmenu(this,_35.domNode,{"BL":"TL","TL":"BL"});
+this.currentSubmenu=_34;
+this.currentSubmenuTrigger=_35;
+this.currentSubmenuTrigger.is_open=true;
+}});
+dojo.widget.defineWidget("dojo.widget.MenuBarItem2",dojo.widget.MenuItem2,{templateString:"<span class=\"dojoMenuItem2\" dojoAttachEvent=\"onMouseOver: onHover; onMouseOut: onUnhover; onClick: _onClick;\">${this.caption}</span>"});
+dojo.widget.Menu2.OperaAndKonqFixer=new function(){
+var _36=true;
+var _37=false;
+if(!dojo.lang.isFunction(dojo.doc().oncontextmenu)){
+dojo.doc().oncontextmenu=function(){
+_36=false;
+_37=true;
+};
+}
+if(dojo.doc().createEvent){
+try{
+var e=dojo.doc().createEvent("MouseEvents");
+e.initMouseEvent("contextmenu",1,1,dojo.global(),1,0,0,0,0,0,0,0,0,0,null);
+dojo.doc().dispatchEvent(e);
+}
+catch(e){
+}
+}else{
+_36=false;
+}
+if(_37){
+delete dojo.doc().oncontextmenu;
+}
+this.fixNode=function(_39){
+if(_36){
+if(!dojo.lang.isFunction(_39.oncontextmenu)){
+_39.oncontextmenu=function(e){
+};
+}
+if(dojo.render.html.opera){
+_39._menufixer_opera=function(e){
+if(e.ctrlKey){
+this.oncontextmenu(e);
+}
+};
+dojo.event.connect(_39,"onclick",_39,"_menufixer_opera");
+}else{
+_39._menufixer_konq=function(e){
+if(e.button==2){
+e.preventDefault();
+this.oncontextmenu(e);
+}
+};
+dojo.event.connect(_39,"onmousedown",_39,"_menufixer_konq");
+}
+}
+};
+this.cleanNode=function(_3d){
+if(_36){
+if(_3d._menufixer_opera){
+dojo.event.disconnect(_3d,"onclick",_3d,"_menufixer_opera");
+delete _3d._menufixer_opera;
+}else{
+if(_3d._menufixer_konq){
+dojo.event.disconnect(_3d,"onmousedown",_3d,"_menufixer_konq");
+delete _3d._menufixer_konq;
+}
+}
+if(_3d.oncontextmenu){
+delete _3d.oncontextmenu;
+}
+}
+};
+};

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Menu2.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Menu2.js
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Menu2.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/MonthlyCalendar.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/MonthlyCalendar.js?rev=618461&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/MonthlyCalendar.js (added)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/MonthlyCalendar.js Mon Feb  4 14:07:13 2008
@@ -0,0 +1,136 @@
+dojo.provide("dojo.widget.MonthlyCalendar");
+dojo.require("dojo.date.common");
+dojo.require("dojo.date.format");
+dojo.require("dojo.widget.*");
+dojo.require("dojo.widget.DatePicker");
+dojo.require("dojo.event.*");
+dojo.require("dojo.html.*");
+dojo.require("dojo.experimental");
+dojo.experimental("dojo.widget.MonthlyCalendar");
+dojo.widget.defineWidget("dojo.widget.MonthlyCalendar",dojo.widget.DatePicker,{dayWidth:"wide",templateString:"<div class=\"datePickerContainer\" dojoAttachPoint=\"datePickerContainerNode\">\n\t<h3 class=\"monthLabel\">\n\t<!--\n\t<span \n\t\tdojoAttachPoint=\"decreaseWeekNode\" \n\t\tdojoAttachEvent=\"onClick: onIncrementWeek;\" \n\t\tclass=\"incrementControl\">\n\t\t<img src=\"${dojoWidgetModuleUri}templates/decrementWeek.gif\" alt=\"&uarr;\" />\n\t</span>\n\t-->\n\t<span \n\t\tdojoAttachPoint=\"decreaseMonthNode\" \n\t\tdojoAttachEvent=\"onClick: onIncrementMonth;\" class=\"incrementControl\">\n\t\t<img src=\"${dojoWidgetModuleUri}templates/decrementMonth.gif\" \n\t\t\talt=\"&uarr;\" dojoAttachPoint=\"decrementMonthImageNode\">\n\t</span>\n\t<span dojoAttachPoint=\"monthLabelNode\" class=\"month\">July</span>\n\t<span \n\t\tdojoAttachPoint=\"increaseMonthNode\" \n\t\tdojoAttachEvent=\"onClick: onIncrementMonth;\" class=\"incrementControl\">\n\t\t<img src=\"${dojoWidgetMod
 uleUri}templates/incrementMonth.gif\" \n\t\t\talt=\"&darr;\"  dojoAttachPoint=\"incrementMonthImageNode\">\n\t</span>\n\t<!--\n\t\t<span dojoAttachPoint=\"increaseWeekNode\" \n\t\t\tdojoAttachEvent=\"onClick: onIncrementWeek;\" \n\t\t\tclass=\"incrementControl\">\n\t\t\t<img src=\"${dojoWidgetModuleUri}templates/incrementWeek.gif\" \n\t\t\talt=\"&darr;\" />\n\t\t</span>\n\t-->\n\t</h3>\n\t<table class=\"calendarContainer\">\n\t\t<thead>\n\t\t\t<tr dojoAttachPoint=\"dayLabelsRow\">\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t</tr>\n\t\t</thead>\n\t\t<tbody dojoAttachPoint=\"calendarDatesContainerNode\" \n\t\t\tdojoAttachEvent=\"onClick: onSetDate;\">\n\t\t\t<tr dojoAttachPoint=\"calendarRow0\">\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t</tr>\n\t\t\t<tr dojoAttachPoint=\"calendarRow1\">
 \n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t</tr>\n\t\t\t<tr dojoAttachPoint=\"calendarRow2\">\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t</tr>\n\t\t\t<tr dojoAttachPoint=\"calendarRow3\">\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t</tr>\n\t\t\t<tr dojoAttachPoint=\"calendarRow4\">\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t</tr>\n\t\t\t<tr dojoAttachPoint=\"calendarRow5\">\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t\t<td></td>\n\t\t\t</tr>\n\t\t</tbody>\n\t</table>\n\t<h3 class=\"yearLabel\">\n\t\t<span dojoAttachPoi
 nt=\"previousYearLabelNode\"\n\t\t\tdojoAttachEvent=\"onClick: onIncrementYear;\" class=\"previousYear\"></span>\n\t\t<span class=\"selectedYear\" dojoAttachPoint=\"currentYearLabelNode\"></span>\n\t\t<span dojoAttachPoint=\"nextYearLabelNode\" \n\t\t\tdojoAttachEvent=\"onClick: onIncrementYear;\" class=\"nextYear\"></span>\n\t</h3>\n</div>\n",templateCssString:".datePickerContainer {\n\tmargin:0.5em 2em 0.5em 0;\n\t/*width:10em;*/\n\tfloat:left;\n}\n\n.previousMonth {\n\tbackground-color:#bbbbbb;\n}\n\n.currentMonth {\n\tbackground-color:#8f8f8f;\n}\n\n.nextMonth {\n\tbackground-color:#eeeeee;\n}\n\n.currentDate {\n\ttext-decoration:underline;\n\tfont-style:italic;\n}\n\n.selectedItem {\n\tbackground-color:#3a3a3a;\n\tcolor:#ffffff;\n}\n\n.calendarContainer {\n\tborder-collapse:collapse;\n\tborder-spacing:0;\n\tborder-bottom:1px solid #e6e6e6;\n\toverflow: hidden;\n\ttext-align: right;\n}\n\n.calendarContainer thead{\n\tborder-bottom:1px solid #e6e6e6;\n}\n\n.calendarContai
 ner tbody * td {\n        height: 100px;\n        border: 1px solid gray;\n}\n\n.calendarContainer td {\n        width: 100px;\n        padding: 2px;\n\tvertical-align: top;\n}\n\n.monthLabel {\n\tfont-size:0.9em;\n\tfont-weight:400;\n\tmargin:0;\n\ttext-align:center;\n}\n\n.monthLabel .month {\n\tpadding:0 0.4em 0 0.4em;\n}\n\n.yearLabel {\n\tfont-size:0.9em;\n\tfont-weight:400;\n\tmargin:0.25em 0 0 0;\n\ttext-align:right;\n\tcolor:#a3a3a3;\n}\n\n.yearLabel .selectedYear {\n\tcolor:#000;\n\tpadding:0 0.2em;\n}\n\n.nextYear, .previousYear {\n\tcursor:pointer;cursor:hand;\n}\n\n.incrementControl {\n\tcursor:pointer;cursor:hand;\n\twidth:1em;\n}\n\n.dojoMonthlyCalendarEvent {\n\tfont-size:0.7em;\n\toverflow: hidden;\n\tfont-color: grey;\n\twhite-space: nowrap;\n\ttext-align: left;\n}\n",templateCssPath:dojo.uri.moduleUri("dojo.widget","templates/MonthlyCalendar.css"),initializer:function(){
+this.iCalendars=[];
+},addCalendar:function(_1){
+dojo.debug("Adding Calendar");
+this.iCalendars.push(_1);
+dojo.debug("Starting init");
+this.initUI();
+dojo.debug("done init");
+},createDayContents:function(_2,_3){
+dojo.html.removeChildren(_2);
+_2.appendChild(document.createTextNode(_3.getDate()));
+for(var x=0;x<this.iCalendars.length;x++){
+var _5=this.iCalendars[x].getEvents(_3);
+if((dojo.lang.isArray(_5))&&(_5.length>0)){
+for(var y=0;y<_5.length;y++){
+var el=document.createElement("div");
+dojo.html.addClass(el,"dojoMonthlyCalendarEvent");
+el.appendChild(document.createTextNode(_5[y].summary.value));
+el.width=dojo.html.getContentBox(_2).width;
+_2.appendChild(el);
+}
+}
+}
+},initUI:function(){
+var _8=dojo.date.getNames("days",this.dayWidth,"standAlone",this.lang);
+var _9=this.dayLabelsRow.getElementsByTagName("td");
+for(var i=0;i<7;i++){
+_9.item(i).innerHTML=_8[i];
+}
+this.selectedIsUsed=false;
+this.currentIsUsed=false;
+var _b="";
+var _c=new Date();
+var _d=this.calendarDatesContainerNode.getElementsByTagName("td");
+var _e;
+_c.setHours(8);
+var _f=new Date(this.firstSaturday.year,this.firstSaturday.month,this.firstSaturday.date,8);
+var _10=new Date(this.firstSaturday.year,this.firstSaturday.month,this.firstSaturday.date+42,8);
+if(this.iCalendars.length>0){
+for(var x=0;x<this.iCalendars.length;x++){
+this.iCalendars[x].preComputeRecurringEvents(_10);
+}
+}
+if(this.firstSaturday.date<7){
+var _12=6;
+for(var i=this.firstSaturday.date;i>0;i--){
+_e=_d.item(_12);
+this.createDayContents(_e,_f);
+dojo.html.setClass(_e,this.getDateClassName(_f,"current"));
+_12--;
+_c=_f;
+_f=this.incrementDate(_f,false);
+}
+for(var i=_12;i>-1;i--){
+_e=_d.item(i);
+this.createDayContents(_e,_f);
+dojo.html.setClass(_e,this.getDateClassName(_f,"previous"));
+_c=_f;
+_f=this.incrementDate(_f,false);
+}
+}else{
+_f.setDate(1);
+for(var i=0;i<7;i++){
+_e=_d.item(i);
+this.createDayContents(_e,_f);
+dojo.html.setClass(_e,this.getDateClassName(_f,"current"));
+_c=_f;
+_f=this.incrementDate(_f,true);
+}
+}
+_c.setDate(this.firstSaturday.date);
+_c.setMonth(this.firstSaturday.month);
+_c.setFullYear(this.firstSaturday.year);
+_f=this.incrementDate(_c,true);
+var _13=7;
+_e=_d.item(_13);
+while((_f.getMonth()==_c.getMonth())&&(_13<42)){
+this.createDayContents(_e,_f);
+dojo.html.setClass(_e,this.getDateClassName(_f,"current"));
+_e=_d.item(++_13);
+_c=_f;
+_f=this.incrementDate(_f,true);
+}
+while(_13<42){
+this.createDayContents(_e,_f);
+dojo.html.setClass(_e,this.getDateClassName(_f,"next"));
+_e=_d.item(++_13);
+_c=_f;
+_f=this.incrementDate(_f,true);
+}
+this.setMonthLabel(this.firstSaturday.month);
+this.setYearLabels(this.firstSaturday.year);
+}});
+dojo.widget.MonthlyCalendar.util=new function(){
+this.toRfcDate=function(_14){
+if(!_14){
+_14=this.today;
+}
+var _15=_14.getFullYear();
+var _16=_14.getMonth()+1;
+if(_16<10){
+_16="0"+_16.toString();
+}
+var _17=_14.getDate();
+if(_17<10){
+_17="0"+_17.toString();
+}
+return _15+"-"+_16+"-"+_17+"T00:00:00+00:00";
+};
+this.fromRfcDate=function(_18){
+var _19=_18.split("-");
+if(_19.length<3){
+return new Date();
+}
+return new Date(parseInt(_19[0]),(parseInt(_19[1],10)-1),parseInt(_19[2].substr(0,2),10));
+};
+this.initFirstSaturday=function(_1a,_1b){
+if(!_1a){
+_1a=this.date.getMonth();
+}
+if(!_1b){
+_1b=this.date.getFullYear();
+}
+var _1c=new Date(_1b,_1a,1);
+return {year:_1b,month:_1a,date:7-_1c.getDay()};
+};
+};

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/MonthlyCalendar.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/MonthlyCalendar.js
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/MonthlyCalendar.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/PageContainer.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/PageContainer.js?rev=618461&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/PageContainer.js (added)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/PageContainer.js Mon Feb  4 14:07:13 2008
@@ -0,0 +1,189 @@
+dojo.provide("dojo.widget.PageContainer");
+dojo.require("dojo.lang.func");
+dojo.require("dojo.widget.*");
+dojo.require("dojo.event.*");
+dojo.require("dojo.html.selection");
+dojo.widget.defineWidget("dojo.widget.PageContainer",dojo.widget.HtmlWidget,{isContainer:true,doLayout:true,templateString:"<div dojoAttachPoint='containerNode'></div>",selectedChild:"",fillInTemplate:function(_1,_2){
+var _3=this.getFragNodeRef(_2);
+dojo.html.copyStyle(this.domNode,_3);
+dojo.widget.PageContainer.superclass.fillInTemplate.apply(this,arguments);
+},postCreate:function(_4,_5){
+if(this.children.length){
+dojo.lang.forEach(this.children,this._setupChild,this);
+var _6;
+if(this.selectedChild){
+this.selectChild(this.selectedChild);
+}else{
+for(var i=0;i<this.children.length;i++){
+if(this.children[i].selected){
+this.selectChild(this.children[i]);
+break;
+}
+}
+if(!this.selectedChildWidget){
+this.selectChild(this.children[0]);
+}
+}
+}
+},addChild:function(_8){
+dojo.widget.PageContainer.superclass.addChild.apply(this,arguments);
+this._setupChild(_8);
+this.onResized();
+if(!this.selectedChildWidget){
+this.selectChild(_8);
+}
+},_setupChild:function(_9){
+_9.hide();
+_9.domNode.style.position="relative";
+dojo.event.topic.publish(this.widgetId+"-addChild",_9);
+},removeChild:function(_a){
+dojo.widget.PageContainer.superclass.removeChild.apply(this,arguments);
+if(this._beingDestroyed){
+return;
+}
+dojo.event.topic.publish(this.widgetId+"-removeChild",_a);
+this.onResized();
+if(this.selectedChildWidget===_a){
+this.selectedChildWidget=undefined;
+if(this.children.length>0){
+this.selectChild(this.children[0],true);
+}
+}
+},selectChild:function(_b,_c){
+_b=dojo.widget.byId(_b);
+this.correspondingPageButton=_c;
+if(this.selectedChildWidget){
+this._hideChild(this.selectedChildWidget);
+}
+this.selectedChildWidget=_b;
+this.selectedChild=_b.widgetId;
+this._showChild(_b);
+_b.isFirstChild=(_b==this.children[0]);
+_b.isLastChild=(_b==this.children[this.children.length-1]);
+dojo.event.topic.publish(this.widgetId+"-selectChild",_b);
+},forward:function(){
+var _d=dojo.lang.find(this.children,this.selectedChildWidget);
+this.selectChild(this.children[_d+1]);
+},back:function(){
+var _e=dojo.lang.find(this.children,this.selectedChildWidget);
+this.selectChild(this.children[_e-1]);
+},onResized:function(){
+if(this.doLayout&&this.selectedChildWidget){
+with(this.selectedChildWidget.domNode.style){
+top=dojo.html.getPixelValue(this.containerNode,"padding-top",true);
+left=dojo.html.getPixelValue(this.containerNode,"padding-left",true);
+}
+var _f=dojo.html.getContentBox(this.containerNode);
+this.selectedChildWidget.resizeTo(_f.width,_f.height);
+}
+},_showChild:function(_10){
+if(this.doLayout){
+var _11=dojo.html.getContentBox(this.containerNode);
+_10.resizeTo(_11.width,_11.height);
+}
+_10.selected=true;
+_10.show();
+},_hideChild:function(_12){
+_12.selected=false;
+_12.hide();
+},closeChild:function(_13){
+var _14=_13.onClose(this,_13);
+if(_14){
+this.removeChild(_13);
+_13.destroy();
+}
+},destroy:function(){
+this._beingDestroyed=true;
+dojo.event.topic.destroy(this.widgetId+"-addChild");
+dojo.event.topic.destroy(this.widgetId+"-removeChild");
+dojo.event.topic.destroy(this.widgetId+"-selectChild");
+dojo.widget.PageContainer.superclass.destroy.apply(this,arguments);
+}});
+dojo.widget.defineWidget("dojo.widget.PageController",dojo.widget.HtmlWidget,{templateString:"<span wairole='tablist' dojoAttachEvent='onKey'></span>",isContainer:true,containerId:"",buttonWidget:"PageButton","class":"dojoPageController",fillInTemplate:function(){
+dojo.html.addClass(this.domNode,this["class"]);
+dojo.widget.wai.setAttr(this.domNode,"waiRole","role","tablist");
+},postCreate:function(){
+this.pane2button={};
+var _15=dojo.widget.byId(this.containerId);
+if(_15){
+dojo.lang.forEach(_15.children,this.onAddChild,this);
+}
+dojo.event.topic.subscribe(this.containerId+"-addChild",this,"onAddChild");
+dojo.event.topic.subscribe(this.containerId+"-removeChild",this,"onRemoveChild");
+dojo.event.topic.subscribe(this.containerId+"-selectChild",this,"onSelectChild");
+},destroy:function(){
+dojo.event.topic.unsubscribe(this.containerId+"-addChild",this,"onAddChild");
+dojo.event.topic.unsubscribe(this.containerId+"-removeChild",this,"onRemoveChild");
+dojo.event.topic.unsubscribe(this.containerId+"-selectChild",this,"onSelectChild");
+dojo.widget.PageController.superclass.destroy.apply(this,arguments);
+},onAddChild:function(_16){
+var _17=dojo.widget.createWidget(this.buttonWidget,{label:_16.label,closeButton:_16.closable});
+this.addChild(_17);
+this.domNode.appendChild(_17.domNode);
+this.pane2button[_16]=_17;
+_16.controlButton=_17;
+var _18=this;
+dojo.event.connect(_17,"onClick",function(){
+_18.onButtonClick(_16);
+});
+dojo.event.connect(_17,"onCloseButtonClick",function(){
+_18.onCloseButtonClick(_16);
+});
+},onRemoveChild:function(_19){
+if(this._currentChild==_19){
+this._currentChild=null;
+}
+var _1a=this.pane2button[_19];
+if(_1a){
+_1a.destroy();
+}
+this.pane2button[_19]=null;
+},onSelectChild:function(_1b){
+if(this._currentChild){
+var _1c=this.pane2button[this._currentChild];
+_1c.clearSelected();
+}
+var _1d=this.pane2button[_1b];
+_1d.setSelected();
+this._currentChild=_1b;
+},onButtonClick:function(_1e){
+var _1f=dojo.widget.byId(this.containerId);
+_1f.selectChild(_1e,false,this);
+},onCloseButtonClick:function(_20){
+var _21=dojo.widget.byId(this.containerId);
+_21.closeChild(_20);
+},onKey:function(evt){
+if((evt.keyCode==evt.KEY_RIGHT_ARROW)||(evt.keyCode==evt.KEY_LEFT_ARROW)){
+var _23=0;
+var _24=null;
+var _23=dojo.lang.find(this.children,this.pane2button[this._currentChild]);
+if(evt.keyCode==evt.KEY_RIGHT_ARROW){
+_24=this.children[(_23+1)%this.children.length];
+}else{
+_24=this.children[(_23+(this.children.length-1))%this.children.length];
+}
+dojo.event.browser.stopEvent(evt);
+_24.onClick();
+}
+}});
+dojo.widget.defineWidget("dojo.widget.PageButton",dojo.widget.HtmlWidget,{templateString:"<span class='item'>"+"<span dojoAttachEvent='onClick' dojoAttachPoint='titleNode' class='selectButton'>${this.label}</span>"+"<span dojoAttachEvent='onClick:onCloseButtonClick' class='closeButton'>[X]</span>"+"</span>",label:"foo",closeButton:false,onClick:function(){
+this.focus();
+},onCloseButtonMouseOver:function(){
+dojo.html.addClass(this.closeButtonNode,"closeHover");
+},onCloseButtonMouseOut:function(){
+dojo.html.removeClass(this.closeButtonNode,"closeHover");
+},onCloseButtonClick:function(evt){
+},setSelected:function(){
+dojo.html.addClass(this.domNode,"current");
+this.titleNode.setAttribute("tabIndex","0");
+},clearSelected:function(){
+dojo.html.removeClass(this.domNode,"current");
+this.titleNode.setAttribute("tabIndex","-1");
+},focus:function(){
+if(this.titleNode.focus){
+this.titleNode.focus();
+}
+}});
+dojo.lang.extend(dojo.widget.Widget,{label:"",selected:false,closable:false,onClose:function(){
+return true;
+}});

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/PageContainer.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/PageContainer.js
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/PageContainer.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Parse.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Parse.js?rev=618461&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Parse.js (added)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Parse.js Mon Feb  4 14:07:13 2008
@@ -0,0 +1,214 @@
+dojo.provide("dojo.widget.Parse");
+dojo.require("dojo.widget.Manager");
+dojo.require("dojo.dom");
+dojo.widget.Parse=function(_1){
+this.propertySetsList=[];
+this.fragment=_1;
+this.createComponents=function(_2,_3){
+var _4=[];
+var _5=false;
+try{
+if(_2&&_2.tagName&&(_2!=_2.nodeRef)){
+var _6=dojo.widget.tags;
+var _7=String(_2.tagName).split(";");
+for(var x=0;x<_7.length;x++){
+var _9=_7[x].replace(/^\s+|\s+$/g,"").toLowerCase();
+_2.tagName=_9;
+var _a;
+if(_6[_9]){
+_5=true;
+_a=_6[_9](_2,this,_3,_2.index);
+_4.push(_a);
+}else{
+if(_9.indexOf(":")==-1){
+_9="dojo:"+_9;
+}
+_a=dojo.widget.buildWidgetFromParseTree(_9,_2,this,_3,_2.index);
+if(_a){
+_5=true;
+_4.push(_a);
+}
+}
+}
+}
+}
+catch(e){
+dojo.debug("dojo.widget.Parse: error:",e);
+}
+if(!_5){
+_4=_4.concat(this.createSubComponents(_2,_3));
+}
+return _4;
+};
+this.createSubComponents=function(_b,_c){
+var _d,_e=[];
+for(var _f in _b){
+_d=_b[_f];
+if(_d&&typeof _d=="object"&&(_d!=_b.nodeRef)&&(_d!=_b.tagName)&&(!dojo.dom.isNode(_d))){
+_e=_e.concat(this.createComponents(_d,_c));
+}
+}
+return _e;
+};
+this.parsePropertySets=function(_10){
+return [];
+};
+this.parseProperties=function(_11){
+var _12={};
+for(var _13 in _11){
+if((_11[_13]==_11.tagName)||(_11[_13]==_11.nodeRef)){
+}else{
+var _14=_11[_13];
+if(_14.tagName&&dojo.widget.tags[_14.tagName.toLowerCase()]){
+}else{
+if(_14[0]&&_14[0].value!=""&&_14[0].value!=null){
+try{
+if(_13.toLowerCase()=="dataprovider"){
+var _15=this;
+this.getDataProvider(_15,_14[0].value);
+_12.dataProvider=this.dataProvider;
+}
+_12[_13]=_14[0].value;
+var _16=this.parseProperties(_14);
+for(var _17 in _16){
+_12[_17]=_16[_17];
+}
+}
+catch(e){
+dojo.debug(e);
+}
+}
+}
+switch(_13.toLowerCase()){
+case "checked":
+case "disabled":
+if(typeof _12[_13]!="boolean"){
+_12[_13]=true;
+}
+break;
+}
+}
+}
+return _12;
+};
+this.getDataProvider=function(_18,_19){
+dojo.io.bind({url:_19,load:function(_1a,_1b){
+if(_1a=="load"){
+_18.dataProvider=_1b;
+}
+},mimetype:"text/javascript",sync:true});
+};
+this.getPropertySetById=function(_1c){
+for(var x=0;x<this.propertySetsList.length;x++){
+if(_1c==this.propertySetsList[x]["id"][0].value){
+return this.propertySetsList[x];
+}
+}
+return "";
+};
+this.getPropertySetsByType=function(_1e){
+var _1f=[];
+for(var x=0;x<this.propertySetsList.length;x++){
+var cpl=this.propertySetsList[x];
+var _22=cpl.componentClass||cpl.componentType||null;
+var _23=this.propertySetsList[x]["id"][0].value;
+if(_22&&(_23==_22[0].value)){
+_1f.push(cpl);
+}
+}
+return _1f;
+};
+this.getPropertySets=function(_24){
+var ppl="dojo:propertyproviderlist";
+var _26=[];
+var _27=_24.tagName;
+if(_24[ppl]){
+var _28=_24[ppl].value.split(" ");
+for(var _29 in _28){
+if((_29.indexOf("..")==-1)&&(_29.indexOf("://")==-1)){
+var _2a=this.getPropertySetById(_29);
+if(_2a!=""){
+_26.push(_2a);
+}
+}else{
+}
+}
+}
+return this.getPropertySetsByType(_27).concat(_26);
+};
+this.createComponentFromScript=function(_2b,_2c,_2d,ns){
+_2d.fastMixIn=true;
+var ltn=(ns||"dojo")+":"+_2c.toLowerCase();
+if(dojo.widget.tags[ltn]){
+return [dojo.widget.tags[ltn](_2d,this,null,null,_2d)];
+}
+return [dojo.widget.buildWidgetFromParseTree(ltn,_2d,this,null,null,_2d)];
+};
+};
+dojo.widget._parser_collection={"dojo":new dojo.widget.Parse()};
+dojo.widget.getParser=function(_30){
+if(!_30){
+_30="dojo";
+}
+if(!this._parser_collection[_30]){
+this._parser_collection[_30]=new dojo.widget.Parse();
+}
+return this._parser_collection[_30];
+};
+dojo.widget.createWidget=function(_31,_32,_33,_34){
+var _35=false;
+var _36=(typeof _31=="string");
+if(_36){
+var pos=_31.indexOf(":");
+var ns=(pos>-1)?_31.substring(0,pos):"dojo";
+if(pos>-1){
+_31=_31.substring(pos+1);
+}
+var _39=_31.toLowerCase();
+var _3a=ns+":"+_39;
+_35=(dojo.byId(_31)&&!dojo.widget.tags[_3a]);
+}
+if((arguments.length==1)&&(_35||!_36)){
+var xp=new dojo.xml.Parse();
+var tn=_35?dojo.byId(_31):_31;
+return dojo.widget.getParser().createComponents(xp.parseElement(tn,null,true))[0];
+}
+function fromScript(_3d,_3e,_3f,ns){
+_3f[_3a]={dojotype:[{value:_39}],nodeRef:_3d,fastMixIn:true};
+_3f.ns=ns;
+return dojo.widget.getParser().createComponentFromScript(_3d,_3e,_3f,ns);
+}
+_32=_32||{};
+var _41=false;
+var tn=null;
+var h=dojo.render.html.capable;
+if(h){
+tn=document.createElement("span");
+}
+if(!_33){
+_41=true;
+_33=tn;
+if(h){
+dojo.body().appendChild(_33);
+}
+}else{
+if(_34){
+dojo.dom.insertAtPosition(tn,_33,_34);
+}else{
+tn=_33;
+}
+}
+var _43=fromScript(tn,_31.toLowerCase(),_32,ns);
+if((!_43)||(!_43[0])||(typeof _43[0].widgetType=="undefined")){
+throw new Error("createWidget: Creation of \""+_31+"\" widget failed.");
+}
+try{
+if(_41&&_43[0].domNode.parentNode){
+_43[0].domNode.parentNode.removeChild(_43[0].domNode);
+}
+}
+catch(e){
+dojo.debug(e);
+}
+return _43[0];
+};

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Parse.js
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Parse.js
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo-0.4.3-custom-4.1.5/src/widget/Parse.js
------------------------------------------------------------------------------
    svn:mime-type = text/plain