1689 lines
180 KiB
HTML
1689 lines
180 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
|
<html>
|
|
<head>
|
|
<title>API: container Overlay.js (YUI Library)</title>
|
|
<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">
|
|
<a href="http://developer.yahoo.com/yui/"><h1>Yahoo! UI Library</h1></a>
|
|
<h3>Container <span class="subtitle">2.5.1</span></h3>
|
|
<p>
|
|
<a href="./index.html">Yahoo! UI Library</a>
|
|
> <a href="./module_container.html">container</a>
|
|
|
|
> Overlay.js (source view)
|
|
</p>
|
|
|
|
</div>
|
|
|
|
<div id="bd">
|
|
<div id="yui-main">
|
|
<div class="yui-b">
|
|
<form name="yui-classopts-form">
|
|
<span id="classopts"><input type="checkbox" name="showprivate" id="showprivate" /> Show Private</span>
|
|
<span id="classopts"><input type="checkbox" name="showprotected" id="showprotected" /> Show Protected</span>
|
|
</form>
|
|
|
|
<div id="srcout">
|
|
<style>
|
|
#doc3 #classopts { display:none; }
|
|
</style>
|
|
<div class="highlight" ><pre><span class="o">(</span><span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Overlay is a Module that is absolutely positioned above the page flow. It </span>
|
|
<span class="c"> * has convenience methods for positioning and sizing, as well as options for </span>
|
|
<span class="c"> * controlling zIndex and constraining the Overlay's position to the current </span>
|
|
<span class="c"> * visible viewport. Overlay also contains a dynamicly generated IFRAME which </span>
|
|
<span class="c"> * is placed beneath it for Internet Explorer 6 and 5.x so that it will be </span>
|
|
<span class="c"> * properly rendered above SELECT elements.</span>
|
|
<span class="c"> * @namespace YAHOO.widget</span>
|
|
<span class="c"> * @class Overlay</span>
|
|
<span class="c"> * @extends YAHOO.widget.Module</span>
|
|
<span class="c"> * @param {String} el The element ID representing the Overlay <em>OR</em></span>
|
|
<span class="c"> * @param {HTMLElement} el The element representing the Overlay</span>
|
|
<span class="c"> * @param {Object} userConfig The configuration object literal containing </span>
|
|
<span class="c"> * the configuration that should be set for this Overlay. See configuration </span>
|
|
<span class="c"> * documentation for more details.</span>
|
|
<span class="c"> * @constructor</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Overlay</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">el</span><span class="o">,</span> <span class="nx">userConfig</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Overlay</span><span class="o">.</span><span class="nx">superclass</span><span class="o">.</span><span class="nx">constructor</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="k">this</span><span class="o">,</span> <span class="nx">el</span><span class="o">,</span> <span class="nx">userConfig</span><span class="o">);</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="k">var</span> <span class="nx">Lang</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">,</span>
|
|
<span class="nx">CustomEvent</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">CustomEvent</span><span class="o">,</span>
|
|
<span class="nx">Module</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Module</span><span class="o">,</span>
|
|
<span class="nx">Event</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Event</span><span class="o">,</span>
|
|
<span class="nx">Dom</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Dom</span><span class="o">,</span>
|
|
<span class="nx">Config</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Config</span><span class="o">,</span>
|
|
<span class="nx">Overlay</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Overlay</span><span class="o">,</span>
|
|
|
|
<span class="nx">m_oIFrameTemplate</span><span class="o">,</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Constant representing the name of the Overlay's events</span>
|
|
<span class="c"> * @property EVENT_TYPES</span>
|
|
<span class="c"> * @private</span>
|
|
<span class="c"> * @final</span>
|
|
<span class="c"> * @type Object</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">EVENT_TYPES</span> <span class="o">=</span> <span class="o">{</span>
|
|
<span class="s2">"BEFORE_MOVE"</span><span class="o">:</span> <span class="s2">"beforeMove"</span><span class="o">,</span>
|
|
<span class="s2">"MOVE"</span><span class="o">:</span> <span class="s2">"move"</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Constant representing the Overlay's configuration properties</span>
|
|
<span class="c"> * @property DEFAULT_CONFIG</span>
|
|
<span class="c"> * @private</span>
|
|
<span class="c"> * @final</span>
|
|
<span class="c"> * @type Object</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">DEFAULT_CONFIG</span> <span class="o">=</span> <span class="o">{</span>
|
|
|
|
<span class="s2">"X"</span><span class="o">:</span> <span class="o">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="s2">"x"</span><span class="o">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">Lang</span><span class="o">.</span><span class="nx">isNumber</span><span class="o">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="kc">true</span><span class="o">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="o">[</span><span class="s2">"iframe"</span><span class="o">]</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="s2">"Y"</span><span class="o">:</span> <span class="o">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="s2">"y"</span><span class="o">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">Lang</span><span class="o">.</span><span class="nx">isNumber</span><span class="o">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="kc">true</span><span class="o">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="o">[</span><span class="s2">"iframe"</span><span class="o">]</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="s2">"XY"</span><span class="o">:</span> <span class="o">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="s2">"xy"</span><span class="o">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="kc">true</span><span class="o">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="o">[</span><span class="s2">"iframe"</span><span class="o">]</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="s2">"CONTEXT"</span><span class="o">:</span> <span class="o">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="s2">"context"</span><span class="o">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="kc">true</span><span class="o">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="o">[</span><span class="s2">"iframe"</span><span class="o">]</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="s2">"FIXED_CENTER"</span><span class="o">:</span> <span class="o">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="s2">"fixedcenter"</span><span class="o">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="kc">false</span><span class="o">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">Lang</span><span class="o">.</span><span class="nx">isBoolean</span><span class="o">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="o">[</span><span class="s2">"iframe"</span><span class="o">,</span> <span class="s2">"visible"</span><span class="o">]</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="s2">"WIDTH"</span><span class="o">:</span> <span class="o">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="s2">"width"</span><span class="o">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="kc">true</span><span class="o">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="o">[</span><span class="s2">"context"</span><span class="o">,</span> <span class="s2">"fixedcenter"</span><span class="o">,</span> <span class="s2">"iframe"</span><span class="o">]</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="s2">"HEIGHT"</span><span class="o">:</span> <span class="o">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="s2">"height"</span><span class="o">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="kc">true</span><span class="o">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="o">[</span><span class="s2">"context"</span><span class="o">,</span> <span class="s2">"fixedcenter"</span><span class="o">,</span> <span class="s2">"iframe"</span><span class="o">]</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="s2">"ZINDEX"</span><span class="o">:</span> <span class="o">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="s2">"zindex"</span><span class="o">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="kc">null</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="s2">"CONSTRAIN_TO_VIEWPORT"</span><span class="o">:</span> <span class="o">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="s2">"constraintoviewport"</span><span class="o">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="kc">false</span><span class="o">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">Lang</span><span class="o">.</span><span class="nx">isBoolean</span><span class="o">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="o">[</span><span class="s2">"iframe"</span><span class="o">,</span> <span class="s2">"x"</span><span class="o">,</span> <span class="s2">"y"</span><span class="o">,</span> <span class="s2">"xy"</span><span class="o">]</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="s2">"IFRAME"</span><span class="o">:</span> <span class="o">{</span>
|
|
<span class="nx">key</span><span class="o">:</span> <span class="s2">"iframe"</span><span class="o">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">env</span><span class="o">.</span><span class="nx">ua</span><span class="o">.</span><span class="nx">ie</span> <span class="o">==</span> <span class="m">6</span> <span class="o">?</span> <span class="kc">true</span> <span class="o">:</span> <span class="kc">false</span><span class="o">),</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">Lang</span><span class="o">.</span><span class="nx">isBoolean</span><span class="o">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="o">[</span><span class="s2">"zindex"</span><span class="o">]</span>
|
|
<span class="o">}</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The URL that will be placed in the iframe</span>
|
|
<span class="c"> * @property YAHOO.widget.Overlay.IFRAME_SRC</span>
|
|
<span class="c"> * @static</span>
|
|
<span class="c"> * @final</span>
|
|
<span class="c"> * @type String</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">IFRAME_SRC</span> <span class="o">=</span> <span class="s2">"javascript:false;"</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Number representing how much the iframe shim should be offset from each </span>
|
|
<span class="c"> * side of an Overlay instance, in pixels.</span>
|
|
<span class="c"> * @property YAHOO.widget.Overlay.IFRAME_SRC</span>
|
|
<span class="c"> * @default 3</span>
|
|
<span class="c"> * @static</span>
|
|
<span class="c"> * @final</span>
|
|
<span class="c"> * @type Number</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">IFRAME_OFFSET</span> <span class="o">=</span> <span class="m">3</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Number representing the minimum distance an Overlay instance should be </span>
|
|
<span class="c"> * positioned relative to the boundaries of the browser's viewport, in pixels.</span>
|
|
<span class="c"> * @property YAHOO.widget.Overlay.VIEWPORT_OFFSET</span>
|
|
<span class="c"> * @default 10</span>
|
|
<span class="c"> * @static</span>
|
|
<span class="c"> * @final</span>
|
|
<span class="c"> * @type Number</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">VIEWPORT_OFFSET</span> <span class="o">=</span> <span class="m">10</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Constant representing the top left corner of an element, used for </span>
|
|
<span class="c"> * configuring the context element alignment</span>
|
|
<span class="c"> * @property YAHOO.widget.Overlay.TOP_LEFT</span>
|
|
<span class="c"> * @static</span>
|
|
<span class="c"> * @final</span>
|
|
<span class="c"> * @type String</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">TOP_LEFT</span> <span class="o">=</span> <span class="s2">"tl"</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Constant representing the top right corner of an element, used for </span>
|
|
<span class="c"> * configuring the context element alignment</span>
|
|
<span class="c"> * @property YAHOO.widget.Overlay.TOP_RIGHT</span>
|
|
<span class="c"> * @static</span>
|
|
<span class="c"> * @final</span>
|
|
<span class="c"> * @type String</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">TOP_RIGHT</span> <span class="o">=</span> <span class="s2">"tr"</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Constant representing the top bottom left corner of an element, used for </span>
|
|
<span class="c"> * configuring the context element alignment</span>
|
|
<span class="c"> * @property YAHOO.widget.Overlay.BOTTOM_LEFT</span>
|
|
<span class="c"> * @static</span>
|
|
<span class="c"> * @final</span>
|
|
<span class="c"> * @type String</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">BOTTOM_LEFT</span> <span class="o">=</span> <span class="s2">"bl"</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Constant representing the bottom right corner of an element, used for </span>
|
|
<span class="c"> * configuring the context element alignment</span>
|
|
<span class="c"> * @property YAHOO.widget.Overlay.BOTTOM_RIGHT</span>
|
|
<span class="c"> * @static</span>
|
|
<span class="c"> * @final</span>
|
|
<span class="c"> * @type String</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">BOTTOM_RIGHT</span> <span class="o">=</span> <span class="s2">"br"</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Constant representing the default CSS class used for an Overlay</span>
|
|
<span class="c"> * @property YAHOO.widget.Overlay.CSS_OVERLAY</span>
|
|
<span class="c"> * @static</span>
|
|
<span class="c"> * @final</span>
|
|
<span class="c"> * @type String</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">CSS_OVERLAY</span> <span class="o">=</span> <span class="s2">"yui-overlay"</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * A singleton CustomEvent used for reacting to the DOM event for </span>
|
|
<span class="c"> * window scroll</span>
|
|
<span class="c"> * @event YAHOO.widget.Overlay.windowScrollEvent</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">windowScrollEvent</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">CustomEvent</span><span class="o">(</span><span class="s2">"windowScroll"</span><span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * A singleton CustomEvent used for reacting to the DOM event for</span>
|
|
<span class="c"> * window resize</span>
|
|
<span class="c"> * @event YAHOO.widget.Overlay.windowResizeEvent</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">windowResizeEvent</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">CustomEvent</span><span class="o">(</span><span class="s2">"windowResize"</span><span class="o">);</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The DOM event handler used to fire the CustomEvent for window scroll</span>
|
|
<span class="c"> * @method YAHOO.widget.Overlay.windowScrollHandler</span>
|
|
<span class="c"> * @static</span>
|
|
<span class="c"> * @param {DOMEvent} e The DOM scroll event</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">windowScrollHandler</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">e</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">env</span><span class="o">.</span><span class="nx">ua</span><span class="o">.</span><span class="nx">ie</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">if</span> <span class="o">(!</span> <span class="nb">window</span><span class="o">.</span><span class="nx">scrollEnd</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nb">window</span><span class="o">.</span><span class="nx">scrollEnd</span> <span class="o">=</span> <span class="o">-</span><span class="m">1</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">clearTimeout</span><span class="o">(</span><span class="nb">window</span><span class="o">.</span><span class="nx">scrollEnd</span><span class="o">);</span>
|
|
|
|
<span class="nb">window</span><span class="o">.</span><span class="nx">scrollEnd</span> <span class="o">=</span> <span class="nx">setTimeout</span><span class="o">(</span><span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">windowScrollEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
<span class="o">},</span> <span class="m">1</span><span class="o">);</span>
|
|
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">windowScrollEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
<span class="o">}</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The DOM event handler used to fire the CustomEvent for window resize</span>
|
|
<span class="c"> * @method YAHOO.widget.Overlay.windowResizeHandler</span>
|
|
<span class="c"> * @static</span>
|
|
<span class="c"> * @param {DOMEvent} e The DOM resize event</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">windowResizeHandler</span> <span class="o">=</span> <span class="k">function</span> <span class="o">(</span><span class="nx">e</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">env</span><span class="o">.</span><span class="nx">ua</span><span class="o">.</span><span class="nx">ie</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(!</span> <span class="nb">window</span><span class="o">.</span><span class="nx">resizeEnd</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nb">window</span><span class="o">.</span><span class="nx">resizeEnd</span> <span class="o">=</span> <span class="o">-</span><span class="m">1</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">clearTimeout</span><span class="o">(</span><span class="nb">window</span><span class="o">.</span><span class="nx">resizeEnd</span><span class="o">);</span>
|
|
|
|
<span class="nb">window</span><span class="o">.</span><span class="nx">resizeEnd</span> <span class="o">=</span> <span class="nx">setTimeout</span><span class="o">(</span><span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">windowResizeEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
<span class="o">},</span> <span class="m">100</span><span class="o">);</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">windowResizeEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
<span class="o">}</span>
|
|
<span class="o">};</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * A boolean that indicated whether the window resize and scroll events have </span>
|
|
<span class="c"> * already been subscribed to.</span>
|
|
<span class="c"> * @property YAHOO.widget.Overlay._initialized</span>
|
|
<span class="c"> * @private</span>
|
|
<span class="c"> * @type Boolean</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">_initialized</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">Overlay</span><span class="o">.</span><span class="nx">_initialized</span> <span class="o">===</span> <span class="kc">null</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">Event</span><span class="o">.</span><span class="nx">on</span><span class="o">(</span><span class="nb">window</span><span class="o">,</span> <span class="s2">"scroll"</span><span class="o">,</span> <span class="nx">Overlay</span><span class="o">.</span><span class="nx">windowScrollHandler</span><span class="o">);</span>
|
|
<span class="nx">Event</span><span class="o">.</span><span class="nx">on</span><span class="o">(</span><span class="nb">window</span><span class="o">,</span> <span class="s2">"resize"</span><span class="o">,</span> <span class="nx">Overlay</span><span class="o">.</span><span class="nx">windowResizeHandler</span><span class="o">);</span>
|
|
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">_initialized</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">extend</span><span class="o">(</span><span class="nx">Overlay</span><span class="o">,</span> <span class="nx">Module</span><span class="o">,</span> <span class="o">{</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The Overlay initialization method, which is executed for Overlay and </span>
|
|
<span class="c"> * all of its subclasses. This method is automatically called by the </span>
|
|
<span class="c"> * constructor, and sets up all DOM references for pre-existing markup, </span>
|
|
<span class="c"> * and creates required markup if it is not already present.</span>
|
|
<span class="c"> * @method init</span>
|
|
<span class="c"> * @param {String} el The element ID representing the Overlay <em>OR</em></span>
|
|
<span class="c"> * @param {HTMLElement} el The element representing the Overlay</span>
|
|
<span class="c"> * @param {Object} userConfig The configuration object literal </span>
|
|
<span class="c"> * containing the configuration that should be set for this Overlay. </span>
|
|
<span class="c"> * See configuration documentation for more details.</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">init</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">el</span><span class="o">,</span> <span class="nx">userConfig</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="c">/*</span>
|
|
<span class="c"> Note that we don't pass the user config in here yet because we</span>
|
|
<span class="c"> only want it executed once, at the lowest subclass level</span>
|
|
<span class="c"> */</span>
|
|
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">superclass</span><span class="o">.</span><span class="nx">init</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="k">this</span><span class="o">,</span> <span class="nx">el</span><span class="c">/*, userConfig*/</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeInitEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">(</span><span class="nx">Overlay</span><span class="o">);</span>
|
|
|
|
<span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">,</span> <span class="nx">Overlay</span><span class="o">.</span><span class="nx">CSS_OVERLAY</span><span class="o">);</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">userConfig</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">applyConfig</span><span class="o">(</span><span class="nx">userConfig</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">platform</span> <span class="o">==</span> <span class="s2">"mac"</span> <span class="o">&&</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">env</span><span class="o">.</span><span class="nx">ua</span><span class="o">.</span><span class="nx">gecko</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">if</span> <span class="o">(!</span> <span class="nx">Config</span><span class="o">.</span><span class="nx">alreadySubscribed</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">showEvent</span><span class="o">,</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">showMacGeckoScrollbars</span><span class="o">,</span> <span class="k">this</span><span class="o">))</span> <span class="o">{</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">showEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">showMacGeckoScrollbars</span><span class="o">,</span>
|
|
<span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(!</span> <span class="nx">Config</span><span class="o">.</span><span class="nx">alreadySubscribed</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">hideEvent</span><span class="o">,</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">hideMacGeckoScrollbars</span><span class="o">,</span> <span class="k">this</span><span class="o">))</span> <span class="o">{</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">hideEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">hideMacGeckoScrollbars</span><span class="o">,</span>
|
|
<span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">initEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">(</span><span class="nx">Overlay</span><span class="o">);</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Initializes the custom events for Overlay which are fired </span>
|
|
<span class="c"> * automatically at appropriate times by the Overlay class.</span>
|
|
<span class="c"> * @method initEvents</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">initEvents</span><span class="o">:</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
|
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">superclass</span><span class="o">.</span><span class="nx">initEvents</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="k">this</span><span class="o">);</span>
|
|
|
|
<span class="k">var</span> <span class="nx">SIGNATURE</span> <span class="o">=</span> <span class="nx">CustomEvent</span><span class="o">.</span><span class="nx">LIST</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * CustomEvent fired before the Overlay is moved.</span>
|
|
<span class="c"> * @event beforeMoveEvent</span>
|
|
<span class="c"> * @param {Number} x x coordinate</span>
|
|
<span class="c"> * @param {Number} y y coordinate</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeMoveEvent</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">createEvent</span><span class="o">(</span><span class="nx">EVENT_TYPES</span><span class="o">.</span><span class="nx">BEFORE_MOVE</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeMoveEvent</span><span class="o">.</span><span class="nx">signature</span> <span class="o">=</span> <span class="nx">SIGNATURE</span><span class="o">;</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * CustomEvent fired after the Overlay is moved.</span>
|
|
<span class="c"> * @event moveEvent</span>
|
|
<span class="c"> * @param {Number} x x coordinate</span>
|
|
<span class="c"> * @param {Number} y y coordinate</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">moveEvent</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">createEvent</span><span class="o">(</span><span class="nx">EVENT_TYPES</span><span class="o">.</span><span class="nx">MOVE</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">moveEvent</span><span class="o">.</span><span class="nx">signature</span> <span class="o">=</span> <span class="nx">SIGNATURE</span><span class="o">;</span>
|
|
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Initializes the class's configurable properties which can be changed </span>
|
|
<span class="c"> * using the Overlay's Config object (cfg).</span>
|
|
<span class="c"> * @method initDefaultConfig</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">initDefaultConfig</span><span class="o">:</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
|
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">superclass</span><span class="o">.</span><span class="nx">initDefaultConfig</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="k">this</span><span class="o">);</span>
|
|
|
|
|
|
<span class="c">// Add overlay config properties //</span>
|
|
<span class="c"></span>
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The absolute x-coordinate position of the Overlay</span>
|
|
<span class="c"> * @config x</span>
|
|
<span class="c"> * @type Number</span>
|
|
<span class="c"> * @default null</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">X</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span>
|
|
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="o">.</span><span class="nx">configX</span><span class="o">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">X</span><span class="o">.</span><span class="nx">validator</span><span class="o">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">X</span><span class="o">.</span><span class="nx">suppressEvent</span><span class="o">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">X</span><span class="o">.</span><span class="nx">supercedes</span>
|
|
|
|
<span class="o">});</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The absolute y-coordinate position of the Overlay</span>
|
|
<span class="c"> * @config y</span>
|
|
<span class="c"> * @type Number</span>
|
|
<span class="c"> * @default null</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">Y</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span>
|
|
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="o">.</span><span class="nx">configY</span><span class="o">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">Y</span><span class="o">.</span><span class="nx">validator</span><span class="o">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">Y</span><span class="o">.</span><span class="nx">suppressEvent</span><span class="o">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">Y</span><span class="o">.</span><span class="nx">supercedes</span>
|
|
|
|
<span class="o">});</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * An array with the absolute x and y positions of the Overlay</span>
|
|
<span class="c"> * @config xy</span>
|
|
<span class="c"> * @type Number[]</span>
|
|
<span class="c"> * @default null</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">XY</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span>
|
|
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="o">.</span><span class="nx">configXY</span><span class="o">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">XY</span><span class="o">.</span><span class="nx">suppressEvent</span><span class="o">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">XY</span><span class="o">.</span><span class="nx">supercedes</span>
|
|
|
|
<span class="o">});</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The array of context arguments for context-sensitive positioning. </span>
|
|
<span class="c"> * The format is: [id or element, element corner, context corner]. </span>
|
|
<span class="c"> * For example, setting this property to ["img1", "tl", "bl"] would </span>
|
|
<span class="c"> * align the Overlay's top left corner to the context element's </span>
|
|
<span class="c"> * bottom left corner.</span>
|
|
<span class="c"> * @config context</span>
|
|
<span class="c"> * @type Array</span>
|
|
<span class="c"> * @default null</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">CONTEXT</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span>
|
|
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="o">.</span><span class="nx">configContext</span><span class="o">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">CONTEXT</span><span class="o">.</span><span class="nx">suppressEvent</span><span class="o">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">CONTEXT</span><span class="o">.</span><span class="nx">supercedes</span>
|
|
|
|
<span class="o">});</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * True if the Overlay should be anchored to the center of </span>
|
|
<span class="c"> * the viewport.</span>
|
|
<span class="c"> * @config fixedcenter</span>
|
|
<span class="c"> * @type Boolean</span>
|
|
<span class="c"> * @default false</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">FIXED_CENTER</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span>
|
|
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="o">.</span><span class="nx">configFixedCenter</span><span class="o">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">FIXED_CENTER</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">FIXED_CENTER</span><span class="o">.</span><span class="nx">validator</span><span class="o">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">FIXED_CENTER</span><span class="o">.</span><span class="nx">supercedes</span>
|
|
|
|
<span class="o">});</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * CSS width of the Overlay.</span>
|
|
<span class="c"> * @config width</span>
|
|
<span class="c"> * @type String</span>
|
|
<span class="c"> * @default null</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">WIDTH</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span>
|
|
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="o">.</span><span class="nx">configWidth</span><span class="o">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">WIDTH</span><span class="o">.</span><span class="nx">suppressEvent</span><span class="o">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">WIDTH</span><span class="o">.</span><span class="nx">supercedes</span>
|
|
|
|
<span class="o">});</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * CSS height of the Overlay.</span>
|
|
<span class="c"> * @config height</span>
|
|
<span class="c"> * @type String</span>
|
|
<span class="c"> * @default null</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">HEIGHT</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span>
|
|
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="o">.</span><span class="nx">configHeight</span><span class="o">,</span>
|
|
<span class="nx">suppressEvent</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">HEIGHT</span><span class="o">.</span><span class="nx">suppressEvent</span><span class="o">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">HEIGHT</span><span class="o">.</span><span class="nx">supercedes</span>
|
|
|
|
<span class="o">});</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * CSS z-index of the Overlay.</span>
|
|
<span class="c"> * @config zIndex</span>
|
|
<span class="c"> * @type Number</span>
|
|
<span class="c"> * @default null</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">ZINDEX</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span>
|
|
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="o">.</span><span class="nx">configzIndex</span><span class="o">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">ZINDEX</span><span class="o">.</span><span class="nx">value</span>
|
|
|
|
<span class="o">});</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * True if the Overlay should be prevented from being positioned </span>
|
|
<span class="c"> * out of the viewport.</span>
|
|
<span class="c"> * @config constraintoviewport</span>
|
|
<span class="c"> * @type Boolean</span>
|
|
<span class="c"> * @default false</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">CONSTRAIN_TO_VIEWPORT</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span>
|
|
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="o">.</span><span class="nx">configConstrainToViewport</span><span class="o">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">CONSTRAIN_TO_VIEWPORT</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">CONSTRAIN_TO_VIEWPORT</span><span class="o">.</span><span class="nx">validator</span><span class="o">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">CONSTRAIN_TO_VIEWPORT</span><span class="o">.</span><span class="nx">supercedes</span>
|
|
|
|
<span class="o">});</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * @config iframe</span>
|
|
<span class="c"> * @description Boolean indicating whether or not the Overlay should </span>
|
|
<span class="c"> * have an IFRAME shim; used to prevent SELECT elements from </span>
|
|
<span class="c"> * poking through an Overlay instance in IE6. When set to "true", </span>
|
|
<span class="c"> * the iframe shim is created when the Overlay instance is intially</span>
|
|
<span class="c"> * made visible.</span>
|
|
<span class="c"> * @type Boolean</span>
|
|
<span class="c"> * @default true for IE6 and below, false for all other browsers.</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">addProperty</span><span class="o">(</span><span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">IFRAME</span><span class="o">.</span><span class="nx">key</span><span class="o">,</span> <span class="o">{</span>
|
|
|
|
<span class="nx">handler</span><span class="o">:</span> <span class="k">this</span><span class="o">.</span><span class="nx">configIframe</span><span class="o">,</span>
|
|
<span class="nx">value</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">IFRAME</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span>
|
|
<span class="nx">validator</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">IFRAME</span><span class="o">.</span><span class="nx">validator</span><span class="o">,</span>
|
|
<span class="nx">supercedes</span><span class="o">:</span> <span class="nx">DEFAULT_CONFIG</span><span class="o">.</span><span class="nx">IFRAME</span><span class="o">.</span><span class="nx">supercedes</span>
|
|
|
|
<span class="o">});</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Moves the Overlay to the specified position. This function is </span>
|
|
<span class="c"> * identical to calling this.cfg.setProperty("xy", [x,y]);</span>
|
|
<span class="c"> * @method moveTo</span>
|
|
<span class="c"> * @param {Number} x The Overlay's new x position</span>
|
|
<span class="c"> * @param {Number} y The Overlay's new y position</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">moveTo</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">x</span><span class="o">,</span> <span class="nx">y</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="s2">"xy"</span><span class="o">,</span> <span class="o">[</span><span class="nx">x</span><span class="o">,</span> <span class="nx">y</span><span class="o">]);</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Adds a CSS class ("hide-scrollbars") and removes a CSS class </span>
|
|
<span class="c"> * ("show-scrollbars") to the Overlay to fix a bug in Gecko on Mac OS X </span>
|
|
<span class="c"> * (https://bugzilla.mozilla.org/show_bug.cgi?id=187435)</span>
|
|
<span class="c"> * @method hideMacGeckoScrollbars</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">hideMacGeckoScrollbars</span><span class="o">:</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
|
|
|
<span class="nx">Dom</span><span class="o">.</span><span class="nx">removeClass</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">,</span> <span class="s2">"show-scrollbars"</span><span class="o">);</span>
|
|
<span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">,</span> <span class="s2">"hide-scrollbars"</span><span class="o">);</span>
|
|
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Adds a CSS class ("show-scrollbars") and removes a CSS class </span>
|
|
<span class="c"> * ("hide-scrollbars") to the Overlay to fix a bug in Gecko on Mac OS X </span>
|
|
<span class="c"> * (https://bugzilla.mozilla.org/show_bug.cgi?id=187435)</span>
|
|
<span class="c"> * @method showMacGeckoScrollbars</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">showMacGeckoScrollbars</span><span class="o">:</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
|
|
|
<span class="nx">Dom</span><span class="o">.</span><span class="nx">removeClass</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">,</span> <span class="s2">"hide-scrollbars"</span><span class="o">);</span>
|
|
<span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">,</span> <span class="s2">"show-scrollbars"</span><span class="o">);</span>
|
|
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">// BEGIN BUILT-IN PROPERTY EVENT HANDLERS //</span>
|
|
<span class="c"></span> <span class="c">/**</span>
|
|
<span class="c"> * The default event handler fired when the "visible" property is </span>
|
|
<span class="c"> * changed. This method is responsible for firing showEvent</span>
|
|
<span class="c"> * and hideEvent.</span>
|
|
<span class="c"> * @method configVisible</span>
|
|
<span class="c"> * @param {String} type The CustomEvent type (usually the property name)</span>
|
|
<span class="c"> * @param {Object[]} args The CustomEvent arguments. For configuration</span>
|
|
<span class="c"> * handlers, args[0] will equal the newly applied value for the property.</span>
|
|
<span class="c"> * @param {Object} obj The scope object. For configuration handlers, </span>
|
|
<span class="c"> * this will usually equal the owner.</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">configVisible</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">visible</span> <span class="o">=</span> <span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">],</span>
|
|
<span class="nx">currentVis</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">getStyle</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">,</span> <span class="s2">"visibility"</span><span class="o">),</span>
|
|
<span class="nx">effect</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="s2">"effect"</span><span class="o">),</span>
|
|
<span class="nx">effectInstances</span> <span class="o">=</span> <span class="o">[],</span>
|
|
<span class="nx">isMacGecko</span> <span class="o">=</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">platform</span> <span class="o">==</span> <span class="s2">"mac"</span> <span class="o">&&</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">env</span><span class="o">.</span><span class="nx">ua</span><span class="o">.</span><span class="nx">gecko</span><span class="o">),</span>
|
|
<span class="nx">alreadySubscribed</span> <span class="o">=</span> <span class="nx">Config</span><span class="o">.</span><span class="nx">alreadySubscribed</span><span class="o">,</span>
|
|
<span class="nx">eff</span><span class="o">,</span> <span class="nx">ei</span><span class="o">,</span> <span class="nx">e</span><span class="o">,</span> <span class="nx">i</span><span class="o">,</span> <span class="nx">j</span><span class="o">,</span> <span class="nx">k</span><span class="o">,</span> <span class="nx">h</span><span class="o">,</span>
|
|
<span class="nx">nEffects</span><span class="o">,</span>
|
|
<span class="nx">nEffectInstances</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">currentVis</span> <span class="o">==</span> <span class="s2">"inherit"</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">e</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">;</span>
|
|
|
|
<span class="k">while</span> <span class="o">(</span><span class="nx">e</span><span class="o">.</span><span class="nx">nodeType</span> <span class="o">!=</span> <span class="m">9</span> <span class="o">&&</span> <span class="nx">e</span><span class="o">.</span><span class="nx">nodeType</span> <span class="o">!=</span> <span class="m">11</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">currentVis</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">getStyle</span><span class="o">(</span><span class="nx">e</span><span class="o">,</span> <span class="s2">"visibility"</span><span class="o">);</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">currentVis</span> <span class="o">!=</span> <span class="s2">"inherit"</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">e</span> <span class="o">=</span> <span class="nx">e</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">currentVis</span> <span class="o">==</span> <span class="s2">"inherit"</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">currentVis</span> <span class="o">=</span> <span class="s2">"visible"</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">effect</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">effect</span> <span class="k">instanceof</span> <span class="nb">Array</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">nEffects</span> <span class="o">=</span> <span class="nx">effect</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span>
|
|
|
|
<span class="k">for</span> <span class="o">(</span><span class="nx">i</span> <span class="o">=</span> <span class="m">0</span><span class="o">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="nx">nEffects</span><span class="o">;</span> <span class="nx">i</span><span class="o">++)</span> <span class="o">{</span>
|
|
<span class="nx">eff</span> <span class="o">=</span> <span class="nx">effect</span><span class="o">[</span><span class="nx">i</span><span class="o">];</span>
|
|
<span class="nx">effectInstances</span><span class="o">[</span><span class="nx">effectInstances</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span>
|
|
<span class="nx">eff</span><span class="o">.</span><span class="nx">effect</span><span class="o">(</span><span class="k">this</span><span class="o">,</span> <span class="nx">eff</span><span class="o">.</span><span class="nx">duration</span><span class="o">);</span>
|
|
|
|
<span class="o">}</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="nx">effectInstances</span><span class="o">[</span><span class="nx">effectInstances</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span>
|
|
<span class="nx">effect</span><span class="o">.</span><span class="nx">effect</span><span class="o">(</span><span class="k">this</span><span class="o">,</span> <span class="nx">effect</span><span class="o">.</span><span class="nx">duration</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">visible</span><span class="o">)</span> <span class="o">{</span> <span class="c">// Show</span>
|
|
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">isMacGecko</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">showMacGeckoScrollbars</span><span class="o">();</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">effect</span><span class="o">)</span> <span class="o">{</span> <span class="c">// Animate in</span>
|
|
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">visible</span><span class="o">)</span> <span class="o">{</span> <span class="c">// Animate in if not showing</span>
|
|
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">currentVis</span> <span class="o">!=</span> <span class="s2">"visible"</span> <span class="o">||</span> <span class="nx">currentVis</span> <span class="o">===</span> <span class="s2">""</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeShowEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
<span class="nx">nEffectInstances</span> <span class="o">=</span> <span class="nx">effectInstances</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span>
|
|
|
|
<span class="k">for</span> <span class="o">(</span><span class="nx">j</span> <span class="o">=</span> <span class="m">0</span><span class="o">;</span> <span class="nx">j</span> <span class="o"><</span> <span class="nx">nEffectInstances</span><span class="o">;</span> <span class="nx">j</span><span class="o">++)</span> <span class="o">{</span>
|
|
<span class="nx">ei</span> <span class="o">=</span> <span class="nx">effectInstances</span><span class="o">[</span><span class="nx">j</span><span class="o">];</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">j</span> <span class="o">===</span> <span class="m">0</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">alreadySubscribed</span><span class="o">(</span>
|
|
<span class="nx">ei</span><span class="o">.</span><span class="nx">animateInCompleteEvent</span><span class="o">,</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">showEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">showEvent</span><span class="o">))</span> <span class="o">{</span>
|
|
|
|
<span class="c">/*</span>
|
|
<span class="c"> Delegate showEvent until end </span>
|
|
<span class="c"> of animateInComplete</span>
|
|
<span class="c"> */</span>
|
|
|
|
<span class="nx">ei</span><span class="o">.</span><span class="nx">animateInCompleteEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">showEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">showEvent</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="nx">ei</span><span class="o">.</span><span class="nx">animateIn</span><span class="o">();</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span> <span class="c">// Show</span>
|
|
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">currentVis</span> <span class="o">!=</span> <span class="s2">"visible"</span> <span class="o">||</span> <span class="nx">currentVis</span> <span class="o">===</span> <span class="s2">""</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeShowEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
|
|
<span class="nx">Dom</span><span class="o">.</span><span class="nx">setStyle</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">,</span> <span class="s2">"visibility"</span><span class="o">,</span> <span class="s2">"visible"</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">refireEvent</span><span class="o">(</span><span class="s2">"iframe"</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">showEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span> <span class="c">// Hide</span>
|
|
<span class="c"></span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">isMacGecko</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">hideMacGeckoScrollbars</span><span class="o">();</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">effect</span><span class="o">)</span> <span class="o">{</span> <span class="c">// Animate out if showing</span>
|
|
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">currentVis</span> <span class="o">==</span> <span class="s2">"visible"</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeHideEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
|
|
<span class="nx">nEffectInstances</span> <span class="o">=</span> <span class="nx">effectInstances</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span>
|
|
<span class="k">for</span> <span class="o">(</span><span class="nx">k</span> <span class="o">=</span> <span class="m">0</span><span class="o">;</span> <span class="nx">k</span> <span class="o"><</span> <span class="nx">nEffectInstances</span><span class="o">;</span> <span class="nx">k</span><span class="o">++)</span> <span class="o">{</span>
|
|
<span class="nx">h</span> <span class="o">=</span> <span class="nx">effectInstances</span><span class="o">[</span><span class="nx">k</span><span class="o">];</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">k</span> <span class="o">===</span> <span class="m">0</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">alreadySubscribed</span><span class="o">(</span>
|
|
<span class="nx">h</span><span class="o">.</span><span class="nx">animateOutCompleteEvent</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">hideEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">,</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">hideEvent</span><span class="o">))</span> <span class="o">{</span>
|
|
|
|
<span class="c">/*</span>
|
|
<span class="c"> Delegate hideEvent until end </span>
|
|
<span class="c"> of animateOutComplete</span>
|
|
<span class="c"> */</span>
|
|
|
|
<span class="nx">h</span><span class="o">.</span><span class="nx">animateOutCompleteEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">hideEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">hideEvent</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
|
|
<span class="o">}</span>
|
|
<span class="nx">h</span><span class="o">.</span><span class="nx">animateOut</span><span class="o">();</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="o">}</span> <span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">currentVis</span> <span class="o">===</span> <span class="s2">""</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">Dom</span><span class="o">.</span><span class="nx">setStyle</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">,</span> <span class="s2">"visibility"</span><span class="o">,</span> <span class="s2">"hidden"</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span> <span class="c">// Simple hide</span>
|
|
<span class="c"></span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">currentVis</span> <span class="o">==</span> <span class="s2">"visible"</span> <span class="o">||</span> <span class="nx">currentVis</span> <span class="o">===</span> <span class="s2">""</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeHideEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
<span class="nx">Dom</span><span class="o">.</span><span class="nx">setStyle</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">,</span> <span class="s2">"visibility"</span><span class="o">,</span> <span class="s2">"hidden"</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">hideEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">();</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Center event handler used for centering on scroll/resize, but only if </span>
|
|
<span class="c"> * the Overlay is visible</span>
|
|
<span class="c"> * @method doCenterOnDOMEvent</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">doCenterOnDOMEvent</span><span class="o">:</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="s2">"visible"</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">center</span><span class="o">();</span>
|
|
<span class="o">}</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The default event handler fired when the "fixedcenter" property </span>
|
|
<span class="c"> * is changed.</span>
|
|
<span class="c"> * @method configFixedCenter</span>
|
|
<span class="c"> * @param {String} type The CustomEvent type (usually the property name)</span>
|
|
<span class="c"> * @param {Object[]} args The CustomEvent arguments. For configuration </span>
|
|
<span class="c"> * handlers, args[0] will equal the newly applied value for the property.</span>
|
|
<span class="c"> * @param {Object} obj The scope object. For configuration handlers, </span>
|
|
<span class="c"> * this will usually equal the owner.</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">configFixedCenter</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">val</span> <span class="o">=</span> <span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">],</span>
|
|
<span class="nx">alreadySubscribed</span> <span class="o">=</span> <span class="nx">Config</span><span class="o">.</span><span class="nx">alreadySubscribed</span><span class="o">,</span>
|
|
<span class="nx">windowResizeEvent</span> <span class="o">=</span> <span class="nx">Overlay</span><span class="o">.</span><span class="nx">windowResizeEvent</span><span class="o">,</span>
|
|
<span class="nx">windowScrollEvent</span> <span class="o">=</span> <span class="nx">Overlay</span><span class="o">.</span><span class="nx">windowScrollEvent</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">val</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">center</span><span class="o">();</span>
|
|
|
|
<span class="k">if</span> <span class="o">(!</span><span class="nx">alreadySubscribed</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">beforeShowEvent</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">center</span><span class="o">,</span> <span class="k">this</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeShowEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">center</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(!</span><span class="nx">alreadySubscribed</span><span class="o">(</span><span class="nx">windowResizeEvent</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">doCenterOnDOMEvent</span><span class="o">,</span> <span class="k">this</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">windowResizeEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">doCenterOnDOMEvent</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(!</span><span class="nx">alreadySubscribed</span><span class="o">(</span><span class="nx">windowScrollEvent</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">doCenterOnDOMEvent</span><span class="o">,</span> <span class="k">this</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">windowScrollEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">doCenterOnDOMEvent</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeShowEvent</span><span class="o">.</span><span class="nx">unsubscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">center</span><span class="o">);</span>
|
|
|
|
<span class="nx">windowResizeEvent</span><span class="o">.</span><span class="nx">unsubscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">doCenterOnDOMEvent</span><span class="o">,</span> <span class="k">this</span><span class="o">);</span>
|
|
<span class="nx">windowScrollEvent</span><span class="o">.</span><span class="nx">unsubscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">doCenterOnDOMEvent</span><span class="o">,</span> <span class="k">this</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The default event handler fired when the "height" property is changed.</span>
|
|
<span class="c"> * @method configHeight</span>
|
|
<span class="c"> * @param {String} type The CustomEvent type (usually the property name)</span>
|
|
<span class="c"> * @param {Object[]} args The CustomEvent arguments. For configuration </span>
|
|
<span class="c"> * handlers, args[0] will equal the newly applied value for the property.</span>
|
|
<span class="c"> * @param {Object} obj The scope object. For configuration handlers, </span>
|
|
<span class="c"> * this will usually equal the owner.</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">configHeight</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">height</span> <span class="o">=</span> <span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">],</span>
|
|
<span class="nx">el</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">;</span>
|
|
|
|
<span class="nx">Dom</span><span class="o">.</span><span class="nx">setStyle</span><span class="o">(</span><span class="nx">el</span><span class="o">,</span> <span class="s2">"height"</span><span class="o">,</span> <span class="nx">height</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">refireEvent</span><span class="o">(</span><span class="s2">"iframe"</span><span class="o">);</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The default event handler fired when the "width" property is changed.</span>
|
|
<span class="c"> * @method configWidth</span>
|
|
<span class="c"> * @param {String} type The CustomEvent type (usually the property name)</span>
|
|
<span class="c"> * @param {Object[]} args The CustomEvent arguments. For configuration </span>
|
|
<span class="c"> * handlers, args[0] will equal the newly applied value for the property.</span>
|
|
<span class="c"> * @param {Object} obj The scope object. For configuration handlers, </span>
|
|
<span class="c"> * this will usually equal the owner.</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">configWidth</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">width</span> <span class="o">=</span> <span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">],</span>
|
|
<span class="nx">el</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">;</span>
|
|
|
|
<span class="nx">Dom</span><span class="o">.</span><span class="nx">setStyle</span><span class="o">(</span><span class="nx">el</span><span class="o">,</span> <span class="s2">"width"</span><span class="o">,</span> <span class="nx">width</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">refireEvent</span><span class="o">(</span><span class="s2">"iframe"</span><span class="o">);</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The default event handler fired when the "zIndex" property is changed.</span>
|
|
<span class="c"> * @method configzIndex</span>
|
|
<span class="c"> * @param {String} type The CustomEvent type (usually the property name)</span>
|
|
<span class="c"> * @param {Object[]} args The CustomEvent arguments. For configuration </span>
|
|
<span class="c"> * handlers, args[0] will equal the newly applied value for the property.</span>
|
|
<span class="c"> * @param {Object} obj The scope object. For configuration handlers, </span>
|
|
<span class="c"> * this will usually equal the owner.</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">configzIndex</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">zIndex</span> <span class="o">=</span> <span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">],</span>
|
|
<span class="nx">el</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(!</span> <span class="nx">zIndex</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">zIndex</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">getStyle</span><span class="o">(</span><span class="nx">el</span><span class="o">,</span> <span class="s2">"zIndex"</span><span class="o">);</span>
|
|
<span class="k">if</span> <span class="o">(!</span> <span class="nx">zIndex</span> <span class="o">||</span> <span class="nb">isNaN</span><span class="o">(</span><span class="nx">zIndex</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">zIndex</span> <span class="o">=</span> <span class="m">0</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">iframe</span> <span class="o">||</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="s2">"iframe"</span><span class="o">)</span> <span class="o">===</span> <span class="kc">true</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">zIndex</span> <span class="o"><=</span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">zIndex</span> <span class="o">=</span> <span class="m">1</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">Dom</span><span class="o">.</span><span class="nx">setStyle</span><span class="o">(</span><span class="nx">el</span><span class="o">,</span> <span class="s2">"zIndex"</span><span class="o">,</span> <span class="nx">zIndex</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="s2">"zIndex"</span><span class="o">,</span> <span class="nx">zIndex</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">iframe</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">stackIframe</span><span class="o">();</span>
|
|
<span class="o">}</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The default event handler fired when the "xy" property is changed.</span>
|
|
<span class="c"> * @method configXY</span>
|
|
<span class="c"> * @param {String} type The CustomEvent type (usually the property name)</span>
|
|
<span class="c"> * @param {Object[]} args The CustomEvent arguments. For configuration </span>
|
|
<span class="c"> * handlers, args[0] will equal the newly applied value for the property.</span>
|
|
<span class="c"> * @param {Object} obj The scope object. For configuration handlers, </span>
|
|
<span class="c"> * this will usually equal the owner.</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">configXY</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">pos</span> <span class="o">=</span> <span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">],</span>
|
|
<span class="nx">x</span> <span class="o">=</span> <span class="nx">pos</span><span class="o">[</span><span class="m">0</span><span class="o">],</span>
|
|
<span class="nx">y</span> <span class="o">=</span> <span class="nx">pos</span><span class="o">[</span><span class="m">1</span><span class="o">];</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="s2">"x"</span><span class="o">,</span> <span class="nx">x</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="s2">"y"</span><span class="o">,</span> <span class="nx">y</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeMoveEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">([</span><span class="nx">x</span><span class="o">,</span> <span class="nx">y</span><span class="o">]);</span>
|
|
|
|
<span class="nx">x</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="s2">"x"</span><span class="o">);</span>
|
|
<span class="nx">y</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="s2">"y"</span><span class="o">);</span>
|
|
|
|
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">log</span><span class="o">((</span><span class="s2">"xy: "</span> <span class="o">+</span> <span class="o">[</span><span class="nx">x</span><span class="o">,</span> <span class="nx">y</span><span class="o">]),</span> <span class="s2">"iframe"</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">refireEvent</span><span class="o">(</span><span class="s2">"iframe"</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">moveEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">([</span><span class="nx">x</span><span class="o">,</span> <span class="nx">y</span><span class="o">]);</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The default event handler fired when the "x" property is changed.</span>
|
|
<span class="c"> * @method configX</span>
|
|
<span class="c"> * @param {String} type The CustomEvent type (usually the property name)</span>
|
|
<span class="c"> * @param {Object[]} args The CustomEvent arguments. For configuration </span>
|
|
<span class="c"> * handlers, args[0] will equal the newly applied value for the property.</span>
|
|
<span class="c"> * @param {Object} obj The scope object. For configuration handlers, </span>
|
|
<span class="c"> * this will usually equal the owner.</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">configX</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">x</span> <span class="o">=</span> <span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">],</span>
|
|
<span class="nx">y</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="s2">"y"</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="s2">"x"</span><span class="o">,</span> <span class="nx">x</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="s2">"y"</span><span class="o">,</span> <span class="nx">y</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeMoveEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">([</span><span class="nx">x</span><span class="o">,</span> <span class="nx">y</span><span class="o">]);</span>
|
|
|
|
<span class="nx">x</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="s2">"x"</span><span class="o">);</span>
|
|
<span class="nx">y</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="s2">"y"</span><span class="o">);</span>
|
|
|
|
<span class="nx">Dom</span><span class="o">.</span><span class="nx">setX</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">,</span> <span class="nx">x</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="s2">"xy"</span><span class="o">,</span> <span class="o">[</span><span class="nx">x</span><span class="o">,</span> <span class="nx">y</span><span class="o">],</span> <span class="kc">true</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">refireEvent</span><span class="o">(</span><span class="s2">"iframe"</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">moveEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">([</span><span class="nx">x</span><span class="o">,</span> <span class="nx">y</span><span class="o">]);</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The default event handler fired when the "y" property is changed.</span>
|
|
<span class="c"> * @method configY</span>
|
|
<span class="c"> * @param {String} type The CustomEvent type (usually the property name)</span>
|
|
<span class="c"> * @param {Object[]} args The CustomEvent arguments. For configuration </span>
|
|
<span class="c"> * handlers, args[0] will equal the newly applied value for the property.</span>
|
|
<span class="c"> * @param {Object} obj The scope object. For configuration handlers, </span>
|
|
<span class="c"> * this will usually equal the owner.</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">configY</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">x</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="s2">"x"</span><span class="o">),</span>
|
|
<span class="nx">y</span> <span class="o">=</span> <span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="s2">"x"</span><span class="o">,</span> <span class="nx">x</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="s2">"y"</span><span class="o">,</span> <span class="nx">y</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeMoveEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">([</span><span class="nx">x</span><span class="o">,</span> <span class="nx">y</span><span class="o">]);</span>
|
|
|
|
<span class="nx">x</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="s2">"x"</span><span class="o">);</span>
|
|
<span class="nx">y</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="s2">"y"</span><span class="o">);</span>
|
|
|
|
<span class="nx">Dom</span><span class="o">.</span><span class="nx">setY</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">,</span> <span class="nx">y</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="s2">"xy"</span><span class="o">,</span> <span class="o">[</span><span class="nx">x</span><span class="o">,</span> <span class="nx">y</span><span class="o">],</span> <span class="kc">true</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">refireEvent</span><span class="o">(</span><span class="s2">"iframe"</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">moveEvent</span><span class="o">.</span><span class="nx">fire</span><span class="o">([</span><span class="nx">x</span><span class="o">,</span> <span class="nx">y</span><span class="o">]);</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Shows the iframe shim, if it has been enabled.</span>
|
|
<span class="c"> * @method showIframe</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">showIframe</span><span class="o">:</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">oIFrame</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">iframe</span><span class="o">,</span>
|
|
<span class="nx">oParentNode</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">oIFrame</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">oParentNode</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">oParentNode</span> <span class="o">!=</span> <span class="nx">oIFrame</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">_addToParent</span><span class="o">(</span><span class="nx">oParentNode</span><span class="o">,</span> <span class="nx">oIFrame</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="nx">oIFrame</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">display</span> <span class="o">=</span> <span class="s2">"block"</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Hides the iframe shim, if it has been enabled.</span>
|
|
<span class="c"> * @method hideIframe</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">hideIframe</span><span class="o">:</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">iframe</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">iframe</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">display</span> <span class="o">=</span> <span class="s2">"none"</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Syncronizes the size and position of iframe shim to that of its </span>
|
|
<span class="c"> * corresponding Overlay instance.</span>
|
|
<span class="c"> * @method syncIframe</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">syncIframe</span><span class="o">:</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">oIFrame</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">iframe</span><span class="o">,</span>
|
|
<span class="nx">oElement</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">,</span>
|
|
<span class="nx">nOffset</span> <span class="o">=</span> <span class="nx">Overlay</span><span class="o">.</span><span class="nx">IFRAME_OFFSET</span><span class="o">,</span>
|
|
<span class="nx">nDimensionOffset</span> <span class="o">=</span> <span class="o">(</span><span class="nx">nOffset</span> <span class="o">*</span> <span class="m">2</span><span class="o">),</span>
|
|
<span class="nx">aXY</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">oIFrame</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="c">// Size <iframe></span>
|
|
<span class="c"></span> <span class="nx">oIFrame</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">width</span> <span class="o">=</span> <span class="o">(</span><span class="nx">oElement</span><span class="o">.</span><span class="nx">offsetWidth</span> <span class="o">+</span> <span class="nx">nDimensionOffset</span> <span class="o">+</span> <span class="s2">"px"</span><span class="o">);</span>
|
|
<span class="nx">oIFrame</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">height</span> <span class="o">=</span> <span class="o">(</span><span class="nx">oElement</span><span class="o">.</span><span class="nx">offsetHeight</span> <span class="o">+</span> <span class="nx">nDimensionOffset</span> <span class="o">+</span> <span class="s2">"px"</span><span class="o">);</span>
|
|
|
|
<span class="c">// Position <iframe></span>
|
|
<span class="c"></span> <span class="nx">aXY</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="s2">"xy"</span><span class="o">);</span>
|
|
|
|
<span class="k">if</span> <span class="o">(!</span><span class="nx">Lang</span><span class="o">.</span><span class="nx">isArray</span><span class="o">(</span><span class="nx">aXY</span><span class="o">)</span> <span class="o">||</span> <span class="o">(</span><span class="nb">isNaN</span><span class="o">(</span><span class="nx">aXY</span><span class="o">[</span><span class="m">0</span><span class="o">])</span> <span class="o">||</span> <span class="nb">isNaN</span><span class="o">(</span><span class="nx">aXY</span><span class="o">[</span><span class="m">1</span><span class="o">])))</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">syncPosition</span><span class="o">();</span>
|
|
<span class="nx">aXY</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="s2">"xy"</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="nx">Dom</span><span class="o">.</span><span class="nx">setXY</span><span class="o">(</span><span class="nx">oIFrame</span><span class="o">,</span> <span class="o">[(</span><span class="nx">aXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">-</span> <span class="nx">nOffset</span><span class="o">),</span> <span class="o">(</span><span class="nx">aXY</span><span class="o">[</span><span class="m">1</span><span class="o">]</span> <span class="o">-</span> <span class="nx">nOffset</span><span class="o">)]);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Sets the zindex of the iframe shim, if it exists, based on the zindex of</span>
|
|
<span class="c"> * the Overlay element. The zindex of the iframe is set to be one less </span>
|
|
<span class="c"> * than the Overlay element's zindex.</span>
|
|
<span class="c"> * </span>
|
|
<span class="c"> * <p>NOTE: This method will not bump up the zindex of the Overlay element</span>
|
|
<span class="c"> * to ensure that the iframe shim has a non-negative zindex.</span>
|
|
<span class="c"> * If you require the iframe zindex to be 0 or higher, the zindex of </span>
|
|
<span class="c"> * the Overlay element should be set to a value greater than 0, before </span>
|
|
<span class="c"> * this method is called.</span>
|
|
<span class="c"> * </p></span>
|
|
<span class="c"> * @method stackIframe</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">stackIframe</span><span class="o">:</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">iframe</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">overlayZ</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">getStyle</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">,</span> <span class="s2">"zIndex"</span><span class="o">);</span>
|
|
<span class="k">if</span> <span class="o">(!</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isUndefined</span><span class="o">(</span><span class="nx">overlayZ</span><span class="o">)</span> <span class="o">&&</span> <span class="o">!</span><span class="nb">isNaN</span><span class="o">(</span><span class="nx">overlayZ</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">Dom</span><span class="o">.</span><span class="nx">setStyle</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">iframe</span><span class="o">,</span> <span class="s2">"zIndex"</span><span class="o">,</span> <span class="o">(</span><span class="nx">overlayZ</span> <span class="o">-</span> <span class="m">1</span><span class="o">));</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The default event handler fired when the "iframe" property is changed.</span>
|
|
<span class="c"> * @method configIframe</span>
|
|
<span class="c"> * @param {String} type The CustomEvent type (usually the property name)</span>
|
|
<span class="c"> * @param {Object[]} args The CustomEvent arguments. For configuration </span>
|
|
<span class="c"> * handlers, args[0] will equal the newly applied value for the property.</span>
|
|
<span class="c"> * @param {Object} obj The scope object. For configuration handlers, </span>
|
|
<span class="c"> * this will usually equal the owner.</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">configIframe</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">bIFrame</span> <span class="o">=</span> <span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
|
|
|
|
<span class="k">function</span> <span class="nx">createIFrame</span><span class="o">()</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">oIFrame</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">iframe</span><span class="o">,</span>
|
|
<span class="nx">oElement</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">,</span>
|
|
<span class="nx">oParent</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(!</span><span class="nx">oIFrame</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(!</span><span class="nx">m_oIFrameTemplate</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">m_oIFrameTemplate</span> <span class="o">=</span> <span class="nb">document</span><span class="o">.</span><span class="nx">createElement</span><span class="o">(</span><span class="s2">"iframe"</span><span class="o">);</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">isSecure</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">m_oIFrameTemplate</span><span class="o">.</span><span class="nx">src</span> <span class="o">=</span> <span class="nx">Overlay</span><span class="o">.</span><span class="nx">IFRAME_SRC</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="c">/*</span>
|
|
<span class="c"> Set the opacity of the <iframe> to 0 so that it </span>
|
|
<span class="c"> doesn't modify the opacity of any transparent </span>
|
|
<span class="c"> elements that may be on top of it (like a shadow).</span>
|
|
<span class="c"> */</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">env</span><span class="o">.</span><span class="nx">ua</span><span class="o">.</span><span class="nx">ie</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">m_oIFrameTemplate</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">filter</span> <span class="o">=</span> <span class="s2">"alpha(opacity=0)"</span><span class="o">;</span>
|
|
<span class="c">/*</span>
|
|
<span class="c"> Need to set the "frameBorder" property to 0 </span>
|
|
<span class="c"> supress the default <iframe> border in IE. </span>
|
|
<span class="c"> Setting the CSS "border" property alone </span>
|
|
<span class="c"> doesn't supress it.</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">m_oIFrameTemplate</span><span class="o">.</span><span class="nx">frameBorder</span> <span class="o">=</span> <span class="m">0</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="k">else</span> <span class="o">{</span>
|
|
<span class="nx">m_oIFrameTemplate</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">opacity</span> <span class="o">=</span> <span class="s2">"0"</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">m_oIFrameTemplate</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">position</span> <span class="o">=</span> <span class="s2">"absolute"</span><span class="o">;</span>
|
|
<span class="nx">m_oIFrameTemplate</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">border</span> <span class="o">=</span> <span class="s2">"none"</span><span class="o">;</span>
|
|
<span class="nx">m_oIFrameTemplate</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">margin</span> <span class="o">=</span> <span class="s2">"0"</span><span class="o">;</span>
|
|
<span class="nx">m_oIFrameTemplate</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">padding</span> <span class="o">=</span> <span class="s2">"0"</span><span class="o">;</span>
|
|
<span class="nx">m_oIFrameTemplate</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">display</span> <span class="o">=</span> <span class="s2">"none"</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">oIFrame</span> <span class="o">=</span> <span class="nx">m_oIFrameTemplate</span><span class="o">.</span><span class="nx">cloneNode</span><span class="o">(</span><span class="kc">false</span><span class="o">);</span>
|
|
<span class="nx">oParent</span> <span class="o">=</span> <span class="nx">oElement</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">;</span>
|
|
|
|
<span class="k">var</span> <span class="nx">parentNode</span> <span class="o">=</span> <span class="nx">oParent</span> <span class="o">||</span> <span class="nb">document</span><span class="o">.</span><span class="nx">body</span><span class="o">;</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">_addToParent</span><span class="o">(</span><span class="nx">parentNode</span><span class="o">,</span> <span class="nx">oIFrame</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">iframe</span> <span class="o">=</span> <span class="nx">oIFrame</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="c">/*</span>
|
|
<span class="c"> Show the <iframe> before positioning it since the "setXY" </span>
|
|
<span class="c"> method of DOM requires the element be in the document </span>
|
|
<span class="c"> and visible.</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">showIframe</span><span class="o">();</span>
|
|
|
|
<span class="c">/*</span>
|
|
<span class="c"> Syncronize the size and position of the <iframe> to that </span>
|
|
<span class="c"> of the Overlay.</span>
|
|
<span class="c"> */</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">syncIframe</span><span class="o">();</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">stackIframe</span><span class="o">();</span>
|
|
|
|
<span class="c">// Add event listeners to update the <iframe> when necessary</span>
|
|
<span class="c"></span> <span class="k">if</span> <span class="o">(!</span><span class="k">this</span><span class="o">.</span><span class="nx">_hasIframeEventListeners</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">showEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">showIframe</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">hideEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">hideIframe</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">changeContentEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">syncIframe</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">_hasIframeEventListeners</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">function</span> <span class="nx">onBeforeShow</span><span class="o">()</span> <span class="o">{</span>
|
|
<span class="nx">createIFrame</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="k">this</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeShowEvent</span><span class="o">.</span><span class="nx">unsubscribe</span><span class="o">(</span><span class="nx">onBeforeShow</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">_iframeDeferred</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">bIFrame</span><span class="o">)</span> <span class="o">{</span> <span class="c">// <iframe> shim is enabled</span>
|
|
<span class="c"></span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="s2">"visible"</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">createIFrame</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="k">this</span><span class="o">);</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(!</span><span class="k">this</span><span class="o">.</span><span class="nx">_iframeDeferred</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeShowEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span><span class="nx">onBeforeShow</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">_iframeDeferred</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span> <span class="c">// <iframe> shim is disabled</span>
|
|
<span class="c"></span> <span class="k">this</span><span class="o">.</span><span class="nx">hideIframe</span><span class="o">();</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">_hasIframeEventListeners</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">showEvent</span><span class="o">.</span><span class="nx">unsubscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">showIframe</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">hideEvent</span><span class="o">.</span><span class="nx">unsubscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">hideIframe</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">changeContentEvent</span><span class="o">.</span><span class="nx">unsubscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">syncIframe</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">_hasIframeEventListeners</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Set's the container's XY value from DOM if not already set.</span>
|
|
<span class="c"> * </span>
|
|
<span class="c"> * Differs from syncPosition, in that the XY value is only sync'd with DOM if </span>
|
|
<span class="c"> * not already set. The method also refire's the XY config property event, so any</span>
|
|
<span class="c"> * beforeMove, Move event listeners are invoked.</span>
|
|
<span class="c"> * </span>
|
|
<span class="c"> * @method _primeXYFromDOM</span>
|
|
<span class="c"> * @protected</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">_primeXYFromDOM</span> <span class="o">:</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">YAHOO</span><span class="o">.</span><span class="nx">lang</span><span class="o">.</span><span class="nx">isUndefined</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="s2">"xy"</span><span class="o">)))</span> <span class="o">{</span>
|
|
<span class="c">// Set CFG XY based on DOM XY</span>
|
|
<span class="c"></span> <span class="k">this</span><span class="o">.</span><span class="nx">syncPosition</span><span class="o">();</span>
|
|
<span class="c">// Account for XY being set silently in syncPosition (no moveTo fired/called)</span>
|
|
<span class="c"></span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">refireEvent</span><span class="o">(</span><span class="s2">"xy"</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeShowEvent</span><span class="o">.</span><span class="nx">unsubscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">_primeXYFromDOM</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The default event handler fired when the "constraintoviewport" </span>
|
|
<span class="c"> * property is changed.</span>
|
|
<span class="c"> * @method configConstrainToViewport</span>
|
|
<span class="c"> * @param {String} type The CustomEvent type (usually the property name)</span>
|
|
<span class="c"> * @param {Object[]} args The CustomEvent arguments. For configuration </span>
|
|
<span class="c"> * handlers, args[0] will equal the newly applied value for </span>
|
|
<span class="c"> * the property.</span>
|
|
<span class="c"> * @param {Object} obj The scope object. For configuration handlers, </span>
|
|
<span class="c"> * this will usually equal the owner.</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">configConstrainToViewport</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">val</span> <span class="o">=</span> <span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">val</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(!</span> <span class="nx">Config</span><span class="o">.</span><span class="nx">alreadySubscribed</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">beforeMoveEvent</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">enforceConstraints</span><span class="o">,</span> <span class="k">this</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeMoveEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">enforceConstraints</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="k">if</span> <span class="o">(!</span> <span class="nx">Config</span><span class="o">.</span><span class="nx">alreadySubscribed</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">beforeShowEvent</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">_primeXYFromDOM</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeShowEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">_primeXYFromDOM</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeShowEvent</span><span class="o">.</span><span class="nx">unsubscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">_primeXYFromDOM</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">beforeMoveEvent</span><span class="o">.</span><span class="nx">unsubscribe</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">enforceConstraints</span><span class="o">,</span> <span class="k">this</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The default event handler fired when the "context" property </span>
|
|
<span class="c"> * is changed.</span>
|
|
<span class="c"> * @method configContext</span>
|
|
<span class="c"> * @param {String} type The CustomEvent type (usually the property name)</span>
|
|
<span class="c"> * @param {Object[]} args The CustomEvent arguments. For configuration </span>
|
|
<span class="c"> * handlers, args[0] will equal the newly applied value for the property.</span>
|
|
<span class="c"> * @param {Object} obj The scope object. For configuration handlers, </span>
|
|
<span class="c"> * this will usually equal the owner.</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">configContext</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">contextArgs</span> <span class="o">=</span> <span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">],</span>
|
|
<span class="nx">contextEl</span><span class="o">,</span>
|
|
<span class="nx">elementMagnetCorner</span><span class="o">,</span>
|
|
<span class="nx">contextMagnetCorner</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">contextArgs</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">contextEl</span> <span class="o">=</span> <span class="nx">contextArgs</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
|
|
<span class="nx">elementMagnetCorner</span> <span class="o">=</span> <span class="nx">contextArgs</span><span class="o">[</span><span class="m">1</span><span class="o">];</span>
|
|
<span class="nx">contextMagnetCorner</span> <span class="o">=</span> <span class="nx">contextArgs</span><span class="o">[</span><span class="m">2</span><span class="o">];</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">contextEl</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">typeof</span> <span class="nx">contextEl</span> <span class="o">==</span> <span class="s2">"string"</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="s2">"context"</span><span class="o">,</span>
|
|
<span class="o">[</span><span class="nb">document</span><span class="o">.</span><span class="nx">getElementById</span><span class="o">(</span><span class="nx">contextEl</span><span class="o">),</span>
|
|
<span class="nx">elementMagnetCorner</span><span class="o">,</span> <span class="nx">contextMagnetCorner</span><span class="o">],</span>
|
|
<span class="kc">true</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">elementMagnetCorner</span> <span class="o">&&</span> <span class="nx">contextMagnetCorner</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">align</span><span class="o">(</span><span class="nx">elementMagnetCorner</span><span class="o">,</span> <span class="nx">contextMagnetCorner</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">// END BUILT-IN PROPERTY EVENT HANDLERS //</span>
|
|
<span class="c"></span> <span class="c">/**</span>
|
|
<span class="c"> * Aligns the Overlay to its context element using the specified corner </span>
|
|
<span class="c"> * points (represented by the constants TOP_LEFT, TOP_RIGHT, BOTTOM_LEFT, </span>
|
|
<span class="c"> * and BOTTOM_RIGHT.</span>
|
|
<span class="c"> * @method align</span>
|
|
<span class="c"> * @param {String} elementAlign The String representing the corner of </span>
|
|
<span class="c"> * the Overlay that should be aligned to the context element</span>
|
|
<span class="c"> * @param {String} contextAlign The corner of the context element </span>
|
|
<span class="c"> * that the elementAlign corner should stick to.</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">align</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">elementAlign</span><span class="o">,</span> <span class="nx">contextAlign</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">contextArgs</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">getProperty</span><span class="o">(</span><span class="s2">"context"</span><span class="o">),</span>
|
|
<span class="nx">me</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
|
|
<span class="nx">context</span><span class="o">,</span>
|
|
<span class="nx">element</span><span class="o">,</span>
|
|
<span class="nx">contextRegion</span><span class="o">;</span>
|
|
|
|
<span class="k">function</span> <span class="nx">doAlign</span><span class="o">(</span><span class="nx">v</span><span class="o">,</span> <span class="nx">h</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="nx">switch</span> <span class="o">(</span><span class="nx">elementAlign</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="nx">case</span> <span class="nx">Overlay</span><span class="o">.</span><span class="nx">TOP_LEFT</span><span class="o">:</span>
|
|
<span class="nx">me</span><span class="o">.</span><span class="nx">moveTo</span><span class="o">(</span><span class="nx">h</span><span class="o">,</span> <span class="nx">v</span><span class="o">);</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
|
|
<span class="nx">case</span> <span class="nx">Overlay</span><span class="o">.</span><span class="nx">TOP_RIGHT</span><span class="o">:</span>
|
|
<span class="nx">me</span><span class="o">.</span><span class="nx">moveTo</span><span class="o">((</span><span class="nx">h</span> <span class="o">-</span> <span class="nx">element</span><span class="o">.</span><span class="nx">offsetWidth</span><span class="o">),</span> <span class="nx">v</span><span class="o">);</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
|
|
<span class="nx">case</span> <span class="nx">Overlay</span><span class="o">.</span><span class="nx">BOTTOM_LEFT</span><span class="o">:</span>
|
|
<span class="nx">me</span><span class="o">.</span><span class="nx">moveTo</span><span class="o">(</span><span class="nx">h</span><span class="o">,</span> <span class="o">(</span><span class="nx">v</span> <span class="o">-</span> <span class="nx">element</span><span class="o">.</span><span class="nx">offsetHeight</span><span class="o">));</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
|
|
<span class="nx">case</span> <span class="nx">Overlay</span><span class="o">.</span><span class="nx">BOTTOM_RIGHT</span><span class="o">:</span>
|
|
<span class="nx">me</span><span class="o">.</span><span class="nx">moveTo</span><span class="o">((</span><span class="nx">h</span> <span class="o">-</span> <span class="nx">element</span><span class="o">.</span><span class="nx">offsetWidth</span><span class="o">),</span>
|
|
<span class="o">(</span><span class="nx">v</span> <span class="o">-</span> <span class="nx">element</span><span class="o">.</span><span class="nx">offsetHeight</span><span class="o">));</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">contextArgs</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="nx">context</span> <span class="o">=</span> <span class="nx">contextArgs</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
|
|
<span class="nx">element</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">;</span>
|
|
<span class="nx">me</span> <span class="o">=</span> <span class="k">this</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(!</span> <span class="nx">elementAlign</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">elementAlign</span> <span class="o">=</span> <span class="nx">contextArgs</span><span class="o">[</span><span class="m">1</span><span class="o">];</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(!</span> <span class="nx">contextAlign</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">contextAlign</span> <span class="o">=</span> <span class="nx">contextArgs</span><span class="o">[</span><span class="m">2</span><span class="o">];</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">element</span> <span class="o">&&</span> <span class="nx">context</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">contextRegion</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">getRegion</span><span class="o">(</span><span class="nx">context</span><span class="o">);</span>
|
|
|
|
<span class="nx">switch</span> <span class="o">(</span><span class="nx">contextAlign</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="nx">case</span> <span class="nx">Overlay</span><span class="o">.</span><span class="nx">TOP_LEFT</span><span class="o">:</span>
|
|
<span class="nx">doAlign</span><span class="o">(</span><span class="nx">contextRegion</span><span class="o">.</span><span class="nx">top</span><span class="o">,</span> <span class="nx">contextRegion</span><span class="o">.</span><span class="nx">left</span><span class="o">);</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
|
|
<span class="nx">case</span> <span class="nx">Overlay</span><span class="o">.</span><span class="nx">TOP_RIGHT</span><span class="o">:</span>
|
|
<span class="nx">doAlign</span><span class="o">(</span><span class="nx">contextRegion</span><span class="o">.</span><span class="nx">top</span><span class="o">,</span> <span class="nx">contextRegion</span><span class="o">.</span><span class="nx">right</span><span class="o">);</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
|
|
<span class="nx">case</span> <span class="nx">Overlay</span><span class="o">.</span><span class="nx">BOTTOM_LEFT</span><span class="o">:</span>
|
|
<span class="nx">doAlign</span><span class="o">(</span><span class="nx">contextRegion</span><span class="o">.</span><span class="nx">bottom</span><span class="o">,</span> <span class="nx">contextRegion</span><span class="o">.</span><span class="nx">left</span><span class="o">);</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
|
|
<span class="nx">case</span> <span class="nx">Overlay</span><span class="o">.</span><span class="nx">BOTTOM_RIGHT</span><span class="o">:</span>
|
|
<span class="nx">doAlign</span><span class="o">(</span><span class="nx">contextRegion</span><span class="o">.</span><span class="nx">bottom</span><span class="o">,</span> <span class="nx">contextRegion</span><span class="o">.</span><span class="nx">right</span><span class="o">);</span>
|
|
<span class="k">break</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="o">}</span>
|
|
|
|
<span class="o">}</span>
|
|
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * The default event handler executed when the moveEvent is fired, if the </span>
|
|
<span class="c"> * "constraintoviewport" is set to true.</span>
|
|
<span class="c"> * @method enforceConstraints</span>
|
|
<span class="c"> * @param {String} type The CustomEvent type (usually the property name)</span>
|
|
<span class="c"> * @param {Object[]} args The CustomEvent arguments. For configuration </span>
|
|
<span class="c"> * handlers, args[0] will equal the newly applied value for the property.</span>
|
|
<span class="c"> * @param {Object} obj The scope object. For configuration handlers, </span>
|
|
<span class="c"> * this will usually equal the owner.</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">enforceConstraints</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">type</span><span class="o">,</span> <span class="nx">args</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">pos</span> <span class="o">=</span> <span class="nx">args</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
|
|
<span class="k">var</span> <span class="nx">cXY</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">getConstrainedXY</span><span class="o">(</span><span class="nx">pos</span><span class="o">[</span><span class="m">0</span><span class="o">],</span> <span class="nx">pos</span><span class="o">[</span><span class="m">1</span><span class="o">]);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="s2">"x"</span><span class="o">,</span> <span class="nx">cXY</span><span class="o">[</span><span class="m">0</span><span class="o">],</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="s2">"y"</span><span class="o">,</span> <span class="nx">cXY</span><span class="o">[</span><span class="m">1</span><span class="o">],</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="s2">"xy"</span><span class="o">,</span> <span class="nx">cXY</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Given x, y coordinate values, returns the calculated coordinates required to </span>
|
|
<span class="c"> * position the Overlay if it is to be constrained to the viewport, based on the </span>
|
|
<span class="c"> * current element size, viewport dimensions and scroll values.</span>
|
|
<span class="c"> *</span>
|
|
<span class="c"> * @param {Number} x The X coordinate value to be constrained</span>
|
|
<span class="c"> * @param {Number} y The Y coordinate value to be constrained</span>
|
|
<span class="c"> * @return {Array} The constrained x and y coordinates at index 0 and 1 respectively;</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">getConstrainedXY</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">x</span><span class="o">,</span> <span class="nx">y</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">nViewportOffset</span> <span class="o">=</span> <span class="nx">Overlay</span><span class="o">.</span><span class="nx">VIEWPORT_OFFSET</span><span class="o">,</span>
|
|
<span class="nx">viewPortWidth</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">getViewportWidth</span><span class="o">(),</span>
|
|
<span class="nx">viewPortHeight</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">getViewportHeight</span><span class="o">(),</span>
|
|
<span class="nx">offsetHeight</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">.</span><span class="nx">offsetHeight</span><span class="o">,</span>
|
|
<span class="nx">offsetWidth</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">.</span><span class="nx">offsetWidth</span><span class="o">,</span>
|
|
<span class="nx">scrollX</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">getDocumentScrollLeft</span><span class="o">(),</span>
|
|
<span class="nx">scrollY</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">getDocumentScrollTop</span><span class="o">();</span>
|
|
|
|
<span class="k">var</span> <span class="nx">xNew</span> <span class="o">=</span> <span class="nx">x</span><span class="o">;</span>
|
|
<span class="k">var</span> <span class="nx">yNew</span> <span class="o">=</span> <span class="nx">y</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">offsetWidth</span> <span class="o">+</span> <span class="nx">nViewportOffset</span> <span class="o"><</span> <span class="nx">viewPortWidth</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">leftConstraint</span> <span class="o">=</span> <span class="nx">scrollX</span> <span class="o">+</span> <span class="nx">nViewportOffset</span><span class="o">;</span>
|
|
<span class="k">var</span> <span class="nx">rightConstraint</span> <span class="o">=</span> <span class="nx">scrollX</span> <span class="o">+</span> <span class="nx">viewPortWidth</span> <span class="o">-</span> <span class="nx">offsetWidth</span> <span class="o">-</span> <span class="nx">nViewportOffset</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">x</span> <span class="o"><</span> <span class="nx">leftConstraint</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">xNew</span> <span class="o">=</span> <span class="nx">leftConstraint</span><span class="o">;</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">x</span> <span class="o">></span> <span class="nx">rightConstraint</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">xNew</span> <span class="o">=</span> <span class="nx">rightConstraint</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="nx">xNew</span> <span class="o">=</span> <span class="nx">nViewportOffset</span> <span class="o">+</span> <span class="nx">scrollX</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">offsetHeight</span> <span class="o">+</span> <span class="nx">nViewportOffset</span> <span class="o"><</span> <span class="nx">viewPortHeight</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">topConstraint</span> <span class="o">=</span> <span class="nx">scrollY</span> <span class="o">+</span> <span class="nx">nViewportOffset</span><span class="o">;</span>
|
|
<span class="k">var</span> <span class="nx">bottomConstraint</span> <span class="o">=</span> <span class="nx">scrollY</span> <span class="o">+</span> <span class="nx">viewPortHeight</span> <span class="o">-</span> <span class="nx">offsetHeight</span> <span class="o">-</span> <span class="nx">nViewportOffset</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">y</span> <span class="o"><</span> <span class="nx">topConstraint</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">yNew</span> <span class="o">=</span> <span class="nx">topConstraint</span><span class="o">;</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">y</span> <span class="o">></span> <span class="nx">bottomConstraint</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">yNew</span> <span class="o">=</span> <span class="nx">bottomConstraint</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="nx">yNew</span> <span class="o">=</span> <span class="nx">nViewportOffset</span> <span class="o">+</span> <span class="nx">scrollY</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">return</span> <span class="o">[</span><span class="nx">xNew</span><span class="o">,</span> <span class="nx">yNew</span><span class="o">];</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Centers the container in the viewport.</span>
|
|
<span class="c"> * @method center</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">center</span><span class="o">:</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">nViewportOffset</span> <span class="o">=</span> <span class="nx">Overlay</span><span class="o">.</span><span class="nx">VIEWPORT_OFFSET</span><span class="o">,</span>
|
|
<span class="nx">elementWidth</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">.</span><span class="nx">offsetWidth</span><span class="o">,</span>
|
|
<span class="nx">elementHeight</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">.</span><span class="nx">offsetHeight</span><span class="o">,</span>
|
|
<span class="nx">viewPortWidth</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">getViewportWidth</span><span class="o">(),</span>
|
|
<span class="nx">viewPortHeight</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">getViewportHeight</span><span class="o">(),</span>
|
|
<span class="nx">x</span><span class="o">,</span>
|
|
<span class="nx">y</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">elementWidth</span> <span class="o"><</span> <span class="nx">viewPortWidth</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">x</span> <span class="o">=</span> <span class="o">(</span><span class="nx">viewPortWidth</span> <span class="sr">/ 2) - (elementWidth /</span> <span class="m">2</span><span class="o">)</span> <span class="o">+</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">getDocumentScrollLeft</span><span class="o">();</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="nx">x</span> <span class="o">=</span> <span class="nx">nViewportOffset</span> <span class="o">+</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">getDocumentScrollLeft</span><span class="o">();</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">elementHeight</span> <span class="o"><</span> <span class="nx">viewPortHeight</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">y</span> <span class="o">=</span> <span class="o">(</span><span class="nx">viewPortHeight</span> <span class="sr">/ 2) - (elementHeight /</span> <span class="m">2</span><span class="o">)</span> <span class="o">+</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">getDocumentScrollTop</span><span class="o">();</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="nx">y</span> <span class="o">=</span> <span class="nx">nViewportOffset</span> <span class="o">+</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">getDocumentScrollTop</span><span class="o">();</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="s2">"xy"</span><span class="o">,</span> <span class="o">[</span><span class="nb">parseInt</span><span class="o">(</span><span class="nx">x</span><span class="o">,</span> <span class="m">10</span><span class="o">),</span> <span class="nb">parseInt</span><span class="o">(</span><span class="nx">y</span><span class="o">,</span> <span class="m">10</span><span class="o">)]);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">refireEvent</span><span class="o">(</span><span class="s2">"iframe"</span><span class="o">);</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Synchronizes the Panel's "xy", "x", and "y" properties with the </span>
|
|
<span class="c"> * Panel's position in the DOM. This is primarily used to update </span>
|
|
<span class="c"> * position information during drag & drop.</span>
|
|
<span class="c"> * @method syncPosition</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">syncPosition</span><span class="o">:</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">pos</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">getXY</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">);</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="s2">"x"</span><span class="o">,</span> <span class="nx">pos</span><span class="o">[</span><span class="m">0</span><span class="o">],</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="s2">"y"</span><span class="o">,</span> <span class="nx">pos</span><span class="o">[</span><span class="m">1</span><span class="o">],</span> <span class="kc">true</span><span class="o">);</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="s2">"xy"</span><span class="o">,</span> <span class="nx">pos</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
|
|
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Event handler fired when the resize monitor element is resized.</span>
|
|
<span class="c"> * @method onDomResize</span>
|
|
<span class="c"> * @param {DOMEvent} e The resize DOM event</span>
|
|
<span class="c"> * @param {Object} obj The scope object</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">onDomResize</span><span class="o">:</span> <span class="k">function</span> <span class="o">(</span><span class="nx">e</span><span class="o">,</span> <span class="nx">obj</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">me</span> <span class="o">=</span> <span class="k">this</span><span class="o">;</span>
|
|
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">superclass</span><span class="o">.</span><span class="nx">onDomResize</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="k">this</span><span class="o">,</span> <span class="nx">e</span><span class="o">,</span> <span class="nx">obj</span><span class="o">);</span>
|
|
|
|
<span class="nx">setTimeout</span><span class="o">(</span><span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
|
<span class="nx">me</span><span class="o">.</span><span class="nx">syncPosition</span><span class="o">();</span>
|
|
<span class="nx">me</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">refireEvent</span><span class="o">(</span><span class="s2">"iframe"</span><span class="o">);</span>
|
|
<span class="nx">me</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">refireEvent</span><span class="o">(</span><span class="s2">"context"</span><span class="o">);</span>
|
|
<span class="o">},</span> <span class="m">0</span><span class="o">);</span>
|
|
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Places the Overlay on top of all other instances of </span>
|
|
<span class="c"> * YAHOO.widget.Overlay.</span>
|
|
<span class="c"> * @method bringToTop</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">bringToTop</span><span class="o">:</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">aOverlays</span> <span class="o">=</span> <span class="o">[],</span>
|
|
<span class="nx">oElement</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">element</span><span class="o">;</span>
|
|
|
|
<span class="k">function</span> <span class="nx">compareZIndexDesc</span><span class="o">(</span><span class="nx">p_oOverlay1</span><span class="o">,</span> <span class="nx">p_oOverlay2</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">sZIndex1</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">getStyle</span><span class="o">(</span><span class="nx">p_oOverlay1</span><span class="o">,</span> <span class="s2">"zIndex"</span><span class="o">),</span>
|
|
<span class="nx">sZIndex2</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">getStyle</span><span class="o">(</span><span class="nx">p_oOverlay2</span><span class="o">,</span> <span class="s2">"zIndex"</span><span class="o">),</span>
|
|
|
|
<span class="nx">nZIndex1</span> <span class="o">=</span> <span class="o">(!</span><span class="nx">sZIndex1</span> <span class="o">||</span> <span class="nb">isNaN</span><span class="o">(</span><span class="nx">sZIndex1</span><span class="o">))</span> <span class="o">?</span> <span class="m">0</span> <span class="o">:</span> <span class="nb">parseInt</span><span class="o">(</span><span class="nx">sZIndex1</span><span class="o">,</span> <span class="m">10</span><span class="o">),</span>
|
|
<span class="nx">nZIndex2</span> <span class="o">=</span> <span class="o">(!</span><span class="nx">sZIndex2</span> <span class="o">||</span> <span class="nb">isNaN</span><span class="o">(</span><span class="nx">sZIndex2</span><span class="o">))</span> <span class="o">?</span> <span class="m">0</span> <span class="o">:</span> <span class="nb">parseInt</span><span class="o">(</span><span class="nx">sZIndex2</span><span class="o">,</span> <span class="m">10</span><span class="o">);</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">nZIndex1</span> <span class="o">></span> <span class="nx">nZIndex2</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">return</span> <span class="o">-</span><span class="m">1</span><span class="o">;</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">nZIndex1</span> <span class="o"><</span> <span class="nx">nZIndex2</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">return</span> <span class="m">1</span><span class="o">;</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="k">return</span> <span class="m">0</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">function</span> <span class="nx">isOverlayElement</span><span class="o">(</span><span class="nx">p_oElement</span><span class="o">)</span> <span class="o">{</span>
|
|
|
|
<span class="k">var</span> <span class="nx">oOverlay</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">hasClass</span><span class="o">(</span><span class="nx">p_oElement</span><span class="o">,</span> <span class="nx">Overlay</span><span class="o">.</span><span class="nx">CSS_OVERLAY</span><span class="o">),</span>
|
|
<span class="nx">Panel</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Panel</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">oOverlay</span> <span class="o">&&</span> <span class="o">!</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">isAncestor</span><span class="o">(</span><span class="nx">oElement</span><span class="o">,</span> <span class="nx">oOverlay</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">Panel</span> <span class="o">&&</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">hasClass</span><span class="o">(</span><span class="nx">p_oElement</span><span class="o">,</span> <span class="nx">Panel</span><span class="o">.</span><span class="nx">CSS_PANEL</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">aOverlays</span><span class="o">[</span><span class="nx">aOverlays</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="nx">p_oElement</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">;</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
|
|
<span class="nx">aOverlays</span><span class="o">[</span><span class="nx">aOverlays</span><span class="o">.</span><span class="nx">length</span><span class="o">]</span> <span class="o">=</span> <span class="nx">p_oElement</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="nx">Dom</span><span class="o">.</span><span class="nx">getElementsBy</span><span class="o">(</span><span class="nx">isOverlayElement</span><span class="o">,</span> <span class="s2">"DIV"</span><span class="o">,</span> <span class="nb">document</span><span class="o">.</span><span class="nx">body</span><span class="o">);</span>
|
|
|
|
<span class="nx">aOverlays</span><span class="o">.</span><span class="nx">sort</span><span class="o">(</span><span class="nx">compareZIndexDesc</span><span class="o">);</span>
|
|
|
|
<span class="k">var</span> <span class="nx">oTopOverlay</span> <span class="o">=</span> <span class="nx">aOverlays</span><span class="o">[</span><span class="m">0</span><span class="o">],</span>
|
|
<span class="nx">nTopZIndex</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">oTopOverlay</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">nTopZIndex</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">getStyle</span><span class="o">(</span><span class="nx">oTopOverlay</span><span class="o">,</span> <span class="s2">"zIndex"</span><span class="o">);</span>
|
|
|
|
<span class="k">if</span> <span class="o">(!</span><span class="nb">isNaN</span><span class="o">(</span><span class="nx">nTopZIndex</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">bRequiresBump</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">oTopOverlay</span> <span class="o">!=</span> <span class="nx">oElement</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="nx">bRequiresBump</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
|
|
<span class="o">}</span> <span class="k">else</span> <span class="k">if</span> <span class="o">(</span><span class="nx">aOverlays</span><span class="o">.</span><span class="nx">length</span> <span class="o">></span> <span class="m">1</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">var</span> <span class="nx">nNextZIndex</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">getStyle</span><span class="o">(</span><span class="nx">aOverlays</span><span class="o">[</span><span class="m">1</span><span class="o">],</span> <span class="s2">"zIndex"</span><span class="o">);</span>
|
|
<span class="c">// Don't rely on DOM order to stack if 2 overlays are at the same zindex.</span>
|
|
<span class="c"></span> <span class="k">if</span> <span class="o">(!</span><span class="nb">isNaN</span><span class="o">(</span><span class="nx">nNextZIndex</span><span class="o">)</span> <span class="o">&&</span> <span class="o">(</span><span class="nx">nTopZIndex</span> <span class="o">==</span> <span class="nx">nNextZIndex</span><span class="o">))</span> <span class="o">{</span>
|
|
<span class="nx">bRequiresBump</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="k">if</span> <span class="o">(</span><span class="nx">bRequiresBump</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">cfg</span><span class="o">.</span><span class="nx">setProperty</span><span class="o">(</span><span class="s2">"zindex"</span><span class="o">,</span> <span class="o">(</span><span class="nb">parseInt</span><span class="o">(</span><span class="nx">nTopZIndex</span><span class="o">,</span> <span class="m">10</span><span class="o">)</span> <span class="o">+</span> <span class="m">2</span><span class="o">));</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">}</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Removes the Overlay element from the DOM and sets all child </span>
|
|
<span class="c"> * elements to null.</span>
|
|
<span class="c"> * @method destroy</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">destroy</span><span class="o">:</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
|
|
|
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">iframe</span><span class="o">)</span> <span class="o">{</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">iframe</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">.</span><span class="nx">removeChild</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">iframe</span><span class="o">);</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">iframe</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
|
|
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">windowResizeEvent</span><span class="o">.</span><span class="nx">unsubscribe</span><span class="o">(</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">doCenterOnDOMEvent</span><span class="o">,</span> <span class="k">this</span><span class="o">);</span>
|
|
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">windowScrollEvent</span><span class="o">.</span><span class="nx">unsubscribe</span><span class="o">(</span>
|
|
<span class="k">this</span><span class="o">.</span><span class="nx">doCenterOnDOMEvent</span><span class="o">,</span> <span class="k">this</span><span class="o">);</span>
|
|
|
|
<span class="nx">Overlay</span><span class="o">.</span><span class="nx">superclass</span><span class="o">.</span><span class="nx">destroy</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="k">this</span><span class="o">);</span>
|
|
<span class="o">},</span>
|
|
|
|
<span class="c">/**</span>
|
|
<span class="c"> * Returns a String representation of the object.</span>
|
|
<span class="c"> * @method toString</span>
|
|
<span class="c"> * @return {String} The string representation of the Overlay.</span>
|
|
<span class="c"> */</span>
|
|
<span class="nx">toString</span><span class="o">:</span> <span class="k">function</span> <span class="o">()</span> <span class="o">{</span>
|
|
<span class="k">return</span> <span class="s2">"Overlay "</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">id</span><span class="o">;</span>
|
|
<span class="o">}</span>
|
|
|
|
<span class="o">});</span>
|
|
<span class="o">}());</span>
|
|
</pre></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="yui-b">
|
|
<div class="nav">
|
|
|
|
<div class="module">
|
|
<h4>Modules</h4>
|
|
<ul class="content">
|
|
|
|
<li class=""><a href="module_animation.html">animation</a></li>
|
|
|
|
<li class=""><a href="module_autocomplete.html">autocomplete</a></li>
|
|
|
|
<li class=""><a href="module_button.html">button</a></li>
|
|
|
|
<li class=""><a href="module_calendar.html">calendar</a></li>
|
|
|
|
<li class=""><a href="module_charts.html">charts</a></li>
|
|
|
|
<li class=""><a href="module_colorpicker.html">colorpicker</a></li>
|
|
|
|
<li class=""><a href="module_connection.html">connection</a></li>
|
|
|
|
<li class="selected"><a href="module_container.html">container</a></li>
|
|
|
|
<li class=""><a href="module_cookie.html">cookie</a></li>
|
|
|
|
<li class=""><a href="module_datasource.html">datasource</a></li>
|
|
|
|
<li class=""><a href="module_datatable.html">datatable</a></li>
|
|
|
|
<li class=""><a href="module_dom.html">dom</a></li>
|
|
|
|
<li class=""><a href="module_dragdrop.html">dragdrop</a></li>
|
|
|
|
<li class=""><a href="module_editor.html">editor</a></li>
|
|
|
|
<li class=""><a href="module_element.html">element</a></li>
|
|
|
|
<li class=""><a href="module_event.html">event</a></li>
|
|
|
|
<li class=""><a href="module_get.html">get</a></li>
|
|
|
|
<li class=""><a href="module_history.html">history</a></li>
|
|
|
|
<li class=""><a href="module_imagecropper.html">imagecropper</a></li>
|
|
|
|
<li class=""><a href="module_imageloader.html">imageloader</a></li>
|
|
|
|
<li class=""><a href="module_json.html">json</a></li>
|
|
|
|
<li class=""><a href="module_layout.html">layout</a></li>
|
|
|
|
<li class=""><a href="module_logger.html">logger</a></li>
|
|
|
|
<li class=""><a href="module_menu.html">menu</a></li>
|
|
|
|
<li class=""><a href="module_profiler.html">profiler</a></li>
|
|
|
|
<li class=""><a href="module_profilerviewer.html">profilerviewer</a></li>
|
|
|
|
<li class=""><a href="module_resize.html">resize</a></li>
|
|
|
|
<li class=""><a href="module_selector.html">selector</a></li>
|
|
|
|
<li class=""><a href="module_slider.html">slider</a></li>
|
|
|
|
<li class=""><a href="module_tabview.html">tabview</a></li>
|
|
|
|
<li class=""><a href="module_treeview.html">treeview</a></li>
|
|
|
|
<li class=""><a href="module_uploader.html">uploader</a></li>
|
|
|
|
<li class=""><a href="module_yahoo.html">yahoo</a></li>
|
|
|
|
<li class=""><a href="module_yuiloader.html">yuiloader</a></li>
|
|
|
|
<li class=""><a href="module_yuitest.html">yuitest</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="module">
|
|
<h4>Classes</h4>
|
|
<ul class="content">
|
|
<li class=""><a href="YAHOO.util.Config.html">YAHOO.util.Config</a></li>
|
|
<li class=""><a href="YAHOO.widget.ContainerEffect.html">YAHOO.widget.ContainerEffect</a></li>
|
|
<li class=""><a href="YAHOO.widget.Dialog.html">YAHOO.widget.Dialog</a></li>
|
|
<li class=""><a href="YAHOO.widget.Module.html">YAHOO.widget.Module</a></li>
|
|
<li class=""><a href="YAHOO.widget.Overlay.html">YAHOO.widget.Overlay</a></li>
|
|
<li class=""><a href="YAHOO.widget.OverlayManager.html">YAHOO.widget.OverlayManager</a></li>
|
|
<li class=""><a href="YAHOO.widget.Panel.html">YAHOO.widget.Panel</a></li>
|
|
<li class=""><a href="YAHOO.widget.SimpleDialog.html">YAHOO.widget.SimpleDialog</a></li>
|
|
<li class=""><a href="YAHOO.widget.Tooltip.html">YAHOO.widget.Tooltip</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="module">
|
|
<h4>Files</h4>
|
|
<ul class="content">
|
|
<li class=""><a href="Config.js.html">Config.js</a></li>
|
|
<li class=""><a href="ContainerEffect.js.html">ContainerEffect.js</a></li>
|
|
<li class=""><a href="Dialog.js.html">Dialog.js</a></li>
|
|
<li class=""><a href="Module.js.html">Module.js</a></li>
|
|
<li class="selected"><a href="Overlay.js.html">Overlay.js</a></li>
|
|
<li class=""><a href="OverlayManager.js.html">OverlayManager.js</a></li>
|
|
<li class=""><a href="Panel.js.html">Panel.js</a></li>
|
|
<li class=""><a href="SimpleDialog.js.html">SimpleDialog.js</a></li>
|
|
<li class=""><a href="Tooltip.js.html">Tooltip.js</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div id="ft">
|
|
<hr />
|
|
Copyright © 2007 Yahoo! Inc. All rights reserved.
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|