src/cm/media/js/lib/yui/yui_3.10.3/build/series-column/series-column-debug.js
author gibus
Tue, 16 Jul 2013 14:29:46 +0200
changeset 525 89ef5ed3c48b
permissions -rw-r--r--
Upgrades to yui 3.10.3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
525
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     1
/*
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     2
YUI 3.10.3 (build 2fb5187)
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     3
Copyright 2013 Yahoo! Inc. All rights reserved.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     4
Licensed under the BSD License.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     5
http://yuilibrary.com/license/
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     6
*/
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     7
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     8
YUI.add('series-column', function (Y, NAME) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     9
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    10
/**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    11
 * Provides functionality for creating a column series.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    12
 *
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    13
 * @module charts
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    14
 * @submodule series-column
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    15
 */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    16
/**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    17
 * The ColumnSeries class renders columns positioned horizontally along a category or time axis. The columns'
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    18
 * lengths are proportional to the values they represent along a vertical axis.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    19
 * and the relevant data points.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    20
 *
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    21
 * @class ColumnSeries
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    22
 * @extends MarkerSeries
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    23
 * @uses Histogram
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    24
 * @constructor
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    25
 * @param {Object} config (optional) Configuration parameters.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    26
 * @submodule series-column
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    27
 */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    28
Y.ColumnSeries = Y.Base.create("columnSeries", Y.MarkerSeries, [Y.Histogram], {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    29
    /**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    30
     * Helper method for calculating the size of markers.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    31
     *
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    32
     * @method _getMarkerDimensions
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    33
     * @param {Number} xcoord The x-coordinate representing the data point for the marker.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    34
     * @param {Number} ycoord The y-coordinate representing the data point for the marker.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    35
     * @param {Number} calculatedSize The calculated size for the marker. For a `BarSeries` is it the width. For a `ColumnSeries` it is the height.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    36
     * @param {Number} offset Distance of position offset dictated by other marker series in the same graph.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    37
     * @return Object
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    38
     * @private
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    39
     */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    40
    _getMarkerDimensions: function(xcoord, ycoord, calculatedSize, offset)
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    41
    {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    42
        var config = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    43
            left: xcoord + offset
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    44
        };
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    45
        if(this._bottomOrigin >= ycoord)
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    46
        {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    47
            config.top = ycoord;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    48
            config.calculatedSize = this._bottomOrigin - config.top;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    49
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    50
        else
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    51
        {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    52
            config.top = this._bottomOrigin;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    53
            config.calculatedSize = ycoord - this._bottomOrigin;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    54
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    55
        return config;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    56
    },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    57
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    58
    /**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    59
     * Resizes and positions markers based on a mouse interaction.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    60
     *
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    61
     * @method updateMarkerState
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    62
     * @param {String} type state of the marker
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    63
     * @param {Number} i index of the marker
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    64
     * @protected
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    65
     */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    66
    updateMarkerState: function(type, i)
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    67
    {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    68
        if(this._markers && this._markers[i])
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    69
        {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    70
            var styles = Y.clone(this.get("styles").marker),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    71
                markerStyles,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    72
                state = this._getState(type),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    73
                xcoords = this.get("xcoords"),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    74
                ycoords = this.get("ycoords"),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    75
                marker = this._markers[i],
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    76
                markers,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    77
                seriesStyles,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    78
                seriesCollection = this.get("seriesTypeCollection"),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    79
                seriesLen = seriesCollection.length,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    80
                seriesSize = 0,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    81
                offset = 0,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    82
                renderer,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    83
                n = 0,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    84
                xs = [],
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    85
                order = this.get("order"),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    86
                config;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    87
            markerStyles = state === "off" || !styles[state] ? Y.clone(styles) : Y.clone(styles[state]);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    88
            markerStyles.fill.color = this._getItemColor(markerStyles.fill.color, i);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    89
            markerStyles.border.color = this._getItemColor(markerStyles.border.color, i);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    90
            config = this._getMarkerDimensions(xcoords[i], ycoords[i], styles.width, offset);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    91
            markerStyles.height = config.calculatedSize;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    92
            markerStyles.width = Math.min(this._maxSize, markerStyles.width);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    93
            marker.set(markerStyles);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    94
            for(; n < seriesLen; ++n)
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    95
            {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    96
                xs[n] = xcoords[i] + seriesSize;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    97
                seriesStyles = seriesCollection[n].get("styles").marker;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    98
                seriesSize += Math.min(this._maxSize, seriesStyles.width);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    99
                if(order > n)
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   100
                {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   101
                    offset = seriesSize;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   102
                }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   103
                offset -= seriesSize/2;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   104
            }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   105
            for(n = 0; n < seriesLen; ++n)
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   106
            {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   107
                markers = seriesCollection[n].get("markers");
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   108
                if(markers)
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   109
                {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   110
                    renderer = markers[i];
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   111
                    if(renderer && renderer !== undefined)
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   112
                    {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   113
                        renderer.set("x", (xs[n] - seriesSize/2));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   114
                    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   115
                }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   116
            }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   117
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   118
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   119
}, {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   120
    ATTRS: {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   121
        /**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   122
         * Read-only attribute indicating the type of series.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   123
         *
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   124
         * @attribute type
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   125
         * @type String
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   126
         * @readOnly
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   127
         * @default column
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   128
         */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   129
        type: {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   130
            value: "column"
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   131
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   132
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   133
        /**
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   134
         * Style properties used for drawing markers. This attribute is inherited from `MarkerSeries`. Below are the default values:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   135
         *  <dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   136
         *      <dt>fill</dt><dd>A hash containing the following values:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   137
         *          <dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   138
         *              <dt>color</dt><dd>Color of the fill. The default value is determined by the order of the series on the graph. The color
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   139
         *              will be retrieved from the below array:<br/>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   140
         *              `["#66007f", "#a86f41", "#295454", "#996ab2", "#e8cdb7", "#90bdbd","#000000","#c3b8ca", "#968373", "#678585"]`
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   141
         *              </dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   142
         *              <dt>alpha</dt><dd>Number from 0 to 1 indicating the opacity of the marker fill. The default value is 1.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   143
         *          </dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   144
         *      </dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   145
         *      <dt>border</dt><dd>A hash containing the following values:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   146
         *          <dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   147
         *              <dt>color</dt><dd>Color of the border. The default value is determined by the order of the series on the graph. The color
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   148
         *              will be retrieved from the below array:<br/>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   149
         *              `["#205096", "#b38206", "#000000", "#94001e", "#9d6fa0", "#e55b00", "#5e85c9", "#adab9e", "#6ac291", "#006457"]`
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   150
         *              <dt>alpha</dt><dd>Number from 0 to 1 indicating the opacity of the marker border. The default value is 1.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   151
         *              <dt>weight</dt><dd>Number indicating the width of the border. The default value is 1.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   152
         *          </dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   153
         *      </dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   154
         *      <dt>width</dt><dd>indicates the width of the marker. The default value is 12.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   155
         *      <dt>over</dt><dd>hash containing styles for markers when highlighted by a `mouseover` event. The default
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   156
         *      values for each style is null. When an over style is not set, the non-over value will be used. For example,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   157
         *      the default value for `marker.over.fill.color` is equivalent to `marker.fill.color`.</dd>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   158
         *  </dl>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   159
         *
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   160
         * @attribute styles
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   161
         * @type Object
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   162
         */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   163
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   164
});
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   165
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   166
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   167
}, '3.10.3', {"requires": ["series-marker", "series-histogram-base"]});