src/cm/media/js/lib/yui/yui3.0.0/api/node-menunav.js.html
author Yves-Marie Haussonne <ymh.work+github@gmail.com>
Fri, 09 May 2014 18:35:26 +0200
changeset 656 a84519031134
parent 0 40c8f766c9b8
permissions -rw-r--r--
add link to "privacy policy" in the header test
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     1
<!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
     2
<html xmlns:yui="http://yuilibrary.com/rdf/1.0/yui.rdf#">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     3
<head>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     4
    <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     5
	<title>API: node-menunav   node-menunav.js  (YUI Library)</title>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     6
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     7
	<link rel="stylesheet" type="text/css" href="assets/reset-fonts-grids-min.css" />
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     8
	<link rel="stylesheet" type="text/css" href="assets/api.css" />
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     9
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    10
    <script type="text/javascript" src="assets/api-js"></script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    11
    <script type="text/javascript" src="assets/ac-js"></script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    12
</head>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    13
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    14
<body id="yahoo-com">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    15
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    16
<div id="doc3" class="yui-t2">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    17
	<div id="hd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    18
        <h1><a href="http://developer.yahoo.com/yui/" title="Yahoo! UI Library">Yahoo! UI Library</a></h1>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    19
        <h3>node-menunav&nbsp; <span class="subtitle">3.0.0</span></h3>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    20
        <a href="./index.html" title="Yahoo! UI Library">Yahoo! UI Library</a> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    21
            &gt; <a href="./module_node-menunav.html" title="node-menunav">node-menunav</a>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    22
                
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    23
                 &gt; node-menunav.js (source view) 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    24
        <form onsubmit="return false">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    25
            <div id="propertysearch">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    26
                Search: <input autocomplete="off" id="searchinput" />
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    27
                <div id="searchresults">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    28
                    &nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    29
                </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    30
            </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    31
        </form>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    32
	</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    33
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    34
	<div id="bd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    35
		<div id="yui-main">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    36
			<div class="yui-b">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    37
            <form action="#" name="yui-classopts-form" method="get" id="yui-classopts-form">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    38
                <fieldset>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    39
                    <legend>Filters</legend>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    40
                <span class="classopts"><input type="checkbox" name="show_private" id="show_private" /> <label for="show_private">Show Private</label></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    41
                <span class="classopts"><input type="checkbox" name="show_protected" id="show_protected" /> <label for="show_protected">Show Protected</label></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    42
                <span class="classopts"><input type="checkbox" name="show_deprecated" id="show_deprecated" /> <label for="show_deprecated">Show Deprecated</label></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    43
                </fieldset>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    44
            </form>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    45
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    46
                    <div id="srcout">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    47
                        <style>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    48
                            #doc3 .classopts { display:none; }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    49
                        </style>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    50
                        <div class="highlight" ><pre><span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    51
