a:63:{s:9:"#provides";s:29:"dojox.charting.axis2d.Default";s:9:"#resource";s:26:"charting/axis2d/Default.js";s:9:"#requires";a:8:{i:0;a:2:{i:0;s:6:"common";i:1;s:28:"dojox.charting.scaler.linear";}i:1;a:2:{i:0;s:6:"common";i:1;s:28:"dojox.charting.axis2d.common";}i:2;a:2:{i:0;s:6:"common";i:1;s:26:"dojox.charting.axis2d.Base";}i:3;a:3:{i:0;s:6:"common";i:1;s:11:"dojo.colors";i:2;s:4:"dojo";}i:4;a:3:{i:0;s:6:"common";i:1;s:11:"dojo.string";i:2;s:4:"dojo";}i:5;a:2:{i:0;s:6:"common";i:1;s:9:"dojox.gfx";}i:6;a:2:{i:0;s:6:"common";i:1;s:21:"dojox.lang.functional";}i:7;a:2:{i:0;s:6:"common";i:1;s:16:"dojox.lang.utils";}}s:29:"dojox.charting.axis2d.Default";a:6:{s:4:"type";s:8:"Function";s:6:"chains";a:2:{s:9:"prototype";a:1:{i:0;s:26:"dojox.charting.axis2d.Base";}s:4:"call";a:1:{i:0;s:26:"dojox.charting.axis2d.Base";}}s:10:"parameters";a:2:{s:5:"chart";a:1:{s:4:"type";s:0:"";}s:6:"kwArgs";a:1:{s:4:"type";s:0:"";}}s:6:"source";s:165:"			this.opt = dojo.delegate(this.defaultParams, kwArgs);
			// du.updateWithObject(this.opt, kwArgs);
			du.updateWithPattern(this.opt, kwArgs, this.optionalParams);";s:9:"classlike";b:1;s:7:"summary";s:0:"";}s:43:"dojox.charting.axis2d.Default.defaultParams";a:3:{s:9:"prototype";s:29:"dojox.charting.axis2d.Default";s:4:"type";s:6:"Object";s:7:"summary";s:0:"";}s:44:"dojox.charting.axis2d.Default.optionalParams";a:3:{s:9:"prototype";s:29:"dojox.charting.axis2d.Default";s:4:"type";s:6:"Object";s:7:"summary";s:0:"";}s:42:"dojox.charting.axis2d.Default.dependOnData";a:4:{s:9:"prototype";s:29:"dojox.charting.axis2d.Default";s:4:"type";s:8:"Function";s:6:"source";s:55:"			return !("min" in this.opt) || !("max" in this.opt);";s:7:"summary";s:0:"";}s:35:"dojox.charting.axis2d.Default.clear";a:4:{s:9:"prototype";s:29:"dojox.charting.axis2d.Default";s:4:"type";s:8:"Function";s:6:"source";s:82:"			delete this.scaler;
			delete this.ticks;
			this.dirty = true;
			return this;";s:7:"summary";s:0:"";}s:41:"dojox.charting.axis2d.Default.initialized";a:4:{s:9:"prototype";s:29:"dojox.charting.axis2d.Default";s:4:"type";s:8:"Function";s:6:"source";s:67:"			return "scaler" in this && !(this.dirty && this.dependOnData());";s:7:"summary";s:0:"";}s:39:"dojox.charting.axis2d.Default.setWindow";a:5:{s:9:"prototype";s:29:"dojox.charting.axis2d.Default";s:4:"type";s:8:"Function";s:10:"parameters";a:2:{s:5:"scale";a:1:{s:4:"type";s:0:"";}s:6:"offset";a:1:{s:4:"type";s:0:"";}}s:6:"source";s:72:"			this.scale  = scale;
			this.offset = offset;
			return this.clear();";s:7:"summary";s:0:"";}s:44:"dojox.charting.axis2d.Default.getWindowScale";a:4:{s:9:"prototype";s:29:"dojox.charting.axis2d.Default";s:4:"type";s:8:"Function";s:6:"source";s:43:"			return "scale" in this ? this.scale : 1;";s:7:"summary";s:0:"";}s:45:"dojox.charting.axis2d.Default.getWindowOffset";a:4:{s:9:"prototype";s:29:"dojox.charting.axis2d.Default";s:4:"type";s:8:"Function";s:6:"source";s:45:"			return "offset" in this ? this.offset : 0;";s:7:"summary";s:0:"";}s:39:"dojox.charting.axis2d.Default.calculate";a:5:{s:9:"prototype";s:29:"dojox.charting.axis2d.Default";s:4:"type";s:8:"Function";s:10:"parameters";a:4:{s:3:"min";a:1:{s:4:"type";s:0:"";}s:3:"max";a:1:{s:4:"type";s:0:"";}s:4:"span";a:1:{s:4:"type";s:0:"";}s:6:"labels";a:1:{s:4:"type";s:0:"";}}s:6:"source";s:2848:"			if(this.initialized()){ return this; }
			this.labels = "labels" in this.opt ? this.opt.labels : labels;
			this.scaler = lin.buildScaler(min, max, span, this.opt);
			if("scale" in this){
				// calculate new range
				this.opt.from = this.scaler.bounds.lower + this.offset;
				this.opt.to   = (this.scaler.bounds.upper - this.scaler.bounds.lower) / this.scale + this.opt.from;
				// make sure that bounds are correct
				if(!isFinite(this.opt.from) || isNaN(this.opt.from) || !isFinite(this.opt.to) || isNaN(this.opt.to) ||
						this.opt.to - this.opt.from >= this.scaler.bounds.upper - this.scaler.bounds.lower){
					// any error --- remove from/to bounds
					delete this.opt.from;
					delete this.opt.to;
					delete this.scale;
					delete this.offset;
				}else{
					// shift the window, if we are out of bounds
					if(this.opt.from < this.scaler.bounds.lower){
						this.opt.to   += this.scaler.bounds.lower - this.opt.from;
						this.opt.from  = this.scaler.bounds.lower;
					}else if(this.opt.to > this.scaler.bounds.upper){
						this.opt.from += this.scaler.bounds.upper - this.opt.to;
						this.opt.to    = this.scaler.bounds.upper;
					}
					// update the offset
					this.offset = this.opt.from - this.scaler.bounds.lower;
				}
				// re-calculate the scaler
				this.scaler = lin.buildScaler(min, max, span, this.opt);
				// cleanup
				if(this.scale == 1 && this.offset == 0){
					delete this.scale;
					delete this.offset;
				}
			}
			var minMinorStep = 0, ta = this.chart.theme.axis,
				taFont = "font" in this.opt ? this.opt.font : ta.font,
				size = taFont ? g.normalizedLength(g.splitFontString(taFont).size) : 0;
			if(this.vertical){
				if(size){
					minMinorStep = size + labelGap;
				}
			}else{
				if(size){
					var labelWidth, i;
					if(this.opt.labelFunc && this.opt.maxLabelSize){
						labelWidth = this.opt.maxLabelSize;
					}else if(this.labels){
						labelWidth = df.foldl(df.map(this.labels, function(label){
							return dojox.gfx._base._getTextBox(label.text, {font: taFont}).w;
						}), "Math.max(a, b)", 0);
					}else{
						var labelLength = Math.ceil(Math.log(Math.max(Math.abs(this.scaler.bounds.from),
								Math.abs(this.scaler.bounds.to))) / Math.LN10),
							t = [];
						if(this.scaler.bounds.from < 0 || this.scaler.bounds.to < 0){ t.push("-"); }
						t.push(dojo.string.rep("9", labelLength));
						var precision = Math.floor(Math.log(this.scaler.bounds.to - this.scaler.bounds.from) / Math.LN10);
						if(precision > 0){
							t.push(".");
							for(i = 0; i < precision; ++i){ t.push("9"); }
						}
						labelWidth = dojox.gfx._base._getTextBox(t.join(""), {font: taFont}).w;
					}
					minMinorStep = labelWidth + labelGap;
				}
			}
			this.scaler.minMinorStep = minMinorStep;
			this.ticks = lin.buildTicks(this.scaler, this.opt);
			return this;";s:7:"summary";s:0:"";}s:39:"dojox.charting.axis2d.Default.getScaler";a:4:{s:9:"prototype";s:29:"dojox.charting.axis2d.Default";s:4:"type";s:8:"Function";s:6:"source";s:22:"			return this.scaler;";s:7:"summary";s:0:"";}s:38:"dojox.charting.axis2d.Default.getTicks";a:4:{s:9:"prototype";s:29:"dojox.charting.axis2d.Default";s:4:"type";s:8:"Function";s:6:"source";s:21:"			return this.ticks;";s:7:"summary";s:0:"";}s:40:"dojox.charting.axis2d.Default.getOffsets";a:4:{s:9:"prototype";s:29:"dojox.charting.axis2d.Default";s:4:"type";s:8:"Function";s:6:"source";s:2505:"			var offsets = {l: 0, r: 0, t: 0, b: 0}, labelWidth, a, b, c, d,
				gtb = dojox.gfx._base._getTextBox, gl = dc.scaler.common.getNumericLabel,
				offset = 0, ta = this.chart.theme.axis,
				taFont = "font" in this.opt ? this.opt.font : ta.font,
				taMajorTick = "majorTick" in this.opt ? this.opt.majorTick : ta.majorTick,
				taMinorTick = "minorTick" in this.opt ? this.opt.minorTick : ta.minorTick,
				size = taFont ? g.normalizedLength(g.splitFontString(taFont).size) : 0,
				s = this.scaler;
			if(!s){
				return offsets;
			}
			if(this.vertical){
				if(size){
					if(this.opt.labelFunc && this.opt.maxLabelSize){
						labelWidth = this.opt.maxLabelSize;
					}else if(this.labels){
						labelWidth = df.foldl(df.map(this.labels, function(label){
							return dojox.gfx._base._getTextBox(label.text, {font: taFont}).w;
						}), "Math.max(a, b)", 0);
					}else{
						a = gtb(gl(s.major.start, s.major.prec, this.opt), {font: taFont}).w;
						b = gtb(gl(s.major.start + s.major.count * s.major.tick, s.major.prec, this.opt), {font: taFont}).w;
						c = gtb(gl(s.minor.start, s.minor.prec, this.opt), {font: taFont}).w;
						d = gtb(gl(s.minor.start + s.minor.count * s.minor.tick, s.minor.prec, this.opt), {font: taFont}).w;
						labelWidth = Math.max(a, b, c, d);
					}
					offset = labelWidth + labelGap;
				}
				offset += labelGap + Math.max(taMajorTick.length, taMinorTick.length);
				offsets[this.opt.leftBottom ? "l" : "r"] = offset;
				offsets.t = offsets.b = size / 2;
			}else{
				if(size){
					offset = size + labelGap;
				}
				offset += labelGap + Math.max(taMajorTick.length, taMinorTick.length);
				offsets[this.opt.leftBottom ? "b" : "t"] = offset;
				if(size){
					if(this.opt.labelFunc && this.opt.maxLabelSize){
						labelWidth = this.opt.maxLabelSize;
					}else if(this.labels){
						labelWidth = df.foldl(df.map(this.labels, function(label){
							return dojox.gfx._base._getTextBox(label.text, {font: taFont}).w;
						}), "Math.max(a, b)", 0);
					}else{
						a = gtb(gl(s.major.start, s.major.prec, this.opt), {font: taFont}).w;
						b = gtb(gl(s.major.start + s.major.count * s.major.tick, s.major.prec, this.opt), {font: taFont}).w;
						c = gtb(gl(s.minor.start, s.minor.prec, this.opt), {font: taFont}).w;
						d = gtb(gl(s.minor.start + s.minor.count * s.minor.tick, s.minor.prec, this.opt), {font: taFont}).w;
						labelWidth = Math.max(a, b, c, d);
					}
					offsets.l = offsets.r = labelWidth / 2;
				}
			}
			return offsets;";s:7:"summary";s:0:"";}s:36:"dojox.charting.axis2d.Default.render";a:5:{s:9:"prototype";s:29:"dojox.charting.axis2d.Default";s:4:"type";s:8:"Function";s:10:"parameters";a:2:{s:3:"dim";a:1:{s:4:"type";s:0:"";}s:7:"offsets";a:1:{s:4:"type";s:0:"";}}s:6:"source";s:3909:"			if(!this.dirty){ return this; }
			// prepare variable
			var start, stop, axisVector, tickVector, labelOffset, labelAlign,
				ta = this.chart.theme.axis,
				taStroke = "stroke" in this.opt ? this.opt.stroke : ta.stroke,
				taMajorTick = "majorTick" in this.opt ? this.opt.majorTick : ta.majorTick,
				taMinorTick = "minorTick" in this.opt ? this.opt.minorTick : ta.minorTick,
				taMicroTick = "microTick" in this.opt ? this.opt.microTick : ta.minorTick,
				taFont = "font" in this.opt ? this.opt.font : ta.font,
				taFontColor = "fontColor" in this.opt ? this.opt.fontColor : ta.fontColor,
				tickSize = Math.max(taMajorTick.length, taMinorTick.length),
				size = taFont ? g.normalizedLength(g.splitFontString(taFont).size) : 0;
			if(this.vertical){
				start = {y: dim.height - offsets.b};
				stop  = {y: offsets.t};
				axisVector = {x: 0, y: -1};
				if(this.opt.leftBottom){
					start.x = stop.x = offsets.l;
					tickVector = {x: -1, y: 0};
					labelAlign = "end";
				}else{
					start.x = stop.x = dim.width - offsets.r;
					tickVector = {x: 1, y: 0};
					labelAlign = "start";
				}
				labelOffset = {x: tickVector.x * (tickSize + labelGap), y: size * 0.4};
			}else{
				start = {x: offsets.l};
				stop  = {x: dim.width - offsets.r};
				axisVector = {x: 1, y: 0};
				labelAlign = "middle";
				if(this.opt.leftBottom){
					start.y = stop.y = dim.height - offsets.b;
					tickVector = {x: 0, y: 1};
					labelOffset = {y: tickSize + labelGap + size};
				}else{
					start.y = stop.y = offsets.t;
					tickVector = {x: 0, y: -1};
					labelOffset = {y: -tickSize - labelGap};
				}
				labelOffset.x = 0;
			}


			// render shapes


			this.cleanGroup();


			try{
				var s = this.group, c = this.scaler, t = this.ticks, canLabel,
					f = lin.getTransformerFromModel(this.scaler),
					forceHtmlLabels = dojox.gfx.renderer == "canvas",
					labelType = forceHtmlLabels || this.opt.htmlLabels && !dojo.isIE && !dojo.isOpera ? "html" : "gfx",
					dx = tickVector.x * taMajorTick.length,
					dy = tickVector.y * taMajorTick.length;


				s.createLine({x1: start.x, y1: start.y, x2: stop.x, y2: stop.y}).setStroke(taStroke);


				dojo.forEach(t.major, function(tick){
					var offset = f(tick.value), elem,
						x = start.x + axisVector.x * offset,
						y = start.y + axisVector.y * offset;
						s.createLine({
							x1: x, y1: y,
							x2: x + dx,
							y2: y + dy
						}).setStroke(taMajorTick);
						if(tick.label){
							elem = dc.axis2d.common.createText[labelType]
											(this.chart, s, x + labelOffset.x, y + labelOffset.y, labelAlign,
												tick.label, taFont, taFontColor);
							if(labelType == "html"){ this.htmlElements.push(elem); }
						}
				}, this);


				dx = tickVector.x * taMinorTick.length;
				dy = tickVector.y * taMinorTick.length;
				canLabel = c.minMinorStep <= c.minor.tick * c.bounds.scale;
				dojo.forEach(t.minor, function(tick){
					var offset = f(tick.value), elem,
						x = start.x + axisVector.x * offset,
						y = start.y + axisVector.y * offset;
						s.createLine({
							x1: x, y1: y,
							x2: x + dx,
							y2: y + dy
						}).setStroke(taMinorTick);
						if(canLabel && tick.label){
							elem = dc.axis2d.common.createText[labelType]
											(this.chart, s, x + labelOffset.x, y + labelOffset.y, labelAlign,
												tick.label, taFont, taFontColor);
							if(labelType == "html"){ this.htmlElements.push(elem); }
						}
				}, this);


				dx = tickVector.x * taMicroTick.length;
				dy = tickVector.y * taMicroTick.length;
				dojo.forEach(t.micro, function(tick){
					var offset = f(tick.value), elem,
						x = start.x + axisVector.x * offset,
						y = start.y + axisVector.y * offset;
						s.createLine({
							x1: x, y1: y,
							x2: x + dx,
							y2: y + dy
						}).setStroke(taMicroTick);
				}, this);
			}catch(e){
				// squelch
			}


			this.dirty = false;
			return this;";s:7:"summary";s:0:"";}s:52:"dojox.charting.axis2d.Default.defaultParams.vertical";a:1:{s:7:"summary";s:0:"";}s:52:"dojox.charting.axis2d.Default.defaultParams.fixUpper";a:1:{s:7:"summary";s:0:"";}s:52:"dojox.charting.axis2d.Default.defaultParams.fixLower";a:1:{s:7:"summary";s:0:"";}s:51:"dojox.charting.axis2d.Default.defaultParams.natural";a:1:{s:7:"summary";s:0:"";}s:54:"dojox.charting.axis2d.Default.defaultParams.leftBottom";a:1:{s:7:"summary";s:0:"";}s:55:"dojox.charting.axis2d.Default.defaultParams.includeZero";a:1:{s:7:"summary";s:0:"";}s:49:"dojox.charting.axis2d.Default.defaultParams.fixed";a:1:{s:7:"summary";s:0:"";}s:55:"dojox.charting.axis2d.Default.defaultParams.majorLabels";a:1:{s:7:"summary";s:0:"";}s:54:"dojox.charting.axis2d.Default.defaultParams.minorTicks";a:1:{s:7:"summary";s:0:"";}s:55:"dojox.charting.axis2d.Default.defaultParams.minorLabels";a:1:{s:7:"summary";s:0:"";}s:54:"dojox.charting.axis2d.Default.defaultParams.microTicks";a:1:{s:7:"summary";s:0:"";}s:54:"dojox.charting.axis2d.Default.defaultParams.htmlLabels";a:1:{s:7:"summary";s:0:"";}s:48:"dojox.charting.axis2d.Default.optionalParams.min";a:1:{s:7:"summary";s:0:"";}s:48:"dojox.charting.axis2d.Default.optionalParams.max";a:1:{s:7:"summary";s:0:"";}s:49:"dojox.charting.axis2d.Default.optionalParams.from";a:1:{s:7:"summary";s:0:"";}s:47:"dojox.charting.axis2d.Default.optionalParams.to";a:1:{s:7:"summary";s:0:"";}s:58:"dojox.charting.axis2d.Default.optionalParams.majorTickStep";a:1:{s:7:"summary";s:0:"";}s:58:"dojox.charting.axis2d.Default.optionalParams.minorTickStep";a:1:{s:7:"summary";s:0:"";}s:58:"dojox.charting.axis2d.Default.optionalParams.microTickStep";a:1:{s:7:"summary";s:0:"";}s:51:"dojox.charting.axis2d.Default.optionalParams.labels";a:1:{s:7:"summary";s:0:"";}s:54:"dojox.charting.axis2d.Default.optionalParams.labelFunc";a:1:{s:7:"summary";s:0:"";}s:57:"dojox.charting.axis2d.Default.optionalParams.maxLabelSize";a:1:{s:7:"summary";s:0:"";}s:51:"dojox.charting.axis2d.Default.optionalParams.stroke";a:2:{s:4:"type";s:6:"Object";s:7:"summary";s:0:"";}s:54:"dojox.charting.axis2d.Default.optionalParams.majorTick";a:2:{s:4:"type";s:6:"Object";s:7:"summary";s:0:"";}s:54:"dojox.charting.axis2d.Default.optionalParams.minorTick";a:2:{s:4:"type";s:6:"Object";s:7:"summary";s:0:"";}s:54:"dojox.charting.axis2d.Default.optionalParams.microTick";a:2:{s:4:"type";s:6:"Object";s:7:"summary";s:0:"";}s:49:"dojox.charting.axis2d.Default.optionalParams.font";a:1:{s:7:"summary";s:0:"";}s:54:"dojox.charting.axis2d.Default.optionalParams.fontColor";a:1:{s:7:"summary";s:0:"";}s:35:"dojox.charting.axis2d.Default.dirty";a:2:{s:8:"instance";s:29:"dojox.charting.axis2d.Default";s:7:"summary";s:0:"";}s:35:"dojox.charting.axis2d.Default.scale";a:2:{s:8:"instance";s:29:"dojox.charting.axis2d.Default";s:7:"summary";s:0:"";}s:36:"dojox.charting.axis2d.Default.offset";a:2:{s:8:"instance";s:29:"dojox.charting.axis2d.Default";s:7:"summary";s:0:"";}s:36:"dojox.charting.axis2d.Default.labels";a:2:{s:8:"instance";s:29:"dojox.charting.axis2d.Default";s:7:"summary";s:0:"";}s:36:"dojox.charting.axis2d.Default.scaler";a:2:{s:8:"instance";s:29:"dojox.charting.axis2d.Default";s:7:"summary";s:0:"";}s:38:"dojox.charting.axis2d.Default.opt.from";a:2:{s:8:"instance";s:29:"dojox.charting.axis2d.Default";s:7:"summary";s:0:"";}s:36:"dojox.charting.axis2d.Default.opt.to";a:2:{s:8:"instance";s:29:"dojox.charting.axis2d.Default";s:7:"summary";s:0:"";}s:49:"dojox.charting.axis2d.Default.scaler.minMinorStep";a:2:{s:8:"instance";s:29:"dojox.charting.axis2d.Default";s:7:"summary";s:0:"";}s:35:"dojox.charting.axis2d.Default.ticks";a:2:{s:8:"instance";s:29:"dojox.charting.axis2d.Default";s:7:"summary";s:0:"";}s:33:"dojox.charting.axis2d.Default.opt";a:2:{s:8:"instance";s:29:"dojox.charting.axis2d.Default";s:7:"summary";s:0:"";}s:2:"df";a:1:{s:7:"summary";s:0:"";}s:2:"du";a:1:{s:7:"summary";s:0:"";}s:1:"g";a:1:{s:7:"summary";s:0:"";}s:3:"lin";a:1:{s:7:"summary";s:0:"";}s:8:"labelGap";a:1:{s:7:"summary";s:0:"";}s:21:"dojox.charting.axis2d";a:2:{s:4:"type";s:6:"Object";s:7:"summary";s:0:"";}s:14:"dojox.charting";a:2:{s:4:"type";s:6:"Object";s:7:"summary";s:0:"";}s:5:"dojox";a:2:{s:4:"type";s:6:"Object";s:7:"summary";s:0:"";}}