2296 lines
224 KiB
HTML
2296 lines
224 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
|
<html xmlns:yui="http://yuilibrary.com/rdf/1.0/yui.rdf#">
|
|
<head>
|
|
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
|
|
<title>API: menu menuitem.js (YUI Library)</title>
|
|
|
|
<link rel="stylesheet" type="text/css" href="assets/reset-fonts-grids-min.css" />
|
|
<link rel="stylesheet" type="text/css" href="assets/api.css" />
|
|
|
|
<script type="text/javascript" src="assets/api-js"></script>
|
|
<script type="text/javascript" src="assets/ac-js"></script>
|
|
</head>
|
|
|
|
<body id="yahoo-com">
|
|
|
|
<div id="doc3" class="yui-t2">
|
|
<div id="hd">
|
|
<h1><a href="http://developer.yahoo.com/yui/" title="Yahoo! UI Library">Yahoo! UI Library</a></h1>
|
|
<h3>Menu <span class="subtitle">2.9.0</span></h3>
|
|
<a href="./index.html" title="Yahoo! UI Library">Yahoo! UI Library</a>
|
|
> <a href="./module_menu.html" title="menu">menu</a>
|
|
|
|
> menuitem.js (source view)
|
|
<form onsubmit="return false">
|
|
<div id="propertysearch">
|
|
Search: <input autocomplete="off" id="searchinput" />
|
|
<div id="searchresults">
|
|
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
|
|
<div id="bd">
|
|
<div id="yui-main">
|
|
<div class="yui-b">
|
|
<form action="#" name="yui-classopts-form" method="get" id="yui-classopts-form">
|
|
<fieldset>
|
|
<legend>Filters</legend>
|
|
<span class="classopts"><input type="checkbox" name="show_private" id="show_private" /> <label for="show_private">Show Private</label></span>
|
|
<span class="classopts"><input type="checkbox" name="show_protected" id="show_protected" /> <label for="show_protected">Show Protected</label></span>
|
|
<span class="classopts"><input type="checkbox" name="show_deprecated" id="show_deprecated" /> <label for="show_deprecated">Show Deprecated</label></span>
|
|
</fieldset>
|
|
</form>
|
|
|
|
<div id="srcout">
|
|
<style>
|
|
#doc3 .classopts { display:none; }
|
|
</style>
|
|
<div class="highlight"><pre><span class="p">(</span><span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm">* Creates an item for a menu.</span>
|
|
<span class="cm">* </span>
|
|
<span class="cm">* @param {HTML} p_oObject Markup for the menu item content. The markup is inserted into the DOM as HTML, and should be escaped by the implementor if coming from an external source.</span>
|
|
<span class="cm">* @param {<a href="http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/level-</span>
|
|
<span class="cm">* one-html.html#ID-74680021">HTMLLIElement</a>} p_oObject Object specifying </span>
|
|
<span class="cm">* the <code>&#60;li&#62;</code> element of the menu item.</span>
|
|
<span class="cm">* @param {<a href="http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/level-</span>
|
|
<span class="cm">* one-html.html#ID-38450247">HTMLOptGroupElement</a>} p_oObject Object </span>
|
|
<span class="cm">* specifying the <code>&#60;optgroup&#62;</code> element of the menu item.</span>
|
|
<span class="cm">* @param {<a href="http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/level-</span>
|
|
<span class="cm">* one-html.html#ID-70901257">HTMLOptionElement</a>} p_oObject Object </span>
|
|
<span class="cm">* specifying the <code>&#60;option&#62;</code> element of the menu item.</span>
|
|
<span class="cm">* @param {Object} p_oConfig Optional. Object literal specifying the </span>
|
|
<span class="cm">* configuration for the menu item. See configuration class documentation </span>
|
|
<span class="cm">* for more details.</span>
|
|
<span class="cm">* @class MenuItem</span>
|
|
<span class="cm">* @constructor</span>
|
|
<span class="cm">*/</span>
|
|
<span class="nx">YAHOO</span><span class="p">.</span><span class="nx">widget</span><span class="p">.</span><span class="nx">MenuItem</span> <span class="o">=</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">p_oObject</span><span class="p">,</span> <span class="nx">p_oConfig</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">p_oObject</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">p_oConfig</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">parent</span> <span class="o">=</span> <span class="nx">p_oConfig</span><span class="p">.</span><span class="nx">parent</span><span class="p">;</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">value</span> <span class="o">=</span> <span class="nx">p_oConfig</span><span class="p">.</span><span class="nx">value</span><span class="p">;</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">id</span> <span class="o">=</span> <span class="nx">p_oConfig</span><span class="p">.</span><span class="nx">id</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">init</span><span class="p">(</span><span class="nx">p_oObject</span><span class="p">,</span> <span class="nx">p_oConfig</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">};</span>
|
|
|
|
|
|
<span class="kd">var</span> <span class="nx">Dom</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">Dom</span><span class="p">,</span>
|
|
<span class="nx">Module</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">widget</span><span class="p">.</span><span class="nx">Module</span><span class="p">,</span>
|
|
<span class="nx">Menu</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">widget</span><span class="p">.</span><span class="nx">Menu</span><span class="p">,</span>
|
|
<span class="nx">MenuItem</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">widget</span><span class="p">.</span><span class="nx">MenuItem</span><span class="p">,</span>
|
|
<span class="nx">CustomEvent</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">CustomEvent</span><span class="p">,</span>
|
|
<span class="nx">UA</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">env</span><span class="p">.</span><span class="nx">ua</span><span class="p">,</span>
|
|
<span class="nx">Lang</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">lang</span><span class="p">,</span>
|
|
|
|
<span class="c1">// Private string constants</span>
|
|
|
|
<span class="nx">_TEXT</span> <span class="o">=</span> <span class="s2">"text"</span><span class="p">,</span>
|
|
<span class="nx">_HASH</span> <span class="o">=</span> <span class="s2">"#"</span><span class="p">,</span>
|
|
<span class="nx">_HYPHEN</span> <span class="o">=</span> <span class="s2">"-"</span><span class="p">,</span>
|
|
<span class="nx">_HELP_TEXT</span> <span class="o">=</span> <span class="s2">"helptext"</span><span class="p">,</span>
|
|
<span class="nx">_URL</span> <span class="o">=</span> <span class="s2">"url"</span><span class="p">,</span>
|
|
<span class="nx">_TARGET</span> <span class="o">=</span> <span class="s2">"target"</span><span class="p">,</span>
|
|
<span class="nx">_EMPHASIS</span> <span class="o">=</span> <span class="s2">"emphasis"</span><span class="p">,</span>
|
|
<span class="nx">_STRONG_EMPHASIS</span> <span class="o">=</span> <span class="s2">"strongemphasis"</span><span class="p">,</span>
|
|
<span class="nx">_CHECKED</span> <span class="o">=</span> <span class="s2">"checked"</span><span class="p">,</span>
|
|
<span class="nx">_SUBMENU</span> <span class="o">=</span> <span class="s2">"submenu"</span><span class="p">,</span>
|
|
<span class="nx">_DISABLED</span> <span class="o">=</span> <span class="s2">"disabled"</span><span class="p">,</span>
|
|
<span class="nx">_SELECTED</span> <span class="o">=</span> <span class="s2">"selected"</span><span class="p">,</span>
|
|
<span class="nx">_HAS_SUBMENU</span> <span class="o">=</span> <span class="s2">"hassubmenu"</span><span class="p">,</span>
|
|
<span class="nx">_CHECKED_DISABLED</span> <span class="o">=</span> <span class="s2">"checked-disabled"</span><span class="p">,</span>
|
|
<span class="nx">_HAS_SUBMENU_DISABLED</span> <span class="o">=</span> <span class="s2">"hassubmenu-disabled"</span><span class="p">,</span>
|
|
<span class="nx">_HAS_SUBMENU_SELECTED</span> <span class="o">=</span> <span class="s2">"hassubmenu-selected"</span><span class="p">,</span>
|
|
<span class="nx">_CHECKED_SELECTED</span> <span class="o">=</span> <span class="s2">"checked-selected"</span><span class="p">,</span>
|
|
<span class="nx">_ONCLICK</span> <span class="o">=</span> <span class="s2">"onclick"</span><span class="p">,</span>
|
|
<span class="nx">_CLASSNAME</span> <span class="o">=</span> <span class="s2">"classname"</span><span class="p">,</span>
|
|
<span class="nx">_EMPTY_STRING</span> <span class="o">=</span> <span class="s2">""</span><span class="p">,</span>
|
|
<span class="nx">_OPTION</span> <span class="o">=</span> <span class="s2">"OPTION"</span><span class="p">,</span>
|
|
<span class="nx">_OPTGROUP</span> <span class="o">=</span> <span class="s2">"OPTGROUP"</span><span class="p">,</span>
|
|
<span class="nx">_LI_UPPERCASE</span> <span class="o">=</span> <span class="s2">"LI"</span><span class="p">,</span>
|
|
<span class="nx">_HREF</span> <span class="o">=</span> <span class="s2">"href"</span><span class="p">,</span>
|
|
<span class="nx">_SELECT</span> <span class="o">=</span> <span class="s2">"SELECT"</span><span class="p">,</span>
|
|
<span class="nx">_DIV</span> <span class="o">=</span> <span class="s2">"DIV"</span><span class="p">,</span>
|
|
<span class="nx">_START_HELP_TEXT</span> <span class="o">=</span> <span class="s2">"<em class=\"helptext\">"</span><span class="p">,</span>
|
|
<span class="nx">_START_EM</span> <span class="o">=</span> <span class="s2">"<em>"</span><span class="p">,</span>
|
|
<span class="nx">_END_EM</span> <span class="o">=</span> <span class="s2">"</em>"</span><span class="p">,</span>
|
|
<span class="nx">_START_STRONG</span> <span class="o">=</span> <span class="s2">"<strong>"</span><span class="p">,</span>
|
|
<span class="nx">_END_STRONG</span> <span class="o">=</span> <span class="s2">"</strong>"</span><span class="p">,</span>
|
|
<span class="nx">_PREVENT_CONTEXT_OVERLAP</span> <span class="o">=</span> <span class="s2">"preventcontextoverlap"</span><span class="p">,</span>
|
|
<span class="nx">_OBJ</span> <span class="o">=</span> <span class="s2">"obj"</span><span class="p">,</span>
|
|
<span class="nx">_SCOPE</span> <span class="o">=</span> <span class="s2">"scope"</span><span class="p">,</span>
|
|
<span class="nx">_NONE</span> <span class="o">=</span> <span class="s2">"none"</span><span class="p">,</span>
|
|
<span class="nx">_VISIBLE</span> <span class="o">=</span> <span class="s2">"visible"</span><span class="p">,</span>
|
|
<span class="nx">_SPACE</span> <span class="o">=</span> <span class="s2">" "</span><span class="p">,</span>
|
|
<span class="nx">_MENUITEM</span> <span class="o">=</span> <span class="s2">"MenuItem"</span><span class="p">,</span>
|
|
<span class="nx">_CLICK</span> <span class="o">=</span> <span class="s2">"click"</span><span class="p">,</span>
|
|
<span class="nx">_SHOW</span> <span class="o">=</span> <span class="s2">"show"</span><span class="p">,</span>
|
|
<span class="nx">_HIDE</span> <span class="o">=</span> <span class="s2">"hide"</span><span class="p">,</span>
|
|
<span class="nx">_LI_LOWERCASE</span> <span class="o">=</span> <span class="s2">"li"</span><span class="p">,</span>
|
|
<span class="nx">_ANCHOR_TEMPLATE</span> <span class="o">=</span> <span class="s2">"<a href=\"#\"></a>"</span><span class="p">,</span>
|
|
|
|
<span class="nx">EVENT_TYPES</span> <span class="o">=</span> <span class="p">[</span>
|
|
|
|
<span class="p">[</span><span class="s2">"mouseOverEvent"</span><span class="p">,</span> <span class="s2">"mouseover"</span><span class="p">],</span>
|
|
<span class="p">[</span><span class="s2">"mouseOutEvent"</span><span class="p">,</span> <span class="s2">"mouseout"</span><span class="p">],</span>
|
|
<span class="p">[</span><span class="s2">"mouseDownEvent"</span><span class="p">,</span> <span class="s2">"mousedown"</span><span class="p">],</span>
|
|
<span class="p">[</span><span class="s2">"mouseUpEvent"</span><span class="p">,</span> <span class="s2">"mouseup"</span><span class="p">],</span>
|
|
<span class="p">[</span><span class="s2">"clickEvent"</span><span class="p">,</span> <span class="nx">_CLICK</span><span class="p">],</span>
|
|
<span class="p">[</span><span class="s2">"keyPressEvent"</span><span class="p">,</span> <span class="s2">"keypress"</span><span class="p">],</span>
|
|
<span class="p">[</span><span class="s2">"keyDownEvent"</span><span class="p">,</span> <span class="s2">"keydown"</span><span class="p">],</span>
|
|
<span class="p">[</span><span class="s2">"keyUpEvent"</span><span class="p">,</span> <span class="s2">"keyup"</span><span class="p">],</span>
|
|
<span class="p">[</span><span class="s2">"focusEvent"</span><span class="p">,</span> <span class="s2">"focus"</span><span class="p">],</span>
|
|
<span class="p">[</span><span class="s2">"blurEvent"</span><span class="p">,</span> <span class="s2">"blur"</span><span class="p">],</span>
|
|
<span class="p">[</span><span class="s2">"destroyEvent"</span><span class="p">,</span> <span class="s2">"destroy"</span><span class="p">]</span>
|
|
|
|
<span class="p">],</span>
|
|
|
|
<span class="nx">TEXT_CONFIG</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="nx">_TEXT</span><span class="p">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="nx">_EMPTY_STRING</span><span class="p">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">Lang</span><span class="p">.</span><span class="nx">isString</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">HELP_TEXT_CONFIG</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="nx">_HELP_TEXT</span><span class="p">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="p">[</span><span class="nx">_TEXT</span><span class="p">],</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">URL_CONFIG</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="nx">_URL</span><span class="p">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="nx">_HASH</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">TARGET_CONFIG</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="nx">_TARGET</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">EMPHASIS_CONFIG</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="nx">_EMPHASIS</span><span class="p">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="kc">false</span><span class="p">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">Lang</span><span class="p">.</span><span class="nx">isBoolean</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="kc">true</span><span class="p">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="p">[</span><span class="nx">_TEXT</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">STRONG_EMPHASIS_CONFIG</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="nx">_STRONG_EMPHASIS</span><span class="p">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="kc">false</span><span class="p">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">Lang</span><span class="p">.</span><span class="nx">isBoolean</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="kc">true</span><span class="p">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="p">[</span><span class="nx">_TEXT</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">CHECKED_CONFIG</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="nx">_CHECKED</span><span class="p">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="kc">false</span><span class="p">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">Lang</span><span class="p">.</span><span class="nx">isBoolean</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="kc">true</span><span class="p">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="p">[</span><span class="nx">_DISABLED</span><span class="p">,</span> <span class="nx">_SELECTED</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">SUBMENU_CONFIG</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="nx">_SUBMENU</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="kc">true</span><span class="p">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="p">[</span><span class="nx">_DISABLED</span><span class="p">,</span> <span class="nx">_SELECTED</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">DISABLED_CONFIG</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="nx">_DISABLED</span><span class="p">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="kc">false</span><span class="p">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">Lang</span><span class="p">.</span><span class="nx">isBoolean</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="kc">true</span><span class="p">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="p">[</span><span class="nx">_TEXT</span><span class="p">,</span> <span class="nx">_SELECTED</span><span class="p">]</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">SELECTED_CONFIG</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="nx">_SELECTED</span><span class="p">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="kc">false</span><span class="p">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">Lang</span><span class="p">.</span><span class="nx">isBoolean</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">ONCLICK_CONFIG</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="nx">_ONCLICK</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">CLASS_NAME_CONFIG</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="nx">_CLASSNAME</span><span class="p">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="kc">null</span><span class="p">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">Lang</span><span class="p">.</span><span class="nx">isString</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">KEY_LISTENER_CONFIG</span> <span class="o">=</span> <span class="p">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="s2">"keylistener"</span><span class="p">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="kc">null</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="kc">true</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">m_oMenuItemTemplate</span> <span class="o">=</span> <span class="kc">null</span><span class="p">,</span>
|
|
|
|
<span class="nx">CLASS_NAMES</span> <span class="o">=</span> <span class="p">{};</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm">* @method getClassNameForState</span>
|
|
<span class="cm">* @description Returns a class name for the specified prefix and state. If the class name does not </span>
|
|
<span class="cm">* yet exist, it is created and stored in the CLASS_NAMES object to increase performance.</span>
|
|
<span class="cm">* @private</span>
|
|
<span class="cm">* @param {String} prefix String representing the prefix for the class name</span>
|
|
<span class="cm">* @param {String} state String representing a state - "disabled," "checked," etc.</span>
|
|
<span class="cm">*/</span>
|
|
<span class="kd">var</span> <span class="nx">getClassNameForState</span> <span class="o">=</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">prefix</span><span class="p">,</span> <span class="nx">state</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">oClassNames</span> <span class="o">=</span> <span class="nx">CLASS_NAMES</span><span class="p">[</span><span class="nx">prefix</span><span class="p">];</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">oClassNames</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">CLASS_NAMES</span><span class="p">[</span><span class="nx">prefix</span><span class="p">]</span> <span class="o">=</span> <span class="p">{};</span>
|
|
<span class="nx">oClassNames</span> <span class="o">=</span> <span class="nx">CLASS_NAMES</span><span class="p">[</span><span class="nx">prefix</span><span class="p">];</span>
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="kd">var</span> <span class="nx">sClassName</span> <span class="o">=</span> <span class="nx">oClassNames</span><span class="p">[</span><span class="nx">state</span><span class="p">];</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">sClassName</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">sClassName</span> <span class="o">=</span> <span class="nx">prefix</span> <span class="o">+</span> <span class="nx">_HYPHEN</span> <span class="o">+</span> <span class="nx">state</span><span class="p">;</span>
|
|
<span class="nx">oClassNames</span><span class="p">[</span><span class="nx">state</span><span class="p">]</span> <span class="o">=</span> <span class="nx">sClassName</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">sClassName</span><span class="p">;</span>
|
|
|
|
<span class="p">};</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm">* @method addClassNameForState</span>
|
|
<span class="cm">* @description Applies a class name to a MenuItem instance's &#60;LI&#62; and &#60;A&#62; elements</span>
|
|
<span class="cm">* that represents a MenuItem's state - "disabled," "checked," etc.</span>
|
|
<span class="cm">* @private</span>
|
|
<span class="cm">* @param {String} state String representing a state - "disabled," "checked," etc.</span>
|
|
<span class="cm">*/</span>
|
|
<span class="kd">var</span> <span class="nx">addClassNameForState</span> <span class="o">=</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">state</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">Dom</span><span class="p">.</span><span class="nx">addClass</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">,</span> <span class="nx">getClassNameForState</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">CSS_CLASS_NAME</span><span class="p">,</span> <span class="nx">state</span><span class="p">));</span>
|
|
<span class="nx">Dom</span><span class="p">.</span><span class="nx">addClass</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">_oAnchor</span><span class="p">,</span> <span class="nx">getClassNameForState</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">CSS_LABEL_CLASS_NAME</span><span class="p">,</span> <span class="nx">state</span><span class="p">));</span>
|
|
|
|
<span class="p">};</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm">* @method removeClassNameForState</span>
|
|
<span class="cm">* @description Removes a class name from a MenuItem instance's &#60;LI&#62; and &#60;A&#62; elements</span>
|
|
<span class="cm">* that represents a MenuItem's state - "disabled," "checked," etc.</span>
|
|
<span class="cm">* @private</span>
|
|
<span class="cm">* @param {String} state String representing a state - "disabled," "checked," etc.</span>
|
|
<span class="cm">*/</span>
|
|
<span class="kd">var</span> <span class="nx">removeClassNameForState</span> <span class="o">=</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">state</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">Dom</span><span class="p">.</span><span class="nx">removeClass</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">,</span> <span class="nx">getClassNameForState</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">CSS_CLASS_NAME</span><span class="p">,</span> <span class="nx">state</span><span class="p">));</span>
|
|
<span class="nx">Dom</span><span class="p">.</span><span class="nx">removeClass</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">_oAnchor</span><span class="p">,</span> <span class="nx">getClassNameForState</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">CSS_LABEL_CLASS_NAME</span><span class="p">,</span> <span class="nx">state</span><span class="p">));</span>
|
|
|
|
<span class="p">};</span>
|
|
|
|
|
|
<span class="nx">MenuItem</span><span class="p">.</span><span class="nx">prototype</span> <span class="o">=</span> <span class="p">{</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @property CSS_CLASS_NAME</span>
|
|
<span class="cm"> * @description String representing the CSS class(es) to be applied to the </span>
|
|
<span class="cm"> * <code>&#60;li&#62;</code> element of the menu item.</span>
|
|
<span class="cm"> * @default "yuimenuitem"</span>
|
|
<span class="cm"> * @final</span>
|
|
<span class="cm"> * @type String</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">CSS_CLASS_NAME</span><span class="o">:</span> <span class="s2">"yuimenuitem"</span><span class="p">,</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @property CSS_LABEL_CLASS_NAME</span>
|
|
<span class="cm"> * @description String representing the CSS class(es) to be applied to the </span>
|
|
<span class="cm"> * menu item's <code>&#60;a&#62;</code> element.</span>
|
|
<span class="cm"> * @default "yuimenuitemlabel"</span>
|
|
<span class="cm"> * @final</span>
|
|
<span class="cm"> * @type String</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">CSS_LABEL_CLASS_NAME</span><span class="o">:</span> <span class="s2">"yuimenuitemlabel"</span><span class="p">,</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @property SUBMENU_TYPE</span>
|
|
<span class="cm"> * @description Object representing the type of menu to instantiate and </span>
|
|
<span class="cm"> * add when parsing the child nodes of the menu item's source HTML element.</span>
|
|
<span class="cm"> * @final</span>
|
|
<span class="cm"> * @type YAHOO.widget.Menu</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">SUBMENU_TYPE</span><span class="o">:</span> <span class="kc">null</span><span class="p">,</span>
|
|
|
|
|
|
|
|
<span class="c1">// Private member variables</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @property _oAnchor</span>
|
|
<span class="cm"> * @description Object reference to the menu item's </span>
|
|
<span class="cm"> * <code>&#60;a&#62;</code> element.</span>
|
|
<span class="cm"> * @default null </span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> * @type <a href="http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/level-</span>
|
|
<span class="cm"> * one-html.html#ID-48250443">HTMLAnchorElement</a></span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_oAnchor</span><span class="o">:</span> <span class="kc">null</span><span class="p">,</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @property _oHelpTextEM</span>
|
|
<span class="cm"> * @description Object reference to the menu item's help text </span>
|
|
<span class="cm"> * <code>&#60;em&#62;</code> element.</span>
|
|
<span class="cm"> * @default null</span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> * @type <a href="http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/level-</span>
|
|
<span class="cm"> * one-html.html#ID-58190037">HTMLElement</a></span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_oHelpTextEM</span><span class="o">:</span> <span class="kc">null</span><span class="p">,</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @property _oSubmenu</span>
|
|
<span class="cm"> * @description Object reference to the menu item's submenu.</span>
|
|
<span class="cm"> * @default null</span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> * @type YAHOO.widget.Menu</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_oSubmenu</span><span class="o">:</span> <span class="kc">null</span><span class="p">,</span>
|
|
|
|
|
|
<span class="cm">/** </span>
|
|
<span class="cm"> * @property _oOnclickAttributeValue</span>
|
|
<span class="cm"> * @description Object reference to the menu item's current value for the </span>
|
|
<span class="cm"> * "onclick" configuration attribute.</span>
|
|
<span class="cm"> * @default null</span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> * @type Object</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_oOnclickAttributeValue</span><span class="o">:</span> <span class="kc">null</span><span class="p">,</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @property _sClassName</span>
|
|
<span class="cm"> * @description The current value of the "classname" configuration attribute.</span>
|
|
<span class="cm"> * @default null</span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> * @type String</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_sClassName</span><span class="o">:</span> <span class="kc">null</span><span class="p">,</span>
|
|
|
|
|
|
|
|
<span class="c1">// Public properties</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @property constructor</span>
|
|
<span class="cm"> * @description Object reference to the menu item's constructor function.</span>
|
|
<span class="cm"> * @default YAHOO.widget.MenuItem</span>
|
|
<span class="cm"> * @type YAHOO.widget.MenuItem</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">constructor</span><span class="o">:</span> <span class="nx">MenuItem</span><span class="p">,</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @property index</span>
|
|
<span class="cm"> * @description Number indicating the ordinal position of the menu item in </span>
|
|
<span class="cm"> * its group.</span>
|
|
<span class="cm"> * @default null</span>
|
|
<span class="cm"> * @type Number</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">index</span><span class="o">:</span> <span class="kc">null</span><span class="p">,</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @property groupIndex</span>
|
|
<span class="cm"> * @description Number indicating the index of the group to which the menu </span>
|
|
<span class="cm"> * item belongs.</span>
|
|
<span class="cm"> * @default null</span>
|
|
<span class="cm"> * @type Number</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">groupIndex</span><span class="o">:</span> <span class="kc">null</span><span class="p">,</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @property parent</span>
|
|
<span class="cm"> * @description Object reference to the menu item's parent menu.</span>
|
|
<span class="cm"> * @default null</span>
|
|
<span class="cm"> * @type YAHOO.widget.Menu</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">parent</span><span class="o">:</span> <span class="kc">null</span><span class="p">,</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @property element</span>
|
|
<span class="cm"> * @description Object reference to the menu item's </span>
|
|
<span class="cm"> * <code>&#60;li&#62;</code> element.</span>
|
|
<span class="cm"> * @default <a href="http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/level</span>
|
|
<span class="cm"> * -one-html.html#ID-74680021">HTMLLIElement</a></span>
|
|
<span class="cm"> * @type <a href="http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/level-</span>
|
|
<span class="cm"> * one-html.html#ID-74680021">HTMLLIElement</a></span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">element</span><span class="o">:</span> <span class="kc">null</span><span class="p">,</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @property srcElement</span>
|
|
<span class="cm"> * @description Object reference to the HTML element (either </span>
|
|
<span class="cm"> * <code>&#60;li&#62;</code>, <code>&#60;optgroup&#62;</code> or </span>
|
|
<span class="cm"> * <code>&#60;option&#62;</code>) used create the menu item.</span>
|
|
<span class="cm"> * @default <a href="http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/</span>
|
|
<span class="cm"> * level-one-html.html#ID-74680021">HTMLLIElement</a>|<a href="http://www.</span>
|
|
<span class="cm"> * w3.org/TR/2000/WD-DOM-Level-1-20000929/level-one-html.html#ID-38450247"</span>
|
|
<span class="cm"> * >HTMLOptGroupElement</a>|<a href="http://www.w3.org/TR/2000/WD-DOM-</span>
|
|
<span class="cm"> * Level-1-20000929/level-one-html.html#ID-70901257">HTMLOptionElement</a></span>
|
|
<span class="cm"> * @type <a href="http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/level-</span>
|
|
<span class="cm"> * one-html.html#ID-74680021">HTMLLIElement</a>|<a href="http://www.w3.</span>
|
|
<span class="cm"> * org/TR/2000/WD-DOM-Level-1-20000929/level-one-html.html#ID-38450247"></span>
|
|
<span class="cm"> * HTMLOptGroupElement</a>|<a href="http://www.w3.org/TR/2000/WD-DOM-</span>
|
|
<span class="cm"> * Level-1-20000929/level-one-html.html#ID-70901257">HTMLOptionElement</a></span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">srcElement</span><span class="o">:</span> <span class="kc">null</span><span class="p">,</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @property value</span>
|
|
<span class="cm"> * @description Object reference to the menu item's value.</span>
|
|
<span class="cm"> * @default null</span>
|
|
<span class="cm"> * @type Object</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="kc">null</span><span class="p">,</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @property browser</span>
|
|
<span class="cm"> * @deprecated Use YAHOO.env.ua</span>
|
|
<span class="cm"> * @description String representing the browser.</span>
|
|
<span class="cm"> * @type String</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">browser</span><span class="o">:</span> <span class="nx">Module</span><span class="p">.</span><span class="nx">prototype</span><span class="p">.</span><span class="nx">browser</span><span class="p">,</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @property id</span>
|
|
<span class="cm"> * @description Id of the menu item's root <code>&#60;li&#62;</code> </span>
|
|
<span class="cm"> * element. This property should be set via the constructor using the </span>
|
|
<span class="cm"> * configuration object literal. If an id is not specified, then one will </span>
|
|
<span class="cm"> * be created using the "generateId" method of the Dom utility.</span>
|
|
<span class="cm"> * @default null</span>
|
|
<span class="cm"> * @type String</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">id</span><span class="o">:</span> <span class="kc">null</span><span class="p">,</span>
|
|
|
|
|
|
|
|
<span class="c1">// Events</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @event destroyEvent</span>
|
|
<span class="cm"> * @description Fires when the menu item's <code>&#60;li&#62;</code> </span>
|
|
<span class="cm"> * element is removed from its parent <code>&#60;ul&#62;</code> element.</span>
|
|
<span class="cm"> * @type YAHOO.util.CustomEvent</span>
|
|
<span class="cm"> */</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @event mouseOverEvent</span>
|
|
<span class="cm"> * @description Fires when the mouse has entered the menu item. Passes </span>
|
|
<span class="cm"> * back the DOM Event object as an argument.</span>
|
|
<span class="cm"> * @type YAHOO.util.CustomEvent</span>
|
|
<span class="cm"> */</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @event mouseOutEvent</span>
|
|
<span class="cm"> * @description Fires when the mouse has left the menu item. Passes back </span>
|
|
<span class="cm"> * the DOM Event object as an argument.</span>
|
|
<span class="cm"> * @type YAHOO.util.CustomEvent</span>
|
|
<span class="cm"> */</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @event mouseDownEvent</span>
|
|
<span class="cm"> * @description Fires when the user mouses down on the menu item. Passes </span>
|
|
<span class="cm"> * back the DOM Event object as an argument.</span>
|
|
<span class="cm"> * @type YAHOO.util.CustomEvent</span>
|
|
<span class="cm"> */</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @event mouseUpEvent</span>
|
|
<span class="cm"> * @description Fires when the user releases a mouse button while the mouse </span>
|
|
<span class="cm"> * is over the menu item. Passes back the DOM Event object as an argument.</span>
|
|
<span class="cm"> * @type YAHOO.util.CustomEvent</span>
|
|
<span class="cm"> */</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @event clickEvent</span>
|
|
<span class="cm"> * @description Fires when the user clicks the on the menu item. Passes </span>
|
|
<span class="cm"> * back the DOM Event object as an argument.</span>
|
|
<span class="cm"> * @type YAHOO.util.CustomEvent</span>
|
|
<span class="cm"> */</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @event keyPressEvent</span>
|
|
<span class="cm"> * @description Fires when the user presses an alphanumeric key when the </span>
|
|
<span class="cm"> * menu item has focus. Passes back the DOM Event object as an argument.</span>
|
|
<span class="cm"> * @type YAHOO.util.CustomEvent</span>
|
|
<span class="cm"> */</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @event keyDownEvent</span>
|
|
<span class="cm"> * @description Fires when the user presses a key when the menu item has </span>
|
|
<span class="cm"> * focus. Passes back the DOM Event object as an argument.</span>
|
|
<span class="cm"> * @type YAHOO.util.CustomEvent</span>
|
|
<span class="cm"> */</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @event keyUpEvent</span>
|
|
<span class="cm"> * @description Fires when the user releases a key when the menu item has </span>
|
|
<span class="cm"> * focus. Passes back the DOM Event object as an argument.</span>
|
|
<span class="cm"> * @type YAHOO.util.CustomEvent</span>
|
|
<span class="cm"> */</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @event focusEvent</span>
|
|
<span class="cm"> * @description Fires when the menu item receives focus.</span>
|
|
<span class="cm"> * @type YAHOO.util.CustomEvent</span>
|
|
<span class="cm"> */</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @event blurEvent</span>
|
|
<span class="cm"> * @description Fires when the menu item loses the input focus.</span>
|
|
<span class="cm"> * @type YAHOO.util.CustomEvent</span>
|
|
<span class="cm"> */</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method init</span>
|
|
<span class="cm"> * @description The MenuItem class's initialization method. This method is </span>
|
|
<span class="cm"> * automatically called by the constructor, and sets up all DOM references </span>
|
|
<span class="cm"> * for pre-existing markup, and creates required markup if it is not </span>
|
|
<span class="cm"> * already present.</span>
|
|
<span class="cm"> * @param {HTML} p_oObject Markup for the menu item content. The markup is inserted into the DOM as HTML, and should be escaped by the implementor if coming from an external source.</span>
|
|
<span class="cm"> * @param {<a href="http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/level-</span>
|
|
<span class="cm"> * one-html.html#ID-74680021">HTMLLIElement</a>} p_oObject Object specifying </span>
|
|
<span class="cm"> * the <code>&#60;li&#62;</code> element of the menu item.</span>
|
|
<span class="cm"> * @param {<a href="http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/level-</span>
|
|
<span class="cm"> * one-html.html#ID-38450247">HTMLOptGroupElement</a>} p_oObject Object </span>
|
|
<span class="cm"> * specifying the <code>&#60;optgroup&#62;</code> element of the menu item.</span>
|
|
<span class="cm"> * @param {<a href="http://www.w3.org/TR/2000/WD-DOM-Level-1-20000929/level-</span>
|
|
<span class="cm"> * one-html.html#ID-70901257">HTMLOptionElement</a>} p_oObject Object </span>
|
|
<span class="cm"> * specifying the <code>&#60;option&#62;</code> element of the menu item.</span>
|
|
<span class="cm"> * @param {Object} p_oConfig Optional. Object literal specifying the </span>
|
|
<span class="cm"> * configuration for the menu item. See configuration class documentation </span>
|
|
<span class="cm"> * for more details.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">init</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">p_oObject</span><span class="p">,</span> <span class="nx">p_oConfig</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">SUBMENU_TYPE</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">SUBMENU_TYPE</span> <span class="o">=</span> <span class="nx">Menu</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="c1">// Create the config object</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">cfg</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">Config</span><span class="p">(</span><span class="k">this</span><span class="p">);</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">initDefaultConfig</span><span class="p">();</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">oConfig</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">,</span>
|
|
<span class="nx">sURL</span> <span class="o">=</span> <span class="nx">_HASH</span><span class="p">,</span>
|
|
<span class="nx">oCustomEvent</span><span class="p">,</span>
|
|
<span class="nx">aEventData</span><span class="p">,</span>
|
|
<span class="nx">oAnchor</span><span class="p">,</span>
|
|
<span class="nx">sTarget</span><span class="p">,</span>
|
|
<span class="nx">sText</span><span class="p">,</span>
|
|
<span class="nx">sId</span><span class="p">,</span>
|
|
<span class="nx">i</span><span class="p">;</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">Lang</span><span class="p">.</span><span class="nx">isString</span><span class="p">(</span><span class="nx">p_oObject</span><span class="p">))</span> <span class="p">{</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_createRootNodeStructure</span><span class="p">();</span>
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">queueProperty</span><span class="p">(</span><span class="nx">_TEXT</span><span class="p">,</span> <span class="nx">p_oObject</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
<span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="nx">p_oObject</span> <span class="o">&&</span> <span class="nx">p_oObject</span><span class="p">.</span><span class="nx">tagName</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="k">switch</span><span class="p">(</span><span class="nx">p_oObject</span><span class="p">.</span><span class="nx">tagName</span><span class="p">.</span><span class="nx">toUpperCase</span><span class="p">())</span> <span class="p">{</span>
|
|
|
|
<span class="k">case</span> <span class="nx">_OPTION</span><span class="o">:</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_createRootNodeStructure</span><span class="p">();</span>
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">queueProperty</span><span class="p">(</span><span class="nx">_TEXT</span><span class="p">,</span> <span class="nx">p_oObject</span><span class="p">.</span><span class="nx">text</span><span class="p">);</span>
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">queueProperty</span><span class="p">(</span><span class="nx">_DISABLED</span><span class="p">,</span> <span class="nx">p_oObject</span><span class="p">.</span><span class="nx">disabled</span><span class="p">);</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">value</span> <span class="o">=</span> <span class="nx">p_oObject</span><span class="p">.</span><span class="nx">value</span><span class="p">;</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">srcElement</span> <span class="o">=</span> <span class="nx">p_oObject</span><span class="p">;</span>
|
|
|
|
<span class="k">break</span><span class="p">;</span>
|
|
|
|
<span class="k">case</span> <span class="nx">_OPTGROUP</span><span class="o">:</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_createRootNodeStructure</span><span class="p">();</span>
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">queueProperty</span><span class="p">(</span><span class="nx">_TEXT</span><span class="p">,</span> <span class="nx">p_oObject</span><span class="p">.</span><span class="nx">label</span><span class="p">);</span>
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">queueProperty</span><span class="p">(</span><span class="nx">_DISABLED</span><span class="p">,</span> <span class="nx">p_oObject</span><span class="p">.</span><span class="nx">disabled</span><span class="p">);</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">srcElement</span> <span class="o">=</span> <span class="nx">p_oObject</span><span class="p">;</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_initSubTree</span><span class="p">();</span>
|
|
|
|
<span class="k">break</span><span class="p">;</span>
|
|
|
|
<span class="k">case</span> <span class="nx">_LI_UPPERCASE</span><span class="o">:</span>
|
|
|
|
<span class="c1">// Get the anchor node (if it exists)</span>
|
|
|
|
<span class="nx">oAnchor</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">getFirstChild</span><span class="p">(</span><span class="nx">p_oObject</span><span class="p">);</span>
|
|
|
|
|
|
<span class="c1">// Capture the "text" and/or the "URL"</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oAnchor</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">sURL</span> <span class="o">=</span> <span class="nx">oAnchor</span><span class="p">.</span><span class="nx">getAttribute</span><span class="p">(</span><span class="nx">_HREF</span><span class="p">,</span> <span class="mi">2</span><span class="p">);</span>
|
|
<span class="nx">sTarget</span> <span class="o">=</span> <span class="nx">oAnchor</span><span class="p">.</span><span class="nx">getAttribute</span><span class="p">(</span><span class="nx">_TARGET</span><span class="p">);</span>
|
|
|
|
<span class="nx">sText</span> <span class="o">=</span> <span class="nx">oAnchor</span><span class="p">.</span><span class="nx">innerHTML</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">srcElement</span> <span class="o">=</span> <span class="nx">p_oObject</span><span class="p">;</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">element</span> <span class="o">=</span> <span class="nx">p_oObject</span><span class="p">;</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_oAnchor</span> <span class="o">=</span> <span class="nx">oAnchor</span><span class="p">;</span>
|
|
|
|
<span class="cm">/*</span>
|
|
<span class="cm"> Set these properties silently to sync up the </span>
|
|
<span class="cm"> configuration object without making changes to the </span>
|
|
<span class="cm"> element's DOM</span>
|
|
<span class="cm"> */</span>
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">setProperty</span><span class="p">(</span><span class="nx">_TEXT</span><span class="p">,</span> <span class="nx">sText</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">setProperty</span><span class="p">(</span><span class="nx">_URL</span><span class="p">,</span> <span class="nx">sURL</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">setProperty</span><span class="p">(</span><span class="nx">_TARGET</span><span class="p">,</span> <span class="nx">sTarget</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_initSubTree</span><span class="p">();</span>
|
|
|
|
<span class="k">break</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">sId</span> <span class="o">=</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">srcElement</span> <span class="o">||</span> <span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">).</span><span class="nx">id</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">sId</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">sId</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">id</span> <span class="o">||</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">generateId</span><span class="p">();</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">.</span><span class="nx">id</span> <span class="o">=</span> <span class="nx">sId</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">id</span> <span class="o">=</span> <span class="nx">sId</span><span class="p">;</span>
|
|
|
|
|
|
<span class="nx">Dom</span><span class="p">.</span><span class="nx">addClass</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">CSS_CLASS_NAME</span><span class="p">);</span>
|
|
<span class="nx">Dom</span><span class="p">.</span><span class="nx">addClass</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">_oAnchor</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">CSS_LABEL_CLASS_NAME</span><span class="p">);</span>
|
|
|
|
|
|
<span class="nx">i</span> <span class="o">=</span> <span class="nx">EVENT_TYPES</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">;</span>
|
|
|
|
<span class="k">do</span> <span class="p">{</span>
|
|
|
|
<span class="nx">aEventData</span> <span class="o">=</span> <span class="nx">EVENT_TYPES</span><span class="p">[</span><span class="nx">i</span><span class="p">];</span>
|
|
|
|
<span class="nx">oCustomEvent</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">createEvent</span><span class="p">(</span><span class="nx">aEventData</span><span class="p">[</span><span class="mi">1</span><span class="p">]);</span>
|
|
<span class="nx">oCustomEvent</span><span class="p">.</span><span class="nx">signature</span> <span class="o">=</span> <span class="nx">CustomEvent</span><span class="p">.</span><span class="nx">LIST</span><span class="p">;</span>
|
|
|
|
<span class="k">this</span><span class="p">[</span><span class="nx">aEventData</span><span class="p">[</span><span class="mi">0</span><span class="p">]]</span> <span class="o">=</span> <span class="nx">oCustomEvent</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span>
|
|
<span class="k">while</span> <span class="p">(</span><span class="nx">i</span><span class="o">--</span><span class="p">);</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">p_oConfig</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">applyConfig</span><span class="p">(</span><span class="nx">p_oConfig</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">fireQueue</span><span class="p">();</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
|
|
<span class="c1">// Private methods</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method _createRootNodeStructure</span>
|
|
<span class="cm"> * @description Creates the core DOM structure for the menu item.</span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_createRootNodeStructure</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">oElement</span><span class="p">,</span>
|
|
<span class="nx">oAnchor</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">m_oMenuItemTemplate</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">m_oMenuItemTemplate</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createElement</span><span class="p">(</span><span class="nx">_LI_LOWERCASE</span><span class="p">);</span>
|
|
<span class="nx">m_oMenuItemTemplate</span><span class="p">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="nx">_ANCHOR_TEMPLATE</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="nx">oElement</span> <span class="o">=</span> <span class="nx">m_oMenuItemTemplate</span><span class="p">.</span><span class="nx">cloneNode</span><span class="p">(</span><span class="kc">true</span><span class="p">);</span>
|
|
<span class="nx">oElement</span><span class="p">.</span><span class="nx">className</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">CSS_CLASS_NAME</span><span class="p">;</span>
|
|
|
|
<span class="nx">oAnchor</span> <span class="o">=</span> <span class="nx">oElement</span><span class="p">.</span><span class="nx">firstChild</span><span class="p">;</span>
|
|
<span class="nx">oAnchor</span><span class="p">.</span><span class="nx">className</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">CSS_LABEL_CLASS_NAME</span><span class="p">;</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">element</span> <span class="o">=</span> <span class="nx">oElement</span><span class="p">;</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_oAnchor</span> <span class="o">=</span> <span class="nx">oAnchor</span><span class="p">;</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method _initSubTree</span>
|
|
<span class="cm"> * @description Iterates the source element's childNodes collection and uses </span>
|
|
<span class="cm"> * the child nodes to instantiate other menus.</span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_initSubTree</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">oSrcEl</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">srcElement</span><span class="p">,</span>
|
|
<span class="nx">oConfig</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">,</span>
|
|
<span class="nx">oNode</span><span class="p">,</span>
|
|
<span class="nx">aOptions</span><span class="p">,</span>
|
|
<span class="nx">nOptions</span><span class="p">,</span>
|
|
<span class="nx">oMenu</span><span class="p">,</span>
|
|
<span class="nx">n</span><span class="p">;</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oSrcEl</span><span class="p">.</span><span class="nx">childNodes</span><span class="p">.</span><span class="nx">length</span> <span class="o">></span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">parent</span><span class="p">.</span><span class="nx">lazyLoad</span> <span class="o">&&</span> <span class="k">this</span><span class="p">.</span><span class="nx">parent</span><span class="p">.</span><span class="nx">srcElement</span> <span class="o">&&</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">parent</span><span class="p">.</span><span class="nx">srcElement</span><span class="p">.</span><span class="nx">tagName</span><span class="p">.</span><span class="nx">toUpperCase</span><span class="p">()</span> <span class="o">==</span> <span class="nx">_SELECT</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">setProperty</span><span class="p">(</span>
|
|
<span class="nx">_SUBMENU</span><span class="p">,</span>
|
|
<span class="p">{</span> <span class="nx">id</span><span class="o">:</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">generateId</span><span class="p">(),</span> <span class="nx">itemdata</span><span class="o">:</span> <span class="nx">oSrcEl</span><span class="p">.</span><span class="nx">childNodes</span> <span class="p">}</span>
|
|
<span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
<span class="k">else</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oNode</span> <span class="o">=</span> <span class="nx">oSrcEl</span><span class="p">.</span><span class="nx">firstChild</span><span class="p">;</span>
|
|
<span class="nx">aOptions</span> <span class="o">=</span> <span class="p">[];</span>
|
|
|
|
<span class="k">do</span> <span class="p">{</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oNode</span> <span class="o">&&</span> <span class="nx">oNode</span><span class="p">.</span><span class="nx">tagName</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="k">switch</span><span class="p">(</span><span class="nx">oNode</span><span class="p">.</span><span class="nx">tagName</span><span class="p">.</span><span class="nx">toUpperCase</span><span class="p">())</span> <span class="p">{</span>
|
|
|
|
<span class="k">case</span> <span class="nx">_DIV</span><span class="o">:</span>
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">setProperty</span><span class="p">(</span><span class="nx">_SUBMENU</span><span class="p">,</span> <span class="nx">oNode</span><span class="p">);</span>
|
|
|
|
<span class="k">break</span><span class="p">;</span>
|
|
|
|
<span class="k">case</span> <span class="nx">_OPTION</span><span class="o">:</span>
|
|
|
|
<span class="nx">aOptions</span><span class="p">[</span><span class="nx">aOptions</span><span class="p">.</span><span class="nx">length</span><span class="p">]</span> <span class="o">=</span> <span class="nx">oNode</span><span class="p">;</span>
|
|
|
|
<span class="k">break</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
<span class="k">while</span><span class="p">((</span><span class="nx">oNode</span> <span class="o">=</span> <span class="nx">oNode</span><span class="p">.</span><span class="nx">nextSibling</span><span class="p">));</span>
|
|
|
|
|
|
<span class="nx">nOptions</span> <span class="o">=</span> <span class="nx">aOptions</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">nOptions</span> <span class="o">></span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oMenu</span> <span class="o">=</span> <span class="k">new</span> <span class="k">this</span><span class="p">.</span><span class="nx">SUBMENU_TYPE</span><span class="p">(</span><span class="nx">Dom</span><span class="p">.</span><span class="nx">generateId</span><span class="p">());</span>
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">setProperty</span><span class="p">(</span><span class="nx">_SUBMENU</span><span class="p">,</span> <span class="nx">oMenu</span><span class="p">);</span>
|
|
|
|
<span class="k">for</span><span class="p">(</span><span class="nx">n</span><span class="o">=</span><span class="mi">0</span><span class="p">;</span> <span class="nx">n</span><span class="o"><</span><span class="nx">nOptions</span><span class="p">;</span> <span class="nx">n</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oMenu</span><span class="p">.</span><span class="nx">addItem</span><span class="p">((</span><span class="k">new</span> <span class="nx">oMenu</span><span class="p">.</span><span class="nx">ITEM_TYPE</span><span class="p">(</span><span class="nx">aOptions</span><span class="p">[</span><span class="nx">n</span><span class="p">])));</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
|
|
<span class="c1">// Event handlers for configuration properties</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method configText</span>
|
|
<span class="cm"> * @description Event handler for when the "text" configuration property of </span>
|
|
<span class="cm"> * the menu item changes.</span>
|
|
<span class="cm"> * @param {String} p_sType String representing the name of the event that </span>
|
|
<span class="cm"> * was fired.</span>
|
|
<span class="cm"> * @param {Array} p_aArgs Array of arguments sent when the event was fired.</span>
|
|
<span class="cm"> * @param {YAHOO.widget.MenuItem} p_oItem Object representing the menu item</span>
|
|
<span class="cm"> * that fired the event.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">configText</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">p_sType</span><span class="p">,</span> <span class="nx">p_aArgs</span><span class="p">,</span> <span class="nx">p_oItem</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">sText</span> <span class="o">=</span> <span class="nx">p_aArgs</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span>
|
|
<span class="nx">oConfig</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">,</span>
|
|
<span class="nx">oAnchor</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">_oAnchor</span><span class="p">,</span>
|
|
<span class="nx">sHelpText</span> <span class="o">=</span> <span class="nx">oConfig</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_HELP_TEXT</span><span class="p">),</span>
|
|
<span class="nx">sHelpTextHTML</span> <span class="o">=</span> <span class="nx">_EMPTY_STRING</span><span class="p">,</span>
|
|
<span class="nx">sEmphasisStartTag</span> <span class="o">=</span> <span class="nx">_EMPTY_STRING</span><span class="p">,</span>
|
|
<span class="nx">sEmphasisEndTag</span> <span class="o">=</span> <span class="nx">_EMPTY_STRING</span><span class="p">;</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">sText</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">sHelpText</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">sHelpTextHTML</span> <span class="o">=</span> <span class="nx">_START_HELP_TEXT</span> <span class="o">+</span> <span class="nx">sHelpText</span> <span class="o">+</span> <span class="nx">_END_EM</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oConfig</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_EMPHASIS</span><span class="p">))</span> <span class="p">{</span>
|
|
|
|
<span class="nx">sEmphasisStartTag</span> <span class="o">=</span> <span class="nx">_START_EM</span><span class="p">;</span>
|
|
<span class="nx">sEmphasisEndTag</span> <span class="o">=</span> <span class="nx">_END_EM</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oConfig</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_STRONG_EMPHASIS</span><span class="p">))</span> <span class="p">{</span>
|
|
|
|
<span class="nx">sEmphasisStartTag</span> <span class="o">=</span> <span class="nx">_START_STRONG</span><span class="p">;</span>
|
|
<span class="nx">sEmphasisEndTag</span> <span class="o">=</span> <span class="nx">_END_STRONG</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="nx">oAnchor</span><span class="p">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="p">(</span><span class="nx">sEmphasisStartTag</span> <span class="o">+</span> <span class="nx">sText</span> <span class="o">+</span> <span class="nx">sEmphasisEndTag</span> <span class="o">+</span> <span class="nx">sHelpTextHTML</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method configHelpText</span>
|
|
<span class="cm"> * @description Event handler for when the "helptext" configuration property </span>
|
|
<span class="cm"> * of the menu item changes.</span>
|
|
<span class="cm"> * @param {String} p_sType String representing the name of the event that </span>
|
|
<span class="cm"> * was fired.</span>
|
|
<span class="cm"> * @param {Array} p_aArgs Array of arguments sent when the event was fired.</span>
|
|
<span class="cm"> * @param {YAHOO.widget.MenuItem} p_oItem Object representing the menu item</span>
|
|
<span class="cm"> * that fired the event.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">configHelpText</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">p_sType</span><span class="p">,</span> <span class="nx">p_aArgs</span><span class="p">,</span> <span class="nx">p_oItem</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">refireEvent</span><span class="p">(</span><span class="nx">_TEXT</span><span class="p">);</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method configURL</span>
|
|
<span class="cm"> * @description Event handler for when the "url" configuration property of </span>
|
|
<span class="cm"> * the menu item changes.</span>
|
|
<span class="cm"> * @param {String} p_sType String representing the name of the event that </span>
|
|
<span class="cm"> * was fired.</span>
|
|
<span class="cm"> * @param {Array} p_aArgs Array of arguments sent when the event was fired.</span>
|
|
<span class="cm"> * @param {YAHOO.widget.MenuItem} p_oItem Object representing the menu item</span>
|
|
<span class="cm"> * that fired the event.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">configURL</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">p_sType</span><span class="p">,</span> <span class="nx">p_aArgs</span><span class="p">,</span> <span class="nx">p_oItem</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">sURL</span> <span class="o">=</span> <span class="nx">p_aArgs</span><span class="p">[</span><span class="mi">0</span><span class="p">];</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">sURL</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">sURL</span> <span class="o">=</span> <span class="nx">_HASH</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">oAnchor</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">_oAnchor</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">UA</span><span class="p">.</span><span class="nx">opera</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oAnchor</span><span class="p">.</span><span class="nx">removeAttribute</span><span class="p">(</span><span class="nx">_HREF</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="nx">oAnchor</span><span class="p">.</span><span class="nx">setAttribute</span><span class="p">(</span><span class="nx">_HREF</span><span class="p">,</span> <span class="nx">sURL</span><span class="p">);</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method configTarget</span>
|
|
<span class="cm"> * @description Event handler for when the "target" configuration property </span>
|
|
<span class="cm"> * of the menu item changes. </span>
|
|
<span class="cm"> * @param {String} p_sType String representing the name of the event that </span>
|
|
<span class="cm"> * was fired.</span>
|
|
<span class="cm"> * @param {Array} p_aArgs Array of arguments sent when the event was fired.</span>
|
|
<span class="cm"> * @param {YAHOO.widget.MenuItem} p_oItem Object representing the menu item</span>
|
|
<span class="cm"> * that fired the event.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">configTarget</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">p_sType</span><span class="p">,</span> <span class="nx">p_aArgs</span><span class="p">,</span> <span class="nx">p_oItem</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">sTarget</span> <span class="o">=</span> <span class="nx">p_aArgs</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span>
|
|
<span class="nx">oAnchor</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">_oAnchor</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">sTarget</span> <span class="o">&&</span> <span class="nx">sTarget</span><span class="p">.</span><span class="nx">length</span> <span class="o">></span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oAnchor</span><span class="p">.</span><span class="nx">setAttribute</span><span class="p">(</span><span class="nx">_TARGET</span><span class="p">,</span> <span class="nx">sTarget</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
<span class="k">else</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oAnchor</span><span class="p">.</span><span class="nx">removeAttribute</span><span class="p">(</span><span class="nx">_TARGET</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method configEmphasis</span>
|
|
<span class="cm"> * @description Event handler for when the "emphasis" configuration property</span>
|
|
<span class="cm"> * of the menu item changes.</span>
|
|
<span class="cm"> * @param {String} p_sType String representing the name of the event that </span>
|
|
<span class="cm"> * was fired.</span>
|
|
<span class="cm"> * @param {Array} p_aArgs Array of arguments sent when the event was fired.</span>
|
|
<span class="cm"> * @param {YAHOO.widget.MenuItem} p_oItem Object representing the menu item</span>
|
|
<span class="cm"> * that fired the event.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">configEmphasis</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">p_sType</span><span class="p">,</span> <span class="nx">p_aArgs</span><span class="p">,</span> <span class="nx">p_oItem</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">bEmphasis</span> <span class="o">=</span> <span class="nx">p_aArgs</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span>
|
|
<span class="nx">oConfig</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">;</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">bEmphasis</span> <span class="o">&&</span> <span class="nx">oConfig</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_STRONG_EMPHASIS</span><span class="p">))</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">setProperty</span><span class="p">(</span><span class="nx">_STRONG_EMPHASIS</span><span class="p">,</span> <span class="kc">false</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">refireEvent</span><span class="p">(</span><span class="nx">_TEXT</span><span class="p">);</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method configStrongEmphasis</span>
|
|
<span class="cm"> * @description Event handler for when the "strongemphasis" configuration </span>
|
|
<span class="cm"> * property of the menu item changes.</span>
|
|
<span class="cm"> * @param {String} p_sType String representing the name of the event that </span>
|
|
<span class="cm"> * was fired.</span>
|
|
<span class="cm"> * @param {Array} p_aArgs Array of arguments sent when the event was fired.</span>
|
|
<span class="cm"> * @param {YAHOO.widget.MenuItem} p_oItem Object representing the menu item</span>
|
|
<span class="cm"> * that fired the event.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">configStrongEmphasis</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">p_sType</span><span class="p">,</span> <span class="nx">p_aArgs</span><span class="p">,</span> <span class="nx">p_oItem</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">bStrongEmphasis</span> <span class="o">=</span> <span class="nx">p_aArgs</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span>
|
|
<span class="nx">oConfig</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">;</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">bStrongEmphasis</span> <span class="o">&&</span> <span class="nx">oConfig</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_EMPHASIS</span><span class="p">))</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">setProperty</span><span class="p">(</span><span class="nx">_EMPHASIS</span><span class="p">,</span> <span class="kc">false</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">refireEvent</span><span class="p">(</span><span class="nx">_TEXT</span><span class="p">);</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method configChecked</span>
|
|
<span class="cm"> * @description Event handler for when the "checked" configuration property </span>
|
|
<span class="cm"> * of the menu item changes. </span>
|
|
<span class="cm"> * @param {String} p_sType String representing the name of the event that </span>
|
|
<span class="cm"> * was fired.</span>
|
|
<span class="cm"> * @param {Array} p_aArgs Array of arguments sent when the event was fired.</span>
|
|
<span class="cm"> * @param {YAHOO.widget.MenuItem} p_oItem Object representing the menu item</span>
|
|
<span class="cm"> * that fired the event.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">configChecked</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">p_sType</span><span class="p">,</span> <span class="nx">p_aArgs</span><span class="p">,</span> <span class="nx">p_oItem</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">bChecked</span> <span class="o">=</span> <span class="nx">p_aArgs</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span>
|
|
<span class="nx">oConfig</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">;</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">bChecked</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">addClassNameForState</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">_CHECKED</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
<span class="k">else</span> <span class="p">{</span>
|
|
|
|
<span class="nx">removeClassNameForState</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">_CHECKED</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">refireEvent</span><span class="p">(</span><span class="nx">_TEXT</span><span class="p">);</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oConfig</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_DISABLED</span><span class="p">))</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">refireEvent</span><span class="p">(</span><span class="nx">_DISABLED</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oConfig</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_SELECTED</span><span class="p">))</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">refireEvent</span><span class="p">(</span><span class="nx">_SELECTED</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method configDisabled</span>
|
|
<span class="cm"> * @description Event handler for when the "disabled" configuration property </span>
|
|
<span class="cm"> * of the menu item changes. </span>
|
|
<span class="cm"> * @param {String} p_sType String representing the name of the event that </span>
|
|
<span class="cm"> * was fired.</span>
|
|
<span class="cm"> * @param {Array} p_aArgs Array of arguments sent when the event was fired.</span>
|
|
<span class="cm"> * @param {YAHOO.widget.MenuItem} p_oItem Object representing the menu item</span>
|
|
<span class="cm"> * that fired the event.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">configDisabled</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">p_sType</span><span class="p">,</span> <span class="nx">p_aArgs</span><span class="p">,</span> <span class="nx">p_oItem</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">bDisabled</span> <span class="o">=</span> <span class="nx">p_aArgs</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span>
|
|
<span class="nx">oConfig</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">,</span>
|
|
<span class="nx">oSubmenu</span> <span class="o">=</span> <span class="nx">oConfig</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_SUBMENU</span><span class="p">),</span>
|
|
<span class="nx">bChecked</span> <span class="o">=</span> <span class="nx">oConfig</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_CHECKED</span><span class="p">);</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">bDisabled</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oConfig</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_SELECTED</span><span class="p">))</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">setProperty</span><span class="p">(</span><span class="nx">_SELECTED</span><span class="p">,</span> <span class="kc">false</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="nx">addClassNameForState</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">_DISABLED</span><span class="p">);</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oSubmenu</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">addClassNameForState</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">_HAS_SUBMENU_DISABLED</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">bChecked</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">addClassNameForState</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">_CHECKED_DISABLED</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
<span class="k">else</span> <span class="p">{</span>
|
|
|
|
<span class="nx">removeClassNameForState</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">_DISABLED</span><span class="p">);</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oSubmenu</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">removeClassNameForState</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">_HAS_SUBMENU_DISABLED</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">bChecked</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">removeClassNameForState</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">_CHECKED_DISABLED</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method configSelected</span>
|
|
<span class="cm"> * @description Event handler for when the "selected" configuration property </span>
|
|
<span class="cm"> * of the menu item changes. </span>
|
|
<span class="cm"> * @param {String} p_sType String representing the name of the event that </span>
|
|
<span class="cm"> * was fired.</span>
|
|
<span class="cm"> * @param {Array} p_aArgs Array of arguments sent when the event was fired.</span>
|
|
<span class="cm"> * @param {YAHOO.widget.MenuItem} p_oItem Object representing the menu item</span>
|
|
<span class="cm"> * that fired the event.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">configSelected</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">p_sType</span><span class="p">,</span> <span class="nx">p_aArgs</span><span class="p">,</span> <span class="nx">p_oItem</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">oConfig</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">,</span>
|
|
<span class="nx">oAnchor</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">_oAnchor</span><span class="p">,</span>
|
|
|
|
<span class="nx">bSelected</span> <span class="o">=</span> <span class="nx">p_aArgs</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span>
|
|
<span class="nx">bChecked</span> <span class="o">=</span> <span class="nx">oConfig</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_CHECKED</span><span class="p">),</span>
|
|
<span class="nx">oSubmenu</span> <span class="o">=</span> <span class="nx">oConfig</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_SUBMENU</span><span class="p">);</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">UA</span><span class="p">.</span><span class="nx">opera</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oAnchor</span><span class="p">.</span><span class="nx">blur</span><span class="p">();</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">bSelected</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">oConfig</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_DISABLED</span><span class="p">))</span> <span class="p">{</span>
|
|
|
|
<span class="nx">addClassNameForState</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">_SELECTED</span><span class="p">);</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oSubmenu</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">addClassNameForState</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">_HAS_SUBMENU_SELECTED</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">bChecked</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">addClassNameForState</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">_CHECKED_SELECTED</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
<span class="k">else</span> <span class="p">{</span>
|
|
|
|
<span class="nx">removeClassNameForState</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">_SELECTED</span><span class="p">);</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oSubmenu</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">removeClassNameForState</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">_HAS_SUBMENU_SELECTED</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">bChecked</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">removeClassNameForState</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">_CHECKED_SELECTED</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">hasFocus</span><span class="p">()</span> <span class="o">&&</span> <span class="nx">UA</span><span class="p">.</span><span class="nx">opera</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oAnchor</span><span class="p">.</span><span class="nx">focus</span><span class="p">();</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method _onSubmenuBeforeHide</span>
|
|
<span class="cm"> * @description "beforehide" Custom Event handler for a submenu.</span>
|
|
<span class="cm"> * @private</span>
|
|
<span class="cm"> * @param {String} p_sType String representing the name of the event that </span>
|
|
<span class="cm"> * was fired.</span>
|
|
<span class="cm"> * @param {Array} p_aArgs Array of arguments sent when the event was fired.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_onSubmenuBeforeHide</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">p_sType</span><span class="p">,</span> <span class="nx">p_aArgs</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">oItem</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">parent</span><span class="p">,</span>
|
|
<span class="nx">oMenu</span><span class="p">;</span>
|
|
|
|
<span class="kd">function</span> <span class="nx">onHide</span><span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oItem</span><span class="p">.</span><span class="nx">_oAnchor</span><span class="p">.</span><span class="nx">blur</span><span class="p">();</span>
|
|
<span class="nx">oMenu</span><span class="p">.</span><span class="nx">beforeHideEvent</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="nx">onHide</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oItem</span><span class="p">.</span><span class="nx">hasFocus</span><span class="p">())</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oMenu</span> <span class="o">=</span> <span class="nx">oItem</span><span class="p">.</span><span class="nx">parent</span><span class="p">;</span>
|
|
|
|
<span class="nx">oMenu</span><span class="p">.</span><span class="nx">beforeHideEvent</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="nx">onHide</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method configSubmenu</span>
|
|
<span class="cm"> * @description Event handler for when the "submenu" configuration property </span>
|
|
<span class="cm"> * of the menu item changes. </span>
|
|
<span class="cm"> * @param {String} p_sType String representing the name of the event that </span>
|
|
<span class="cm"> * was fired.</span>
|
|
<span class="cm"> * @param {Array} p_aArgs Array of arguments sent when the event was fired.</span>
|
|
<span class="cm"> * @param {YAHOO.widget.MenuItem} p_oItem Object representing the menu item</span>
|
|
<span class="cm"> * that fired the event.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">configSubmenu</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">p_sType</span><span class="p">,</span> <span class="nx">p_aArgs</span><span class="p">,</span> <span class="nx">p_oItem</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">oSubmenu</span> <span class="o">=</span> <span class="nx">p_aArgs</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span>
|
|
<span class="nx">oConfig</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">,</span>
|
|
<span class="nx">bLazyLoad</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">parent</span> <span class="o">&&</span> <span class="k">this</span><span class="p">.</span><span class="nx">parent</span><span class="p">.</span><span class="nx">lazyLoad</span><span class="p">,</span>
|
|
<span class="nx">oMenu</span><span class="p">,</span>
|
|
<span class="nx">sSubmenuId</span><span class="p">,</span>
|
|
<span class="nx">oSubmenuConfig</span><span class="p">;</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oSubmenu</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oSubmenu</span> <span class="k">instanceof</span> <span class="nx">Menu</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oMenu</span> <span class="o">=</span> <span class="nx">oSubmenu</span><span class="p">;</span>
|
|
<span class="nx">oMenu</span><span class="p">.</span><span class="nx">parent</span> <span class="o">=</span> <span class="k">this</span><span class="p">;</span>
|
|
<span class="nx">oMenu</span><span class="p">.</span><span class="nx">lazyLoad</span> <span class="o">=</span> <span class="nx">bLazyLoad</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span>
|
|
<span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="nx">Lang</span><span class="p">.</span><span class="nx">isObject</span><span class="p">(</span><span class="nx">oSubmenu</span><span class="p">)</span> <span class="o">&&</span> <span class="nx">oSubmenu</span><span class="p">.</span><span class="nx">id</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">oSubmenu</span><span class="p">.</span><span class="nx">nodeType</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">sSubmenuId</span> <span class="o">=</span> <span class="nx">oSubmenu</span><span class="p">.</span><span class="nx">id</span><span class="p">;</span>
|
|
<span class="nx">oSubmenuConfig</span> <span class="o">=</span> <span class="nx">oSubmenu</span><span class="p">;</span>
|
|
|
|
<span class="nx">oSubmenuConfig</span><span class="p">.</span><span class="nx">lazyload</span> <span class="o">=</span> <span class="nx">bLazyLoad</span><span class="p">;</span>
|
|
<span class="nx">oSubmenuConfig</span><span class="p">.</span><span class="nx">parent</span> <span class="o">=</span> <span class="k">this</span><span class="p">;</span>
|
|
|
|
<span class="nx">oMenu</span> <span class="o">=</span> <span class="k">new</span> <span class="k">this</span><span class="p">.</span><span class="nx">SUBMENU_TYPE</span><span class="p">(</span><span class="nx">sSubmenuId</span><span class="p">,</span> <span class="nx">oSubmenuConfig</span><span class="p">);</span>
|
|
|
|
|
|
<span class="c1">// Set the value of the property to the Menu instance</span>
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">setProperty</span><span class="p">(</span><span class="nx">_SUBMENU</span><span class="p">,</span> <span class="nx">oMenu</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
<span class="k">else</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oMenu</span> <span class="o">=</span> <span class="k">new</span> <span class="k">this</span><span class="p">.</span><span class="nx">SUBMENU_TYPE</span><span class="p">(</span><span class="nx">oSubmenu</span><span class="p">,</span> <span class="p">{</span> <span class="nx">lazyload</span><span class="o">:</span> <span class="nx">bLazyLoad</span><span class="p">,</span> <span class="nx">parent</span><span class="o">:</span> <span class="k">this</span> <span class="p">});</span>
|
|
|
|
|
|
<span class="c1">// Set the value of the property to the Menu instance</span>
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">setProperty</span><span class="p">(</span><span class="nx">_SUBMENU</span><span class="p">,</span> <span class="nx">oMenu</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oMenu</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oMenu</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">setProperty</span><span class="p">(</span><span class="nx">_PREVENT_CONTEXT_OVERLAP</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
|
|
|
|
<span class="nx">addClassNameForState</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">_HAS_SUBMENU</span><span class="p">);</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oConfig</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_URL</span><span class="p">)</span> <span class="o">===</span> <span class="nx">_HASH</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">setProperty</span><span class="p">(</span><span class="nx">_URL</span><span class="p">,</span> <span class="p">(</span><span class="nx">_HASH</span> <span class="o">+</span> <span class="nx">oMenu</span><span class="p">.</span><span class="nx">id</span><span class="p">));</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_oSubmenu</span> <span class="o">=</span> <span class="nx">oMenu</span><span class="p">;</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">UA</span><span class="p">.</span><span class="nx">opera</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oMenu</span><span class="p">.</span><span class="nx">beforeHideEvent</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">_onSubmenuBeforeHide</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
<span class="k">else</span> <span class="p">{</span>
|
|
|
|
<span class="nx">removeClassNameForState</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">,</span> <span class="nx">_HAS_SUBMENU</span><span class="p">);</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">_oSubmenu</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_oSubmenu</span><span class="p">.</span><span class="nx">destroy</span><span class="p">();</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oConfig</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_DISABLED</span><span class="p">))</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">refireEvent</span><span class="p">(</span><span class="nx">_DISABLED</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oConfig</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_SELECTED</span><span class="p">))</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">refireEvent</span><span class="p">(</span><span class="nx">_SELECTED</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method configOnClick</span>
|
|
<span class="cm"> * @description Event handler for when the "onclick" configuration property </span>
|
|
<span class="cm"> * of the menu item changes. </span>
|
|
<span class="cm"> * @param {String} p_sType String representing the name of the event that </span>
|
|
<span class="cm"> * was fired.</span>
|
|
<span class="cm"> * @param {Array} p_aArgs Array of arguments sent when the event was fired.</span>
|
|
<span class="cm"> * @param {YAHOO.widget.MenuItem} p_oItem Object representing the menu item</span>
|
|
<span class="cm"> * that fired the event.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">configOnClick</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">p_sType</span><span class="p">,</span> <span class="nx">p_aArgs</span><span class="p">,</span> <span class="nx">p_oItem</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">oObject</span> <span class="o">=</span> <span class="nx">p_aArgs</span><span class="p">[</span><span class="mi">0</span><span class="p">];</span>
|
|
|
|
<span class="cm">/*</span>
|
|
<span class="cm"> Remove any existing listeners if a "click" event handler has </span>
|
|
<span class="cm"> already been specified.</span>
|
|
<span class="cm"> */</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">_oOnclickAttributeValue</span> <span class="o">&&</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">_oOnclickAttributeValue</span> <span class="o">!=</span> <span class="nx">oObject</span><span class="p">))</span> <span class="p">{</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">clickEvent</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">_oOnclickAttributeValue</span><span class="p">.</span><span class="nx">fn</span><span class="p">,</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_oOnclickAttributeValue</span><span class="p">.</span><span class="nx">obj</span><span class="p">);</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_oOnclickAttributeValue</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">_oOnclickAttributeValue</span> <span class="o">&&</span> <span class="nx">Lang</span><span class="p">.</span><span class="nx">isObject</span><span class="p">(</span><span class="nx">oObject</span><span class="p">)</span> <span class="o">&&</span>
|
|
<span class="nx">Lang</span><span class="p">.</span><span class="nx">isFunction</span><span class="p">(</span><span class="nx">oObject</span><span class="p">.</span><span class="nx">fn</span><span class="p">))</span> <span class="p">{</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">clickEvent</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="nx">oObject</span><span class="p">.</span><span class="nx">fn</span><span class="p">,</span>
|
|
<span class="p">((</span><span class="nx">_OBJ</span> <span class="k">in</span> <span class="nx">oObject</span><span class="p">)</span> <span class="o">?</span> <span class="nx">oObject</span><span class="p">.</span><span class="nx">obj</span> <span class="o">:</span> <span class="k">this</span><span class="p">),</span>
|
|
<span class="p">((</span><span class="nx">_SCOPE</span> <span class="k">in</span> <span class="nx">oObject</span><span class="p">)</span> <span class="o">?</span> <span class="nx">oObject</span><span class="p">.</span><span class="nx">scope</span> <span class="o">:</span> <span class="kc">null</span><span class="p">)</span> <span class="p">);</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_oOnclickAttributeValue</span> <span class="o">=</span> <span class="nx">oObject</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method configClassName</span>
|
|
<span class="cm"> * @description Event handler for when the "classname" configuration </span>
|
|
<span class="cm"> * property of a menu item changes.</span>
|
|
<span class="cm"> * @param {String} p_sType String representing the name of the event that </span>
|
|
<span class="cm"> * was fired.</span>
|
|
<span class="cm"> * @param {Array} p_aArgs Array of arguments sent when the event was fired.</span>
|
|
<span class="cm"> * @param {YAHOO.widget.MenuItem} p_oItem Object representing the menu item</span>
|
|
<span class="cm"> * that fired the event.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">configClassName</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">p_sType</span><span class="p">,</span> <span class="nx">p_aArgs</span><span class="p">,</span> <span class="nx">p_oItem</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">sClassName</span> <span class="o">=</span> <span class="nx">p_aArgs</span><span class="p">[</span><span class="mi">0</span><span class="p">];</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">_sClassName</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">Dom</span><span class="p">.</span><span class="nx">removeClass</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">_sClassName</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="nx">Dom</span><span class="p">.</span><span class="nx">addClass</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">,</span> <span class="nx">sClassName</span><span class="p">);</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_sClassName</span> <span class="o">=</span> <span class="nx">sClassName</span><span class="p">;</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method _dispatchClickEvent</span>
|
|
<span class="cm"> * @description Dispatches a DOM "click" event to the anchor element of a </span>
|
|
<span class="cm"> * MenuItem instance.</span>
|
|
<span class="cm"> * @private </span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_dispatchClickEvent</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">oMenuItem</span> <span class="o">=</span> <span class="k">this</span><span class="p">,</span>
|
|
<span class="nx">oAnchor</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">oMenuItem</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_DISABLED</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="nx">oAnchor</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">getFirstChild</span><span class="p">(</span><span class="nx">oMenuItem</span><span class="p">.</span><span class="nx">element</span><span class="p">);</span>
|
|
|
|
<span class="c1">// Dispatch a "click" event to the MenuItem's anchor so that its</span>
|
|
<span class="c1">// "click" event handlers will get called in response to the user </span>
|
|
<span class="c1">// pressing the keyboard shortcut defined by the "keylistener"</span>
|
|
<span class="c1">// configuration property.</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_dispatchDOMClick</span><span class="p">(</span><span class="nx">oAnchor</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * Utility method to dispatch a DOM click event on the HTMLElement passed in</span>
|
|
<span class="cm"> *</span>
|
|
<span class="cm"> * @method _dispatchDOMClick</span>
|
|
<span class="cm"> * @protected</span>
|
|
<span class="cm"> * @param {HTMLElement} el</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_dispatchDOMClick</span> <span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">el</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="kd">var</span> <span class="nx">oEvent</span><span class="p">;</span>
|
|
|
|
<span class="c1">// Choose the standards path for IE9</span>
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">UA</span><span class="p">.</span><span class="nx">ie</span> <span class="o">&&</span> <span class="nx">UA</span><span class="p">.</span><span class="nx">ie</span> <span class="o"><</span> <span class="mi">9</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">el</span><span class="p">.</span><span class="nx">fireEvent</span><span class="p">(</span><span class="nx">_ONCLICK</span><span class="p">);</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
|
<span class="k">if</span> <span class="p">((</span><span class="nx">UA</span><span class="p">.</span><span class="nx">gecko</span> <span class="o">&&</span> <span class="nx">UA</span><span class="p">.</span><span class="nx">gecko</span> <span class="o">>=</span> <span class="mf">1.9</span><span class="p">)</span> <span class="o">||</span> <span class="nx">UA</span><span class="p">.</span><span class="nx">opera</span> <span class="o">||</span> <span class="nx">UA</span><span class="p">.</span><span class="nx">webkit</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">oEvent</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createEvent</span><span class="p">(</span><span class="s2">"HTMLEvents"</span><span class="p">);</span>
|
|
<span class="nx">oEvent</span><span class="p">.</span><span class="nx">initEvent</span><span class="p">(</span><span class="nx">_CLICK</span><span class="p">,</span> <span class="kc">true</span><span class="p">,</span> <span class="kc">true</span><span class="p">);</span>
|
|
<span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
|
|
<span class="nx">oEvent</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createEvent</span><span class="p">(</span><span class="s2">"MouseEvents"</span><span class="p">);</span>
|
|
<span class="nx">oEvent</span><span class="p">.</span><span class="nx">initMouseEvent</span><span class="p">(</span><span class="nx">_CLICK</span><span class="p">,</span> <span class="kc">true</span><span class="p">,</span> <span class="kc">true</span><span class="p">,</span> <span class="nb">window</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="kc">false</span><span class="p">,</span> <span class="kc">false</span><span class="p">,</span> <span class="kc">false</span><span class="p">,</span> <span class="kc">false</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="kc">null</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="nx">el</span><span class="p">.</span><span class="nx">dispatchEvent</span><span class="p">(</span><span class="nx">oEvent</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method _createKeyListener</span>
|
|
<span class="cm"> * @description "show" event handler for a Menu instance - responsible for </span>
|
|
<span class="cm"> * setting up the KeyListener instance for a MenuItem.</span>
|
|
<span class="cm"> * @private </span>
|
|
<span class="cm"> * @param {String} type String representing the name of the event that </span>
|
|
<span class="cm"> * was fired.</span>
|
|
<span class="cm"> * @param {Array} args Array of arguments sent when the event was fired.</span>
|
|
<span class="cm"> * @param {Array} keyData Array of arguments sent when the event was fired.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">_createKeyListener</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">type</span><span class="p">,</span> <span class="nx">args</span><span class="p">,</span> <span class="nx">keyData</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">oMenuItem</span> <span class="o">=</span> <span class="k">this</span><span class="p">,</span>
|
|
<span class="nx">oMenu</span> <span class="o">=</span> <span class="nx">oMenuItem</span><span class="p">.</span><span class="nx">parent</span><span class="p">;</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">oKeyListener</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">KeyListener</span><span class="p">(</span>
|
|
<span class="nx">oMenu</span><span class="p">.</span><span class="nx">element</span><span class="p">.</span><span class="nx">ownerDocument</span><span class="p">,</span>
|
|
<span class="nx">keyData</span><span class="p">,</span>
|
|
<span class="p">{</span>
|
|
<span class="nx">fn</span><span class="o">:</span> <span class="nx">oMenuItem</span><span class="p">.</span><span class="nx">_dispatchClickEvent</span><span class="p">,</span>
|
|
<span class="nx">scope</span><span class="o">:</span> <span class="nx">oMenuItem</span><span class="p">,</span>
|
|
<span class="nx">correctScope</span><span class="o">:</span> <span class="kc">true</span> <span class="p">});</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oMenu</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_VISIBLE</span><span class="p">))</span> <span class="p">{</span>
|
|
<span class="nx">oKeyListener</span><span class="p">.</span><span class="nx">enable</span><span class="p">();</span>
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="nx">oMenu</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="nx">_SHOW</span><span class="p">,</span> <span class="nx">oKeyListener</span><span class="p">.</span><span class="nx">enable</span><span class="p">,</span> <span class="kc">null</span><span class="p">,</span> <span class="nx">oKeyListener</span><span class="p">);</span>
|
|
<span class="nx">oMenu</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="nx">_HIDE</span><span class="p">,</span> <span class="nx">oKeyListener</span><span class="p">.</span><span class="nx">disable</span><span class="p">,</span> <span class="kc">null</span><span class="p">,</span> <span class="nx">oKeyListener</span><span class="p">);</span>
|
|
|
|
<span class="nx">oMenuItem</span><span class="p">.</span><span class="nx">_keyListener</span> <span class="o">=</span> <span class="nx">oKeyListener</span><span class="p">;</span>
|
|
|
|
<span class="nx">oMenu</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="nx">_SHOW</span><span class="p">,</span> <span class="nx">oMenuItem</span><span class="p">.</span><span class="nx">_createKeyListener</span><span class="p">,</span> <span class="nx">keyData</span><span class="p">);</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method configKeyListener</span>
|
|
<span class="cm"> * @description Event handler for when the "keylistener" configuration </span>
|
|
<span class="cm"> * property of a menu item changes.</span>
|
|
<span class="cm"> * @param {String} p_sType String representing the name of the event that </span>
|
|
<span class="cm"> * was fired.</span>
|
|
<span class="cm"> * @param {Array} p_aArgs Array of arguments sent when the event was fired.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">configKeyListener</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">p_sType</span><span class="p">,</span> <span class="nx">p_aArgs</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">oKeyData</span> <span class="o">=</span> <span class="nx">p_aArgs</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span>
|
|
<span class="nx">oMenuItem</span> <span class="o">=</span> <span class="k">this</span><span class="p">,</span>
|
|
<span class="nx">oMenu</span> <span class="o">=</span> <span class="nx">oMenuItem</span><span class="p">.</span><span class="nx">parent</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oMenuItem</span><span class="p">.</span><span class="nx">_keyData</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="c1">// Unsubscribe from the "show" event in case the keylistener </span>
|
|
<span class="c1">// config was changed before the Menu was ever made visible.</span>
|
|
|
|
<span class="nx">oMenu</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="nx">_SHOW</span><span class="p">,</span>
|
|
<span class="nx">oMenuItem</span><span class="p">.</span><span class="nx">_createKeyListener</span><span class="p">,</span> <span class="nx">oMenuItem</span><span class="p">.</span><span class="nx">_keyData</span><span class="p">);</span>
|
|
|
|
<span class="nx">oMenuItem</span><span class="p">.</span><span class="nx">_keyData</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="c1">// Tear down for the previous value of the "keylistener" property</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oMenuItem</span><span class="p">.</span><span class="nx">_keyListener</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oMenu</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="nx">_SHOW</span><span class="p">,</span> <span class="nx">oMenuItem</span><span class="p">.</span><span class="nx">_keyListener</span><span class="p">.</span><span class="nx">enable</span><span class="p">);</span>
|
|
<span class="nx">oMenu</span><span class="p">.</span><span class="nx">unsubscribe</span><span class="p">(</span><span class="nx">_HIDE</span><span class="p">,</span> <span class="nx">oMenuItem</span><span class="p">.</span><span class="nx">_keyListener</span><span class="p">.</span><span class="nx">disable</span><span class="p">);</span>
|
|
|
|
<span class="nx">oMenuItem</span><span class="p">.</span><span class="nx">_keyListener</span><span class="p">.</span><span class="nx">disable</span><span class="p">();</span>
|
|
<span class="nx">oMenuItem</span><span class="p">.</span><span class="nx">_keyListener</span> <span class="o">=</span> <span class="kc">null</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oKeyData</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oMenuItem</span><span class="p">.</span><span class="nx">_keyData</span> <span class="o">=</span> <span class="nx">oKeyData</span><span class="p">;</span>
|
|
|
|
<span class="c1">// Defer the creation of the KeyListener instance until the </span>
|
|
<span class="c1">// parent Menu is visible. This is necessary since the </span>
|
|
<span class="c1">// KeyListener instance needs to be bound to the document the </span>
|
|
<span class="c1">// Menu has been rendered into. Deferring creation of the </span>
|
|
<span class="c1">// KeyListener instance also improves performance.</span>
|
|
|
|
<span class="nx">oMenu</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="nx">_SHOW</span><span class="p">,</span> <span class="nx">oMenuItem</span><span class="p">.</span><span class="nx">_createKeyListener</span><span class="p">,</span>
|
|
<span class="nx">oKeyData</span><span class="p">,</span> <span class="nx">oMenuItem</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="c1">// Public methods</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method initDefaultConfig</span>
|
|
<span class="cm"> * @description Initializes an item's configurable properties.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">initDefaultConfig</span> <span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">oConfig</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">;</span>
|
|
|
|
|
|
<span class="c1">// Define the configuration attributes</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @config text</span>
|
|
<span class="cm"> * @description String or markup specifying the text label for the menu item. </span>
|
|
<span class="cm"> * When building a menu from existing HTML the value of this property</span>
|
|
<span class="cm"> * will be interpreted from the menu's markup. The text is inserted into the DOM as HTML, and should be escaped by the implementor if coming from an external source.</span>
|
|
<span class="cm"> * @default ""</span>
|
|
<span class="cm"> * @type HTML</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">addProperty</span><span class="p">(</span>
|
|
<span class="nx">TEXT_CONFIG</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span>
|
|
<span class="p">{</span>
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">configText</span><span class="p">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="nx">TEXT_CONFIG</span><span class="p">.</span><span class="nx">value</span><span class="p">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">TEXT_CONFIG</span><span class="p">.</span><span class="nx">validator</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="nx">TEXT_CONFIG</span><span class="p">.</span><span class="nx">suppressEvent</span>
|
|
<span class="p">}</span>
|
|
<span class="p">);</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @config helptext</span>
|
|
<span class="cm"> * @description String or markup specifying additional instructional text to </span>
|
|
<span class="cm"> * accompany the text for the menu item. The helptext is inserted into the DOM as HTML, and should be escaped by the implementor if coming from an external source.</span>
|
|
<span class="cm"> * @deprecated Use "text" configuration property to add help text markup. </span>
|
|
<span class="cm"> * For example: <code>oMenuItem.cfg.setProperty("text", "Copy &#60;em </span>
|
|
<span class="cm"> * class=\"helptext\"&#62;Ctrl + C&#60;/em&#62;");</code></span>
|
|
<span class="cm"> * @default null</span>
|
|
<span class="cm"> * @type HTML|<a href="http://www.w3.org/TR/</span>
|
|
<span class="cm"> * 2000/WD-DOM-Level-1-20000929/level-one-html.html#ID-58190037"></span>
|
|
<span class="cm"> * HTMLElement</a></span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">addProperty</span><span class="p">(</span>
|
|
<span class="nx">HELP_TEXT_CONFIG</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span>
|
|
<span class="p">{</span>
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">configHelpText</span><span class="p">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="nx">HELP_TEXT_CONFIG</span><span class="p">.</span><span class="nx">supercedes</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="nx">HELP_TEXT_CONFIG</span><span class="p">.</span><span class="nx">suppressEvent</span>
|
|
<span class="p">}</span>
|
|
<span class="p">);</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @config url</span>
|
|
<span class="cm"> * @description String specifying the URL for the menu item's anchor's </span>
|
|
<span class="cm"> * "href" attribute. When building a menu from existing HTML the value </span>
|
|
<span class="cm"> * of this property will be interpreted from the menu's markup. Markup for the menu item content. The url is inserted into the DOM as an attribute value, and should be escaped by the implementor if coming from an external source.</span>
|
|
<span class="cm"> * @default "#"</span>
|
|
<span class="cm"> * @type String</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">addProperty</span><span class="p">(</span>
|
|
<span class="nx">URL_CONFIG</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span>
|
|
<span class="p">{</span>
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">configURL</span><span class="p">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="nx">URL_CONFIG</span><span class="p">.</span><span class="nx">value</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="nx">URL_CONFIG</span><span class="p">.</span><span class="nx">suppressEvent</span>
|
|
<span class="p">}</span>
|
|
<span class="p">);</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @config target</span>
|
|
<span class="cm"> * @description String specifying the value for the "target" attribute </span>
|
|
<span class="cm"> * of the menu item's anchor element. <strong>Specifying a target will </span>
|
|
<span class="cm"> * require the user to click directly on the menu item's anchor node in</span>
|
|
<span class="cm"> * order to cause the browser to navigate to the specified URL.</strong> </span>
|
|
<span class="cm"> * When building a menu from existing HTML the value of this property </span>
|
|
<span class="cm"> * will be interpreted from the menu's markup. The target is inserted into the DOM as an attribute value, and should be escaped by the implementor if coming from an external source.</span>
|
|
<span class="cm"> * @default null</span>
|
|
<span class="cm"> * @type String</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">addProperty</span><span class="p">(</span>
|
|
<span class="nx">TARGET_CONFIG</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span>
|
|
<span class="p">{</span>
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">configTarget</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="nx">TARGET_CONFIG</span><span class="p">.</span><span class="nx">suppressEvent</span>
|
|
<span class="p">}</span>
|
|
<span class="p">);</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @config emphasis</span>
|
|
<span class="cm"> * @description Boolean indicating if the text of the menu item will be </span>
|
|
<span class="cm"> * rendered with emphasis.</span>
|
|
<span class="cm"> * @deprecated Use the "text" configuration property to add emphasis. </span>
|
|
<span class="cm"> * For example: <code>oMenuItem.cfg.setProperty("text", "&#60;em&#62;Some </span>
|
|
<span class="cm"> * Text&#60;/em&#62;");</code></span>
|
|
<span class="cm"> * @default false</span>
|
|
<span class="cm"> * @type Boolean</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">addProperty</span><span class="p">(</span>
|
|
<span class="nx">EMPHASIS_CONFIG</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span>
|
|
<span class="p">{</span>
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">configEmphasis</span><span class="p">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="nx">EMPHASIS_CONFIG</span><span class="p">.</span><span class="nx">value</span><span class="p">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">EMPHASIS_CONFIG</span><span class="p">.</span><span class="nx">validator</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="nx">EMPHASIS_CONFIG</span><span class="p">.</span><span class="nx">suppressEvent</span><span class="p">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="nx">EMPHASIS_CONFIG</span><span class="p">.</span><span class="nx">supercedes</span>
|
|
<span class="p">}</span>
|
|
<span class="p">);</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @config strongemphasis</span>
|
|
<span class="cm"> * @description Boolean indicating if the text of the menu item will be </span>
|
|
<span class="cm"> * rendered with strong emphasis.</span>
|
|
<span class="cm"> * @deprecated Use the "text" configuration property to add strong emphasis. </span>
|
|
<span class="cm"> * For example: <code>oMenuItem.cfg.setProperty("text", "&#60;strong&#62; </span>
|
|
<span class="cm"> * Some Text&#60;/strong&#62;");</code></span>
|
|
<span class="cm"> * @default false</span>
|
|
<span class="cm"> * @type Boolean</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">addProperty</span><span class="p">(</span>
|
|
<span class="nx">STRONG_EMPHASIS_CONFIG</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span>
|
|
<span class="p">{</span>
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">configStrongEmphasis</span><span class="p">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="nx">STRONG_EMPHASIS_CONFIG</span><span class="p">.</span><span class="nx">value</span><span class="p">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">STRONG_EMPHASIS_CONFIG</span><span class="p">.</span><span class="nx">validator</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="nx">STRONG_EMPHASIS_CONFIG</span><span class="p">.</span><span class="nx">suppressEvent</span><span class="p">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="nx">STRONG_EMPHASIS_CONFIG</span><span class="p">.</span><span class="nx">supercedes</span>
|
|
<span class="p">}</span>
|
|
<span class="p">);</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @config checked</span>
|
|
<span class="cm"> * @description Boolean indicating if the menu item should be rendered </span>
|
|
<span class="cm"> * with a checkmark.</span>
|
|
<span class="cm"> * @default false</span>
|
|
<span class="cm"> * @type Boolean</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">addProperty</span><span class="p">(</span>
|
|
<span class="nx">CHECKED_CONFIG</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span>
|
|
<span class="p">{</span>
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">configChecked</span><span class="p">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="nx">CHECKED_CONFIG</span><span class="p">.</span><span class="nx">value</span><span class="p">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">CHECKED_CONFIG</span><span class="p">.</span><span class="nx">validator</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="nx">CHECKED_CONFIG</span><span class="p">.</span><span class="nx">suppressEvent</span><span class="p">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="nx">CHECKED_CONFIG</span><span class="p">.</span><span class="nx">supercedes</span>
|
|
<span class="p">}</span>
|
|
<span class="p">);</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @config disabled</span>
|
|
<span class="cm"> * @description Boolean indicating if the menu item should be disabled. </span>
|
|
<span class="cm"> * (Disabled menu items are dimmed and will not respond to user input </span>
|
|
<span class="cm"> * or fire events.)</span>
|
|
<span class="cm"> * @default false</span>
|
|
<span class="cm"> * @type Boolean</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">addProperty</span><span class="p">(</span>
|
|
<span class="nx">DISABLED_CONFIG</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span>
|
|
<span class="p">{</span>
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">configDisabled</span><span class="p">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="nx">DISABLED_CONFIG</span><span class="p">.</span><span class="nx">value</span><span class="p">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">DISABLED_CONFIG</span><span class="p">.</span><span class="nx">validator</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="nx">DISABLED_CONFIG</span><span class="p">.</span><span class="nx">suppressEvent</span>
|
|
<span class="p">}</span>
|
|
<span class="p">);</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @config selected</span>
|
|
<span class="cm"> * @description Boolean indicating if the menu item should </span>
|
|
<span class="cm"> * be highlighted.</span>
|
|
<span class="cm"> * @default false</span>
|
|
<span class="cm"> * @type Boolean</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">addProperty</span><span class="p">(</span>
|
|
<span class="nx">SELECTED_CONFIG</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span>
|
|
<span class="p">{</span>
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">configSelected</span><span class="p">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="nx">SELECTED_CONFIG</span><span class="p">.</span><span class="nx">value</span><span class="p">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">SELECTED_CONFIG</span><span class="p">.</span><span class="nx">validator</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="nx">SELECTED_CONFIG</span><span class="p">.</span><span class="nx">suppressEvent</span>
|
|
<span class="p">}</span>
|
|
<span class="p">);</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @config submenu</span>
|
|
<span class="cm"> * @description Object specifying the submenu to be appended to the </span>
|
|
<span class="cm"> * menu item. The value can be one of the following: <ul><li>Object </span>
|
|
<span class="cm"> * specifying a Menu instance.</li><li>Object literal specifying the</span>
|
|
<span class="cm"> * menu to be created. Format: <code>{ id: [menu id], itemdata: </span>
|
|
<span class="cm"> * [<a href="YAHOO.widget.Menu.html#itemData">array of values for </span>
|
|
<span class="cm"> * items</a>] }</code>.</li><li>String specifying the id attribute </span>
|
|
<span class="cm"> * of the <code>&#60;div&#62;</code> element of the menu.</li><li></span>
|
|
<span class="cm"> * Object specifying the <code>&#60;div&#62;</code> element of the </span>
|
|
<span class="cm"> * menu.</li></ul></span>
|
|
<span class="cm"> * @default null</span>
|
|
<span class="cm"> * @type Menu|String|Object|<a href="http://www.w3.org/TR/2000/</span>
|
|
<span class="cm"> * WD-DOM-Level-1-20000929/level-one-html.html#ID-58190037"></span>
|
|
<span class="cm"> * HTMLElement</a></span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">addProperty</span><span class="p">(</span>
|
|
<span class="nx">SUBMENU_CONFIG</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span>
|
|
<span class="p">{</span>
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">configSubmenu</span><span class="p">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="nx">SUBMENU_CONFIG</span><span class="p">.</span><span class="nx">supercedes</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="nx">SUBMENU_CONFIG</span><span class="p">.</span><span class="nx">suppressEvent</span>
|
|
<span class="p">}</span>
|
|
<span class="p">);</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @config onclick</span>
|
|
<span class="cm"> * @description Object literal representing the code to be executed when </span>
|
|
<span class="cm"> * the item is clicked. Format:<br> <code> {<br> </span>
|
|
<span class="cm"> * <strong>fn:</strong> Function, &#47;&#47; The handler to call when </span>
|
|
<span class="cm"> * the event fires.<br> <strong>obj:</strong> Object, &#47;&#47; An </span>
|
|
<span class="cm"> * object to pass back to the handler.<br> <strong>scope:</strong> </span>
|
|
<span class="cm"> * Object &#47;&#47; The object to use for the scope of the handler.</span>
|
|
<span class="cm"> * <br> } </code></span>
|
|
<span class="cm"> * @type Object</span>
|
|
<span class="cm"> * @default null</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">addProperty</span><span class="p">(</span>
|
|
<span class="nx">ONCLICK_CONFIG</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span>
|
|
<span class="p">{</span>
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">configOnClick</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="nx">ONCLICK_CONFIG</span><span class="p">.</span><span class="nx">suppressEvent</span>
|
|
<span class="p">}</span>
|
|
<span class="p">);</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @config classname</span>
|
|
<span class="cm"> * @description CSS class to be applied to the menu item's root </span>
|
|
<span class="cm"> * <code>&#60;li&#62;</code> element. The specified class(es) are </span>
|
|
<span class="cm"> * appended in addition to the default class as specified by the menu </span>
|
|
<span class="cm"> * item's CSS_CLASS_NAME constant.</span>
|
|
<span class="cm"> * @default null</span>
|
|
<span class="cm"> * @type String</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">addProperty</span><span class="p">(</span>
|
|
<span class="nx">CLASS_NAME_CONFIG</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span>
|
|
<span class="p">{</span>
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">configClassName</span><span class="p">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="nx">CLASS_NAME_CONFIG</span><span class="p">.</span><span class="nx">value</span><span class="p">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">CLASS_NAME_CONFIG</span><span class="p">.</span><span class="nx">validator</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="nx">CLASS_NAME_CONFIG</span><span class="p">.</span><span class="nx">suppressEvent</span>
|
|
<span class="p">}</span>
|
|
<span class="p">);</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @config keylistener</span>
|
|
<span class="cm"> * @description Object literal representing the key(s) that can be used </span>
|
|
<span class="cm"> * to trigger the MenuItem's "click" event. Possible attributes are </span>
|
|
<span class="cm"> * shift (boolean), alt (boolean), ctrl (boolean) and keys (either an int </span>
|
|
<span class="cm"> * or an array of ints representing keycodes).</span>
|
|
<span class="cm"> * @default null</span>
|
|
<span class="cm"> * @type Object</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">oConfig</span><span class="p">.</span><span class="nx">addProperty</span><span class="p">(</span>
|
|
<span class="nx">KEY_LISTENER_CONFIG</span><span class="p">.</span><span class="nx">key</span><span class="p">,</span>
|
|
<span class="p">{</span>
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">configKeyListener</span><span class="p">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="nx">KEY_LISTENER_CONFIG</span><span class="p">.</span><span class="nx">value</span><span class="p">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="nx">KEY_LISTENER_CONFIG</span><span class="p">.</span><span class="nx">suppressEvent</span>
|
|
<span class="p">}</span>
|
|
<span class="p">);</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method getNextSibling</span>
|
|
<span class="cm"> * @description Finds the menu item's next sibling.</span>
|
|
<span class="cm"> * @return YAHOO.widget.MenuItem</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">getNextSibling</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">isUL</span> <span class="o">=</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">el</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="p">(</span><span class="nx">el</span><span class="p">.</span><span class="nx">nodeName</span><span class="p">.</span><span class="nx">toLowerCase</span><span class="p">()</span> <span class="o">===</span> <span class="s2">"ul"</span><span class="p">);</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">menuitemEl</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">,</span>
|
|
<span class="nx">next</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">getNextSibling</span><span class="p">(</span><span class="nx">menuitemEl</span><span class="p">),</span>
|
|
<span class="nx">parent</span><span class="p">,</span>
|
|
<span class="nx">sibling</span><span class="p">,</span>
|
|
<span class="nx">list</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">next</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">parent</span> <span class="o">=</span> <span class="nx">menuitemEl</span><span class="p">.</span><span class="nx">parentNode</span><span class="p">;</span>
|
|
<span class="nx">sibling</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">getNextSiblingBy</span><span class="p">(</span><span class="nx">parent</span><span class="p">,</span> <span class="nx">isUL</span><span class="p">);</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">sibling</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">list</span> <span class="o">=</span> <span class="nx">sibling</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="k">else</span> <span class="p">{</span>
|
|
<span class="nx">list</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">getFirstChildBy</span><span class="p">(</span><span class="nx">parent</span><span class="p">.</span><span class="nx">parentNode</span><span class="p">,</span> <span class="nx">isUL</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="nx">next</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">getFirstChild</span><span class="p">(</span><span class="nx">list</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">widget</span><span class="p">.</span><span class="nx">MenuManager</span><span class="p">.</span><span class="nx">getMenuItem</span><span class="p">(</span><span class="nx">next</span><span class="p">.</span><span class="nx">id</span><span class="p">);</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method getNextEnabledSibling</span>
|
|
<span class="cm"> * @description Finds the menu item's next enabled sibling.</span>
|
|
<span class="cm"> * @return YAHOO.widget.MenuItem</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">getNextEnabledSibling</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">next</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">getNextSibling</span><span class="p">();</span>
|
|
|
|
<span class="k">return</span> <span class="p">(</span><span class="nx">next</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_DISABLED</span><span class="p">)</span> <span class="o">||</span> <span class="nx">next</span><span class="p">.</span><span class="nx">element</span><span class="p">.</span><span class="nx">style</span><span class="p">.</span><span class="nx">display</span> <span class="o">==</span> <span class="nx">_NONE</span><span class="p">)</span> <span class="o">?</span> <span class="nx">next</span><span class="p">.</span><span class="nx">getNextEnabledSibling</span><span class="p">()</span> <span class="o">:</span> <span class="nx">next</span><span class="p">;</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method getPreviousSibling</span>
|
|
<span class="cm"> * @description Finds the menu item's previous sibling.</span>
|
|
<span class="cm"> * @return {YAHOO.widget.MenuItem}</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">getPreviousSibling</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">isUL</span> <span class="o">=</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">el</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="k">return</span> <span class="p">(</span><span class="nx">el</span><span class="p">.</span><span class="nx">nodeName</span><span class="p">.</span><span class="nx">toLowerCase</span><span class="p">()</span> <span class="o">===</span> <span class="s2">"ul"</span><span class="p">);</span>
|
|
<span class="p">},</span>
|
|
|
|
<span class="nx">menuitemEl</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">,</span>
|
|
<span class="nx">next</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">getPreviousSibling</span><span class="p">(</span><span class="nx">menuitemEl</span><span class="p">),</span>
|
|
<span class="nx">parent</span><span class="p">,</span>
|
|
<span class="nx">sibling</span><span class="p">,</span>
|
|
<span class="nx">list</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">next</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">parent</span> <span class="o">=</span> <span class="nx">menuitemEl</span><span class="p">.</span><span class="nx">parentNode</span><span class="p">;</span>
|
|
<span class="nx">sibling</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">getPreviousSiblingBy</span><span class="p">(</span><span class="nx">parent</span><span class="p">,</span> <span class="nx">isUL</span><span class="p">);</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">sibling</span><span class="p">)</span> <span class="p">{</span>
|
|
<span class="nx">list</span> <span class="o">=</span> <span class="nx">sibling</span><span class="p">;</span>
|
|
<span class="p">}</span>
|
|
<span class="k">else</span> <span class="p">{</span>
|
|
<span class="nx">list</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">getLastChildBy</span><span class="p">(</span><span class="nx">parent</span><span class="p">.</span><span class="nx">parentNode</span><span class="p">,</span> <span class="nx">isUL</span><span class="p">);</span>
|
|
<span class="p">}</span>
|
|
|
|
<span class="nx">next</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">getLastChild</span><span class="p">(</span><span class="nx">list</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">widget</span><span class="p">.</span><span class="nx">MenuManager</span><span class="p">.</span><span class="nx">getMenuItem</span><span class="p">(</span><span class="nx">next</span><span class="p">.</span><span class="nx">id</span><span class="p">);</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method getPreviousEnabledSibling</span>
|
|
<span class="cm"> * @description Finds the menu item's previous enabled sibling.</span>
|
|
<span class="cm"> * @return {YAHOO.widget.MenuItem}</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">getPreviousEnabledSibling</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">next</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">getPreviousSibling</span><span class="p">();</span>
|
|
|
|
<span class="k">return</span> <span class="p">(</span><span class="nx">next</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_DISABLED</span><span class="p">)</span> <span class="o">||</span> <span class="nx">next</span><span class="p">.</span><span class="nx">element</span><span class="p">.</span><span class="nx">style</span><span class="p">.</span><span class="nx">display</span> <span class="o">==</span> <span class="nx">_NONE</span><span class="p">)</span> <span class="o">?</span> <span class="nx">next</span><span class="p">.</span><span class="nx">getPreviousEnabledSibling</span><span class="p">()</span> <span class="o">:</span> <span class="nx">next</span><span class="p">;</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method focus</span>
|
|
<span class="cm"> * @description Causes the menu item to receive the focus and fires the </span>
|
|
<span class="cm"> * focus event.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">focus</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">oParent</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">parent</span><span class="p">,</span>
|
|
<span class="nx">oAnchor</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">_oAnchor</span><span class="p">,</span>
|
|
<span class="nx">oActiveItem</span> <span class="o">=</span> <span class="nx">oParent</span><span class="p">.</span><span class="nx">activeItem</span><span class="p">;</span>
|
|
|
|
|
|
<span class="kd">function</span> <span class="nx">setFocus</span><span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="k">try</span> <span class="p">{</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="p">(</span><span class="nx">UA</span><span class="p">.</span><span class="nx">ie</span> <span class="o">&&</span> <span class="o">!</span><span class="nb">document</span><span class="p">.</span><span class="nx">hasFocus</span><span class="p">()))</span> <span class="p">{</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oActiveItem</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oActiveItem</span><span class="p">.</span><span class="nx">blurEvent</span><span class="p">.</span><span class="nx">fire</span><span class="p">();</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="nx">oAnchor</span><span class="p">.</span><span class="nx">focus</span><span class="p">();</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">focusEvent</span><span class="p">.</span><span class="nx">fire</span><span class="p">();</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
<span class="k">catch</span><span class="p">(</span><span class="nx">e</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_DISABLED</span><span class="p">)</span> <span class="o">&&</span> <span class="nx">oParent</span> <span class="o">&&</span> <span class="nx">oParent</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_VISIBLE</span><span class="p">)</span> <span class="o">&&</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">.</span><span class="nx">style</span><span class="p">.</span><span class="nx">display</span> <span class="o">!=</span> <span class="nx">_NONE</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
|
|
<span class="cm">/*</span>
|
|
<span class="cm"> Setting focus via a timer fixes a race condition in Firefox, IE </span>
|
|
<span class="cm"> and Opera where the browser viewport jumps as it trys to </span>
|
|
<span class="cm"> position and focus the menu.</span>
|
|
<span class="cm"> */</span>
|
|
|
|
<span class="nx">Lang</span><span class="p">.</span><span class="nx">later</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="k">this</span><span class="p">,</span> <span class="nx">setFocus</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method blur</span>
|
|
<span class="cm"> * @description Causes the menu item to lose focus and fires the </span>
|
|
<span class="cm"> * blur event.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">blur</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">oParent</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">parent</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_DISABLED</span><span class="p">)</span> <span class="o">&&</span> <span class="nx">oParent</span> <span class="o">&&</span> <span class="nx">oParent</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_VISIBLE</span><span class="p">))</span> <span class="p">{</span>
|
|
|
|
<span class="nx">Lang</span><span class="p">.</span><span class="nx">later</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="k">this</span><span class="p">,</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="k">try</span> <span class="p">{</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">_oAnchor</span><span class="p">.</span><span class="nx">blur</span><span class="p">();</span>
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">blurEvent</span><span class="p">.</span><span class="nx">fire</span><span class="p">();</span>
|
|
|
|
<span class="p">}</span>
|
|
<span class="k">catch</span> <span class="p">(</span><span class="nx">e</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">},</span> <span class="mi">0</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method hasFocus</span>
|
|
<span class="cm"> * @description Returns a boolean indicating whether or not the menu item</span>
|
|
<span class="cm"> * has focus.</span>
|
|
<span class="cm"> * @return {Boolean}</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">hasFocus</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="k">return</span> <span class="p">(</span><span class="nx">YAHOO</span><span class="p">.</span><span class="nx">widget</span><span class="p">.</span><span class="nx">MenuManager</span><span class="p">.</span><span class="nx">getFocusedMenuItem</span><span class="p">()</span> <span class="o">==</span> <span class="k">this</span><span class="p">);</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method destroy</span>
|
|
<span class="cm"> * @description Removes the menu item's <code>&#60;li&#62;</code> element </span>
|
|
<span class="cm"> * from its parent <code>&#60;ul&#62;</code> element.</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">destroy</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">oEl</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">element</span><span class="p">,</span>
|
|
<span class="nx">oSubmenu</span><span class="p">,</span>
|
|
<span class="nx">oParentNode</span><span class="p">,</span>
|
|
<span class="nx">aEventData</span><span class="p">,</span>
|
|
<span class="nx">i</span><span class="p">;</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oEl</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
|
|
<span class="c1">// If the item has a submenu, destroy it first</span>
|
|
|
|
<span class="nx">oSubmenu</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">getProperty</span><span class="p">(</span><span class="nx">_SUBMENU</span><span class="p">);</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oSubmenu</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oSubmenu</span><span class="p">.</span><span class="nx">destroy</span><span class="p">();</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="c1">// Remove the element from the parent node</span>
|
|
|
|
<span class="nx">oParentNode</span> <span class="o">=</span> <span class="nx">oEl</span><span class="p">.</span><span class="nx">parentNode</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">oParentNode</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">oParentNode</span><span class="p">.</span><span class="nx">removeChild</span><span class="p">(</span><span class="nx">oEl</span><span class="p">);</span>
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">destroyEvent</span><span class="p">.</span><span class="nx">fire</span><span class="p">();</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
|
|
<span class="c1">// Remove CustomEvent listeners</span>
|
|
|
|
<span class="nx">i</span> <span class="o">=</span> <span class="nx">EVENT_TYPES</span><span class="p">.</span><span class="nx">length</span> <span class="o">-</span> <span class="mi">1</span><span class="p">;</span>
|
|
|
|
<span class="k">do</span> <span class="p">{</span>
|
|
|
|
<span class="nx">aEventData</span> <span class="o">=</span> <span class="nx">EVENT_TYPES</span><span class="p">[</span><span class="nx">i</span><span class="p">];</span>
|
|
|
|
<span class="k">this</span><span class="p">[</span><span class="nx">aEventData</span><span class="p">[</span><span class="mi">0</span><span class="p">]].</span><span class="nx">unsubscribeAll</span><span class="p">();</span>
|
|
|
|
<span class="p">}</span>
|
|
<span class="k">while</span> <span class="p">(</span><span class="nx">i</span><span class="o">--</span><span class="p">);</span>
|
|
|
|
|
|
<span class="k">this</span><span class="p">.</span><span class="nx">cfg</span><span class="p">.</span><span class="nx">configChangedEvent</span><span class="p">.</span><span class="nx">unsubscribeAll</span><span class="p">();</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">},</span>
|
|
|
|
|
|
<span class="cm">/**</span>
|
|
<span class="cm"> * @method toString</span>
|
|
<span class="cm"> * @description Returns a string representing the menu item.</span>
|
|
<span class="cm"> * @return {String}</span>
|
|
<span class="cm"> */</span>
|
|
<span class="nx">toString</span><span class="o">:</span> <span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
|
|
|
|
<span class="kd">var</span> <span class="nx">sReturnVal</span> <span class="o">=</span> <span class="nx">_MENUITEM</span><span class="p">,</span>
|
|
<span class="nx">sId</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">id</span><span class="p">;</span>
|
|
|
|
<span class="k">if</span> <span class="p">(</span><span class="nx">sId</span><span class="p">)</span> <span class="p">{</span>
|
|
|
|
<span class="nx">sReturnVal</span> <span class="o">+=</span> <span class="p">(</span><span class="nx">_SPACE</span> <span class="o">+</span> <span class="nx">sId</span><span class="p">);</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="k">return</span> <span class="nx">sReturnVal</span><span class="p">;</span>
|
|
|
|
<span class="p">}</span>
|
|
|
|
<span class="p">};</span>
|
|
|
|
<span class="nx">Lang</span><span class="p">.</span><span class="nx">augmentProto</span><span class="p">(</span><span class="nx">MenuItem</span><span class="p">,</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">EventProvider</span><span class="p">);</span>
|
|
|
|
<span class="p">})();</span>
|
|
</pre></div>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="yui-b">
|
|
<div class="nav">
|
|
|
|
<div id="moduleList" class="module">
|
|
<h4>Modules</h4>
|
|
<ul class="content">
|
|
<li class=""><a href="module_animation.html" title="animation">animation</a></li>
|
|
<li class=""><a href="module_autocomplete.html" title="autocomplete">autocomplete</a></li>
|
|
<li class=""><a href="module_button.html" title="button">button</a></li>
|
|
<li class=""><a href="module_calendar.html" title="calendar">calendar</a></li>
|
|
<li class=""><a href="module_carousel.html" title="carousel">carousel</a></li>
|
|
<li class=""><a href="module_charts.html" title="charts">charts</a></li>
|
|
<li class=""><a href="module_colorpicker.html" title="colorpicker">colorpicker</a></li>
|
|
<li class=""><a href="module_connection.html" title="connection">connection</a></li>
|
|
<li class=""><a href="module_container.html" title="container">container</a></li>
|
|
<li class=""><a href="module_cookie.html" title="cookie">cookie</a></li>
|
|
<li class=""><a href="module_datasource.html" title="datasource">datasource</a></li>
|
|
<li class=""><a href="module_datatable.html" title="datatable">datatable</a></li>
|
|
<li class=""><a href="module_datemath.html" title="datemath">datemath</a></li>
|
|
<li class=""><a href="module_dom.html" title="dom">dom</a></li>
|
|
<li class=""><a href="module_dragdrop.html" title="dragdrop">dragdrop</a></li>
|
|
<li class=""><a href="module_editor.html" title="editor">editor</a></li>
|
|
<li class=""><a href="module_element.html" title="element">element</a></li>
|
|
<li class=""><a href="module_element-delegate.html" title="element-delegate">element-delegate</a></li>
|
|
<li class=""><a href="module_event.html" title="event">event</a></li>
|
|
<li class=""><a href="module_event-delegate.html" title="event-delegate">event-delegate</a></li>
|
|
<li class=""><a href="module_event-mouseenter.html" title="event-mouseenter">event-mouseenter</a></li>
|
|
<li class=""><a href="module_event-simulate.html" title="event-simulate">event-simulate</a></li>
|
|
<li class=""><a href="module_get.html" title="get">get</a></li>
|
|
<li class=""><a href="module_history.html" title="history">history</a></li>
|
|
<li class=""><a href="module_imagecropper.html" title="imagecropper">imagecropper</a></li>
|
|
<li class=""><a href="module_imageloader.html" title="imageloader">imageloader</a></li>
|
|
<li class=""><a href="module_json.html" title="json">json</a></li>
|
|
<li class=""><a href="module_layout.html" title="layout">layout</a></li>
|
|
<li class=""><a href="module_logger.html" title="logger">logger</a></li>
|
|
<li class="selected"><a href="module_menu.html" title="menu">menu</a></li>
|
|
<li class=""><a href="module_paginator.html" title="paginator">paginator</a></li>
|
|
<li class=""><a href="module_profiler.html" title="profiler">profiler</a></li>
|
|
<li class=""><a href="module_profilerviewer.html" title="profilerviewer">profilerviewer</a></li>
|
|
<li class=""><a href="module_progressbar.html" title="progressbar">progressbar</a></li>
|
|
<li class=""><a href="module_resize.html" title="resize">resize</a></li>
|
|
<li class=""><a href="module_selector.html" title="selector">selector</a></li>
|
|
<li class=""><a href="module_slider.html" title="slider">slider</a></li>
|
|
<li class=""><a href="module_storage.html" title="Storage">Storage</a></li>
|
|
<li class=""><a href="module_stylesheet.html" title="stylesheet">stylesheet</a></li>
|
|
<li class=""><a href="module_swf.html" title="swf">swf</a></li>
|
|
<li class=""><a href="module_swfdetect.html" title="swfdetect">swfdetect</a></li>
|
|
<li class=""><a href="module_swfstore.html" title="swfstore">swfstore</a></li>
|
|
<li class=""><a href="module_tabview.html" title="tabview">tabview</a></li>
|
|
<li class=""><a href="module_treeview.html" title="treeview">treeview</a></li>
|
|
<li class=""><a href="module_uploader.html" title="uploader">uploader</a></li>
|
|
<li class=""><a href="module_yahoo.html" title="yahoo">yahoo</a></li>
|
|
<li class=""><a href="module_yuiloader.html" title="yuiloader">yuiloader</a></li>
|
|
<li class=""><a href="module_yuitest.html" title="yuitest">yuitest</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div id="classList" class="module">
|
|
<h4>Classes</h4>
|
|
<ul class="content">
|
|
<li class=""><a href="YAHOO.widget.ContextMenu.html" title="YAHOO.widget.ContextMenu">YAHOO.widget.ContextMenu</a></li>
|
|
<li class=""><a href="YAHOO.widget.ContextMenuItem.html" title="YAHOO.widget.ContextMenuItem">YAHOO.widget.ContextMenuItem</a></li>
|
|
<li class=""><a href="YAHOO.widget.Menu.html" title="YAHOO.widget.Menu">YAHOO.widget.Menu</a></li>
|
|
<li class=""><a href="YAHOO.widget.MenuBar.html" title="YAHOO.widget.MenuBar">YAHOO.widget.MenuBar</a></li>
|
|
<li class=""><a href="YAHOO.widget.MenuBarItem.html" title="YAHOO.widget.MenuBarItem">YAHOO.widget.MenuBarItem</a></li>
|
|
<li class=""><a href="YAHOO.widget.MenuItem.html" title="YAHOO.widget.MenuItem">YAHOO.widget.MenuItem</a></li>
|
|
<li class=""><a href="YAHOO.widget.MenuManager.html" title="YAHOO.widget.MenuManager">YAHOO.widget.MenuManager</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div id="fileList" class="module">
|
|
<h4>Files</h4>
|
|
<ul class="content">
|
|
<li class=""><a href="contextmenu.js.html" title="contextmenu.js">contextmenu.js</a></li>
|
|
<li class=""><a href="contextmenuitem.js.html" title="contextmenuitem.js">contextmenuitem.js</a></li>
|
|
<li class=""><a href="menu.js.html" title="menu.js">menu.js</a></li>
|
|
<li class=""><a href="menuariaplugin.js.html" title="menuariaplugin.js">menuariaplugin.js</a></li>
|
|
<li class=""><a href="menubar.js.html" title="menubar.js">menubar.js</a></li>
|
|
<li class=""><a href="menubaritem.js.html" title="menubaritem.js">menubaritem.js</a></li>
|
|
<li class="selected"><a href="menuitem.js.html" title="menuitem.js">menuitem.js</a></li>
|
|
<li class=""><a href="menumanager.js.html" title="menumanager.js">menumanager.js</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div id="ft">
|
|
<hr />
|
|
Copyright © 2011 Yahoo! Inc. All rights reserved.
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
|
|
var ALL_YUI_PROPS = [{"access": "", "host": "YAHOO.widget.Menu", "name": "activeItem", "url": "YAHOO.widget.Menu.html#property_activeItem", "type": "property"}, {"access": "private", "host": "YAHOO.widget.MenuItem", "name": "addClassNameForState", "url": "YAHOO.widget.MenuItem.html#method_addClassNameForState", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "addItem", "url": "YAHOO.widget.Menu.html#method_addItem", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "addItems", "url": "YAHOO.widget.Menu.html#method_addItems", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_addItemToGroup", "url": "YAHOO.widget.Menu.html#method__addItemToGroup", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuManager", "name": "addMenu", "url": "YAHOO.widget.MenuManager.html#method_addMenu", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_addShadowVisibleClass", "url": "YAHOO.widget.Menu.html#method__addShadowVisibleClass", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_aGroupTitleElements", "url": "YAHOO.widget.Menu.html#property__aGroupTitleElements", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_aItemGroups", "url": "YAHOO.widget.Menu.html#property__aItemGroups", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_aListElements", "url": "YAHOO.widget.Menu.html#property__aListElements", "type": "property"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "autosubmenudisplay", "url": "YAHOO.widget.Menu.html#config_autosubmenudisplay", "type": "config"}, {"access": "", "host": "YAHOO.widget.MenuBar", "name": "autosubmenudisplay", "url": "YAHOO.widget.MenuBar.html#config_autosubmenudisplay", "type": "config"}, {"access": "private", "host": "YAHOO.widget.ContextMenu", "name": "_bCancelled", "url": "YAHOO.widget.ContextMenu.html#property__bCancelled", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_bHandledMouseOutEvent", "url": "YAHOO.widget.Menu.html#property__bHandledMouseOutEvent", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_bHandledMouseOverEvent", "url": "YAHOO.widget.Menu.html#property__bHandledMouseOverEvent", "type": "property"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "blur", "url": "YAHOO.widget.Menu.html#method_blur", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "blur", "url": "YAHOO.widget.MenuItem.html#method_blur", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "blurEvent", "url": "YAHOO.widget.MenuItem.html#event_blurEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "browser", "url": "YAHOO.widget.MenuItem.html#property_browser", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_bStopMouseEventHandlers", "url": "YAHOO.widget.Menu.html#property__bStopMouseEventHandlers", "type": "property"}, {"access": "", "host": "YAHOO.widget.ContextMenu", "name": "cancel", "url": "YAHOO.widget.ContextMenu.html#method_cancel", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_cancelHideDelay", "url": "YAHOO.widget.Menu.html#method__cancelHideDelay", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_cancelShowDelay", "url": "YAHOO.widget.Menu.html#method__cancelShowDelay", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "checked", "url": "YAHOO.widget.MenuItem.html#config_checked", "type": "config"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "checkPosition", "url": "YAHOO.widget.Menu.html#method_checkPosition", "type": "method"}, {"access": "private", "host": "YAHOO.widget.MenuBar", "name": "checkPosition", "url": "YAHOO.widget.MenuBar.html#method_checkPosition", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "classname", "url": "YAHOO.widget.Menu.html#config_classname", "type": "config"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "classname", "url": "YAHOO.widget.MenuItem.html#config_classname", "type": "config"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "clearActiveItem", "url": "YAHOO.widget.Menu.html#method_clearActiveItem", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "clearContent", "url": "YAHOO.widget.Menu.html#method_clearContent", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_clearSetWidthFlag", "url": "YAHOO.widget.Menu.html#method__clearSetWidthFlag", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "clickEvent", "url": "YAHOO.widget.Menu.html#event_clickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "clickEvent", "url": "YAHOO.widget.MenuItem.html#event_clickEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "clicktohide", "url": "YAHOO.widget.Menu.html#config_clicktohide", "type": "config"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "configChecked", "url": "YAHOO.widget.MenuItem.html#method_configChecked", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "configClassName", "url": "YAHOO.widget.Menu.html#method_configClassName", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "configClassName", "url": "YAHOO.widget.MenuItem.html#method_configClassName", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "configContainer", "url": "YAHOO.widget.Menu.html#method_configContainer", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "configDisabled", "url": "YAHOO.widget.Menu.html#method_configDisabled", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "configDisabled", "url": "YAHOO.widget.MenuItem.html#method_configDisabled", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "configEmphasis", "url": "YAHOO.widget.MenuItem.html#method_configEmphasis", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "configHelpText", "url": "YAHOO.widget.MenuItem.html#method_configHelpText", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "configHideDelay", "url": "YAHOO.widget.Menu.html#method_configHideDelay", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "configIframe", "url": "YAHOO.widget.Menu.html#method_configIframe", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "configKeyListener", "url": "YAHOO.widget.MenuItem.html#method_configKeyListener", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "configMaxHeight", "url": "YAHOO.widget.Menu.html#method_configMaxHeight", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "configOnClick", "url": "YAHOO.widget.MenuItem.html#method_configOnClick", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "configPosition", "url": "YAHOO.widget.Menu.html#method_configPosition", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "configSelected", "url": "YAHOO.widget.MenuItem.html#method_configSelected", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "configShadow", "url": "YAHOO.widget.Menu.html#method_configShadow", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "configStrongEmphasis", "url": "YAHOO.widget.MenuItem.html#method_configStrongEmphasis", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "configSubmenu", "url": "YAHOO.widget.MenuItem.html#method_configSubmenu", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuBar", "name": "configSubmenuToggle", "url": "YAHOO.widget.MenuBar.html#method_configSubmenuToggle", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "configTarget", "url": "YAHOO.widget.MenuItem.html#method_configTarget", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "configText", "url": "YAHOO.widget.MenuItem.html#method_configText", "type": "method"}, {"access": "", "host": "YAHOO.widget.ContextMenu", "name": "configTrigger", "url": "YAHOO.widget.ContextMenu.html#method_configTrigger", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_configureSubmenu", "url": "YAHOO.widget.Menu.html#method__configureSubmenu", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "configURL", "url": "YAHOO.widget.MenuItem.html#method_configURL", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "configVisible", "url": "YAHOO.widget.Menu.html#method_configVisible", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "constraintoviewport", "url": "YAHOO.widget.Menu.html#config_constraintoviewport", "type": "config"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "constructor", "url": "YAHOO.widget.MenuItem.html#property_constructor", "type": "property"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "container", "url": "YAHOO.widget.Menu.html#config_container", "type": "config"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "context", "url": "YAHOO.widget.Menu.html#config_context", "type": "config"}, {"access": "", "host": "YAHOO.widget.ContextMenu", "name": "contextEventTarget", "url": "YAHOO.widget.ContextMenu.html#property_contextEventTarget", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_createItemGroup", "url": "YAHOO.widget.Menu.html#method__createItemGroup", "type": "method"}, {"access": "private", "host": "YAHOO.widget.MenuItem", "name": "_createKeyListener", "url": "YAHOO.widget.MenuItem.html#method__createKeyListener", "type": "method"}, {"access": "private", "host": "YAHOO.widget.MenuItem", "name": "_createRootNodeStructure", "url": "YAHOO.widget.MenuItem.html#method__createRootNodeStructure", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_createShadow", "url": "YAHOO.widget.Menu.html#method__createShadow", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "CSS_CLASS_NAME", "url": "YAHOO.widget.Menu.html#property_CSS_CLASS_NAME", "type": "property"}, {"access": "", "host": "YAHOO.widget.MenuBar", "name": "CSS_CLASS_NAME", "url": "YAHOO.widget.MenuBar.html#property_CSS_CLASS_NAME", "type": "property"}, {"access": "", "host": "YAHOO.widget.MenuBarItem", "name": "CSS_CLASS_NAME", "url": "YAHOO.widget.MenuBarItem.html#property_CSS_CLASS_NAME", "type": "property"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "CSS_CLASS_NAME", "url": "YAHOO.widget.MenuItem.html#property_CSS_CLASS_NAME", "type": "property"}, {"access": "", "host": "YAHOO.widget.MenuBarItem", "name": "CSS_LABEL_CLASS_NAME", "url": "YAHOO.widget.MenuBarItem.html#property_CSS_LABEL_CLASS_NAME", "type": "property"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "CSS_LABEL_CLASS_NAME", "url": "YAHOO.widget.MenuItem.html#property_CSS_LABEL_CLASS_NAME", "type": "property"}, {"access": "private", "host": "YAHOO.widget.ContextMenu", "name": "DEFAULT_CONFIG", "url": "YAHOO.widget.ContextMenu.html#property_DEFAULT_CONFIG", "type": "property"}, {"access": "", "host": "YAHOO.widget.ContextMenu", "name": "destroy", "url": "YAHOO.widget.ContextMenu.html#method_destroy", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "destroy", "url": "YAHOO.widget.Menu.html#method_destroy", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "destroy", "url": "YAHOO.widget.MenuItem.html#method_destroy", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "destroyEvent", "url": "YAHOO.widget.MenuItem.html#event_destroyEvent", "type": "event"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_didMouseLeave", "url": "YAHOO.widget.Menu.html#method__didMouseLeave", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "disabled", "url": "YAHOO.widget.Menu.html#config_disabled", "type": "config"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "disabled", "url": "YAHOO.widget.MenuItem.html#config_disabled", "type": "config"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_disableScrollFooter", "url": "YAHOO.widget.Menu.html#method__disableScrollFooter", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_disableScrollHeader", "url": "YAHOO.widget.Menu.html#method__disableScrollHeader", "type": "method"}, {"access": "private", "host": "YAHOO.widget.MenuItem", "name": "_dispatchClickEvent", "url": "YAHOO.widget.MenuItem.html#method__dispatchClickEvent", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.MenuItem", "name": "_dispatchDOMClick", "url": "YAHOO.widget.MenuItem.html#method__dispatchDOMClick", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "effect", "url": "YAHOO.widget.Menu.html#config_effect", "type": "config"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "element", "url": "YAHOO.widget.MenuItem.html#property_element", "type": "property"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "emphasis", "url": "YAHOO.widget.MenuItem.html#config_emphasis", "type": "config"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_enableScrollFooter", "url": "YAHOO.widget.Menu.html#method__enableScrollFooter", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_enableScrollHeader", "url": "YAHOO.widget.Menu.html#method__enableScrollHeader", "type": "method"}, {"access": "private", "host": "YAHOO.widget.ContextMenu", "name": "EVENT_TYPES", "url": "YAHOO.widget.ContextMenu.html#property_EVENT_TYPES", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_execHideDelay", "url": "YAHOO.widget.Menu.html#method__execHideDelay", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_execSubmenuHideDelay", "url": "YAHOO.widget.Menu.html#method__execSubmenuHideDelay", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "fixedcenter", "url": "YAHOO.widget.Menu.html#config_fixedcenter", "type": "config"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "focus", "url": "YAHOO.widget.Menu.html#method_focus", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "focus", "url": "YAHOO.widget.MenuItem.html#method_focus", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "focusEvent", "url": "YAHOO.widget.MenuItem.html#event_focusEvent", "type": "event"}, {"access": "private", "host": "YAHOO.widget.MenuItem", "name": "getClassNameForState", "url": "YAHOO.widget.MenuItem.html#method_getClassNameForState", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_getFirstEnabledItem", "url": "YAHOO.widget.Menu.html#method__getFirstEnabledItem", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuManager", "name": "getFocusedMenu", "url": "YAHOO.widget.MenuManager.html#method_getFocusedMenu", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuManager", "name": "getFocusedMenuItem", "url": "YAHOO.widget.MenuManager.html#method_getFocusedMenuItem", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "getItem", "url": "YAHOO.widget.Menu.html#method_getItem", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_getItemGroup", "url": "YAHOO.widget.Menu.html#method__getItemGroup", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "getItemGroups", "url": "YAHOO.widget.Menu.html#method_getItemGroups", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "getItems", "url": "YAHOO.widget.Menu.html#method_getItems", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuManager", "name": "getMenu", "url": "YAHOO.widget.MenuManager.html#method_getMenu", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuManager", "name": "getMenuItem", "url": "YAHOO.widget.MenuManager.html#method_getMenuItem", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuManager", "name": "getMenuItemGroup", "url": "YAHOO.widget.MenuManager.html#method_getMenuItemGroup", "type": "method"}, {"access": "private", "host": "YAHOO.widget.MenuManager", "name": "getMenuRootElement", "url": "YAHOO.widget.MenuManager.html#method_getMenuRootElement", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuManager", "name": "getMenus", "url": "YAHOO.widget.MenuManager.html#method_getMenus", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "getNextEnabledSibling", "url": "YAHOO.widget.MenuItem.html#method_getNextEnabledSibling", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "getNextSibling", "url": "YAHOO.widget.MenuItem.html#method_getNextSibling", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "getPreviousEnabledSibling", "url": "YAHOO.widget.MenuItem.html#method_getPreviousEnabledSibling", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "getPreviousSibling", "url": "YAHOO.widget.MenuItem.html#method_getPreviousSibling", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "getRoot", "url": "YAHOO.widget.Menu.html#method_getRoot", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "getSubmenus", "url": "YAHOO.widget.Menu.html#method_getSubmenus", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuManager", "name": "getVisible", "url": "YAHOO.widget.MenuManager.html#method_getVisible", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "groupIndex", "url": "YAHOO.widget.MenuItem.html#property_groupIndex", "type": "property"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "GROUP_TITLE_TAG_NAME", "url": "YAHOO.widget.Menu.html#property_GROUP_TITLE_TAG_NAME", "type": "property"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "hasFocus", "url": "YAHOO.widget.Menu.html#method_hasFocus", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "hasFocus", "url": "YAHOO.widget.MenuItem.html#method_hasFocus", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "helptext", "url": "YAHOO.widget.MenuItem.html#config_helptext", "type": "config"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "hidedelay", "url": "YAHOO.widget.Menu.html#config_hidedelay", "type": "config"}, {"access": "", "host": "YAHOO.widget.MenuManager", "name": "hideVisible", "url": "YAHOO.widget.MenuManager.html#method_hideVisible", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "id", "url": "YAHOO.widget.MenuItem.html#property_id", "type": "property"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "iframe", "url": "YAHOO.widget.Menu.html#config_iframe", "type": "config"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "index", "url": "YAHOO.widget.MenuItem.html#property_index", "type": "property"}, {"access": "", "host": "YAHOO.widget.ContextMenu", "name": "init", "url": "YAHOO.widget.ContextMenu.html#method_init", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "init", "url": "YAHOO.widget.Menu.html#method_init", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuBar", "name": "init", "url": "YAHOO.widget.MenuBar.html#method_init", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuBarItem", "name": "init", "url": "YAHOO.widget.MenuBarItem.html#method_init", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "init", "url": "YAHOO.widget.MenuItem.html#method_init", "type": "method"}, {"access": "", "host": "YAHOO.widget.ContextMenu", "name": "initDefaultConfig", "url": "YAHOO.widget.ContextMenu.html#method_initDefaultConfig", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "initDefaultConfig", "url": "YAHOO.widget.Menu.html#method_initDefaultConfig", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuBar", "name": "initDefaultConfig", "url": "YAHOO.widget.MenuBar.html#method_initDefaultConfig", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "initDefaultConfig", "url": "YAHOO.widget.MenuItem.html#method_initDefaultConfig", "type": "method"}, {"access": "", "host": "YAHOO.widget.ContextMenu", "name": "initEvents", "url": "YAHOO.widget.ContextMenu.html#method_initEvents", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "initEvents", "url": "YAHOO.widget.Menu.html#method_initEvents", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_initSubTree", "url": "YAHOO.widget.Menu.html#method__initSubTree", "type": "method"}, {"access": "private", "host": "YAHOO.widget.MenuItem", "name": "_initSubTree", "url": "YAHOO.widget.MenuItem.html#method__initSubTree", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "insertItem", "url": "YAHOO.widget.Menu.html#method_insertItem", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "itemAddedEvent", "url": "YAHOO.widget.Menu.html#event_itemAddedEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "itemData", "url": "YAHOO.widget.Menu.html#property_itemData", "type": "property"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "itemRemovedEvent", "url": "YAHOO.widget.Menu.html#event_itemRemovedEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "ITEM_TYPE", "url": "YAHOO.widget.Menu.html#property_ITEM_TYPE", "type": "property"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "keepopen", "url": "YAHOO.widget.Menu.html#config_keepopen", "type": "config"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "keyDownEvent", "url": "YAHOO.widget.Menu.html#event_keyDownEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "keyDownEvent", "url": "YAHOO.widget.MenuItem.html#event_keyDownEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "keylistener", "url": "YAHOO.widget.MenuItem.html#config_keylistener", "type": "config"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "keyPressEvent", "url": "YAHOO.widget.Menu.html#event_keyPressEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "keyPressEvent", "url": "YAHOO.widget.MenuItem.html#event_keyPressEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "keyUpEvent", "url": "YAHOO.widget.Menu.html#event_keyUpEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "keyUpEvent", "url": "YAHOO.widget.MenuItem.html#event_keyUpEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "lazyLoad", "url": "YAHOO.widget.Menu.html#property_lazyLoad", "type": "property"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "maxheight", "url": "YAHOO.widget.Menu.html#config_maxheight", "type": "config"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "minscrollheight", "url": "YAHOO.widget.Menu.html#config_minscrollheight", "type": "config"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "mouseDownEvent", "url": "YAHOO.widget.Menu.html#event_mouseDownEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "mouseDownEvent", "url": "YAHOO.widget.MenuItem.html#event_mouseDownEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "mouseOutEvent", "url": "YAHOO.widget.Menu.html#event_mouseOutEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "mouseOutEvent", "url": "YAHOO.widget.MenuItem.html#event_mouseOutEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "mouseOverEvent", "url": "YAHOO.widget.Menu.html#event_mouseOverEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "mouseOverEvent", "url": "YAHOO.widget.MenuItem.html#event_mouseOverEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "mouseUpEvent", "url": "YAHOO.widget.Menu.html#event_mouseUpEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "mouseUpEvent", "url": "YAHOO.widget.MenuItem.html#event_mouseUpEvent", "type": "event"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_nCurrentMouseX", "url": "YAHOO.widget.Menu.html#property__nCurrentMouseX", "type": "property"}, {"access": "private", "host": "YAHOO.widget.MenuItem", "name": "_oAnchor", "url": "YAHOO.widget.MenuItem.html#property__oAnchor", "type": "property"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "OFF_SCREEN_POSITION", "url": "YAHOO.widget.Menu.html#property_OFF_SCREEN_POSITION", "type": "property"}, {"access": "private", "host": "YAHOO.widget.MenuItem", "name": "_oHelpTextEM", "url": "YAHOO.widget.MenuItem.html#property__oHelpTextEM", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_onBeforeHide", "url": "YAHOO.widget.Menu.html#method__onBeforeHide", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_onBeforeRender", "url": "YAHOO.widget.Menu.html#method__onBeforeRender", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_onBeforeShow", "url": "YAHOO.widget.Menu.html#method__onBeforeShow", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_onBlur", "url": "YAHOO.widget.Menu.html#method__onBlur", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_onClick", "url": "YAHOO.widget.Menu.html#method__onClick", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.MenuBar", "name": "_onClick", "url": "YAHOO.widget.MenuBar.html#method__onClick", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "onclick", "url": "YAHOO.widget.MenuItem.html#config_onclick", "type": "config"}, {"access": "private", "host": "YAHOO.widget.MenuManager", "name": "onDOMEvent", "url": "YAHOO.widget.MenuManager.html#method_onDOMEvent", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_onHide", "url": "YAHOO.widget.Menu.html#method__onHide", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_onInit", "url": "YAHOO.widget.Menu.html#method__onInit", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_onItemAdded", "url": "YAHOO.widget.Menu.html#method__onItemAdded", "type": "method"}, {"access": "private", "host": "YAHOO.widget.MenuManager", "name": "onItemAdded", "url": "YAHOO.widget.MenuManager.html#method_onItemAdded", "type": "method"}, {"access": "private", "host": "YAHOO.widget.MenuManager", "name": "onItemDestroy", "url": "YAHOO.widget.MenuManager.html#method_onItemDestroy", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_onKeyDown", "url": "YAHOO.widget.Menu.html#method__onKeyDown", "type": "method"}, {"access": "private", "host": "YAHOO.widget.MenuBar", "name": "_onKeyDown", "url": "YAHOO.widget.MenuBar.html#method__onKeyDown", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_onKeyPress", "url": "YAHOO.widget.Menu.html#method__onKeyPress", "type": "method"}, {"access": "private", "host": "YAHOO.widget.MenuManager", "name": "onMenuBlur", "url": "YAHOO.widget.MenuManager.html#method_onMenuBlur", "type": "method"}, {"access": "private", "host": "YAHOO.widget.MenuManager", "name": "onMenuDestroy", "url": "YAHOO.widget.MenuManager.html#method_onMenuDestroy", "type": "method"}, {"access": "private", "host": "YAHOO.widget.MenuManager", "name": "onMenuFocus", "url": "YAHOO.widget.MenuManager.html#method_onMenuFocus", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_onMenuItemConfigChange", "url": "YAHOO.widget.Menu.html#method__onMenuItemConfigChange", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_onMenuItemDestroy", "url": "YAHOO.widget.Menu.html#method__onMenuItemDestroy", "type": "method"}, {"access": "private", "host": "YAHOO.widget.MenuManager", "name": "onMenuVisibleConfigChange", "url": "YAHOO.widget.MenuManager.html#method_onMenuVisibleConfigChange", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_onMouseMove", "url": "YAHOO.widget.Menu.html#method__onMouseMove", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_onMouseOut", "url": "YAHOO.widget.Menu.html#method__onMouseOut", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_onMouseOver", "url": "YAHOO.widget.Menu.html#method__onMouseOver", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_onParentMenuConfigChange", "url": "YAHOO.widget.Menu.html#method__onParentMenuConfigChange", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_onParentMenuRender", "url": "YAHOO.widget.Menu.html#method__onParentMenuRender", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_onRender", "url": "YAHOO.widget.Menu.html#method__onRender", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_onScrollTargetMouseOut", "url": "YAHOO.widget.Menu.html#method__onScrollTargetMouseOut", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_onScrollTargetMouseOver", "url": "YAHOO.widget.Menu.html#method__onScrollTargetMouseOver", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_onShow", "url": "YAHOO.widget.Menu.html#method__onShow", "type": "method"}, {"access": "private", "host": "YAHOO.widget.MenuItem", "name": "_onSubmenuBeforeHide", "url": "YAHOO.widget.MenuItem.html#method__onSubmenuBeforeHide", "type": "method"}, {"access": "private", "host": "YAHOO.widget.ContextMenu", "name": "_onTriggerClick", "url": "YAHOO.widget.ContextMenu.html#method__onTriggerClick", "type": "method"}, {"access": "private", "host": "YAHOO.widget.ContextMenu", "name": "_onTriggerContextMenu", "url": "YAHOO.widget.ContextMenu.html#method__onTriggerContextMenu", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_onVisibleChange", "url": "YAHOO.widget.Menu.html#method__onVisibleChange", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_onYChange", "url": "YAHOO.widget.Menu.html#method__onYChange", "type": "method"}, {"access": "private", "host": "YAHOO.widget.MenuItem", "name": "_oOnclickAttributeValue", "url": "YAHOO.widget.MenuItem.html#property__oOnclickAttributeValue", "type": "property"}, {"access": "private", "host": "YAHOO.widget.MenuItem", "name": "_oSubmenu", "url": "YAHOO.widget.MenuItem.html#property__oSubmenu", "type": "property"}, {"access": "private", "host": "YAHOO.widget.ContextMenu", "name": "_oTrigger", "url": "YAHOO.widget.ContextMenu.html#property__oTrigger", "type": "property"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "parent", "url": "YAHOO.widget.Menu.html#property_parent", "type": "property"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "parent", "url": "YAHOO.widget.MenuItem.html#property_parent", "type": "property"}, {"access": "private", "host": "YAHOO.widget.ContextMenu", "name": "position", "url": "YAHOO.widget.ContextMenu.html#method_position", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "position", "url": "YAHOO.widget.Menu.html#config_position", "type": "config"}, {"access": "", "host": "YAHOO.widget.MenuBar", "name": "position", "url": "YAHOO.widget.MenuBar.html#config_position", "type": "config"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "positionOffScreen", "url": "YAHOO.widget.Menu.html#method_positionOffScreen", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "preventcontextoverlap", "url": "YAHOO.widget.Menu.html#config_preventcontextoverlap", "type": "config"}, {"access": "private", "host": "YAHOO.widget.MenuItem", "name": "removeClassNameForState", "url": "YAHOO.widget.MenuItem.html#method_removeClassNameForState", "type": "method"}, {"access": "private", "host": "YAHOO.widget.ContextMenu", "name": "_removeEventHandlers", "url": "YAHOO.widget.ContextMenu.html#method__removeEventHandlers", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "removeItem", "url": "YAHOO.widget.Menu.html#method_removeItem", "type": "method"}, {"access": "private", "host": "YAHOO.widget.MenuManager", "name": "removeItem", "url": "YAHOO.widget.MenuManager.html#method_removeItem", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_removeItemFromGroupByIndex", "url": "YAHOO.widget.Menu.html#method__removeItemFromGroupByIndex", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_removeItemFromGroupByValue", "url": "YAHOO.widget.Menu.html#method__removeItemFromGroupByValue", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuManager", "name": "removeMenu", "url": "YAHOO.widget.MenuManager.html#method_removeMenu", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_removeShadow", "url": "YAHOO.widget.Menu.html#method__removeShadow", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_removeShadowVisibleClass", "url": "YAHOO.widget.Menu.html#method__removeShadowVisibleClass", "type": "method"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_replaceShadow", "url": "YAHOO.widget.Menu.html#method__replaceShadow", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_sClassName", "url": "YAHOO.widget.Menu.html#property__sClassName", "type": "property"}, {"access": "private", "host": "YAHOO.widget.MenuItem", "name": "_sClassName", "url": "YAHOO.widget.MenuItem.html#property__sClassName", "type": "property"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "scrollincrement", "url": "YAHOO.widget.Menu.html#config_scrollincrement", "type": "config"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "selected", "url": "YAHOO.widget.MenuItem.html#config_selected", "type": "config"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "setInitialFocus", "url": "YAHOO.widget.Menu.html#method_setInitialFocus", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "setInitialSelection", "url": "YAHOO.widget.Menu.html#method_setInitialSelection", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "setItemGroupTitle", "url": "YAHOO.widget.Menu.html#method_setItemGroupTitle", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_setMaxHeight", "url": "YAHOO.widget.Menu.html#method__setMaxHeight", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_setScrollHeight", "url": "YAHOO.widget.Menu.html#method__setScrollHeight", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "shadow", "url": "YAHOO.widget.Menu.html#config_shadow", "type": "config"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_shadowBeforeShow", "url": "YAHOO.widget.Menu.html#method__shadowBeforeShow", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "showdelay", "url": "YAHOO.widget.Menu.html#config_showdelay", "type": "config"}, {"access": "protected", "host": "YAHOO.widget.Menu", "name": "_sizeShadow", "url": "YAHOO.widget.Menu.html#method__sizeShadow", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "srcElement", "url": "YAHOO.widget.Menu.html#property_srcElement", "type": "property"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "srcElement", "url": "YAHOO.widget.MenuItem.html#property_srcElement", "type": "property"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_stopMouseEventHandlers", "url": "YAHOO.widget.Menu.html#method__stopMouseEventHandlers", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "strongemphasis", "url": "YAHOO.widget.MenuItem.html#config_strongemphasis", "type": "config"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "submenu", "url": "YAHOO.widget.MenuItem.html#config_submenu", "type": "config"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "submenualignment", "url": "YAHOO.widget.Menu.html#config_submenualignment", "type": "config"}, {"access": "", "host": "YAHOO.widget.MenuBar", "name": "submenualignment", "url": "YAHOO.widget.MenuBar.html#config_submenualignment", "type": "config"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "submenuhidedelay", "url": "YAHOO.widget.Menu.html#config_submenuhidedelay", "type": "config"}, {"access": "", "host": "YAHOO.widget.MenuBar", "name": "submenutoggleregion", "url": "YAHOO.widget.MenuBar.html#config_submenutoggleregion", "type": "config"}, {"access": "", "host": "YAHOO.widget.MenuBar", "name": "SUBMENU_TOGGLE_REGION_WIDTH", "url": "YAHOO.widget.MenuBar.html#property_SUBMENU_TOGGLE_REGION_WIDTH", "type": "property"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "SUBMENU_TYPE", "url": "YAHOO.widget.MenuItem.html#property_SUBMENU_TYPE", "type": "property"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "subscribe", "url": "YAHOO.widget.Menu.html#method_subscribe", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "_subscribeScrollHandlers", "url": "YAHOO.widget.Menu.html#method__subscribeScrollHandlers", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_subscribeToItemEvents", "url": "YAHOO.widget.Menu.html#method__subscribeToItemEvents", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "target", "url": "YAHOO.widget.MenuItem.html#config_target", "type": "config"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "text", "url": "YAHOO.widget.MenuItem.html#config_text", "type": "config"}, {"access": "", "host": "YAHOO.widget.ContextMenu", "name": "toString", "url": "YAHOO.widget.ContextMenu.html#method_toString", "type": "method"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "toString", "url": "YAHOO.widget.Menu.html#method_toString", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuBar", "name": "toString", "url": "YAHOO.widget.MenuBar.html#method_toString", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuBarItem", "name": "toString", "url": "YAHOO.widget.MenuBarItem.html#method_toString", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "toString", "url": "YAHOO.widget.MenuItem.html#method_toString", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuManager", "name": "toString", "url": "YAHOO.widget.MenuManager.html#method_toString", "type": "method"}, {"access": "", "host": "YAHOO.widget.ContextMenu", "name": "trigger", "url": "YAHOO.widget.ContextMenu.html#config_trigger", "type": "config"}, {"access": "", "host": "YAHOO.widget.ContextMenu", "name": "triggerContextMenuEvent", "url": "YAHOO.widget.ContextMenu.html#event_triggerContextMenuEvent", "type": "event"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "_unsubscribeScrollHandlers", "url": "YAHOO.widget.Menu.html#method__unsubscribeScrollHandlers", "type": "method"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_updateItemProperties", "url": "YAHOO.widget.Menu.html#method__updateItemProperties", "type": "method"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "url", "url": "YAHOO.widget.MenuItem.html#config_url", "type": "config"}, {"access": "private", "host": "YAHOO.widget.Menu", "name": "_useHideDelay", "url": "YAHOO.widget.Menu.html#property__useHideDelay", "type": "property"}, {"access": "", "host": "YAHOO.widget.MenuItem", "name": "value", "url": "YAHOO.widget.MenuItem.html#property_value", "type": "property"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "visible", "url": "YAHOO.widget.Menu.html#config_visible", "type": "config"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "x", "url": "YAHOO.widget.Menu.html#config_x", "type": "config"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "xy", "url": "YAHOO.widget.Menu.html#config_xy", "type": "config"}, {"access": "", "host": "YAHOO.widget.Menu", "name": "y", "url": "YAHOO.widget.Menu.html#config_y", "type": "config"}];
|
|
</script>
|
|
</body>
|
|
</html>
|