src/cm/media/js/lib/yui/yui_3.10.3/docs/dd/groups-drag.html
author Yves-Marie Haussonne <ymh.work+github@gmail.com>
Fri, 09 May 2014 18:35:26 +0200
changeset 656 a84519031134
parent 525 89ef5ed3c48b
permissions -rw-r--r--
add link to "privacy policy" in the header test
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
525
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     1
<!DOCTYPE html>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     2
<html lang="en">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     3
<head>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     4
    <meta charset="utf-8">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     5
    <title>Example: Drag - Interaction Groups</title>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     6
    <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=PT+Sans:400,700,400italic,700italic">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     7
    <link rel="stylesheet" href="../../build/cssgrids/cssgrids-min.css">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     8
    <link rel="stylesheet" href="../assets/css/main.css">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     9
    <link rel="stylesheet" href="../assets/vendor/prettify/prettify-min.css">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    10
    <link rel="shortcut icon" type="image/png" href="../assets/favicon.png">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    11
    <script src="../../build/yui/yui-min.js"></script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    12
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    13
</head>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    14
<body>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    15
<!--
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    16
<a href="https://github.com/yui/yui3"><img style="position: absolute; top: 0; right: 0; border: 0;" src="https://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png" alt="Fork me on GitHub"></a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    17
-->
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    18
<div id="doc">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    19
    <div id="hd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    20
        <h1><img src="http://yuilibrary.com/img/yui-logo.png"></h1>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    21
    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    22
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    23
        <a href="#toc" class="jump">Jump to Table of Contents</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    24
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    25
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    26
            <h1>Example: Drag - Interaction Groups</h1>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    27
    <div class="yui3-g">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    28
        <div class="yui3-u-3-4">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    29
            <div id="main">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    30
                <div class="content"><div class="intro">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    31
