You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by jk...@apache.org on 2006/12/14 16:45:26 UTC

svn commit: r487242 [8/20] - in /tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo: ./ nls/ src/ src/behavior/ src/cal/ src/charting/ src/charting/svg/ src/charting/vml/ src/collections/ src/crypto/ src/data/ src/data/core/ src/data/old/ src/data...

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/Colorspace.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/Colorspace.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/Colorspace.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/Colorspace.js Thu Dec 14 07:45:13 2006
@@ -1,7 +1,9 @@
 
-dojo.provide("dojo.gfx.Colorspace");dojo.require("dojo.lang.common");dojo.require("dojo.math.matrix");dojo.gfx.Colorspace = function(){this.whitePoint = 'D65';this.stdObserver = '10';this.chromaticAdaptationAlg = 'bradford';this.RGBWorkingSpace = 's_rgb';this.useApproxCIELabMapping = 1;this.chainMaps = {'RGB_to_xyY'  : ['XYZ'],'xyY_to_RGB'  : ['XYZ'],'RGB_to_Lab'  : ['XYZ'],'Lab_to_RGB'  : ['XYZ'],'RGB_to_LCHab': ['XYZ', 'Lab'],'LCHab_to_RGB': ['Lab'],'xyY_to_Lab'  : ['XYZ'],'Lab_to_xyY'  : ['XYZ'],'XYZ_to_LCHab': ['Lab'],'LCHab_to_XYZ': ['Lab'],'xyY_to_LCHab': ['XYZ', 'Lab'],'LCHab_to_xyY': ['Lab', 'XYZ'],'RGB_to_Luv'  : ['XYZ'],'Luv_to_RGB'  : ['XYZ'],'xyY_to_Luv'  : ['XYZ'],'Luv_to_xyY'  : ['XYZ'],'Lab_to_Luv'  : ['XYZ'],'Luv_to_Lab'  : ['XYZ'],'LCHab_to_Luv': ['Lab', 'XYZ'],'Luv_to_LCHab': ['XYZ', 'Lab'],'RGB_to_LCHuv'  : ['XYZ', 'Luv'],'LCHuv_to_RGB'  : ['Luv', 'XYZ'],'XYZ_to_LCHuv'  : ['Luv'],'LCHuv_to_XYZ'  : ['Luv'],'xyY_to_LCHuv'  : ['XYZ', 'Luv'],'LCHuv_to_xyY'  : 
 ['Luv', 'XYZ'],'Lab_to_LCHuv'  : ['XYZ', 'Luv'],'LCHuv_to_Lab'  : ['Luv', 'XYZ'],'LCHab_to_LCHuv': ['Lab', 'XYZ', 'Luv'],'LCHuv_to_LCHab': ['Luv', 'XYZ', 'Lab'],'XYZ_to_CMY'    : ['RGB'],'CMY_to_XYZ'    : ['RGB'],'xyY_to_CMY'    : ['RGB'],'CMY_to_xyY'    : ['RGB'],'Lab_to_CMY'    : ['RGB'],'CMY_to_Lab'    : ['RGB'],'LCHab_to_CMY'  : ['RGB'],'CMY_to_LCHab'  : ['RGB'],'Luv_to_CMY'    : ['RGB'],'CMY_to_Luv'    : ['RGB'],'LCHuv_to_CMY'  : ['RGB'],'CMY_to_LCHuv'  : ['RGB'],'XYZ_to_HSL'    : ['RGB'],'HSL_to_XYZ'    : ['RGB'],'xyY_to_HSL'    : ['RGB'],'HSL_to_xyY'    : ['RGB'],'Lab_to_HSL'    : ['RGB'],'HSL_to_Lab'    : ['RGB'],'LCHab_to_HSL'  : ['RGB'],'HSL_to_LCHab'  : ['RGB'],'Luv_to_HSL'    : ['RGB'],'HSL_to_Luv'    : ['RGB'],'LCHuv_to_HSL'  : ['RGB'],'HSL_to_LCHuv'  : ['RGB'],'CMY_to_HSL'    : ['RGB'],'HSL_to_CMY'    : ['RGB'],'CMYK_to_HSL'   : ['RGB'],'HSL_to_CMYK'   : ['RGB'],'XYZ_to_HSV'    : ['RGB'],'HSV_to_XYZ'    : ['RGB'],'xyY_to_HSV'    : ['RGB'],'HSV_to_xyY'    : ['RG
 B'],'Lab_to_HSV'    : ['RGB'],'HSV_to_Lab'    : ['RGB'],'LCHab_to_HSV'  : ['RGB'],'HSV_to_LCHab'  : ['RGB'],'Luv_to_HSV'    : ['RGB'],'HSV_to_Luv'    : ['RGB'],'LCHuv_to_HSV'  : ['RGB'],'HSV_to_LCHuv'  : ['RGB'],'CMY_to_HSV'    : ['RGB'],'HSV_to_CMY'    : ['RGB'],'CMYK_to_HSV'   : ['RGB'],'HSV_to_CMYK'   : ['RGB'],'HSL_to_HSV'    : ['RGB'],'HSV_to_HSL'    : ['RGB'],'XYZ_to_CMYK'   : ['RGB'],'CMYK_to_XYZ'   : ['RGB'],'xyY_to_CMYK'   : ['RGB'],'CMYK_to_xyY'   : ['RGB'],'Lab_to_CMYK'   : ['RGB'],'CMYK_to_Lab'   : ['RGB'],'LCHab_to_CMYK' : ['RGB'],'CMYK_to_LCHab' : ['RGB'],'Luv_to_CMYK'   : ['RGB'],'CMYK_to_Luv'   : ['RGB'],'LCHuv_to_CMYK' : ['RGB'],'CMYK_to_LCHuv' : ['RGB']};return this;}
+dojo.provide("dojo.gfx.Colorspace");dojo.require("dojo.lang.common");dojo.require("dojo.math.matrix");dojo.gfx.Colorspace = function(){this.whitePoint = 'D65';this.stdObserver = '10';this.chromaticAdaptationAlg = 'bradford';this.RGBWorkingSpace = 's_rgb';this.useApproxCIELabMapping = 1;this.chainMaps = {'RGB_to_xyY'  : ['XYZ'],'xyY_to_RGB'  : ['XYZ'],'RGB_to_Lab'  : ['XYZ'],'Lab_to_RGB'  : ['XYZ'],'RGB_to_LCHab': ['XYZ', 'Lab'],'LCHab_to_RGB': ['Lab'],'xyY_to_Lab'  : ['XYZ'],'Lab_to_xyY'  : ['XYZ'],'XYZ_to_LCHab': ['Lab'],'LCHab_to_XYZ': ['Lab'],'xyY_to_LCHab': ['XYZ', 'Lab'],'LCHab_to_xyY': ['Lab', 'XYZ'],'RGB_to_Luv'  : ['XYZ'],'Luv_to_RGB'  : ['XYZ'],'xyY_to_Luv'  : ['XYZ'],'Luv_to_xyY'  : ['XYZ'],'Lab_to_Luv'  : ['XYZ'],'Luv_to_Lab'  : ['XYZ'],'LCHab_to_Luv': ['Lab', 'XYZ'],'Luv_to_LCHab': ['XYZ', 'Lab'],'RGB_to_LCHuv'  : ['XYZ', 'Luv'],'LCHuv_to_RGB'  : ['Luv', 'XYZ'],'XYZ_to_LCHuv'  : ['Luv'],'LCHuv_to_XYZ'  : ['Luv'],'xyY_to_LCHuv'  : ['XYZ', 'Luv'],'LCHuv_to_xyY'  : 
 ['Luv', 'XYZ'],'Lab_to_LCHuv'  : ['XYZ', 'Luv'],'LCHuv_to_Lab'  : ['Luv', 'XYZ'],'LCHab_to_LCHuv': ['Lab', 'XYZ', 'Luv'],'LCHuv_to_LCHab': ['Luv', 'XYZ', 'Lab'],'XYZ_to_CMY'    : ['RGB'],'CMY_to_XYZ'    : ['RGB'],'xyY_to_CMY'    : ['RGB'],'CMY_to_xyY'    : ['RGB'],'Lab_to_CMY'    : ['RGB'],'CMY_to_Lab'    : ['RGB'],'LCHab_to_CMY'  : ['RGB'],'CMY_to_LCHab'  : ['RGB'],'Luv_to_CMY'    : ['RGB'],'CMY_to_Luv'    : ['RGB'],'LCHuv_to_CMY'  : ['RGB'],'CMY_to_LCHuv'  : ['RGB'],'XYZ_to_HSL'    : ['RGB'],'HSL_to_XYZ'    : ['RGB'],'xyY_to_HSL'    : ['RGB'],'HSL_to_xyY'    : ['RGB'],'Lab_to_HSL'    : ['RGB'],'HSL_to_Lab'    : ['RGB'],'LCHab_to_HSL'  : ['RGB'],'HSL_to_LCHab'  : ['RGB'],'Luv_to_HSL'    : ['RGB'],'HSL_to_Luv'    : ['RGB'],'LCHuv_to_HSL'  : ['RGB'],'HSL_to_LCHuv'  : ['RGB'],'CMY_to_HSL'    : ['RGB'],'HSL_to_CMY'    : ['RGB'],'CMYK_to_HSL'   : ['RGB'],'HSL_to_CMYK'   : ['RGB'],'XYZ_to_HSV'    : ['RGB'],'HSV_to_XYZ'    : ['RGB'],'xyY_to_HSV'    : ['RGB'],'HSV_to_xyY'    : ['RG
 B'],'Lab_to_HSV'    : ['RGB'],'HSV_to_Lab'    : ['RGB'],'LCHab_to_HSV'  : ['RGB'],'HSV_to_LCHab'  : ['RGB'],'Luv_to_HSV'    : ['RGB'],'HSV_to_Luv'    : ['RGB'],'LCHuv_to_HSV'  : ['RGB'],'HSV_to_LCHuv'  : ['RGB'],'CMY_to_HSV'    : ['RGB'],'HSV_to_CMY'    : ['RGB'],'CMYK_to_HSV'   : ['RGB'],'HSV_to_CMYK'   : ['RGB'],'HSL_to_HSV'    : ['RGB'],'HSV_to_HSL'    : ['RGB'],'XYZ_to_CMYK'   : ['RGB'],'CMYK_to_XYZ'   : ['RGB'],'xyY_to_CMYK'   : ['RGB'],'CMYK_to_xyY'   : ['RGB'],'Lab_to_CMYK'   : ['RGB'],'CMYK_to_Lab'   : ['RGB'],'LCHab_to_CMYK' : ['RGB'],'CMYK_to_LCHab' : ['RGB'],'Luv_to_CMYK'   : ['RGB'],'CMYK_to_Luv'   : ['RGB'],'LCHuv_to_CMYK' : ['RGB'],'CMYK_to_LCHuv' : ['RGB']
+};return this;}
 dojo.gfx.Colorspace.prototype.convert = function(col, model_from, model_to){var k = model_from+'_to_'+model_to;if (this[k]){return this[k](col);}else{if (this.chainMaps[k]){var cur = model_from;var models = this.chainMaps[k].concat();models.push(model_to);for(var i=0; i<models.length; i++){col = this.convert(col, cur, models[i]);cur = models[i];}
-return col;}else{dojo.debug("Can't convert from "+model_from+' to '+model_to);}}}
+return col;}else{dojo.debug("Can't convert from "+model_from+' to '+model_to);}}
+}
 dojo.gfx.Colorspace.prototype.munge = function(keys, args){if (dojo.lang.isArray(args[0])){args = args[0];}
 var out = new Array();for (var i=0; i<keys.length; i++){out[keys.charAt(i)] = args[i];}
 return out;}
@@ -10,8 +12,9 @@
 switch(this.whitePoint){case 'E'   : x=1/3    ; y=1/3    ; t=5400; break;case 'D50' : x=0.34773; y=0.35952; t=5000; break;case 'D55' : x=0.33411; y=0.34877; t=5500; break;case 'D65' : x=0.31382; y=0.33100; t=6500; break;case 'D75' : x=0.29968; y=0.31740; t=7500; break;case 'A'   : x=0.45117; y=0.40594; t=2856; break;case 'B'   : x=0.3498 ; y=0.3527 ; t=4874; break;case 'C'   : x=0.31039; y=0.31905; t=6774; break;case 'F2'  : x=0.37928; y=0.36723; t=4200; break;case 'F7'  : x=0.31565; y=0.32951; t=6500; break;case 'F11' : x=0.38543; y=0.37110; t=4000; break;default: dojo.debug('White point '+this.whitePoint+" isn't defined for Std. Observer "+this.strObserver);};break;default:
 dojo.debug("Std. Observer "+this.strObserver+" isn't defined");}
 var z = 1 - x - y;var wp = {'x':x, 'y':y, 'z':z, 't':t};wp.Y = 1;var XYZ = this.xyY_to_XYZ([wp.x, wp.y, wp.Y]);wp.X = XYZ[0];wp.Y = XYZ[1];wp.Z = XYZ[2];return wp;}