<span class="c">* &lt;p&gt;The MenuNav Node Plugin makes it easy to transform existing list-based </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    52
<span class="c">* markup into traditional, drop down navigational menus that are both accessible </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    53
<span class="c">* and easy to customize, and only require a small set of dependencies.&lt;/p&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    54
<span class="c">* </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    55
<span class="c">* </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    56
<span class="c">* &lt;p&gt;To use the MenuNav Node Plugin, simply pass a reference to the plugin to a </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    57
<span class="c">* Node instance&#39;s &lt;code&gt;plug&lt;/code&gt; method.&lt;/p&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    58
<span class="c">* </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    59
<span class="c">* &lt;p&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    60
<span class="c">* &lt;code&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    61
<span class="c">* &amp;#60;script type=&quot;text/javascript&quot;&amp;#62; &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    62
<span class="c">* &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    63
<span class="c">* 		//	Call the &quot;use&quot; method, passing in &quot;node-menunav&quot;.  This will &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    64
<span class="c">* 		//	load the script and CSS for the MenuNav Node Plugin and all of &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    65
<span class="c">* 		//	the required dependencies. &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    66
<span class="c">* &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    67
<span class="c">* 		YUI().use(&quot;node-menunav&quot;, function(Y) { &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    68
<span class="c">* &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    69
<span class="c">* 			//	Use the &quot;contentready&quot; event to initialize the menu when &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    70
<span class="c">* 			//	the subtree of element representing the root menu &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    71
<span class="c">* 			//	(&amp;#60;div id=&quot;menu-1&quot;&amp;#62;) is ready to be scripted. &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    72
<span class="c">* &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    73
<span class="c">* 			Y.on(&quot;contentready&quot;, function () { &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    74
<span class="c">* &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    75
<span class="c">* 				//	The scope of the callback will be a Node instance &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    76
<span class="c">* 				//	representing the root menu (&amp;#60;div id=&quot;menu-1&quot;&amp;#62;). &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    77
<span class="c">* 				//	Therefore, since &quot;this&quot; represents a Node instance, it &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    78
<span class="c">* 				//	is possible to just call &quot;this.plug&quot; passing in a &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    79
<span class="c">*				//	reference to the MenuNav Node Plugin. &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    80
<span class="c">* &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    81
<span class="c">* 				this.plug(Y.Plugin.NodeMenuNav); &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    82
<span class="c">* &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    83
<span class="c">* 			}, &quot;#menu-1&quot;); &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    84
<span class="c">* &lt;br&gt;		</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    85
<span class="c">* 		}); &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    86
<span class="c">* &lt;br&gt;	</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    87
<span class="c">* 	&amp;#60;/script&amp;#62; &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    88
<span class="c">* &lt;/code&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    89
<span class="c">* &lt;/p&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    90
<span class="c">*</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    91
<span class="c">* &lt;p&gt;The MenuNav Node Plugin has several configuration properties that can be </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    92
<span class="c">* set via an object literal that is passed as a second argument to a Node </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    93
<span class="c">* instance&#39;s &lt;code&gt;plug&lt;/code&gt; method.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    94
<span class="c">* &lt;/p&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    95
<span class="c">*</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    96
<span class="c">* &lt;p&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    97
<span class="c">* &lt;code&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    98
<span class="c">* &amp;#60;script type=&quot;text/javascript&quot;&amp;#62; &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    99
<span class="c">* &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   100
<span class="c">* 		//	Call the &quot;use&quot; method, passing in &quot;node-menunav&quot;.  This will &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   101
<span class="c">* 		//	load the script and CSS for the MenuNav Node Plugin and all of &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   102
<span class="c">* 		//	the required dependencies. &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   103
<span class="c">* &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   104
<span class="c">* 		YUI().use(&quot;node-menunav&quot;, function(Y) { &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   105
<span class="c">* &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   106
<span class="c">* 			//	Use the &quot;contentready&quot; event to initialize the menu when &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   107
<span class="c">* 			//	the subtree of element representing the root menu &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   108
<span class="c">* 			//	(&amp;#60;div id=&quot;menu-1&quot;&amp;#62;) is ready to be scripted. &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   109
<span class="c">* &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   110
<span class="c">* 			Y.on(&quot;contentready&quot;, function () { &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   111
<span class="c">* &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   112
<span class="c">* 				//	The scope of the callback will be a Node instance &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   113
<span class="c">* 				//	representing the root menu (&amp;#60;div id=&quot;menu-1&quot;&amp;#62;). &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   114
<span class="c">* 				//	Therefore, since &quot;this&quot; represents a Node instance, it &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   115
<span class="c">* 				//	is possible to just call &quot;this.plug&quot; passing in a &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   116
<span class="c">*				//	reference to the MenuNav Node Plugin. &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   117
<span class="c">* &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   118
<span class="c">* 				this.plug(Y.Plugin.NodeMenuNav, { mouseOutHideDelay: 1000 });</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   119
<span class="c">* &lt;br&gt;&lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   120
<span class="c">* 			}, &quot;#menu-1&quot;); &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   121
<span class="c">* &lt;br&gt;		</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   122
<span class="c">* 		}); &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   123
<span class="c">* &lt;br&gt;	</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   124
<span class="c">* 	&amp;#60;/script&amp;#62; &lt;br&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   125
<span class="c">* &lt;/code&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   126
<span class="c">* &lt;/p&gt;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   127
<span class="c">* </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   128
<span class="c">* @module node-menunav</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   129
<span class="c">*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   130
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   131
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   132
	<span class="c">//	Util shortcuts</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   133
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   134
<span class="k">var</span> <span class="nx">UA</span> <span class="o">=</span> <span class="nx">Y</span><span class="o">.</span><span class="nx">UA</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   135
	<span class="nx">later</span> <span class="o">=</span> <span class="nx">Y</span><span class="o">.</span><span class="nx">later</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   136
	<span class="nx">getClassName</span> <span class="o">=</span> <span class="nx">Y</span><span class="o">.</span><span class="nx">ClassNameManager</span><span class="o">.</span><span class="nx">getClassName</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   137
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   138
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   139
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   140
	<span class="c">//	Frequently used strings</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   141
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   142
	<span class="nx">MENU</span> <span class="o">=</span> <span class="s2">&quot;menu&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   143
	<span class="nx">MENUITEM</span> <span class="o">=</span> <span class="s2">&quot;menuitem&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   144
	<span class="nx">HIDDEN</span> <span class="o">=</span> <span class="s2">&quot;hidden&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   145
	<span class="nx">PARENT_NODE</span> <span class="o">=</span> <span class="s2">&quot;parentNode&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   146
	<span class="nx">CHILDREN</span> <span class="o">=</span> <span class="s2">&quot;children&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   147
	<span class="nx">OFFSET_HEIGHT</span> <span class="o">=</span> <span class="s2">&quot;offsetHeight&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   148
	<span class="nx">OFFSET_WIDTH</span> <span class="o">=</span> <span class="s2">&quot;offsetWidth&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   149
	<span class="nx">PX</span> <span class="o">=</span> <span class="s2">&quot;px&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   150
	<span class="nx">ID</span> <span class="o">=</span> <span class="s2">&quot;id&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   151
	<span class="nx">PERIOD</span> <span class="o">=</span> <span class="s2">&quot;.&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   152
	<span class="nx">HANDLED_MOUSEOUT</span> <span class="o">=</span> <span class="s2">&quot;handledMouseOut&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   153
	<span class="nx">HANDLED_MOUSEOVER</span> <span class="o">=</span> <span class="s2">&quot;handledMouseOver&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   154
	<span class="nx">ACTIVE</span> <span class="o">=</span> <span class="s2">&quot;active&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   155
	<span class="nx">LABEL</span> <span class="o">=</span> <span class="s2">&quot;label&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   156
	<span class="nx">LOWERCASE_A</span> <span class="o">=</span> <span class="s2">&quot;a&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   157
	<span class="nx">MOUSEDOWN</span> <span class="o">=</span> <span class="s2">&quot;mousedown&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   158
	<span class="nx">KEYDOWN</span> <span class="o">=</span> <span class="s2">&quot;keydown&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   159
	<span class="nx">CLICK</span> <span class="o">=</span> <span class="s2">&quot;click&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   160
	<span class="nx">EMPTY_STRING</span> <span class="o">=</span> <span class="s2">&quot;&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   161
	<span class="nx">FIRST_OF_TYPE</span> <span class="o">=</span> <span class="s2">&quot;first-of-type&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   162
	<span class="nx">ROLE</span> <span class="o">=</span> <span class="s2">&quot;role&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   163
	<span class="nx">PRESENTATION</span> <span class="o">=</span> <span class="s2">&quot;presentation&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   164
	<span class="nx">DESCENDANTS</span> <span class="o">=</span> <span class="s2">&quot;descendants&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   165
	<span class="nx">UI</span> <span class="o">=</span> <span class="s2">&quot;UI&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   166
	<span class="nx">ACTIVE_DESCENDANT</span> <span class="o">=</span> <span class="s2">&quot;activeDescendant&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   167
	<span class="nx">USE_ARIA</span> <span class="o">=</span> <span class="s2">&quot;useARIA&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   168
	<span class="nx">ARIA_HIDDEN</span> <span class="o">=</span> <span class="s2">&quot;aria-hidden&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   169
	<span class="nx">CONTENT</span> <span class="o">=</span> <span class="s2">&quot;content&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   170
	<span class="nx">HOST</span> <span class="o">=</span> <span class="s2">&quot;host&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   171
	<span class="nx">ACTIVE_DESCENDANT_CHANGE</span> <span class="o">=</span> <span class="nx">ACTIVE_DESCENDANT</span> <span class="o">+</span> <span class="s2">&quot;Change&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   172
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   173
	<span class="nx">STANDARD_QUERY</span> <span class="o">=</span> <span class="s2">&quot;&gt;.yui-menu-content&gt;ul&gt;li&gt;a&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   174
	<span class="nx">EXTENDED_QUERY</span> <span class="o">=</span> <span class="s2">&quot;&gt;.yui-menu-content&gt;ul&gt;li&gt;.yui-menu-label&gt;a:first-child&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   175
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   176
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   177
	<span class="c">//	Attribute keys</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   178
<span class="c"></span>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   179
	<span class="nx">AUTO_SUBMENU_DISPLAY</span> <span class="o">=</span> <span class="s2">&quot;autoSubmenuDisplay&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   180
	<span class="nx">MOUSEOUT_HIDE_DELAY</span> <span class="o">=</span> <span class="s2">&quot;mouseOutHideDelay&quot;</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   181
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   182
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   183
	<span class="c">//	CSS class names</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   184
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   185
	<span class="nx">CSS_MENU</span> <span class="o">=</span> <span class="nx">getClassName</span><span class="o">(</span><span class="nx">MENU</span><span class="o">),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   186
	<span class="nx">CSS_MENU_HIDDEN</span> <span class="o">=</span> <span class="nx">getClassName</span><span class="o">(</span><span class="nx">MENU</span><span class="o">,</span> <span class="nx">HIDDEN</span><span class="o">),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   187
	<span class="nx">CSS_MENU_HORIZONTAL</span> <span class="o">=</span> <span class="nx">getClassName</span><span class="o">(</span><span class="nx">MENU</span><span class="o">,</span> <span class="s2">&quot;horizontal&quot;</span><span class="o">),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   188
	<span class="nx">CSS_MENU_LABEL</span> <span class="o">=</span> <span class="nx">getClassName</span><span class="o">(</span><span class="nx">MENU</span><span class="o">,</span> <span class="nx">LABEL</span><span class="o">),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   189
	<span class="nx">CSS_MENU_LABEL_ACTIVE</span> <span class="o">=</span> <span class="nx">getClassName</span><span class="o">(</span><span class="nx">MENU</span><span class="o">,</span> <span class="nx">LABEL</span><span class="o">,</span> <span class="nx">ACTIVE</span><span class="o">),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   190
	<span class="nx">CSS_MENU_LABEL_MENUVISIBLE</span> <span class="o">=</span> <span class="nx">getClassName</span><span class="o">(</span><span class="nx">MENU</span><span class="o">,</span> <span class="nx">LABEL</span><span class="o">,</span> <span class="o">(</span><span class="nx">MENU</span> <span class="o">+</span> <span class="s2">&quot;visible&quot;</span><span class="o">)),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   191
	<span class="nx">CSS_MENUITEM</span> <span class="o">=</span> <span class="nx">getClassName</span><span class="o">(</span><span class="nx">MENUITEM</span><span class="o">),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   192
	<span class="nx">CSS_MENUITEM_ACTIVE</span> <span class="o">=</span> <span class="nx">getClassName</span><span class="o">(</span><span class="nx">MENUITEM</span><span class="o">,</span> <span class="nx">ACTIVE</span><span class="o">),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   193
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   194
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   195
	<span class="c">//	CSS selectors</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   196
<span class="c"></span>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   197
	<span class="nx">MENU_SELECTOR</span> <span class="o">=</span> <span class="nx">PERIOD</span> <span class="o">+</span> <span class="nx">CSS_MENU</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   198
	<span class="nx">MENU_TOGGLE_SELECTOR</span> <span class="o">=</span> <span class="o">(</span><span class="nx">PERIOD</span> <span class="o">+</span> <span class="nx">getClassName</span><span class="o">(</span><span class="nx">MENU</span><span class="o">,</span> <span class="s2">&quot;toggle&quot;</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   199
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   200
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   201
<span class="c">//	Utility functions</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   202
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   203
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   204
<span class="k">var</span> <span class="nx">getPreviousSibling</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">node</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   205
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   206
	<span class="k">var</span> <span class="nx">oPrevious</span> <span class="o">=</span> <span class="nx">node</span><span class="o">.</span><span class="nx">previous</span><span class="o">(),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   207
		<span class="nx">oChildren</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   208
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   209
	<span class="k">if</span> <span class="o">(!</span><span class="nx">oPrevious</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   210
		<span class="nx">oChildren</span> <span class="o">=</span> <span class="nx">node</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">PARENT_NODE</span><span class="o">).</span><span class="nx">get</span><span class="o">(</span><span class="nx">CHILDREN</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   211
		<span class="nx">oPrevious</span> <span class="o">=</span> <span class="nx">oChildren</span><span class="o">.</span><span class="nx">item</span><span class="o">(</span><span class="nx">oChildren</span><span class="o">.</span><span class="nx">size</span><span class="o">()</span> <span class="o">-</span> <span class="m">1</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   212
	<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   213
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   214
	<span class="k">return</span> <span class="nx">oPrevious</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   215
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   216
<span class="o">};</span>
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
<span class="k">var</span> <span class="nx">getNextSibling</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">node</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   220
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   221
	<span class="k">var</span> <span class="nx">oNext</span> <span class="o">=</span> <span class="nx">node</span><span class="o">.</span><span class="nx">next</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   222
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   223
	<span class="k">if</span> <span class="o">(!</span><span class="nx">oNext</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   224
		<span class="nx">oNext</span> <span class="o">=</span> <span class="nx">node</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">PARENT_NODE</span><span class="o">).</span><span class="nx">get</span><span class="o">(</span><span class="nx">CHILDREN</span><span class="o">).</span><span class="nx">item</span><span class="o">(</span><span class="m">0</span><span class="o">);</span>		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   225
	<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   226
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   227
	<span class="k">return</span> <span class="nx">oNext</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   228
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   229
<span class="o">};</span>
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
<span class="k">var</span> <span class="nx">isAnchor</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">node</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   233
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   234
	<span class="k">var</span> <span class="nx">bReturnVal</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   235
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   236
	<span class="k">if</span> <span class="o">(</span><span class="nx">node</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   237
		<span class="nx">bReturnVal</span> <span class="o">=</span> <span class="nx">node</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s2">&quot;nodeName&quot;</span><span class="o">).</span><span class="nx">toLowerCase</span><span class="o">()</span> <span class="o">===</span> <span class="nx">LOWERCASE_A</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   238
	<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   239
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   240
	<span class="k">return</span> <span class="nx">bReturnVal</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   241
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   242
<span class="o">};</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   243
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   244
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   245
<span class="k">var</span> <span class="nx">isMenuItem</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">node</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   246
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   247
	<span class="k">return</span> <span class="nx">node</span><span class="o">.</span><span class="nx">hasClass</span><span class="o">(</span><span class="nx">CSS_MENUITEM</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   248
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   249
<span class="o">};</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   250
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   251
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   252
<span class="k">var</span> <span class="nx">isMenuLabel</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">node</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   253
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   254
	<span class="k">return</span> <span class="nx">node</span><span class="o">.</span><span class="nx">hasClass</span><span class="o">(</span><span class="nx">CSS_MENU_LABEL</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   255
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   256
<span class="o">};</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   257
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   258
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   259
<span class="k">var</span> <span class="nx">isHorizontalMenu</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">menu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   260
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   261
	<span class="k">return</span> <span class="nx">menu</span><span class="o">.</span><span class="nx">hasClass</span><span class="o">(</span><span class="nx">CSS_MENU_HORIZONTAL</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   262
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   263
<span class="o">};</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   264
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   265
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   266
<span class="k">var</span> <span class="nx">hasVisibleSubmenu</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">menuLabel</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   267
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   268
	<span class="k">return</span> <span class="nx">menuLabel</span><span class="o">.</span><span class="nx">hasClass</span><span class="o">(</span><span class="nx">CSS_MENU_LABEL_MENUVISIBLE</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   269
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   270
<span class="o">};</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   271
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   272
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   273
<span class="k">var</span> <span class="nx">getItemAnchor</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">node</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   274
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   275
	<span class="k">return</span> <span class="nx">isAnchor</span><span class="o">(</span><span class="nx">node</span><span class="o">)</span> <span class="o">?</span> <span class="nx">node</span> <span class="o">:</span> <span class="nx">node</span><span class="o">.</span><span class="nx">one</span><span class="o">(</span><span class="nx">LOWERCASE_A</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   276
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   277
<span class="o">};</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   278
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   279
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   280
<span class="k">var</span> <span class="nx">getNodeWithClass</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">node</span><span class="o">,</span> <span class="nx">className</span><span class="o">,</span> <span class="nx">searchAncestors</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   281
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   282
	<span class="k">var</span> <span class="nx">oItem</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   283
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   284
	<span class="k">if</span> <span class="o">(</span><span class="nx">node</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   285
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   286
		<span class="k">if</span> <span class="o">(</span><span class="nx">node</span><span class="o">.</span><span class="nx">hasClass</span><span class="o">(</span><span class="nx">className</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   287
			<span class="nx">oItem</span> <span class="o">=</span> <span class="nx">node</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   288
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   289
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   290
		<span class="k">if</span> <span class="o">(!</span><span class="nx">oItem</span> <span class="o">&amp;&amp;</span> <span class="nx">searchAncestors</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   291
			<span class="nx">oItem</span> <span class="o">=</span> <span class="nx">node</span><span class="o">.</span><span class="nx">ancestor</span><span class="o">((</span><span class="nx">PERIOD</span> <span class="o">+</span> <span class="nx">className</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   292
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   293
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   294
	<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   295
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   296
	<span class="k">return</span> <span class="nx">oItem</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   297
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   298
<span class="o">};</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   299
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   300
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   301
<span class="k">var</span> <span class="nx">getParentMenu</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">node</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   302
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   303
	<span class="k">return</span> <span class="nx">node</span><span class="o">.</span><span class="nx">ancestor</span><span class="o">(</span><span class="nx">MENU_SELECTOR</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   304
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   305
<span class="o">};</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   306
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   307
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   308
<span class="k">var</span> <span class="nx">getMenu</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">node</span><span class="o">,</span> <span class="nx">searchAncestors</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   309
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   310
	<span class="k">return</span> <span class="nx">getNodeWithClass</span><span class="o">(</span><span class="nx">node</span><span class="o">,</span> <span class="nx">CSS_MENU</span><span class="o">,</span> <span class="nx">searchAncestors</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   311
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   312
<span class="o">};</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   313
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   314
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   315
<span class="k">var</span> <span class="nx">getMenuItem</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">node</span><span class="o">,</span> <span class="nx">searchAncestors</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   316
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   317
	<span class="k">var</span> <span class="nx">oItem</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   318
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   319
	<span class="k">if</span> <span class="o">(</span><span class="nx">node</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   320
		<span class="nx">oItem</span> <span class="o">=</span> <span class="nx">getNodeWithClass</span><span class="o">(</span><span class="nx">node</span><span class="o">,</span> <span class="nx">CSS_MENUITEM</span><span class="o">,</span> <span class="nx">searchAncestors</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   321
	<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   322
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   323
	<span class="k">return</span> <span class="nx">oItem</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   324
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   325
<span class="o">};</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   326
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   327
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   328
<span class="k">var</span> <span class="nx">getMenuLabel</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">node</span><span class="o">,</span> <span class="nx">searchAncestors</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   329
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   330
	<span class="k">var</span> <span class="nx">oItem</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   331
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   332
	<span class="k">if</span> <span class="o">(</span><span class="nx">node</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   333
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   334
		<span class="k">if</span> <span class="o">(</span><span class="nx">searchAncestors</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   335
			<span class="nx">oItem</span> <span class="o">=</span> <span class="nx">getNodeWithClass</span><span class="o">(</span><span class="nx">node</span><span class="o">,</span> <span class="nx">CSS_MENU_LABEL</span><span class="o">,</span> <span class="nx">searchAncestors</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   336
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   337
		<span class="k">else</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   338
			<span class="nx">oItem</span> <span class="o">=</span> <span class="nx">getNodeWithClass</span><span class="o">(</span><span class="nx">node</span><span class="o">,</span> <span class="nx">CSS_MENU_LABEL</span><span class="o">)</span> <span class="o">||</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   339
				<span class="nx">node</span><span class="o">.</span><span class="nx">one</span><span class="o">((</span><span class="nx">PERIOD</span> <span class="o">+</span> <span class="nx">CSS_MENU_LABEL</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   340
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   341
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   342
	<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   343
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   344
	<span class="k">return</span> <span class="nx">oItem</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   345
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   346
<span class="o">};</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   347
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   348
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   349
<span class="k">var</span> <span class="nx">getItem</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">node</span><span class="o">,</span> <span class="nx">searchAncestors</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   350
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   351
	<span class="k">var</span> <span class="nx">oItem</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   352
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   353
	<span class="k">if</span> <span class="o">(</span><span class="nx">node</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   354
		<span class="nx">oItem</span> <span class="o">=</span> <span class="nx">getMenuItem</span><span class="o">(</span><span class="nx">node</span><span class="o">,</span> <span class="nx">searchAncestors</span><span class="o">)</span> <span class="o">||</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   355
			<span class="nx">getMenuLabel</span><span class="o">(</span><span class="nx">node</span><span class="o">,</span> <span class="nx">searchAncestors</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   356
	<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   357
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   358
	<span class="k">return</span> <span class="nx">oItem</span><span class="o">;</span>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   359
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   360
<span class="o">};</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   361
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   362
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   363
<span class="k">var</span> <span class="nx">getFirstItem</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">menu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   364
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   365
	<span class="k">return</span> <span class="nx">getItem</span><span class="o">(</span><span class="nx">menu</span><span class="o">.</span><span class="nx">one</span><span class="o">(</span><span class="s2">&quot;li&quot;</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   366
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   367
<span class="o">};</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   368
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   369
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   370
<span class="k">var</span> <span class="nx">getActiveClass</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">node</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   371
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   372
	<span class="k">return</span> <span class="nx">isMenuItem</span><span class="o">(</span><span class="nx">node</span><span class="o">)</span> <span class="o">?</span> <span class="nx">CSS_MENUITEM_ACTIVE</span> <span class="o">:</span> <span class="nx">CSS_MENU_LABEL_ACTIVE</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   373
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   374
<span class="o">};</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   375
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   376
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   377
<span class="k">var</span> <span class="nx">handleMouseOverForNode</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">node</span><span class="o">,</span> <span class="nx">target</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   378
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   379
	<span class="k">return</span> <span class="nx">node</span> <span class="o">&amp;&amp;</span> <span class="o">!</span><span class="nx">node</span><span class="o">[</span><span class="nx">HANDLED_MOUSEOVER</span><span class="o">]</span> <span class="o">&amp;&amp;</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   380
		<span class="o">(</span><span class="nx">node</span><span class="o">.</span><span class="nx">compareTo</span><span class="o">(</span><span class="nx">target</span><span class="o">)</span> <span class="o">||</span> <span class="nx">node</span><span class="o">.</span><span class="nx">contains</span><span class="o">(</span><span class="nx">target</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   381
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   382
<span class="o">};</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   383
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   384
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   385
<span class="k">var</span> <span class="nx">handleMouseOutForNode</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">node</span><span class="o">,</span> <span class="nx">relatedTarget</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   386
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   387
	<span class="k">return</span> <span class="nx">node</span> <span class="o">&amp;&amp;</span> <span class="o">!</span><span class="nx">node</span><span class="o">[</span><span class="nx">HANDLED_MOUSEOUT</span><span class="o">]</span> <span class="o">&amp;&amp;</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   388
		<span class="o">(!</span><span class="nx">node</span><span class="o">.</span><span class="nx">compareTo</span><span class="o">(</span><span class="nx">relatedTarget</span><span class="o">)</span> <span class="o">&amp;&amp;</span> <span class="o">!</span><span class="nx">node</span><span class="o">.</span><span class="nx">contains</span><span class="o">(</span><span class="nx">relatedTarget</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   389
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   390
<span class="o">};</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   391
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   392
<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   393
<span class="c">* The NodeMenuNav class is a plugin for a Node instance.  The class is used via  </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   394
<span class="c">* the &lt;a href=&quot;Node.html#method_plug&quot;&gt;&lt;code&gt;plug&lt;/code&gt;&lt;/a&gt; method of Node and </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   395
<span class="c">* should not be instantiated directly.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   396
<span class="c">* @namespace plugin</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   397
<span class="c">* @class NodeMenuNav</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   398
<span class="c">*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   399
<span class="k">var</span> <span class="nx">NodeMenuNav</span> <span class="o">=</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   400
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   401
	<span class="nx">NodeMenuNav</span><span class="o">.</span><span class="nx">superclass</span><span class="o">.</span><span class="nx">constructor</span><span class="o">.</span><span class="nx">apply</span><span class="o">(</span><span class="k">this</span><span class="o">,</span> <span class="nx">arguments</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   402
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   403
<span class="o">};</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   404
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   405
<span class="nx">NodeMenuNav</span><span class="o">.</span><span class="nx">NAME</span> <span class="o">=</span> <span class="s2">&quot;nodeMenuNav&quot;</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   406
<span class="nx">NodeMenuNav</span><span class="o">.</span><span class="nx">NS</span> <span class="o">=</span> <span class="s2">&quot;menuNav&quot;</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   407
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   408
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   409
<span class="c">/** </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   410
<span class="c">* @property NodeMenuNav.SHIM_TEMPLATE_TITLE</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   411
<span class="c">* @description String representing the value for the &lt;code&gt;title&lt;/code&gt; </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   412
<span class="c">* attribute for the shim used to prevent &lt;code&gt;&amp;#60;select&amp;#62;&lt;/code&gt; elements </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   413
<span class="c">* from poking through menus in IE 6.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   414
<span class="c">* @default &quot;Menu Stacking Shim&quot;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   415
<span class="c">* @type String</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   416
<span class="c">*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   417
<span class="nx">NodeMenuNav</span><span class="o">.</span><span class="nx">SHIM_TEMPLATE_TITLE</span> <span class="o">=</span> <span class="s2">&quot;Menu Stacking Shim&quot;</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   418
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   419
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   420
<span class="c">/** </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   421
<span class="c">* @property NodeMenuNav.SHIM_TEMPLATE</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   422
<span class="c">* @description String representing the HTML used to create the </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   423
<span class="c">* &lt;code&gt;&amp;#60;iframe&amp;#62;&lt;/code&gt; shim used to prevent </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   424
<span class="c">* &lt;code&gt;&amp;#60;select&amp;#62;&lt;/code&gt; elements from poking through menus in IE 6.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   425
<span class="c">* @default &amp;#34;&amp;#60;iframe frameborder=&amp;#34;0&amp;#34; tabindex=&amp;#34;-1&amp;#34; </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   426
<span class="c">* class=&amp;#34;yui-shim&amp;#34; title=&amp;#34;Menu Stacking Shim&amp;#34; </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   427
<span class="c">* src=&amp;#34;javascript:false;&amp;#34;&amp;#62;&amp;#60;/iframe&amp;#62;&amp;#34;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   428
<span class="c">* @type String</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   429
<span class="c">*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   430
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   431
<span class="c">//	&lt;iframe&gt; shim notes:</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   432
<span class="c">//</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   433
<span class="c">//	1) Need to set the &quot;frameBorder&quot; property to 0 to suppress the default </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   434
<span class="c">//	&lt;iframe&gt; border in IE.  (Setting the CSS &quot;border&quot; property alone doesn&#39;t  </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   435
<span class="c">//	suppress it.) </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   436
<span class="c">//</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   437
<span class="c">//	2) The &quot;src&quot; attribute of the &lt;iframe&gt; is set to &quot;javascript:false;&quot; so </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   438
<span class="c">//	that it won&#39;t load a page inside it, preventing the secure/nonsecure </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   439
<span class="c">//	warning in IE when using HTTPS.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   440
<span class="c">//</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   441
<span class="c">//	3) Since the role of the &lt;iframe&gt; shim is completely presentational, its </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   442
<span class="c">//	&quot;tabindex&quot; attribute is set to &quot;-1&quot; and its title attribute is set to </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   443
<span class="c">//	&quot;Menu Stacking Shim&quot;.  Both strategies help users of screen readers to </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   444
<span class="c">//	avoid mistakenly interacting with the &lt;iframe&gt; shim.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   445
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   446
<span class="nx">NodeMenuNav</span><span class="o">.</span><span class="nx">SHIM_TEMPLATE</span> <span class="o">=</span> <span class="s1">&#39;&lt;iframe frameborder=&quot;0&quot; tabindex=&quot;-1&quot; class=&quot;&#39;</span> <span class="o">+</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   447
							<span class="nx">getClassName</span><span class="o">(</span><span class="s2">&quot;shim&quot;</span><span class="o">)</span> <span class="o">+</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   448
							<span class="s1">&#39;&quot; title=&quot;&#39;</span> <span class="o">+</span> <span class="nx">NodeMenuNav</span><span class="o">.</span><span class="nx">SHIM_TEMPLATE_TITLE</span> <span class="o">+</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   449
							<span class="s1">&#39;&quot; src=&quot;javascript:false;&quot;&gt;&lt;/iframe&gt;&#39;</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   450
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   451
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   452
<span class="nx">NodeMenuNav</span><span class="o">.</span><span class="nx">ATTRS</span> <span class="o">=</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   453
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   454
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   455
<span class="c">	* Boolean indicating if use of the WAI-ARIA Roles and States should be </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   456
<span class="c">	* enabled for the menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   457
<span class="c">	*</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   458
<span class="c">	* @attribute useARIA</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   459
<span class="c">	* @readOnly</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   460
<span class="c">	* @writeOnce	</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   461
<span class="c">	* @default true</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   462
<span class="c">	* @type boolean</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   463
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   464
	<span class="nx">useARIA</span><span class="o">:</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   465
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   466
		<span class="nx">value</span><span class="o">:</span> <span class="kc">true</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   467
		<span class="nx">writeOnce</span><span class="o">:</span> <span class="kc">true</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   468
		<span class="nx">lazyAdd</span><span class="o">:</span> <span class="kc">false</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   469
		<span class="nx">setter</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">value</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   470
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   471
			<span class="k">var</span> <span class="nx">oMenu</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">HOST</span><span class="o">),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   472
				<span class="nx">oMenuLabel</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   473
				<span class="nx">oMenuToggle</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   474
				<span class="nx">oSubmenu</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   475
				<span class="nx">sID</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   476
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   477
			<span class="k">if</span> <span class="o">(</span><span class="nx">value</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   478
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   479
				<span class="nx">oMenu</span><span class="o">.</span><span class="nx">set</span><span class="o">(</span><span class="nx">ROLE</span><span class="o">,</span> <span class="nx">MENU</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   480
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   481
				<span class="nx">oMenu</span><span class="o">.</span><span class="nx">all</span><span class="o">(</span><span class="s2">&quot;ul,li,.&quot;</span> <span class="o">+</span> <span class="nx">getClassName</span><span class="o">(</span><span class="nx">MENU</span><span class="o">,</span> <span class="nx">CONTENT</span><span class="o">)).</span><span class="nx">set</span><span class="o">(</span><span class="nx">ROLE</span><span class="o">,</span> <span class="nx">PRESENTATION</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   482
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   483
				<span class="nx">oMenu</span><span class="o">.</span><span class="nx">all</span><span class="o">((</span><span class="nx">PERIOD</span> <span class="o">+</span> <span class="nx">getClassName</span><span class="o">(</span><span class="nx">MENUITEM</span><span class="o">,</span> <span class="nx">CONTENT</span><span class="o">))).</span><span class="nx">set</span><span class="o">(</span><span class="nx">ROLE</span><span class="o">,</span> <span class="nx">MENUITEM</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   484
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   485
				<span class="nx">oMenu</span><span class="o">.</span><span class="nx">all</span><span class="o">((</span><span class="nx">PERIOD</span> <span class="o">+</span> <span class="nx">CSS_MENU_LABEL</span><span class="o">)).</span><span class="nx">each</span><span class="o">(</span><span class="k">function</span> <span class="o">(</span><span class="nx">node</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   486
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   487
					<span class="nx">oMenuLabel</span> <span class="o">=</span> <span class="nx">node</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   488
					<span class="nx">oMenuToggle</span> <span class="o">=</span> <span class="nx">node</span><span class="o">.</span><span class="nx">one</span><span class="o">(</span><span class="nx">MENU_TOGGLE_SELECTOR</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   489
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   490
					<span class="k">if</span> <span class="o">(</span><span class="nx">oMenuToggle</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   491
						<span class="nx">oMenuToggle</span><span class="o">.</span><span class="nx">set</span><span class="o">(</span><span class="nx">ROLE</span><span class="o">,</span> <span class="nx">PRESENTATION</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   492
						<span class="nx">oMenuLabel</span> <span class="o">=</span> <span class="nx">oMenuToggle</span><span class="o">.</span><span class="nx">previous</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   493
					<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   494
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   495
					<span class="nx">oMenuLabel</span><span class="o">.</span><span class="nx">set</span><span class="o">(</span><span class="nx">ROLE</span><span class="o">,</span> <span class="nx">MENUITEM</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   496
					<span class="nx">oMenuLabel</span><span class="o">.</span><span class="nx">set</span><span class="o">(</span><span class="s2">&quot;aria-haspopup&quot;</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   497
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   498
					<span class="nx">oSubmenu</span> <span class="o">=</span> <span class="nx">node</span><span class="o">.</span><span class="nx">next</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   499
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   500
					<span class="k">if</span> <span class="o">(</span><span class="nx">oSubmenu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   501
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   502
						<span class="nx">oSubmenu</span><span class="o">.</span><span class="nx">set</span><span class="o">(</span><span class="nx">ROLE</span><span class="o">,</span> <span class="nx">MENU</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   503
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   504
						<span class="nx">oMenuLabel</span> <span class="o">=</span> <span class="nx">oSubmenu</span><span class="o">.</span><span class="nx">previous</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   505
						<span class="nx">oMenuToggle</span> <span class="o">=</span> <span class="nx">oMenuLabel</span><span class="o">.</span><span class="nx">one</span><span class="o">(</span><span class="nx">MENU_TOGGLE_SELECTOR</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   506
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   507
						<span class="k">if</span> <span class="o">(</span><span class="nx">oMenuToggle</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   508
							<span class="nx">oMenuLabel</span> <span class="o">=</span> <span class="nx">oMenuToggle</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   509
						<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   510
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   511
						<span class="nx">sID</span> <span class="o">=</span> <span class="nx">Y</span><span class="o">.</span><span class="nx">stamp</span><span class="o">(</span><span class="nx">oMenuLabel</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   512
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   513
						<span class="k">if</span> <span class="o">(!</span><span class="nx">oMenuLabel</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">ID</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   514
							<span class="nx">oMenuLabel</span><span class="o">.</span><span class="nx">set</span><span class="o">(</span><span class="nx">ID</span><span class="o">,</span> <span class="nx">sID</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   515
						<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   516
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   517
						<span class="nx">oSubmenu</span><span class="o">.</span><span class="nx">set</span><span class="o">(</span><span class="s2">&quot;aria-labelledby&quot;</span><span class="o">,</span> <span class="nx">sID</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   518
						<span class="nx">oSubmenu</span><span class="o">.</span><span class="nx">set</span><span class="o">(</span><span class="nx">ARIA_HIDDEN</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   519
						
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   520
					<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   521
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   522
				<span class="o">});</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   523
				
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   524
			<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   525
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   526
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   527
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   528
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   529
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   530
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   531
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   532
<span class="c">	* Boolean indicating if submenus are automatically made visible when the </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   533
<span class="c">	* user mouses over the menu&#39;s items.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   534
<span class="c">	*</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   535
<span class="c">	* @attribute autoSubmenuDisplay</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   536
<span class="c">	* @readOnly</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   537
<span class="c">	* @writeOnce	</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   538
<span class="c">	* @default true</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   539
<span class="c">	* @type boolean</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   540
<span class="c">	*/</span>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   541
	<span class="nx">autoSubmenuDisplay</span><span class="o">:</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   542
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   543
		<span class="nx">value</span><span class="o">:</span> <span class="kc">true</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   544
		<span class="nx">writeOnce</span><span class="o">:</span> <span class="kc">true</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   545
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   546
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   547
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   548
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   549
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   550
<span class="c">	* Number indicating the time (in milliseconds) that should expire before a </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   551
<span class="c">	* submenu is made visible when the user mouses over the menu&#39;s label.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   552
<span class="c">	*</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   553
<span class="c">	* @attribute submenuShowDelay</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   554
<span class="c">	* @readOnly</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   555
<span class="c">	* @writeOnce	</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   556
<span class="c">	* @default 250</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   557
<span class="c">	* @type Number</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   558
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   559
	<span class="nx">submenuShowDelay</span><span class="o">:</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   560
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   561
		<span class="nx">value</span><span class="o">:</span> <span class="m">250</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   562
		<span class="nx">writeOnce</span><span class="o">:</span> <span class="kc">true</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   563
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   564
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   565
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   566
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   567
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   568
<span class="c">	* Number indicating the time (in milliseconds) that should expire before a </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   569
<span class="c">	* submenu is hidden when the user mouses out of a menu label heading in the </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   570
<span class="c">	* direction of a submenu.  </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   571
<span class="c">	*</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   572
<span class="c">	* @attribute submenuHideDelay</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   573
<span class="c">	* @readOnly</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   574
<span class="c">	* @writeOnce	</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   575
<span class="c">	* @default 250</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   576
<span class="c">	* @type Number</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   577
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   578
	<span class="nx">submenuHideDelay</span><span class="o">:</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   579
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   580
		<span class="nx">value</span><span class="o">:</span> <span class="m">250</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   581
		<span class="nx">writeOnce</span><span class="o">:</span> <span class="kc">true</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   582
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   583
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   584
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   585
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   586
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   587
<span class="c">	* Number indicating the time (in milliseconds) that should expire before a </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   588
<span class="c">	* submenu is hidden when the user mouses out of it.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   589
<span class="c">	* </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   590
<span class="c">	* @attribute mouseOutHideDelay</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   591
<span class="c">	* @readOnly</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   592
<span class="c">	* @writeOnce	</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   593
<span class="c">	* @default 750</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   594
<span class="c">	* @type Number</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   595
<span class="c">	*/</span>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   596
	<span class="nx">mouseOutHideDelay</span><span class="o">:</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   597
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   598
		<span class="nx">value</span><span class="o">:</span> <span class="m">750</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   599
		<span class="nx">writeOnce</span><span class="o">:</span> <span class="kc">true</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   600
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   601
	<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   602
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   603
<span class="o">};</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   604
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   605
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   606
<span class="nx">Y</span><span class="o">.</span><span class="nx">extend</span><span class="o">(</span><span class="nx">NodeMenuNav</span><span class="o">,</span> <span class="nx">Y</span><span class="o">.</span><span class="nx">Plugin</span><span class="o">.</span><span class="nx">Base</span><span class="o">,</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   607
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   608
	<span class="c">//	Protected properties</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   609
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   610
	<span class="c">/** </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   611
<span class="c">	* @property _rootMenu</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   612
<span class="c">	* @description Node instance representing the root menu in the menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   613
<span class="c">	* @default null</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   614
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   615
<span class="c">	* @type Node</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   616
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   617
	<span class="nx">_rootMenu</span><span class="o">:</span> <span class="kc">null</span><span class="o">,</span>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   618
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   619
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   620
	<span class="c">/** </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   621
<span class="c">	* @property _activeItem</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   622
<span class="c">	* @description Node instance representing the menu&#39;s active descendent: </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   623
<span class="c">	* the menuitem or menu label the user is currently interacting with.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   624
<span class="c">	* @default null</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   625
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   626
<span class="c">	* @type Node</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   627
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   628
	<span class="nx">_activeItem</span><span class="o">:</span> <span class="kc">null</span><span class="o">,</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   629
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   630
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   631
	<span class="c">/** </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   632
<span class="c">	* @property _activeMenu</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   633
<span class="c">	* @description Node instance representing the menu that is the parent of </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   634
<span class="c">	* the menu&#39;s active descendent.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   635
<span class="c">	* @default null</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   636
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   637
<span class="c">	* @type Node</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   638
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   639
	<span class="nx">_activeMenu</span><span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   640
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   641
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   642
	<span class="c">/** </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   643
<span class="c">	* @property _hasFocus</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   644
<span class="c">	* @description Boolean indicating if the menu has focus.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   645
<span class="c">	* @default false</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   646
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   647
<span class="c">	* @type Boolean</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   648
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   649
	<span class="nx">_hasFocus</span><span class="o">:</span> <span class="kc">false</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   650
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   651
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   652
	<span class="c">//	In gecko-based browsers a mouseover and mouseout event will fire even </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   653
<span class="c"></span>	<span class="c">//	if a DOM element moves out from under the mouse without the user </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   654
<span class="c"></span>	<span class="c">//	actually moving the mouse.  This bug affects NodeMenuNav because the  </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   655
<span class="c"></span>	<span class="c">//	user can hit the Esc key to hide a menu, and if the mouse is over the  </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   656
<span class="c"></span>	<span class="c">//	menu when the user presses Esc, the _onMenuMouseOut handler will be </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   657
<span class="c"></span>	<span class="c">//	called.  To fix this bug the following flag (_blockMouseEvent) is used </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   658
<span class="c"></span>	<span class="c">// to block the code in the _onMenuMouseOut handler from executing.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   659
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   660
	<span class="c">/** </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   661
<span class="c">	* @property _blockMouseEvent</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   662
<span class="c">	* @description Boolean indicating whether or not to handle the </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   663
<span class="c">	* &quot;mouseover&quot; event.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   664
<span class="c">	* @default false</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   665
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   666
<span class="c">	* @type Boolean</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   667
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   668
	<span class="nx">_blockMouseEvent</span><span class="o">:</span> <span class="kc">false</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   669
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   670
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   671
	<span class="c">/** </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   672
<span class="c">	* @property _currentMouseX</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   673
<span class="c">	* @description Number representing the current x coordinate of the mouse </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   674
<span class="c">	* inside the menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   675
<span class="c">	* @default 0</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   676
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   677
<span class="c">	* @type Number</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   678
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   679
	<span class="nx">_currentMouseX</span><span class="o">:</span> <span class="m">0</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   680
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   681
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   682
	<span class="c">/** </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   683
<span class="c">	* @property _movingToSubmenu</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   684
<span class="c">	* @description Boolean indicating if the mouse is moving from a menu </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   685
<span class="c">	* label to its corresponding submenu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   686
<span class="c">	* @default false</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   687
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   688
<span class="c">	* @type Boolean</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   689
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   690
	<span class="nx">_movingToSubmenu</span><span class="o">:</span> <span class="kc">false</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   691
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   692
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   693
	<span class="c">/** </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   694
<span class="c">	* @property _showSubmenuTimer</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   695
<span class="c">	* @description Timer used to show a submenu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   696
<span class="c">	* @default null</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   697
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   698
<span class="c">	* @type Object</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   699
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   700
	<span class="nx">_showSubmenuTimer</span><span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   701
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   702
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   703
	<span class="c">/** </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   704
<span class="c">	* @property _hideSubmenuTimer</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   705
<span class="c">	* @description Timer used to hide a submenu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   706
<span class="c">	* @default null</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   707
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   708
<span class="c">	* @type Object</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   709
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   710
	<span class="nx">_hideSubmenuTimer</span><span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   711
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   712
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   713
	<span class="c">/** </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   714
<span class="c">	* @property _hideAllSubmenusTimer</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   715
<span class="c">	* @description Timer used to hide a all submenus.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   716
<span class="c">	* @default null</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   717
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   718
<span class="c">	* @type Object</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   719
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   720
	<span class="nx">_hideAllSubmenusTimer</span><span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   721
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   722
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   723
	<span class="c">/** </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   724
<span class="c">	* @property _firstItem</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   725
<span class="c">	* @description Node instance representing the first item (menuitem or menu </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   726
<span class="c">	* label) in the root menu of a menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   727
<span class="c">	* @default null</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   728
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   729
<span class="c">	* @type Node</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   730
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   731
	<span class="nx">_firstItem</span><span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   732
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   733
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   734
	<span class="c">//	Public methods</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   735
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   736
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   737
    <span class="nx">initializer</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">config</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   738
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   739
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   740
			<span class="nx">oRootMenu</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">HOST</span><span class="o">),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   741
			<span class="nx">aHandlers</span> <span class="o">=</span> <span class="o">[],</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   742
			<span class="nx">oDoc</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   743
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   744
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   745
		<span class="k">if</span> <span class="o">(</span><span class="nx">oRootMenu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   746
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   747
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_rootMenu</span> <span class="o">=</span> <span class="nx">oRootMenu</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   748
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   749
			<span class="nx">oRootMenu</span><span class="o">.</span><span class="nx">all</span><span class="o">(</span><span class="s2">&quot;ul:first-child&quot;</span><span class="o">).</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">FIRST_OF_TYPE</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   750
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   751
			<span class="c">//	Hide all visible submenus</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   752
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   753
			<span class="nx">oRootMenu</span><span class="o">.</span><span class="nx">all</span><span class="o">(</span><span class="nx">MENU_SELECTOR</span><span class="o">).</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">CSS_MENU_HIDDEN</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   754
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   755
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   756
			<span class="c">//	Wire up all event handlers</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   757
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   758
			<span class="nx">aHandlers</span><span class="o">.</span><span class="nx">push</span><span class="o">(</span><span class="nx">oRootMenu</span><span class="o">.</span><span class="nx">on</span><span class="o">(</span><span class="s2">&quot;mouseover&quot;</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_onMouseOver</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   759
			<span class="nx">aHandlers</span><span class="o">.</span><span class="nx">push</span><span class="o">(</span><span class="nx">oRootMenu</span><span class="o">.</span><span class="nx">on</span><span class="o">(</span><span class="s2">&quot;mouseout&quot;</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_onMouseOut</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   760
			<span class="nx">aHandlers</span><span class="o">.</span><span class="nx">push</span><span class="o">(</span><span class="nx">oRootMenu</span><span class="o">.</span><span class="nx">on</span><span class="o">(</span><span class="s2">&quot;mousemove&quot;</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_onMouseMove</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   761
			<span class="nx">aHandlers</span><span class="o">.</span><span class="nx">push</span><span class="o">(</span><span class="nx">oRootMenu</span><span class="o">.</span><span class="nx">on</span><span class="o">(</span><span class="nx">MOUSEDOWN</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_toggleSubmenuDisplay</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   762
			<span class="nx">aHandlers</span><span class="o">.</span><span class="nx">push</span><span class="o">(</span><span class="nx">Y</span><span class="o">.</span><span class="nx">on</span><span class="o">(</span><span class="s2">&quot;key&quot;</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_toggleSubmenuDisplay</span><span class="o">,</span> <span class="nx">oRootMenu</span><span class="o">,</span> <span class="s2">&quot;down:13&quot;</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   763
			<span class="nx">aHandlers</span><span class="o">.</span><span class="nx">push</span><span class="o">(</span><span class="nx">oRootMenu</span><span class="o">.</span><span class="nx">on</span><span class="o">(</span><span class="nx">CLICK</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_toggleSubmenuDisplay</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   764
			<span class="nx">aHandlers</span><span class="o">.</span><span class="nx">push</span><span class="o">(</span><span class="nx">oRootMenu</span><span class="o">.</span><span class="nx">on</span><span class="o">(</span><span class="s2">&quot;keypress&quot;</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_onKeyPress</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   765
			<span class="nx">aHandlers</span><span class="o">.</span><span class="nx">push</span><span class="o">(</span><span class="nx">oRootMenu</span><span class="o">.</span><span class="nx">on</span><span class="o">(</span><span class="nx">KEYDOWN</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_onKeyDown</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   766
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   767
			<span class="nx">oDoc</span> <span class="o">=</span> <span class="nx">oRootMenu</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s2">&quot;ownerDocument&quot;</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   768
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   769
		    <span class="nx">aHandlers</span><span class="o">.</span><span class="nx">push</span><span class="o">(</span><span class="nx">oDoc</span><span class="o">.</span><span class="nx">on</span><span class="o">(</span><span class="nx">MOUSEDOWN</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_onDocMouseDown</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   770
			<span class="nx">aHandlers</span><span class="o">.</span><span class="nx">push</span><span class="o">(</span><span class="nx">oDoc</span><span class="o">.</span><span class="nx">on</span><span class="o">(</span><span class="s2">&quot;focus&quot;</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_onDocFocus</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   771
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   772
			<span class="k">this</span><span class="o">.</span><span class="nx">_eventHandlers</span> <span class="o">=</span> <span class="nx">aHandlers</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   773
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   774
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_initFocusManager</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   775
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   776
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   777
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   778
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   779
    <span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   780
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   781
	<span class="nx">destructor</span><span class="o">:</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   782
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   783
		<span class="k">var</span> <span class="nx">aHandlers</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_eventHandlers</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   784
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   785
		<span class="k">if</span> <span class="o">(</span><span class="nx">aHandlers</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   786
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   787
			<span class="nx">Y</span><span class="o">.</span><span class="nb">Array</span><span class="o">.</span><span class="nx">each</span><span class="o">(</span><span class="nx">aHandlers</span><span class="o">,</span> <span class="k">function</span> <span class="o">(</span><span class="nx">handle</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   788
				<span class="nx">handle</span><span class="o">.</span><span class="nx">detach</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   789
			<span class="o">});</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   790
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   791
			<span class="k">this</span><span class="o">.</span><span class="nx">_eventHandlers</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   792
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   793
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   794
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   795
		<span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">HOST</span><span class="o">).</span><span class="nx">unplug</span><span class="o">(</span><span class="s2">&quot;focusManager&quot;</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   796
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   797
    <span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   798
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   799
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   800
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   801
	<span class="c">//	Protected methods</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   802
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   803
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   804
<span class="c">	* @method _isRoot</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   805
<span class="c">	* @description Returns a boolean indicating if the specified menu is the </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   806
<span class="c">	* root menu in the menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   807
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   808
<span class="c">	* @param {Node} menu Node instance representing a menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   809
<span class="c">	* @return {Boolean} Boolean indicating if the specified menu is the root </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   810
<span class="c">	* menu in the menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   811
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   812
	<span class="nx">_isRoot</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">menu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   813
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   814
		<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">_rootMenu</span><span class="o">.</span><span class="nx">compareTo</span><span class="o">(</span><span class="nx">menu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   815
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   816
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   817
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   818
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   819
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   820
<span class="c">	* @method _getTopmostSubmenu</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   821
<span class="c">	* @description Returns the topmost submenu of a submenu hierarchy.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   822
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   823
<span class="c">	* @param {Node} menu Node instance representing a menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   824
<span class="c">	* @return {Node} Node instance representing a menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   825
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   826
	<span class="nx">_getTopmostSubmenu</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">menu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   827
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   828
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   829
			<span class="nx">oMenu</span> <span class="o">=</span> <span class="nx">getParentMenu</span><span class="o">(</span><span class="nx">menu</span><span class="o">),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   830
			<span class="nx">returnVal</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   831
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   832
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   833
		<span class="k">if</span> <span class="o">(!</span><span class="nx">oMenu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   834
			<span class="nx">returnVal</span> <span class="o">=</span> <span class="nx">menu</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   835
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   836
		<span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_isRoot</span><span class="o">(</span><span class="nx">oMenu</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   837
			<span class="nx">returnVal</span> <span class="o">=</span> <span class="nx">menu</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   838
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   839
		<span class="k">else</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   840
			<span class="nx">returnVal</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_getTopmostSubmenu</span><span class="o">(</span><span class="nx">oMenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   841
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   842
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   843
		<span class="k">return</span> <span class="nx">returnVal</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   844
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   845
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   846
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   847
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   848
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   849
<span class="c">	* @method _clearActiveItem</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   850
<span class="c">	* @description Clears the menu&#39;s active descendent.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   851
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   852
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   853
	<span class="nx">_clearActiveItem</span><span class="o">:</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   854
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   855
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   856
			<span class="nx">oActiveItem</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeItem</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   857
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   858
		<span class="k">if</span> <span class="o">(</span><span class="nx">oActiveItem</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   859
			<span class="nx">oActiveItem</span><span class="o">.</span><span class="nx">removeClass</span><span class="o">(</span><span class="nx">getActiveClass</span><span class="o">(</span><span class="nx">oActiveItem</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   860
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   861
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   862
		<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeItem</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   863
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   864
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   865
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   866
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   867
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   868
<span class="c">	* @method _setActiveItem</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   869
<span class="c">	* @description Sets the specified menuitem or menu label as the menu&#39;s </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   870
<span class="c">	* active descendent.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   871
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   872
<span class="c">	* @param {Node} item Node instance representing a menuitem or menu label.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   873
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   874
	<span class="nx">_setActiveItem</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">item</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   875
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   876
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   877
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   878
		<span class="k">if</span> <span class="o">(</span><span class="nx">item</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   879
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   880
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_clearActiveItem</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   881
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   882
			<span class="nx">item</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">getActiveClass</span><span class="o">(</span><span class="nx">item</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   883
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   884
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeItem</span> <span class="o">=</span> <span class="nx">item</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   885
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   886
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   887
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   888
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   889
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   890
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   891
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   892
<span class="c">	* @method _focusItem</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   893
<span class="c">	* @description Focuses the specified menuitem or menu label.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   894
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   895
<span class="c">	* @param {Node} item Node instance representing a menuitem or menu label.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   896
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   897
	<span class="nx">_focusItem</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">item</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   898
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   899
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   900
			<span class="nx">oMenu</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   901
			<span class="nx">oItem</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   902
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   903
		<span class="k">if</span> <span class="o">(</span><span class="nx">item</span> <span class="o">&amp;&amp;</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hasFocus</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   904
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   905
			<span class="nx">oMenu</span> <span class="o">=</span> <span class="nx">getParentMenu</span><span class="o">(</span><span class="nx">item</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   906
			<span class="nx">oItem</span> <span class="o">=</span> <span class="nx">getItemAnchor</span><span class="o">(</span><span class="nx">item</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   907
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   908
			<span class="k">if</span> <span class="o">(</span><span class="nx">oMenu</span> <span class="o">&amp;&amp;</span> <span class="o">!</span><span class="nx">oMenu</span><span class="o">.</span><span class="nx">compareTo</span><span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeMenu</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   909
				<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeMenu</span> <span class="o">=</span> <span class="nx">oMenu</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   910
				<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_initFocusManager</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   911
			<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   912
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   913
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusManager</span><span class="o">.</span><span class="nx">focus</span><span class="o">(</span><span class="nx">oItem</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   914
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   915
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   916
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   917
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   918
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   919
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   920
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   921
<span class="c">	* @method _showMenu</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   922
<span class="c">	* @description Shows the specified menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   923
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   924
<span class="c">	* @param {Node} menu Node instance representing a menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   925
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   926
	<span class="nx">_showMenu</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">menu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   927
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   928
		<span class="k">var</span> <span class="nx">oParentMenu</span> <span class="o">=</span> <span class="nx">getParentMenu</span><span class="o">(</span><span class="nx">menu</span><span class="o">),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   929
			<span class="nx">oLI</span> <span class="o">=</span> <span class="nx">menu</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">PARENT_NODE</span><span class="o">),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   930
			<span class="nx">aXY</span> <span class="o">=</span> <span class="nx">oLI</span><span class="o">.</span><span class="nx">getXY</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   931
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   932
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   933
		<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">USE_ARIA</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   934
			<span class="nx">menu</span><span class="o">.</span><span class="nx">set</span><span class="o">(</span><span class="nx">ARIA_HIDDEN</span><span class="o">,</span> <span class="kc">false</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   935
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   936
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   937
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   938
		<span class="k">if</span> <span class="o">(</span><span class="nx">isHorizontalMenu</span><span class="o">(</span><span class="nx">oParentMenu</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   939
			<span class="nx">aXY</span><span class="o">[</span><span class="m">1</span><span class="o">]</span> <span class="o">=</span> <span class="nx">aXY</span><span class="o">[</span><span class="m">1</span><span class="o">]</span> <span class="o">+</span> <span class="nx">oLI</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">OFFSET_HEIGHT</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   940
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   941
		<span class="k">else</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   942
			<span class="nx">aXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">=</span> <span class="nx">aXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">+</span> <span class="nx">oLI</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">OFFSET_WIDTH</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   943
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   944
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   945
		<span class="nx">menu</span><span class="o">.</span><span class="nx">setXY</span><span class="o">(</span><span class="nx">aXY</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   946
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   947
		<span class="k">if</span> <span class="o">(</span><span class="nx">UA</span><span class="o">.</span><span class="nx">ie</span> <span class="o">&lt;</span> <span class="m">8</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   948
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   949
			<span class="k">if</span> <span class="o">(</span><span class="nx">UA</span><span class="o">.</span><span class="nx">ie</span> <span class="o">===</span> <span class="m">6</span> <span class="o">&amp;&amp;</span> <span class="o">!</span><span class="nx">menu</span><span class="o">.</span><span class="nx">hasIFrameShim</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   950
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   951
				<span class="nx">menu</span><span class="o">.</span><span class="nx">appendChild</span><span class="o">(</span><span class="nx">Y</span><span class="o">.</span><span class="nx">Node</span><span class="o">.</span><span class="nx">create</span><span class="o">(</span><span class="nx">NodeMenuNav</span><span class="o">.</span><span class="nx">SHIM_TEMPLATE</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   952
				<span class="nx">menu</span><span class="o">.</span><span class="nx">hasIFrameShim</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   953
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   954
			<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   955
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   956
			<span class="c">//	Clear previous values for height and width</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   957
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   958
			<span class="nx">menu</span><span class="o">.</span><span class="nx">setStyles</span><span class="o">({</span> <span class="nx">height</span><span class="o">:</span> <span class="nx">EMPTY_STRING</span><span class="o">,</span> <span class="nx">width</span><span class="o">:</span> <span class="nx">EMPTY_STRING</span> <span class="o">});</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   959
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   960
			<span class="c">//	Set the width and height of the menu&#39;s bounding box - this is </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   961
<span class="c"></span>			<span class="c">//	necessary for IE 6 so that the CSS for the &lt;iframe&gt; shim can </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   962
<span class="c"></span>			<span class="c">//	simply set the &lt;iframe&gt;&#39;s width and height to 100% to ensure </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   963
<span class="c"></span>			<span class="c">//	that dimensions of an &lt;iframe&gt; shim are always sync&#39;d to the </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   964
<span class="c"></span>			<span class="c">//	that of its parent menu.  Specifying a width and height also </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   965
<span class="c"></span>			<span class="c">//	helps when positioning decorator elements (for creating effects </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   966
<span class="c"></span>			<span class="c">//	like rounded corners) inside a menu&#39;s bounding box in IE 7.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   967
<span class="c"></span>			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   968
			<span class="nx">menu</span><span class="o">.</span><span class="nx">setStyles</span><span class="o">({</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   969
				<span class="nx">height</span><span class="o">:</span> <span class="o">(</span><span class="nx">menu</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">OFFSET_HEIGHT</span><span class="o">)</span> <span class="o">+</span> <span class="nx">PX</span><span class="o">),</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   970
				<span class="nx">width</span><span class="o">:</span> <span class="o">(</span><span class="nx">menu</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">OFFSET_WIDTH</span><span class="o">)</span> <span class="o">+</span> <span class="nx">PX</span><span class="o">)</span> <span class="o">});</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   971
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   972
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   973
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   974
		<span class="nx">menu</span><span class="o">.</span><span class="nx">previous</span><span class="o">().</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">CSS_MENU_LABEL_MENUVISIBLE</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   975
		<span class="nx">menu</span><span class="o">.</span><span class="nx">removeClass</span><span class="o">(</span><span class="nx">CSS_MENU_HIDDEN</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   976
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   977
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   978
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   979
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   980
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   981
<span class="c">	* @method _hideMenu </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   982
<span class="c">	* @description Hides the specified menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   983
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   984
<span class="c">	* @param {Node} menu Node instance representing a menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   985
<span class="c">	* @param {Boolean} activateAndFocusLabel Boolean indicating if the label </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   986
<span class="c">	* for the specified </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   987
<span class="c">	* menu should be focused and set as active.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   988
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   989
	<span class="nx">_hideMenu</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">menu</span><span class="o">,</span> <span class="nx">activateAndFocusLabel</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   990
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   991
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   992
			<span class="nx">oLabel</span> <span class="o">=</span> <span class="nx">menu</span><span class="o">.</span><span class="nx">previous</span><span class="o">(),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   993
			<span class="nx">oActiveItem</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   994
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   995
		<span class="nx">oLabel</span><span class="o">.</span><span class="nx">removeClass</span><span class="o">(</span><span class="nx">CSS_MENU_LABEL_MENUVISIBLE</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   996
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   997
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   998
		<span class="k">if</span> <span class="o">(</span><span class="nx">activateAndFocusLabel</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   999
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusItem</span><span class="o">(</span><span class="nx">oLabel</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1000
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_setActiveItem</span><span class="o">(</span><span class="nx">oLabel</span><span class="o">);</span>			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1001
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1002
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1003
		<span class="nx">oActiveItem</span> <span class="o">=</span> <span class="nx">menu</span><span class="o">.</span><span class="nx">one</span><span class="o">((</span><span class="nx">PERIOD</span> <span class="o">+</span> <span class="nx">CSS_MENUITEM_ACTIVE</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1004
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1005
		<span class="k">if</span> <span class="o">(</span><span class="nx">oActiveItem</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1006
			<span class="nx">oActiveItem</span><span class="o">.</span><span class="nx">removeClass</span><span class="o">(</span><span class="nx">CSS_MENUITEM_ACTIVE</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1007
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1008
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1009
		<span class="c">//	Clear the values for top and left that were set by the call to </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1010
<span class="c"></span>		<span class="c">//	&quot;setXY&quot; when the menu was shown so that the hidden position </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1011
<span class="c"></span>		<span class="c">//	specified in the core CSS file will take affect.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1012
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1013
		<span class="nx">menu</span><span class="o">.</span><span class="nx">setStyles</span><span class="o">({</span> <span class="nx">left</span><span class="o">:</span> <span class="nx">EMPTY_STRING</span><span class="o">,</span> <span class="nx">top</span><span class="o">:</span> <span class="nx">EMPTY_STRING</span> <span class="o">});</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1014
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1015
		<span class="nx">menu</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">CSS_MENU_HIDDEN</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1016
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1017
		<span class="k">if</span> <span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">USE_ARIA</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1018
			<span class="nx">menu</span><span class="o">.</span><span class="nx">set</span><span class="o">(</span><span class="nx">ARIA_HIDDEN</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1019
		<span class="o">}</span>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1020
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1021
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1022
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1023
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1024
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1025
<span class="c">	* @method _hideAllSubmenus</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1026
<span class="c">	* @description Hides all submenus of the specified menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1027
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1028
<span class="c">	* @param {Node} menu Node instance representing a menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1029
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1030
	<span class="nx">_hideAllSubmenus</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">menu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1031
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1032
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1033
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1034
		<span class="nx">menu</span><span class="o">.</span><span class="nx">all</span><span class="o">(</span><span class="nx">MENU_SELECTOR</span><span class="o">).</span><span class="nx">each</span><span class="o">(</span><span class="nx">Y</span><span class="o">.</span><span class="nx">bind</span><span class="o">(</span><span class="k">function</span> <span class="o">(</span><span class="nx">submenuNode</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1035
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1036
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideMenu</span><span class="o">(</span><span class="nx">submenuNode</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1037
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1038
		<span class="o">},</span> <span class="nx">menuNav</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1039
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1040
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1041
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1042
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1043
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1044
<span class="c">	* @method _cancelShowSubmenuTimer</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1045
<span class="c">	* @description Cancels the timer used to show a submenu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1046
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1047
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1048
	<span class="nx">_cancelShowSubmenuTimer</span><span class="o">:</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1049
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1050
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1051
			<span class="nx">oShowSubmenuTimer</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_showSubmenuTimer</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1052
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1053
		<span class="k">if</span> <span class="o">(</span><span class="nx">oShowSubmenuTimer</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1054
			<span class="nx">oShowSubmenuTimer</span><span class="o">.</span><span class="nx">cancel</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1055
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_showSubmenuTimer</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1056
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1057
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1058
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1059
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1060
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1061
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1062
<span class="c">	* @method _cancelHideSubmenuTimer</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1063
<span class="c">	* @description Cancels the timer used to hide a submenu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1064
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1065
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1066
	<span class="nx">_cancelHideSubmenuTimer</span><span class="o">:</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1067
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1068
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1069
			<span class="nx">oHideSubmenuTimer</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideSubmenuTimer</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1070
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1071
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1072
		<span class="k">if</span> <span class="o">(</span><span class="nx">oHideSubmenuTimer</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1073
			<span class="nx">oHideSubmenuTimer</span><span class="o">.</span><span class="nx">cancel</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1074
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideSubmenuTimer</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1075
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1076
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1077
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1078
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1079
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1080
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1081
<span class="c">	* @method _initFocusManager</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1082
<span class="c">	* @description Initializes and updates the Focus Manager so that is is </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1083
<span class="c">	* always managing descendants of the active menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1084
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1085
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1086
	<span class="nx">_initFocusManager</span><span class="o">:</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1087
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1088
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1089
			<span class="nx">oRootMenu</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_rootMenu</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1090
			<span class="nx">oMenu</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeMenu</span> <span class="o">||</span> <span class="nx">oRootMenu</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1091
			<span class="nx">sSelectorBase</span> <span class="o">=</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1092
				<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_isRoot</span><span class="o">(</span><span class="nx">oMenu</span><span class="o">)</span> <span class="o">?</span> <span class="nx">EMPTY_STRING</span> <span class="o">:</span> <span class="o">(</span><span class="s2">&quot;#&quot;</span> <span class="o">+</span> <span class="nx">oMenu</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s2">&quot;id&quot;</span><span class="o">)),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1093
			<span class="nx">oFocusManager</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusManager</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1094
			<span class="nx">sKeysVal</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1095
			<span class="nx">sDescendantSelector</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1096
			<span class="nx">sQuery</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1097
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1098
		<span class="k">if</span> <span class="o">(</span><span class="nx">isHorizontalMenu</span><span class="o">(</span><span class="nx">oMenu</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1099
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1100
			<span class="nx">sDescendantSelector</span> <span class="o">=</span> <span class="nx">sSelectorBase</span> <span class="o">+</span> <span class="nx">STANDARD_QUERY</span> <span class="o">+</span> <span class="s2">&quot;,&quot;</span> <span class="o">+</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1101
				<span class="nx">sSelectorBase</span> <span class="o">+</span> <span class="nx">EXTENDED_QUERY</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1102
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1103
			<span class="nx">sKeysVal</span> <span class="o">=</span> <span class="o">{</span> <span class="nx">next</span><span class="o">:</span> <span class="s2">&quot;down:39&quot;</span><span class="o">,</span> <span class="nx">previous</span><span class="o">:</span> <span class="s2">&quot;down:37&quot;</span> <span class="o">};</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1104
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1105
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1106
		<span class="k">else</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1107
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1108
			<span class="nx">sDescendantSelector</span> <span class="o">=</span> <span class="nx">sSelectorBase</span> <span class="o">+</span> <span class="nx">STANDARD_QUERY</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1109
			<span class="nx">sKeysVal</span> <span class="o">=</span> <span class="o">{</span> <span class="nx">next</span><span class="o">:</span> <span class="s2">&quot;down:40&quot;</span><span class="o">,</span> <span class="nx">previous</span><span class="o">:</span> <span class="s2">&quot;down:38&quot;</span> <span class="o">};</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1110
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1111
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1112
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1113
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1114
		<span class="k">if</span> <span class="o">(!</span><span class="nx">oFocusManager</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1115
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1116
			<span class="nx">oRootMenu</span><span class="o">.</span><span class="nx">plug</span><span class="o">(</span><span class="nx">Y</span><span class="o">.</span><span class="nx">Plugin</span><span class="o">.</span><span class="nx">NodeFocusManager</span><span class="o">,</span> <span class="o">{</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1117
				<span class="nx">descendants</span><span class="o">:</span> <span class="nx">sDescendantSelector</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1118
				<span class="nx">keys</span><span class="o">:</span> <span class="nx">sKeysVal</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1119
				<span class="nx">circular</span><span class="o">:</span> <span class="kc">true</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1120
			<span class="o">});</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1121
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1122
			<span class="nx">oFocusManager</span> <span class="o">=</span> <span class="nx">oRootMenu</span><span class="o">.</span><span class="nx">focusManager</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1123
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1124
			<span class="nx">sQuery</span> <span class="o">=</span> <span class="s2">&quot;#&quot;</span> <span class="o">+</span> <span class="nx">oRootMenu</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s2">&quot;id&quot;</span><span class="o">)</span> <span class="o">+</span> <span class="s2">&quot; .yui-menu a,&quot;</span> <span class="o">+</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1125
							<span class="nx">MENU_TOGGLE_SELECTOR</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1126
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1127
			<span class="nx">oRootMenu</span><span class="o">.</span><span class="nx">all</span><span class="o">(</span><span class="nx">sQuery</span><span class="o">).</span><span class="nx">set</span><span class="o">(</span><span class="s2">&quot;tabIndex&quot;</span><span class="o">,</span> <span class="o">-</span><span class="m">1</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1128
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1129
			<span class="nx">oFocusManager</span><span class="o">.</span><span class="nx">on</span><span class="o">(</span><span class="nx">ACTIVE_DESCENDANT_CHANGE</span><span class="o">,</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1130
				<span class="k">this</span><span class="o">.</span><span class="nx">_onActiveDescendantChange</span><span class="o">,</span> <span class="nx">oFocusManager</span><span class="o">,</span> <span class="k">this</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1131
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1132
			<span class="nx">oFocusManager</span><span class="o">.</span><span class="nx">after</span><span class="o">(</span><span class="nx">ACTIVE_DESCENDANT_CHANGE</span><span class="o">,</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1133
				<span class="k">this</span><span class="o">.</span><span class="nx">_afterActiveDescendantChange</span><span class="o">,</span> <span class="nx">oFocusManager</span><span class="o">,</span> <span class="k">this</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1134
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1135
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusManager</span> <span class="o">=</span> <span class="nx">oFocusManager</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1136
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1137
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1138
		<span class="k">else</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1139
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1140
			<span class="nx">oFocusManager</span><span class="o">.</span><span class="nx">set</span><span class="o">(</span><span class="nx">ACTIVE_DESCENDANT</span><span class="o">,</span> <span class="o">-</span><span class="m">1</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1141
			<span class="nx">oFocusManager</span><span class="o">.</span><span class="nx">set</span><span class="o">(</span><span class="nx">DESCENDANTS</span><span class="o">,</span> <span class="nx">sDescendantSelector</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1142
			<span class="nx">oFocusManager</span><span class="o">.</span><span class="nx">set</span><span class="o">(</span><span class="s2">&quot;keys&quot;</span><span class="o">,</span> <span class="nx">sKeysVal</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1143
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1144
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1145
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1146
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1147
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1148
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1149
	<span class="c">//	Event handlers for discrete pieces of pieces of the menu</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1150
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1151
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1152
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1153
<span class="c">	* @method _onActiveDescendantChange</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1154
<span class="c">	* @description &quot;activeDescendantChange&quot; event handler for menu&#39;s </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1155
<span class="c">	* Focus Manager.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1156
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1157
<span class="c">	* @param {Object} event Object representing the Attribute change event.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1158
<span class="c">	* @param {NodeMenuNav} menuNav Object representing the NodeMenuNav instance.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1159
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1160
	<span class="nx">_onActiveDescendantChange</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">event</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1161
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1162
		<span class="k">if</span> <span class="o">(</span><span class="nx">event</span><span class="o">.</span><span class="nx">src</span> <span class="o">===</span> <span class="nx">UI</span> <span class="o">&amp;&amp;</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeMenu</span> <span class="o">&amp;&amp;</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1163
				<span class="o">!</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_movingToSubmenu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1164
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1165
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideAllSubmenus</span><span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeMenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1166
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1167
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1168
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1169
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1170
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1171
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1172
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1173
<span class="c">	* @method _afterActiveDescendantChange</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1174
<span class="c">	* @description &quot;activeDescendantChange&quot; event handler for menu&#39;s </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1175
<span class="c">	* Focus Manager.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1176
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1177
<span class="c">	* @param {Object} event Object representing the Attribute change event.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1178
<span class="c">	* @param {NodeMenuNav} menuNav Object representing the NodeMenuNav instance.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1179
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1180
	<span class="nx">_afterActiveDescendantChange</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">event</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1181
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1182
		<span class="k">var</span> <span class="nx">oItem</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1183
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1184
		<span class="k">if</span> <span class="o">(</span><span class="nx">event</span><span class="o">.</span><span class="nx">src</span> <span class="o">===</span> <span class="nx">UI</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1185
			<span class="nx">oItem</span> <span class="o">=</span> <span class="nx">getItem</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">DESCENDANTS</span><span class="o">).</span><span class="nx">item</span><span class="o">(</span><span class="nx">event</span><span class="o">.</span><span class="nx">newVal</span><span class="o">),</span> <span class="kc">true</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1186
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_setActiveItem</span><span class="o">(</span><span class="nx">oItem</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1187
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1188
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1189
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1190
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1191
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1192
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1193
<span class="c">	* @method _onDocFocus</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1194
<span class="c">	* @description &quot;focus&quot; event handler for the owner document of the MenuNav.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1195
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1196
<span class="c">	* @param {Object} event Object representing the DOM event.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1197
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1198
	<span class="nx">_onDocFocus</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">event</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1199
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1200
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1201
			<span class="nx">oActiveItem</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeItem</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1202
			<span class="nx">oTarget</span> <span class="o">=</span> <span class="nx">event</span><span class="o">.</span><span class="nx">target</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1203
			<span class="nx">oMenu</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1204
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1205
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1206
		<span class="k">if</span> <span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_rootMenu</span><span class="o">.</span><span class="nx">contains</span><span class="o">(</span><span class="nx">oTarget</span><span class="o">))</span> <span class="o">{</span>	<span class="c">//	The menu has focus</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1207
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1208
			<span class="k">if</span> <span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hasFocus</span><span class="o">)</span> <span class="o">{</span>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1209
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1210
				<span class="nx">oMenu</span> <span class="o">=</span> <span class="nx">getParentMenu</span><span class="o">(</span><span class="nx">oTarget</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1211
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1212
				<span class="c">//	If the element that was focused is a descendant of the </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1213
<span class="c"></span>				<span class="c">//	root menu, but is in a submenu not currently being </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1214
<span class="c"></span>				<span class="c">//	managed by the Focus Manager, update the Focus Manager so </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1215
<span class="c"></span>				<span class="c">//	that it is now managing the submenu that is the parent of  </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1216
<span class="c"></span>				<span class="c">//	the element that was focused.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1217
<span class="c"></span>				
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1218
				<span class="k">if</span> <span class="o">(!</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeMenu</span><span class="o">.</span><span class="nx">compareTo</span><span class="o">(</span><span class="nx">oMenu</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1219
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1220
					<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeMenu</span> <span class="o">=</span> <span class="nx">oMenu</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1221
					<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_initFocusManager</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1222
					<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusManager</span><span class="o">.</span><span class="nx">set</span><span class="o">(</span><span class="nx">ACTIVE_DESCENDANT</span><span class="o">,</span> <span class="nx">oTarget</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1223
					<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_setActiveItem</span><span class="o">(</span><span class="nx">getItem</span><span class="o">(</span><span class="nx">oTarget</span><span class="o">,</span> <span class="kc">true</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1224
					
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1225
				<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1226
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1227
			<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1228
			<span class="k">else</span> <span class="o">{</span> <span class="c">//	Initial focus</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1229
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1230
				<span class="c">//	First time the menu has been focused, need to setup focused </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1231
<span class="c"></span>				<span class="c">//	state and established active active descendant</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1232
<span class="c"></span>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1233
				<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hasFocus</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1234
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1235
				<span class="nx">oActiveItem</span> <span class="o">=</span> <span class="nx">getItem</span><span class="o">(</span><span class="nx">oTarget</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1236
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1237
				<span class="k">if</span> <span class="o">(</span><span class="nx">oActiveItem</span><span class="o">)</span> <span class="o">{</span>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1238
					<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_setActiveItem</span><span class="o">(</span><span class="nx">oActiveItem</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1239
				<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1240
				
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1241
			<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1242
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1243
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1244
		<span class="k">else</span> <span class="o">{</span>	<span class="c">//	The menu has lost focus</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1245
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1246
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_clearActiveItem</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1247
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1248
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_cancelShowSubmenuTimer</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1249
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideAllSubmenus</span><span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_rootMenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1250
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1251
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeMenu</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_rootMenu</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1252
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_initFocusManager</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1253
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1254
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusManager</span><span class="o">.</span><span class="nx">set</span><span class="o">(</span><span class="nx">ACTIVE_DESCENDANT</span><span class="o">,</span> <span class="m">0</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1255
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1256
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hasFocus</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1257
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1258
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1259
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1260
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1261
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1262
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1263
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1264
<span class="c">	* @method _onMenuMouseOver</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1265
<span class="c">	* @description &quot;mouseover&quot; event handler for a menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1266
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1267
<span class="c">	* @param {Node} menu Node instance representing a menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1268
<span class="c">	* @param {Object} event Object representing the DOM event.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1269
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1270
	<span class="nx">_onMenuMouseOver</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">menu</span><span class="o">,</span> <span class="nx">event</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1271
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1272
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1273
			<span class="nx">oHideAllSubmenusTimer</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideAllSubmenusTimer</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1274
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1275
		<span class="k">if</span> <span class="o">(</span><span class="nx">oHideAllSubmenusTimer</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1276
			<span class="nx">oHideAllSubmenusTimer</span><span class="o">.</span><span class="nx">cancel</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1277
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideAllSubmenusTimer</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1278
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1279
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1280
		<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_cancelHideSubmenuTimer</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1281
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1282
		<span class="c">//	Need to update the FocusManager in advance of focus a new </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1283
<span class="c"></span>		<span class="c">//	Menu in order to avoid the FocusManager thinking that </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1284
<span class="c"></span>		<span class="c">//	it has lost focus</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1285
<span class="c"></span>		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1286
		<span class="k">if</span> <span class="o">(</span><span class="nx">menu</span> <span class="o">&amp;&amp;</span> <span class="o">!</span><span class="nx">menu</span><span class="o">.</span><span class="nx">compareTo</span><span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeMenu</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1287
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeMenu</span> <span class="o">=</span> <span class="nx">menu</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1288
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1289
			<span class="k">if</span> <span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hasFocus</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1290
				<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_initFocusManager</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1291
			<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1292
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1293
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1294
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1295
		<span class="k">if</span> <span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_movingToSubmenu</span> <span class="o">&amp;&amp;</span> <span class="nx">isHorizontalMenu</span><span class="o">(</span><span class="nx">menu</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1296
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_movingToSubmenu</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1297
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1298
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1299
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1300
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1301
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1302
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1303
<span class="c">	* @method _hideAndFocusLabel</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1304
<span class="c">	* @description Hides all of the submenus of the root menu and focuses the </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1305
<span class="c">	* label of the topmost submenu</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1306
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1307
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1308
	<span class="nx">_hideAndFocusLabel</span><span class="o">:</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1309
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1310
		<span class="k">var</span>	<span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1311
			<span class="nx">oActiveMenu</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeMenu</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1312
			<span class="nx">oSubmenu</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1313
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1314
		<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideAllSubmenus</span><span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_rootMenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1315
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1316
		<span class="k">if</span> <span class="o">(</span><span class="nx">oActiveMenu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1317
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1318
			<span class="c">//	Focus the label element for the topmost submenu</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1319
<span class="c"></span>			<span class="nx">oSubmenu</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_getTopmostSubmenu</span><span class="o">(</span><span class="nx">oActiveMenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1320
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusItem</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">.</span><span class="nx">previous</span><span class="o">());</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1321
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1322
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1323
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1324
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1325
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1326
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1327
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1328
<span class="c">	* @method _onMenuMouseOut</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1329
<span class="c">	* @description &quot;mouseout&quot; event handler for a menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1330
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1331
<span class="c">	* @param {Node} menu Node instance representing a menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1332
<span class="c">	* @param {Object} event Object representing the DOM event.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1333
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1334
	<span class="nx">_onMenuMouseOut</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">menu</span><span class="o">,</span> <span class="nx">event</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1335
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1336
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1337
			<span class="nx">oActiveMenu</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeMenu</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1338
			<span class="nx">oRelatedTarget</span> <span class="o">=</span> <span class="nx">event</span><span class="o">.</span><span class="nx">relatedTarget</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1339
			<span class="nx">oActiveItem</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeItem</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1340
			<span class="nx">oParentMenu</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1341
			<span class="nx">oMenu</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1342
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1343
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1344
		<span class="k">if</span> <span class="o">(</span><span class="nx">oActiveMenu</span> <span class="o">&amp;&amp;</span> <span class="o">!</span><span class="nx">oActiveMenu</span><span class="o">.</span><span class="nx">contains</span><span class="o">(</span><span class="nx">oRelatedTarget</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1345
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1346
			<span class="nx">oParentMenu</span> <span class="o">=</span> <span class="nx">getParentMenu</span><span class="o">(</span><span class="nx">oActiveMenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1347
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1348
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1349
			<span class="k">if</span> <span class="o">(</span><span class="nx">oParentMenu</span> <span class="o">&amp;&amp;</span> <span class="o">!</span><span class="nx">oParentMenu</span><span class="o">.</span><span class="nx">contains</span><span class="o">(</span><span class="nx">oRelatedTarget</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1350
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1351
				<span class="k">if</span> <span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">MOUSEOUT_HIDE_DELAY</span><span class="o">)</span> <span class="o">&gt;</span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1352
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1353
					<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_cancelShowSubmenuTimer</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1354
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1355
					<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideAllSubmenusTimer</span> <span class="o">=</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1356
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1357
						<span class="nx">later</span><span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">MOUSEOUT_HIDE_DELAY</span><span class="o">),</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1358
							<span class="nx">menuNav</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideAndFocusLabel</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1359
						
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1360
				<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1361
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1362
			<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1363
			<span class="k">else</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1364
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1365
				<span class="k">if</span> <span class="o">(</span><span class="nx">oActiveItem</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1366
				
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1367
					<span class="nx">oMenu</span> <span class="o">=</span> <span class="nx">getParentMenu</span><span class="o">(</span><span class="nx">oActiveItem</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1368
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1369
					<span class="k">if</span> <span class="o">(!</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_isRoot</span><span class="o">(</span><span class="nx">oMenu</span><span class="o">))</span> <span class="o">{</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1370
						<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusItem</span><span class="o">(</span><span class="nx">oMenu</span><span class="o">.</span><span class="nx">previous</span><span class="o">());</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1371
					<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1372
				
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1373
				<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1374
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1375
			<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1376
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1377
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1378
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1379
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1380
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1381
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1382
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1383
<span class="c">	* @method _onMenuLabelMouseOver</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1384
<span class="c">	* @description &quot;mouseover&quot; event handler for a menu label.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1385
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1386
<span class="c">	* @param {Node} menuLabel Node instance representing a menu label.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1387
<span class="c">	* @param {Object} event Object representing the DOM event.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1388
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1389
	<span class="nx">_onMenuLabelMouseOver</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">menuLabel</span><span class="o">,</span> <span class="nx">event</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1390
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1391
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1392
			<span class="nx">oActiveMenu</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeMenu</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1393
			<span class="nx">bIsRoot</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_isRoot</span><span class="o">(</span><span class="nx">oActiveMenu</span><span class="o">),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1394
			<span class="nx">bUseAutoSubmenuDisplay</span> <span class="o">=</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1395
				<span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">AUTO_SUBMENU_DISPLAY</span><span class="o">)</span> <span class="o">&amp;&amp;</span> <span class="nx">bIsRoot</span> <span class="o">||</span> <span class="o">!</span><span class="nx">bIsRoot</span><span class="o">),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1396
			<span class="nx">oSubmenu</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1397
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1398
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1399
		<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusItem</span><span class="o">(</span><span class="nx">menuLabel</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1400
		<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_setActiveItem</span><span class="o">(</span><span class="nx">menuLabel</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1401
				
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1402
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1403
		<span class="k">if</span> <span class="o">(</span><span class="nx">bUseAutoSubmenuDisplay</span> <span class="o">&amp;&amp;</span> <span class="o">!</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_movingToSubmenu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1404
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1405
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_cancelHideSubmenuTimer</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1406
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_cancelShowSubmenuTimer</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1407
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1408
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1409
			<span class="k">if</span> <span class="o">(!</span><span class="nx">hasVisibleSubmenu</span><span class="o">(</span><span class="nx">menuLabel</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1410
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1411
				<span class="nx">oSubmenu</span> <span class="o">=</span> <span class="nx">menuLabel</span><span class="o">.</span><span class="nx">next</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1412
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1413
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1414
				<span class="k">if</span> <span class="o">(</span><span class="nx">oSubmenu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1415
					
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1416
					<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideAllSubmenus</span><span class="o">(</span><span class="nx">oActiveMenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1417
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1418
					<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_showSubmenuTimer</span> <span class="o">=</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1419
						<span class="nx">later</span><span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s2">&quot;submenuShowDelay&quot;</span><span class="o">),</span> <span class="nx">menuNav</span><span class="o">,</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1420
								<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_showMenu</span><span class="o">,</span> <span class="nx">oSubmenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1421
				
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1422
				<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1423
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1424
			<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1425
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1426
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1427
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1428
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1429
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1430
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1431
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1432
<span class="c">	* @method _onMenuLabelMouseOut</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1433
<span class="c">	* @description &quot;mouseout&quot; event handler for a menu label.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1434
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1435
<span class="c">	* @param {Node} menuLabel Node instance representing a menu label.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1436
<span class="c">	* @param {Object} event Object representing the DOM event.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1437
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1438
	<span class="nx">_onMenuLabelMouseOut</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">menuLabel</span><span class="o">,</span> <span class="nx">event</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1439
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1440
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1441
			<span class="nx">bIsRoot</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_isRoot</span><span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeMenu</span><span class="o">),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1442
			<span class="nx">bUseAutoSubmenuDisplay</span> <span class="o">=</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1443
				<span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">AUTO_SUBMENU_DISPLAY</span><span class="o">)</span> <span class="o">&amp;&amp;</span> <span class="nx">bIsRoot</span> <span class="o">||</span> <span class="o">!</span><span class="nx">bIsRoot</span><span class="o">),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1444
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1445
			<span class="nx">oRelatedTarget</span> <span class="o">=</span> <span class="nx">event</span><span class="o">.</span><span class="nx">relatedTarget</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1446
			<span class="nx">oSubmenu</span> <span class="o">=</span> <span class="nx">menuLabel</span><span class="o">.</span><span class="nx">next</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1447
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1448
		<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_clearActiveItem</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1449
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1450
		<span class="k">if</span> <span class="o">(</span><span class="nx">bUseAutoSubmenuDisplay</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1451
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1452
			<span class="k">if</span> <span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_movingToSubmenu</span> <span class="o">&amp;&amp;</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1453
					<span class="o">!</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_showSubmenuTimer</span> <span class="o">&amp;&amp;</span> <span class="nx">oSubmenu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1454
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1455
				<span class="c">//	If the mouse is moving diagonally toward the submenu and </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1456
<span class="c"></span>				<span class="c">//	another submenu isn&#39;t in the process of being displayed </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1457
<span class="c"></span>				<span class="c">//	(via a timer), then hide the submenu via a timer to give</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1458
<span class="c"></span>				<span class="c">//	the user some time to reach the submenu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1459
<span class="c"></span>			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1460
				<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideSubmenuTimer</span> <span class="o">=</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1461
					<span class="nx">later</span><span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s2">&quot;submenuHideDelay&quot;</span><span class="o">),</span> <span class="nx">menuNav</span><span class="o">,</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1462
						<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideMenu</span><span class="o">,</span> <span class="nx">oSubmenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1463
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1464
			<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1465
			<span class="k">else</span> <span class="k">if</span> <span class="o">(!</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_movingToSubmenu</span> <span class="o">&amp;&amp;</span> <span class="nx">oSubmenu</span> <span class="o">&amp;&amp;</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1466
				<span class="o">!</span><span class="nx">oSubmenu</span><span class="o">.</span><span class="nx">contains</span><span class="o">(</span><span class="nx">oRelatedTarget</span><span class="o">)</span> <span class="o">&amp;&amp;</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1467
				<span class="o">!</span><span class="nx">oRelatedTarget</span><span class="o">.</span><span class="nx">compareTo</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1468
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1469
				<span class="c">//	If the mouse is not moving toward the submenu, cancel any </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1470
<span class="c"></span>				<span class="c">//	submenus that might be in the process of being displayed </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1471
<span class="c"></span>				<span class="c">//	(via a timer) and hide this submenu immediately.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1472
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1473
				<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_cancelShowSubmenuTimer</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1474
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1475
				<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideMenu</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1476
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1477
			<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1478
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1479
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1480
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1481
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1482
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1483
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1484
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1485
<span class="c">	* @method _onMenuItemMouseOver</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1486
<span class="c">	* @description &quot;mouseover&quot; event handler for a menuitem.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1487
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1488
<span class="c">	* @param {Node} menuItem Node instance representing a menuitem.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1489
<span class="c">	* @param {Object} event Object representing the DOM event.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1490
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1491
	<span class="nx">_onMenuItemMouseOver</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">menuItem</span><span class="o">,</span> <span class="nx">event</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1492
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1493
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1494
			<span class="nx">oActiveMenu</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeMenu</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1495
			<span class="nx">bIsRoot</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_isRoot</span><span class="o">(</span><span class="nx">oActiveMenu</span><span class="o">),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1496
			<span class="nx">bUseAutoSubmenuDisplay</span> <span class="o">=</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1497
				<span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">AUTO_SUBMENU_DISPLAY</span><span class="o">)</span> <span class="o">&amp;&amp;</span> <span class="nx">bIsRoot</span> <span class="o">||</span> <span class="o">!</span><span class="nx">bIsRoot</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1498
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1499
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1500
		<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusItem</span><span class="o">(</span><span class="nx">menuItem</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1501
		<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_setActiveItem</span><span class="o">(</span><span class="nx">menuItem</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1502
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1503
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1504
		<span class="k">if</span> <span class="o">(</span><span class="nx">bUseAutoSubmenuDisplay</span> <span class="o">&amp;&amp;</span> <span class="o">!</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_movingToSubmenu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1505
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1506
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideAllSubmenus</span><span class="o">(</span><span class="nx">oActiveMenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1507
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1508
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1509
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1510
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1511
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1512
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1513
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1514
<span class="c">	* @method _onMenuItemMouseOut</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1515
<span class="c">	* @description &quot;mouseout&quot; event handler for a menuitem.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1516
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1517
<span class="c">	* @param {Node} menuItem Node instance representing a menuitem.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1518
<span class="c">	* @param {Object} event Object representing the DOM event.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1519
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1520
	<span class="nx">_onMenuItemMouseOut</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">menuItem</span><span class="o">,</span> <span class="nx">event</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1521
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1522
		<span class="k">this</span><span class="o">.</span><span class="nx">_clearActiveItem</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1523
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1524
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1525
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1526
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1527
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1528
<span class="c">	* @method _onVerticalMenuKeyDown</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1529
<span class="c">	* @description &quot;keydown&quot; event handler for vertical menus.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1530
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1531
<span class="c">	* @param {Object} event Object representing the DOM event.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1532
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1533
	<span class="nx">_onVerticalMenuKeyDown</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">event</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1534
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1535
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1536
			<span class="nx">oActiveMenu</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeMenu</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1537
			<span class="nx">oRootMenu</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_rootMenu</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1538
			<span class="nx">oTarget</span> <span class="o">=</span> <span class="nx">event</span><span class="o">.</span><span class="nx">target</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1539
			<span class="nx">bPreventDefault</span> <span class="o">=</span> <span class="kc">false</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1540
			<span class="nx">nKeyCode</span> <span class="o">=</span> <span class="nx">event</span><span class="o">.</span><span class="nx">keyCode</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1541
			<span class="nx">oSubmenu</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1542
			<span class="nx">oParentMenu</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1543
			<span class="nx">oLI</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1544
			<span class="nx">oItem</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1545
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1546
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1547
		<span class="nx">switch</span> <span class="o">(</span><span class="nx">nKeyCode</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1548
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1549
			<span class="nx">case</span> <span class="m">37</span><span class="o">:</span>	<span class="c">//	left arrow</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1550
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1551
				<span class="nx">oParentMenu</span> <span class="o">=</span> <span class="nx">getParentMenu</span><span class="o">(</span><span class="nx">oActiveMenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1552
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1553
				<span class="k">if</span> <span class="o">(</span><span class="nx">oParentMenu</span> <span class="o">&amp;&amp;</span> <span class="nx">isHorizontalMenu</span><span class="o">(</span><span class="nx">oParentMenu</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1554
				
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1555
					<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideMenu</span><span class="o">(</span><span class="nx">oActiveMenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1556
					<span class="nx">oLI</span> <span class="o">=</span> <span class="nx">getPreviousSibling</span><span class="o">(</span><span class="nx">oActiveMenu</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">PARENT_NODE</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1557
					<span class="nx">oItem</span> <span class="o">=</span> <span class="nx">getItem</span><span class="o">(</span><span class="nx">oLI</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1558
					
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1559
					<span class="k">if</span> <span class="o">(</span><span class="nx">oItem</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1560
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1561
						<span class="k">if</span> <span class="o">(</span><span class="nx">isMenuLabel</span><span class="o">(</span><span class="nx">oItem</span><span class="o">))</span> <span class="o">{</span>	<span class="c">//	Menu label</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1562
<span class="c"></span>						
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1563
							<span class="nx">oSubmenu</span> <span class="o">=</span> <span class="nx">oItem</span><span class="o">.</span><span class="nx">next</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1564
						
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1565
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1566
							<span class="k">if</span> <span class="o">(</span><span class="nx">oSubmenu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1567
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1568
								<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_showMenu</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1569
								<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusItem</span><span class="o">(</span><span class="nx">getFirstItem</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1570
								<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_setActiveItem</span><span class="o">(</span><span class="nx">getFirstItem</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1571
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1572
							<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1573
							<span class="k">else</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1574
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1575
								<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusItem</span><span class="o">(</span><span class="nx">oItem</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1576
								<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_setActiveItem</span><span class="o">(</span><span class="nx">oItem</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1577
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1578
							<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1579
						
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1580
						<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1581
						<span class="k">else</span> <span class="o">{</span>	<span class="c">//	MenuItem</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1582
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1583
							<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusItem</span><span class="o">(</span><span class="nx">oItem</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1584
							<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_setActiveItem</span><span class="o">(</span><span class="nx">oItem</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1585
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1586
						<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1587
					
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1588
					<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1589
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1590
				<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1591
				<span class="k">else</span> <span class="k">if</span> <span class="o">(!</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_isRoot</span><span class="o">(</span><span class="nx">oActiveMenu</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1592
					<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideMenu</span><span class="o">(</span><span class="nx">oActiveMenu</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1593
				<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1594
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1595
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1596
				<span class="nx">bPreventDefault</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1597
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1598
			<span class="k">break</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1599
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1600
			<span class="nx">case</span> <span class="m">39</span><span class="o">:</span>	<span class="c">//	right arrow</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1601
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1602
				<span class="k">if</span> <span class="o">(</span><span class="nx">isMenuLabel</span><span class="o">(</span><span class="nx">oTarget</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1603
					
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1604
					<span class="nx">oSubmenu</span> <span class="o">=</span> <span class="nx">oTarget</span><span class="o">.</span><span class="nx">next</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1605
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1606
					<span class="k">if</span> <span class="o">(</span><span class="nx">oSubmenu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1607
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1608
						<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_showMenu</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1609
						<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusItem</span><span class="o">(</span><span class="nx">getFirstItem</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1610
						<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_setActiveItem</span><span class="o">(</span><span class="nx">getFirstItem</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1611
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1612
					<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1613
				
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1614
				<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1615
				<span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">isHorizontalMenu</span><span class="o">(</span><span class="nx">oRootMenu</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1616
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1617
					<span class="nx">oSubmenu</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_getTopmostSubmenu</span><span class="o">(</span><span class="nx">oActiveMenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1618
					<span class="nx">oLI</span> <span class="o">=</span> <span class="nx">getNextSibling</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">PARENT_NODE</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1619
					<span class="nx">oItem</span> <span class="o">=</span> <span class="nx">getItem</span><span class="o">(</span><span class="nx">oLI</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1620
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1621
					<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideAllSubmenus</span><span class="o">(</span><span class="nx">oRootMenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1622
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1623
					<span class="k">if</span> <span class="o">(</span><span class="nx">oItem</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1624
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1625
						<span class="k">if</span> <span class="o">(</span><span class="nx">isMenuLabel</span><span class="o">(</span><span class="nx">oItem</span><span class="o">))</span> <span class="o">{</span>	<span class="c">//	Menu label</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1626
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1627
							<span class="nx">oSubmenu</span> <span class="o">=</span> <span class="nx">oItem</span><span class="o">.</span><span class="nx">next</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1628
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1629
							<span class="k">if</span> <span class="o">(</span><span class="nx">oSubmenu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1630
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1631
								<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_showMenu</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1632
								<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusItem</span><span class="o">(</span><span class="nx">getFirstItem</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1633
								<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_setActiveItem</span><span class="o">(</span><span class="nx">getFirstItem</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1634
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1635
							<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1636
							<span class="k">else</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1637
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1638
								<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusItem</span><span class="o">(</span><span class="nx">oItem</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1639
								<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_setActiveItem</span><span class="o">(</span><span class="nx">oItem</span><span class="o">);</span>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1640
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1641
							<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1642
						
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1643
						<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1644
						<span class="k">else</span> <span class="o">{</span>	<span class="c">//	MenuItem</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1645
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1646
							<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusItem</span><span class="o">(</span><span class="nx">oItem</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1647
							<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_setActiveItem</span><span class="o">(</span><span class="nx">oItem</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1648
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1649
						<span class="o">}</span>							
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1650
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1651
					<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1652
				
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1653
				<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1654
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1655
				<span class="nx">bPreventDefault</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1656
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1657
			<span class="k">break</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1658
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1659
		<span class="o">}</span>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1660
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1661
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1662
		<span class="k">if</span> <span class="o">(</span><span class="nx">bPreventDefault</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1663
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1664
			<span class="c">//	Prevent the browser from scrolling the window</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1665
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1666
			<span class="nx">event</span><span class="o">.</span><span class="nx">preventDefault</span><span class="o">();</span>			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1667
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1668
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1669
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1670
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1671
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1672
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1673
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1674
<span class="c">	* @method _onHorizontalMenuKeyDown</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1675
<span class="c">	* @description &quot;keydown&quot; event handler for horizontal menus.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1676
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1677
<span class="c">	* @param {Object} event Object representing the DOM event.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1678
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1679
	<span class="nx">_onHorizontalMenuKeyDown</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">event</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1680
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1681
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1682
			<span class="nx">oActiveMenu</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeMenu</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1683
			<span class="nx">oTarget</span> <span class="o">=</span> <span class="nx">event</span><span class="o">.</span><span class="nx">target</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1684
			<span class="nx">oFocusedItem</span> <span class="o">=</span> <span class="nx">getItem</span><span class="o">(</span><span class="nx">oTarget</span><span class="o">,</span> <span class="kc">true</span><span class="o">),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1685
			<span class="nx">bPreventDefault</span> <span class="o">=</span> <span class="kc">false</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1686
			<span class="nx">nKeyCode</span> <span class="o">=</span> <span class="nx">event</span><span class="o">.</span><span class="nx">keyCode</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1687
			<span class="nx">oSubmenu</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1688
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1689
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1690
		<span class="k">if</span> <span class="o">(</span><span class="nx">nKeyCode</span> <span class="o">===</span> <span class="m">40</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1691
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1692
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideAllSubmenus</span><span class="o">(</span><span class="nx">oActiveMenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1693
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1694
			<span class="k">if</span> <span class="o">(</span><span class="nx">isMenuLabel</span><span class="o">(</span><span class="nx">oFocusedItem</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1695
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1696
				<span class="nx">oSubmenu</span> <span class="o">=</span> <span class="nx">oFocusedItem</span><span class="o">.</span><span class="nx">next</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1697
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1698
				<span class="k">if</span> <span class="o">(</span><span class="nx">oSubmenu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1699
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1700
					<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_showMenu</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1701
					<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusItem</span><span class="o">(</span><span class="nx">getFirstItem</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1702
					<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_setActiveItem</span><span class="o">(</span><span class="nx">getFirstItem</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1703
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1704
				<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1705
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1706
				<span class="nx">bPreventDefault</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1707
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1708
			<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1709
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1710
		<span class="o">}</span>		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1711
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1712
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1713
		<span class="k">if</span> <span class="o">(</span><span class="nx">bPreventDefault</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1714
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1715
			<span class="c">//	Prevent the browser from scrolling the window</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1716
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1717
			<span class="nx">event</span><span class="o">.</span><span class="nx">preventDefault</span><span class="o">();</span>			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1718
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1719
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1720
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1721
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1722
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1723
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1724
	<span class="c">//	Generic DOM Event handlers</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1725
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1726
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1727
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1728
<span class="c">	* @method _onMouseMove</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1729
<span class="c">	* @description &quot;mousemove&quot; event handler for the menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1730
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1731
<span class="c">	* @param {Object} event Object representing the DOM event.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1732
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1733
	<span class="nx">_onMouseMove</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">event</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1734
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1735
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1736
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1737
		<span class="c">//	Using a timer to set the value of the &quot;_currentMouseX&quot; property </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1738
<span class="c"></span>		<span class="c">//	helps improve the reliability of the calculation used to set the </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1739
<span class="c"></span>		<span class="c">//	value of the &quot;_movingToSubmenu&quot; property - especially in Opera.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1740
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1741
		<span class="nx">later</span><span class="o">(</span><span class="m">10</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">,</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1742
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1743
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_currentMouseX</span> <span class="o">=</span> <span class="nx">event</span><span class="o">.</span><span class="nx">pageX</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1744
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1745
		<span class="o">});</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1746
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1747
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1748
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1749
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1750
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1751
<span class="c">	* @method _onMouseOver</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1752
<span class="c">	* @description &quot;mouseover&quot; event handler for the menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1753
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1754
<span class="c">	* @param {Object} event Object representing the DOM event.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1755
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1756
	<span class="nx">_onMouseOver</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">event</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1757
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1758
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1759
			<span class="nx">oTarget</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1760
			<span class="nx">oMenu</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1761
			<span class="nx">oMenuLabel</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1762
			<span class="nx">oParentMenu</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1763
			<span class="nx">oMenuItem</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1764
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1765
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1766
		<span class="k">if</span> <span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_blockMouseEvent</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1767
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_blockMouseEvent</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1768
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1769
		<span class="k">else</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1770
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1771
			<span class="nx">oTarget</span> <span class="o">=</span> <span class="nx">event</span><span class="o">.</span><span class="nx">target</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1772
			<span class="nx">oMenu</span> <span class="o">=</span> <span class="nx">getMenu</span><span class="o">(</span><span class="nx">oTarget</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1773
			<span class="nx">oMenuLabel</span> <span class="o">=</span> <span class="nx">getMenuLabel</span><span class="o">(</span><span class="nx">oTarget</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1774
			<span class="nx">oMenuItem</span> <span class="o">=</span> <span class="nx">getMenuItem</span><span class="o">(</span><span class="nx">oTarget</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1775
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1776
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1777
			<span class="k">if</span> <span class="o">(</span><span class="nx">handleMouseOverForNode</span><span class="o">(</span><span class="nx">oMenu</span><span class="o">,</span> <span class="nx">oTarget</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1778
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1779
				<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_onMenuMouseOver</span><span class="o">(</span><span class="nx">oMenu</span><span class="o">,</span> <span class="nx">event</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1780
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1781
				<span class="nx">oMenu</span><span class="o">[</span><span class="nx">HANDLED_MOUSEOVER</span><span class="o">]</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1782
				<span class="nx">oMenu</span><span class="o">[</span><span class="nx">HANDLED_MOUSEOUT</span><span class="o">]</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1783
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1784
				<span class="nx">oParentMenu</span> <span class="o">=</span> <span class="nx">getParentMenu</span><span class="o">(</span><span class="nx">oMenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1785
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1786
				<span class="k">if</span> <span class="o">(</span><span class="nx">oParentMenu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1787
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1788
					<span class="nx">oParentMenu</span><span class="o">[</span><span class="nx">HANDLED_MOUSEOUT</span><span class="o">]</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1789
					<span class="nx">oParentMenu</span><span class="o">[</span><span class="nx">HANDLED_MOUSEOVER</span><span class="o">]</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1790
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1791
				<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1792
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1793
			<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1794
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1795
			<span class="k">if</span> <span class="o">(</span><span class="nx">handleMouseOverForNode</span><span class="o">(</span><span class="nx">oMenuLabel</span><span class="o">,</span> <span class="nx">oTarget</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1796
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1797
				<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_onMenuLabelMouseOver</span><span class="o">(</span><span class="nx">oMenuLabel</span><span class="o">,</span> <span class="nx">event</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1798
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1799
				<span class="nx">oMenuLabel</span><span class="o">[</span><span class="nx">HANDLED_MOUSEOVER</span><span class="o">]</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1800
				<span class="nx">oMenuLabel</span><span class="o">[</span><span class="nx">HANDLED_MOUSEOUT</span><span class="o">]</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1801
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1802
			<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1803
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1804
			<span class="k">if</span> <span class="o">(</span><span class="nx">handleMouseOverForNode</span><span class="o">(</span><span class="nx">oMenuItem</span><span class="o">,</span> <span class="nx">oTarget</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1805
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1806
				<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_onMenuItemMouseOver</span><span class="o">(</span><span class="nx">oMenuItem</span><span class="o">,</span> <span class="nx">event</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1807
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1808
				<span class="nx">oMenuItem</span><span class="o">[</span><span class="nx">HANDLED_MOUSEOVER</span><span class="o">]</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1809
				<span class="nx">oMenuItem</span><span class="o">[</span><span class="nx">HANDLED_MOUSEOUT</span><span class="o">]</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1810
				
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1811
			<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1812
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1813
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1814
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1815
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1816
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1817
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1818
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1819
<span class="c">	* @method _onMouseOut</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1820
<span class="c">	* @description &quot;mouseout&quot; event handler for the menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1821
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1822
<span class="c">	* @param {Object} event Object representing the DOM event.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1823
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1824
	<span class="nx">_onMouseOut</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">event</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1825
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1826
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1827
			<span class="nx">oActiveMenu</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeMenu</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1828
			<span class="nx">bMovingToSubmenu</span> <span class="o">=</span> <span class="kc">false</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1829
			<span class="nx">oTarget</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1830
			<span class="nx">oRelatedTarget</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1831
			<span class="nx">oMenu</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1832
			<span class="nx">oMenuLabel</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1833
			<span class="nx">oSubmenu</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1834
			<span class="nx">oMenuItem</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1835
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1836
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1837
		<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_movingToSubmenu</span> <span class="o">=</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1838
					<span class="o">(</span><span class="nx">oActiveMenu</span> <span class="o">&amp;&amp;</span> <span class="o">!</span><span class="nx">isHorizontalMenu</span><span class="o">(</span><span class="nx">oActiveMenu</span><span class="o">)</span> <span class="o">&amp;&amp;</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1839
						<span class="o">((</span><span class="nx">event</span><span class="o">.</span><span class="nx">pageX</span> <span class="o">-</span> <span class="m">5</span><span class="o">)</span> <span class="o">&gt;</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_currentMouseX</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1840
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1841
		<span class="nx">oTarget</span> <span class="o">=</span> <span class="nx">event</span><span class="o">.</span><span class="nx">target</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1842
		<span class="nx">oRelatedTarget</span> <span class="o">=</span> <span class="nx">event</span><span class="o">.</span><span class="nx">relatedTarget</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1843
		<span class="nx">oMenu</span> <span class="o">=</span> <span class="nx">getMenu</span><span class="o">(</span><span class="nx">oTarget</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1844
		<span class="nx">oMenuLabel</span> <span class="o">=</span> <span class="nx">getMenuLabel</span><span class="o">(</span><span class="nx">oTarget</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1845
		<span class="nx">oMenuItem</span> <span class="o">=</span> <span class="nx">getMenuItem</span><span class="o">(</span><span class="nx">oTarget</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1846
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1847
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1848
		<span class="k">if</span> <span class="o">(</span><span class="nx">handleMouseOutForNode</span><span class="o">(</span><span class="nx">oMenuLabel</span><span class="o">,</span> <span class="nx">oRelatedTarget</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1849
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1850
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_onMenuLabelMouseOut</span><span class="o">(</span><span class="nx">oMenuLabel</span><span class="o">,</span> <span class="nx">event</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1851
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1852
			<span class="nx">oMenuLabel</span><span class="o">[</span><span class="nx">HANDLED_MOUSEOUT</span><span class="o">]</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1853
			<span class="nx">oMenuLabel</span><span class="o">[</span><span class="nx">HANDLED_MOUSEOVER</span><span class="o">]</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1854
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1855
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1856
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1857
		<span class="k">if</span> <span class="o">(</span><span class="nx">handleMouseOutForNode</span><span class="o">(</span><span class="nx">oMenuItem</span><span class="o">,</span> <span class="nx">oRelatedTarget</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1858
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1859
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_onMenuItemMouseOut</span><span class="o">(</span><span class="nx">oMenuItem</span><span class="o">,</span> <span class="nx">event</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1860
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1861
			<span class="nx">oMenuItem</span><span class="o">[</span><span class="nx">HANDLED_MOUSEOUT</span><span class="o">]</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1862
			<span class="nx">oMenuItem</span><span class="o">[</span><span class="nx">HANDLED_MOUSEOVER</span><span class="o">]</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1863
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1864
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1865
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1866
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1867
		<span class="k">if</span> <span class="o">(</span><span class="nx">oMenuLabel</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1868
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1869
			<span class="nx">oSubmenu</span> <span class="o">=</span> <span class="nx">oMenuLabel</span><span class="o">.</span><span class="nx">next</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1870
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1871
			<span class="k">if</span> <span class="o">(</span><span class="nx">oSubmenu</span> <span class="o">&amp;&amp;</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1872
				<span class="o">(</span><span class="nx">oRelatedTarget</span><span class="o">.</span><span class="nx">compareTo</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">)</span> <span class="o">||</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1873
					<span class="nx">oSubmenu</span><span class="o">.</span><span class="nx">contains</span><span class="o">(</span><span class="nx">oRelatedTarget</span><span class="o">)))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1874
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1875
				<span class="nx">bMovingToSubmenu</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1876
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1877
			<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1878
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1879
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1880
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1881
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1882
		<span class="k">if</span> <span class="o">(</span><span class="nx">handleMouseOutForNode</span><span class="o">(</span><span class="nx">oMenu</span><span class="o">,</span> <span class="nx">oRelatedTarget</span><span class="o">)</span> <span class="o">||</span> <span class="nx">bMovingToSubmenu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1883
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1884
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_onMenuMouseOut</span><span class="o">(</span><span class="nx">oMenu</span><span class="o">,</span> <span class="nx">event</span><span class="o">);</span>				
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1885
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1886
			<span class="nx">oMenu</span><span class="o">[</span><span class="nx">HANDLED_MOUSEOUT</span><span class="o">]</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1887
			<span class="nx">oMenu</span><span class="o">[</span><span class="nx">HANDLED_MOUSEOVER</span><span class="o">]</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1888
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1889
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1890
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1891
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1892
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1893
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1894
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1895
<span class="c">	* @method _toggleSubmenuDisplay</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1896
<span class="c">	* @description &quot;mousedown,&quot; &quot;keydown,&quot; and &quot;click&quot; event handler for the </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1897
<span class="c">	* menu used to toggle the display of a submenu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1898
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1899
<span class="c">	* @param {Object} event Object representing the DOM event.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1900
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1901
	<span class="nx">_toggleSubmenuDisplay</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">event</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1902
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1903
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1904
			<span class="nx">oTarget</span> <span class="o">=</span> <span class="nx">event</span><span class="o">.</span><span class="nx">target</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1905
			<span class="nx">oMenuLabel</span> <span class="o">=</span> <span class="nx">getMenuLabel</span><span class="o">(</span><span class="nx">oTarget</span><span class="o">,</span> <span class="kc">true</span><span class="o">),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1906
			<span class="nx">sType</span> <span class="o">=</span> <span class="nx">event</span><span class="o">.</span><span class="nx">type</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1907
			<span class="nx">oAnchor</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1908
			<span class="nx">oSubmenu</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1909
			<span class="nx">sHref</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1910
			<span class="nx">nHashPos</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1911
			<span class="nx">nLen</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1912
			<span class="nx">sId</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1913
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1914
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1915
		<span class="k">if</span> <span class="o">(</span><span class="nx">oMenuLabel</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1916
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1917
			<span class="nx">oAnchor</span> <span class="o">=</span> <span class="nx">isAnchor</span><span class="o">(</span><span class="nx">oTarget</span><span class="o">)</span> <span class="o">?</span> <span class="nx">oTarget</span> <span class="o">:</span> <span class="nx">oTarget</span><span class="o">.</span><span class="nx">ancestor</span><span class="o">(</span><span class="nx">isAnchor</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1918
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1919
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1920
			<span class="k">if</span> <span class="o">(</span><span class="nx">oAnchor</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1921
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1922
				<span class="c">//	Need to pass &quot;2&quot; as a second argument to &quot;getAttribute&quot; for </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1923
<span class="c"></span>				<span class="c">//	IE otherwise IE will return a fully qualified URL for the </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1924
<span class="c"></span>				<span class="c">//	value of the &quot;href&quot; attribute.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1925
<span class="c"></span>				<span class="c">//	http://msdn.microsoft.com/en-us/library/ms536429(VS.85).aspx</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1926
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1927
				<span class="nx">sHref</span> <span class="o">=</span> <span class="nx">oAnchor</span><span class="o">.</span><span class="nx">getAttribute</span><span class="o">(</span><span class="s2">&quot;href&quot;</span><span class="o">,</span> <span class="m">2</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1928
				<span class="nx">nHashPos</span> <span class="o">=</span> <span class="nx">sHref</span><span class="o">.</span><span class="nx">indexOf</span><span class="o">(</span><span class="s2">&quot;#&quot;</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1929
				<span class="nx">nLen</span> <span class="o">=</span> <span class="nx">sHref</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1930
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1931
				<span class="k">if</span> <span class="o">(</span><span class="nx">nHashPos</span> <span class="o">===</span> <span class="m">0</span> <span class="o">&amp;&amp;</span> <span class="nx">nLen</span> <span class="o">&gt;</span> <span class="m">1</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1932
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1933
					<span class="nx">sId</span> <span class="o">=</span> <span class="nx">sHref</span><span class="o">.</span><span class="nx">substr</span><span class="o">(</span><span class="m">1</span><span class="o">,</span> <span class="nx">nLen</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1934
					<span class="nx">oSubmenu</span> <span class="o">=</span> <span class="nx">oMenuLabel</span><span class="o">.</span><span class="nx">next</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1935
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1936
					<span class="k">if</span> <span class="o">(</span><span class="nx">oSubmenu</span> <span class="o">&amp;&amp;</span> <span class="o">(</span><span class="nx">oSubmenu</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="nx">ID</span><span class="o">)</span> <span class="o">===</span> <span class="nx">sId</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1937
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1938
						<span class="k">if</span> <span class="o">(</span><span class="nx">sType</span> <span class="o">===</span> <span class="nx">MOUSEDOWN</span> <span class="o">||</span> <span class="nx">sType</span> <span class="o">===</span> <span class="nx">KEYDOWN</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1939
							
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1940
							<span class="k">if</span> <span class="o">((</span><span class="nx">UA</span><span class="o">.</span><span class="nx">opera</span> <span class="o">||</span> <span class="nx">UA</span><span class="o">.</span><span class="nx">gecko</span> <span class="o">||</span> <span class="nx">UA</span><span class="o">.</span><span class="nx">ie</span><span class="o">)</span> <span class="o">&amp;&amp;</span> <span class="nx">sType</span> <span class="o">===</span> <span class="nx">KEYDOWN</span> <span class="o">&amp;&amp;</span> <span class="o">!</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_preventClickHandle</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1941
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1942
								<span class="c">//	Prevent the browser from following the URL of </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1943
<span class="c"></span>								<span class="c">//	the anchor element</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1944
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1945
								<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_preventClickHandle</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_rootMenu</span><span class="o">.</span><span class="nx">on</span><span class="o">(</span><span class="s2">&quot;click&quot;</span><span class="o">,</span> <span class="k">function</span> <span class="o">(</span><span class="nx">event</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1946
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1947
									<span class="nx">event</span><span class="o">.</span><span class="nx">preventDefault</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1948
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1949
									<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_preventClickHandle</span><span class="o">.</span><span class="nx">detach</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1950
									<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_preventClickHandle</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1951
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1952
								<span class="o">});</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1953
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1954
							<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1955
							
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1956
							<span class="k">if</span> <span class="o">(</span><span class="nx">sType</span> <span class="o">==</span> <span class="nx">MOUSEDOWN</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1957
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1958
								<span class="c">//	Prevent the target from getting focused by </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1959
<span class="c"></span>								<span class="c">//	default, since the element to be focused will</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1960
<span class="c"></span>								<span class="c">//	be determined by weather or not the submenu</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1961
<span class="c"></span>								<span class="c">//	is visible.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1962
<span class="c"></span>								<span class="nx">event</span><span class="o">.</span><span class="nx">preventDefault</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1963
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1964
								<span class="c">//	FocusManager will attempt to focus any </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1965
<span class="c"></span>								<span class="c">//	descendant that is the target of the mousedown</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1966
<span class="c"></span>								<span class="c">//	event.  Since we want to explicitly control </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1967
<span class="c"></span>	 							<span class="c">//	where focus is going, we need to call </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1968
<span class="c"></span>								<span class="c">//	&quot;stopImmediatePropagation&quot; to stop the </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1969
<span class="c"></span>								<span class="c">//	FocusManager from doing its thing.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1970
<span class="c"></span>								<span class="nx">event</span><span class="o">.</span><span class="nx">stopImmediatePropagation</span><span class="o">();</span>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1971
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1972
								<span class="c">//	The &quot;_focusItem&quot; method relies on the </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1973
<span class="c"></span>								<span class="c">//	&quot;_hasFocus&quot; property being set to true.  The</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1974
<span class="c"></span>								<span class="c">//	&quot;_hasFocus&quot; property is normally set via a </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1975
<span class="c"></span>								<span class="c">//	&quot;focus&quot; event listener, but since we&#39;ve </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1976
<span class="c"></span>								<span class="c">//	blocked focus from happening, we need to set </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1977
<span class="c"></span>								<span class="c">//	this property manually.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1978
<span class="c"></span>								<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hasFocus</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1979
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1980
							<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1981
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1982
								
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1983
							<span class="k">if</span> <span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_isRoot</span><span class="o">(</span><span class="nx">getParentMenu</span><span class="o">(</span><span class="nx">oTarget</span><span class="o">)))</span> <span class="o">{</span>	<span class="c">//	Event target is a submenu label in the root menu</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1984
<span class="c"></span>							
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1985
								<span class="c">//	Menu label toggle functionality</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1986
<span class="c"></span>							
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1987
								<span class="k">if</span> <span class="o">(</span><span class="nx">hasVisibleSubmenu</span><span class="o">(</span><span class="nx">oMenuLabel</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1988
							
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1989
									<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideMenu</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1990
									<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusItem</span><span class="o">(</span><span class="nx">oMenuLabel</span><span class="o">);</span>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1991
									<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_setActiveItem</span><span class="o">(</span><span class="nx">oMenuLabel</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1992
									
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1993
								<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1994
								<span class="k">else</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1995
							
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1996
									<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideAllSubmenus</span><span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_rootMenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1997
									<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_showMenu</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1998
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  1999
									<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusItem</span><span class="o">(</span><span class="nx">getFirstItem</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2000
									<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_setActiveItem</span><span class="o">(</span><span class="nx">getFirstItem</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2001
									
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2002
								<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2003
							
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2004
							<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2005
							<span class="k">else</span> <span class="o">{</span>	<span class="c">//	Event target is a submenu label within a submenu</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2006
<span class="c"></span>							
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2007
								<span class="k">if</span> <span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeItem</span> <span class="o">==</span> <span class="nx">oMenuLabel</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2008
							
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2009
									<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_showMenu</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2010
									<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusItem</span><span class="o">(</span><span class="nx">getFirstItem</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">));</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2011
									<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_setActiveItem</span><span class="o">(</span><span class="nx">getFirstItem</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">));</span>										
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2012
							
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2013
								<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2014
								<span class="k">else</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2015
							
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2016
									<span class="k">if</span> <span class="o">(!</span><span class="nx">oMenuLabel</span><span class="o">.</span><span class="nx">_clickHandle</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2017
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2018
										<span class="nx">oMenuLabel</span><span class="o">.</span><span class="nx">_clickHandle</span> <span class="o">=</span> <span class="nx">oMenuLabel</span><span class="o">.</span><span class="nx">on</span><span class="o">(</span><span class="s2">&quot;click&quot;</span><span class="o">,</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2019
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2020
											<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideAllSubmenus</span><span class="o">(</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_rootMenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2021
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2022
											<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hasFocus</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2023
											<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_clearActiveItem</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2024
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2025
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2026
											<span class="nx">oMenuLabel</span><span class="o">.</span><span class="nx">_clickHandle</span><span class="o">.</span><span class="nx">detach</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2027
											
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2028
											<span class="nx">oMenuLabel</span><span class="o">.</span><span class="nx">_clickHandle</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2029
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2030
										<span class="o">});</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2031
										
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2032
									<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2033
									
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2034
								<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2035
								
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2036
							<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2037
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2038
						<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2039
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2040
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2041
						<span class="k">if</span> <span class="o">(</span><span class="nx">sType</span> <span class="o">===</span> <span class="nx">CLICK</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2042
						
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2043
							<span class="c">//	Prevent the browser from following the URL of </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2044
<span class="c"></span>							<span class="c">//	the anchor element</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2045
<span class="c"></span>							
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2046
							<span class="nx">event</span><span class="o">.</span><span class="nx">preventDefault</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2047
						
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2048
						<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2049
					
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2050
					<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2051
				
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2052
				<span class="o">}</span>				
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2053
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2054
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2055
			<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2056
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2057
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2058
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2059
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2060
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2061
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2062
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2063
<span class="c">	* @method _onKeyPress</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2064
<span class="c">	* @description &quot;keypress&quot; event handler for the menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2065
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2066
<span class="c">	* @param {Object} event Object representing the DOM event.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2067
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2068
	<span class="nx">_onKeyPress</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">event</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2069
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2070
		<span class="nx">switch</span> <span class="o">(</span><span class="nx">event</span><span class="o">.</span><span class="nx">keyCode</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2071
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2072
			<span class="nx">case</span> <span class="m">37</span><span class="o">:</span>	<span class="c">//	left arrow</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2073
<span class="c"></span>			<span class="nx">case</span> <span class="m">38</span><span class="o">:</span>	<span class="c">//	up arrow</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2074
<span class="c"></span>			<span class="nx">case</span> <span class="m">39</span><span class="o">:</span>	<span class="c">//	right arrow</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2075
<span class="c"></span>			<span class="nx">case</span> <span class="m">40</span><span class="o">:</span>	<span class="c">//	down arrow</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2076
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2077
				<span class="c">//	Prevent the browser from scrolling the window</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2078
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2079
				<span class="nx">event</span><span class="o">.</span><span class="nx">preventDefault</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2080
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2081
			<span class="k">break</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2082
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2083
		<span class="o">}</span>						
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2084
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2085
	<span class="o">},</span>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2086
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2087
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2088
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2089
<span class="c">	* @method _onKeyDown</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2090
<span class="c">	* @description &quot;keydown&quot; event handler for the menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2091
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2092
<span class="c">	* @param {Object} event Object representing the DOM event.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2093
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2094
	<span class="nx">_onKeyDown</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">event</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2095
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2096
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2097
			<span class="nx">oActiveItem</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeItem</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2098
			<span class="nx">oTarget</span> <span class="o">=</span> <span class="nx">event</span><span class="o">.</span><span class="nx">target</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2099
			<span class="nx">oActiveMenu</span> <span class="o">=</span> <span class="nx">getParentMenu</span><span class="o">(</span><span class="nx">oTarget</span><span class="o">),</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2100
			<span class="nx">oSubmenu</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2101
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2102
		<span class="k">if</span> <span class="o">(</span><span class="nx">oActiveMenu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2103
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2104
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_activeMenu</span> <span class="o">=</span> <span class="nx">oActiveMenu</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2105
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2106
			<span class="k">if</span> <span class="o">(</span><span class="nx">isHorizontalMenu</span><span class="o">(</span><span class="nx">oActiveMenu</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2107
				<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_onHorizontalMenuKeyDown</span><span class="o">(</span><span class="nx">event</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2108
			<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2109
			<span class="k">else</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2110
				<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_onVerticalMenuKeyDown</span><span class="o">(</span><span class="nx">event</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2111
			<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2112
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2113
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2114
			<span class="k">if</span> <span class="o">(</span><span class="nx">event</span><span class="o">.</span><span class="nx">keyCode</span> <span class="o">===</span> <span class="m">27</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2115
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2116
				<span class="k">if</span> <span class="o">(!</span><span class="nx">menuNav</span><span class="o">.</span><span class="nx">_isRoot</span><span class="o">(</span><span class="nx">oActiveMenu</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2117
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2118
					<span class="k">if</span> <span class="o">(</span><span class="nx">UA</span><span class="o">.</span><span class="nx">opera</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2119
						<span class="nx">later</span><span class="o">(</span><span class="m">0</span><span class="o">,</span> <span class="nx">menuNav</span><span class="o">,</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2120
							<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideMenu</span><span class="o">(</span><span class="nx">oActiveMenu</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2121
						<span class="o">});</span>						
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2122
					<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2123
					<span class="k">else</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2124
						<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideMenu</span><span class="o">(</span><span class="nx">oActiveMenu</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>						
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2125
					<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2126
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2127
					<span class="nx">event</span><span class="o">.</span><span class="nx">stopPropagation</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2128
					<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_blockMouseEvent</span> <span class="o">=</span> <span class="nx">UA</span><span class="o">.</span><span class="nx">gecko</span> <span class="o">?</span> <span class="kc">true</span> <span class="o">:</span> <span class="kc">false</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2129
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2130
				<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2131
				<span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">oActiveItem</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2132
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2133
					<span class="k">if</span> <span class="o">(</span><span class="nx">isMenuLabel</span><span class="o">(</span><span class="nx">oActiveItem</span><span class="o">)</span> <span class="o">&amp;&amp;</span> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2134
							<span class="nx">hasVisibleSubmenu</span><span class="o">(</span><span class="nx">oActiveItem</span><span class="o">))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2135
					
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2136
						<span class="nx">oSubmenu</span> <span class="o">=</span> <span class="nx">oActiveItem</span><span class="o">.</span><span class="nx">next</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2137
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2138
						<span class="k">if</span> <span class="o">(</span><span class="nx">oSubmenu</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2139
							<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideMenu</span><span class="o">(</span><span class="nx">oSubmenu</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2140
						<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2141
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2142
					<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2143
					<span class="k">else</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2144
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2145
						<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_focusManager</span><span class="o">.</span><span class="nx">blur</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2146
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2147
						<span class="c">//	This is necessary for Webkit since blurring the </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2148
<span class="c"></span>						<span class="c">//	active menuitem won&#39;t result in the document </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2149
<span class="c"></span>						<span class="c">//	gaining focus, meaning the that _onDocFocus </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2150
<span class="c"></span>						<span class="c">//	listener won&#39;t clear the active menuitem.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2151
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2152
						<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_clearActiveItem</span><span class="o">();</span>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2153
						
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2154
						<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hasFocus</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2155
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2156
					<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2157
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2158
				<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2159
			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2160
			<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2161
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2162
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2163
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2164
	<span class="o">},</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2165
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2166
	<span class="c">/**</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2167
<span class="c">	* @method _onDocMouseDown</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2168
<span class="c">	* @description &quot;mousedown&quot; event handler for the owner document of </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2169
<span class="c">	* the menu.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2170
<span class="c">	* @protected</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2171
<span class="c">	* @param {Object} event Object representing the DOM event.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2172
<span class="c">	*/</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2173
	<span class="nx">_onDocMouseDown</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">event</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2174
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2175
		<span class="k">var</span> <span class="nx">menuNav</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2176
			<span class="nx">oRoot</span> <span class="o">=</span> <span class="nx">menuNav</span><span class="o">.</span><span class="nx">_rootMenu</span><span class="o">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2177
			<span class="nx">oTarget</span> <span class="o">=</span> <span class="nx">event</span><span class="o">.</span><span class="nx">target</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2178
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2179
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2180
		<span class="k">if</span> <span class="o">(!(</span><span class="nx">oRoot</span><span class="o">.</span><span class="nx">compareTo</span><span class="o">(</span><span class="nx">oTarget</span><span class="o">)</span> <span class="o">||</span> <span class="nx">oRoot</span><span class="o">.</span><span class="nx">contains</span><span class="o">(</span><span class="nx">oTarget</span><span class="o">)))</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2181
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2182
			<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hideAllSubmenus</span><span class="o">(</span><span class="nx">oRoot</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2183
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2184
			<span class="c">//	Document doesn&#39;t receive focus in Webkit when the user mouses </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2185
<span class="c"></span>			<span class="c">//	down on it, so the &quot;_hasFocus&quot; property won&#39;t get set to the </span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2186
<span class="c"></span>			<span class="c">//	correct value.  The following line corrects the problem.</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2187
<span class="c"></span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2188
			<span class="k">if</span> <span class="o">(</span><span class="nx">UA</span><span class="o">.</span><span class="nx">webkit</span><span class="o">)</span> <span class="o">{</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2189
				<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_hasFocus</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2190
				<span class="nx">menuNav</span><span class="o">.</span><span class="nx">_clearActiveItem</span><span class="o">();</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2191
			<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2192
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2193
		<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2194
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2195
	<span class="o">}</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2196
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2197
<span class="o">});</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2198
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2199
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2200
<span class="nx">Y</span><span class="o">.</span><span class="nx">namespace</span><span class="o">(</span><span class="s1">&#39;Plugin&#39;</span><span class="o">);</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2201
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2202
<span class="nx">Y</span><span class="o">.</span><span class="nx">Plugin</span><span class="o">.</span><span class="nx">NodeMenuNav</span> <span class="o">=</span> <span class="nx">NodeMenuNav</span><span class="o">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2203
</pre></div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2204
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2205
                    </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2206
			</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2207
		</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2208
		<div class="yui-b">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2209
            <div class="nav">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2210
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2211
                    <div id="moduleList" class="module">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2212
                        <h4>Modules</h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2213
                        <ul class="content">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2214
                                <li class=""><a href="module_anim.html" title="anim">anim</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2215
                                <li class=""><a href="module_async-queue.html" title="async-queue">async-queue</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2216
                                <li class=""><a href="module_attribute.html" title="attribute">attribute</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2217
                                <li class=""><a href="module_base.html" title="base">base</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2218
                                <li class=""><a href="module_cache.html" title="cache">cache</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2219
                                <li class=""><a href="module_classnamemanager.html" title="classnamemanager">classnamemanager</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2220
                                <li class=""><a href="module_collection.html" title="collection">collection</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2221
                                <li class=""><a href="module_console.html" title="console">console</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2222
                                <li class=""><a href="module_console-filters.html" title="console-filters">console-filters</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2223
                                <li class=""><a href="module_cookie.html" title="cookie">cookie</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2224
                                <li class=""><a href="module_dataschema.html" title="dataschema">dataschema</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2225
                                <li class=""><a href="module_datasource.html" title="datasource">datasource</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2226
                                <li class=""><a href="module_datatype.html" title="datatype">datatype</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2227
                                <li class=""><a href="module_dd.html" title="dd">dd</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2228
                                <li class=""><a href="module_dom.html" title="dom">dom</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2229
                                <li class=""><a href="module_dump.html" title="dump">dump</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2230
                                <li class=""><a href="module_event.html" title="event">event</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2231
                                <li class=""><a href="module_event-custom.html" title="event-custom">event-custom</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2232
                                <li class=""><a href="module_event-simulate.html" title="event-simulate">event-simulate</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2233
                                <li class=""><a href="module_history.html" title="history">history</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2234
                                <li class=""><a href="module_imageloader.html" title="imageloader">imageloader</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2235
                                <li class=""><a href="module_io.html" title="io">io</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2236
                                <li class=""><a href="module_json.html" title="json">json</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2237
                                <li class=""><a href="module_node.html" title="node">node</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2238
                                <li class=""><a href="module_node-focusmanager.html" title="node-focusmanager">node-focusmanager</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2239
                                <li class="selected"><a href="module_node-menunav.html" title="node-menunav">node-menunav</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2240
                                <li class=""><a href="module_oop.html" title="oop">oop</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2241
                                <li class=""><a href="module_overlay.html" title="overlay">overlay</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2242
                                <li class=""><a href="module_plugin.html" title="plugin">plugin</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2243
                                <li class=""><a href="module_profiler.html" title="profiler">profiler</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2244
                                <li class=""><a href="module_queue-promote.html" title="queue-promote">queue-promote</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2245
                                <li class=""><a href="module_slider.html" title="slider">slider</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2246
                                <li class=""><a href="module_stylesheet.html" title="stylesheet">stylesheet</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2247
                                <li class=""><a href="module_substitute.html" title="substitute">substitute</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2248
                                <li class=""><a href="module_test.html" title="test">test</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2249
                                <li class=""><a href="module_widget.html" title="widget">widget</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2250
                                <li class=""><a href="module_widget-position.html" title="widget-position">widget-position</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2251
                                <li class=""><a href="module_widget-position-ext.html" title="widget-position-ext">widget-position-ext</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2252
                                <li class=""><a href="module_widget-stack.html" title="widget-stack">widget-stack</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2253
                                <li class=""><a href="module_widget-stdmod.html" title="widget-stdmod">widget-stdmod</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2254
                                <li class=""><a href="module_yui.html" title="yui">yui</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2255
                        </ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2256
                    </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2257
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2258
                    <div id="classList" class="module">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2259
                        <h4>Classes</h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2260
                        <ul class="content">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2261
                                <li class=""><a href="plugin.NodeMenuNav.html" title="plugin.NodeMenuNav">plugin.NodeMenuNav</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2262
                        </ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2263
                    </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2264
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2265
                    <div id="fileList" class="module">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2266
                        <h4>Files</h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2267
                        <ul class="content">        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2268
                                <li class="selected"><a href="node-menunav.js.html" title="node-menunav.js">node-menunav.js</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2269
                        </ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2270
                    </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2271
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2272
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2273
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2274
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2275
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2276
            </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2277
		</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2278
	</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2279
	<div id="ft">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2280
        <hr />
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2281
        Copyright &copy; 2009 Yahoo! Inc. All rights reserved.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2282
	</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2283
</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2284
<script type="text/javascript">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2285
    ALL_YUI_PROPS = [{"access": "protected", "host": "plugin.NodeMenuNav", "name": "_activeItem", "url": "plugin.NodeMenuNav.html#property__activeItem", "type": "property"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_activeMenu", "url": "plugin.NodeMenuNav.html#property__activeMenu", "type": "property"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_afterActiveDescendantChange", "url": "plugin.NodeMenuNav.html#method__afterActiveDescendantChange", "type": "method"}, {"access": "", "host": "plugin.NodeMenuNav", "name": "autoSubmenuDisplay", "url": "plugin.NodeMenuNav.html#config_autoSubmenuDisplay", "type": "config"}, {"access": "", "host": "plugin.NodeMenuNav", "name": "autoSubmenuDisplayChange", "url": "plugin.NodeMenuNav.html#event_autoSubmenuDisplayChange", "type": "event"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_blockMouseEvent", "url": "plugin.NodeMenuNav.html#property__blockMouseEvent", "type": "property"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_cancelHideSubmenuTimer", "url": "plugin.NodeMenuNav.html#method__cancelHideSubmenuTimer", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_cancelShowSubmenuTimer", "url": "plugin.NodeMenuNav.html#method__cancelShowSubmenuTimer", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_clearActiveItem", "url": "plugin.NodeMenuNav.html#method__clearActiveItem", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_currentMouseX", "url": "plugin.NodeMenuNav.html#property__currentMouseX", "type": "property"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_firstItem", "url": "plugin.NodeMenuNav.html#property__firstItem", "type": "property"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_focusItem", "url": "plugin.NodeMenuNav.html#method__focusItem", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_getTopmostSubmenu", "url": "plugin.NodeMenuNav.html#method__getTopmostSubmenu", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_hasFocus", "url": "plugin.NodeMenuNav.html#property__hasFocus", "type": "property"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_hideAllSubmenus", "url": "plugin.NodeMenuNav.html#method__hideAllSubmenus", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_hideAllSubmenusTimer", "url": "plugin.NodeMenuNav.html#property__hideAllSubmenusTimer", "type": "property"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_hideAndFocusLabel", "url": "plugin.NodeMenuNav.html#method__hideAndFocusLabel", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_hideMenu", "url": "plugin.NodeMenuNav.html#method__hideMenu", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_hideSubmenuTimer", "url": "plugin.NodeMenuNav.html#property__hideSubmenuTimer", "type": "property"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_initFocusManager", "url": "plugin.NodeMenuNav.html#method__initFocusManager", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_isRoot", "url": "plugin.NodeMenuNav.html#method__isRoot", "type": "method"}, {"access": "", "host": "plugin.NodeMenuNav", "name": "mouseOutHideDelay", "url": "plugin.NodeMenuNav.html#config_mouseOutHideDelay", "type": "config"}, {"access": "", "host": "plugin.NodeMenuNav", "name": "mouseOutHideDelayChange", "url": "plugin.NodeMenuNav.html#event_mouseOutHideDelayChange", "type": "event"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_movingToSubmenu", "url": "plugin.NodeMenuNav.html#property__movingToSubmenu", "type": "property"}, {"access": "", "host": "plugin.NodeMenuNav", "name": "NodeMenuNav.SHIM_TEMPLATE", "url": "plugin.NodeMenuNav.html#property_NodeMenuNav.SHIM_TEMPLATE", "type": "property"}, {"access": "", "host": "plugin.NodeMenuNav", "name": "NodeMenuNav.SHIM_TEMPLATE_TITLE", "url": "plugin.NodeMenuNav.html#property_NodeMenuNav.SHIM_TEMPLATE_TITLE", "type": "property"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_onActiveDescendantChange", "url": "plugin.NodeMenuNav.html#method__onActiveDescendantChange", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_onDocFocus", "url": "plugin.NodeMenuNav.html#method__onDocFocus", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_onDocMouseDown", "url": "plugin.NodeMenuNav.html#method__onDocMouseDown", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_onHorizontalMenuKeyDown", "url": "plugin.NodeMenuNav.html#method__onHorizontalMenuKeyDown", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_onKeyDown", "url": "plugin.NodeMenuNav.html#method__onKeyDown", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_onKeyPress", "url": "plugin.NodeMenuNav.html#method__onKeyPress", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_onMenuItemMouseOut", "url": "plugin.NodeMenuNav.html#method__onMenuItemMouseOut", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_onMenuItemMouseOver", "url": "plugin.NodeMenuNav.html#method__onMenuItemMouseOver", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_onMenuLabelMouseOut", "url": "plugin.NodeMenuNav.html#method__onMenuLabelMouseOut", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_onMenuLabelMouseOver", "url": "plugin.NodeMenuNav.html#method__onMenuLabelMouseOver", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_onMenuMouseOut", "url": "plugin.NodeMenuNav.html#method__onMenuMouseOut", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_onMenuMouseOver", "url": "plugin.NodeMenuNav.html#method__onMenuMouseOver", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_onMouseMove", "url": "plugin.NodeMenuNav.html#method__onMouseMove", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_onMouseOut", "url": "plugin.NodeMenuNav.html#method__onMouseOut", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_onMouseOver", "url": "plugin.NodeMenuNav.html#method__onMouseOver", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_onVerticalMenuKeyDown", "url": "plugin.NodeMenuNav.html#method__onVerticalMenuKeyDown", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_rootMenu", "url": "plugin.NodeMenuNav.html#property__rootMenu", "type": "property"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_setActiveItem", "url": "plugin.NodeMenuNav.html#method__setActiveItem", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_showMenu", "url": "plugin.NodeMenuNav.html#method__showMenu", "type": "method"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_showSubmenuTimer", "url": "plugin.NodeMenuNav.html#property__showSubmenuTimer", "type": "property"}, {"access": "", "host": "plugin.NodeMenuNav", "name": "submenuHideDelay", "url": "plugin.NodeMenuNav.html#config_submenuHideDelay", "type": "config"}, {"access": "", "host": "plugin.NodeMenuNav", "name": "submenuHideDelayChange", "url": "plugin.NodeMenuNav.html#event_submenuHideDelayChange", "type": "event"}, {"access": "", "host": "plugin.NodeMenuNav", "name": "submenuShowDelay", "url": "plugin.NodeMenuNav.html#config_submenuShowDelay", "type": "config"}, {"access": "", "host": "plugin.NodeMenuNav", "name": "submenuShowDelayChange", "url": "plugin.NodeMenuNav.html#event_submenuShowDelayChange", "type": "event"}, {"access": "protected", "host": "plugin.NodeMenuNav", "name": "_toggleSubmenuDisplay", "url": "plugin.NodeMenuNav.html#method__toggleSubmenuDisplay", "type": "method"}, {"access": "", "host": "plugin.NodeMenuNav", "name": "useARIA", "url": "plugin.NodeMenuNav.html#config_useARIA", "type": "config"}, {"access": "", "host": "plugin.NodeMenuNav", "name": "useARIAChange", "url": "plugin.NodeMenuNav.html#event_useARIAChange", "type": "event"}];
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2286
</script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2287
</body>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
  2288
</html>