<p>This example shows a simple drag interaction that doesn't require a drop interaction.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    32
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    33
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    34
<div class="example">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    35
    <style>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    36
    .slot {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    37
        border: 2px solid #808080;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    38
        background-color: #CDCDCD;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    39
        color: #666666;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    40
        text-align: center;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    41
        position: relative;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    42
        float: left;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    43
        margin: 4px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    44
        width: 60px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    45
        height: 60px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    46
        z-index: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    47
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    48
.player {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    49
        border: 2px solid #808080;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    50
        color: #ffffff;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    51
        text-align: center;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    52
        position: relative;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    53
        float: left;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    54
        margin: 4px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    55
        width: 60px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    56
        height: 60px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    57
        top: 150px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    58
        z-index: 1;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    59
        cursor: move;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    60
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    61
#pt1 {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    62
        clear: both;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    63
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    64
.bottom {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    65
        top: 50px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    66
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    67
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    68
#pt1, #pt2 {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    69
        background-color: #71241A;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    70
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    71
#pb1, #pb2 {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    72
        background-color: #004C6D;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    73
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    74
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    75
#pboth1, #pboth2 {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    76
        background-color: #FFA928;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    77
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    78
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    79
#workarea {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    80
        position: relative;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    81
        height: 300px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    82
        width: 500px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    83
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    84
#workarea .yui3-dd-drop-active-valid {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    85
        border: 2px solid green;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    86
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    87
#workarea .yui3-dd-drop-over {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    88
        background-color: green;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    89
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    90
#workarea .yui3-dd-drop-active-invalid {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    91
        border: 2px solid red;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    92
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    93
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    94
</style>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    95
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    96
<div id="workarea">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    97
        <div class="slot" id="t1">1</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    98
        <div class="slot bottom" id="b1">3</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    99
        <div class="slot bottom" id="b2">4</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   100
        <div class="slot bottom" id="b3">5</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   101
        <div class="slot bottom" id="b4">6</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   102
        <div class="slot" id="t2">2</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   103
        <div class="player" id="pt1">1</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   104
        <div class="player" id="pt2">2</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   105
        <div class="player" id="pb1">3</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   106
        <div class="player" id="pb2">4</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   107
        <div class="player" id="pboth1">5</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   108
        <div class="player" id="pboth2">6</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   109
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   110
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   111
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   112
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   113
<script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   114
    YUI().use('dd-drop', 'dd-proxy', 'dd-constrain', function(Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   115
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   116
        var slots = Y.one('#workarea').all('.slot');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   117
        Y.each(slots, function(v, k) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   118
            var id = v.get('id'), groups = ['two'];
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   119
            switch (id) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   120
                case 't1':
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   121
                case 't2':
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   122
                    groups = ['one'];
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   123
                    break;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   124
            }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   125
            var drop = new Y.DD.Drop({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   126
                node: v,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   127
                groups: groups
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   128
            });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   129
        });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   130
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   131
        var players = Y.one('#workarea').all('.player');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   132
        Y.each(players, function(v, k) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   133
            var id = v.get('id'), groups = ['one', 'two'];
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   134
            switch (id) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   135
                case 'pt1':
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   136
                case 'pt2':
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   137
                    groups = ['one'];
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   138
                    break;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   139
                case 'pb1':
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   140
                case 'pb2':
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   141
                    groups = ['two'];
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   142
                    break;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   143
            }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   144
            var drag = new Y.DD.Drag({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   145
                node: v,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   146
                groups: groups
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   147
            }).plug(Y.Plugin.DDProxy, {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   148
                moveOnEnd: false
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   149
            }).plug(Y.Plugin.DDConstrained, {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   150
                constrain2node: '#workarea'
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   151
            });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   152
            drag.on('drag:start', function() {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   153
                var p = this.get('dragNode'),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   154
                    n = this.get('node');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   155
                    n.setStyle('opacity', .25);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   156
                    if (!this._playerStart) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   157
                        this._playerStart = this.nodeXY;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   158
                    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   159
                p.set('innerHTML', n.get('innerHTML'));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   160
                p.setStyles({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   161
                    backgroundColor: n.getStyle('backgroundColor'),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   162
                    color: n.getStyle('color'),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   163
                    opacity: .65
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
            drag.on('drag:end', function() {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   167
                var n = this.get('node');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   168
                n.setStyle('opacity', '1');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   169
            });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   170
            drag.on('drag:drophit', function(e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   171
                var xy = e.drop.get('node').getXY();
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   172
                this.get('node').setXY(xy, Y.UA.ie);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   173
            });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   174
            drag.on('drag:dropmiss', function(e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   175
                if (this._playerStart) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   176
                    this.get('node').setXY(this._playerStart, Y.UA.ie);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   177
                    this._playerStart = null;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   178
                }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   179
            });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   180
        });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   181
});
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   182
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   183
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   184
</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   185
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   186
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   187
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   188
<h3 id="setting-up-the-work-area">Setting up the Work Area</h3>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   189
<p>First we need to create the work area, players (drags) and slots (drops).</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   190
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   191
<pre class="code prettyprint">&lt;div id=&quot;workarea&quot;&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   192
    &lt;div class=&quot;slot&quot; id=&quot;t1&quot;&gt;1&lt;&#x2F;div&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   193
    &lt;div class=&quot;slot bottom&quot; id=&quot;b1&quot;&gt;3&lt;&#x2F;div&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   194
    &lt;div class=&quot;slot bottom&quot; id=&quot;b2&quot;&gt;4&lt;&#x2F;div&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   195
    &lt;div class=&quot;slot bottom&quot; id=&quot;b3&quot;&gt;5&lt;&#x2F;div&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   196
    &lt;div class=&quot;slot bottom&quot; id=&quot;b4&quot;&gt;6&lt;&#x2F;div&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   197
    &lt;div class=&quot;slot&quot; id=&quot;t2&quot;&gt;2&lt;&#x2F;div&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   198
    &lt;div class=&quot;player&quot; id=&quot;pt1&quot;&gt;1&lt;&#x2F;div&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   199
    &lt;div class=&quot;player&quot; id=&quot;pt2&quot;&gt;2&lt;&#x2F;div&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   200
    &lt;div class=&quot;player&quot; id=&quot;pb1&quot;&gt;3&lt;&#x2F;div&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   201
    &lt;div class=&quot;player&quot; id=&quot;pb2&quot;&gt;4&lt;&#x2F;div&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   202
    &lt;div class=&quot;player&quot; id=&quot;pboth1&quot;&gt;5&lt;&#x2F;div&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   203
    &lt;div class=&quot;player&quot; id=&quot;pboth2&quot;&gt;6&lt;&#x2F;div&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   204
&lt;&#x2F;div&gt;</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   205
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   206
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   207
<p>Now we give them some CSS to make them visible.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   208
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   209
<pre class="code prettyprint">.slot {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   210
    border: 2px solid #808080;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   211
    background-color: #CDCDCD;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   212
    color: #666666;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   213
    text-align: center;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   214
    position: relative;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   215
    float: left;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   216
    margin: 4px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   217
    width: 60px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   218
    height: 60px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   219
    z-index: 0;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   220
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   221
.player {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   222
    border: 2px solid #808080;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   223
    color: #ffffff;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   224
    text-align: center;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   225
    position: relative;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   226
    float: left;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   227
    margin: 4px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   228
    width: 60px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   229
    height: 60px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   230
    top: 150px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   231
    z-index: 1;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   232
    cursor: move;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   233
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   234
#pt1 {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   235
    clear: both;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   236
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   237
.bottom {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   238
    top: 50px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   239
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   240
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   241
#pt1, #pt2 {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   242
    background-color: #71241A;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   243
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   244
#pb1, #pb2 {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   245
    background-color: #004C6D;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   246
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   247
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   248
#pboth1, #pboth2 {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   249
    background-color: #FFA928;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   250
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   251
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   252
#workarea {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   253
    position: relative;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   254
    height: 300px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   255
    width: 500px;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   256
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   257
#workarea .yui3-dd-drop-active-valid {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   258
    border: 2px solid green;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   259
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   260
#workarea .yui3-dd-drop-over {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   261
    background-color: green;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   262
}
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   263
#workarea .yui3-dd-drop-active-invalid {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   264
    border: 2px solid red;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   265
}</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   266
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   267
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   268
<h4 id="setting-up-the-yui-instance">Setting up the YUI Instance</h4>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   269
<p>Now we need to create our YUI instance and tell it to load the <code>dd-drop</code>, <code>dd-proxy</code> and <code>dd-constrain</code> modules.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   270
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   271
<pre class="code prettyprint">YUI().use(&#x27;dd-drop&#x27;, &#x27;dd-proxy&#x27;, &#x27;dd-constrain&#x27;);</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   272
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   273
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   274
<h4 id="setting-up-the-drop-targets">Setting up the Drop Targets</h4>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   275
<p>Now that we have a YUI instance with the requested modules, we are going to create our Drop Targets.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   276
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   277
<pre class="code prettyprint">YUI().use(&#x27;dd-drop&#x27;, &#x27;dd-proxy&#x27;, &#x27;dd-constrain&#x27;, function(Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   278
    &#x2F;&#x2F;Get all the nodes with the class of .slot under #workarea
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   279
    var slots = Y.one(&#x27;#workarea&#x27;).all(&#x27;.slot&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   280
    &#x2F;&#x2F;Loop through them
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   281
    Y.each(slots, function(v, k) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   282
        var id = v.get(&#x27;id&#x27;), groups = [&#x27;two&#x27;];
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   283
        &#x2F;&#x2F;Assign them to different groups
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   284
        switch (id) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   285
            case &#x27;t1&#x27;:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   286
            case &#x27;t2&#x27;:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   287
                groups = [&#x27;one&#x27;];
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   288
                break;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   289
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   290
        &#x2F;&#x2F;Create the Drop object
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   291
        var drop = new Y.DD.Drop({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   292
            node: v,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   293
            &#x2F;&#x2F;With the new groups array as a config option
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   294
            groups: groups
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   295
        });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   296
    });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   297
});</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   298
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   299
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   300
<h4 id="setting-up-the-drag-nodes">Setting up the Drag Nodes</h4>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   301
<p>Now we need to create the Drag Nodes and assign them to the proper group.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   302
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   303
<pre class="code prettyprint">YUI().use(&#x27;dd-drop&#x27;, &#x27;dd-proxy&#x27;, &#x27;dd-constrain&#x27;, function(Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   304
    &#x2F;&#x2F;Snipped
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   305
    var players = Y.one(&#x27;#workarea&#x27;).all(&#x27;.player&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   306
    Y.each(players, function(v, k) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   307
        var id = v.get(&#x27;id&#x27;), groups = [&#x27;one&#x27;, &#x27;two&#x27;];
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   308
        switch (id) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   309
            case &#x27;pt1&#x27;:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   310
            case &#x27;pt2&#x27;:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   311
                groups = [&#x27;one&#x27;];
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   312
                break;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   313
            case &#x27;pb1&#x27;:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   314
            case &#x27;pb2&#x27;:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   315
                groups = [&#x27;two&#x27;];
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   316
                break;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   317
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   318
        var drag = new Y.DD.Drag({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   319
            node: v,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   320
            &#x2F;&#x2F;Assign the Groups
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   321
            groups: groups,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   322
            &#x2F;&#x2F;Use Intersect Mode for the Target Calculations
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   323
            dragMode: &#x27;intersect&#x27;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   324
        }).plug(Y.Plugin.DDProxy, {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   325
            &#x2F;&#x2F;We don&#x27;t want the node to move on end drag
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   326
            moveOnEnd: false
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   327
        }).plug(Y.Plugin.DDConstrained, {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   328
            &#x2F;&#x2F;Keep me inside the workarea
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   329
            constrain2node: &#x27;#workarea&#x27;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   330
        });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   331
});</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   332
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   333
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   334
<h4 id="handling-the-drops-and-moments">Handling the Drops and Moments</h4>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   335
<p>Now we are going to listen for the following Drag Events: <code>drag:start, drag:end, drag:drophit, drag:dropmiss</code></p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   336
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   337
<pre class="code prettyprint">drag.on(&#x27;drag:start&#x27;, function() {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   338
    &#x2F;&#x2F;In this event we setup some styles to make the nodes look pretty
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   339
    var p = this.get(&#x27;dragNode&#x27;),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   340
        n = this.get(&#x27;node&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   341
        n.setStyle(&#x27;opacity&#x27;, .25);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   342
        if (!this._playerStart) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   343
            this._playerStart = this.nodeXY;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   344
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   345
    &#x2F;&#x2F;Put the Drag&#x27;s HTML inside the proxy
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   346
    p.set(&#x27;innerHTML&#x27;, n.get(&#x27;innerHTML&#x27;));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   347
    &#x2F;&#x2F;set some styles on the proxy
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   348
    p.setStyles({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   349
        backgroundColor: n.getStyle(&#x27;backgroundColor&#x27;),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   350
        color: n.getStyle(&#x27;color&#x27;),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   351
        opacity: .65
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   352
    });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   353
});
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   354
drag.on(&#x27;drag:end&#x27;, function() {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   355
    &#x2F;&#x2F;Undo some of the styles from the start
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   356
    var n = this.get(&#x27;node&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   357
    n.setStyle(&#x27;opacity&#x27;, &#x27;1&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   358
});
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   359
drag.on(&#x27;drag:drophit&#x27;, function(e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   360
    &#x2F;&#x2F;If we drop on a target, move to its position
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   361
    var xy = e.drop.get(&#x27;node&#x27;).getXY();
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   362
    this.get(&#x27;node&#x27;).setXY(xy);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   363
});
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   364
drag.on(&#x27;drag:dropmiss&#x27;, function(e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   365
    &#x2F;&#x2F;If we miss a target, move back to our start position
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   366
    if (this._playerStart) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   367
        this.get(&#x27;node&#x27;).setXY(this._playerStart);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   368
        this._playerStart = null;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   369
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   370
});</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   371
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   372
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   373
<h4 id="full-javascript-code">Full Javascript Code</h4>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   374
<pre class="code prettyprint">YUI().use(&#x27;dd-drop&#x27;, &#x27;dd-proxy&#x27;, &#x27;dd-constrain&#x27;, function(Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   375
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   376
    var slots = Y.one(&#x27;#workarea&#x27;).all(&#x27;.slot&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   377
    Y.each(slots, function(v, k) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   378
        var id = v.get(&#x27;id&#x27;), groups = [&#x27;two&#x27;];
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   379
        switch (id) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   380
            case &#x27;t1&#x27;:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   381
            case &#x27;t2&#x27;:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   382
                groups = [&#x27;one&#x27;];
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   383
                break;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   384
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   385
        var drop = new Y.DD.Drop({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   386
            node: v,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   387
            groups: groups
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   388
        });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   389
    });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   390
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   391
    var players = Y.one(&#x27;#workarea&#x27;).all(&#x27;.player&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   392
    Y.each(players, function(v, k) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   393
        var id = v.get(&#x27;id&#x27;), groups = [&#x27;one&#x27;, &#x27;two&#x27;];
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   394
        switch (id) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   395
            case &#x27;pt1&#x27;:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   396
            case &#x27;pt2&#x27;:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   397
                groups = [&#x27;one&#x27;];
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   398
                break;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   399
            case &#x27;pb1&#x27;:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   400
            case &#x27;pb2&#x27;:
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   401
                groups = [&#x27;two&#x27;];
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   402
                break;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   403
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   404
        var drag = new Y.DD.Drag({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   405
            node: v,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   406
            groups: groups
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   407
        }).plug(Y.Plugin.DDProxy, {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   408
            moveOnEnd: false
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   409
        }).plug(Y.Plugin.DDConstrained, {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   410
            constrain2node: &#x27;#workarea&#x27;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   411
        });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   412
        drag.on(&#x27;drag:start&#x27;, function() {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   413
            var p = this.get(&#x27;dragNode&#x27;),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   414
                n = this.get(&#x27;node&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   415
                n.setStyle(&#x27;opacity&#x27;, .25);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   416
                if (!this._playerStart) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   417
                    this._playerStart = this.nodeXY;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   418
                }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   419
            p.set(&#x27;innerHTML&#x27;, n.get(&#x27;innerHTML&#x27;));
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   420
            p.setStyles({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   421
                backgroundColor: n.getStyle(&#x27;backgroundColor&#x27;),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   422
                color: n.getStyle(&#x27;color&#x27;),
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   423
                opacity: .65
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   424
            });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   425
        });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   426
        drag.on(&#x27;drag:end&#x27;, function() {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   427
            var n = this.get(&#x27;node&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   428
            n.setStyle(&#x27;opacity&#x27;, &#x27;1&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   429
        });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   430
        drag.on(&#x27;drag:drophit&#x27;, function(e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   431
            var xy = e.drop.get(&#x27;node&#x27;).getXY();
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   432
            this.get(&#x27;node&#x27;).setXY(xy, Y.UA.ie);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   433
        });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   434
        drag.on(&#x27;drag:dropmiss&#x27;, function(e) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   435
            if (this._playerStart) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   436
                this.get(&#x27;node&#x27;).setXY(this._playerStart, Y.UA.ie);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   437
                this._playerStart = null;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   438
            }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   439
        });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   440
    });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   441
});</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   442
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   443
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   444
            </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   445
        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   446
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   447
        <div class="yui3-u-1-4">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   448
            <div class="sidebar">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   449
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   450
                    <div id="toc" class="sidebox">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   451
                        <div class="hd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   452
                            <h2 class="no-toc">Table of Contents</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   453
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   454
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   455
                        <div class="bd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   456
                            <ul class="toc">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   457
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   458
<a href="#setting-up-the-work-area">Setting up the Work Area</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   459
<ul class="toc">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   460
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   461
<a href="#setting-up-the-yui-instance">Setting up the YUI Instance</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   462
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   463
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   464
<a href="#setting-up-the-drop-targets">Setting up the Drop Targets</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   465
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   466
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   467
<a href="#setting-up-the-drag-nodes">Setting up the Drag Nodes</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   468
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   469
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   470
<a href="#handling-the-drops-and-moments">Handling the Drops and Moments</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   471
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   472
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   473
<a href="#full-javascript-code">Full Javascript Code</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   474
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   475
</ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   476
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   477
</ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   478
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   479
                    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   480
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   481
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   482
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   483
                    <div class="sidebox">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   484
                        <div class="hd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   485
                            <h2 class="no-toc">Examples</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   486
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   487
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   488
                        <div class="bd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   489
                            <ul class="examples">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   490
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   491
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   492
                                        <li data-description="A simple drag interaction that doesn&#x27;t require a drop interaction.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   493
                                            <a href="simple-drag.html">Simple Drag</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   494
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   495
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   496
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   497
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   498
                                        <li data-description="How to apply the Drag Plugin to a node.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   499
                                            <a href="drag-plugin.html">Drag - Node plugin</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   500
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   501
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   502
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   503
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   504
                                        <li data-description="A simple proxy drag interaction that doesn&#x27;t require a drop interaction.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   505
                                            <a href="proxy-drag.html">Drag - Proxy</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   506
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   507
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   508
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   509
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   510
                                        <li data-description="How to constrain a draggable Node to another Node&#x27;s region.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   511
                                            <a href="constrained-drag.html">Drag - Constrained to a Region</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   512
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   513
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   514
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   515
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   516
                                        <li data-description="Using interaction groups, this example demonstrates how to tie into the Drag &amp; Drop Utility&#x27;s interesting moments to provide visual affordances for the current drag operation.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   517
                                            <a href="groups-drag.html">Drag - Interaction Groups</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   518
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   519
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   520
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   521
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   522
                                        <li data-description="The use of the drag shim when dragging nodes over other troublesome nodes.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   523
                                            <a href="shim-drag.html">Using the Drag Shim</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   524
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   525
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   526
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   527
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   528
                                        <li data-description="How to use the Drop Target events to code your application.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   529
                                            <a href="drop-code.html">Using Drop Based Coding</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   530
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   531
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   532
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   533
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   534
                                        <li data-description="How you can use the DD Scroll plugin to scroll the browser window as you drag.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   535
                                            <a href="winscroll.html">Window Scrolling</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   536
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   537
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   538
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   539
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   540
                                        <li data-description="How to use DD.Delegate to create a scalable solution which supports multiple draggable items.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   541
                                            <a href="delegate.html">Drag Delegation</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   542
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   543
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   544
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   545
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   546
                                        <li data-description="Using DD.Delegate to support dragging multiple items and dropping them onto a Drop Target.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   547
                                            <a href="delegate-drop.html">Drag Delegation with a Drop Target</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   548
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   549
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   550
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   551
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   552
                                        <li data-description="How to use Drag plugins with a DD Delegate based solution.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   553
                                            <a href="delegate-plugins.html">Using Drag Plugins with Delegate</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   554
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   555
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   556
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   557
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   558
                                        <li data-description="This example shows how to make a sortable list using Custom Event Bubbling.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   559
                                            <a href="list-drag.html">List Reorder w/Bubbling</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   560
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   561
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   562
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   563
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   564
                                        <li data-description="This example shows how to make a sortable list using Custom Event Bubbling and Node Scrolling.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   565
                                            <a href="scroll-list.html">List Reorder w/Scrolling</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   566
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   567
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   568
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   569
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   570
                                        <li data-description="How to make an animated node a Drop target.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   571
                                            <a href="anim-drop.html">Animated Drop Targets</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   572
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   573
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   574
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   575
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   576
                                        <li data-description="Example Photo Browser application.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   577
                                            <a href="photo-browser.html">Photo Browser</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   578
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   579
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   580
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   581
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   582
                                        <li data-description="Portal style example using Drag &amp; Drop Event Bubbling and Animation.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   583
                                            <a href="portal-drag.html">Portal Style Example</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   584
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   585
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   586
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   587
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   588
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   589
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   590
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   591
                            </ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   592
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   593
                    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   594
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   595
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   596
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   597
                    <div class="sidebox">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   598
                        <div class="hd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   599
                            <h2 class="no-toc">Examples That Use This Component</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   600
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   601
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   602
                        <div class="bd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   603
                            <ul class="examples">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   604
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   605
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   606
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   607
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   608
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   609
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   610
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   611
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   612
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   613
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   614
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   615
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   616
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   617
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   618
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   619
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   620
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   621
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   622
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   623
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   624
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   625
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   626
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   627
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   628
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   629
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   630
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   631
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   632
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   633
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   634
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   635
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   636
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   637
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   638
                                        <li data-description="Working with multiple YUI instances.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   639
                                            <a href="../yui/yui-multi.html">Multiple Instances</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   640
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   641
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   642
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   643
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   644
                                        <li data-description="Use StyleSheet to adjust the CSS rules applying a page theme from user input">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   645
                                            <a href="../stylesheet/stylesheet-theme.html">Adjusting a Page Theme on the Fly</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   646
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   647
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   648
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   649
                            </ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   650
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   651
                    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   652
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   653
            </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   654
        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   655
    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   656
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   657
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   658
<script src="../assets/vendor/prettify/prettify-min.js"></script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   659
<script>prettyPrint();</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   660
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   661
<script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   662
YUI.Env.Tests = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   663
    examples: [],
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   664
    project: '../assets',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   665
    assets: '../assets/dd',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   666
    name: 'groups-drag',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   667
    title: 'Drag - Interaction Groups',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   668
    newWindow: '',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   669
    auto:  false 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   670
};
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   671
YUI.Env.Tests.examples.push('simple-drag');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   672
YUI.Env.Tests.examples.push('drag-plugin');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   673
YUI.Env.Tests.examples.push('proxy-drag');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   674
YUI.Env.Tests.examples.push('constrained-drag');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   675
YUI.Env.Tests.examples.push('groups-drag');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   676
YUI.Env.Tests.examples.push('shim-drag');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   677
YUI.Env.Tests.examples.push('drop-code');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   678
YUI.Env.Tests.examples.push('winscroll');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   679
YUI.Env.Tests.examples.push('delegate');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   680
YUI.Env.Tests.examples.push('delegate-drop');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   681
YUI.Env.Tests.examples.push('delegate-plugins');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   682
YUI.Env.Tests.examples.push('list-drag');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   683
YUI.Env.Tests.examples.push('scroll-list');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   684
YUI.Env.Tests.examples.push('anim-drop');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   685
YUI.Env.Tests.examples.push('photo-browser');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   686
YUI.Env.Tests.examples.push('portal-drag');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   687
YUI.Env.Tests.examples.push('yui-multi');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   688
YUI.Env.Tests.examples.push('stylesheet-theme');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   689
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   690
</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   691
<script src="../assets/yui/test-runner.js"></script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   692
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   693
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   694
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   695
</body>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   696
</html>