-dojo.gfx.Colorspace.prototype.getPrimaries = function(){var m = [];switch(this.RGBWorkingSpace){case 'adobe_rgb_1998'	: m = [2.2, 'D65', 0.6400, 0.3300, 0.297361, 0.2100, 0.7100, 0.627355, 0.1500, 0.0600, 0.075285]; break;case 'apple_rgb'	: m = [1.8, 'D65', 0.6250, 0.3400, 0.244634, 0.2800, 0.5950, 0.672034, 0.1550, 0.0700, 0.083332]; break;case 'best_rgb'		: m = [2.2, 'D50', 0.7347, 0.2653, 0.228457, 0.2150, 0.7750, 0.737352, 0.1300, 0.0350, 0.034191]; break;case 'beta_rgb'		: m = [2.2, 'D50', 0.6888, 0.3112, 0.303273, 0.1986, 0.7551, 0.663786, 0.1265, 0.0352, 0.032941]; break;case 'bruce_rgb'	: m = [2.2, 'D65', 0.6400, 0.3300, 0.240995, 0.2800, 0.6500, 0.683554, 0.1500, 0.0600, 0.075452]; break;case 'cie_rgb'		: m = [2.2, 'E'  , 0.7350, 0.2650, 0.176204, 0.2740, 0.7170, 0.812985, 0.1670, 0.0090, 0.010811]; break;case 'color_match_rgb'	: m = [1.8, 'D50', 0.6300, 0.3400, 0.274884, 0.2950, 0.6050, 0.658132, 0.1500, 0.0750, 0.066985]; break;case 'don_rgb_4'	: m = [2.2, 'D50', 
 0.6960, 0.3000, 0.278350, 0.2150, 0.7650, 0.687970, 0.1300, 0.0350, 0.033680]; break;case 'eci_rgb'		: m = [1.8, 'D50', 0.6700, 0.3300, 0.320250, 0.2100, 0.7100, 0.602071, 0.1400, 0.0800, 0.077679]; break;case 'ekta_space_ps5'	: m = [2.2, 'D50', 0.6950, 0.3050, 0.260629, 0.2600, 0.7000, 0.734946, 0.1100, 0.0050, 0.004425]; break;case 'ntsc_rgb'		: m = [2.2, 'C'  , 0.6700, 0.3300, 0.298839, 0.2100, 0.7100, 0.586811, 0.1400, 0.0800, 0.114350]; break;case 'pal_secam_rgb'	: m = [2.2, 'D65', 0.6400, 0.3300, 0.222021, 0.2900, 0.6000, 0.706645, 0.1500, 0.0600, 0.071334]; break;case 'pro_photo_rgb'	: m = [1.8, 'D50', 0.7347, 0.2653, 0.288040, 0.1596, 0.8404, 0.711874, 0.0366, 0.0001, 0.000086]; break;case 'smpte-c_rgb'	: m = [2.2, 'D65', 0.6300, 0.3400, 0.212395, 0.3100, 0.5950, 0.701049, 0.1550, 0.0700, 0.086556]; break;case 's_rgb'		: m = [2.2, 'D65', 0.6400, 0.3300, 0.212656, 0.3000, 0.6000, 0.715158, 0.1500, 0.0600, 0.072186]; break;case 'wide_gamut_rgb'	: m = [2.2, 'D50', 0.735
 0, 0.2650, 0.258187, 0.1150, 0.8260, 0.724938, 0.1570, 0.0180, 0.016875]; break;default: dojo.debug("RGB working space "+this.RGBWorkingSpace+" isn't defined");}
-var p = {name: this.RGBWorkingSpace,gamma:m[0],wp:m[1],xr:m[2],yr:m[3],Yr:m[4],xg:m[5],yg:m[6],Yg:m[7],xb:m[8],yb:m[9],Yb:m[10]};if (p.wp != this.whitePoint){var r = this.XYZ_to_xyY( this.chromaticAdaptation( this.xyY_to_XYZ([p.xr, p.yr, p.Yr]), p.wp, this.whitePoint ) );var g = this.XYZ_to_xyY( this.chromaticAdaptation( this.xyY_to_XYZ([p.xg, p.yg, p.Yg]), p.wp, this.whitePoint ) );var b = this.XYZ_to_xyY( this.chromaticAdaptation( this.xyY_to_XYZ([p.xb, p.yb, p.Yb]), p.wp, this.whitePoint ) );p.xr = r[0];p.yr = r[1];p.Yr = r[2];p.xg = g[0];p.yg = g[1];p.Yg = g[2];p.xb = b[0];p.yb = b[1];p.Yb = b[2];p.wp = this.whitePoint;}
+dojo.gfx.Colorspace.prototype.getPrimaries = function(){var m = [];switch(this.RGBWorkingSpace){case 'adobe_rgb_1998': m = [2.2, 'D65', 0.6400, 0.3300, 0.297361, 0.2100, 0.7100, 0.627355, 0.1500, 0.0600, 0.075285]; break;case 'apple_rgb': m = [1.8, 'D65', 0.6250, 0.3400, 0.244634, 0.2800, 0.5950, 0.672034, 0.1550, 0.0700, 0.083332]; break;case 'best_rgb': m = [2.2, 'D50', 0.7347, 0.2653, 0.228457, 0.2150, 0.7750, 0.737352, 0.1300, 0.0350, 0.034191]; break;case 'beta_rgb': m = [2.2, 'D50', 0.6888, 0.3112, 0.303273, 0.1986, 0.7551, 0.663786, 0.1265, 0.0352, 0.032941]; break;case 'bruce_rgb': m = [2.2, 'D65', 0.6400, 0.3300, 0.240995, 0.2800, 0.6500, 0.683554, 0.1500, 0.0600, 0.075452]; break;case 'cie_rgb': m = [2.2, 'E'  , 0.7350, 0.2650, 0.176204, 0.2740, 0.7170, 0.812985, 0.1670, 0.0090, 0.010811]; break;case 'color_match_rgb': m = [1.8, 'D50', 0.6300, 0.3400, 0.274884, 0.2950, 0.6050, 0.658132, 0.1500, 0.0750, 0.066985]; break;case 'don_rgb_4': m = [2.2, 'D50', 0.6960, 0.3
 000, 0.278350, 0.2150, 0.7650, 0.687970, 0.1300, 0.0350, 0.033680]; break;case 'eci_rgb': m = [1.8, 'D50', 0.6700, 0.3300, 0.320250, 0.2100, 0.7100, 0.602071, 0.1400, 0.0800, 0.077679]; break;case 'ekta_space_ps5': m = [2.2, 'D50', 0.6950, 0.3050, 0.260629, 0.2600, 0.7000, 0.734946, 0.1100, 0.0050, 0.004425]; break;case 'ntsc_rgb': m = [2.2, 'C'  , 0.6700, 0.3300, 0.298839, 0.2100, 0.7100, 0.586811, 0.1400, 0.0800, 0.114350]; break;case 'pal_secam_rgb': m = [2.2, 'D65', 0.6400, 0.3300, 0.222021, 0.2900, 0.6000, 0.706645, 0.1500, 0.0600, 0.071334]; break;case 'pro_photo_rgb': m = [1.8, 'D50', 0.7347, 0.2653, 0.288040, 0.1596, 0.8404, 0.711874, 0.0366, 0.0001, 0.000086]; break;case 'smpte-c_rgb': m = [2.2, 'D65', 0.6300, 0.3400, 0.212395, 0.3100, 0.5950, 0.701049, 0.1550, 0.0700, 0.086556]; break;case 's_rgb': m = [2.2, 'D65', 0.6400, 0.3300, 0.212656, 0.3000, 0.6000, 0.715158, 0.1500, 0.0600, 0.072186]; break;case 'wide_gamut_rgb': m = [2.2, 'D50', 0.7350, 0.2650, 0.258187, 0
 .1150, 0.8260, 0.724938, 0.1570, 0.0180, 0.016875]; break;default: dojo.debug("RGB working space "+this.RGBWorkingSpace+" isn't defined");}
+var p = {name: this.RGBWorkingSpace,gamma:m[0],wp:m[1],xr:m[2],yr:m[3],Yr:m[4],xg:m[5],yg:m[6],Yg:m[7],xb:m[8],yb:m[9],Yb:m[10]
+};if (p.wp != this.whitePoint){var r = this.XYZ_to_xyY( this.chromaticAdaptation( this.xyY_to_XYZ([p.xr, p.yr, p.Yr]), p.wp, this.whitePoint ) );var g = this.XYZ_to_xyY( this.chromaticAdaptation( this.xyY_to_XYZ([p.xg, p.yg, p.Yg]), p.wp, this.whitePoint ) );var b = this.XYZ_to_xyY( this.chromaticAdaptation( this.xyY_to_XYZ([p.xb, p.yb, p.Yb]), p.wp, this.whitePoint ) );p.xr = r[0];p.yr = r[1];p.Yr = r[2];p.xg = g[0];p.yg = g[1];p.Yg = g[2];p.xb = b[0];p.yb = b[1];p.Yb = b[2];p.wp = this.whitePoint;}
 p.zr = 1 - p.xr - p.yr;p.zg = 1 - p.xg - p.yg;p.zb = 1 - p.xb - p.yb;return p;}
 dojo.gfx.Colorspace.prototype.epsilon = function(){return this.useApproxCIELabMapping ? 0.008856 : 216 / 24289;}
 dojo.gfx.Colorspace.prototype.kappa = function(){return this.useApproxCIELabMapping ? 903.3 : 24389 / 27;}
@@ -61,7 +64,8 @@
 dojo.gfx.Colorspace.prototype.CMYK_to_RGB = function(){var src = this.munge('CMYK', arguments);var R = 1 - Math.min(1, src.C * (1-src.K) + src.K);var G = 1 - Math.min(1, src.M * (1-src.K) + src.K);var B = 1 - Math.min(1, src.Y * (1-src.K) + src.K);return [R, G, B];}
 dojo.gfx.Colorspace.prototype.CMY_to_CMYK = function(){var src = this.munge('CMY', arguments);var K = Math.min(src.C, src.M, src.Y);var C = (src.C - K) / (1 - K);var M = (src.M - K) / (1 - K);var Y = (src.Y - K) / (1 - K);return [C, M, Y, K];}
 dojo.gfx.Colorspace.prototype.CMYK_to_CMY = function(){var src = this.munge('CMYK', arguments);var C = Math.min(1, src.C * (1-src.K) + src.K);var M = Math.min(1, src.M * (1-src.K) + src.K);var Y = Math.min(1, src.Y * (1-src.K) + src.K);return [C, M, Y];}
-dojo.gfx.Colorspace.prototype.RGB_to_HSV = function(){var src = this.munge('RGB', arguments);var min = Math.min(src.R, src.G, src.B);var V = Math.max(src.R, src.G, src.B);var delta = V - min;var H = null;var S = (V == 0) ? 0 : delta / V;if (S == 0){H = 0;}else{if (src.R == V){H = 60 * (src.G - src.B) / delta;}else{if (src.G == V){H = 120 + 60 * (src.B - src.R) / delta;}else{if (src.B == V){H = 240 + 60 * (src.R - src.G) / delta;}}}
+dojo.gfx.Colorspace.prototype.RGB_to_HSV = function(){var src = this.munge('RGB', arguments);var min = Math.min(src.R, src.G, src.B);var V = Math.max(src.R, src.G, src.B);var delta = V - min;var H = null;var S = (V == 0) ? 0 : delta / V;if (S == 0){H = 0;}else{if (src.R == V){H = 60 * (src.G - src.B) / delta;}else{if (src.G == V){H = 120 + 60 * (src.B - src.R) / delta;}else{if (src.B == V){H = 240 + 60 * (src.R - src.G) / delta;}}
+}
 if (H < 0){H += 360;}}
 H = (H == 0) ? 360 : H;return [H, S, V];}
 dojo.gfx.Colorspace.prototype.HSV_to_RGB = function(){var src = this.munge('HSV', arguments);if (src.H == 360){ src.H = 0;}

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/__package__.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/__package__.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/__package__.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/__package__.js Thu Dec 14 07:45:13 2006
@@ -1,4 +1,5 @@
 
 dojo.kwCompoundRequire({common: [
 "dojo.gfx.color","dojo.gfx.matrix","dojo.gfx.common"
-]});dojo.requireIf(dojo.render.svg.capable, "dojo.gfx.svg");dojo.requireIf(dojo.render.vml.capable, "dojo.gfx.vml");dojo.provide("dojo.gfx.*");
\ No newline at end of file
+]
+});dojo.requireIf(dojo.render.svg.capable, "dojo.gfx.svg");dojo.requireIf(dojo.render.vml.capable, "dojo.gfx.vml");dojo.provide("dojo.gfx.*");
\ No newline at end of file

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/color.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/color.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/color.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/color.js Thu Dec 14 07:45:13 2006
@@ -2,12 +2,14 @@
 dojo.provide("dojo.gfx.color");dojo.require("dojo.lang.common");dojo.require("dojo.lang.array");dojo.gfx.color.Color = function(r, g, b, a) {if(dojo.lang.isArray(r)){this.r = r[0];this.g = r[1];this.b = r[2];this.a = r[3]||1.0;}else if(dojo.lang.isString(r)){var rgb = dojo.gfx.color.extractRGB(r);this.r = rgb[0];this.g = rgb[1];this.b = rgb[2];this.a = g||1.0;}else if(r instanceof dojo.gfx.color.Color){this.r = r.r;this.b = r.b;this.g = r.g;this.a = r.a;}else{this.r = r;this.g = g;this.b = b;this.a = a;}}
 dojo.gfx.color.Color.fromArray = function(arr) {return new dojo.gfx.color.Color(arr[0], arr[1], arr[2], arr[3]);}
 dojo.extend(dojo.gfx.color.Color, {toRgb: function(includeAlpha) {if(includeAlpha) {return this.toRgba();} else {return [this.r, this.g, this.b];}},toRgba: function() {return [this.r, this.g, this.b, this.a];},toHex: function() {return dojo.gfx.color.rgb2hex(this.toRgb());},toCss: function() {return "rgb(" + this.toRgb().join() + ")";},toString: function() {return this.toHex();},blend: function(color, weight){var rgb = null;if(dojo.lang.isArray(color)){rgb = color;}else if(color instanceof dojo.gfx.color.Color){rgb = color.toRgb();}else{rgb = new dojo.gfx.color.Color(color).toRgb();}
-return dojo.gfx.color.blend(this.toRgb(), rgb, weight);}});dojo.gfx.color.named = {white:      [255,255,255],black:      [0,0,0],red:        [255,0,0],green:	    [0,255,0],lime:	    [0,255,0],blue:       [0,0,255],navy:       [0,0,128],gray:       [128,128,128],silver:     [192,192,192]};dojo.gfx.color.blend = function(a, b, weight){if(typeof a == "string"){return dojo.gfx.color.blendHex(a, b, weight);}
+return dojo.gfx.color.blend(this.toRgb(), rgb, weight);}});dojo.gfx.color.named = {white:      [255,255,255],black:      [0,0,0],red:        [255,0,0],green:    [0,255,0],lime:    [0,255,0],blue:       [0,0,255],navy:       [0,0,128],gray:       [128,128,128],silver:     [192,192,192]
+};dojo.gfx.color.blend = function(a, b, weight){if(typeof a == "string"){return dojo.gfx.color.blendHex(a, b, weight);}
 if(!weight){weight = 0;}
 weight = Math.min(Math.max(-1, weight), 1);weight = ((weight + 1)/2);var c = [];for(var x = 0; x < 3; x++){c[x] = parseInt( b[x] + ( (a[x] - b[x]) * weight) );}
 return c;}
 dojo.gfx.color.blendHex = function(a, b, weight) {return dojo.gfx.color.rgb2hex(dojo.gfx.color.blend(dojo.gfx.color.hex2rgb(a), dojo.gfx.color.hex2rgb(b), weight));}
