diff -r 322d0feea350 -r 89ef5ed3c48b src/cm/media/js/lib/yui/yui_3.10.3/build/series-base/series-base-debug.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/cm/media/js/lib/yui/yui_3.10.3/build/series-base/series-base-debug.js Tue Jul 16 14:29:46 2013 +0200 @@ -0,0 +1,403 @@ +/* +YUI 3.10.3 (build 2fb5187) +Copyright 2013 Yahoo! Inc. All rights reserved. +Licensed under the BSD License. +http://yuilibrary.com/license/ +*/ + +YUI.add('series-base', function (Y, NAME) { + +/** + * Provides functionality for creating a chart series. + * + * @module charts + * @submodule series-base + */ + +/** + * An abstract class for creating series instances. + * SeriesBase is used by the following classes: + * + * + * @class SeriesBase + * @extends Base + * @uses Renderer + * @constructor + * @param {Object} config (optional) Configuration parameters. + * @submodule series-base + */ +Y.SeriesBase = Y.Base.create("seriesBase", Y.Base, [Y.Renderer], { + /** + * @method render + * @private + */ + render: function() + { + this._setCanvas(); + this.addListeners(); + this.validate(); + }, + + /** + * Creates a `Graphic` instance. + * + * @method _setCanvas + * @protected + */ + _setCanvas: function() + { + var graph = this.get("graph"), + graphic = graph.get("graphic"); + this.set("graphic", graphic); + }, + + /** + * Returns a reference to the parent container to which all chart elements are contained. + * When the series is bound to a `Chart` instance, the `Chart` instance is the reference. + * If nothing is set as the `chart` attribute, the `_getChart` method will return a reference + * to the `graphic` attribute. + * + * @method _getChart + * @return {Object} + * @private + */ + _getChart:function() { + var chart, + graph = this.get("graph"); + if(graph) + { + chart = graph.get("chart"); + } + if(!chart) + { + chart = this.get("graphic"); + } + return chart; + }, + + /** + * Returns the sum of all values for the series. + * + * @method getTotalValues + * @return Number + */ + getTotalValues: function() + { + var valueCoord = this.get("direction") === "vertical" ? "x" : "y", + total = this.get(valueCoord + "Axis").getTotalByKey(this.get(valueCoord + "Key")); + return total; + }, + + /** + * Gets the default value for the `styles` attribute. Overrides + * base implementation. + * + * @method _getDefaultStyles + * @return Object + * @protected + */ + _getDefaultStyles: function() + { + return {padding:{ + top: 0, + left: 0, + right: 0, + bottom: 0 + }}; + }, + + /** + * Shows/hides contents of the series. + * + * @method _handleVisibleChange + * @param {Object} e Event object. + * @protected + */ + _handleVisibleChange: function() + { + this._toggleVisible(this.get("visible")); + }, + + /** + * Destructor implementation for the CartesianSeries class. Calls destroy on all Graphic instances. + * + * @method destructor + * @protected + */ + destructor: function() + { + var marker, + markers = this.get("markers"); + if(this.get("rendered")) + { + this._stylesChangeHandle.detach(); + this._widthChangeHandle.detach(); + this._heightChangeHandle.detach(); + this._visibleChangeHandle.detach(); + } + while(markers && markers.length > 0) + { + marker = markers.shift(); + if(marker && marker instanceof Y.Shape) + { + marker.destroy(); + } + } + if(this._path) + { + this._path.destroy(); + this._path = null; + } + if(this._lineGraphic) + { + this._lineGraphic.destroy(); + this._lineGraphic = null; + } + if(this._groupMarker) + { + this._groupMarker.destroy(); + this._groupMarker = null; + } + }, + + /** + * Collection of default colors used for lines in a series when not specified by user. + * + * @property _defaultLineColors + * @type Array + * @protected + */ + _defaultLineColors:[ + "#426ab3", + "#d09b2c", + "#000000", + "#b82837", + "#b384b5", + "#ff7200", + "#779de3", + "#cbc8ba", + "#7ed7a6", + "#007a6c" + ], + + /** + * Collection of default colors used for marker fills in a series when not specified by user. + * + * @property _defaultFillColors + * @type Array + * @protected + */ + _defaultFillColors:[ + "#6084d0", + "#eeb647", + "#6c6b5f", + "#d6484f", + "#ce9ed1", + "#ff9f3b", + "#93b7ff", + "#e0ddd0", + "#94ecba", + "#309687" + ], + + /** + * Collection of default colors used for marker borders in a series when not specified by user. + * + * @property _defaultBorderColors + * @type Array + * @protected + */ + _defaultBorderColors:[ + "#205096", + "#b38206", + "#000000", + "#94001e", + "#9d6fa0", + "#e55b00", + "#5e85c9", + "#adab9e", + "#6ac291", + "#006457" + ], + + /** + * Collection of default colors used for area fills, histogram fills and pie fills in a series when not specified by user. + * + * @property _defaultSliceColors + * @type Array + * @protected + */ + _defaultSliceColors: [ + "#66007f", + "#a86f41", + "#295454", + "#996ab2", + "#e8cdb7", + "#90bdbd", + "#000000", + "#c3b8ca", + "#968373", + "#678585" + ], + + /** + * Parses a color based on a series order and type. + * + * @method _getDefaultColor + * @param {Number} index Index indicating the series order. + * @param {String} type Indicates which type of object needs the color. + * @return String + * @protected + */ + _getDefaultColor: function(index, type) + { + var colors = { + line: this._defaultLineColors, + fill: this._defaultFillColors, + border: this._defaultBorderColors, + slice: this._defaultSliceColors + }, + col = colors[type] || colors.fill, + l = col.length; + index = index || 0; + if(index >= l) + { + index = index % l; + } + type = type || "fill"; + return colors[type][index]; + } +}, { + ATTRS: { + /* + * Returns the width of the parent graph + * + * @attribute width + * @type Number + */ + width: { + readOnly: true, + + getter: function() + { + return this.get("graphic").get("width"); + } + }, + + /** + * Returns the height of the parent graph + * + * @attribute height + * @type Number + */ + height: { + readOnly: true, + + getter: function() + { + return this.get("graphic").get("height"); + } + }, + + /** + * The graphic in which drawings will be rendered. + * + * @attribute graphic + * @type Graphic + */ + graphic: { + lazyAdd: false, + + setter: function(val) { + //woraround for Attribute order of operations bug + if(!this.get("rendered")) { + this.set("rendered", true); + } + return val; + } + }, + + /** + * Reference to the `Chart` application. If no `Chart` application is present, + * a reference to the `Graphic` instance that the series is drawn into will be returned. + * + * @attribute chart + * @type ChartBase + */ + chart: { + getter: function() + { + var chart, + graph = this.get("graph"); + if(graph) + { + chart = graph.get("chart"); + } + return chart; + } + }, + + /** + * Reference to the `Graph` in which the series is drawn into. + * + * @attribute graph + * @type Graph + */ + graph: {}, + + /** + * Indicates whether the Series has been through its initial set up. + * + * @attribute rendered + * @type Boolean + */ + rendered: { + value: false + }, + + /** + * Indicates whether to show the series + * + * @attribute visible + * @type Boolean + * @default true + */ + visible: { + value: true + }, + + /** + * Indicates whether or not markers for a series will be grouped and rendered in a single complex shape instance. + * + * @attribute groupMarkers + * @type Boolean + */ + groupMarkers: { + getter: function() + { + var graph, + groupMarkers = this._groupMarkers; + if(!groupMarkers) { + graph = this.get("graph"); + if(graph) + { + groupMarkers = graph.get("groupMarkers"); + } + } + return groupMarkers; + }, + + setter: function(val) + { + this._groupMarkers = val; + return val; + } + } + } +}); + + +}, '3.10.3', {"requires": ["graphics", "axis-base"]});