src/cm/media/js/lib/yui/yui_3.0.0b1/examples/dd/photo-browser.html
author raph
Thu, 10 Dec 2009 15:07:25 +0100
changeset 42 82f6e2879e0a
parent 0 40c8f766c9b8
permissions -rw-r--r--
add tag filter to text share page
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
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     3
<html>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     4
<head>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     5
	<title>YUI Library Examples: Drag &amp; Drop: Photo Browser</title>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     6
    <meta http-equiv="content-type" content="text/html; charset=utf-8">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     7
    	<link rel="stylesheet" type="text/css" href="../../assets/yui.css" >
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     8
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     9
<style>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    10
    /*Supplemental CSS for the YUI distribution*/
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    11
    #custom-doc { width: 95%; min-width: 950px; }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    12
    #pagetitle {background-image: url(../../assets/bg_hd.gif);}
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    13
/*    #pagetitle h1 {background-image: url(../../assets/title_h_bg.gif);}*/
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    14
</style>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    15
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    16
<link rel="stylesheet" type="text/css" href="../../assets/dpSyntaxHighlighter.css">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    17
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    18
<!--there is no custom header content for this example-->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    19
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    20
<link type="text/css" rel="stylesheet" href="../../build/cssfonts/fonts-min.css" />
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    21
<script type="text/javascript" src="../../build/yui/yui-min.js"></script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    22
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    23
</head>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    24
<body id="yahoo-com" class=" yui-skin-sam">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    25
<div id="custom-doc" class="yui-t2">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    26
<div id="hd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    27
	<div id="ygunav">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    28
		<p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    29
            <em>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    30
                <a href="http://developer.yahoo.com/yui/3/">YUI 3.x Home</a> <i> - </i>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    31
            </em>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    32
		</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    33
		<form action="http://search.yahoo.com/search" id="sitesearchform">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    34
            <input name="vs" type="hidden" value="developer.yahoo.com">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    35
            <input name="vs" type="hidden" value="yuiblog.com">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    36
		    <div id="sitesearch">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    37
		    	<label for="searchinput">Site Search (YDN &amp; YUIBlog): </label>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    38
			    <input type="text" id="searchinput" name="p">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    39
			    <input type="submit" value="Search" id="searchsubmit" class="ygbt">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    40
		    </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    41
		</form>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    42
    </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    43
	<div id="ygma"><a href="../../"><img src="../../assets/logo.gif"  border="0" width="200" height="93"></a></div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    44
	<div id="pagetitle"><h1>YUI Library Examples: Drag &amp; Drop: Photo Browser</h1></div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    45
</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    46
<div id="bd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    47
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    48
	<div id="bar-note"><p><strong>Note:</strong> This is YUI 3.x. Looking for <a href="http://developer.yahoo.com/yui/">YUI 2.x</a>?</p></div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    49
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    50
	<div id="yui-main">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    51
		<div class="yui-b">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    52
		  <div class="yui-ge">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    53
			  <div class="yui-u first example" id="main">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    54
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    55
	<h2>Drag &amp; Drop: Photo Browser</h2>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    56
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    57
	<div id="example" class="promo">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    58
	<p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    59
	<p>Photo Browser built with YUI3 and <a href="http://developer.yahoo.com/yql/">YQL</a>. This example was part of the YUI3 presentation by <a href="http://blog.davglass.com/">Dav Glass</a> at <a href="http://openhacklondon.pbworks.com/">Open Hack : London</a></p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    60
	</p>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    61
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    62
	<div class="module example-container  newWindow">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    63
			<div id="example-canvas" class="bd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    64
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    65
		<p class="newWindowButton yui-skin-sam">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    66
        <span id="newWindowLink">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    67
            <span class="first-child">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    68
                <a href="photo-browser_source.html" target="_blank">View example in new window.</a>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    69
            </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    70
        </span>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    71
    </p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    72
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    73
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    74
		</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    75
	</div>			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    76
	</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    77
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    78
	<h3>YQL</h3>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    79
