src/cm/media/js/lib/yui/yui3-3.15.0/build/datatable-foot/datatable-foot-debug.js
author gibus
Mon, 10 Mar 2014 15:19:48 +0100
changeset 602 e16a97fb364a
permissions -rw-r--r--
Use YUI 3.15
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
602
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     1
YUI.add('datatable-foot', function (Y, NAME) {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     2
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     3
/**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     4
View class responsible for rendering the `<tfoot>` section of a table. Can be
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     5
used as the default `footerView` for `Y.DataTable.Base` and `Y.DataTable`
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     6
classes.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     7
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     8
@module datatable
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     9
@submodule datatable-foot
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    10
@since 3.11.0
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    11
**/
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    12
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    13
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    14
Y.namespace('DataTable').FooterView = Y.Base.create('tableFooter', Y.View, [], {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    15
    // -- Instance properties -------------------------------------------------
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    16
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    17
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    18
    HTML templates used to create the `<tfoot>` containing the table footers.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    19
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    20
    @property TFOOT_TEMPLATE
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    21
    @type {String}
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    22
    @default '<tfoot class="{className}"/>'
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    23
    @since 3.11.0
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    24
    **/
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    25
    TFOOT_TEMPLATE: '<tfoot class="{className}"/>',
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    26
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    27
    // -- Public methods ------------------------------------------------------
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    28
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    29
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    30
    Returns the generated CSS classname based on the input.  If the `host`
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    31
    attribute is configured, it will attempt to relay to its `getClassName`
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    32
    or use its static `NAME` property as a string base.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    33
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    34
    If `host` is absent or has neither method nor `NAME`, a CSS classname
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    35
    will be generated using this class's `NAME`.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    36
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    37
    @method getClassName
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    38
    @param {String} token* Any number of token strings to assemble the
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    39
        classname from.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    40
    @return {String}
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    41
    @protected
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    42
    @since 3.11.0
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    43
    **/
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    44
    getClassName: function () {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    45
        // TODO: add attribute with setter? to host to use property this.host
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    46
        // for performance
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    47
        var host = this.host,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    48
            NAME = (host && host.constructor.NAME) ||
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    49
                    this.constructor.NAME;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    50
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    51
        if (host && host.getClassName) {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    52
            return host.getClassName.apply(host, arguments);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    53
        } else {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    54
            return Y.ClassNameManager.getClassName
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    55
                .apply(Y.ClassNameManager,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    56
                       [NAME].concat(Y.Array(arguments, 0, true)));
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    57
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    58
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    59
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    60
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    61
    Creates the `<tfoot>` Node and inserts it after the `<thead>` Node.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    62
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    63
    @method render
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    64
    @return {FooterView} The instance
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    65
    @chainable
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    66
    @since 3.11.0
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    67
    **/
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    68
    render: function () {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    69
        var tfoot    = this.tfootNode ||
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    70
                        (this.tfootNode = this._createTFootNode());
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    71
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    72
        if (this.host && this.host._theadNode) {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    73
            this.host._theadNode.insert(tfoot, 'after');
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    74
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    75
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    76
        return this;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    77
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    78
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    79
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    80
    Creates the `<tfoot>` node that will store the footer rows and cells.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    81
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    82
    @method _createTFootNode
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    83
    @return {Node}
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    84
    @protected
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    85
    @since 3.11.0
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    86
    **/
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    87
    _createTFootNode: function () {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    88
        return Y.Node.create(Y.Lang.sub(this.TFOOT_TEMPLATE, {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    89
            className: this.getClassName('foot')
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    90
        }));
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    91
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    92
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    93
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    94
    Initializes the instance. Reads the following configuration properties:
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    95
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    96
      * `host`    - The object to serve as source of truth for column info
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    97
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    98
    @method initializer
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    99
    @param {Object} config Configuration data
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   100
    @protected
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   101
    @since 3.11.0
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   102
    **/
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   103
    initializer: function (config) {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   104
        this.host  = (config && config.host);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   105
    }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   106
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   107
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   108
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   109
});
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   110
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   111
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   112
}, '@VERSION@', {"requires": ["datatable-core", "view"]});