src/cm/media/js/lib/yui/yui3.0.0/build/queue-promote/queue-promote-debug.js
author Yves-Marie Haussonne <ymh.work+github@gmail.com>
Fri, 09 May 2014 18:35:26 +0200
changeset 656 a84519031134
parent 0 40c8f766c9b8
permissions -rw-r--r--
add link to "privacy policy" in the header test
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     1
/*
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     2
Copyright (c) 2009, Yahoo! Inc. All rights reserved.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     3
Code licensed under the BSD License:
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     4
http://developer.yahoo.net/yui/license.txt
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     5
version: 3.0.0
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     6
build: 1549
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     7
*/
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     8
YUI.add('queue-promote', function(Y) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     9
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    10
/**
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    11
 * Adds methods promote, remove, and indexOf to Queue instances.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    12
 *
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    13
 * @module queue-promote
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    14
 * @for Queue
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    15
 */
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    16
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    17
Y.mix(Y.Queue.prototype, {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    18
    /**
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    19
     * Returns the current index in the queue of the specified item
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    20
     * 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    21
     * @method indexOf
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    22
     * @param needle {MIXED} the item to search for
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    23
     * @return {Number} the index of the item or -1 if not found
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    24
     */
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    25
    indexOf : function (callback) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    26
        return Y.Array.indexOf(this._q, callback);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    27
    },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    28
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    29
    /**
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    30
     * Moves the referenced item to the head of the queue
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    31
     *
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    32
     * @method promote
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    33
     * @param item {MIXED} an item in the queue
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    34
     */
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    35
    promote : function (callback) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    36
        var index = this.indexOf(callback);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    37
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    38
        if (index > -1) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    39
            this._q.unshift(this._q.splice(index,1));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    40
        }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    41
    },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    42
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    43
    /**
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    44
     * Removes the referenced item from the queue
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    45
     *
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    46
     * @method remove
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    47
     * @param item {MIXED} an item in the queue
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    48
     */
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    49
    remove : function (callback) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    50
        var index = this.indexOf(callback);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    51
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    52
        if (index > -1) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    53
            this._q.splice(index,1);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    54
        }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    55
    }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    56
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    57
});
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    58
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    59
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    60
}, '3.0.0' ,{requires:['yui-base']});