-dojo.gfx.color.extractRGB = function(color) {var hex = "0123456789abcdef";color = color.toLowerCase();if( color.indexOf("rgb") == 0 ) {var matches = color.match(/rgba*\((\d+), *(\d+), *(\d+)/i);var ret = matches.splice(1, 3);return ret;} else {var colors = dojo.gfx.color.hex2rgb(color);if(colors) {return colors;} else {return dojo.gfx.color.named[color] || [255, 255, 255];}}}
+dojo.gfx.color.extractRGB = function(color) {color = color.toLowerCase();if( color.indexOf("rgb") == 0 ) {var matches = color.match(/rgba*\((\d+), *(\d+), *(\d+)/i);var ret = matches.splice(1, 3);return ret;} else {var colors = dojo.gfx.color.hex2rgb(color);if(colors) {return colors;} else {return dojo.gfx.color.named[color] || [255, 255, 255];}}
+}
 dojo.gfx.color.hex2rgb = function(hex) {var hexNum = "0123456789ABCDEF";var rgb = new Array(3);if( hex.indexOf("#") == 0 ) { hex = hex.substring(1); }
 hex = hex.toUpperCase();if(hex.replace(new RegExp("["+hexNum+"]", "g"), "") != "") {return null;}
 if( hex.length == 3 ) {rgb[0] = hex.charAt(0) + hex.charAt(0)

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/color/hsv.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/color/hsv.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/color/hsv.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/color/hsv.js Thu Dec 14 07:45:13 2006
@@ -1,11 +1,13 @@
 
 dojo.provide("dojo.gfx.color.hsv");dojo.require("dojo.lang.array");dojo.require("dojo.math");dojo.lang.extend(dojo.gfx.color.Color, {toHsv: function() {return dojo.gfx.color.rgb2hsv(this.toRgb());}});dojo.gfx.color.rgb2hsv = function(r, g, b, options){if (dojo.lang.isArray(r)) {if(g) {options = g;}
 b = r[2] || 0;g = r[1] || 0;r = r[0] || 0;}
-var opt = {inputRange:  (options && options.inputRange)  ? options.inputRange : 255,outputRange: (options && options.outputRange) ? options.outputRange : [255, 255, 255]};var h = null;var s = null;var v = null;switch(opt.inputRange) {case 1:
+var opt = {inputRange:  (options && options.inputRange)  ? options.inputRange : 255,outputRange: (options && options.outputRange) ? options.outputRange : [255, 255, 255]
+};var h = null;var s = null;var v = null;switch(opt.inputRange) {case 1:
 r = (r * 255);g = (g * 255);b = (b * 255);break;case 100:
 r = (r / 100) * 255;g = (g / 100) * 255;b = (b / 100) * 255;break;default:
 break;}
-var min = Math.min(r, g, b);v = Math.max(r, g, b);var delta = v - min;s = (v == 0) ? 0 : delta/v;if (s == 0){h = 0;}else{if (r == v){h = 60 * (g - b) / delta;}else{if (g == v){h = 120 + 60 * (b - r) / delta;}else{if (b == v){h = 240 + 60 * (r - g) / delta;}}}
+var min = Math.min(r, g, b);v = Math.max(r, g, b);var delta = v - min;s = (v == 0) ? 0 : delta/v;if (s == 0){h = 0;}else{if (r == v){h = 60 * (g - b) / delta;}else{if (g == v){h = 120 + 60 * (b - r) / delta;}else{if (b == v){h = 240 + 60 * (r - g) / delta;}}
+}
 if (h <= 0){h += 360;}}
 switch (opt.outputRange[0]) {case 360:
 break;case 100:
@@ -23,7 +25,8 @@
 h = dojo.math.round(h);s = dojo.math.round(s);v = dojo.math.round(v);return [h, s, v];}
 dojo.gfx.color.hsv2rgb = function(h, s, v, options){if (dojo.lang.isArray(h)) {if(s){options = s;}
 v = h[2] || 0;s = h[1] || 0;h = h[0] || 0;}
-var opt = {inputRange:  (options && options.inputRange)  ? options.inputRange : [255, 255, 255],outputRange: (options && options.outputRange) ? options.outputRange : 255};switch(opt.inputRange[0]) {case 1: h = h * 360; break;case 100: h = (h / 100) * 360; break;case 360: h = h; break;default: h = (h / 255) * 360;}
+var opt = {inputRange:  (options && options.inputRange)  ? options.inputRange : [255, 255, 255],outputRange: (options && options.outputRange) ? options.outputRange : 255
+};switch(opt.inputRange[0]) {case 1: h = h * 360; break;case 100: h = (h / 100) * 360; break;case 360: h = h; break;default: h = (h / 255) * 360;}
 if (h == 360){ h = 0;}
 switch(opt.inputRange[1]){case 100: s /= 100; break;case 255: s /= 255;}
 switch(opt.inputRange[2]){case 100: v /= 100; break;case 255: v /= 255;}

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/common.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/common.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/common.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/common.js Thu Dec 14 07:45:13 2006
@@ -1,6 +1,8 @@
 
-dojo.provide("dojo.gfx.common");dojo.require("dojo.gfx.color");dojo.require("dojo.lang.declare");dojo.require("dojo.lang.extras");dojo.require("dojo.dom");dojo.lang.mixin(dojo.gfx, {defaultPath:     {type: "path",     path: ""},defaultPolyline: {type: "polyline", points: []},defaultRect:     {type: "rect",     x: 0, y: 0, width: 100, height: 100, r: 0},defaultEllipse:  {type: "ellipse",  cx: 0, cy: 0, rx: 200, ry: 100},defaultCircle:   {type: "circle",   cx: 0, cy: 0, r: 100},defaultLine:     {type: "line",     x1: 0, y1: 0, x2: 100, y2: 100},defaultImage:    {type: "image",    width: 0, height: 0, src: ""},defaultStroke: {color: "black", width: 1, cap: "butt", join: 4},defaultLinearGradient: {type: "linear", x1: 0, y1: 0, x2: 100, y2: 100,colors: [{offset: 0, color: "black"}, {offset: 1, color: "white"}]},defaultRadialGradient: {type: "radial", cx: 0, cy: 0, r: 100,colors: [{offset: 0, color: "black"}, {offset: 1, color: "white"}]},defaultPattern: {type: "pattern", x: 0, y:
  0, width: 0, height: 0, src: ""},normalizeColor: function( color){return (color instanceof dojo.gfx.color.Color) ? color : new dojo.gfx.color.Color(color);},normalizeParameters: function(existed, update){if(update){var empty = {};for(var x in existed){if(x in update && !(x in empty)){existed[x] = update[x];}}}
+dojo.provide("dojo.gfx.common");dojo.require("dojo.gfx.color");dojo.require("dojo.lang.declare");dojo.require("dojo.lang.extras");dojo.require("dojo.dom");dojo.lang.mixin(dojo.gfx, {defaultPath:     {type: "path",     path: ""},defaultPolyline: {type: "polyline", points: []},defaultRect:     {type: "rect",     x: 0, y: 0, width: 100, height: 100, r: 0},defaultEllipse:  {type: "ellipse",  cx: 0, cy: 0, rx: 200, ry: 100},defaultCircle:   {type: "circle",   cx: 0, cy: 0, r: 100},defaultLine:     {type: "line",     x1: 0, y1: 0, x2: 100, y2: 100},defaultImage:    {type: "image",    width: 0, height: 0, src: ""},defaultStroke: {color: "black", width: 1, cap: "butt", join: 4},defaultLinearGradient: {type: "linear", x1: 0, y1: 0, x2: 100, y2: 100,colors: [{offset: 0, color: "black"}, {offset: 1, color: "white"}]},defaultRadialGradient: {type: "radial", cx: 0, cy: 0, r: 100,colors: [{offset: 0, color: "black"}, {offset: 1, color: "white"}]},defaultPattern: {type: "pattern", x: 0, y:
  0, width: 0, height: 0, src: ""},normalizeColor: function( color){return (color instanceof dojo.gfx.color.Color) ? color : new dojo.gfx.color.Color(color);},normalizeParameters: function(existed, update){if(update){var empty = {};for(var x in existed){if(x in update && !(x in empty)){existed[x] = update[x];}}
+}
 return existed;},makeParameters: function(defaults, update){if(!update) return dojo.lang.shallowCopy(defaults, true);var result = {};for(var i in defaults){if(!(i in result)){result[i] = dojo.lang.shallowCopy((i in update) ? update[i] : defaults[i], true);}}
 return result;},formatNumber: function(x, addSpace){var val = x.toString();if(val.indexOf("e") >= 0){val = x.toFixed(4);}else{var point = val.indexOf(".");if(point >= 0 && val.length - point > 5){val = x.toFixed(4);}}
 if(x < 0){return val;}
-return addSpace ? " " + val : val;},pathRegExp: /([A-Za-z]+)|(\d+(\.\d+)?)|(\.\d+)|(-\d+(\.\d+)?)|(-\.\d+)/g});dojo.declare("dojo.gfx.Surface", null,function(){this.rawNode = null;},{getEventSource: function(){return this.rawNode;}});dojo.declare("dojo.gfx.Point", null, {});dojo.declare("dojo.gfx.Rectangle", null, {});
\ No newline at end of file
+return addSpace ? " " + val : val;},pathRegExp: /([A-Za-z]+)|(\d+(\.\d+)?)|(\.\d+)|(-\d+(\.\d+)?)|(-\.\d+)/g
+});dojo.declare("dojo.gfx.Surface", null,function(){this.rawNode = null;},{getEventSource: function(){return this.rawNode;}});dojo.declare("dojo.gfx.Point", null, {});dojo.declare("dojo.gfx.Rectangle", null, {});
\ No newline at end of file

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/matrix.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/matrix.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/matrix.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/matrix.js Thu Dec 14 07:45:13 2006
@@ -1,10 +1,12 @@
 
 dojo.provide("dojo.gfx.matrix");dojo.require("dojo.lang.common");dojo.require("dojo.math.*");dojo.gfx.matrix.Matrix2D = function(arg){if(arg){if(arg instanceof Array){if(arg.length > 0){var m = dojo.gfx.matrix.normalize(arg[0]);for(var i = 1; i < arg.length; ++i){var l = m;var r = dojo.gfx.matrix.normalize(arg[i]);m = new dojo.gfx.matrix.Matrix2D();m.xx = l.xx * r.xx + l.xy * r.yx;m.xy = l.xx * r.xy + l.xy * r.yy;m.yx = l.yx * r.xx + l.yy * r.yx;m.yy = l.yx * r.xy + l.yy * r.yy;m.dx = l.xx * r.dx + l.xy * r.dy + l.dx;m.dy = l.yx * r.dx + l.yy * r.dy + l.dy;}
-dojo.mixin(this, m);}}else{dojo.mixin(this, arg);}}};dojo.extend(dojo.gfx.matrix.Matrix2D, {xx: 1, xy: 0, yx: 0, yy: 1, dx: 0, dy: 0});dojo.mixin(dojo.gfx.matrix, {identity: new dojo.gfx.matrix.Matrix2D(),flipX:    new dojo.gfx.matrix.Matrix2D({xx: -1}),flipY:    new dojo.gfx.matrix.Matrix2D({yy: -1}),flipXY:   new dojo.gfx.matrix.Matrix2D({xx: -1, yy: -1}),translate: function(a, b){if(arguments.length > 1){return new dojo.gfx.matrix.Matrix2D({dx: a, dy: b});}
+dojo.mixin(this, m);}}else{dojo.mixin(this, arg);}}
+};dojo.extend(dojo.gfx.matrix.Matrix2D, {xx: 1, xy: 0, yx: 0, yy: 1, dx: 0, dy: 0});dojo.mixin(dojo.gfx.matrix, {identity: new dojo.gfx.matrix.Matrix2D(),flipX:    new dojo.gfx.matrix.Matrix2D({xx: -1}),flipY:    new dojo.gfx.matrix.Matrix2D({yy: -1}),flipXY:   new dojo.gfx.matrix.Matrix2D({xx: -1, yy: -1}),translate: function(a, b){if(arguments.length > 1){return new dojo.gfx.matrix.Matrix2D({dx: a, dy: b});}
 return new dojo.gfx.matrix.Matrix2D({dx: a.x, dy: a.y});},scale: function(a, b){if(arguments.length > 1){return new dojo.gfx.matrix.Matrix2D({xx: a, yy: b});}
 if(typeof a == "number"){return new dojo.gfx.matrix.Matrix2D({xx: a, yy: a});}
 return new dojo.gfx.matrix.Matrix2D({xx: a.x, yy: a.y});},rotate: function(angle){var c = Math.cos(angle);var s = Math.sin(angle);return new dojo.gfx.matrix.Matrix2D({xx: c, xy: s, yx: -s, yy: c});},rotateg: function(degree){return dojo.gfx.matrix.rotate(dojo.math.degToRad(degree));},skewX: function(angle) {return new dojo.gfx.matrix.Matrix2D({xy: Math.tan(angle)});},skewXg: function(degree){return dojo.gfx.matrix.skewX(dojo.math.degToRad(degree));},skewY: function(angle){return new dojo.gfx.matrix.Matrix2D({yx: -Math.tan(angle)});},skewYg: function(degree){return dojo.gfx.matrix.skewY(dojo.math.degToRad(degree));},normalize: function(matrix){return (matrix instanceof dojo.gfx.matrix.Matrix2D) ? matrix : new dojo.gfx.matrix.Matrix2D(matrix);},clone: function(matrix){var obj = new dojo.gfx.matrix.Matrix2D();for(var i in matrix){if(typeof(matrix[i]) == "number" && typeof(obj[i]) == "number" && obj[i] != matrix[i]) obj[i] = matrix[i];}
-return obj;},invert: function(matrix){var m = dojo.gfx.matrix.normalize(matrix);var D = m.xx * m.yy - m.xy * m.yx;var M = new dojo.gfx.matrix.Matrix2D({xx: m.yy/D, xy: -m.xy/D,yx: -m.yx/D, yy: m.xx/D,dx: (m.yx * m.dy - m.yy * m.dx) / D,dy: (m.xy * m.dx - m.xx * m.dy) / D});return M;},_multiplyPoint: function(m, x, y){return {x: m.xx * x + m.xy * y + m.dx, y: m.yx * x + m.yy * y + m.dy};},multiplyPoint: function(matrix,  a,  b){var m = dojo.gfx.matrix.normalize(matrix);if(typeof a == "number" && typeof b == "number"){return dojo.gfx.matrix._multiplyPoint(m, a, b);}
+return obj;},invert: function(matrix){var m = dojo.gfx.matrix.normalize(matrix);var D = m.xx * m.yy - m.xy * m.yx;var M = new dojo.gfx.matrix.Matrix2D({xx: m.yy/D, xy: -m.xy/D,yx: -m.yx/D, yy: m.xx/D,dx: (m.yx * m.dy - m.yy * m.dx) / D,dy: (m.xy * m.dx - m.xx * m.dy) / D
+});return M;},_multiplyPoint: function(m, x, y){return {x: m.xx * x + m.xy * y + m.dx, y: m.yx * x + m.yy * y + m.dy};},multiplyPoint: function(matrix,  a,  b){var m = dojo.gfx.matrix.normalize(matrix);if(typeof a == "number" && typeof b == "number"){return dojo.gfx.matrix._multiplyPoint(m, a, b);}
 return dojo.gfx.matrix._multiplyPoint(m, a.x, a.y);},multiply: function(matrix){var m = dojo.gfx.matrix.normalize(matrix);for(var i = 1; i < arguments.length; ++i){var l = m;var r = dojo.gfx.matrix.normalize(arguments[i]);m = new dojo.gfx.matrix.Matrix2D();m.xx = l.xx * r.xx + l.xy * r.yx;m.xy = l.xx * r.xy + l.xy * r.yy;m.yx = l.yx * r.xx + l.yy * r.yx;m.yy = l.yx * r.xy + l.yy * r.yy;m.dx = l.xx * r.dx + l.xy * r.dy + l.dx;m.dy = l.yx * r.dx + l.yy * r.dy + l.dy;}
 return m;},_sandwich: function(m, x, y){return dojo.gfx.matrix.multiply(dojo.gfx.matrix.translate(x, y), m, dojo.gfx.matrix.translate(-x, -y));},scaleAt: function(a, b, c, d){switch(arguments.length){case 4:
 return dojo.gfx.matrix._sandwich(dojo.gfx.matrix.scale(a, b), c, d);case 3:

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/path.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/path.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/path.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/path.js Thu Dec 14 07:45:13 2006
@@ -31,7 +31,10 @@
 for(var i = 0; i < l; i += 7){this._updateBBox(this.bbox, this.last.x += n[i + 5], this.last.y += n[i + 6]);}
 this.absolute = false;break;}
 var path = [segment.action];for(var i = 0; i < l; ++i){path.push(dojo.gfx.formatNumber(n[i], true));}
-if(typeof(this.shape.path) == "string"){this.shape.path += path.join("");}else{this.shape.path = this.shape.path.concat(path);}},_validSegments: {m: 2, l: 2, h: 1, v: 1, c: 6, s: 4, q: 4, t: 2, a: 7, z: 0},_pushSegment: function(action, args){var group = this._validSegments[action.toLowerCase()];if(typeof(group) == "number"){if(group){if(args.length >= group){var segment = {action: action, args: args.slice(0, args.length - args.length % group)};this.segments.push(segment);this._updateWithSegment(segment);}}else{var segment = {action: action, args: []};this.segments.push(segment);this._updateWithSegment(segment);}}},_collectArgs: function(array, args){for(var i = 0; i < args.length; ++i){var t = args[i];if(typeof(t) == "boolean"){array.push(t ? 1 : 0);}else if(typeof(t) == "number"){array.push(t);}else if(t instanceof Array){this._collectArgs(array, t);}else if("x" in t && "y" in t){array.push(t.x);array.push(t.y);}}},moveTo: function(){var args = [];this._collectArgs(args, a
 rguments);this._pushSegment(this.absolute ? "M" : "m", args);return this;},lineTo: function(){var args = [];this._collectArgs(args, arguments);this._pushSegment(this.absolute ? "L" : "l", args);return this;},hLineTo: function(){var args = [];this._collectArgs(args, arguments);this._pushSegment(this.absolute ? "H" : "h", args);return this;},vLineTo: function(){var args = [];this._collectArgs(args, arguments);this._pushSegment(this.absolute ? "V" : "v", args);return this;},curveTo: function(){var args = [];this._collectArgs(args, arguments);this._pushSegment(this.absolute ? "C" : "c", args);return this;},smoothCurveTo: function(){var args = [];this._collectArgs(args, arguments);this._pushSegment(this.absolute ? "S" : "s", args);return this;},qCurveTo: function(){var args = [];this._collectArgs(args, arguments);this._pushSegment(this.absolute ? "Q" : "q", args);return this;},qSmoothCurveTo: function(){var args = [];this._collectArgs(args, arguments);this._pushSegment(this.absol
 ute ? "T" : "t", args);return this;},arcTo: function(){var args = [];this._collectArgs(args, arguments);for(var i = 2; i < args.length; i += 7){args[i] = -args[i];}
+if(typeof(this.shape.path) == "string"){this.shape.path += path.join("");}else{this.shape.path = this.shape.path.concat(path);}},_validSegments: {m: 2, l: 2, h: 1, v: 1, c: 6, s: 4, q: 4, t: 2, a: 7, z: 0},_pushSegment: function(action, args){var group = this._validSegments[action.toLowerCase()];if(typeof(group) == "number"){if(group){if(args.length >= group){var segment = {action: action, args: args.slice(0, args.length - args.length % group)};this.segments.push(segment);this._updateWithSegment(segment);}}else{var segment = {action: action, args: []};this.segments.push(segment);this._updateWithSegment(segment);}}
+},_collectArgs: function(array, args){for(var i = 0; i < args.length; ++i){var t = args[i];if(typeof(t) == "boolean"){array.push(t ? 1 : 0);}else if(typeof(t) == "number"){array.push(t);}else if(t instanceof Array){this._collectArgs(array, t);}else if("x" in t && "y" in t){array.push(t.x);array.push(t.y);}}
+},moveTo: function(){var args = [];this._collectArgs(args, arguments);this._pushSegment(this.absolute ? "M" : "m", args);return this;},lineTo: function(){var args = [];this._collectArgs(args, arguments);this._pushSegment(this.absolute ? "L" : "l", args);return this;},hLineTo: function(){var args = [];this._collectArgs(args, arguments);this._pushSegment(this.absolute ? "H" : "h", args);return this;},vLineTo: function(){var args = [];this._collectArgs(args, arguments);this._pushSegment(this.absolute ? "V" : "v", args);return this;},curveTo: function(){var args = [];this._collectArgs(args, arguments);this._pushSegment(this.absolute ? "C" : "c", args);return this;},smoothCurveTo: function(){var args = [];this._collectArgs(args, arguments);this._pushSegment(this.absolute ? "S" : "s", args);return this;},qCurveTo: function(){var args = [];this._collectArgs(args, arguments);this._pushSegment(this.absolute ? "Q" : "q", args);return this;},qSmoothCurveTo: function(){var args = [];thi
 s._collectArgs(args, arguments);this._pushSegment(this.absolute ? "T" : "t", args);return this;},arcTo: function(){var args = [];this._collectArgs(args, arguments);for(var i = 2; i < args.length; i += 7){args[i] = -args[i];}
 this._pushSegment(this.absolute ? "A" : "a", args);return this;},closePath: function(){this._pushSegment("Z", []);return this;},_setPath: function(path){var p = path.match(dojo.gfx.pathRegExp);this.segments = [];this.absolute = true;this.bbox = {};this.last = {};if(!p) return;var action = "";var args = [];for(var i = 0; i < p.length; ++i){var t = p[i];var x = parseFloat(t);if(isNaN(x)){if(action){this._pushSegment(action, args);}
 args = [];action = t;}else{args.push(x);}}
-this._pushSegment(action, args);},setShape: function(newShape){this.shape = dojo.gfx.makeParameters(this.shape, typeof(newShape) == "string" ? {path: newShape} : newShape);var path = this.shape.path;this.shape.path = [];this._setPath(path);this.shape.path = this.shape.path.join("");return this;},_2PI: Math.PI * 2});
\ No newline at end of file
+this._pushSegment(action, args);},setShape: function(newShape){this.shape = dojo.gfx.makeParameters(this.shape, typeof(newShape) == "string" ? {path: newShape} : newShape);var path = this.shape.path;this.shape.path = [];this._setPath(path);this.shape.path = this.shape.path.join("");return this;},_2PI: Math.PI * 2
+});
\ No newline at end of file

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/shape.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/shape.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/shape.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/shape.js Thu Dec 14 07:45:13 2006
@@ -6,8 +6,11 @@
 return this;},_applyTransform: function(){var matrix = this._getRealMatrix();for(var i = 0; i < this.children.length; ++i){this.children[i]._updateParentMatrix(matrix);}
 return this;}});dojo.declare("dojo.gfx.shape.Rect", dojo.gfx.Shape,function(rawNode) {this.shape = dojo.lang.shallowCopy(dojo.gfx.defaultRect, true);this.attach(rawNode);},{getBoundingBox: function(){return this.shape;}});dojo.declare("dojo.gfx.shape.Ellipse", dojo.gfx.Shape,function(rawNode) {this.shape = dojo.lang.shallowCopy(dojo.gfx.defaultEllipse, true);this.attach(rawNode);},{getBoundingBox: function(){if(!this.bbox){var shape = this.shape;this.bbox = {x: shape.cx - shape.rx, y: shape.cy - shape.ry,width: 2 * shape.rx, height: 2 * shape.ry};}
 return this.bbox;}});dojo.declare("dojo.gfx.shape.Circle", dojo.gfx.Shape,function(rawNode) {this.shape = dojo.lang.shallowCopy(dojo.gfx.defaultCircle, true);this.attach(rawNode);},{getBoundingBox: function(){if(!this.bbox){var shape = this.shape;this.bbox = {x: shape.cx - shape.r, y: shape.cy - shape.r,width: 2 * shape.r, height: 2 * shape.r};}
-return this.bbox;}});dojo.declare("dojo.gfx.shape.Line", dojo.gfx.Shape,function(rawNode) {this.shape = dojo.lang.shallowCopy(dojo.gfx.defaultLine, true);this.attach(rawNode);},{getBoundingBox: function(){if(!this.bbox){var shape = this.shape;this.bbox = {x:		Math.min(shape.x1, shape.x2),y:		Math.min(shape.y1, shape.y2),width:	Math.abs(shape.x2 - shape.x1),height:	Math.abs(shape.y2 - shape.y1)};}
+return this.bbox;}});dojo.declare("dojo.gfx.shape.Line", dojo.gfx.Shape,function(rawNode) {this.shape = dojo.lang.shallowCopy(dojo.gfx.defaultLine, true);this.attach(rawNode);},{getBoundingBox: function(){if(!this.bbox){var shape = this.shape;this.bbox = {x:Math.min(shape.x1, shape.x2),y:Math.min(shape.y1, shape.y2),width:Math.abs(shape.x2 - shape.x1),height:Math.abs(shape.y2 - shape.y1)
+};}
 return this.bbox;}});dojo.declare("dojo.gfx.shape.Polyline", dojo.gfx.Shape,function(rawNode) {this.shape = dojo.lang.shallowCopy(dojo.gfx.defaultPolyline, true);this.attach(rawNode);},{getBoundingBox: function(){if(!this.bbox && this.shape.points.length){var p = this.shape.points;var l = p.length;var t = p[0];var bbox = {l: t.x, t: t.y, r: t.x, b: t.y};for(var i = 1; i < l; ++i){t = p[i];if(bbox.l > t.x) bbox.l = t.x;if(bbox.r < t.x) bbox.r = t.x;if(bbox.t > t.y) bbox.t = t.y;if(bbox.b < t.y) bbox.b = t.y;}
-this.bbox = {x:		bbox.l,y:		bbox.t,width:	bbox.r - bbox.l,height:	bbox.b - bbox.t};}
-return this.bbox;}});dojo.declare("dojo.gfx.shape.Image", dojo.gfx.Shape,function(rawNode) {this.shape = dojo.lang.shallowCopy(dojo.gfx.defaultImage, true);this.attach(rawNode);},{getBoundingBox: function(){if(!this.bbox){var shape = this.shape;this.bbox = {x:		0,y:		0,width:	shape.width,height:	shape.height};}
+this.bbox = {x:bbox.l,y:bbox.t,width:bbox.r - bbox.l,height:bbox.b - bbox.t
+};}
+return this.bbox;}});dojo.declare("dojo.gfx.shape.Image", dojo.gfx.Shape,function(rawNode) {this.shape = dojo.lang.shallowCopy(dojo.gfx.defaultImage, true);this.attach(rawNode);},{getBoundingBox: function(){if(!this.bbox){var shape = this.shape;this.bbox = {x:0,y:0,width:shape.width,height:shape.height
+};}
 return this.bbox;}});

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/svg.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/svg.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/svg.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/svg.js Thu Dec 14 07:45:13 2006
@@ -10,7 +10,8 @@
 var f = dojo.gfx.normalizeColor(fill);this.fillStyle = f;this.rawNode.setAttribute("fill", f.toCss());this.rawNode.setAttribute("fill-opacity", f.a);return this;},setStroke: function(stroke){if(!stroke){this.strokeStyle = null;this.rawNode.setAttribute("stroke", "none");this.rawNode.setAttribute("stroke-opacity", 0);return this;}
 this.strokeStyle = dojo.gfx.makeParameters(dojo.gfx.defaultStroke, stroke);this.strokeStyle.color = dojo.gfx.normalizeColor(this.strokeStyle.color);var s = this.strokeStyle;var rn = this.rawNode;if(s){rn.setAttribute("stroke", s.color.toCss());rn.setAttribute("stroke-opacity", s.color.a);rn.setAttribute("stroke-width",   s.width);rn.setAttribute("stroke-linecap", s.cap);if(typeof(s.join) == "number"){rn.setAttribute("stroke-linejoin",   "miter");rn.setAttribute("stroke-miterlimit", s.join);}else{rn.setAttribute("stroke-linejoin",   s.join);}}
 return this;},_setFillObject: function(f, nodeType){var def_elems = this.rawNode.parentNode.getElementsByTagName("defs");if(def_elems.length == 0){ return this; }
-this.fillStyle = f;var defs = def_elems[0];var fill = this.rawNode.getAttribute("fill");var ref  = dojo.gfx.svg.getRef(fill);if(ref){fill = ref;if(fill.tagName.toLowerCase() != nodeType.toLowerCase()){var id = fill.id;fill.parentNode.removeChild(fill);fill = document.createElementNS(dojo.svg.xmlns.svg, nodeType);fill.setAttribute("id", id);defs.appendChild(fill);}else{while(fill.childNodes.length){fill.removeChild(fill.lastChild);}}}else{fill = document.createElementNS(dojo.svg.xmlns.svg, nodeType);fill.setAttribute("id", dojo.dom.getUniqueId());defs.appendChild(fill);}
+this.fillStyle = f;var defs = def_elems[0];var fill = this.rawNode.getAttribute("fill");var ref  = dojo.gfx.svg.getRef(fill);if(ref){fill = ref;if(fill.tagName.toLowerCase() != nodeType.toLowerCase()){var id = fill.id;fill.parentNode.removeChild(fill);fill = document.createElementNS(dojo.svg.xmlns.svg, nodeType);fill.setAttribute("id", id);defs.appendChild(fill);}else{while(fill.childNodes.length){fill.removeChild(fill.lastChild);}}
+}else{fill = document.createElementNS(dojo.svg.xmlns.svg, nodeType);fill.setAttribute("id", dojo.dom.getUniqueId());defs.appendChild(fill);}
 if(nodeType == "pattern"){fill.setAttribute("patternUnits", "userSpaceOnUse");var img = document.createElementNS(dojo.svg.xmlns.svg, "image");img.setAttribute("x", 0);img.setAttribute("y", 0);img.setAttribute("width",  f.width .toFixed(8));img.setAttribute("height", f.height.toFixed(8));img.setAttributeNS(dojo.svg.xmlns.xlink, "href", f.src);fill.appendChild(img);}else{fill.setAttribute("gradientUnits", "userSpaceOnUse");for(var i = 0; i < f.colors.length; ++i){f.colors[i].color = dojo.gfx.normalizeColor(f.colors[i].color);var t = document.createElementNS(dojo.svg.xmlns.svg, "stop");t.setAttribute("offset",     f.colors[i].offset.toFixed(8));t.setAttribute("stop-color", f.colors[i].color.toCss());fill.appendChild(t);}}
 this.rawNode.setAttribute("fill", "url(#" + fill.getAttribute("id") +")");this.rawNode.removeAttribute("fill-opacity");return fill;},_applyTransform: function() {var matrix = this._getRealMatrix();if(matrix){var tm = this.matrix;this.rawNode.setAttribute("transform", "matrix(" +
 tm.xx.toFixed(8) + "," + tm.yx.toFixed(8) + "," +
@@ -23,12 +24,15 @@
 fillStyle = this._getGradient(dojo.gfx.defaultLinearGradient, gradient);dojo.lang.forEach(["x1", "y1", "x2", "y2"], function(x){fillStyle[x] = gradient.getAttribute(x);});break;case "radialgradient":
 fillStyle = this._getGradient(dojo.gfx.defaultRadialGradient, gradient);dojo.lang.forEach(["cx", "cy", "r"], function(x){fillStyle[x] = gradient.getAttribute(x);});fillStyle.cx = gradient.getAttribute("cx");fillStyle.cy = gradient.getAttribute("cy");fillStyle.r  = gradient.getAttribute("r");break;case "pattern":
 fillStyle = dojo.lang.shallowCopy(dojo.gfx.defaultPattern, true);dojo.lang.forEach(["x", "y", "width", "height"], function(x){fillStyle[x] = gradient.getAttribute(x);});fillStyle.src = gradient.firstChild.getAttributeNS(dojo.svg.xmlns.xlink, "href");break;}}else{fillStyle = new dojo.gfx.color.Color(fill);var opacity = rawNode.getAttribute("fill-opacity");if(opacity != null) fillStyle.a = opacity;}}
