src/cm/media/js/lib/yui/yui_3.0.0b1/examples/attribute/attribute-basic.html
author raph
Mon, 23 Nov 2009 15:14:29 +0100
changeset 0 40c8f766c9b8
permissions -rw-r--r--
import from internal svn r 4007
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: Attribute: Basic Configuration</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
<link type="text/css" rel="stylesheet" href="../../build/cssfonts/fonts-min.css" />
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    18
<script type="text/javascript" src="../../build/yui/yui-min.js"></script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    19
<style type="text/css">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    20
    #example-out .entry {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    21
        font-family:courier;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    22
        margin-top:2px;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    23
    }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    24
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    25
    #example-out .header {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    26
        font-weight:bold;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    27
        font-family:arial;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    28
        color:#8dd5e7;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    29
        margin-top:10px;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    30
        margin-bottom:3px;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    31
    }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    32
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    33
    #example-out {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    34
        overflow:auto;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    35
        border:1px solid #000;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    36
        color:#ffffff;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    37
        background-color:#004C6D;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    38
        margin:5px;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    39
        height:20em;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    40
        width:30em;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    41
        padding:2px;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    42
    }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    43
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    44
</style>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    45
<script type="text/javascript">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    46
    YUI.namespace("example");
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    47
    YUI.example.print = function(msg, cl) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    48
        var o = document.getElementById("example-out");
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    49
        if (o) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    50
            cl = cl || "";
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    51
            o.innerHTML += '<div class="entry ' + cl + '">' + msg + '</div>';
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    52
        }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    53
    }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    54
</script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    55
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    56
</head>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    57
<body id="yahoo-com" class=" yui-skin-sam">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    58
<div id="custom-doc" class="yui-t2">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    59
<div id="hd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    60
	<div id="ygunav">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    61
		<p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    62
            <em>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    63
                <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
    64
            </em>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    65
		</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    66
		<form action="http://search.yahoo.com/search" id="sitesearchform">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    67
            <input name="vs" type="hidden" value="developer.yahoo.com">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    68
            <input name="vs" type="hidden" value="yuiblog.com">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    69
		    <div id="sitesearch">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    70
		    	<label for="searchinput">Site Search (YDN &amp; YUIBlog): </label>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    71
			    <input type="text" id="searchinput" name="p">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    72
			    <input type="submit" value="Search" id="searchsubmit" class="ygbt">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    73
		    </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    74
		</form>
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 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
    77
	<div id="pagetitle"><h1>YUI Library Examples: Attribute: Basic Configuration</h1></div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    78