<p>This example uses the YQL YUI3 plugin: <a href="http://github.com/davglass/yui-yql">http://github.com/davglass/yui-yql</a></p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    80
<p>Here is the Flickr YQL query used in this example.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    81
<textarea name="code" class="JScript">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    82
SELECT * FROM flickr.photos.search(100) WHERE 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    83
   (text="openhacklondon") 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    84
   AND (safe_search = 1) 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    85
   AND (media = "photos") 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    86
   AND (extras = "o_dims") 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    87
   AND (
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    88
       (o_width = "1600" AND o_height = "1200")
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    89
     OR (o_width = "1200" AND o_height = "1600")
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    90
     OR (o_width = "800" AND o_height = "600")
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    91
   )
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    92
</textarea>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    93
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    94
<h3>Slider and StyleSheet</h3>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    95
<p>In this example, we will use the Slider control to dynamically manipulate a CSS Style Rule.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    96
<p>First, we need to create the slider and render it.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    97
<textarea name="code" class="JScript">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    98
//Create and render the slider
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    99
var sl = new Y.Slider({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   100
    railSize: '200px', value: 40, max: 70, min: 5,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   101
    thumbImage: assetsDir + 'css/thumb-classic-x.png'
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   102
}).render('.horiz_slider');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   103
</textarea>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   104
<p>Now, we listen for the Slider's <code>valueChange</code> event. This event is fired when the value of the Slider has changed.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   105
<p>Next we use the StyleSheet utility to dynamically change a style rule to resize the images.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   106
The style rule that we want to change is <code>#yui-main .yui-g ul li</code>. When the Slider's value changes, we will take the value and divide it by 2, then use that as the percentage width of the li. 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   107
This will give us the effect we want (resizing images) without touching all the images via the DOM.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   108
</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   109
<textarea name="code" class="JScript">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   110
//Listen for the change
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   111
sl.after('valueChange',function (e) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   112
    //Insert a dynamic stylesheet rule:
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   113
    var sheet = new Y.StyleSheet('image_slider');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   114
    sheet.set('#yui-main .yui-g ul li', {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   115
        width: (e.newVal / 2) + '%'
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   116
    });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   117
});
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   118
</textarea>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   119
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   120
<h3>Event Delegation</h3>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   121
<p>This listener listens for all <code>mouseup</code> events on the <code>document</code> and it will only fire when the target element matches the <code>*</code> selector (which should be all elements).</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   122
<p>This way we can remove all the <code>selected</code> CSS classes from all the images in the browser when a <code>mouseup</code> occurs, only if the shift key was not pressed. We can then check to determine if the mouseup came from one of the images. If it has, add the selected class back to it.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   123
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   124
<textarea name="code" class="JScript">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   125
//Listen for all mouseups on the document (selecting/deselecting images)
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   126
Y.on('delegate', function(e) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   127
    if (!e.shiftKey) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   128
        //No shift key - remove all selected images
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   129
        wrapper.queryAll('img.selected').removeClass('selected');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   130
    }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   131
    //Check if the target is an image and select it.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   132
    if (e.target.test('#yui-main .yui-g ul li img')) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   133
        e.target.addClass('selected');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   134
    }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   135
}, document, 'mouseup', '*');    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   136
</textarea>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   137
<p>This listener, listens for all <code>click</code> events on the album list <code>#photoList li</code>. 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   138
First, it stops the click, so the href is not followed. Next, it removes all the <code>selected</code> classes from the list. Then, it adds the <code>selected</code> class to the item that was clicked on.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   139
<p>After that UI setup, it uses Selectors to change the view of the images in the browser. 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   140
First, it checks if we are viewing "all" or a "sub album". If all is selected, it removes the <code>hidden</code> class from all the images.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   141
If it was an album, it adds the <code>hidden</code> class to all the images, then selects all the images with the class of its <code>id</code>, then it removes the hidden class from them.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   142
</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   143
<p>Basically, it hides all the images, then determines the ones it needs to show and removes the <code>hidden</code> class from them.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   144
<textarea name="code" class="JScript">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   145
//Listen for all clicks on the '#photoList li' selector
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   146
Y.on('delegate', function(e) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   147
    //Prevent the click
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   148
    e.halt();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   149
    //Remove all the selected items
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   150
    e.currentTarget.get('parentNode').queryAll('li.selected').removeClass('selected');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   151
    //Add the selected class to the one that one clicked
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   152
    e.currentTarget.addClass('selected');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   153
    //The "All Photos" link was clicked
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   154
    if (e.currentTarget.hasClass('all')) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   155
        //Remove all the hidden classes
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   156
        wrapper.queryAll('li').removeClass('hidden');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   157
    } else {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   158
        //Another "album" was clicked, get its id
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   159
        var c = e.target.get('id');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   160
        //Hide all items by adding the hidden class
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   161
        wrapper.queryAll('li').addClass('hidden');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   162
        //Now, find all the items with the class name the same as the album id
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   163
        //and remove the hidden class
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   164
        wrapper.queryAll('li.' + c).removeClass('hidden');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   165
    }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   166
}, document, 'click', '#photoList li');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   167
</textarea>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   168
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   169
<h3>Full Source</h3>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   170
<p>Here is the full commented JavaScript source for this example.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   171
<textarea name="code" class="JScript">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   172
YUI(yuiConfig).use('node', 'anim', 'dd', 'yql', 'slider', 'stylesheet', function(Y) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   173
    //Get a reference to the wrapper to use later and add a loading class to it.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   174
    var wrapper = Y.get('#yui-main .yui-g ul').addClass('loading');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   175
    //Set its height to the height of the viewport so we can scroll it.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   176
    wrapper.setStyle('height', (wrapper.get('winHeight') - 50 )+ 'px');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   177
    Y.on('windowresize', function() { wrapper.setStyle('height', (wrapper.get('winHeight') - 50 )+ 'px'); });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   178
    //Make the YQL query.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   179
    new Y.yql('select * from flickr.photos.search(100) where text="openhacklondon" and safe_search = 1 and media = "photos" and extras = "o_dims" and ((o_width = "1600" and o_height = "1200") or (o_width = "1200" and o_height = "1600") or (o_width = "800" and o_height = "600") or (o_width = "600" and o_height = "800"))', function(e) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   180
        if (e.query) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   181
            var photos = e.query.results.photo;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   182
            //Walk the returned photos array
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   183
            Y.each(photos, function(v, k) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   184
                //Create our URL
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   185
                var url = 'http:/'+'/static.flickr.com/' + v.server + '/' + v.id + '_' + v.secret + '_m.jpg',
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   186
                    //Create the image and the LI
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   187
                    li = Y.Node.create('<li class="loading"><img src="' + url + '" title="' + v.title + '"></li>'),
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   188
                    //Get the image from the LI
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   189
                    img = li.get('firstChild');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   190
                //Append the li to the wrapper
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   191
                wrapper.appendChild(li);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   192
                //This little hack moves the tall images to the bottom of the list
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   193
                //So they float better ;)
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   194
                img.on('load', function() {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   195
                    //Is the height longer than the width?
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   196
                    var c = ((this.get('height') > this.get('width')) ? 'tall' : 'wide');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   197
                    this.addClass(c);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   198
                    if (c === 'tall') {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   199
                        //Move it to the end of the list.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   200
                        this.get('parentNode.parentNode').removeChild(this.get('parentNode'));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   201
                        wrapper.appendChild(this.get('parentNode'));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   202
                    }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   203
                    this.get('parentNode').removeClass('loading');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   204
                });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   205
            });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   206
            //Get all the newly added li's
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   207
            wrapper.queryAll('li').each(function(node) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   208
                //Plugin the Drag plugin
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   209
                this.plug(Y.Plugin.Drag, {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   210
                    offsetNode: false
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   211
                });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   212
                //Plug the Proxy into the DD object
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   213
                this.dd.plug(Y.Plugin.DDProxy, {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   214
                    resizeFrame: false,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   215
                    moveOnEnd: false,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   216
                    borderStyle: 'none'
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   217
                });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   218
            });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   219
            //Create and render the slider
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   220
            var sl = new Y.Slider({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   221
                railSize: '200px', value: 40, max: 70, min: 5,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   222
                thumbImage: assetsDir + 'css/thumb-classic-x.png'
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   223
            }).render('.horiz_slider');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   224
            //Listen for the change
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   225
            sl.after('valueChange',function (e) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   226
                //Insert a dynamic stylesheet rule
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   227
                var sheet = new Y.StyleSheet('image_slider');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   228
                sheet.set('#yui-main .yui-g ul li', {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   229
                    width: (e.newVal / 2) + '%'
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   230
                });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   231
            });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   232
            //Remove the DDM as a bubble target..
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   233
            sl._dd.removeTarget(Y.DD.DDM);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   234
            //Remove the wrappers loading class
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   235
            wrapper.removeClass('loading');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   236
            Y.get('#ft').removeClass('loading');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   237
        }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   238
    });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   239
    //Listen for all mouseups on the document (selecting/deselecting images)
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   240
    Y.on('delegate', function(e) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   241
        if (!e.shiftKey) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   242
            //No shift key - remove all selected images
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   243
            wrapper.queryAll('img.selected').removeClass('selected');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   244
        }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   245
        //Check if the target is an image and select it.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   246
        if (e.target.test('#yui-main .yui-g ul li img')) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   247
            e.target.addClass('selected');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   248
        }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   249
    }, document, 'mouseup', '*');    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   250
    //Listen for all clicks on the '#photoList li' selector
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   251
    Y.on('delegate', function(e) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   252
        //Prevent the click
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   253
        e.halt();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   254
        //Remove all the selected items
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   255
        e.currentTarget.get('parentNode').queryAll('li.selected').removeClass('selected');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   256
        //Add the selected class to the one that one clicked
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   257
        e.currentTarget.addClass('selected');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   258
        //The "All Photos" link was clicked
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   259
        if (e.currentTarget.hasClass('all')) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   260
            //Remove all the hidden classes
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   261
            wrapper.queryAll('li').removeClass('hidden');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   262
        } else {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   263
            //Another "album" was clicked, get its id
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   264
            var c = e.currentTarget.get('id');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   265
            //Hide all items by adding the hidden class
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   266
            wrapper.queryAll('li').addClass('hidden');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   267
            //Now, find all the items with the class name the same as the album id
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   268
            //and remove the hidden class
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   269
            wrapper.queryAll('li.' + c).removeClass('hidden');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   270
        }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   271
    }, document, 'click', '#photoList li');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   272
    //Stop the drag with the escape key
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   273
    Y.get(document).on('keypress', function(e) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   274
        //The escape key was pressed
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   275
        if ((e.keyCode === 27) || (e.charCode === 27)) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   276
            //We have an active Drag
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   277
            if (Y.DD.DDM.activeDrag) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   278
                //Stop the drag
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   279
                Y.DD.DDM.activeDrag.stopDrag();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   280
            }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   281
        }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   282
    });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   283
    //On the drag:mouseDown add the selected class
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   284
    Y.DD.DDM.on('drag:mouseDown', function(e) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   285
        e.target.get('node').queryAll('img').addClass('selected');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   286
    });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   287
    //On drag start, get all the selected elements
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   288
    //Add the count to the proxy element and offset it to the cursor.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   289
    Y.DD.DDM.on('drag:start', function(e) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   290
        //How many items are selected
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   291
        var count = wrapper.queryAll('img.selected').size();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   292
        //Set the style on the proxy node
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   293
        e.target.get('dragNode').setStyles({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   294
            height: '25px', width: '25px'
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   295
        }).set('innerHTML', '<span>' + count + '</span>');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   296
        //Offset the dragNode
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   297
        e.target.deltaXY = [25, 5];
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   298
    });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   299
    //We dropped on a drop target
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   300
    Y.DD.DDM.on('drag:drophit', function(e) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   301
        //get the images that are selected.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   302
        var imgs = wrapper.queryAll('img.selected'),
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   303
            //The xy position of the item we dropped on
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   304
            toXY = e.drop.get('node').getXY();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   305
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   306
        imgs.each(function(node) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   307
            //Clone the image, position it on top of the original and animate it to the drop target
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   308
            node.get('parentNode').addClass(e.drop.get('node').get('id'));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   309
            var n = node.cloneNode().set('id', '').setStyle('position', 'absolute');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   310
            Y.get('body').appendChild(n);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   311
            n.setXY(node.getXY());
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   312
            new Y.Anim({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   313
                node: n,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   314
                to: {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   315
                    height: 20, width: 20, opacity: 0,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   316
                    top: toXY[1], left: toXY[0]
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   317
                },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   318
                from: {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   319
                    width: node.get('offsetWidth'),
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   320
                    height: node.get('offsetHeight')
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   321
                },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   322
                duration: .5
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   323
            }).run();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   324
        });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   325
        //Update the count
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   326
        var count = wrapper.queryAll('li.' + e.drop.get('node').get('id')).size();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   327
        e.drop.get('node').query('span').set('innerHTML', '(' + count + ')');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   328
    });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   329
    //Add drop support to the albums
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   330
    Y.all('#photoList li').each(function(node) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   331
        if (!node.hasClass('all')) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   332
            //make all albums Drop Targets except the all photos.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   333
            node.plug(Y.Plugin.Drop);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   334
        }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   335
    });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   336
});
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   337
</textarea>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   338
				</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   339
				<div class="yui-u sidebar">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   340
					
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   341
				
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   342
					<div id="examples" class="mod box4">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   343
                        <div class="hd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   344
						<h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   345
    Drag &amp; Drop Examples:</h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   346
                        </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   347
						<div class="bd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   348
							<ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   349
								<li><a href='../dd/simple-drag.html'>Simple Drag</a></li><li><a href='../dd/drag-plugin.html'>Drag Node Plugin</a></li><li><a href='../dd/proxy-drag.html'>Proxy Drag</a></li><li><a href='../dd/constrained-drag.html'>Drag Constrained to a Region</a></li><li><a href='../dd/groups-drag.html'>Interaction Groups</a></li><li><a href='../dd/shim-drag.html'>Using the Drag Shim</a></li><li><a href='../dd/anim-drop.html'>Animated Drop Targets</a></li><li><a href='../dd/drop-code.html'>Drop Based Coding</a></li><li><a href='../dd/winscroll.html'>Window Scrolling</a></li><li><a href='../dd/list-drag.html'>List reorder w/Bubbling</a></li><li><a href='../dd/scroll-list.html'>List reorder w/Scrolling</a></li><li><a href='../dd/portal-drag.html'>Portal Style Example</a></li><li class='selected'><a href='../dd/photo-browser.html'>Photo Browser</a></li>							</ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   350
						</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   351
					</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   352
					
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   353
					<div class="mod box4">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   354
                        <div class="hd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   355
						<h4>More Drag &amp; Drop Resources:</h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   356
                        </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   357
                        <div class="bd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   358
						<ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   359
							<!-- <li><a href="http://developer.yahoo.com/yui/dd/">User's Guide</a> (external)</li> -->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   360
						<li><a href="../../api/module_dd.html">API Documentation</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   361
</ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   362
                        </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   363
					</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   364
			  </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   365
		</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   366
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   367
		</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   368
	</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   369
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   370
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   371
<div class="yui-b toc3" id="tocWrapper">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   372
<!-- TABLE OF CONTENTS -->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   373
<div id="toc">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   374
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   375
<ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   376
<li class="sect first">YUI 3.x Project</li><li class="item"><a title="The Yahoo! User Interface (YUI) Library, 3.x Branch, " href="http://developer.yahoo.com/yui/3/">YUI 3 Web Site (external)</a></li><li class="item"><a title="Examples of every YUI utility and control in action" href="../../examples/">YUI 3 Examples</a></li><li class="item"><a title="Instantly searchable API documentation for the entire YUI library." href="../../api/">YUI 3 API Docs</a></li><li class="item"><a title="The YUI Library can be downloaded from SourceForge" href="http://sourceforge.net/projects/yui/">YUI 3 on Sourceforge (external)</a></li><li class="item"><a title="YUI is free and open, offered under a BSD license." href="http://developer.yahoo.com/yui/3/license.html">YUI License (external)</a></li><li class="sect">YUI 3 Core - Examples</li><li class="item"><a title="YUI (Global Prerequisite) - Functional Examples" href="../../examples/yui/index.html">YUI (Global Prerequisite)</a></li><li class="item"><a title="Event - Functional Examples" href="../../examples/event/index.html">Event</a></li><li class="item"><a title="Node - Functional Examples" href="../../examples/node/index.html">Node</a></li><li class="sect">YUI 3 Component Infrastructure - Examples</li><li class="item"><a title="Attribute - Functional Examples" href="../../examples/attribute/index.html">Attribute</a></li><li class="item"><a title="Plugin - Functional Examples" href="../../examples/plugin/index.html">Plugin</a></li><li class="item"><a title="Widget - Functional Examples" href="../../examples/widget/index.html">Widget</a></li><li class="sect">YUI 3 Utilities - Examples</li><li class="item"><a title="Animation - Functional Examples" href="../../examples/anim/index.html">Animation</a></li><li class="item"><a title="Cache - Functional Examples" href="../../examples/cache/index.html">Cache</a></li><li class="item"><a title="Cookie - Functional Examples" href="../../examples/cookie/index.html">Cookie</a></li><li class="item"><a title="DataSchema - Functional Examples" href="../../examples/dataschema/index.html">DataSchema</a></li><li class="item"><a title="DataSource - Functional Examples" href="../../examples/datasource/index.html">DataSource</a></li><li class="item"><a title="DataType - Functional Examples" href="../../examples/datatype/index.html">DataType</a></li><li class="selected "><a title="Drag &amp; Drop - Functional Examples" href="../../examples/dd/index.html">Drag &amp; Drop</a></li><li class="item"><a title="Get - Functional Examples" href="../../examples/get/index.html">Get</a></li><li class="item"><a title="History - Functional Examples" href="../../examples/history/index.html">History</a></li><li class="item"><a title="ImageLoader - Functional Examples" href="../../examples/imageloader/index.html">ImageLoader</a></li><li class="item"><a title="IO - Functional Examples" href="../../examples/io/index.html">IO</a></li><li class="item"><a title="JSON (JavaScript Object Notation) - Functional Examples" href="../../examples/json/index.html">JSON</a></li><li class="item"><a title="Queue - Functional Examples" href="../../examples/queue/index.html">Queue</a></li><li class="item"><a title="Stylesheet - Functional Examples" href="../../examples/stylesheet/index.html">Stylesheet</a></li><li class="sect">YUI 3 Widgets - Examples</li><li class="item"><a title="Overlay - Functional Examples" href="../../examples/overlay/index.html">Overlay</a></li><li class="item"><a title="Slider - Functional Examples" href="../../examples/slider/index.html">Slider</a></li><li class="sect">YUI 3 Node Plugins - Examples</li><li class="item"><a title="FocusManager Node Plugin - Functional Examples" href="../../examples/node-focusmanager/index.html">FocusManager Node Plugin</a></li><li class="item"><a title="MenuNav Node Plugin - Functional Examples" href="../../examples/node-menunav/index.html">MenuNav Node Plugin</a></li><li class="sect">YUI 3 CSS - Examples</li><li class="item"><a title="YUI CSS Reset - Functional Examples" href="../../examples/cssreset/index.html">CSS Reset</a></li><li class="item"><a title="YUI Fonts - Functional Examples" href="../../examples/cssfonts/index.html">CSS Fonts</a></li><li class="item"><a title="YUI Base - Functional Examples" href="../../examples/cssbase/index.html">CSS Base</a></li><li class="sect">YUI 3 Developer Tools - Examples</li><li class="item"><a title="Console - Functional Examples" href="../../examples/console/index.html">Console</a></li><li class="item"><a title="Profiler - Functional Examples" href="../../examples/profiler/index.html">Profiler</a></li><li class="item"><a title="Test - Functional Examples" href="../../examples/test/index.html">Test</a></li><li class="sect">The YUI Community</li><li class="item"><a title="The Yahoo! User Interface Blog" href="http://yuiblog.com">YUI Blog (external)</a></li><li class="item"><a title="The Yahoo! Group YDN-JavaScript hosts the YUI community forum" href="http://tech.groups.yahoo.com/group/ydn-javascript/">YUI Forum (external)</a></li><li class="item"><a title="The Yahoo! Group yui3 is dedicated to the 3.x branch of the Yahoo! User Interface (YUI) Library." href="http://tech.groups.yahoo.com/group/yui3/">YUI 3 Forum (external)</a></li><li class="item"><a title="YUI is used by Yahoo! and by hundreds of other sites, including many you know and love." href="/yui/poweredby/">YUI Sightings (external)</a></li><li class="item"><a title="Videos and podcasts from the YUI Team and from the Yahoo! frontend engineering community." href="http://developer.yahoo.com/yui/theater/">YUI Theater (external)</a></li><li class="sect">YUI Articles on the YUI Website</li><li class="item"><a title="Answers to Frequently Asked Questions about the YUI Library" href="http://developer.yahoo.com/yui/articles/faq/">YUI FAQ (external)</a></li><li class="item"><a title="Yahoo!'s philosophy of Graded Browser Support" href="http://developer.yahoo.com/yui/articles/gbs/">Graded Browser Support (external)</a></li><li class="item"><a title="Reporting Bugs and Making Feature Requests for YUI Components" href="http://developer.yahoo.com/yui/articles/reportingbugs/">Bug Reports/Feature Requests (external)</a></li><li class="item"><a title="Serve YUI source files from Yahoo! -- free, fast, and simple" href="http://developer.yahoo.com/yui/3/articles/hosting/">Serving YUI Files from Yahoo! (external)</a></li></ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   377
</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   378
</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   379
	</div><!--closes bd-->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   380
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   381
	<div id="ft">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   382
        <p class="first">Copyright &copy; 2009 Yahoo! Inc. All rights reserved.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   383
        <p><a href="http://privacy.yahoo.com/privacy/us/devel/index.html">Privacy Policy</a> - 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   384
            <a href="http://docs.yahoo.com/info/terms/">Terms of Service</a> - 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   385
            <a href="http://docs.yahoo.com/info/copyright/copyright.html">Copyright Policy</a> - 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   386
            <a href="http://careers.yahoo.com/">Job Openings</a></p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   387
	</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   388
</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   389
<script src="../../assets/dpSyntaxHighlighter.js"></script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   390
<script language="javascript"> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   391
dp.SyntaxHighlighter.HighlightAll('code'); 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   392
</script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   393
</body>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   394
</html>