-return fillStyle;},_getGradient: function(defaultGradient, gradient){var fillStyle = dojo.lang.shallowCopy(defaultGradient, true);fillStyle.colors = [];for(var i = 0; i < gradient.childNodes.length; ++i){fillStyle.colors.push({offset: gradient.childNodes[i].getAttribute("offset"),color:  new dojo.gfx.color.Color(gradient.childNodes[i].getAttribute("stop-color"))});}
+return fillStyle;},_getGradient: function(defaultGradient, gradient){var fillStyle = dojo.lang.shallowCopy(defaultGradient, true);fillStyle.colors = [];for(var i = 0; i < gradient.childNodes.length; ++i){fillStyle.colors.push({offset: gradient.childNodes[i].getAttribute("offset"),color:  new dojo.gfx.color.Color(gradient.childNodes[i].getAttribute("stop-color"))
+});}
 return fillStyle;},attachStroke: function(rawNode){if(!rawNode){ return; }
 var stroke = rawNode.getAttribute("stroke");if(stroke == null || stroke == "none") return null;var strokeStyle = dojo.lang.shallowCopy(dojo.gfx.defaultStroke, true);var color = new dojo.gfx.color.Color(stroke);if(color){strokeStyle.color = color;strokeStyle.color.a = rawNode.getAttribute("stroke-opacity");strokeStyle.width = rawNode.getAttribute("stroke-width");strokeStyle.cap = rawNode.getAttribute("stroke-linecap");strokeStyle.join = rawNode.getAttribute("stroke-linejoin");if(strokeStyle.join == "miter"){strokeStyle.join = rawNode.getAttribute("stroke-miterlimit");}}
-return strokeStyle;},attachTransform: function(rawNode){var matrix = null;if(rawNode){matrix = rawNode.getAttribute("transform");if(matrix.match(/^matrix\(.+\)$/)){var t = matrix.slice(7, -1).split(",");matrix = dojo.gfx.matrix.normalize({xx: parseFloat(t[0]), xy: parseFloat(t[2]),yx: parseFloat(t[1]), yy: parseFloat(t[3]),dx: parseFloat(t[4]), dy: parseFloat(t[5])});}}
+return strokeStyle;},attachTransform: function(rawNode){var matrix = null;if(rawNode){matrix = rawNode.getAttribute("transform");if(matrix.match(/^matrix\(.+\)$/)){var t = matrix.slice(7, -1).split(",");matrix = dojo.gfx.matrix.normalize({xx: parseFloat(t[0]), xy: parseFloat(t[2]),yx: parseFloat(t[1]), yy: parseFloat(t[3]),dx: parseFloat(t[4]), dy: parseFloat(t[5])
+});}}
 return matrix;},attachShape: function(rawNode){var shape = null;if(rawNode){shape = dojo.lang.shallowCopy(this.shape, true);for(var i in shape) {shape[i] = rawNode.getAttribute(i);}}
-return shape;},attach: function(rawNode){if(rawNode) {this.rawNode = rawNode;this.fillStyle = this.attachFill(rawNode);this.strokeStyle = this.attachStroke(rawNode);this.matrix = this.attachTransform(rawNode);this.shape = this.attachShape(rawNode);}}});dojo.declare("dojo.gfx.Group", dojo.gfx.Shape, {setRawNode: function(rawNode){this.rawNode = rawNode;}});dojo.gfx.Group.nodeType = "g";dojo.declare("dojo.gfx.Rect", dojo.gfx.shape.Rect, {attachShape: function(rawNode){var shape = null;if(rawNode){shape = dojo.gfx.Rect.superclass.attachShape.apply(this, arguments);shape.r = Math.min(rawNode.getAttribute("rx"), rawNode.getAttribute("ry"));}
+return shape;},attach: function(rawNode){if(rawNode) {this.rawNode = rawNode;this.fillStyle = this.attachFill(rawNode);this.strokeStyle = this.attachStroke(rawNode);this.matrix = this.attachTransform(rawNode);this.shape = this.attachShape(rawNode);}}
+});dojo.declare("dojo.gfx.Group", dojo.gfx.Shape, {setRawNode: function(rawNode){this.rawNode = rawNode;}});dojo.gfx.Group.nodeType = "g";dojo.declare("dojo.gfx.Rect", dojo.gfx.shape.Rect, {attachShape: function(rawNode){var shape = null;if(rawNode){shape = dojo.gfx.Rect.superclass.attachShape.apply(this, arguments);shape.r = Math.min(rawNode.getAttribute("rx"), rawNode.getAttribute("ry"));}
 return shape;},setShape: function(newShape){this.shape = dojo.gfx.makeParameters(this.shape, newShape);this.bbox = null;for(var i in this.shape){if(i != "type" && i != "r"){ this.rawNode.setAttribute(i, this.shape[i]); }}
 this.rawNode.setAttribute("rx", this.shape.r);this.rawNode.setAttribute("ry", this.shape.r);return this;}});dojo.gfx.Rect.nodeType = "rect";dojo.gfx.Ellipse = dojo.gfx.shape.Ellipse;dojo.gfx.Ellipse.nodeType = "ellipse";dojo.gfx.Circle = dojo.gfx.shape.Circle;dojo.gfx.Circle.nodeType = "circle";dojo.gfx.Line = dojo.gfx.shape.Line;dojo.gfx.Line.nodeType = "line";dojo.declare("dojo.gfx.Polyline", dojo.gfx.shape.Polyline, {setShape: function(points){if(points && points instanceof Array){this.shape = dojo.gfx.makeParameters(this.shape, { points: points });if(closed && this.shape.points.length){this.shape.points.push(this.shape.points[0]);}}else{this.shape = dojo.gfx.makeParameters(this.shape, points);}
 this.box = null;var attr = [];var p = this.shape.points;for(var i = 0; i < p.length; ++i){attr.push(p[i].x.toFixed(8));attr.push(p[i].y.toFixed(8));}

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/vml.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/vml.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/vml.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/gfx/vml.js Thu Dec 14 07:45:13 2006
@@ -12,27 +12,37 @@
 this.rawNode.fill.opacity = 1;return this;}
 this.fillStyle = dojo.gfx.normalizeColor(fill);this.rawNode.fillcolor = this.fillStyle.toHex();this.rawNode.fill.opacity = this.fillStyle.a;this.rawNode.filled = true;return this;},setStroke: function(stroke){if(!stroke){this.strokeStyle = null;this.rawNode.stroked = false;return this;}
 this.strokeStyle = dojo.gfx.makeParameters(dojo.gfx.defaultStroke, stroke);this.strokeStyle.color = dojo.gfx.normalizeColor(this.strokeStyle.color);var s = this.strokeStyle;this.rawNode.stroked = true;this.rawNode.strokecolor = s.color.toCss();this.rawNode.strokeweight = s.width + "px";if(this.rawNode.stroke) {this.rawNode.stroke.opacity = s.color.a;this.rawNode.stroke.endcap = this._translate(this._capMap, s.cap);if(typeof(s.join) == "number") {this.rawNode.stroke.joinstyle = "miter";this.rawNode.stroke.miterlimit = s.join;}else{this.rawNode.stroke.joinstyle = s.join;}}
-return this;},_capMap: { butt: 'flat' },_capMapReversed: { flat: 'butt' },_translate: function(dict, value) {return (value in dict) ? dict[value] : value;},_applyTransform: function() {var matrix = this._getRealMatrix();if(!matrix) return this;var skew = this.rawNode.skew;if(typeof(skew) == "undefined"){for(var i = 0; i < this.rawNode.childNodes.length; ++i){if(this.rawNode.childNodes[i].tagName == "skew"){skew = this.rawNode.childNodes[i];break;}}}
+return this;},_capMap: { butt: 'flat' },_capMapReversed: { flat: 'butt' },_translate: function(dict, value) {return (value in dict) ? dict[value] : value;},_applyTransform: function() {var matrix = this._getRealMatrix();if(!matrix) return this;var skew = this.rawNode.skew;if(typeof(skew) == "undefined"){for(var i = 0; i < this.rawNode.childNodes.length; ++i){if(this.rawNode.childNodes[i].tagName == "skew"){skew = this.rawNode.childNodes[i];break;}}
+}
 if(skew){skew.on = false;var mt = matrix.xx.toFixed(8) + " " + matrix.xy.toFixed(8) + " " +
 matrix.yx.toFixed(8) + " " + matrix.yy.toFixed(8) + " 0 0";var offset = Math.floor(matrix.dx).toFixed() + "px " + Math.floor(matrix.dy).toFixed() + "px";var l = parseFloat(this.rawNode.style.left);var t = parseFloat(this.rawNode.style.top);var w = parseFloat(this.rawNode.style.width);var h = parseFloat(this.rawNode.style.height);if(isNaN(l)) l = 0;if(isNaN(t)) t = 0;if(isNaN(w)) w = 1;if(isNaN(h)) h = 1;var origin = (-l / w - 0.5).toFixed(8) + " " + (-t / h - 0.5).toFixed(8);skew.matrix =  mt;skew.origin = origin;skew.offset = offset;skew.on = true;}
 return this;},setRawNode: function(rawNode){rawNode.stroked = false;rawNode.filled  = false;this.rawNode = rawNode;},attachFill: function(rawNode){var fillStyle = null;var fo = rawNode.fill;if(rawNode) {if(fo.on && fo.type == "gradient"){var fillStyle = dojo.lang.shallowCopy(dojo.gfx.defaultLinearGradient, true);var rad = dojo.math.degToRad(fo.angle);fillStyle.x2 = Math.cos(rad);fillStyle.y2 = Math.sin(rad);fillStyle.colors = [];var stops = fo.colors.value.split(";");for(var i = 0; i < stops.length; ++i){var t = stops[i].match(/\S+/g);if(!t || t.length != 2) continue;fillStyle.colors.push({offset: dojo.gfx.vml._parseFloat(t[0]), color: new dojo.gfx.color.Color(t[1])});}}else if(fo.on && fo.type == "gradientradial"){var fillStyle = dojo.lang.shallowCopy(dojo.gfx.defaultRadialGradient, true);var w = parseFloat(rawNode.style.width);var h = parseFloat(rawNode.style.height);fillStyle.cx = isNaN(w) ? 0 : fo.focusposition.x * w;fillStyle.cy = isNaN(h) ? 0 : fo.focusposition.y * h;f
 illStyle.r  = isNaN(w) ? 1 : w / 2;fillStyle.colors = [];var stops = fo.colors.value.split(";");for(var i = stops.length - 1; i >= 0; --i){var t = stops[i].match(/\S+/g);if(!t || t.length != 2) continue;fillStyle.colors.push({offset: dojo.gfx.vml._parseFloat(t[0]), color: new dojo.gfx.color.Color(t[1])});}}else if(fo.on && fo.type == "tile"){var fillStyle = dojo.lang.shallowCopy(dojo.gfx.defaultPattern, true);fillStyle.width  = dojo.gfx.vml.pt2px(fo.size.x);fillStyle.height = dojo.gfx.vml.pt2px(fo.size.y);fillStyle.x = fo.origin.x * fillStyle.width;fillStyle.y = fo.origin.y * fillStyle.height;fillStyle.src = fo.src;}else if(fo.on && rawNode.fillcolor){fillStyle = new dojo.gfx.color.Color(rawNode.fillcolor+"");fillStyle.a = fo.opacity;}}
 return fillStyle;},attachStroke: function(rawNode) {var strokeStyle = dojo.lang.shallowCopy(dojo.gfx.defaultStroke, true);if(rawNode && rawNode.stroked){strokeStyle.color = new dojo.gfx.color.Color(rawNode.strokecolor.value);dojo.debug("We are expecting an .75pt here, instead of strokeweight = " + rawNode.strokeweight );strokeStyle.width = dojo.gfx.vml.normalizedLength(rawNode.strokeweight+"");strokeStyle.color.a = rawNode.stroke.opacity;strokeStyle.cap = this._translate(this._capMapReversed, rawNode.stroke.endcap);strokeStyle.join = rawNode.stroke.joinstyle == "miter" ? rawNode.stroke.miterlimit : rawNode.stroke.joinstyle;}else{return null;}
 return strokeStyle;},attachTransform: function(rawNode) {var matrix = {};if(rawNode){var s = rawNode.skew;matrix.xx = s.matrix.xtox;matrix.xy = s.matrix.ytox;matrix.yx = s.matrix.xtoy;matrix.yy = s.matrix.ytoy;matrix.dx = dojo.gfx.vml.pt2px(s.offset.x);matrix.dy = dojo.gfx.vml.pt2px(s.offset.y);}
-return dojo.gfx.matrix.normalize(matrix);},attach: function(rawNode){if(rawNode){this.rawNode = rawNode;this.shape = this.attachShape(rawNode);this.fillStyle = this.attachFill(rawNode);this.strokeStyle = this.attachStroke(rawNode);this.matrix = this.attachTransform(rawNode);}}});dojo.declare("dojo.gfx.Group", dojo.gfx.shape.VirtualGroup, {add: function(shape){if(this != shape.getParent()){this.rawNode.appendChild(shape.rawNode);dojo.gfx.Group.superclass.add.apply(this, arguments);}
+return dojo.gfx.matrix.normalize(matrix);},attach: function(rawNode){if(rawNode){this.rawNode = rawNode;this.shape = this.attachShape(rawNode);this.fillStyle = this.attachFill(rawNode);this.strokeStyle = this.attachStroke(rawNode);this.matrix = this.attachTransform(rawNode);}}
+});dojo.declare("dojo.gfx.Group", dojo.gfx.shape.VirtualGroup, {add: function(shape){if(this != shape.getParent()){this.rawNode.appendChild(shape.rawNode);dojo.gfx.Group.superclass.add.apply(this, arguments);}
 return this;},remove: function(shape, silently){if(this == shape.getParent()){if(this.rawNode == shape.rawNode.parentNode){this.rawNode.removeChild(shape.rawNode);}
 dojo.gfx.Group.superclass.remove.apply(this, arguments);}
-return this;},attach: function(rawNode){if(rawNode){this.rawNode = rawNode;this.shape = null;this.fillStyle = null;this.strokeStyle = null;this.matrix = null;}}});dojo.gfx.Group.nodeType = "group";var zIndex = {moveToFront: function(){this.rawNode.parentNode.appendChild(this.rawNode);return this;},moveToBack: function(){this.rawNode.parentNode.insertBefore(this.rawNode, this.rawNode.parentNode.firstChild);return this;}};dojo.lang.extend(dojo.gfx.Shape, zIndex);dojo.lang.extend(dojo.gfx.Group, zIndex);delete zIndex;dojo.declare("dojo.gfx.Rect", dojo.gfx.shape.Rect, {attachShape: function(rawNode){var arcsize = rawNode.outerHTML.match(/arcsize = \"(\d*\.?\d+[%f]?)\"/)[1];arcsize = (arcsize.indexOf("%") >= 0) ? parseFloat(arcsize) / 100 : dojo.gfx.vml._parseFloat(arcsize);var style = rawNode.style;var width  = parseFloat(style.width);var height = parseFloat(style.height);var o = dojo.gfx.makeParameters(dojo.gfx.defaultRect, {x: parseInt(style.left),y: parseInt(style.top),width:
   width,height: height,r: Math.min(width, height) * arcsize});return o;},setShape: function(newShape){var shape = this.shape = dojo.gfx.makeParameters(this.shape, newShape);this.bbox = null;var style = this.rawNode.style;style.left   = shape.x.toFixed();style.top    = shape.y.toFixed();style.width  = (typeof(shape.width) == "string" && shape.width.indexOf("%") >= 0)  ? shape.width  : shape.width.toFixed();style.height = (typeof(shape.width) == "string" && shape.height.indexOf("%") >= 0) ? shape.height : shape.height.toFixed();var r = Math.min(1, (shape.r / Math.min(parseFloat(shape.width), parseFloat(shape.height)))).toFixed(8);var parent = this.rawNode.parentNode;var before = null;if(parent){if(parent.lastChild != this.rawNode){for(var i = 0; i < parent.childNodes.length; ++i){if(parent.childNodes[i] == this.rawNode){before = parent.childNodes[i+1];break;}}}
+return this;},attach: function(rawNode){if(rawNode){this.rawNode = rawNode;this.shape = null;this.fillStyle = null;this.strokeStyle = null;this.matrix = null;}}
+});dojo.gfx.Group.nodeType = "group";var zIndex = {moveToFront: function(){this.rawNode.parentNode.appendChild(this.rawNode);return this;},moveToBack: function(){this.rawNode.parentNode.insertBefore(this.rawNode, this.rawNode.parentNode.firstChild);return this;}};dojo.lang.extend(dojo.gfx.Shape, zIndex);dojo.lang.extend(dojo.gfx.Group, zIndex);delete zIndex;dojo.declare("dojo.gfx.Rect", dojo.gfx.shape.Rect, {attachShape: function(rawNode){var arcsize = rawNode.outerHTML.match(/arcsize = \"(\d*\.?\d+[%f]?)\"/)[1];arcsize = (arcsize.indexOf("%") >= 0) ? parseFloat(arcsize) / 100 : dojo.gfx.vml._parseFloat(arcsize);var style = rawNode.style;var width  = parseFloat(style.width);var height = parseFloat(style.height);var o = dojo.gfx.makeParameters(dojo.gfx.defaultRect, {x: parseInt(style.left),y: parseInt(style.top),width:  width,height: height,r: Math.min(width, height) * arcsize
+});return o;},setShape: function(newShape){var shape = this.shape = dojo.gfx.makeParameters(this.shape, newShape);this.bbox = null;var style = this.rawNode.style;style.left   = shape.x.toFixed();style.top    = shape.y.toFixed();style.width  = (typeof(shape.width) == "string" && shape.width.indexOf("%") >= 0)  ? shape.width  : shape.width.toFixed();style.height = (typeof(shape.width) == "string" && shape.height.indexOf("%") >= 0) ? shape.height : shape.height.toFixed();var r = Math.min(1, (shape.r / Math.min(parseFloat(shape.width), parseFloat(shape.height)))).toFixed(8);var parent = this.rawNode.parentNode;var before = null;if(parent){if(parent.lastChild != this.rawNode){for(var i = 0; i < parent.childNodes.length; ++i){if(parent.childNodes[i] == this.rawNode){before = parent.childNodes[i+1];break;}}
+}
 parent.removeChild(this.rawNode);}
 this.rawNode.arcsize = r;if(parent){if(before){parent.insertBefore(this.rawNode, before);}else{parent.appendChild(this.rawNode);}}
-return this.setTransform(this.matrix);}});dojo.gfx.Rect.nodeType = "roundrect";dojo.declare("dojo.gfx.Ellipse", dojo.gfx.shape.Ellipse, {attachShape: function(rawNode){var style = this.rawNode.style;var rx = parseInt(style.width ) / 2;var ry = parseInt(style.height) / 2;var o = dojo.gfx.makeParameters(dojo.gfx.defaultEllipse, {cx: parseInt(style.left) + rx,cy: parseInt(style.top ) + ry,rx: rx,ry: ry});return o;},setShape: function(newShape){var shape = this.shape = dojo.gfx.makeParameters(this.shape, newShape);this.bbox = null;var style = this.rawNode.style;style.left   = (shape.cx - shape.rx).toFixed();style.top    = (shape.cy - shape.ry).toFixed();style.width  = (shape.rx * 2).toFixed();style.height = (shape.ry * 2).toFixed();return this.setTransform(this.matrix);}});dojo.gfx.Ellipse.nodeType = "oval";dojo.declare("dojo.gfx.Circle", dojo.gfx.shape.Circle, {attachShape: function(rawNode){var style = this.rawNode.style;var r = parseInt(style.width) / 2;var o = dojo.gfx.makeP
 arameters(dojo.gfx.defaultCircle, {cx: parseInt(style.left) + r,cy: parseInt(style.top)  + r,r:  r});return o;},setShape: function(newShape){var shape = this.shape = dojo.gfx.makeParameters(this.shape, newShape);this.bbox = null;var style = this.rawNode.style;style.left   = (shape.cx - shape.r).toFixed();style.top    = (shape.cy - shape.r).toFixed();style.width  = (shape.r * 2).toFixed();style.height = (shape.r * 2).toFixed();return this;}});dojo.gfx.Circle.nodeType = "oval";dojo.declare("dojo.gfx.Line", dojo.gfx.shape.Line,function(rawNode){if(rawNode) rawNode.setAttribute("dojoGfxType", "line");}, {attachShape: function(rawNode){var p = rawNode.path.v.match(dojo.gfx.pathRegExp);var shape = {};do{if(p.length < 7 || p[0] != "m" || p[3] != "l" || p[6] != "e") break;shape.x1 = parseInt(p[1]);shape.y1 = parseInt(p[2]);shape.x2 = parseInt(p[4]);shape.y2 = parseInt(p[5]);}while(false);return dojo.gfx.makeParameters(dojo.gfx.defaultLine, shape);},setShape: function(newShape){var s
 hape = this.shape = dojo.gfx.makeParameters(this.shape, newShape);this.bbox = null;this.rawNode.path.v = "m" + shape.x1.toFixed() + " " + shape.y1.toFixed() +
+return this.setTransform(this.matrix);}});dojo.gfx.Rect.nodeType = "roundrect";dojo.declare("dojo.gfx.Ellipse", dojo.gfx.shape.Ellipse, {attachShape: function(rawNode){var style = this.rawNode.style;var rx = parseInt(style.width ) / 2;var ry = parseInt(style.height) / 2;var o = dojo.gfx.makeParameters(dojo.gfx.defaultEllipse, {cx: parseInt(style.left) + rx,cy: parseInt(style.top ) + ry,rx: rx,ry: ry
+});return o;},setShape: function(newShape){var shape = this.shape = dojo.gfx.makeParameters(this.shape, newShape);this.bbox = null;var style = this.rawNode.style;style.left   = (shape.cx - shape.rx).toFixed();style.top    = (shape.cy - shape.ry).toFixed();style.width  = (shape.rx * 2).toFixed();style.height = (shape.ry * 2).toFixed();return this.setTransform(this.matrix);}});dojo.gfx.Ellipse.nodeType = "oval";dojo.declare("dojo.gfx.Circle", dojo.gfx.shape.Circle, {attachShape: function(rawNode){var style = this.rawNode.style;var r = parseInt(style.width) / 2;var o = dojo.gfx.makeParameters(dojo.gfx.defaultCircle, {cx: parseInt(style.left) + r,cy: parseInt(style.top)  + r,r:  r
+});return o;},setShape: function(newShape){var shape = this.shape = dojo.gfx.makeParameters(this.shape, newShape);this.bbox = null;var style = this.rawNode.style;style.left   = (shape.cx - shape.r).toFixed();style.top    = (shape.cy - shape.r).toFixed();style.width  = (shape.r * 2).toFixed();style.height = (shape.r * 2).toFixed();return this;}});dojo.gfx.Circle.nodeType = "oval";dojo.declare("dojo.gfx.Line", dojo.gfx.shape.Line,function(rawNode){if(rawNode) rawNode.setAttribute("dojoGfxType", "line");}, {attachShape: function(rawNode){var p = rawNode.path.v.match(dojo.gfx.pathRegExp);var shape = {};do{if(p.length < 7 || p[0] != "m" || p[3] != "l" || p[6] != "e") break;shape.x1 = parseInt(p[1]);shape.y1 = parseInt(p[2]);shape.x2 = parseInt(p[4]);shape.y2 = parseInt(p[5]);}while(false);return dojo.gfx.makeParameters(dojo.gfx.defaultLine, shape);},setShape: function(newShape){var shape = this.shape = dojo.gfx.makeParameters(this.shape, newShape);this.bbox = null;this.rawNode.pa
 th.v = "m" + shape.x1.toFixed() + " " + shape.y1.toFixed() +
 "l" + shape.x2.toFixed() + " " + shape.y2.toFixed() + "e";return this.setTransform(this.matrix);}});dojo.gfx.Line.nodeType = "shape";dojo.declare("dojo.gfx.Polyline", dojo.gfx.shape.Polyline,function(rawNode){if(rawNode) rawNode.setAttribute("dojoGfxType", "polyline");}, {attachShape: function(rawNode){var shape = dojo.lang.shallowCopy(dojo.gfx.defaultPolyline, true);var p = rawNode.path.v.match(dojo.gfx.pathRegExp);do{if(p.length < 3 || p[0] != "m") break;var x = parseInt(p[0]);var y = parseInt(p[1]);if(isNaN(x) || isNaN(y)) break;shape.points.push({x: x, y: y});if(p.length < 6 || p[3] != "l") break;for(var i = 4; i < p.length; i += 2){x = parseInt(p[i]);y = parseInt(p[i + 1]);if(isNaN(x) || isNaN(y)) break;shape.points.push({x: x, y: y});}}while(false);return shape;},setShape: function(points, closed){if(points && points instanceof Array){this.shape = dojo.gfx.makeParameters(this.shape, { points: points });if(closed && this.shape.points.length) this.shape.points.push(this.
 shape.points[0]);}else{this.shape = dojo.gfx.makeParameters(this.shape, points);}
-this.bbox = null;var attr = [];var p = this.shape.points;if(p.length > 0){attr.push("m");attr.push(p[0].x.toFixed());attr.push(p[0].y.toFixed());if(p.length > 1){attr.push("l");for(var i = 1; i < p.length; ++i){attr.push(p[i].x.toFixed());attr.push(p[i].y.toFixed());}}}
+this.bbox = null;var attr = [];var p = this.shape.points;if(p.length > 0){attr.push("m");attr.push(p[0].x.toFixed());attr.push(p[0].y.toFixed());if(p.length > 1){attr.push("l");for(var i = 1; i < p.length; ++i){attr.push(p[i].x.toFixed());attr.push(p[i].y.toFixed());}}
+}
 attr.push("e");this.rawNode.path.v = attr.join(" ");return this.setTransform(this.matrix);}});dojo.gfx.Polyline.nodeType = "shape";dojo.declare("dojo.gfx.Image", dojo.gfx.shape.Image, {getEventSource: function() {return this.rawNode ? this.rawNode.firstChild : null;},attachShape: function(rawNode){var shape = dojo.lang.shallowCopy(dojo.gfx.defaultImage, true);shape.src = rawNode.firstChild.src;return shape;},setShape: function(newShape){var shape = this.shape = dojo.gfx.makeParameters(this.shape, newShape);this.bbox = null;var firstChild = this.rawNode.firstChild;firstChild.src = shape.src;if(shape.width || shape.height){firstChild.style.width  = shape.width;firstChild.style.height = shape.height;}
 return this.setTransform(this.matrix);},setStroke: function(){return this;},setFill: function(){return this;},attachStroke: function(rawNode){return null;},attachFill: function(rawNode){return null;},attachTransform: function(rawNode) {var matrix = {};if(rawNode){var m = rawNode.filters["DXImageTransform.Microsoft.Matrix"];matrix.xx = m.M11;matrix.xy = m.M12;matrix.yx = m.M21;matrix.yy = m.M22;matrix.dx = m.Dx;matrix.dy = m.Dy;}
 return dojo.gfx.matrix.normalize(matrix);},_applyTransform: function() {var matrix = this._getRealMatrix();if(!matrix) return this;with(this.rawNode.filters["DXImageTransform.Microsoft.Matrix"]){M11 = matrix.xx;M12 = matrix.xy;M21 = matrix.yx;M22 = matrix.yy;Dx  = matrix.dx;Dy  = matrix.dy;}
 return this;}});dojo.gfx.Image.nodeType = "image";dojo.gfx.path._calcArc = function(alpha){var cosa  = Math.cos(alpha);var sina  = Math.sin(alpha);var p2 = {x: cosa + (4 / 3) * (1 - cosa), y: sina - (4 / 3) * cosa * (1 - cosa) / sina};return {s:  {x: cosa, y: sina},c1: p2,c2: {x: p2.x, y: -p2.y},e:  {x: cosa, y: -sina}};};dojo.declare("dojo.gfx.Path", dojo.gfx.path.Path,function(rawNode){if(rawNode) rawNode.setAttribute("dojoGfxType", "path");this.vmlPath = "";this.lastControl = {};}, {_updateWithSegment: function(segment){var last = dojo.lang.shallowCopy(this.last);dojo.gfx.Path.superclass._updateWithSegment.apply(this, arguments);var path = this[this.renderers[segment.action]](segment, last);if(typeof(this.vmlPath) == "string"){this.vmlPath += path.join("");}else{this.vmlPath = this.vmlPath.concat(path);}
-if(typeof(this.vmlPath) == "string"){this.rawNode.path.v = this.vmlPath + " e";}},attachShape: function(rawNode){var shape = dojo.lang.shallowCopy(dojo.gfx.defaultPath, true);var p = rawNode.path.v.match(dojo.gfx.pathRegExp);var t = [], skip = false;for(var i = 0; i < p.length; ++p){var s = p[i];if(s in this._pathVmlToSvgMap) {skip = false;t.push(this._pathVmlToSvgMap[s]);} else if(!skip){var n = parseInt(s);if(isNaN(n)){skip = true;}else{t.push(n);}}}
-if(t.length) shape.path = t.join(" ");return shape;},setShape: function(newShape){this.vmlPath = [];this.lastControl = {};dojo.gfx.Path.superclass.setShape.apply(this, arguments);this.vmlPath = this.vmlPath.join("");this.rawNode.path.v = this.vmlPath + " e";return this;},_pathVmlToSvgMap: {m: "M", l: "L", t: "m", r: "l", c: "C", v: "c", qb: "Q", x: "z", e: ""},renderers: {M: "_moveToA", m: "_moveToR",L: "_lineToA", l: "_lineToR",H: "_hLineToA", h: "_hLineToR",V: "_vLineToA", v: "_vLineToR",C: "_curveToA", c: "_curveToR",S: "_smoothCurveToA", s: "_smoothCurveToR",Q: "_qCurveToA", q: "_qCurveToR",T: "_qSmoothCurveToA", t: "_qSmoothCurveToR",A: "_arcTo", a: "_arcTo",Z: "_closePath", z: "_closePath"},_addArgs: function(path, args, from, upto){if(typeof(upto) == "undefined"){upto = args.length;}
+if(typeof(this.vmlPath) == "string"){this.rawNode.path.v = this.vmlPath + " e";}},attachShape: function(rawNode){var shape = dojo.lang.shallowCopy(dojo.gfx.defaultPath, true);var p = rawNode.path.v.match(dojo.gfx.pathRegExp);var t = [], skip = false;for(var i = 0; i < p.length; ++p){var s = p[i];if(s in this._pathVmlToSvgMap) {skip = false;t.push(this._pathVmlToSvgMap[s]);} else if(!skip){var n = parseInt(s);if(isNaN(n)){skip = true;}else{t.push(n);}}
+}
+if(t.length) shape.path = t.join(" ");return shape;},setShape: function(newShape){this.vmlPath = [];this.lastControl = {};dojo.gfx.Path.superclass.setShape.apply(this, arguments);this.vmlPath = this.vmlPath.join("");this.rawNode.path.v = this.vmlPath + " e";return this;},_pathVmlToSvgMap: {m: "M", l: "L", t: "m", r: "l", c: "C", v: "c", qb: "Q", x: "z", e: ""},renderers: {M: "_moveToA", m: "_moveToR",L: "_lineToA", l: "_lineToR",H: "_hLineToA", h: "_hLineToR",V: "_vLineToA", v: "_vLineToR",C: "_curveToA", c: "_curveToR",S: "_smoothCurveToA", s: "_smoothCurveToR",Q: "_qCurveToA", q: "_qCurveToR",T: "_qSmoothCurveToA", t: "_qSmoothCurveToR",A: "_arcTo", a: "_arcTo",Z: "_closePath", z: "_closePath"
+},_addArgs: function(path, args, from, upto){if(typeof(upto) == "undefined"){upto = args.length;}
 if(typeof(from) == "undefined"){from = 0;}
 for(var i = from; i < upto; ++i){path.push(" ");path.push(args[i].toFixed());}},_addArgsAdjusted: function(path, last, args, from, upto){if(typeof(upto) == "undefined"){upto = args.length;}
 if(typeof(from) == "undefined"){from = 0;}
@@ -68,7 +78,8 @@
 this._addArgsAdjusted(p, last, n, i, i + 2);}
 this.lastControl.type = "Q";return p;},_PI4: Math.PI / 4,_curvePI4: dojo.gfx.path._calcArc(Math.PI / 8),_calcArcTo: function(path, last, rx, ry, xRotg, large, cw, x, y){var m = dojo.gfx.matrix;var xRot = -dojo.math.degToRad(xRotg);var rx2 = rx * rx;var ry2 = ry * ry;var pa = m.multiplyPoint(
 m.rotate(-xRot),{x: (last.x - x) / 2, y: (last.y - y) / 2}
-);var pax2 = pa.x * pa.x;var pay2 = pa.y * pa.y;var c1 = Math.sqrt((rx2 * ry2 - rx2 * pay2 - ry2 * pax2) / (rx2 * pay2 + ry2 * pax2));var ca = {x:  c1 * rx * pa.y / ry,y: -c1 * ry * pa.x / rx};if(large == cw){ca = {x: -ca.x, y: -ca.y};}
+);var pax2 = pa.x * pa.x;var pay2 = pa.y * pa.y;var c1 = Math.sqrt((rx2 * ry2 - rx2 * pay2 - ry2 * pax2) / (rx2 * pay2 + ry2 * pax2));var ca = {x:  c1 * rx * pa.y / ry,y: -c1 * ry * pa.x / rx
+};if(large == cw){ca = {x: -ca.x, y: -ca.y};}
 var c = m.multiplyPoint(
 [
 m.translate(

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/hostenv_adobesvg.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/hostenv_adobesvg.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/hostenv_adobesvg.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/hostenv_adobesvg.js Thu Dec 14 07:45:13 2006
@@ -13,14 +13,17 @@
 nso[ret] = anonFuncPtr;return ret;}
 dojo.hostenv.modulesLoadedFired = false;dojo.hostenv.modulesLoadedListeners = [];dojo.hostenv.getTextStack = [];dojo.hostenv.loadUriStack = [];dojo.hostenv.loadedUris = [];dojo.hostenv.modulesLoaded = function(){if(this.modulesLoadedFired){ return; }
 if((this.loadUriStack.length==0)&&(this.getTextStack.length==0)){if(this.inFlightCount > 0){dojo.debug("couldn't initialize, there are files still in flight");return;}
-this.modulesLoadedFired = true;var mll = this.modulesLoadedListeners;for(var x=0; x<mll.length; x++){mll[x]();}}}
+this.modulesLoadedFired = true;var mll = this.modulesLoadedListeners;for(var x=0; x<mll.length; x++){mll[x]();}}
+}
 dojo.hostenv.getNewAnonFunc = function(){var ret = "_"+this.anonCtr++;while(typeof this.anon[ret] != "undefined"){ret = "_"+this.anonCtr++;}
 eval("dojo.nostenv.anon."+ret+" = function(){};");return [ret, this.anon[ret]];}
 dojo.hostenv.displayStack = function(){var oa = [];var stack = this.loadUriStack;for(var x=0; x<stack.length; x++){oa.unshift([stack[x][0], (typeof stack[x][2])]);}
 dojo.debug("<pre>"+oa.join("\n")+"</pre>");}
-dojo.hostenv.unwindUriStack = function(){var stack = this.loadUriStack;for(var x in dojo.hostenv.loadedUris){for(var y=stack.length-1; y>=0; y--){if(stack[y][0]==x){stack.splice(y, 1);}}}
+dojo.hostenv.unwindUriStack = function(){var stack = this.loadUriStack;for(var x in dojo.hostenv.loadedUris){for(var y=stack.length-1; y>=0; y--){if(stack[y][0]==x){stack.splice(y, 1);}}
+}
 var next = stack.pop();if((!next)&&(stack.length==0)){return;}
-for(var x=0; x<stack.length; x++){if((stack[x][0]==next[0])&&(stack[x][2])){next[2] == stack[x][2]}}
+for(var x=0; x<stack.length; x++){if((stack[x][0]==next[0])&&(stack[x][2])){next[2] == stack[x][2]
+}}
 var last = next;while(dojo.hostenv.loadedUris[next[0]]){last = next;next = stack.pop();}
 while(typeof next[2] == "string"){try{dj_eval(next[2]);next[1](true);}catch(e){dojo.debug("we got an error when loading "+next[0]);dojo.debug("error: "+e);}
 dojo.hostenv.loadedUris[next[0]] = true;dojo.hostenv.loadedUris.push(next[0]);last = next;next = stack.pop();if((!next)&&(stack.length==0)){ break; }
@@ -32,7 +35,8 @@
 if(typeof contents == "string"){stack.push(next);for(var x=0; x<stack.length; x++){if(stack[x][0]==uri){stack[x][2] = contents;}}
 next = stack.pop();}
 if(dojo.hostenv.loadedUris[next[0]]){dojo.hostenv.unwindUriStack();return;}
-stack.push(next);if(next[0]!=uri){if(typeof next[2] == "string"){dojo.hostenv.unwindUriStack();}}else{if(!contents){next[1](false);}else{var deps = dojo.hostenv.getDepsForEval(next[2]);if(deps.length>0){eval(deps.join(";"));}else{dojo.hostenv.unwindUriStack();}}}}
+stack.push(next);if(next[0]!=uri){if(typeof next[2] == "string"){dojo.hostenv.unwindUriStack();}}else{if(!contents){next[1](false);}else{var deps = dojo.hostenv.getDepsForEval(next[2]);if(deps.length>0){eval(deps.join(";"));}else{dojo.hostenv.unwindUriStack();}}
+}}
 this.getText(uri, tcb, true);}
 dojo.hostenv.loadModule = function(modulename, exact_only, omit_module_check){var module = this.findModule(modulename, 0);if(module){return module;}
 if (typeof this.loading_modules_[modulename] !== 'undefined'){dojo.debug("recursive attempt to load module '" + modulename + "'");}else{this.addedToLoadingCount.push(modulename);}

Modified: tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/hostenv_browser.js
URL: http://svn.apache.org/viewvc/tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/hostenv_browser.js?view=diff&rev=487242&r1=487241&r2=487242
==============================================================================
--- tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/hostenv_browser.js (original)
+++ tapestry/tapestry4/trunk/tapestry-framework/src/js/dojo/src/hostenv_browser.js Thu Dec 14 07:45:13 2006
@@ -1,5 +1,7 @@
 
-if(typeof window != 'undefined'){(function(){if(djConfig.allowQueryConfig){var baseUrl = document.location.toString();var params = baseUrl.split("?", 2);if(params.length > 1){var paramStr = params[1];var pairs = paramStr.split("&");for(var x in pairs){var sp = pairs[x].split("=");if((sp[0].length > 9)&&(sp[0].substr(0, 9) == "djConfig.")){var opt = sp[0].substr(9);try{djConfig[opt]=eval(sp[1]);}catch(e){djConfig[opt]=sp[1];}}}}}
+if(typeof window != 'undefined'){(function(){if(djConfig.allowQueryConfig){var baseUrl = document.location.toString();var params = baseUrl.split("?", 2);if(params.length > 1){var paramStr = params[1];var pairs = paramStr.split("&");for(var x in pairs){var sp = pairs[x].split("=");if((sp[0].length > 9)&&(sp[0].substr(0, 9) == "djConfig.")){var opt = sp[0].substr(9);try{djConfig[opt]=eval(sp[1]);}catch(e){djConfig[opt]=sp[1];}}
+}}
+}
 if(
 ((djConfig["baseScriptUri"] == "")||(djConfig["baseRelativePath"] == "")) &&
 (document && document.getElementsByTagName)
@@ -8,24 +10,29 @@
 if(!this["djConfig"]) { djConfig = {}; }
 if(djConfig["baseScriptUri"] == "") { djConfig["baseScriptUri"] = root; }
 if(djConfig["baseRelativePath"] == "") { djConfig["baseRelativePath"] = root; }
-break;}}}
+break;}}
+}
 var dr = dojo.render;var drh = dojo.render.html;var drs = dojo.render.svg;var dua = (drh.UA = navigator.userAgent);var dav = (drh.AV = navigator.appVersion);var t = true;var f = false;drh.capable = t;drh.support.builtin = t;dr.ver = parseFloat(drh.AV);dr.os.mac = dav.indexOf("Macintosh") >= 0;dr.os.win = dav.indexOf("Windows") >= 0;dr.os.linux = dav.indexOf("X11") >= 0;drh.opera = dua.indexOf("Opera") >= 0;drh.khtml = (dav.indexOf("Konqueror") >= 0)||(dav.indexOf("Safari") >= 0);drh.safari = dav.indexOf("Safari") >= 0;var geckoPos = dua.indexOf("Gecko");drh.mozilla = drh.moz = (geckoPos >= 0)&&(!drh.khtml);if (drh.mozilla) {drh.geckoVersion = dua.substring(geckoPos + 6, geckoPos + 14);}
 drh.ie = (document.all)&&(!drh.opera);drh.ie50 = drh.ie && dav.indexOf("MSIE 5.0")>=0;drh.ie55 = drh.ie && dav.indexOf("MSIE 5.5")>=0;drh.ie60 = drh.ie && dav.indexOf("MSIE 6.0")>=0;drh.ie70 = drh.ie && dav.indexOf("MSIE 7.0")>=0;var cm = document["compatMode"];drh.quirks = (cm == "BackCompat")||(cm == "QuirksMode")||drh.ie55||drh.ie50;dojo.locale = dojo.locale || (drh.ie ? navigator.userLanguage : navigator.language).toLowerCase();dr.vml.capable=drh.ie;drs.capable = f;drs.support.plugin = f;drs.support.builtin = f;var tdoc = window["document"];var tdi = tdoc["implementation"];if((tdi)&&(tdi["hasFeature"])&&(tdi.hasFeature("org.w3c.dom.svg", "1.0"))){drs.capable = t;drs.support.builtin = t;drs.support.plugin = f;}
 if(drh.safari){var tmp = dua.split("AppleWebKit/")[1];var ver = parseFloat(tmp.split(" ")[0]);if(ver >= 420){drs.capable = t;drs.support.builtin = t;drs.support.plugin = f;}}else{}})();dojo.hostenv.startPackage("dojo.hostenv");dojo.render.name = dojo.hostenv.name_ = 'browser';dojo.hostenv.searchIds = [];dojo.hostenv._XMLHTTP_PROGIDS = ['Msxml2.XMLHTTP', 'Microsoft.XMLHTTP', 'Msxml2.XMLHTTP.4.0'];dojo.hostenv.getXmlhttpObject = function(){var http = null;var last_e = null;try{ http = new XMLHttpRequest(); }catch(e){}
 if(!http){for(var i=0; i<3; ++i){var progid = dojo.hostenv._XMLHTTP_PROGIDS[i];try{http = new ActiveXObject(progid);}catch(e){last_e = e;}
-if(http){dojo.hostenv._XMLHTTP_PROGIDS = [progid];break;}}}
+if(http){dojo.hostenv._XMLHTTP_PROGIDS = [progid];break;}}
+}
 if(!http){return dojo.raise("XMLHTTP not available", last_e);}
 return http;}
 dojo.hostenv._blockAsync = false;dojo.hostenv.getText = function(uri, async_cb, fail_ok){if(!async_cb){ this._blockAsync = true; }
 var http = this.getXmlhttpObject();function isDocumentOk(http){var stat = http["status"];return Boolean((!stat)||((200 <= stat)&&(300 > stat))||(stat==304));}
 if(async_cb){var _this = this, timer = null, gbl = dojo.global();var xhr = dojo.evalObjPath("dojo.io.XMLHTTPTransport");http.onreadystatechange = function(){if(timer){ gbl.clearTimeout(timer); timer = null; }
-if(_this._blockAsync || (xhr && xhr._blockAsync)){timer = gbl.setTimeout(function () { http.onreadystatechange.apply(this); }, 10);}else{if(4==http.readyState){if(isDocumentOk(http)){async_cb(http.responseText);}}}}}
+if(_this._blockAsync || (xhr && xhr._blockAsync)){timer = gbl.setTimeout(function () { http.onreadystatechange.apply(this); }, 10);}else{if(4==http.readyState){if(isDocumentOk(http)){async_cb(http.responseText);}}
+}}
+}
 http.open('GET', uri, async_cb ? true : false);try{http.send(null);if(async_cb){return null;}
 if(!isDocumentOk(http)){var err = Error("Unable to load "+uri+" status:"+ http.status);err.status = http.status;err.responseText = http.responseText;throw err;}}catch(e){this._blockAsync = false;if((fail_ok)&&(!async_cb)){return null;}else{throw e;}}
 this._blockAsync = false;return http.responseText;}
 dojo.hostenv.defaultDebugContainerId = 'dojoDebug';dojo.hostenv._println_buffer = [];dojo.hostenv._println_safe = false;dojo.hostenv.println = function(line){if(!dojo.hostenv._println_safe){dojo.hostenv._println_buffer.push(line);}else{try {var console = document.getElementById(djConfig.debugContainerId ?
 djConfig.debugContainerId : dojo.hostenv.defaultDebugContainerId);if(!console) { console = dojo.body(); }
-var div = document.createElement("div");div.appendChild(document.createTextNode(line));console.appendChild(div);} catch (e) {try{document.write("<div>" + line + "</div>");}catch(e2){window.status = line;}}}}
+var div = document.createElement("div");div.appendChild(document.createTextNode(line));console.appendChild(div);} catch (e) {try{document.write("<div>" + line + "</div>");}catch(e2){window.status = line;}}
+}}
 dojo.addOnLoad(function(){dojo.hostenv._println_safe = true;while(dojo.hostenv._println_buffer.length > 0){dojo.hostenv.println(dojo.hostenv._println_buffer.shift());}});function dj_addNodeEvtHdlr(node, evtName, fp){var oldHandler = node["on"+evtName] || function(){};node["on"+evtName] = function(){fp.apply(node, arguments);oldHandler.apply(node, arguments);}
 return true;}
 function dj_load_init(e){var type = (e && e.type) ? e.type.toLowerCase() : "load";if(arguments.callee.initialized || (type!="domcontentloaded" && type!="load")){ return; }
@@ -42,14 +49,17 @@
 dj_addNodeEvtHdlr(window, "unload", function(){dojo.hostenv.unloaded();if((!dojo.render.html.ie)||(dojo.render.html.ie && dojo.hostenv._unloading)){dojo.hostenv.unloaded();}});dojo.hostenv.makeWidgets = function(){var sids = [];if(djConfig.searchIds && djConfig.searchIds.length > 0) {sids = sids.concat(djConfig.searchIds);}
 if(dojo.hostenv.searchIds && dojo.hostenv.searchIds.length > 0) {sids = sids.concat(dojo.hostenv.searchIds);}
 if((djConfig.parseWidgets)||(sids.length > 0)){if(dojo.evalObjPath("dojo.widget.Parse")){var parser = new dojo.xml.Parse();if(sids.length > 0){for(var x=0; x<sids.length; x++){var tmpNode = document.getElementById(sids[x]);if(!tmpNode){ continue; }
-var frag = parser.parseElement(tmpNode, null, true);dojo.widget.getParser().createComponents(frag);}}else if(djConfig.parseWidgets){var frag  = parser.parseElement(dojo.body(), null, true);dojo.widget.getParser().createComponents(frag);}}}}
+var frag = parser.parseElement(tmpNode, null, true);dojo.widget.getParser().createComponents(frag);}}else if(djConfig.parseWidgets){var frag  = parser.parseElement(dojo.body(), null, true);dojo.widget.getParser().createComponents(frag);}}
+}}
 dojo.addOnLoad(function(){if(!dojo.render.html.ie) {dojo.hostenv.makeWidgets();}});try{if(dojo.render.html.ie){document.namespaces.add("v","urn:schemas-microsoft-com:vml");document.createStyleSheet().addRule("v\\:*", "behavior:url(#default#VML)");}}catch(e){ }
 dojo.hostenv.writeIncludes = function(){}
 if(!dj_undef("document", this)){dj_currentDocument = this.document;}
 dojo.doc = function(){return dj_currentDocument;}
 dojo.body = function(){return dojo.doc().body || dojo.doc().getElementsByTagName("body")[0];}
 dojo.byId = function(id, doc){if((id)&&((typeof id == "string")||(id instanceof String))){if(!doc){ doc = dj_currentDocument; }
-var ele = doc.getElementById(id);if(ele && (ele.id != id) && doc.all){ele = null;eles = doc.all[id];if(eles){if(eles.length){for(var i=0; i<eles.length; i++){if(eles[i].id == id){ele = eles[i];break;}}}else{ele = eles;}}}
+var ele = doc.getElementById(id);if(ele && (ele.id != id) && doc.all){ele = null;eles = doc.all[id];if(eles){if(eles.length){for(var i=0; i<eles.length; i++){if(eles[i].id == id){ele = eles[i];break;}}
+}else{ele = eles;}}
+}
 return ele;}
 return id;}
 dojo.setContext = function(globalObject, globalDocument){dj_currentContext = globalObject;dj_currentDocument = globalDocument;};dojo._fireCallback = function(callback, context, cbArguments){if((context)&&((typeof callback == "string")||(callback instanceof String))){callback=context[callback];}