</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    79
<div id="bd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    80
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    81
	<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
    82
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    83
	<div id="yui-main">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    84
		<div class="yui-b">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    85
		  <div class="yui-ge">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    86
			  <div class="yui-u first example" id="main">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    87
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    88
	<h2>Attribute: Basic Configuration</h2>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    89
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    90
	<div id="example" class="promo">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    91
	<p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    92
	<p>This example provides an introduction to the Attribute utility, showing how you can use it to add attribute support to your own custom classes.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    93
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    94
<p>It is geared towards users who want to create their own classes from scratch and add Attribute support. 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    95
In most cases you should consider extending the <a href="../../Base.html"><code>Base</code></a> class when you need managed attribute support, 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    96
instead of creating your own class from scratch. 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    97
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    98
<a href="../../Base.html"><code>Base</code></a> does the work described in this example for you, in addition to making it easier for users to extend you class.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    99
</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   100
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   101
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   102
	</p>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   103
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   104
	<div class="module example-container ">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   105
			<div class="hd exampleHd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   106
			<p class="newWindowButton yui-skin-sam">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   107
                <a href="attribute-basic_clean.html" target="_blank">View example in new window.</a>
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
		</div>		<div id="example-canvas" class="bd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   110
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   111
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   112
	<!--BEGIN SOURCE CODE FOR EXAMPLE =============================== -->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   113
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   114
	<div id="example-out"></div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   115
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   116
<script type="text/javascript">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   117
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   118
// Get a new instance of YUI and 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   119
// load it with the required set of modules
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   120
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   121
YUI({base:"../../build/", timeout: 10000}).use("node", "attribute", function(Y) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   122
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   123
    // Setup custom class which we want to 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   124
    // add managed attribute support to
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   125
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   126
    function MyClass(cfg) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   127
        // When constructed, setup the initial attributes for the
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   128
        // instance, by calling the addAttrs method.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   129
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   130
        // Note that the addAttrs method doesn't protect the 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   131
        // configuration objects passed in as mentioned in 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   132
        // the API docs, so we use Y.merge to create a shallow 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   133
        // clone to pass in to addAttrs.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   134
        this.addAttrs(Y.merge(MyClass.ATTRIBUTES), cfg);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   135
    }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   136
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   137
    // Setup static property to hold attribute config
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   138
    MyClass.ATTRIBUTES = {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   139
        // Add 3 attributes, foo, bar and foobar
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   140
        "foo" : {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   141
            value:5
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   142
        },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   143
 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   144
        "bar" : {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   145
            value:"Hello World!"
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   146
        },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   147
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   148
        "foobar" : {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   149
            value:true
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   150
        }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   151
    };
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   152
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   153
    // Augment custom class with Attribute
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   154
    Y.augment(MyClass, Y.Attribute);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   155
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   156
    var o1 = new MyClass();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   157
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   158
    var print = YUI.example.print;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   159
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   160
    print("o1 values set during construction:", "header");
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   161
    print("foo:" + o1.get("foo"));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   162
    print("bar:" + o1.get("bar"));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   163
    print("foobar:" + o1.get("foobar"));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   164
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   165
    o1.set("foo", 10);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   166
    o1.set("bar", "Hello New World!");
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   167
    o1.set("foobar", false);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   168
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   169
    print("o1 new values:", "header");
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   170
    print("new foo:" + o1.get("foo"));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   171
    print("new bar:" + o1.get("bar"));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   172
    print("new foobar:" + o1.get("foobar"));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   173
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   174
    var o2 = new MyClass({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   175
        foo: 7,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   176
        bar: "Aloha World!",
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   177
        foobar: false
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   178
    });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   179
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   180
    print("o2 values set during construction:", "header");
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   181
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   182
    print("foo:" + o2.get("foo"));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   183
    print("bar:" + o2.get("bar"));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   184
    print("foobar:" + o2.get("foobar"));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   185
});
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   186
</script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   187
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   188
	<!--END SOURCE CODE FOR EXAMPLE =============================== -->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   189
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   190
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   191
		</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   192
	</div>			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   193
	</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   194
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   195
	<h3>Setting Up Your Own Class To Use Attribute</h3>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   196
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   197
<p>In this example, we'll show how you can use the Attribute utility to add managed attributes to your own object classes. Later examples will show how you can configure more advanced attribute properties, and work with attribute change events.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   198
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   199
<h4>Creating A YUI Instance</h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   200
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   201
<p>Before we get into attribute, a quick note on how we set up the instance of YUI we'll use for the examples. For all of the attribute examples, we'll setup our own instance of the YUI object and download the files we require on demand using the code pattern shown below:</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   202
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   203
<textarea name="code" class="JScript" cols="60" rows="1">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   204
<script type="text/javascript">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   205
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   206
    // Create our local YUI instance, to avoid
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   207
    // modifying the global YUI object
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   208
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   209
    YUI({...}).use("attribute", "node", function(Y) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   210
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   211
        // Example code is written inside this function,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   212
        // which gets passed our own YUI instance, Y, loaded
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   213
        // with the modules we asked for - "attribute" and "node"
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   214
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   215
    });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   216
</script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   217
</textarea>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   218
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   219
<p>The call to <code>YUI()</code> will create and return a new instance of the global YUI object for us to use. However this instance does not yet have all the modules we need for the examples.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   220
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   221
<p>To load the modules, we invoke <code>use()</code> and pass it the list of modules we'd like populated on our new YUI instance - in this case, <code>attribute</code> and <code>node</code>.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   222
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   223
The YUI instance will pull down the source files for modules if they don't already exist on the page, plus any or their dependencies.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   224
When the source files are done downloading, the callback function which we pass in as the 3rd argument to <code>use()</code>, is invoked. Our custom YUI instance, <code>Y</code>, is passed to the callback, populated with the classes which make up the requested modules.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   225
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   226
<p>This callback function is where we'll write all our example code. By working inside the callback function, we don't pollute the global namespace and we're also able to download the files we need on demand, rather than have them be on the page up front.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   227
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   228
<p>The configuration object passed to <code>YUI()</code> when creating the instance is used to specify how (<em>combined, separate, debug, min etc.</em>) we want the files downloaded, and from where. The API documentation for the <a href="../../api/YUI.html">YUI object</a>, provides more information about the configuration options available.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   229
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   230
<h4>Defining Your Custom Class</h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   231
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   232
<p>The first step in the example is to create the constructor function for our new class, to which we want to add attribute support. In our example, this class is called <code>MyClass</code>.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   233
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   234
We then augment <code>MyClass</code> with <code>Y.Attribute</code>, so that it receives all of <code>Attribute's</code> methods:</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   235
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   236
<textarea name="code" class="JScript" cols="60" rows="1">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   237
    function MyClass(cfg) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   238
        ...
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   239
    }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   240
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   241
    Y.augment(MyClass, Y.Attribute);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   242
</textarea>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   243
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   244
<h4>Adding Attributes</h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   245
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   246
<p>We can now set up any attributes we need for <code>MyClass</code> using the <code>addAttrs</code> method. For the basic example we add 3 attributes - <code>foo</code>,<code>bar</code>, and <code>foobar</code>, and provide an initial <code>value</code> for each. 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   247
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   248
The same object literal we use to provide the initial value for the attribute will also be used in the other examples to configure attribute properties such as <code>readOnly</code> or <code>writeOnce</code>, and define <code>getter</code>, <code>setter</code> and <code>validator</code> methods for the attribute.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   249
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   250
<p>In this example, the default set of attributes which <code>MyClass</code> will support is defined as a static property, <code>ATTRIBUTES</code>, on the constructor function. This gets passed to <code>addAttrs</code> to set up the attributes for each instance during construction.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   251
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   252
This is not required by Attribute, but allows the default attribute configuration to be easily customized by developers who may want to modify/extend our class. However, as a result of <code>ATTRIBUTES</code> being statically defined, we need to use <code>Y.merge</code> to create a shallow copy, before passing it to <code>addAttrs</code>, so that the static configuration is not modified by the instance.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   253
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   254
The complete definition for <code>MyClass</code> is shown below:</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   255
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   256
<textarea name="code" class="JScript" cols="60" rows="1">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   257
    function MyClass(cfg) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   258
        // When constructed, setup the initial attributes for the
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   259
        // instance, by calling the addAttrs method.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   260
        this.addAttrs(Y.merge(MyClass.ATTRIBUTES), cfg);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   261
    }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   262
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   263
    // Setup static property to hold attribute config
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   264
    MyClass.ATTRIBUTES = { 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   265
        // Add 3 attributes, foo, bar and foobar 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   266
        "foo" : { 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   267
            value:5 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   268
        }, 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   269
        "bar" : { 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   270
            value:"Hello World!"
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   271
         },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   272
         "foobar" : { 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   273
             value:true
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   274
         }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   275
    };
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   276
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   277
    // Augment custom class with Attribute 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   278
    Y.augment(MyClass, Y.Attribute);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   279
</textarea>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   280
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   281
<p>The <code>addAttrs</code> method, in addition to the default attribute configuration, also accepts an object literal (associative array) of name/value pairs which can be used to over-ride the default initial values of the attributes. This is useful for classes which wish to allow the user the set the value of attributes as part of object construction, as shown by the use of the <code>cfg</code> argument above.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   282
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   283
<h4>Using Attributes</h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   284
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   285
<p>Now that we have <code>MyClass</code> defined with a set of attributes it supports, users can get and set attribute values on instances of <code>MyClass</code>:</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   286
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   287
<textarea name="code" class="JScript" cols="60" rows="1">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   288
    // Create a new instance of MyClass, without over-riding
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   289
    // any initial values
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   290
    var o1 = new MyClass();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   291
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   292
    // Print out the current values of foo, bar, foobar
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   293
    var print = YUI.example.print;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   294
    print("<strong>o1 values set during construction:</strong>"); 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   295
    print("foo:" + o1.get("foo")); 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   296
    print("bar:" + o1.get("bar")); 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   297
    print("foobar:" + o1.get("foobar")); 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   298
 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   299
    // Set the values of foo, bar and foobar using 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   300
    // the set method provided by Attribute
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   301
    o1.set("foo", 10); 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   302
    o1.set("bar", "Hello New World!"); 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   303
    o1.set("foobar", false); 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   304
   
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   305
    // Print out the new values of foo, bar, foobar
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   306
    print("<strong>o1 new values:</strong>"); 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   307
    print("new foo:" + o1.get("foo")); 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   308
    print("new bar:" + o1.get("bar")); 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   309
    print("new foobar:" + o1.get("foobar"));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   310
</textarea>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   311
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   312
<p>For the second instance that we create in the example we set the values of the attributes, using the constructor configuration argument:</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   313
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   314
<textarea name="code" class="JScript" cols="60" rows="1">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   315
    var o2 = new MyClass({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   316
                foo: 7,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   317
                bar: "Aloha World!",
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   318
                foobar: false
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   319
             });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   320
</textarea>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   321
				</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   322
				<div class="yui-u sidebar">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   323
					
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   324
				
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   325
					<div id="examples" class="mod box4">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   326
                        <div class="hd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   327
						<h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   328
    Attribute Examples:</h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   329
                        </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   330
						<div class="bd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   331
							<ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   332
								<li class='selected'><a href='../attribute/attribute-basic.html'>Basic Configuration</a></li><li><a href='../attribute/attribute-event.html'>Change Events</a></li><li><a href='../attribute/attribute-getset.html'>Getters, Setters and Validators</a></li><li><a href='../attribute/attribute-rw.html'>readOnly and writeOnce Configuration</a></li>							</ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   333
						</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   334
					</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   335
					
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   336
					<div class="mod box4">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   337
                        <div class="hd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   338
						<h4>More Attribute Resources:</h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   339
                        </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   340
                        <div class="bd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   341
						<ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   342
							<!-- <li><a href="http://developer.yahoo.com/yui/attribute/">User's Guide</a> (external)</li> -->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   343
						<li><a href="../../api/module_attribute.html">API Documentation</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   344
</ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   345
                        </div>
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>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   348
		</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   349
		
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
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   354
<div class="yui-b toc3" id="tocWrapper">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   355
<!-- TABLE OF CONTENTS -->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   356
<div id="toc">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   357
	
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 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="selected "><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="item"><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
   360
</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   361
</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   362
	</div><!--closes bd-->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   363
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   364
	<div id="ft">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   365
        <p class="first">Copyright &copy; 2009 Yahoo! Inc. All rights reserved.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   366
        <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
   367
            <a href="http://docs.yahoo.com/info/terms/">Terms of Service</a> - 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   368
            <a href="http://docs.yahoo.com/info/copyright/copyright.html">Copyright Policy</a> - 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   369
            <a href="http://careers.yahoo.com/">Job Openings</a></p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   370
	</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   371
</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   372
<script src="../../assets/dpSyntaxHighlighter.js"></script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   373
<script language="javascript"> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   374
dp.SyntaxHighlighter.HighlightAll('code'); 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   375
</script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   376
</body>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   377
</html>