webgui/www/extras/yui/docs/editor.js.html
JT Smith 20f8df1291 upgrading to YUI 2.6
data tables are going to need some work yet, but the other stuff seems to be working 100%
2008-10-22 23:53:29 +00:00

2186 lines
363 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>API: editor editor.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>editor&nbsp; <span class="subtitle">2.6.0</span></h3>
<p>
<a href="./index.html">Yahoo! UI Library</a>
&gt; <a href="./module_editor.html">editor</a>
&gt; editor.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" /> <label for="showprivate">Show Private</label></span>
<span id="classopts"><input type="checkbox" name="showprotected" id="showprotected" /> <label for="showprotected">Show Protected</label></span>
<span id="classopts"><input type="checkbox" name="showdeprecated" id="showdeprecated" /> <label for="showdeprecated">Show Deprecated</label></span>
</form>
<div id="srcout">
<style>
#doc3 #classopts { display:none; }
</style>
<div class="highlight" ><pre><span class="c">/**</span>
<span class="c"> * @module editor</span>
<span class="c"> * @description &lt;p&gt;The Rich Text Editor is a UI control that replaces a standard HTML textarea; it allows for the rich formatting of text content, including common structural treatments like lists, formatting treatments like bold and italic text, and drag-and-drop inclusion and sizing of images. The Rich Text Editor&#39;s toolbar is extensible via a plugin architecture so that advanced implementations can achieve a high degree of customization.&lt;/p&gt;</span>
<span class="c"> * @namespace YAHOO.widget</span>
<span class="c"> * @requires yahoo, dom, element, event, container_core, simpleeditor</span>
<span class="c"> * @optional dragdrop, animation, menu, button</span>
<span class="c"> * @beta</span>
<span class="c"> */</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">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">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">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">Toolbar</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">Toolbar</span><span class="o">;</span>
<span class="c">/**</span>
<span class="c"> * The Rich Text Editor is a UI control that replaces a standard HTML textarea; it allows for the rich formatting of text content, including common structural treatments like lists, formatting treatments like bold and italic text, and drag-and-drop inclusion and sizing of images. The Rich Text Editor&#39;s toolbar is extensible via a plugin architecture so that advanced implementations can achieve a high degree of customization.</span>
<span class="c"> * @constructor</span>
<span class="c"> * @class Editor</span>
<span class="c"> * @extends YAHOO.widget.SimpleEditor</span>
<span class="c"> * @param {String/HTMLElement} el The textarea element to turn into an editor.</span>
<span class="c"> * @param {Object} attrs Object liternal containing configuration parameters.</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">Editor</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">attrs</span><span class="o">)</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="s1">&#39;Editor Initalizing&#39;</span><span class="o">,</span> <span class="s1">&#39;info&#39;</span><span class="o">,</span> <span class="s1">&#39;Editor&#39;</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">Editor</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">attrs</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">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Editor</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">SimpleEditor</span><span class="o">,</span> <span class="o">{</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @property _undoCache</span>
<span class="c"> * @description An Array hash of the Undo Levels.</span>
<span class="c"> * @type Array</span>
<span class="c"> */</span>
<span class="nx">_undoCache</span><span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @property _undoLevel</span>
<span class="c"> * @description The index of the current undo state.</span>
<span class="c"> * @type Number</span>
<span class="c"> */</span>
<span class="nx">_undoLevel</span><span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @method _hasUndoLevel</span>
<span class="c"> * @description Checks to see if we have an undo level available</span>
<span class="c"> * @return Boolean</span>
<span class="c"> */</span>
<span class="nx">_hasUndoLevel</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="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">_undoCache</span><span class="o">.</span><span class="nx">length</span> <span class="o">&amp;&amp;</span> <span class="k">this</span><span class="o">.</span><span class="nx">_undoLevel</span><span class="o">);</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @method _undoNodeChange</span>
<span class="c"> * @description nodeChange listener for undo processing</span>
<span class="c"> */</span>
<span class="nx">_undoNodeChange</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">undo_button</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">toolbar</span><span class="o">.</span><span class="nx">getButtonByValue</span><span class="o">(</span><span class="s1">&#39;undo&#39;</span><span class="o">),</span>
<span class="nx">redo_button</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">toolbar</span><span class="o">.</span><span class="nx">getButtonByValue</span><span class="o">(</span><span class="s1">&#39;redo&#39;</span><span class="o">);</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">undo_button</span> <span class="o">&amp;&amp;</span> <span class="nx">redo_button</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">_hasUndoLevel</span><span class="o">())</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">toolbar</span><span class="o">.</span><span class="nx">enableButton</span><span class="o">(</span><span class="nx">undo_button</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">_undoLevel</span> <span class="o">&lt;</span> <span class="k">this</span><span class="o">.</span><span class="nx">_undoCache</span><span class="o">.</span><span class="nx">length</span><span class="o">)</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">toolbar</span><span class="o">.</span><span class="nx">enableButton</span><span class="o">(</span><span class="nx">redo_button</span><span class="o">);</span>
<span class="o">}</span>
<span class="o">}</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @method _checkUndo</span>
<span class="c"> * @description Prunes the undo cache when it reaches the maxUndo config</span>
<span class="c"> */</span>
<span class="nx">_checkUndo</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">len</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_undoCache</span><span class="o">.</span><span class="nx">length</span><span class="o">,</span>
<span class="nx">tmp</span> <span class="o">=</span> <span class="o">[];</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">len</span> <span class="o">&gt;=</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;maxUndo&#39;</span><span class="o">))</span> <span class="o">{</span>
<span class="c">//YAHOO.log(&#39;Undo cache too large (&#39; + len + &#39;), pruning..&#39;, &#39;info&#39;, &#39;SimpleEditor&#39;);</span>
<span class="c"></span> <span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="o">(</span><span class="nx">len</span> <span class="o">-</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;maxUndo&#39;</span><span class="o">));</span> <span class="nx">i</span> <span class="o">&lt;</span> <span class="nx">len</span><span class="o">;</span> <span class="nx">i</span><span class="o">++)</span> <span class="o">{</span>
<span class="nx">tmp</span><span class="o">.</span><span class="nx">push</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">_undoCache</span><span class="o">[</span><span class="nx">i</span><span class="o">]);</span>
<span class="o">}</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_undoCache</span> <span class="o">=</span> <span class="nx">tmp</span><span class="o">;</span>
<span class="o">}</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @method _putUndo</span>
<span class="c"> * @description Puts the content of the Editor into the _undoCache.</span>
<span class="c"> * //TODO Convert the hash to a series of TEXTAREAS to store state in.</span>
<span class="c"> * @param {String} str The content of the Editor</span>
<span class="c"> */</span>
<span class="nx">_putUndo</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">str</span><span class="o">)</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_undoCache</span><span class="o">.</span><span class="nx">push</span><span class="o">(</span><span class="nx">str</span><span class="o">);</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @method _getUndo</span>
<span class="c"> * @description Get&#39;s a level from the undo cache.</span>
<span class="c"> * @param {Number} index The index of the undo level we want to get.</span>
<span class="c"> * @return {String}</span>
<span class="c"> */</span>
<span class="nx">_getUndo</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">index</span><span class="o">)</span> <span class="o">{</span>
<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">_undoCache</span><span class="o">[</span><span class="nx">index</span><span class="o">];</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @method _storeUndo</span>
<span class="c"> * @description Method to call when you want to store an undo state. Currently called from nodeChange and _handleKeyUp</span>
<span class="c"> */</span>
<span class="nx">_storeUndo</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">_lastCommand</span> <span class="o">===</span> <span class="s1">&#39;undo&#39;</span> <span class="o">||</span> <span class="k">this</span><span class="o">.</span><span class="nx">_lastCommand</span> <span class="o">===</span> <span class="s1">&#39;redo&#39;</span><span class="o">)</span> <span class="o">{</span>
<span class="k">return</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="k">this</span><span class="o">.</span><span class="nx">_undoCache</span><span class="o">)</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_undoCache</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">_checkUndo</span><span class="o">();</span>
<span class="k">var</span> <span class="nx">str</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">getEditorHTML</span><span class="o">();</span>
<span class="k">var</span> <span class="nx">last</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_undoCache</span><span class="o">[</span><span class="k">this</span><span class="o">.</span><span class="nx">_undoCache</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="k">if</span> <span class="o">(</span><span class="nx">last</span><span class="o">)</span> <span class="o">{</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">str</span> <span class="o">!==</span> <span class="nx">last</span><span class="o">)</span> <span class="o">{</span>
<span class="c">//YAHOO.log(&#39;Storing Undo&#39;, &#39;info&#39;, &#39;SimpleEditor&#39;);</span>
<span class="c"></span> <span class="k">this</span><span class="o">.</span><span class="nx">_putUndo</span><span class="o">(</span><span class="nx">str</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">//YAHOO.log(&#39;Storing Undo&#39;, &#39;info&#39;, &#39;SimpleEditor&#39;);</span>
<span class="c"></span> <span class="k">this</span><span class="o">.</span><span class="nx">_putUndo</span><span class="o">(</span><span class="nx">str</span><span class="o">);</span>
<span class="o">}</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_undoLevel</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_undoCache</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_undoNodeChange</span><span class="o">();</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @property STR_BEFORE_EDITOR</span>
<span class="c"> * @description The accessibility string for the element before the iFrame</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">STR_BEFORE_EDITOR</span><span class="o">:</span> <span class="s1">&#39;This text field can contain stylized text and graphics. To cycle through all formatting options, use the keyboard shortcut Control + Shift + T to place focus on the toolbar and navigate between option heading names. &lt;h4&gt;Common formatting keyboard shortcuts:&lt;/h4&gt;&lt;ul&gt;&lt;li&gt;Control Shift B sets text to bold&lt;/li&gt; &lt;li&gt;Control Shift I sets text to italic&lt;/li&gt; &lt;li&gt;Control Shift U underlines text&lt;/li&gt; &lt;li&gt;Control Shift [ aligns text left&lt;/li&gt; &lt;li&gt;Control Shift | centers text&lt;/li&gt; &lt;li&gt;Control Shift ] aligns text right&lt;/li&gt; &lt;li&gt;Control Shift L adds an HTML link&lt;/li&gt; &lt;li&gt;To exit this text editor use the keyboard shortcut Control + Shift + ESC.&lt;/li&gt;&lt;/ul&gt;&#39;</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @property STR_CLOSE_WINDOW</span>
<span class="c"> * @description The Title of the close button in the Editor Window</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">STR_CLOSE_WINDOW</span><span class="o">:</span> <span class="s1">&#39;Close Window&#39;</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @property STR_CLOSE_WINDOW_NOTE</span>
<span class="c"> * @description A note appearing in the Editor Window to tell the user that the Escape key will close the window</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">STR_CLOSE_WINDOW_NOTE</span><span class="o">:</span> <span class="s1">&#39;To close this window use the Control + Shift + W key&#39;</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @property STR_IMAGE_PROP_TITLE</span>
<span class="c"> * @description The title for the Image Property Editor Window</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">STR_IMAGE_PROP_TITLE</span><span class="o">:</span> <span class="s1">&#39;Image Options&#39;</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @property STR_IMAGE_URL</span>
<span class="c"> * @description The label string for Image URL</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">STR_IMAGE_URL</span><span class="o">:</span> <span class="s1">&#39;Image URL&#39;</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @property STR_IMAGE_TITLE</span>
<span class="c"> * @description The label string for Image Description</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">STR_IMAGE_TITLE</span><span class="o">:</span> <span class="s1">&#39;Description&#39;</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @property STR_IMAGE_SIZE</span>
<span class="c"> * @description The label string for Image Size</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">STR_IMAGE_SIZE</span><span class="o">:</span> <span class="s1">&#39;Size&#39;</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @property STR_IMAGE_ORIG_SIZE</span>
<span class="c"> * @description The label string for Original Image Size</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">STR_IMAGE_ORIG_SIZE</span><span class="o">:</span> <span class="s1">&#39;Original Size&#39;</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @property STR_IMAGE_COPY</span>
<span class="c"> * @description The label string for the image copy and paste message for Opera and Safari</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">STR_IMAGE_COPY</span><span class="o">:</span> <span class="s1">&#39;&lt;span class=&quot;tip&quot;&gt;&lt;span class=&quot;icon icon-info&quot;&gt;&lt;/span&gt;&lt;strong&gt;Note:&lt;/strong&gt;To move this image just highlight it, cut, and paste where ever you\&#39;d like.&lt;/span&gt;&#39;</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @property STR_IMAGE_PADDING</span>
<span class="c"> * @description The label string for the image padding.</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">STR_IMAGE_PADDING</span><span class="o">:</span> <span class="s1">&#39;Padding&#39;</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @property STR_IMAGE_BORDER</span>
<span class="c"> * @description The label string for the image border.</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">STR_IMAGE_BORDER</span><span class="o">:</span> <span class="s1">&#39;Border&#39;</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @property STR_IMAGE_BORDER_SIZE</span>
<span class="c"> * @description The label string for the image border size.</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">STR_IMAGE_BORDER_SIZE</span><span class="o">:</span> <span class="s1">&#39;Border Size&#39;</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @property STR_IMAGE_BORDER_TYPE</span>
<span class="c"> * @description The label string for the image border type.</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">STR_IMAGE_BORDER_TYPE</span><span class="o">:</span> <span class="s1">&#39;Border Type&#39;</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @property STR_IMAGE_TEXTFLOW</span>
<span class="c"> * @description The label string for the image text flow.</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">STR_IMAGE_TEXTFLOW</span><span class="o">:</span> <span class="s1">&#39;Text Flow&#39;</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @property STR_LOCAL_FILE_WARNING</span>
<span class="c"> * @description The label string for the local file warning.</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">STR_LOCAL_FILE_WARNING</span><span class="o">:</span> <span class="s1">&#39;&lt;span class=&quot;tip&quot;&gt;&lt;span class=&quot;icon icon-warn&quot;&gt;&lt;/span&gt;&lt;strong&gt;Note:&lt;/strong&gt;This image/link points to a file on your computer and will not be accessible to others on the internet.&lt;/span&gt;&#39;</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @property STR_LINK_PROP_TITLE</span>
<span class="c"> * @description The label string for the Link Property Editor Window.</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">STR_LINK_PROP_TITLE</span><span class="o">:</span> <span class="s1">&#39;Link Options&#39;</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @property STR_LINK_PROP_REMOVE</span>
<span class="c"> * @description The label string for the Remove link from text link inside the property editor.</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">STR_LINK_PROP_REMOVE</span><span class="o">:</span> <span class="s1">&#39;Remove link from text&#39;</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @property STR_LINK_NEW_WINDOW</span>
<span class="c"> * @description The string for the open in a new window label.</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">STR_LINK_NEW_WINDOW</span><span class="o">:</span> <span class="s1">&#39;Open in a new window.&#39;</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @property STR_LINK_TITLE</span>
<span class="c"> * @description The string for the link description.</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">STR_LINK_TITLE</span><span class="o">:</span> <span class="s1">&#39;Description&#39;</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @protected</span>
<span class="c"> * @property CLASS_LOCAL_FILE</span>
<span class="c"> * @description CSS class applied to an element when it&#39;s found to have a local url.</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">CLASS_LOCAL_FILE</span><span class="o">:</span> <span class="s1">&#39;warning-localfile&#39;</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @protected</span>
<span class="c"> * @property CLASS_HIDDEN</span>
<span class="c"> * @description CSS class applied to the body when the hiddenelements button is pressed.</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">CLASS_HIDDEN</span><span class="o">:</span> <span class="s1">&#39;yui-hidden&#39;</span><span class="o">,</span>
<span class="c">/** </span>
<span class="c"> * @method init</span>
<span class="c"> * @description The Editor class&#39; initialization method</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">p_oElement</span><span class="o">,</span> <span class="nx">p_oAttributes</span><span class="o">)</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="s1">&#39;init&#39;</span><span class="o">,</span> <span class="s1">&#39;info&#39;</span><span class="o">,</span> <span class="s1">&#39;Editor&#39;</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_windows</span> <span class="o">=</span> <span class="o">{};</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_defaultToolbar</span> <span class="o">=</span> <span class="o">{</span>
<span class="nx">collapse</span><span class="o">:</span> <span class="kc">true</span><span class="o">,</span>
<span class="nx">titlebar</span><span class="o">:</span> <span class="s1">&#39;Text Editing Tools&#39;</span><span class="o">,</span>
<span class="nx">draggable</span><span class="o">:</span> <span class="kc">false</span><span class="o">,</span>
<span class="nx">buttonType</span><span class="o">:</span> <span class="s1">&#39;advanced&#39;</span><span class="o">,</span>
<span class="nx">buttons</span><span class="o">:</span> <span class="o">[</span>
<span class="o">{</span> <span class="nx">group</span><span class="o">:</span> <span class="s1">&#39;fontstyle&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Font Name and Size&#39;</span><span class="o">,</span>
<span class="nx">buttons</span><span class="o">:</span> <span class="o">[</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;select&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Arial&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;fontname&#39;</span><span class="o">,</span> <span class="nx">disabled</span><span class="o">:</span> <span class="kc">true</span><span class="o">,</span>
<span class="nx">menu</span><span class="o">:</span> <span class="o">[</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;Arial&#39;</span><span class="o">,</span> <span class="nx">checked</span><span class="o">:</span> <span class="kc">true</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;Arial Black&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;Comic Sans MS&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;Courier New&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;Lucida Console&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;Tahoma&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;Times New Roman&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;Trebuchet MS&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;Verdana&#39;</span> <span class="o">}</span>
<span class="o">]</span>
<span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;spin&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;13&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;fontsize&#39;</span><span class="o">,</span> <span class="nx">range</span><span class="o">:</span> <span class="o">[</span> <span class="m">9</span><span class="o">,</span> <span class="m">75</span> <span class="o">],</span> <span class="nx">disabled</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="nx">type</span><span class="o">:</span> <span class="s1">&#39;separator&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">group</span><span class="o">:</span> <span class="s1">&#39;textstyle&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Font Style&#39;</span><span class="o">,</span>
<span class="nx">buttons</span><span class="o">:</span> <span class="o">[</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Bold CTRL + SHIFT + B&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;bold&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Italic CTRL + SHIFT + I&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;italic&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Underline CTRL + SHIFT + U&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;underline&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;separator&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Subscript&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;subscript&#39;</span><span class="o">,</span> <span class="nx">disabled</span><span class="o">:</span> <span class="kc">true</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Superscript&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;superscript&#39;</span><span class="o">,</span> <span class="nx">disabled</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="nx">type</span><span class="o">:</span> <span class="s1">&#39;separator&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">group</span><span class="o">:</span> <span class="s1">&#39;textstyle2&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;&amp;nbsp;&#39;</span><span class="o">,</span>
<span class="nx">buttons</span><span class="o">:</span> <span class="o">[</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;color&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Font Color&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;forecolor&#39;</span><span class="o">,</span> <span class="nx">disabled</span><span class="o">:</span> <span class="kc">true</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;color&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Background Color&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;backcolor&#39;</span><span class="o">,</span> <span class="nx">disabled</span><span class="o">:</span> <span class="kc">true</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;separator&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Remove Formatting&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;removeformat&#39;</span><span class="o">,</span> <span class="nx">disabled</span><span class="o">:</span> <span class="kc">true</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Show/Hide Hidden Elements&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;hiddenelements&#39;</span> <span class="o">}</span>
<span class="o">]</span>
<span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;separator&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">group</span><span class="o">:</span> <span class="s1">&#39;undoredo&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Undo/Redo&#39;</span><span class="o">,</span>
<span class="nx">buttons</span><span class="o">:</span> <span class="o">[</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Undo&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;undo&#39;</span><span class="o">,</span> <span class="nx">disabled</span><span class="o">:</span> <span class="kc">true</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Redo&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;redo&#39;</span><span class="o">,</span> <span class="nx">disabled</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="nx">type</span><span class="o">:</span> <span class="s1">&#39;separator&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">group</span><span class="o">:</span> <span class="s1">&#39;alignment&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Alignment&#39;</span><span class="o">,</span>
<span class="nx">buttons</span><span class="o">:</span> <span class="o">[</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Align Left CTRL + SHIFT + [&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;justifyleft&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Align Center CTRL + SHIFT + |&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;justifycenter&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Align Right CTRL + SHIFT + ]&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;justifyright&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Justify&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;justifyfull&#39;</span> <span class="o">}</span>
<span class="o">]</span>
<span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;separator&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">group</span><span class="o">:</span> <span class="s1">&#39;parastyle&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Paragraph Style&#39;</span><span class="o">,</span>
<span class="nx">buttons</span><span class="o">:</span> <span class="o">[</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;select&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Normal&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;heading&#39;</span><span class="o">,</span> <span class="nx">disabled</span><span class="o">:</span> <span class="kc">true</span><span class="o">,</span>
<span class="nx">menu</span><span class="o">:</span> <span class="o">[</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;Normal&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;none&#39;</span><span class="o">,</span> <span class="nx">checked</span><span class="o">:</span> <span class="kc">true</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;Header 1&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;h1&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;Header 2&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;h2&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;Header 3&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;h3&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;Header 4&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;h4&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;Header 5&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;h5&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;Header 6&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;h6&#39;</span> <span class="o">}</span>
<span class="o">]</span>
<span class="o">}</span>
<span class="o">]</span>
<span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;separator&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">group</span><span class="o">:</span> <span class="s1">&#39;indentlist2&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Indenting and Lists&#39;</span><span class="o">,</span>
<span class="nx">buttons</span><span class="o">:</span> <span class="o">[</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Indent&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;indent&#39;</span><span class="o">,</span> <span class="nx">disabled</span><span class="o">:</span> <span class="kc">true</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Outdent&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;outdent&#39;</span><span class="o">,</span> <span class="nx">disabled</span><span class="o">:</span> <span class="kc">true</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Create an Unordered List&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;insertunorderedlist&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Create an Ordered List&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;insertorderedlist&#39;</span> <span class="o">}</span>
<span class="o">]</span>
<span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;separator&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">group</span><span class="o">:</span> <span class="s1">&#39;insertitem&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Insert Item&#39;</span><span class="o">,</span>
<span class="nx">buttons</span><span class="o">:</span> <span class="o">[</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;HTML Link CTRL + SHIFT + L&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;createlink&#39;</span><span class="o">,</span> <span class="nx">disabled</span><span class="o">:</span> <span class="kc">true</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Insert Image&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;insertimage&#39;</span> <span class="o">}</span>
<span class="o">]</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">_defaultImageToolbarConfig</span> <span class="o">=</span> <span class="o">{</span>
<span class="nx">buttonType</span><span class="o">:</span> <span class="k">this</span><span class="o">.</span><span class="nx">_defaultToolbar</span><span class="o">.</span><span class="nx">buttonType</span><span class="o">,</span>
<span class="nx">buttons</span><span class="o">:</span> <span class="o">[</span>
<span class="o">{</span> <span class="nx">group</span><span class="o">:</span> <span class="s1">&#39;textflow&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_IMAGE_TEXTFLOW</span> <span class="o">+</span> <span class="s1">&#39;:&#39;</span><span class="o">,</span>
<span class="nx">buttons</span><span class="o">:</span> <span class="o">[</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Left&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;left&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Inline&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;inline&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Block&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;block&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;push&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Right&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;right&#39;</span> <span class="o">}</span>
<span class="o">]</span>
<span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;separator&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">group</span><span class="o">:</span> <span class="s1">&#39;padding&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_IMAGE_PADDING</span> <span class="o">+</span> <span class="s1">&#39;:&#39;</span><span class="o">,</span>
<span class="nx">buttons</span><span class="o">:</span> <span class="o">[</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;spin&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;0&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;padding&#39;</span><span class="o">,</span> <span class="nx">range</span><span class="o">:</span> <span class="o">[</span><span class="m">0</span><span class="o">,</span> <span class="m">50</span><span class="o">]</span> <span class="o">}</span>
<span class="o">]</span>
<span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;separator&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">group</span><span class="o">:</span> <span class="s1">&#39;border&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_IMAGE_BORDER</span> <span class="o">+</span> <span class="s1">&#39;:&#39;</span><span class="o">,</span>
<span class="nx">buttons</span><span class="o">:</span> <span class="o">[</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;select&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_IMAGE_BORDER_SIZE</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;bordersize&#39;</span><span class="o">,</span>
<span class="nx">menu</span><span class="o">:</span> <span class="o">[</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;none&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;0&#39;</span><span class="o">,</span> <span class="nx">checked</span><span class="o">:</span> <span class="kc">true</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;1px&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;1&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;2px&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;2&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;3px&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;3&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;4px&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;4&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;5px&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;5&#39;</span> <span class="o">}</span>
<span class="o">]</span>
<span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;select&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_IMAGE_BORDER_TYPE</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;bordertype&#39;</span><span class="o">,</span> <span class="nx">disabled</span><span class="o">:</span> <span class="kc">true</span><span class="o">,</span>
<span class="nx">menu</span><span class="o">:</span> <span class="o">[</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;Solid&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;solid&#39;</span><span class="o">,</span> <span class="nx">checked</span><span class="o">:</span> <span class="kc">true</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;Dashed&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;dashed&#39;</span> <span class="o">},</span>
<span class="o">{</span> <span class="nx">text</span><span class="o">:</span> <span class="s1">&#39;Dotted&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;dotted&#39;</span> <span class="o">}</span>
<span class="o">]</span>
<span class="o">},</span>
<span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;color&#39;</span><span class="o">,</span> <span class="k">label</span><span class="o">:</span> <span class="s1">&#39;Border Color&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="s1">&#39;bordercolor&#39;</span><span class="o">,</span> <span class="nx">disabled</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="o">};</span>
<span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Editor</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">p_oElement</span><span class="o">,</span> <span class="nx">p_oAttributes</span><span class="o">);</span>
<span class="o">},</span>
<span class="nx">_render</span><span class="o">:</span> <span class="k">function</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">Editor</span><span class="o">.</span><span class="nx">superclass</span><span class="o">.</span><span class="nx">_render</span><span class="o">.</span><span class="nx">apply</span><span class="o">(</span><span class="k">this</span><span class="o">,</span> <span class="nx">arguments</span><span class="o">);</span>
<span class="k">var</span> <span class="nx">self</span> <span class="o">=</span> <span class="k">this</span><span class="o">;</span>
<span class="c">//Render the panel in another thread and delay it a little..</span>
<span class="c"></span> <span class="nb">window</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">self</span><span class="o">.</span><span class="nx">_renderPanel</span><span class="o">.</span><span class="nx">call</span><span class="o">(</span><span class="nx">self</span><span class="o">);</span>
<span class="o">},</span> <span class="m">800</span><span class="o">);</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @method initAttributes</span>
<span class="c"> * @description Initializes all of the configuration attributes used to create </span>
<span class="c"> * the editor.</span>
<span class="c"> * @param {Object} attr Object literal specifying a set of </span>
<span class="c"> * configuration attributes used to create the editor.</span>
<span class="c"> */</span>
<span class="nx">initAttributes</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">attr</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">Editor</span><span class="o">.</span><span class="nx">superclass</span><span class="o">.</span><span class="nx">initAttributes</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">attr</span><span class="o">);</span>
<span class="c">/**</span>
<span class="c"> * @attribute localFileWarning</span>
<span class="c"> * @description Should we throw the warning if we detect a file that is local to their machine?</span>
<span class="c"> * @default true</span>
<span class="c"> * @type Boolean</span>
<span class="c"> */</span>
<span class="k">this</span><span class="o">.</span><span class="nx">setAttributeConfig</span><span class="o">(</span><span class="s1">&#39;localFileWarning&#39;</span><span class="o">,</span> <span class="o">{</span>
<span class="nx">value</span><span class="o">:</span> <span class="nx">attr</span><span class="o">.</span><span class="nx">locaFileWarning</span> <span class="o">||</span> <span class="kc">true</span>
<span class="o">});</span>
<span class="c">/**</span>
<span class="c"> * @attribute hiddencss</span>
<span class="c"> * @description The CSS used to show/hide hidden elements on the page, these rules must be prefixed with the class provided in &lt;code&gt;this.CLASS_HIDDEN&lt;/code&gt;</span>
<span class="c"> * @default &lt;code&gt;&lt;pre&gt;</span>
<span class="c"> .yui-hidden font, .yui-hidden strong, .yui-hidden b, .yui-hidden em, .yui-hidden i, .yui-hidden u, .yui-hidden div, .yui-hidden p, .yui-hidden span, .yui-hidden img, .yui-hidden ul, .yui-hidden ol, .yui-hidden li, .yui-hidden table {</span>
<span class="c"> border: 1px dotted #ccc;</span>
<span class="c"> }</span>
<span class="c"> .yui-hidden .yui-non {</span>
<span class="c"> border: none;</span>
<span class="c"> }</span>
<span class="c"> .yui-hidden img {</span>
<span class="c"> padding: 2px;</span>
<span class="c"> }&lt;/pre&gt;&lt;/code&gt;</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="k">this</span><span class="o">.</span><span class="nx">setAttributeConfig</span><span class="o">(</span><span class="s1">&#39;hiddencss&#39;</span><span class="o">,</span> <span class="o">{</span>
<span class="nx">value</span><span class="o">:</span> <span class="nx">attr</span><span class="o">.</span><span class="nx">hiddencss</span> <span class="o">||</span> <span class="s1">&#39;.yui-hidden font, .yui-hidden strong, .yui-hidden b, .yui-hidden em, .yui-hidden i, .yui-hidden u, .yui-hidden div,.yui-hidden p,.yui-hidden span,.yui-hidden img, .yui-hidden ul, .yui-hidden ol, .yui-hidden li, .yui-hidden table { border: 1px dotted #ccc; } .yui-hidden .yui-non { border: none; } .yui-hidden img { padding: 2px; }&#39;</span><span class="o">,</span>
<span class="nx">writeOnce</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"> * @private</span>
<span class="c"> * @method _windows</span>
<span class="c"> * @description A reference to the HTML elements used for the body of Editor Windows.</span>
<span class="c"> */</span>
<span class="nx">_windows</span><span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @method _defaultImageToolbar</span>
<span class="c"> * @description A reference to the Toolbar Object inside Image Editor Window.</span>
<span class="c"> */</span>
<span class="nx">_defaultImageToolbar</span><span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @method _defaultImageToolbarConfig</span>
<span class="c"> * @description Config to be used for the default Image Editor Window.</span>
<span class="c"> */</span>
<span class="nx">_defaultImageToolbarConfig</span><span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @method _fixNodes</span>
<span class="c"> * @description Fix href and imgs as well as remove invalid HTML.</span>
<span class="c"> */</span>
<span class="nx">_fixNodes</span><span class="o">:</span> <span class="k">function</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">Editor</span><span class="o">.</span><span class="nx">superclass</span><span class="o">.</span><span class="nx">_fixNodes</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">url</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="o">;</span>
<span class="k">var</span> <span class="nx">imgs</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_getDoc</span><span class="o">().</span><span class="nx">getElementsByTagName</span><span class="o">(</span><span class="s1">&#39;img&#39;</span><span class="o">);</span>
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">im</span> <span class="o">=</span> <span class="m">0</span><span class="o">;</span> <span class="nx">im</span> <span class="o">&lt;</span> <span class="nx">imgs</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span> <span class="nx">im</span><span class="o">++)</span> <span class="o">{</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">imgs</span><span class="o">[</span><span class="nx">im</span><span class="o">].</span><span class="nx">getAttribute</span><span class="o">(</span><span class="s1">&#39;href&#39;</span><span class="o">,</span> <span class="m">2</span><span class="o">))</span> <span class="o">{</span>
<span class="nx">url</span> <span class="o">=</span> <span class="nx">imgs</span><span class="o">[</span><span class="nx">im</span><span class="o">].</span><span class="nx">getAttribute</span><span class="o">(</span><span class="s1">&#39;src&#39;</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="k">this</span><span class="o">.</span><span class="nx">_isLocalFile</span><span class="o">(</span><span class="nx">url</span><span class="o">))</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="nx">imgs</span><span class="o">[</span><span class="nx">im</span><span class="o">],</span> <span class="k">this</span><span class="o">.</span><span class="nx">CLASS_LOCAL_FILE</span><span class="o">);</span>
<span class="o">}</span> <span class="k">else</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="nx">imgs</span><span class="o">[</span><span class="nx">im</span><span class="o">],</span> <span class="k">this</span><span class="o">.</span><span class="nx">CLASS_LOCAL_FILE</span><span class="o">);</span>
<span class="o">}</span>
<span class="o">}</span>
<span class="o">}</span>
<span class="k">var</span> <span class="nx">fakeAs</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_getDoc</span><span class="o">().</span><span class="nx">body</span><span class="o">.</span><span class="nx">getElementsByTagName</span><span class="o">(</span><span class="s1">&#39;a&#39;</span><span class="o">);</span>
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">a</span> <span class="o">=</span> <span class="m">0</span><span class="o">;</span> <span class="nx">a</span> <span class="o">&lt;</span> <span class="nx">fakeAs</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span> <span class="nx">a</span><span class="o">++)</span> <span class="o">{</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">fakeAs</span><span class="o">[</span><span class="nx">a</span><span class="o">].</span><span class="nx">getAttribute</span><span class="o">(</span><span class="s1">&#39;href&#39;</span><span class="o">,</span> <span class="m">2</span><span class="o">))</span> <span class="o">{</span>
<span class="nx">url</span> <span class="o">=</span> <span class="nx">fakeAs</span><span class="o">[</span><span class="nx">a</span><span class="o">].</span><span class="nx">getAttribute</span><span class="o">(</span><span class="s1">&#39;href&#39;</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="k">this</span><span class="o">.</span><span class="nx">_isLocalFile</span><span class="o">(</span><span class="nx">url</span><span class="o">))</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="nx">fakeAs</span><span class="o">[</span><span class="nx">a</span><span class="o">],</span> <span class="k">this</span><span class="o">.</span><span class="nx">CLASS_LOCAL_FILE</span><span class="o">);</span>
<span class="o">}</span> <span class="k">else</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="nx">fakeAs</span><span class="o">[</span><span class="nx">a</span><span class="o">],</span> <span class="k">this</span><span class="o">.</span><span class="nx">CLASS_LOCAL_FILE</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"> * @private</span>
<span class="c"> * @property _disabled</span>
<span class="c"> * @description The Toolbar items that should be disabled if there is no selection present in the editor.</span>
<span class="c"> * @type Array</span>
<span class="c"> */</span>
<span class="nx">_disabled</span><span class="o">:</span> <span class="o">[</span> <span class="s1">&#39;createlink&#39;</span><span class="o">,</span> <span class="s1">&#39;forecolor&#39;</span><span class="o">,</span> <span class="s1">&#39;backcolor&#39;</span><span class="o">,</span> <span class="s1">&#39;fontname&#39;</span><span class="o">,</span> <span class="s1">&#39;fontsize&#39;</span><span class="o">,</span> <span class="s1">&#39;superscript&#39;</span><span class="o">,</span> <span class="s1">&#39;subscript&#39;</span><span class="o">,</span> <span class="s1">&#39;removeformat&#39;</span><span class="o">,</span> <span class="s1">&#39;heading&#39;</span><span class="o">,</span> <span class="s1">&#39;indent&#39;</span> <span class="o">],</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @property _alwaysDisabled</span>
<span class="c"> * @description The Toolbar items that should ALWAYS be disabled event if there is a selection present in the editor.</span>
<span class="c"> * @type Object</span>
<span class="c"> */</span>
<span class="nx">_alwaysDisabled</span><span class="o">:</span> <span class="o">{</span> <span class="s1">&#39;outdent&#39;</span><span class="o">:</span> <span class="kc">true</span> <span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @property _alwaysEnabled</span>
<span class="c"> * @description The Toolbar items that should ALWAYS be enabled event if there isn&#39;t a selection present in the editor.</span>
<span class="c"> * @type Object</span>
<span class="c"> */</span>
<span class="nx">_alwaysEnabled</span><span class="o">:</span> <span class="o">{</span> <span class="nx">hiddenelements</span><span class="o">:</span> <span class="kc">true</span> <span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @method _handleKeyDown</span>
<span class="c"> * @param {Event} ev The event we are working on.</span>
<span class="c"> * @description Override method that handles some new keydown events inside the iFrame document.</span>
<span class="c"> */</span>
<span class="nx">_handleKeyDown</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">ev</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">Editor</span><span class="o">.</span><span class="nx">superclass</span><span class="o">.</span><span class="nx">_handleKeyDown</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">ev</span><span class="o">);</span>
<span class="k">var</span> <span class="nx">doExec</span> <span class="o">=</span> <span class="kc">false</span><span class="o">,</span>
<span class="nx">action</span> <span class="o">=</span> <span class="kc">null</span><span class="o">,</span>
<span class="nx">exec</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
<span class="nx">switch</span> <span class="o">(</span><span class="nx">ev</span><span class="o">.</span><span class="nx">keyCode</span><span class="o">)</span> <span class="o">{</span>
<span class="c">//case 219: //Left</span>
<span class="c"></span> <span class="nx">case</span> <span class="k">this</span><span class="o">.</span><span class="nx">_keyMap</span><span class="o">.</span><span class="nx">JUSTIFY_LEFT</span><span class="o">.</span><span class="nx">key</span><span class="o">:</span> <span class="c">//Left</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">_checkKey</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">_keyMap</span><span class="o">.</span><span class="nx">JUSTIFY_LEFT</span><span class="o">,</span> <span class="nx">ev</span><span class="o">))</span> <span class="o">{</span>
<span class="nx">action</span> <span class="o">=</span> <span class="s1">&#39;justifyleft&#39;</span><span class="o">;</span>
<span class="nx">doExec</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
<span class="o">}</span>
<span class="k">break</span><span class="o">;</span>
<span class="c">//case 220: //Center</span>
<span class="c"></span> <span class="nx">case</span> <span class="k">this</span><span class="o">.</span><span class="nx">_keyMap</span><span class="o">.</span><span class="nx">JUSTIFY_CENTER</span><span class="o">.</span><span class="nx">key</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">_checkKey</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">_keyMap</span><span class="o">.</span><span class="nx">JUSTIFY_CENTER</span><span class="o">,</span> <span class="nx">ev</span><span class="o">))</span> <span class="o">{</span>
<span class="nx">action</span> <span class="o">=</span> <span class="s1">&#39;justifycenter&#39;</span><span class="o">;</span>
<span class="nx">doExec</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
<span class="o">}</span>
<span class="k">break</span><span class="o">;</span>
<span class="nx">case</span> <span class="m">221</span><span class="o">:</span> <span class="c">//Right</span>
<span class="c"></span> <span class="nx">case</span> <span class="k">this</span><span class="o">.</span><span class="nx">_keyMap</span><span class="o">.</span><span class="nx">JUSTIFY_RIGHT</span><span class="o">.</span><span class="nx">key</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">_checkKey</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">_keyMap</span><span class="o">.</span><span class="nx">JUSTIFY_RIGHT</span><span class="o">,</span> <span class="nx">ev</span><span class="o">))</span> <span class="o">{</span>
<span class="nx">action</span> <span class="o">=</span> <span class="s1">&#39;justifyright&#39;</span><span class="o">;</span>
<span class="nx">doExec</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
<span class="o">}</span>
<span class="k">break</span><span class="o">;</span>
<span class="o">}</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">doExec</span> <span class="o">&amp;&amp;</span> <span class="nx">action</span><span class="o">)</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">execCommand</span><span class="o">(</span><span class="nx">action</span><span class="o">,</span> <span class="kc">null</span><span class="o">);</span>
<span class="nx">Event</span><span class="o">.</span><span class="nx">stopEvent</span><span class="o">(</span><span class="nx">ev</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">nodeChange</span><span class="o">();</span>
<span class="o">}</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @method _renderCreateLinkWindow</span>
<span class="c"> * @description Pre renders the CreateLink window so we get faster window opening.</span>
<span class="c"> */</span>
<span class="nx">_renderCreateLinkWindow</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">str</span> <span class="o">=</span> <span class="s1">&#39;&lt;label for=&quot;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_url&quot;&gt;&lt;strong&gt;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_LINK_URL</span> <span class="o">+</span> <span class="s1">&#39;:&lt;/strong&gt; &lt;input type=&quot;text&quot; name=&quot;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_url&quot; id=&quot;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_url&quot; value=&quot;&quot;&gt;&lt;/label&gt;&#39;</span><span class="o">;</span>
<span class="nx">str</span> <span class="o">+=</span> <span class="s1">&#39;&lt;label for=&quot;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_target&quot;&gt;&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;&lt;input type=&quot;checkbox&quot; name=&quot;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_target&quot; id=&quot;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_target&quot; value=&quot;_blank&quot; class=&quot;createlink_target&quot;&gt; &#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_LINK_NEW_WINDOW</span> <span class="o">+</span> <span class="s1">&#39;&lt;/label&gt;&#39;</span><span class="o">;</span>
<span class="nx">str</span> <span class="o">+=</span> <span class="s1">&#39;&lt;label for=&quot;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_title&quot;&gt;&lt;strong&gt;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_LINK_TITLE</span> <span class="o">+</span> <span class="s1">&#39;:&lt;/strong&gt; &lt;input type=&quot;text&quot; name=&quot;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_title&quot; id=&quot;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_title&quot; value=&quot;&quot;&gt;&lt;/label&gt;&#39;</span><span class="o">;</span>
<span class="k">var</span> <span class="nx">body</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="s1">&#39;div&#39;</span><span class="o">);</span>
<span class="nx">body</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="nx">str</span><span class="o">;</span>
<span class="k">var</span> <span class="nx">unlinkCont</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="s1">&#39;div&#39;</span><span class="o">);</span>
<span class="nx">unlinkCont</span><span class="o">.</span><span class="nx">className</span> <span class="o">=</span> <span class="s1">&#39;removeLink&#39;</span><span class="o">;</span>
<span class="k">var</span> <span class="nx">unlink</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="s1">&#39;a&#39;</span><span class="o">);</span>
<span class="nx">unlink</span><span class="o">.</span><span class="nx">href</span> <span class="o">=</span> <span class="s1">&#39;#&#39;</span><span class="o">;</span>
<span class="nx">unlink</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_LINK_PROP_REMOVE</span><span class="o">;</span>
<span class="nx">unlink</span><span class="o">.</span><span class="nx">title</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_LINK_PROP_REMOVE</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="nx">unlink</span><span class="o">,</span> <span class="s1">&#39;click&#39;</span><span class="o">,</span> <span class="k">function</span><span class="o">(</span><span class="nx">ev</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">Event</span><span class="o">.</span><span class="nx">stopEvent</span><span class="o">(</span><span class="nx">ev</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">execCommand</span><span class="o">(</span><span class="s1">&#39;unlink&#39;</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">closeWindow</span><span class="o">();</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="nx">unlinkCont</span><span class="o">.</span><span class="nx">appendChild</span><span class="o">(</span><span class="nx">unlink</span><span class="o">);</span>
<span class="nx">body</span><span class="o">.</span><span class="nx">appendChild</span><span class="o">(</span><span class="nx">unlinkCont</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_windows</span><span class="o">.</span><span class="nx">createlink</span> <span class="o">=</span> <span class="o">{};</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_windows</span><span class="o">.</span><span class="nx">createlink</span><span class="o">.</span><span class="nx">body</span> <span class="o">=</span> <span class="nx">body</span><span class="o">;</span>
<span class="nx">body</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="s1">&#39;none&#39;</span><span class="o">;</span>
<span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">).</span><span class="nx">editor_form</span><span class="o">.</span><span class="nx">appendChild</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">fireEvent</span><span class="o">(</span><span class="s1">&#39;windowCreateLinkRender&#39;</span><span class="o">,</span> <span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;windowCreateLinkRender&#39;</span><span class="o">,</span> <span class="nx">panel</span><span class="o">:</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">),</span> <span class="nx">body</span><span class="o">:</span> <span class="nx">body</span> <span class="o">});</span>
<span class="k">return</span> <span class="nx">body</span><span class="o">;</span>
<span class="o">},</span>
<span class="nx">_handleCreateLinkClick</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">el</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_getSelectedElement</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">_isElement</span><span class="o">(</span><span class="nx">el</span><span class="o">,</span> <span class="s1">&#39;img&#39;</span><span class="o">))</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">STOP_EXEC_COMMAND</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">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">]</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">toolbar</span><span class="o">.</span><span class="nx">fireEvent</span><span class="o">(</span><span class="s1">&#39;insertimageClick&#39;</span><span class="o">,</span> <span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;insertimageClick&#39;</span><span class="o">,</span> <span class="nx">target</span><span class="o">:</span> <span class="k">this</span><span class="o">.</span><span class="nx">toolbar</span> <span class="o">});</span>
<span class="k">this</span><span class="o">.</span><span class="nx">fireEvent</span><span class="o">(</span><span class="s1">&#39;afterExecCommand&#39;</span><span class="o">,</span> <span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;afterExecCommand&#39;</span><span class="o">,</span> <span class="nx">target</span><span class="o">:</span> <span class="k">this</span> <span class="o">});</span>
<span class="k">return</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="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;limitCommands&#39;</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">toolbar</span><span class="o">.</span><span class="nx">getButtonByValue</span><span class="o">(</span><span class="s1">&#39;createlink&#39;</span><span class="o">))</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="s1">&#39;Toolbar Button for (createlink) was not found, skipping exec.&#39;</span><span class="o">,</span> <span class="s1">&#39;info&#39;</span><span class="o">,</span> <span class="s1">&#39;Editor&#39;</span><span class="o">);</span>
<span class="k">return</span> <span class="kc">false</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">on</span><span class="o">(</span><span class="s1">&#39;afterExecCommand&#39;</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">win</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">EditorWindow</span><span class="o">(</span><span class="s1">&#39;createlink&#39;</span><span class="o">,</span> <span class="o">{</span>
<span class="nx">width</span><span class="o">:</span> <span class="s1">&#39;350px&#39;</span>
<span class="o">});</span>
<span class="k">var</span> <span class="nx">el</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">],</span>
<span class="nx">url</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="o">,</span>
<span class="nx">title</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="o">,</span>
<span class="nx">target</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="o">,</span>
<span class="nx">localFile</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">el</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">win</span><span class="o">.</span><span class="nx">el</span> <span class="o">=</span> <span class="nx">el</span><span class="o">;</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">getAttribute</span><span class="o">(</span><span class="s1">&#39;href&#39;</span><span class="o">,</span> <span class="m">2</span><span class="o">)</span> <span class="o">!==</span> <span class="kc">null</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">url</span> <span class="o">=</span> <span class="nx">el</span><span class="o">.</span><span class="nx">getAttribute</span><span class="o">(</span><span class="s1">&#39;href&#39;</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="k">this</span><span class="o">.</span><span class="nx">_isLocalFile</span><span class="o">(</span><span class="nx">url</span><span class="o">))</span> <span class="o">{</span>
<span class="c">//Local File throw Warning</span>
<span class="c"></span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">log</span><span class="o">(</span><span class="s1">&#39;Local file reference found, show local warning&#39;</span><span class="o">,</span> <span class="s1">&#39;warn&#39;</span><span class="o">,</span> <span class="s1">&#39;Editor&#39;</span><span class="o">);</span>
<span class="nx">win</span><span class="o">.</span><span class="nx">setFooter</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">STR_LOCAL_FILE_WARNING</span><span class="o">);</span>
<span class="nx">localFile</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="o">{</span>
<span class="nx">win</span><span class="o">.</span><span class="nx">setFooter</span><span class="o">(</span><span class="s1">&#39; &#39;</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">el</span><span class="o">.</span><span class="nx">getAttribute</span><span class="o">(</span><span class="s1">&#39;title&#39;</span><span class="o">)</span> <span class="o">!==</span> <span class="kc">null</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">title</span> <span class="o">=</span> <span class="nx">el</span><span class="o">.</span><span class="nx">getAttribute</span><span class="o">(</span><span class="s1">&#39;title&#39;</span><span class="o">);</span>
<span class="o">}</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">getAttribute</span><span class="o">(</span><span class="s1">&#39;target&#39;</span><span class="o">)</span> <span class="o">!==</span> <span class="kc">null</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">target</span> <span class="o">=</span> <span class="nx">el</span><span class="o">.</span><span class="nx">getAttribute</span><span class="o">(</span><span class="s1">&#39;target&#39;</span><span class="o">);</span>
<span class="o">}</span>
<span class="o">}</span>
<span class="k">var</span> <span class="nx">body</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="k">this</span><span class="o">.</span><span class="nx">_windows</span><span class="o">.</span><span class="nx">createlink</span> <span class="o">&amp;&amp;</span> <span class="k">this</span><span class="o">.</span><span class="nx">_windows</span><span class="o">.</span><span class="nx">createlink</span><span class="o">.</span><span class="nx">body</span><span class="o">)</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">_windows</span><span class="o">.</span><span class="nx">createlink</span><span class="o">.</span><span class="nx">body</span><span class="o">;</span>
<span class="o">}</span> <span class="k">else</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">_renderCreateLinkWindow</span><span class="o">();</span>
<span class="o">}</span>
<span class="nx">win</span><span class="o">.</span><span class="nx">setHeader</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">STR_LINK_PROP_TITLE</span><span class="o">);</span>
<span class="nx">win</span><span class="o">.</span><span class="nx">setBody</span><span class="o">(</span><span class="nx">body</span><span class="o">);</span>
<span class="nx">Event</span><span class="o">.</span><span class="nx">purgeElement</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_url&#39;</span><span class="o">);</span>
<span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_url&#39;</span><span class="o">).</span><span class="nx">value</span> <span class="o">=</span> <span class="nx">url</span><span class="o">;</span>
<span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_title&#39;</span><span class="o">).</span><span class="nx">value</span> <span class="o">=</span> <span class="nx">title</span><span class="o">;</span>
<span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_target&#39;</span><span class="o">).</span><span class="nx">checked</span> <span class="o">=</span> <span class="o">((</span><span class="nx">target</span><span class="o">)</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">Event</span><span class="o">.</span><span class="nx">onAvailable</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_url&#39;</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">id</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">);</span>
<span class="nb">window</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="k">try</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">get</span><span class="o">(</span><span class="nx">id</span> <span class="o">+</span> <span class="s1">&#39;_createlink_url&#39;</span><span class="o">).</span><span class="nx">focus</span><span class="o">();</span>
<span class="o">}</span> <span class="k">catch</span> <span class="o">(</span><span class="nx">e</span><span class="o">)</span> <span class="o">{}</span>
<span class="o">},</span> <span class="m">50</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">_isLocalFile</span><span class="o">(</span><span class="nx">url</span><span class="o">))</span> <span class="o">{</span>
<span class="c">//Local File throw Warning</span>
<span class="c"></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">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_url&#39;</span><span class="o">,</span> <span class="s1">&#39;warning&#39;</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="s1">&#39;Local file reference found, show local warning&#39;</span><span class="o">,</span> <span class="s1">&#39;warn&#39;</span><span class="o">,</span> <span class="s1">&#39;Editor&#39;</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">).</span><span class="nx">setFooter</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">STR_LOCAL_FILE_WARNING</span><span class="o">);</span>
<span class="o">}</span> <span class="k">else</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">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_url&#39;</span><span class="o">,</span> <span class="s1">&#39;warning&#39;</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">).</span><span class="nx">setFooter</span><span class="o">(</span><span class="s1">&#39; &#39;</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="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_url&#39;</span><span class="o">,</span> <span class="s1">&#39;blur&#39;</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">url</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_url&#39;</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">_isLocalFile</span><span class="o">(</span><span class="nx">url</span><span class="o">.</span><span class="nx">value</span><span class="o">))</span> <span class="o">{</span>
<span class="c">//Local File throw Warning</span>
<span class="c"></span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">url</span><span class="o">,</span> <span class="s1">&#39;warning&#39;</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="s1">&#39;Local file reference found, show local warning&#39;</span><span class="o">,</span> <span class="s1">&#39;warn&#39;</span><span class="o">,</span> <span class="s1">&#39;Editor&#39;</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">).</span><span class="nx">setFooter</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">STR_LOCAL_FILE_WARNING</span><span class="o">);</span>
<span class="o">}</span> <span class="k">else</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="nx">url</span><span class="o">,</span> <span class="s1">&#39;warning&#39;</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">).</span><span class="nx">setFooter</span><span class="o">(</span><span class="s1">&#39; &#39;</span><span class="o">);</span>
<span class="o">}</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">this</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">openWindow</span><span class="o">(</span><span class="nx">win</span><span class="o">);</span>
<span class="o">});</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @method _handleCreateLinkWindowClose</span>
<span class="c"> * @description Handles the closing of the Link Properties Window.</span>
<span class="c"> */</span>
<span class="nx">_handleCreateLinkWindowClose</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">url</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_url&#39;</span><span class="o">),</span>
<span class="nx">target</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_target&#39;</span><span class="o">),</span>
<span class="nx">title</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_title&#39;</span><span class="o">),</span>
<span class="nx">el</span> <span class="o">=</span> <span class="nx">arguments</span><span class="o">[</span><span class="m">0</span><span class="o">].</span><span class="nx">win</span><span class="o">.</span><span class="nx">el</span><span class="o">,</span>
<span class="nx">a</span> <span class="o">=</span> <span class="nx">el</span><span class="o">;</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">url</span> <span class="o">&amp;&amp;</span> <span class="nx">url</span><span class="o">.</span><span class="nx">value</span><span class="o">)</span> <span class="o">{</span>
<span class="k">var</span> <span class="nx">urlValue</span> <span class="o">=</span> <span class="nx">url</span><span class="o">.</span><span class="nx">value</span><span class="o">;</span>
<span class="k">if</span> <span class="o">((</span><span class="nx">urlValue</span><span class="o">.</span><span class="nx">indexOf</span><span class="o">(</span><span class="s1">&#39;:/&#39;</span><span class="o">+</span><span class="s1">&#39;/&#39;</span><span class="o">)</span> <span class="o">==</span> <span class="o">-</span><span class="m">1</span><span class="o">)</span> <span class="o">&amp;&amp;</span> <span class="o">(</span><span class="nx">urlValue</span><span class="o">.</span><span class="nx">substring</span><span class="o">(</span><span class="m">0</span><span class="o">,</span><span class="m">1</span><span class="o">)</span> <span class="o">!=</span> <span class="s1">&#39;/&#39;</span><span class="o">)</span> <span class="o">&amp;&amp;</span> <span class="o">(</span><span class="nx">urlValue</span><span class="o">.</span><span class="nx">substring</span><span class="o">(</span><span class="m">0</span><span class="o">,</span> <span class="m">6</span><span class="o">).</span><span class="nx">toLowerCase</span><span class="o">()</span> <span class="o">!=</span> <span class="s1">&#39;mailto&#39;</span><span class="o">))</span> <span class="o">{</span>
<span class="k">if</span> <span class="o">((</span><span class="nx">urlValue</span><span class="o">.</span><span class="nx">indexOf</span><span class="o">(</span><span class="s1">&#39;@&#39;</span><span class="o">)</span> <span class="o">!=</span> <span class="o">-</span><span class="m">1</span><span class="o">)</span> <span class="o">&amp;&amp;</span> <span class="o">(</span><span class="nx">urlValue</span><span class="o">.</span><span class="nx">substring</span><span class="o">(</span><span class="m">0</span><span class="o">,</span> <span class="m">6</span><span class="o">).</span><span class="nx">toLowerCase</span><span class="o">()</span> <span class="o">!=</span> <span class="s1">&#39;mailto&#39;</span><span class="o">))</span> <span class="o">{</span>
<span class="c">//Found an @ sign, prefix with mailto:</span>
<span class="c"></span> <span class="nx">urlValue</span> <span class="o">=</span> <span class="s1">&#39;mailto:&#39;</span> <span class="o">+</span> <span class="nx">urlValue</span><span class="o">;</span>
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
<span class="c">// :// not found adding</span>
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">urlValue</span><span class="o">.</span><span class="nx">substring</span><span class="o">(</span><span class="m">0</span><span class="o">,</span> <span class="m">1</span><span class="o">)</span> <span class="o">!=</span> <span class="s1">&#39;#&#39;</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">urlValue</span> <span class="o">=</span> <span class="s1">&#39;http:/&#39;</span><span class="o">+</span><span class="s1">&#39;/&#39;</span> <span class="o">+</span> <span class="nx">urlValue</span><span class="o">;</span>
<span class="o">}</span>
<span class="o">}</span>
<span class="o">}</span>
<span class="nx">el</span><span class="o">.</span><span class="nx">setAttribute</span><span class="o">(</span><span class="s1">&#39;href&#39;</span><span class="o">,</span> <span class="nx">urlValue</span><span class="o">);</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">target</span><span class="o">.</span><span class="nx">checked</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">el</span><span class="o">.</span><span class="nx">setAttribute</span><span class="o">(</span><span class="s1">&#39;target&#39;</span><span class="o">,</span> <span class="nx">target</span><span class="o">.</span><span class="nx">value</span><span class="o">);</span>
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
<span class="nx">el</span><span class="o">.</span><span class="nx">setAttribute</span><span class="o">(</span><span class="s1">&#39;target&#39;</span><span class="o">,</span> <span class="s1">&#39;&#39;</span><span class="o">);</span>
<span class="o">}</span>
<span class="nx">el</span><span class="o">.</span><span class="nx">setAttribute</span><span class="o">(</span><span class="s1">&#39;title&#39;</span><span class="o">,</span> <span class="o">((</span><span class="nx">title</span><span class="o">.</span><span class="nx">value</span><span class="o">)</span> <span class="o">?</span> <span class="nx">title</span><span class="o">.</span><span class="nx">value</span> <span class="o">:</span> <span class="s1">&#39;&#39;</span><span class="o">));</span>
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
<span class="k">var</span> <span class="nx">_span</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_getDoc</span><span class="o">().</span><span class="nx">createElement</span><span class="o">(</span><span class="s1">&#39;span&#39;</span><span class="o">);</span>
<span class="nx">_span</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="nx">el</span><span class="o">.</span><span class="nx">innerHTML</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="nx">_span</span><span class="o">,</span> <span class="s1">&#39;yui-non&#39;</span><span class="o">);</span>
<span class="nx">el</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">.</span><span class="nx">replaceChild</span><span class="o">(</span><span class="nx">_span</span><span class="o">,</span> <span class="nx">el</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="nx">url</span><span class="o">,</span> <span class="s1">&#39;warning&#39;</span><span class="o">);</span>
<span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_url&#39;</span><span class="o">).</span><span class="nx">value</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="o">;</span>
<span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_title&#39;</span><span class="o">).</span><span class="nx">value</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="o">;</span>
<span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_createlink_target&#39;</span><span class="o">).</span><span class="nx">checked</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
<span class="k">this</span><span class="o">.</span><span class="nx">nodeChange</span><span class="o">();</span>
<span class="k">this</span><span class="o">.</span><span class="nx">currentElement</span> <span class="o">=</span> <span class="o">[];</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @method _renderInsertImageWindow</span>
<span class="c"> * @description Pre renders the InsertImage window so we get faster window opening.</span>
<span class="c"> */</span>
<span class="nx">_renderInsertImageWindow</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">el</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
<span class="k">var</span> <span class="nx">str</span> <span class="o">=</span> <span class="s1">&#39;&lt;label for=&quot;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_url&quot;&gt;&lt;strong&gt;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_IMAGE_URL</span> <span class="o">+</span> <span class="s1">&#39;:&lt;/strong&gt; &lt;input type=&quot;text&quot; id=&quot;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_url&quot; value=&quot;&quot; size=&quot;40&quot;&gt;&lt;/label&gt;&#39;</span><span class="o">;</span>
<span class="k">var</span> <span class="nx">body</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="s1">&#39;div&#39;</span><span class="o">);</span>
<span class="nx">body</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="nx">str</span><span class="o">;</span>
<span class="k">var</span> <span class="nx">tbarCont</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="s1">&#39;div&#39;</span><span class="o">);</span>
<span class="nx">tbarCont</span><span class="o">.</span><span class="nx">id</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_img_toolbar&#39;</span><span class="o">;</span>
<span class="nx">body</span><span class="o">.</span><span class="nx">appendChild</span><span class="o">(</span><span class="nx">tbarCont</span><span class="o">);</span>
<span class="k">var</span> <span class="nx">str2</span> <span class="o">=</span> <span class="s1">&#39;&lt;label for=&quot;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_title&quot;&gt;&lt;strong&gt;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_IMAGE_TITLE</span> <span class="o">+</span> <span class="s1">&#39;:&lt;/strong&gt; &lt;input type=&quot;text&quot; id=&quot;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_title&quot; value=&quot;&quot; size=&quot;40&quot;&gt;&lt;/label&gt;&#39;</span><span class="o">;</span>
<span class="nx">str2</span> <span class="o">+=</span> <span class="s1">&#39;&lt;label for=&quot;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_link&quot;&gt;&lt;strong&gt;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_LINK_URL</span> <span class="o">+</span> <span class="s1">&#39;:&lt;/strong&gt; &lt;input type=&quot;text&quot; name=&quot;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_link&quot; id=&quot;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_link&quot; value=&quot;&quot;&gt;&lt;/label&gt;&#39;</span><span class="o">;</span>
<span class="nx">str2</span> <span class="o">+=</span> <span class="s1">&#39;&lt;label for=&quot;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_target&quot;&gt;&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;&lt;input type=&quot;checkbox&quot; name=&quot;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_target_&quot; id=&quot;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_target&quot; value=&quot;_blank&quot; class=&quot;insertimage_target&quot;&gt; &#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_LINK_NEW_WINDOW</span> <span class="o">+</span> <span class="s1">&#39;&lt;/label&gt;&#39;</span><span class="o">;</span>
<span class="k">var</span> <span class="nx">div</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="s1">&#39;div&#39;</span><span class="o">);</span>
<span class="nx">div</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="nx">str2</span><span class="o">;</span>
<span class="nx">body</span><span class="o">.</span><span class="nx">appendChild</span><span class="o">(</span><span class="nx">div</span><span class="o">);</span>
<span class="k">var</span> <span class="nx">o</span> <span class="o">=</span> <span class="o">{};</span>
<span class="nx">Lang</span><span class="o">.</span><span class="nx">augmentObject</span><span class="o">(</span><span class="nx">o</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">_defaultImageToolbarConfig</span><span class="o">);</span> <span class="c">//Break the config reference</span>
<span class="c"></span>
<span class="k">var</span> <span class="nx">tbar</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">Toolbar</span><span class="o">(</span><span class="nx">tbarCont</span><span class="o">,</span> <span class="nx">o</span><span class="o">);</span>
<span class="nx">tbar</span><span class="o">.</span><span class="nx">editor_el</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">_defaultImageToolbar</span> <span class="o">=</span> <span class="nx">tbar</span><span class="o">;</span>
<span class="k">var</span> <span class="nx">cont</span> <span class="o">=</span> <span class="nx">tbar</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;cont&#39;</span><span class="o">);</span>
<span class="k">var</span> <span class="nx">hw</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="s1">&#39;div&#39;</span><span class="o">);</span>
<span class="nx">hw</span><span class="o">.</span><span class="nx">className</span> <span class="o">=</span> <span class="s1">&#39;yui-toolbar-group yui-toolbar-group-height-width height-width&#39;</span><span class="o">;</span>
<span class="nx">hw</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="s1">&#39;&lt;h3&gt;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_IMAGE_SIZE</span> <span class="o">+</span> <span class="s1">&#39;:&lt;/h3&gt;&#39;</span><span class="o">;</span>
<span class="c">/*</span>
<span class="c"> var orgSize = &#39;&#39;;</span>
<span class="c"> if ((height != oheight) || (width != owidth)) {</span>
<span class="c"> orgSize = &#39;&lt;span class=&quot;info&quot;&gt;&#39; + this.STR_IMAGE_ORIG_SIZE + &#39;&lt;br&gt;&#39;+ owidth +&#39; x &#39; + oheight + &#39;&lt;/span&gt;&#39;;</span>
<span class="c"> }</span>
<span class="c"> */</span>
<span class="nx">hw</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">+=</span> <span class="s1">&#39;&lt;span tabIndex=&quot;-1&quot;&gt;&lt;input type=&quot;text&quot; size=&quot;3&quot; value=&quot;&quot; id=&quot;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_width&quot;&gt; x &lt;input type=&quot;text&quot; size=&quot;3&quot; value=&quot;&quot; id=&quot;&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_height&quot;&gt;&lt;/span&gt;&#39;</span><span class="o">;</span>
<span class="nx">cont</span><span class="o">.</span><span class="nx">insertBefore</span><span class="o">(</span><span class="nx">hw</span><span class="o">,</span> <span class="nx">cont</span><span class="o">.</span><span class="nx">firstChild</span><span class="o">);</span>
<span class="nx">Event</span><span class="o">.</span><span class="nx">onAvailable</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_width&#39;</span><span class="o">,</span> <span class="k">function</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="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_width&#39;</span><span class="o">,</span> <span class="s1">&#39;blur&#39;</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">value</span> <span class="o">=</span> <span class="nb">parseInt</span><span class="o">(</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_width&#39;</span><span class="o">).</span><span class="nx">value</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">value</span> <span class="o">&gt;</span> <span class="m">5</span><span class="o">)</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_defaultImageToolbar</span><span class="o">.</span><span class="nx">editor_el</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="nx">value</span> <span class="o">+</span> <span class="s1">&#39;px&#39;</span><span class="o">;</span>
<span class="c">//Removed moveWindow call so the window doesn&#39;t jump</span>
<span class="c"></span> <span class="c">//this.moveWindow();</span>
<span class="c"></span> <span class="o">}</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">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
<span class="nx">Event</span><span class="o">.</span><span class="nx">onAvailable</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_height&#39;</span><span class="o">,</span> <span class="k">function</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="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_height&#39;</span><span class="o">,</span> <span class="s1">&#39;blur&#39;</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">value</span> <span class="o">=</span> <span class="nb">parseInt</span><span class="o">(</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_height&#39;</span><span class="o">).</span><span class="nx">value</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">value</span> <span class="o">&gt;</span> <span class="m">5</span><span class="o">)</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_defaultImageToolbar</span><span class="o">.</span><span class="nx">editor_el</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="nx">value</span> <span class="o">+</span> <span class="s1">&#39;px&#39;</span><span class="o">;</span>
<span class="c">//Removed moveWindow call so the window doesn&#39;t jump</span>
<span class="c"></span> <span class="c">//this.moveWindow();</span>
<span class="c"></span> <span class="o">}</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">this</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span>
<span class="nx">tbar</span><span class="o">.</span><span class="nx">on</span><span class="o">(</span><span class="s1">&#39;colorPickerClicked&#39;</span><span class="o">,</span> <span class="k">function</span><span class="o">(</span><span class="nx">o</span><span class="o">)</span> <span class="o">{</span>
<span class="k">var</span> <span class="nx">size</span> <span class="o">=</span> <span class="s1">&#39;1&#39;</span><span class="o">,</span> <span class="nx">type</span> <span class="o">=</span> <span class="s1">&#39;solid&#39;</span><span class="o">,</span> <span class="nx">color</span> <span class="o">=</span> <span class="s1">&#39;black&#39;</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">_defaultImageToolbar</span><span class="o">.</span><span class="nx">editor_el</span><span class="o">;</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">borderLeftWidth</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">size</span> <span class="o">=</span> <span class="nb">parseInt</span><span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">borderLeftWidth</span><span class="o">,</span> <span class="m">10</span><span class="o">);</span>
<span class="o">}</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">borderLeftStyle</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">type</span> <span class="o">=</span> <span class="nx">el</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">borderLeftStyle</span><span class="o">;</span>
<span class="o">}</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">borderLeftColor</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">color</span> <span class="o">=</span> <span class="nx">el</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">borderLeftColor</span><span class="o">;</span>
<span class="o">}</span>
<span class="k">var</span> <span class="nx">borderString</span> <span class="o">=</span> <span class="nx">size</span> <span class="o">+</span> <span class="s1">&#39;px &#39;</span> <span class="o">+</span> <span class="nx">type</span> <span class="o">+</span> <span class="s1">&#39; #&#39;</span> <span class="o">+</span> <span class="nx">o</span><span class="o">.</span><span class="nx">color</span><span class="o">;</span>
<span class="nx">el</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="nx">borderString</span><span class="o">;</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="nx">tbar</span><span class="o">.</span><span class="nx">on</span><span class="o">(</span><span class="s1">&#39;buttonClick&#39;</span><span class="o">,</span> <span class="k">function</span><span class="o">(</span><span class="nx">o</span><span class="o">)</span> <span class="o">{</span>
<span class="k">var</span> <span class="nx">value</span> <span class="o">=</span> <span class="nx">o</span><span class="o">.</span><span class="nx">button</span><span class="o">.</span><span class="nx">value</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">_defaultImageToolbar</span><span class="o">.</span><span class="nx">editor_el</span><span class="o">,</span>
<span class="nx">borderString</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="o">;</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">o</span><span class="o">.</span><span class="nx">button</span><span class="o">.</span><span class="nx">menucmd</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">value</span> <span class="o">=</span> <span class="nx">o</span><span class="o">.</span><span class="nx">button</span><span class="o">.</span><span class="nx">menucmd</span><span class="o">;</span>
<span class="o">}</span>
<span class="k">var</span> <span class="nx">size</span> <span class="o">=</span> <span class="s1">&#39;1&#39;</span><span class="o">,</span> <span class="nx">type</span> <span class="o">=</span> <span class="s1">&#39;solid&#39;</span><span class="o">,</span> <span class="nx">color</span> <span class="o">=</span> <span class="s1">&#39;black&#39;</span><span class="o">;</span>
<span class="c">/* All border calcs are done on the left border</span>
<span class="c"> since our default interface only supports</span>
<span class="c"> one border size/type and color */</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">borderLeftWidth</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">size</span> <span class="o">=</span> <span class="nb">parseInt</span><span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">borderLeftWidth</span><span class="o">,</span> <span class="m">10</span><span class="o">);</span>
<span class="o">}</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">borderLeftStyle</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">type</span> <span class="o">=</span> <span class="nx">el</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">borderLeftStyle</span><span class="o">;</span>
<span class="o">}</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">borderLeftColor</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">color</span> <span class="o">=</span> <span class="nx">el</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">borderLeftColor</span><span class="o">;</span>
<span class="o">}</span>
<span class="nx">switch</span><span class="o">(</span><span class="nx">value</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">case</span> <span class="s1">&#39;bordersize&#39;</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">browser</span><span class="o">.</span><span class="nx">webkit</span> <span class="o">&amp;&amp;</span> <span class="k">this</span><span class="o">.</span><span class="nx">_lastImage</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">_lastImage</span><span class="o">,</span> <span class="s1">&#39;selected&#39;</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_lastImage</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
<span class="o">}</span>
<span class="nx">borderString</span> <span class="o">=</span> <span class="nb">parseInt</span><span class="o">(</span><span class="nx">o</span><span class="o">.</span><span class="nx">button</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="m">10</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;px &#39;</span> <span class="o">+</span> <span class="nx">type</span> <span class="o">+</span> <span class="s1">&#39; &#39;</span> <span class="o">+</span> <span class="nx">color</span><span class="o">;</span>
<span class="nx">el</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="nx">borderString</span><span class="o">;</span>
<span class="k">if</span> <span class="o">(</span><span class="nb">parseInt</span><span class="o">(</span><span class="nx">o</span><span class="o">.</span><span class="nx">button</span><span class="o">.</span><span class="nx">value</span><span class="o">,</span> <span class="m">10</span><span class="o">)</span> <span class="o">&gt;</span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">tbar</span><span class="o">.</span><span class="nx">enableButton</span><span class="o">(</span><span class="s1">&#39;bordertype&#39;</span><span class="o">);</span>
<span class="nx">tbar</span><span class="o">.</span><span class="nx">enableButton</span><span class="o">(</span><span class="s1">&#39;bordercolor&#39;</span><span class="o">);</span>
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
<span class="nx">tbar</span><span class="o">.</span><span class="nx">disableButton</span><span class="o">(</span><span class="s1">&#39;bordertype&#39;</span><span class="o">);</span>
<span class="nx">tbar</span><span class="o">.</span><span class="nx">disableButton</span><span class="o">(</span><span class="s1">&#39;bordercolor&#39;</span><span class="o">);</span>
<span class="o">}</span>
<span class="k">break</span><span class="o">;</span>
<span class="nx">case</span> <span class="s1">&#39;bordertype&#39;</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">browser</span><span class="o">.</span><span class="nx">webkit</span> <span class="o">&amp;&amp;</span> <span class="k">this</span><span class="o">.</span><span class="nx">_lastImage</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">_lastImage</span><span class="o">,</span> <span class="s1">&#39;selected&#39;</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_lastImage</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
<span class="o">}</span>
<span class="nx">borderString</span> <span class="o">=</span> <span class="nx">size</span> <span class="o">+</span> <span class="s1">&#39;px &#39;</span> <span class="o">+</span> <span class="nx">o</span><span class="o">.</span><span class="nx">button</span><span class="o">.</span><span class="nx">value</span> <span class="o">+</span> <span class="s1">&#39; &#39;</span> <span class="o">+</span> <span class="nx">color</span><span class="o">;</span>
<span class="nx">el</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="nx">borderString</span><span class="o">;</span>
<span class="k">break</span><span class="o">;</span>
<span class="nx">case</span> <span class="s1">&#39;right&#39;</span><span class="o">:</span>
<span class="nx">case</span> <span class="s1">&#39;left&#39;</span><span class="o">:</span>
<span class="nx">tbar</span><span class="o">.</span><span class="nx">deselectAllButtons</span><span class="o">();</span>
<span class="nx">el</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="s1">&#39;&#39;</span><span class="o">;</span>
<span class="nx">el</span><span class="o">.</span><span class="nx">align</span> <span class="o">=</span> <span class="nx">o</span><span class="o">.</span><span class="nx">button</span><span class="o">.</span><span class="nx">value</span><span class="o">;</span>
<span class="k">break</span><span class="o">;</span>
<span class="nx">case</span> <span class="s1">&#39;inline&#39;</span><span class="o">:</span>
<span class="nx">tbar</span><span class="o">.</span><span class="nx">deselectAllButtons</span><span class="o">();</span>
<span class="nx">el</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="s1">&#39;&#39;</span><span class="o">;</span>
<span class="nx">el</span><span class="o">.</span><span class="nx">align</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="o">;</span>
<span class="k">break</span><span class="o">;</span>
<span class="nx">case</span> <span class="s1">&#39;block&#39;</span><span class="o">:</span>
<span class="nx">tbar</span><span class="o">.</span><span class="nx">deselectAllButtons</span><span class="o">();</span>
<span class="nx">el</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="s1">&#39;block&#39;</span><span class="o">;</span>
<span class="nx">el</span><span class="o">.</span><span class="nx">align</span> <span class="o">=</span> <span class="s1">&#39;center&#39;</span><span class="o">;</span>
<span class="k">break</span><span class="o">;</span>
<span class="nx">case</span> <span class="s1">&#39;padding&#39;</span><span class="o">:</span>
<span class="k">var</span> <span class="nx">_button</span> <span class="o">=</span> <span class="nx">tbar</span><span class="o">.</span><span class="nx">getButtonById</span><span class="o">(</span><span class="nx">o</span><span class="o">.</span><span class="nx">button</span><span class="o">.</span><span class="nx">id</span><span class="o">);</span>
<span class="nx">el</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="nx">_button</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;label&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;px&#39;</span><span class="o">;</span>
<span class="k">break</span><span class="o">;</span>
<span class="o">}</span>
<span class="nx">tbar</span><span class="o">.</span><span class="nx">selectButton</span><span class="o">(</span><span class="nx">o</span><span class="o">.</span><span class="nx">button</span><span class="o">.</span><span class="nx">value</span><span class="o">);</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">value</span> <span class="o">!==</span> <span class="s1">&#39;padding&#39;</span><span class="o">)</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">moveWindow</span><span class="o">();</span>
<span class="o">}</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="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;localFileWarning&#39;</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="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_link&#39;</span><span class="o">,</span> <span class="s1">&#39;blur&#39;</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">url</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_link&#39;</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">_isLocalFile</span><span class="o">(</span><span class="nx">url</span><span class="o">.</span><span class="nx">value</span><span class="o">))</span> <span class="o">{</span>
<span class="c">//Local File throw Warning</span>
<span class="c"></span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">url</span><span class="o">,</span> <span class="s1">&#39;warning&#39;</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="s1">&#39;Local file reference found, show local warning&#39;</span><span class="o">,</span> <span class="s1">&#39;warn&#39;</span><span class="o">,</span> <span class="s1">&#39;Editor&#39;</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">).</span><span class="nx">setFooter</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">STR_LOCAL_FILE_WARNING</span><span class="o">);</span>
<span class="o">}</span> <span class="k">else</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="nx">url</span><span class="o">,</span> <span class="s1">&#39;warning&#39;</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">).</span><span class="nx">setFooter</span><span class="o">(</span><span class="s1">&#39; &#39;</span><span class="o">);</span>
<span class="c">//Adobe AIR Code</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">browser</span><span class="o">.</span><span class="nx">webkit</span> <span class="o">&amp;&amp;</span> <span class="o">!</span><span class="k">this</span><span class="o">.</span><span class="nx">browser</span><span class="o">.</span><span class="nx">webkit3</span> <span class="o">||</span> <span class="k">this</span><span class="o">.</span><span class="nx">browser</span><span class="o">.</span><span class="nx">air</span><span class="o">)</span> <span class="o">||</span> <span class="k">this</span><span class="o">.</span><span class="nx">browser</span><span class="o">.</span><span class="nx">opera</span><span class="o">)</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">).</span><span class="nx">setFooter</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">STR_IMAGE_COPY</span><span class="o">);</span>
<span class="o">}</span>
<span class="o">}</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="nx">Event</span><span class="o">.</span><span class="nx">on</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_url&#39;</span><span class="o">,</span> <span class="s1">&#39;blur&#39;</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">url</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_url&#39;</span><span class="o">);</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">url</span><span class="o">.</span><span class="nx">value</span> <span class="o">&amp;&amp;</span> <span class="nx">el</span><span class="o">)</span> <span class="o">{</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">url</span><span class="o">.</span><span class="nx">value</span> <span class="o">==</span> <span class="nx">el</span><span class="o">.</span><span class="nx">getAttribute</span><span class="o">(</span><span class="s1">&#39;src&#39;</span><span class="o">,</span> <span class="m">2</span><span class="o">))</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="s1">&#39;Images are the same, bail on blur handler&#39;</span><span class="o">,</span> <span class="s1">&#39;info&#39;</span><span class="o">,</span> <span class="s1">&#39;Editor&#39;</span><span class="o">);</span>
<span class="k">return</span> <span class="kc">false</span><span class="o">;</span>
<span class="o">}</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="s1">&#39;Images are different, process blur handler&#39;</span><span class="o">,</span> <span class="s1">&#39;info&#39;</span><span class="o">,</span> <span class="s1">&#39;Editor&#39;</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">_isLocalFile</span><span class="o">(</span><span class="nx">url</span><span class="o">.</span><span class="nx">value</span><span class="o">))</span> <span class="o">{</span>
<span class="c">//Local File throw Warning</span>
<span class="c"></span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">addClass</span><span class="o">(</span><span class="nx">url</span><span class="o">,</span> <span class="s1">&#39;warning&#39;</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="s1">&#39;Local file reference found, show local warning&#39;</span><span class="o">,</span> <span class="s1">&#39;warn&#39;</span><span class="o">,</span> <span class="s1">&#39;Editor&#39;</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">).</span><span class="nx">setFooter</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">STR_LOCAL_FILE_WARNING</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="k">this</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</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="nx">url</span><span class="o">,</span> <span class="s1">&#39;warning&#39;</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">).</span><span class="nx">setFooter</span><span class="o">(</span><span class="s1">&#39; &#39;</span><span class="o">);</span>
<span class="c">//Adobe AIR Code</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">browser</span><span class="o">.</span><span class="nx">webkit</span> <span class="o">&amp;&amp;</span> <span class="o">!</span><span class="k">this</span><span class="o">.</span><span class="nx">browser</span><span class="o">.</span><span class="nx">webkit3</span> <span class="o">||</span> <span class="k">this</span><span class="o">.</span><span class="nx">browser</span><span class="o">.</span><span class="nx">air</span><span class="o">)</span> <span class="o">||</span> <span class="k">this</span><span class="o">.</span><span class="nx">browser</span><span class="o">.</span><span class="nx">opera</span><span class="o">)</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">).</span><span class="nx">setFooter</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">STR_IMAGE_COPY</span><span class="o">);</span>
<span class="o">}</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">url</span> <span class="o">&amp;&amp;</span> <span class="nx">url</span><span class="o">.</span><span class="nx">value</span> <span class="o">&amp;&amp;</span> <span class="o">(</span><span class="nx">url</span><span class="o">.</span><span class="nx">value</span> <span class="o">!=</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_IMAGE_HERE</span><span class="o">))</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">].</span><span class="nx">setAttribute</span><span class="o">(</span><span class="s1">&#39;src&#39;</span><span class="o">,</span> <span class="nx">url</span><span class="o">.</span><span class="nx">value</span><span class="o">);</span>
<span class="k">var</span> <span class="nx">self</span> <span class="o">=</span> <span class="k">this</span><span class="o">,</span>
<span class="nx">img</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Image</span><span class="o">();</span>
<span class="nx">img</span><span class="o">.</span><span class="nx">onerror</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
<span class="nx">url</span><span class="o">.</span><span class="nx">value</span> <span class="o">=</span> <span class="nx">self</span><span class="o">.</span><span class="nx">STR_IMAGE_HERE</span><span class="o">;</span>
<span class="nx">img</span><span class="o">.</span><span class="nx">setAttribute</span><span class="o">(</span><span class="s1">&#39;src&#39;</span><span class="o">,</span> <span class="nx">self</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;blankimage&#39;</span><span class="o">));</span>
<span class="nx">self</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">].</span><span class="nx">setAttribute</span><span class="o">(</span><span class="s1">&#39;src&#39;</span><span class="o">,</span> <span class="nx">self</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;blankimage&#39;</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">get</span><span class="o">(</span><span class="nx">self</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_height&#39;</span><span class="o">).</span><span class="nx">value</span> <span class="o">=</span> <span class="nx">img</span><span class="o">.</span><span class="nx">height</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">get</span><span class="o">(</span><span class="nx">self</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_width&#39;</span><span class="o">).</span><span class="nx">value</span> <span class="o">=</span> <span class="nx">img</span><span class="o">.</span><span class="nx">width</span><span class="o">;</span>
<span class="o">};</span>
<span class="k">var</span> <span class="nx">id</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">);</span>
<span class="nb">window</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">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">get</span><span class="o">(</span><span class="nx">id</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_height&#39;</span><span class="o">).</span><span class="nx">value</span> <span class="o">=</span> <span class="nx">img</span><span class="o">.</span><span class="nx">height</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">get</span><span class="o">(</span><span class="nx">id</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_width&#39;</span><span class="o">).</span><span class="nx">value</span> <span class="o">=</span> <span class="nx">img</span><span class="o">.</span><span class="nx">width</span><span class="o">;</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">self</span><span class="o">.</span><span class="nx">currentElement</span> <span class="o">&amp;&amp;</span> <span class="nx">self</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">])</span> <span class="o">{</span>
<span class="k">if</span> <span class="o">(!</span><span class="nx">self</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">].</span><span class="nx">_height</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">self</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">].</span><span class="nx">_height</span> <span class="o">=</span> <span class="nx">img</span><span class="o">.</span><span class="nx">height</span><span class="o">;</span>
<span class="o">}</span>
<span class="k">if</span> <span class="o">(!</span><span class="nx">self</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">].</span><span class="nx">_width</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">self</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">].</span><span class="nx">_width</span> <span class="o">=</span> <span class="nx">img</span><span class="o">.</span><span class="nx">width</span><span class="o">;</span>
<span class="o">}</span>
<span class="o">}</span>
<span class="c">//Removed moveWindow call so the window doesn&#39;t jump</span>
<span class="c"></span> <span class="c">//self.moveWindow();</span>
<span class="c"></span> <span class="o">},</span> <span class="m">800</span><span class="o">);</span> <span class="c">//Bumped the timeout up to account for larger images..</span>
<span class="c"></span>
<span class="k">if</span> <span class="o">(</span><span class="nx">url</span><span class="o">.</span><span class="nx">value</span> <span class="o">!=</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_IMAGE_HERE</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">img</span><span class="o">.</span><span class="nx">src</span> <span class="o">=</span> <span class="nx">url</span><span class="o">.</span><span class="nx">value</span><span class="o">;</span>
<span class="o">}</span>
<span class="o">}</span>
<span class="o">}</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="k">this</span><span class="o">.</span><span class="nx">_windows</span><span class="o">.</span><span class="nx">insertimage</span> <span class="o">=</span> <span class="o">{};</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_windows</span><span class="o">.</span><span class="nx">insertimage</span><span class="o">.</span><span class="nx">body</span> <span class="o">=</span> <span class="nx">body</span><span class="o">;</span>
<span class="nx">body</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="s1">&#39;none&#39;</span><span class="o">;</span>
<span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">).</span><span class="nx">editor_form</span><span class="o">.</span><span class="nx">appendChild</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">fireEvent</span><span class="o">(</span><span class="s1">&#39;windowInsertImageRender&#39;</span><span class="o">,</span> <span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;windowInsertImageRender&#39;</span><span class="o">,</span> <span class="nx">panel</span><span class="o">:</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">),</span> <span class="nx">body</span><span class="o">:</span> <span class="nx">body</span><span class="o">,</span> <span class="nx">toolbar</span><span class="o">:</span> <span class="nx">tbar</span> <span class="o">});</span>
<span class="k">return</span> <span class="nx">body</span><span class="o">;</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @method _handleInsertImageClick</span>
<span class="c"> * @description Opens the Image Properties Window when the insert Image button is clicked or an Image is Double Clicked.</span>
<span class="c"> */</span>
<span class="nx">_handleInsertImageClick</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">get</span><span class="o">(</span><span class="s1">&#39;limitCommands&#39;</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">toolbar</span><span class="o">.</span><span class="nx">getButtonByValue</span><span class="o">(</span><span class="s1">&#39;insertimage&#39;</span><span class="o">))</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="s1">&#39;Toolbar Button for (insertimage) was not found, skipping exec.&#39;</span><span class="o">,</span> <span class="s1">&#39;info&#39;</span><span class="o">,</span> <span class="s1">&#39;Editor&#39;</span><span class="o">);</span>
<span class="k">return</span> <span class="kc">false</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">on</span><span class="o">(</span><span class="s1">&#39;afterExecCommand&#39;</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">el</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">],</span>
<span class="nx">body</span> <span class="o">=</span> <span class="kc">null</span><span class="o">,</span>
<span class="nx">link</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="o">,</span>
<span class="nx">target</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="o">,</span>
<span class="nx">tbar</span> <span class="o">=</span> <span class="kc">null</span><span class="o">,</span>
<span class="nx">title</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="o">,</span>
<span class="nx">src</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="o">,</span>
<span class="nx">align</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="o">,</span>
<span class="nx">height</span> <span class="o">=</span> <span class="m">75</span><span class="o">,</span>
<span class="nx">width</span> <span class="o">=</span> <span class="m">75</span><span class="o">,</span>
<span class="nx">padding</span> <span class="o">=</span> <span class="m">0</span><span class="o">,</span>
<span class="nx">oheight</span> <span class="o">=</span> <span class="m">0</span><span class="o">,</span>
<span class="nx">owidth</span> <span class="o">=</span> <span class="m">0</span><span class="o">,</span>
<span class="nx">blankimage</span> <span class="o">=</span> <span class="kc">false</span><span class="o">,</span>
<span class="nx">win</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">widget</span><span class="o">.</span><span class="nx">EditorWindow</span><span class="o">(</span><span class="s1">&#39;insertimage&#39;</span><span class="o">,</span> <span class="o">{</span>
<span class="nx">width</span><span class="o">:</span> <span class="s1">&#39;415px&#39;</span>
<span class="o">});</span>
<span class="k">if</span> <span class="o">(!</span><span class="nx">el</span><span class="o">)</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">_getSelectedElement</span><span class="o">();</span>
<span class="o">}</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">el</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">win</span><span class="o">.</span><span class="nx">el</span> <span class="o">=</span> <span class="nx">el</span><span class="o">;</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">getAttribute</span><span class="o">(</span><span class="s1">&#39;src&#39;</span><span class="o">))</span> <span class="o">{</span>
<span class="nx">src</span> <span class="o">=</span> <span class="nx">el</span><span class="o">.</span><span class="nx">getAttribute</span><span class="o">(</span><span class="s1">&#39;src&#39;</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">src</span><span class="o">.</span><span class="nx">indexOf</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;blankimage&#39;</span><span class="o">))</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">src</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_IMAGE_HERE</span><span class="o">;</span>
<span class="nx">blankimage</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">el</span><span class="o">.</span><span class="nx">getAttribute</span><span class="o">(</span><span class="s1">&#39;alt&#39;</span><span class="o">,</span> <span class="m">2</span><span class="o">))</span> <span class="o">{</span>
<span class="nx">title</span> <span class="o">=</span> <span class="nx">el</span><span class="o">.</span><span class="nx">getAttribute</span><span class="o">(</span><span class="s1">&#39;alt&#39;</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">el</span><span class="o">.</span><span class="nx">getAttribute</span><span class="o">(</span><span class="s1">&#39;title&#39;</span><span class="o">,</span> <span class="m">2</span><span class="o">))</span> <span class="o">{</span>
<span class="nx">title</span> <span class="o">=</span> <span class="nx">el</span><span class="o">.</span><span class="nx">getAttribute</span><span class="o">(</span><span class="s1">&#39;title&#39;</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">el</span><span class="o">.</span><span class="nx">parentNode</span> <span class="o">&amp;&amp;</span> <span class="k">this</span><span class="o">.</span><span class="nx">_isElement</span><span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">,</span> <span class="s1">&#39;a&#39;</span><span class="o">))</span> <span class="o">{</span>
<span class="nx">link</span> <span class="o">=</span> <span class="nx">el</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">.</span><span class="nx">getAttribute</span><span class="o">(</span><span class="s1">&#39;href&#39;</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">el</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">.</span><span class="nx">getAttribute</span><span class="o">(</span><span class="s1">&#39;target&#39;</span><span class="o">)</span> <span class="o">!==</span> <span class="kc">null</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">target</span> <span class="o">=</span> <span class="nx">el</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">.</span><span class="nx">getAttribute</span><span class="o">(</span><span class="s1">&#39;target&#39;</span><span class="o">);</span>
<span class="o">}</span>
<span class="o">}</span>
<span class="nx">height</span> <span class="o">=</span> <span class="nb">parseInt</span><span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">height</span><span class="o">,</span> <span class="m">10</span><span class="o">);</span>
<span class="nx">width</span> <span class="o">=</span> <span class="nb">parseInt</span><span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">width</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">el</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">height</span> <span class="o">=</span> <span class="nb">parseInt</span><span class="o">(</span><span class="nx">el</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="m">10</span><span class="o">);</span>
<span class="o">}</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">el</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">width</span> <span class="o">=</span> <span class="nb">parseInt</span><span class="o">(</span><span class="nx">el</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="m">10</span><span class="o">);</span>
<span class="o">}</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">el</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="o">{</span>
<span class="nx">padding</span> <span class="o">=</span> <span class="nb">parseInt</span><span class="o">(</span><span class="nx">el</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="m">10</span><span class="o">);</span>
<span class="o">}</span>
<span class="k">if</span> <span class="o">(!</span><span class="nx">el</span><span class="o">.</span><span class="nx">_height</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">el</span><span class="o">.</span><span class="nx">_height</span> <span class="o">=</span> <span class="nx">height</span><span class="o">;</span>
<span class="o">}</span>
<span class="k">if</span> <span class="o">(!</span><span class="nx">el</span><span class="o">.</span><span class="nx">_width</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">el</span><span class="o">.</span><span class="nx">_width</span> <span class="o">=</span> <span class="nx">width</span><span class="o">;</span>
<span class="o">}</span>
<span class="nx">oheight</span> <span class="o">=</span> <span class="nx">el</span><span class="o">.</span><span class="nx">_height</span><span class="o">;</span>
<span class="nx">owidth</span> <span class="o">=</span> <span class="nx">el</span><span class="o">.</span><span class="nx">_width</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">_windows</span><span class="o">.</span><span class="nx">insertimage</span> <span class="o">&amp;&amp;</span> <span class="k">this</span><span class="o">.</span><span class="nx">_windows</span><span class="o">.</span><span class="nx">insertimage</span><span class="o">.</span><span class="nx">body</span><span class="o">)</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">_windows</span><span class="o">.</span><span class="nx">insertimage</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">_defaultImageToolbar</span><span class="o">.</span><span class="nx">resetAllButtons</span><span class="o">();</span>
<span class="o">}</span> <span class="k">else</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">_renderInsertImageWindow</span><span class="o">();</span>
<span class="o">}</span>
<span class="nx">tbar</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_defaultImageToolbar</span><span class="o">;</span>
<span class="nx">tbar</span><span class="o">.</span><span class="nx">editor_el</span> <span class="o">=</span> <span class="nx">el</span><span class="o">;</span>
<span class="k">var</span> <span class="nx">bsize</span> <span class="o">=</span> <span class="s1">&#39;0&#39;</span><span class="o">;</span>
<span class="k">var</span> <span class="nx">btype</span> <span class="o">=</span> <span class="s1">&#39;solid&#39;</span><span class="o">;</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">borderLeftWidth</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">bsize</span> <span class="o">=</span> <span class="nb">parseInt</span><span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">borderLeftWidth</span><span class="o">,</span> <span class="m">10</span><span class="o">);</span>
<span class="o">}</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">borderLeftStyle</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">btype</span> <span class="o">=</span> <span class="nx">el</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">borderLeftStyle</span><span class="o">;</span>
<span class="o">}</span>
<span class="k">var</span> <span class="nx">bs_button</span> <span class="o">=</span> <span class="nx">tbar</span><span class="o">.</span><span class="nx">getButtonByValue</span><span class="o">(</span><span class="s1">&#39;bordersize&#39;</span><span class="o">);</span>
<span class="k">var</span> <span class="nx">bSizeStr</span> <span class="o">=</span> <span class="o">((</span><span class="nb">parseInt</span><span class="o">(</span><span class="nx">bsize</span><span class="o">,</span> <span class="m">10</span><span class="o">)</span> <span class="o">&gt;</span> <span class="m">0</span><span class="o">)</span> <span class="o">?</span> <span class="s1">&#39;&#39;</span> <span class="o">:</span> <span class="s1">&#39;none&#39;</span><span class="o">);</span>
<span class="nx">bs_button</span><span class="o">.</span><span class="nx">set</span><span class="o">(</span><span class="s1">&#39;label&#39;</span><span class="o">,</span> <span class="s1">&#39;&lt;span class=&quot;yui-toolbar-bordersize-&#39;</span> <span class="o">+</span> <span class="nx">bsize</span> <span class="o">+</span> <span class="s1">&#39;&quot;&gt;&#39;</span><span class="o">+</span><span class="nx">bSizeStr</span><span class="o">+</span><span class="s1">&#39;&lt;/span&gt;&#39;</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_updateMenuChecked</span><span class="o">(</span><span class="s1">&#39;bordersize&#39;</span><span class="o">,</span> <span class="nx">bsize</span><span class="o">,</span> <span class="nx">tbar</span><span class="o">);</span>
<span class="k">var</span> <span class="nx">bt_button</span> <span class="o">=</span> <span class="nx">tbar</span><span class="o">.</span><span class="nx">getButtonByValue</span><span class="o">(</span><span class="s1">&#39;bordertype&#39;</span><span class="o">);</span>
<span class="nx">bt_button</span><span class="o">.</span><span class="nx">set</span><span class="o">(</span><span class="s1">&#39;label&#39;</span><span class="o">,</span> <span class="s1">&#39;&lt;span class=&quot;yui-toolbar-bordertype-&#39;</span> <span class="o">+</span> <span class="nx">btype</span> <span class="o">+</span> <span class="s1">&#39;&quot;&gt;&lt;/span&gt;&#39;</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_updateMenuChecked</span><span class="o">(</span><span class="s1">&#39;bordertype&#39;</span><span class="o">,</span> <span class="nx">btype</span><span class="o">,</span> <span class="nx">tbar</span><span class="o">);</span>
<span class="k">if</span> <span class="o">(</span><span class="nb">parseInt</span><span class="o">(</span><span class="nx">bsize</span><span class="o">,</span> <span class="m">10</span><span class="o">)</span> <span class="o">&gt;</span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">tbar</span><span class="o">.</span><span class="nx">enableButton</span><span class="o">(</span><span class="nx">bt_button</span><span class="o">);</span>
<span class="nx">tbar</span><span class="o">.</span><span class="nx">enableButton</span><span class="o">(</span><span class="nx">bs_button</span><span class="o">);</span>
<span class="nx">tbar</span><span class="o">.</span><span class="nx">enableButton</span><span class="o">(</span><span class="s1">&#39;bordercolor&#39;</span><span class="o">);</span>
<span class="o">}</span>
<span class="k">if</span> <span class="o">((</span><span class="nx">el</span><span class="o">.</span><span class="nx">align</span> <span class="o">==</span> <span class="s1">&#39;right&#39;</span><span class="o">)</span> <span class="o">||</span> <span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">align</span> <span class="o">==</span> <span class="s1">&#39;left&#39;</span><span class="o">))</span> <span class="o">{</span>
<span class="nx">tbar</span><span class="o">.</span><span class="nx">selectButton</span><span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">align</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">el</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="s1">&#39;block&#39;</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">tbar</span><span class="o">.</span><span class="nx">selectButton</span><span class="o">(</span><span class="s1">&#39;block&#39;</span><span class="o">);</span>
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
<span class="nx">tbar</span><span class="o">.</span><span class="nx">selectButton</span><span class="o">(</span><span class="s1">&#39;inline&#39;</span><span class="o">);</span>
<span class="o">}</span>
<span class="k">if</span> <span class="o">(</span><span class="nb">parseInt</span><span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">marginLeft</span><span class="o">,</span> <span class="m">10</span><span class="o">)</span> <span class="o">&gt;</span> <span class="m">0</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">tbar</span><span class="o">.</span><span class="nx">getButtonByValue</span><span class="o">(</span><span class="s1">&#39;padding&#39;</span><span class="o">).</span><span class="nx">set</span><span class="o">(</span><span class="s1">&#39;label&#39;</span><span class="o">,</span> <span class="s1">&#39;&#39;</span><span class="o">+</span><span class="nb">parseInt</span><span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">marginLeft</span><span class="o">,</span> <span class="m">10</span><span class="o">));</span>
<span class="o">}</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">borderSize</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">tbar</span><span class="o">.</span><span class="nx">selectButton</span><span class="o">(</span><span class="s1">&#39;bordersize&#39;</span><span class="o">);</span>
<span class="nx">tbar</span><span class="o">.</span><span class="nx">selectButton</span><span class="o">(</span><span class="nb">parseInt</span><span class="o">(</span><span class="nx">el</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">borderSize</span><span class="o">,</span> <span class="m">10</span><span class="o">));</span>
<span class="o">}</span>
<span class="nx">tbar</span><span class="o">.</span><span class="nx">getButtonByValue</span><span class="o">(</span><span class="s1">&#39;padding&#39;</span><span class="o">).</span><span class="nx">set</span><span class="o">(</span><span class="s1">&#39;label&#39;</span><span class="o">,</span> <span class="s1">&#39;&#39;</span><span class="o">+</span><span class="nx">padding</span><span class="o">);</span>
<span class="nx">win</span><span class="o">.</span><span class="nx">setHeader</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">STR_IMAGE_PROP_TITLE</span><span class="o">);</span>
<span class="nx">win</span><span class="o">.</span><span class="nx">setBody</span><span class="o">(</span><span class="nx">body</span><span class="o">);</span>
<span class="c">//Adobe AIR Code</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">browser</span><span class="o">.</span><span class="nx">webkit</span> <span class="o">&amp;&amp;</span> <span class="o">!</span><span class="k">this</span><span class="o">.</span><span class="nx">browser</span><span class="o">.</span><span class="nx">webkit3</span> <span class="o">||</span> <span class="k">this</span><span class="o">.</span><span class="nx">browser</span><span class="o">.</span><span class="nx">air</span><span class="o">)</span> <span class="o">||</span> <span class="k">this</span><span class="o">.</span><span class="nx">browser</span><span class="o">.</span><span class="nx">opera</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">win</span><span class="o">.</span><span class="nx">setFooter</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">STR_IMAGE_COPY</span><span class="o">);</span>
<span class="o">}</span>
<span class="k">this</span><span class="o">.</span><span class="nx">openWindow</span><span class="o">(</span><span class="nx">win</span><span class="o">);</span>
<span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_url&#39;</span><span class="o">).</span><span class="nx">value</span> <span class="o">=</span> <span class="nx">src</span><span class="o">;</span>
<span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_title&#39;</span><span class="o">).</span><span class="nx">value</span> <span class="o">=</span> <span class="nx">title</span><span class="o">;</span>
<span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_link&#39;</span><span class="o">).</span><span class="nx">value</span> <span class="o">=</span> <span class="nx">link</span><span class="o">;</span>
<span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_target&#39;</span><span class="o">).</span><span class="nx">checked</span> <span class="o">=</span> <span class="o">((</span><span class="nx">target</span><span class="o">)</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">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_width&#39;</span><span class="o">).</span><span class="nx">value</span> <span class="o">=</span> <span class="nx">width</span><span class="o">;</span>
<span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_height&#39;</span><span class="o">).</span><span class="nx">value</span> <span class="o">=</span> <span class="nx">height</span><span class="o">;</span>
<span class="k">var</span> <span class="nx">orgSize</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="o">;</span>
<span class="k">if</span> <span class="o">((</span><span class="nx">height</span> <span class="o">!=</span> <span class="nx">oheight</span><span class="o">)</span> <span class="o">||</span> <span class="o">(</span><span class="nx">width</span> <span class="o">!=</span> <span class="nx">owidth</span><span class="o">))</span> <span class="o">{</span>
<span class="k">var</span> <span class="nx">s</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="s1">&#39;span&#39;</span><span class="o">);</span>
<span class="nx">s</span><span class="o">.</span><span class="nx">className</span> <span class="o">=</span> <span class="s1">&#39;info&#39;</span><span class="o">;</span>
<span class="c">//s.innerHTML = this.STR_IMAGE_ORIG_SIZE + &#39;&lt;br&gt;&#39;+ owidth +&#39; x &#39; + oheight;</span>
<span class="c"></span> <span class="nx">s</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_IMAGE_ORIG_SIZE</span> <span class="o">+</span> <span class="s1">&#39;: (&#39;</span><span class="o">+</span> <span class="nx">owidth</span> <span class="o">+</span><span class="s1">&#39; x &#39;</span> <span class="o">+</span> <span class="nx">oheight</span> <span class="o">+</span> <span class="s1">&#39;)&#39;</span><span class="o">;</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_height&#39;</span><span class="o">).</span><span class="nx">nextSibling</span><span class="o">)</span> <span class="o">{</span>
<span class="k">var</span> <span class="nx">old</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_height&#39;</span><span class="o">).</span><span class="nx">nextSibling</span><span class="o">;</span>
<span class="nx">old</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="nx">old</span><span class="o">);</span>
<span class="o">}</span>
<span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_height&#39;</span><span class="o">).</span><span class="nx">parentNode</span><span class="o">.</span><span class="nx">appendChild</span><span class="o">(</span><span class="nx">s</span><span class="o">);</span>
<span class="o">}</span>
<span class="k">this</span><span class="o">.</span><span class="nx">toolbar</span><span class="o">.</span><span class="nx">selectButton</span><span class="o">(</span><span class="s1">&#39;insertimage&#39;</span><span class="o">);</span>
<span class="k">var</span> <span class="nx">id</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">);</span>
<span class="nb">window</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="k">try</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">get</span><span class="o">(</span><span class="nx">id</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_url&#39;</span><span class="o">).</span><span class="nx">focus</span><span class="o">();</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">blankimage</span><span class="o">)</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">get</span><span class="o">(</span><span class="nx">id</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_url&#39;</span><span class="o">).</span><span class="nx">select</span><span class="o">();</span>
<span class="o">}</span>
<span class="o">}</span> <span class="k">catch</span> <span class="o">(</span><span class="nx">e</span><span class="o">)</span> <span class="o">{}</span>
<span class="o">},</span> <span class="m">50</span><span class="o">);</span>
<span class="o">});</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @method _handleInsertImageWindowClose</span>
<span class="c"> * @description Handles the closing of the Image Properties Window.</span>
<span class="c"> */</span>
<span class="nx">_handleInsertImageWindowClose</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">url</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_url&#39;</span><span class="o">),</span>
<span class="nx">title</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_title&#39;</span><span class="o">),</span>
<span class="nx">link</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_link&#39;</span><span class="o">),</span>
<span class="nx">target</span> <span class="o">=</span> <span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_target&#39;</span><span class="o">),</span>
<span class="nx">el</span> <span class="o">=</span> <span class="nx">arguments</span><span class="o">[</span><span class="m">0</span><span class="o">].</span><span class="nx">win</span><span class="o">.</span><span class="nx">el</span><span class="o">;</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">url</span> <span class="o">&amp;&amp;</span> <span class="nx">url</span><span class="o">.</span><span class="nx">value</span> <span class="o">&amp;&amp;</span> <span class="o">(</span><span class="nx">url</span><span class="o">.</span><span class="nx">value</span> <span class="o">!=</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_IMAGE_HERE</span><span class="o">))</span> <span class="o">{</span>
<span class="nx">el</span><span class="o">.</span><span class="nx">setAttribute</span><span class="o">(</span><span class="s1">&#39;src&#39;</span><span class="o">,</span> <span class="nx">url</span><span class="o">.</span><span class="nx">value</span><span class="o">);</span>
<span class="nx">el</span><span class="o">.</span><span class="nx">setAttribute</span><span class="o">(</span><span class="s1">&#39;title&#39;</span><span class="o">,</span> <span class="nx">title</span><span class="o">.</span><span class="nx">value</span><span class="o">);</span>
<span class="nx">el</span><span class="o">.</span><span class="nx">setAttribute</span><span class="o">(</span><span class="s1">&#39;alt&#39;</span><span class="o">,</span> <span class="nx">title</span><span class="o">.</span><span class="nx">value</span><span class="o">);</span>
<span class="k">var</span> <span class="nx">par</span> <span class="o">=</span> <span class="nx">el</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">link</span><span class="o">.</span><span class="nx">value</span><span class="o">)</span> <span class="o">{</span>
<span class="k">var</span> <span class="nx">urlValue</span> <span class="o">=</span> <span class="nx">link</span><span class="o">.</span><span class="nx">value</span><span class="o">;</span>
<span class="k">if</span> <span class="o">((</span><span class="nx">urlValue</span><span class="o">.</span><span class="nx">indexOf</span><span class="o">(</span><span class="s1">&#39;:/&#39;</span><span class="o">+</span><span class="s1">&#39;/&#39;</span><span class="o">)</span> <span class="o">==</span> <span class="o">-</span><span class="m">1</span><span class="o">)</span> <span class="o">&amp;&amp;</span> <span class="o">(</span><span class="nx">urlValue</span><span class="o">.</span><span class="nx">substring</span><span class="o">(</span><span class="m">0</span><span class="o">,</span><span class="m">1</span><span class="o">)</span> <span class="o">!=</span> <span class="s1">&#39;/&#39;</span><span class="o">)</span> <span class="o">&amp;&amp;</span> <span class="o">(</span><span class="nx">urlValue</span><span class="o">.</span><span class="nx">substring</span><span class="o">(</span><span class="m">0</span><span class="o">,</span> <span class="m">6</span><span class="o">).</span><span class="nx">toLowerCase</span><span class="o">()</span> <span class="o">!=</span> <span class="s1">&#39;mailto&#39;</span><span class="o">))</span> <span class="o">{</span>
<span class="k">if</span> <span class="o">((</span><span class="nx">urlValue</span><span class="o">.</span><span class="nx">indexOf</span><span class="o">(</span><span class="s1">&#39;@&#39;</span><span class="o">)</span> <span class="o">!=</span> <span class="o">-</span><span class="m">1</span><span class="o">)</span> <span class="o">&amp;&amp;</span> <span class="o">(</span><span class="nx">urlValue</span><span class="o">.</span><span class="nx">substring</span><span class="o">(</span><span class="m">0</span><span class="o">,</span> <span class="m">6</span><span class="o">).</span><span class="nx">toLowerCase</span><span class="o">()</span> <span class="o">!=</span> <span class="s1">&#39;mailto&#39;</span><span class="o">))</span> <span class="o">{</span>
<span class="c">//Found an @ sign, prefix with mailto:</span>
<span class="c"></span> <span class="nx">urlValue</span> <span class="o">=</span> <span class="s1">&#39;mailto:&#39;</span> <span class="o">+</span> <span class="nx">urlValue</span><span class="o">;</span>
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
<span class="c">// :// not found adding</span>
<span class="c"></span> <span class="nx">urlValue</span> <span class="o">=</span> <span class="s1">&#39;http:/&#39;</span><span class="o">+</span><span class="s1">&#39;/&#39;</span> <span class="o">+</span> <span class="nx">urlValue</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">par</span> <span class="o">&amp;&amp;</span> <span class="k">this</span><span class="o">.</span><span class="nx">_isElement</span><span class="o">(</span><span class="nx">par</span><span class="o">,</span> <span class="s1">&#39;a&#39;</span><span class="o">))</span> <span class="o">{</span>
<span class="nx">par</span><span class="o">.</span><span class="nx">setAttribute</span><span class="o">(</span><span class="s1">&#39;href&#39;</span><span class="o">,</span> <span class="nx">urlValue</span><span class="o">);</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">target</span><span class="o">.</span><span class="nx">checked</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">par</span><span class="o">.</span><span class="nx">setAttribute</span><span class="o">(</span><span class="s1">&#39;target&#39;</span><span class="o">,</span> <span class="nx">target</span><span class="o">.</span><span class="nx">value</span><span class="o">);</span>
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
<span class="nx">par</span><span class="o">.</span><span class="nx">setAttribute</span><span class="o">(</span><span class="s1">&#39;target&#39;</span><span class="o">,</span> <span class="s1">&#39;&#39;</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">var</span> <span class="nx">_a</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_getDoc</span><span class="o">().</span><span class="nx">createElement</span><span class="o">(</span><span class="s1">&#39;a&#39;</span><span class="o">);</span>
<span class="nx">_a</span><span class="o">.</span><span class="nx">setAttribute</span><span class="o">(</span><span class="s1">&#39;href&#39;</span><span class="o">,</span> <span class="nx">urlValue</span><span class="o">);</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">target</span><span class="o">.</span><span class="nx">checked</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">_a</span><span class="o">.</span><span class="nx">setAttribute</span><span class="o">(</span><span class="s1">&#39;target&#39;</span><span class="o">,</span> <span class="nx">target</span><span class="o">.</span><span class="nx">value</span><span class="o">);</span>
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
<span class="nx">_a</span><span class="o">.</span><span class="nx">setAttribute</span><span class="o">(</span><span class="s1">&#39;target&#39;</span><span class="o">,</span> <span class="s1">&#39;&#39;</span><span class="o">);</span>
<span class="o">}</span>
<span class="nx">el</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">.</span><span class="nx">replaceChild</span><span class="o">(</span><span class="nx">_a</span><span class="o">,</span> <span class="nx">el</span><span class="o">);</span>
<span class="nx">_a</span><span class="o">.</span><span class="nx">appendChild</span><span class="o">(</span><span class="nx">el</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">if</span> <span class="o">(</span><span class="nx">par</span> <span class="o">&amp;&amp;</span> <span class="k">this</span><span class="o">.</span><span class="nx">_isElement</span><span class="o">(</span><span class="nx">par</span><span class="o">,</span> <span class="s1">&#39;a&#39;</span><span class="o">))</span> <span class="o">{</span>
<span class="nx">par</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">.</span><span class="nx">replaceChild</span><span class="o">(</span><span class="nx">el</span><span class="o">,</span> <span class="nx">par</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">//No url/src given, remove the node from the document</span>
<span class="c"></span> <span class="nx">el</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="nx">el</span><span class="o">);</span>
<span class="o">}</span>
<span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_url&#39;</span><span class="o">).</span><span class="nx">value</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="o">;</span>
<span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_title&#39;</span><span class="o">).</span><span class="nx">value</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="o">;</span>
<span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_link&#39;</span><span class="o">).</span><span class="nx">value</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="o">;</span>
<span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_target&#39;</span><span class="o">).</span><span class="nx">checked</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
<span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_width&#39;</span><span class="o">).</span><span class="nx">value</span> <span class="o">=</span> <span class="m">0</span><span class="o">;</span>
<span class="nx">Dom</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;_insertimage_height&#39;</span><span class="o">).</span><span class="nx">value</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">_defaultImageToolbar</span><span class="o">.</span><span class="nx">resetAllButtons</span><span class="o">();</span>
<span class="k">this</span><span class="o">.</span><span class="nx">currentElement</span> <span class="o">=</span> <span class="o">[];</span>
<span class="k">this</span><span class="o">.</span><span class="nx">nodeChange</span><span class="o">();</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @property EDITOR_PANEL_ID</span>
<span class="c"> * @description HTML id to give the properties window in the DOM.</span>
<span class="c"> * @type String</span>
<span class="c"> */</span>
<span class="nx">EDITOR_PANEL_ID</span><span class="o">:</span> <span class="s1">&#39;-panel&#39;</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @method _renderPanel</span>
<span class="c"> * @description Renders the panel used for Editor Windows to the document so we can start using it..</span>
<span class="c"> * @return {&lt;a href=&quot;YAHOO.widget.Overlay.html&quot;&gt;YAHOO.widget.Overlay&lt;/a&gt;}</span>
<span class="c"> */</span>
<span class="nx">_renderPanel</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">panel</span> <span class="o">=</span> <span class="k">new</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">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">EDITOR_PANEL_ID</span><span class="o">,</span> <span class="o">{</span>
<span class="nx">width</span><span class="o">:</span> <span class="s1">&#39;300px&#39;</span><span class="o">,</span>
<span class="nx">iframe</span><span class="o">:</span> <span class="kc">true</span><span class="o">,</span>
<span class="nx">visible</span><span class="o">:</span> <span class="kc">false</span><span class="o">,</span>
<span class="nx">underlay</span><span class="o">:</span> <span class="s1">&#39;none&#39;</span><span class="o">,</span>
<span class="nx">draggable</span><span class="o">:</span> <span class="kc">false</span><span class="o">,</span>
<span class="nx">close</span><span class="o">:</span> <span class="kc">false</span>
<span class="o">});</span>
<span class="k">this</span><span class="o">.</span><span class="nx">set</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">,</span> <span class="nx">panel</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">).</span><span class="nx">setBody</span><span class="o">(</span><span class="s1">&#39;---&#39;</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">).</span><span class="nx">setHeader</span><span class="o">(</span><span class="s1">&#39; &#39;</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">).</span><span class="nx">setFooter</span><span class="o">(</span><span class="s1">&#39; &#39;</span><span class="o">);</span>
<span class="k">var</span> <span class="nx">body</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="s1">&#39;div&#39;</span><span class="o">);</span>
<span class="nx">body</span><span class="o">.</span><span class="nx">className</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">CLASS_PREFIX</span> <span class="o">+</span> <span class="s1">&#39;-body-cont&#39;</span><span class="o">;</span>
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">b</span> <span class="k">in</span> <span class="k">this</span><span class="o">.</span><span class="nx">browser</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">browser</span><span class="o">[</span><span class="nx">b</span><span class="o">])</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="nx">body</span><span class="o">,</span> <span class="nx">b</span><span class="o">);</span>
<span class="k">break</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">addClass</span><span class="o">(</span><span class="nx">body</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">Button</span> <span class="o">&amp;&amp;</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">_defaultToolbar</span><span class="o">.</span><span class="nx">buttonType</span> <span class="o">==</span> <span class="s1">&#39;advanced&#39;</span><span class="o">))</span> <span class="o">?</span> <span class="s1">&#39;good-button&#39;</span> <span class="o">:</span> <span class="s1">&#39;no-button&#39;</span><span class="o">));</span>
<span class="k">var</span> <span class="nx">_note</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="s1">&#39;h3&#39;</span><span class="o">);</span>
<span class="nx">_note</span><span class="o">.</span><span class="nx">className</span> <span class="o">=</span> <span class="s1">&#39;yui-editor-skipheader&#39;</span><span class="o">;</span>
<span class="nx">_note</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_CLOSE_WINDOW_NOTE</span><span class="o">;</span>
<span class="nx">body</span><span class="o">.</span><span class="nx">appendChild</span><span class="o">(</span><span class="nx">_note</span><span class="o">);</span>
<span class="k">var</span> <span class="nx">form</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="s1">&#39;form&#39;</span><span class="o">);</span>
<span class="nx">form</span><span class="o">.</span><span class="nx">setAttribute</span><span class="o">(</span><span class="s1">&#39;method&#39;</span><span class="o">,</span> <span class="s1">&#39;GET&#39;</span><span class="o">);</span>
<span class="nx">panel</span><span class="o">.</span><span class="nx">editor_form</span> <span class="o">=</span> <span class="nx">form</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="nx">form</span><span class="o">,</span> <span class="s1">&#39;submit&#39;</span><span class="o">,</span> <span class="k">function</span><span class="o">(</span><span class="nx">ev</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">Event</span><span class="o">.</span><span class="nx">stopEvent</span><span class="o">(</span><span class="nx">ev</span><span class="o">);</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="nx">body</span><span class="o">.</span><span class="nx">appendChild</span><span class="o">(</span><span class="nx">form</span><span class="o">);</span>
<span class="k">var</span> <span class="nx">_close</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="s1">&#39;span&#39;</span><span class="o">);</span>
<span class="nx">_close</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="s1">&#39;X&#39;</span><span class="o">;</span>
<span class="nx">_close</span><span class="o">.</span><span class="nx">title</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">STR_CLOSE_WINDOW</span><span class="o">;</span>
<span class="nx">_close</span><span class="o">.</span><span class="nx">className</span> <span class="o">=</span> <span class="s1">&#39;close&#39;</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="nx">_close</span><span class="o">,</span> <span class="s1">&#39;click&#39;</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">closeWindow</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="k">var</span> <span class="nx">_knob</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="s1">&#39;span&#39;</span><span class="o">);</span>
<span class="nx">_knob</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="s1">&#39;^&#39;</span><span class="o">;</span>
<span class="nx">_knob</span><span class="o">.</span><span class="nx">className</span> <span class="o">=</span> <span class="s1">&#39;knob&#39;</span><span class="o">;</span>
<span class="nx">panel</span><span class="o">.</span><span class="nx">editor_knob</span> <span class="o">=</span> <span class="nx">_knob</span><span class="o">;</span>
<span class="k">var</span> <span class="nx">_header</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="s1">&#39;h3&#39;</span><span class="o">);</span>
<span class="nx">panel</span><span class="o">.</span><span class="nx">editor_header</span> <span class="o">=</span> <span class="nx">_header</span><span class="o">;</span>
<span class="nx">_header</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="s1">&#39;&lt;span&gt;&lt;/span&gt;&#39;</span><span class="o">;</span>
<span class="nx">panel</span><span class="o">.</span><span class="nx">setHeader</span><span class="o">(</span><span class="s1">&#39; &#39;</span><span class="o">);</span> <span class="c">//Clear the current header</span>
<span class="c"></span> <span class="nx">panel</span><span class="o">.</span><span class="nx">appendToHeader</span><span class="o">(</span><span class="nx">_header</span><span class="o">);</span>
<span class="nx">_header</span><span class="o">.</span><span class="nx">appendChild</span><span class="o">(</span><span class="nx">_close</span><span class="o">);</span>
<span class="nx">_header</span><span class="o">.</span><span class="nx">appendChild</span><span class="o">(</span><span class="nx">_knob</span><span class="o">);</span>
<span class="nx">panel</span><span class="o">.</span><span class="nx">setBody</span><span class="o">(</span><span class="s1">&#39; &#39;</span><span class="o">);</span> <span class="c">//Clear the current body</span>
<span class="c"></span> <span class="nx">panel</span><span class="o">.</span><span class="nx">setFooter</span><span class="o">(</span><span class="s1">&#39; &#39;</span><span class="o">);</span> <span class="c">//Clear the current footer</span>
<span class="c"></span> <span class="nx">panel</span><span class="o">.</span><span class="nx">appendToBody</span><span class="o">(</span><span class="nx">body</span><span class="o">);</span> <span class="c">//Append the new DOM node to it</span>
<span class="c"></span>
<span class="nx">Event</span><span class="o">.</span><span class="nx">on</span><span class="o">(</span><span class="nx">panel</span><span class="o">.</span><span class="nx">element</span><span class="o">,</span> <span class="s1">&#39;click&#39;</span><span class="o">,</span> <span class="k">function</span><span class="o">(</span><span class="nx">ev</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">Event</span><span class="o">.</span><span class="nx">stopPropagation</span><span class="o">(</span><span class="nx">ev</span><span class="o">);</span>
<span class="o">});</span>
<span class="k">var</span> <span class="nx">fireShowEvent</span> <span class="o">=</span> <span class="k">function</span><span class="o">()</span> <span class="o">{</span>
<span class="c">//panel.bringToTop();</span>
<span class="c"></span> <span class="o">};</span>
<span class="nx">panel</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="nx">fireShowEvent</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="nx">panel</span><span class="o">.</span><span class="nx">renderEvent</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span><span class="k">function</span><span class="o">()</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_renderInsertImageWindow</span><span class="o">();</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_renderCreateLinkWindow</span><span class="o">();</span>
<span class="k">this</span><span class="o">.</span><span class="nx">fireEvent</span><span class="o">(</span><span class="s1">&#39;windowRender&#39;</span><span class="o">,</span> <span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;windowRender&#39;</span><span class="o">,</span> <span class="nx">panel</span><span class="o">:</span> <span class="nx">panel</span> <span class="o">});</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="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">DOMReady</span><span class="o">)</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">).</span><span class="nx">render</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="c">//Render to the element_cont so we can skin it better</span>
<span class="c"></span> <span class="c">//this.get(&#39;panel&#39;).render(this.get(&#39;element_cont&#39;).get(&#39;element&#39;));</span>
<span class="c"></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">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">).</span><span class="nx">element</span><span class="o">,</span> <span class="s1">&#39;yui-editor-panel&#39;</span><span class="o">);</span>
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
<span class="nx">Event</span><span class="o">.</span><span class="nx">onDOMReady</span><span class="o">(</span><span class="k">function</span><span class="o">()</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">).</span><span class="nx">render</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="c">//Render to the element_cont so we can skin it better</span>
<span class="c"></span> <span class="c">//this.get(&#39;panel&#39;).render(this.get(&#39;element_cont&#39;).get(&#39;element&#39;));</span>
<span class="c"></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">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">).</span><span class="nx">element</span><span class="o">,</span> <span class="s1">&#39;yui-editor-panel&#39;</span><span class="o">);</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">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</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">function</span><span class="o">()</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">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="s1">&#39;display&#39;</span><span class="o">,</span> <span class="s1">&#39;block&#39;</span><span class="o">);</span>
<span class="o">});</span>
<span class="k">return</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">);</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @method openWindow</span>
<span class="c"> * @param {&lt;a href=&quot;YAHOO.widget.EditorWindow.html&quot;&gt;YAHOO.widget.EditorWindow&lt;/a&gt;} win A &lt;a href=&quot;YAHOO.widget.EditorWindow.html&quot;&gt;YAHOO.widget.EditorWindow&lt;/a&gt; instance</span>
<span class="c"> * @description Opens a new &quot;window/panel&quot;</span>
<span class="c"> */</span>
<span class="nx">openWindow</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">win</span><span class="o">)</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="s1">&#39;openWindow: &#39;</span> <span class="o">+</span> <span class="nx">win</span><span class="o">.</span><span class="nx">name</span><span class="o">,</span> <span class="s1">&#39;info&#39;</span><span class="o">,</span> <span class="s1">&#39;Editor&#39;</span><span class="o">);</span>
<span class="k">var</span> <span class="nx">self</span> <span class="o">=</span> <span class="k">this</span><span class="o">;</span>
<span class="nb">window</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">self</span><span class="o">.</span><span class="nx">toolbar</span><span class="o">.</span><span class="nx">set</span><span class="o">(</span><span class="s1">&#39;disabled&#39;</span><span class="o">,</span> <span class="kc">true</span><span class="o">);</span> <span class="c">//Disable the toolbar when an editor window is open..</span>
<span class="c"></span> <span class="o">},</span> <span class="m">10</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">document</span><span class="o">,</span> <span class="s1">&#39;keydown&#39;</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">_closeWindow</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="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">currentWindow</span><span class="o">)</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">closeWindow</span><span class="o">();</span>
<span class="o">}</span>
<span class="k">var</span> <span class="nx">xy</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">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">]),</span>
<span class="nx">elXY</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">get</span><span class="o">(</span><span class="s1">&#39;iframe&#39;</span><span class="o">).</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;element&#39;</span><span class="o">)),</span>
<span class="nx">panel</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">),</span>
<span class="nx">newXY</span> <span class="o">=</span> <span class="o">[(</span><span class="nx">xy</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">+</span> <span class="nx">elXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">-</span> <span class="m">20</span><span class="o">),</span> <span class="o">(</span><span class="nx">xy</span><span class="o">[</span><span class="m">1</span><span class="o">]</span> <span class="o">+</span> <span class="nx">elXY</span><span class="o">[</span><span class="m">1</span><span class="o">]</span> <span class="o">+</span> <span class="m">10</span><span class="o">)],</span>
<span class="nx">wWidth</span> <span class="o">=</span> <span class="o">(</span><span class="nb">parseInt</span><span class="o">(</span><span class="nx">win</span><span class="o">.</span><span class="nx">attrs</span><span class="o">.</span><span class="nx">width</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="nx">align</span> <span class="o">=</span> <span class="s1">&#39;center&#39;</span><span class="o">,</span>
<span class="nx">body</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
<span class="k">this</span><span class="o">.</span><span class="nx">fireEvent</span><span class="o">(</span><span class="s1">&#39;beforeOpenWindow&#39;</span><span class="o">,</span> <span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;beforeOpenWindow&#39;</span><span class="o">,</span> <span class="nx">win</span><span class="o">:</span> <span class="nx">win</span><span class="o">,</span> <span class="nx">panel</span><span class="o">:</span> <span class="nx">panel</span> <span class="o">});</span>
<span class="k">var</span> <span class="nx">form</span> <span class="o">=</span> <span class="nx">panel</span><span class="o">.</span><span class="nx">editor_form</span><span class="o">;</span>
<span class="k">var</span> <span class="nx">wins</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_windows</span><span class="o">;</span>
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">b</span> <span class="k">in</span> <span class="nx">wins</span><span class="o">)</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">hasOwnProperty</span><span class="o">(</span><span class="nx">wins</span><span class="o">,</span> <span class="nx">b</span><span class="o">))</span> <span class="o">{</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">wins</span><span class="o">[</span><span class="nx">b</span><span class="o">]</span> <span class="o">&amp;&amp;</span> <span class="nx">wins</span><span class="o">[</span><span class="nx">b</span><span class="o">].</span><span class="nx">body</span><span class="o">)</span> <span class="o">{</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">b</span> <span class="o">==</span> <span class="nx">win</span><span class="o">.</span><span class="nx">name</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">wins</span><span class="o">[</span><span class="nx">b</span><span class="o">].</span><span class="nx">body</span><span class="o">,</span> <span class="s1">&#39;display&#39;</span><span class="o">,</span> <span class="s1">&#39;block&#39;</span><span class="o">);</span>
<span class="o">}</span> <span class="k">else</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">wins</span><span class="o">[</span><span class="nx">b</span><span class="o">].</span><span class="nx">body</span><span class="o">,</span> <span class="s1">&#39;display&#39;</span><span class="o">,</span> <span class="s1">&#39;none&#39;</span><span class="o">);</span>
<span class="o">}</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">_windows</span><span class="o">[</span><span class="nx">win</span><span class="o">.</span><span class="nx">name</span><span class="o">].</span><span class="nx">body</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">_windows</span><span class="o">[</span><span class="nx">win</span><span class="o">.</span><span class="nx">name</span><span class="o">].</span><span class="nx">body</span><span class="o">,</span> <span class="s1">&#39;display&#39;</span><span class="o">,</span> <span class="s1">&#39;block&#39;</span><span class="o">);</span>
<span class="nx">form</span><span class="o">.</span><span class="nx">appendChild</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">_windows</span><span class="o">[</span><span class="nx">win</span><span class="o">.</span><span class="nx">name</span><span class="o">].</span><span class="nx">body</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="nx">Lang</span><span class="o">.</span><span class="nx">isObject</span><span class="o">(</span><span class="nx">win</span><span class="o">.</span><span class="nx">body</span><span class="o">))</span> <span class="o">{</span> <span class="c">//Assume it&#39;s a reference</span>
<span class="c"></span> <span class="nx">form</span><span class="o">.</span><span class="nx">appendChild</span><span class="o">(</span><span class="nx">win</span><span class="o">.</span><span class="nx">body</span><span class="o">);</span>
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span> <span class="c">//Assume it&#39;s a string</span>
<span class="c"></span> <span class="k">var</span> <span class="nx">_tmp</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="s1">&#39;div&#39;</span><span class="o">);</span>
<span class="nx">_tmp</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="nx">win</span><span class="o">.</span><span class="nx">body</span><span class="o">;</span>
<span class="nx">form</span><span class="o">.</span><span class="nx">appendChild</span><span class="o">(</span><span class="nx">_tmp</span><span class="o">);</span>
<span class="o">}</span>
<span class="o">}</span>
<span class="nx">panel</span><span class="o">.</span><span class="nx">editor_header</span><span class="o">.</span><span class="nx">firstChild</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="nx">win</span><span class="o">.</span><span class="nx">header</span><span class="o">;</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">win</span><span class="o">.</span><span class="nx">footer</span> <span class="o">!==</span> <span class="kc">null</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">panel</span><span class="o">.</span><span class="nx">setFooter</span><span class="o">(</span><span class="nx">win</span><span class="o">.</span><span class="nx">footer</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="nx">panel</span><span class="o">.</span><span class="nx">footer</span><span class="o">,</span> <span class="s1">&#39;open&#39;</span><span class="o">);</span>
<span class="o">}</span> <span class="k">else</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="nx">panel</span><span class="o">.</span><span class="nx">footer</span><span class="o">,</span> <span class="s1">&#39;open&#39;</span><span class="o">);</span>
<span class="o">}</span>
<span class="nx">panel</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="s1">&#39;width&#39;</span><span class="o">,</span> <span class="nx">win</span><span class="o">.</span><span class="nx">attrs</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">currentWindow</span> <span class="o">=</span> <span class="nx">win</span><span class="o">;</span>
<span class="k">this</span><span class="o">.</span><span class="nx">moveWindow</span><span class="o">(</span><span class="kc">true</span><span class="o">);</span>
<span class="nx">panel</span><span class="o">.</span><span class="nx">show</span><span class="o">();</span>
<span class="k">this</span><span class="o">.</span><span class="nx">fireEvent</span><span class="o">(</span><span class="s1">&#39;afterOpenWindow&#39;</span><span class="o">,</span> <span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;afterOpenWindow&#39;</span><span class="o">,</span> <span class="nx">win</span><span class="o">:</span> <span class="nx">win</span><span class="o">,</span> <span class="nx">panel</span><span class="o">:</span> <span class="nx">panel</span> <span class="o">});</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @method moveWindow</span>
<span class="c"> * @param {Boolean} force Boolean to tell it to move but not use any animation (Usually done the first time the window is loaded.)</span>
<span class="c"> * @description Realign the window with the currentElement and reposition the knob above the panel.</span>
<span class="c"> */</span>
<span class="nx">moveWindow</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">force</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">currentWindow</span><span class="o">)</span> <span class="o">{</span>
<span class="k">return</span> <span class="kc">false</span><span class="o">;</span>
<span class="o">}</span>
<span class="k">var</span> <span class="nx">win</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">currentWindow</span><span class="o">,</span>
<span class="nx">xy</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">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">]),</span>
<span class="nx">elXY</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">get</span><span class="o">(</span><span class="s1">&#39;iframe&#39;</span><span class="o">).</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;element&#39;</span><span class="o">)),</span>
<span class="nx">panel</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">),</span>
<span class="c">//newXY = [(xy[0] + elXY[0] - 20), (xy[1] + elXY[1] + 10)],</span>
<span class="c"></span> <span class="nx">newXY</span> <span class="o">=</span> <span class="o">[(</span><span class="nx">xy</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">+</span> <span class="nx">elXY</span><span class="o">[</span><span class="m">0</span><span class="o">]),</span> <span class="o">(</span><span class="nx">xy</span><span class="o">[</span><span class="m">1</span><span class="o">]</span> <span class="o">+</span> <span class="nx">elXY</span><span class="o">[</span><span class="m">1</span><span class="o">])],</span>
<span class="nx">wWidth</span> <span class="o">=</span> <span class="o">(</span><span class="nb">parseInt</span><span class="o">(</span><span class="nx">win</span><span class="o">.</span><span class="nx">attrs</span><span class="o">.</span><span class="nx">width</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="nx">align</span> <span class="o">=</span> <span class="s1">&#39;center&#39;</span><span class="o">,</span>
<span class="nx">orgXY</span> <span class="o">=</span> <span class="nx">panel</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="s1">&#39;xy&#39;</span><span class="o">)</span> <span class="o">||</span> <span class="o">[</span><span class="m">0</span><span class="o">,</span><span class="m">0</span><span class="o">],</span>
<span class="nx">_knob</span> <span class="o">=</span> <span class="nx">panel</span><span class="o">.</span><span class="nx">editor_knob</span><span class="o">,</span>
<span class="nx">xDiff</span> <span class="o">=</span> <span class="m">0</span><span class="o">,</span>
<span class="nx">yDiff</span> <span class="o">=</span> <span class="m">0</span><span class="o">,</span>
<span class="nx">anim</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
<span class="nx">newXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">=</span> <span class="o">((</span><span class="nx">newXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">-</span> <span class="nx">wWidth</span><span class="o">)</span> <span class="o">+</span> <span class="m">20</span><span class="o">);</span>
<span class="c">//Account for the Scroll bars in a scrolled editor window.</span>
<span class="c"></span> <span class="nx">newXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">=</span> <span class="nx">newXY</span><span class="o">[</span><span class="m">0</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="k">this</span><span class="o">.</span><span class="nx">_getDoc</span><span class="o">());</span>
<span class="nx">newXY</span><span class="o">[</span><span class="m">1</span><span class="o">]</span> <span class="o">=</span> <span class="nx">newXY</span><span class="o">[</span><span class="m">1</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="k">this</span><span class="o">.</span><span class="nx">_getDoc</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">_isElement</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">],</span> <span class="s1">&#39;img&#39;</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">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">].</span><span class="nx">src</span><span class="o">.</span><span class="nx">indexOf</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;blankimage&#39;</span><span class="o">))</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">newXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">=</span> <span class="o">(</span><span class="nx">newXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">+</span> <span class="o">(</span><span class="m">75</span> <span class="sr">/ 2)); /</span><span class="o">/</span><span class="nx">Placeholder</span> <span class="nx">size</span>
<span class="nx">newXY</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">newXY</span><span class="o">[</span><span class="m">1</span><span class="o">]</span> <span class="o">+</span> <span class="m">75</span><span class="o">);</span> <span class="c">//Placeholder sizea</span>
<span class="c"></span> <span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
<span class="k">var</span> <span class="nx">w</span> <span class="o">=</span> <span class="nb">parseInt</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">].</span><span class="nx">width</span><span class="o">,</span> <span class="m">10</span><span class="o">);</span>
<span class="k">var</span> <span class="nx">h</span> <span class="o">=</span> <span class="nb">parseInt</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">].</span><span class="nx">height</span><span class="o">,</span> <span class="m">10</span><span class="o">);</span>
<span class="nx">newXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">=</span> <span class="o">(</span><span class="nx">newXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">+</span> <span class="o">(</span><span class="nx">w</span> <span class="o">/</span> <span class="m">2</span><span class="o">));</span>
<span class="nx">newXY</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">newXY</span><span class="o">[</span><span class="m">1</span><span class="o">]</span> <span class="o">+</span> <span class="nx">h</span><span class="o">);</span>
<span class="o">}</span>
<span class="nx">newXY</span><span class="o">[</span><span class="m">1</span><span class="o">]</span> <span class="o">=</span> <span class="nx">newXY</span><span class="o">[</span><span class="m">1</span><span class="o">]</span> <span class="o">+</span> <span class="m">15</span><span class="o">;</span>
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
<span class="k">var</span> <span class="nx">fs</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">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">],</span> <span class="s1">&#39;fontSize&#39;</span><span class="o">);</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">fs</span> <span class="o">&amp;&amp;</span> <span class="nx">fs</span><span class="o">.</span><span class="nx">indexOf</span> <span class="o">&amp;&amp;</span> <span class="nx">fs</span><span class="o">.</span><span class="nx">indexOf</span><span class="o">(</span><span class="s1">&#39;px&#39;</span><span class="o">)</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">newXY</span><span class="o">[</span><span class="m">1</span><span class="o">]</span> <span class="o">=</span> <span class="nx">newXY</span><span class="o">[</span><span class="m">1</span><span class="o">]</span> <span class="o">+</span> <span class="nb">parseInt</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">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">],</span> <span class="s1">&#39;fontSize&#39;</span><span class="o">),</span> <span class="m">10</span><span class="o">)</span> <span class="o">+</span> <span class="m">5</span><span class="o">;</span>
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
<span class="nx">newXY</span><span class="o">[</span><span class="m">1</span><span class="o">]</span> <span class="o">=</span> <span class="nx">newXY</span><span class="o">[</span><span class="m">1</span><span class="o">]</span> <span class="o">+</span> <span class="m">20</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">newXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">&lt;</span> <span class="nx">elXY</span><span class="o">[</span><span class="m">0</span><span class="o">])</span> <span class="o">{</span>
<span class="nx">newXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">=</span> <span class="nx">elXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">+</span> <span class="m">5</span><span class="o">;</span>
<span class="nx">align</span> <span class="o">=</span> <span class="s1">&#39;left&#39;</span><span class="o">;</span>
<span class="o">}</span>
<span class="k">if</span> <span class="o">((</span><span class="nx">newXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">+</span> <span class="o">(</span><span class="nx">wWidth</span> <span class="o">*</span> <span class="m">2</span><span class="o">))</span> <span class="o">&gt;</span> <span class="o">(</span><span class="nx">elXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">+</span> <span class="nb">parseInt</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;iframe&#39;</span><span class="o">).</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;element&#39;</span><span class="o">).</span><span class="nx">clientWidth</span><span class="o">,</span> <span class="m">10</span><span class="o">)))</span> <span class="o">{</span>
<span class="nx">newXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">=</span> <span class="o">((</span><span class="nx">elXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">+</span> <span class="nb">parseInt</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;iframe&#39;</span><span class="o">).</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;element&#39;</span><span class="o">).</span><span class="nx">clientWidth</span><span class="o">,</span> <span class="m">10</span><span class="o">))</span> <span class="o">-</span> <span class="o">(</span><span class="nx">wWidth</span> <span class="o">*</span> <span class="m">2</span><span class="o">)</span> <span class="o">-</span> <span class="m">5</span><span class="o">);</span>
<span class="nx">align</span> <span class="o">=</span> <span class="s1">&#39;right&#39;</span><span class="o">;</span>
<span class="o">}</span>
<span class="k">try</span> <span class="o">{</span>
<span class="nx">xDiff</span> <span class="o">=</span> <span class="o">(</span><span class="nx">newXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">-</span> <span class="nx">orgXY</span><span class="o">[</span><span class="m">0</span><span class="o">]);</span>
<span class="nx">yDiff</span> <span class="o">=</span> <span class="o">(</span><span class="nx">newXY</span><span class="o">[</span><span class="m">1</span><span class="o">]</span> <span class="o">-</span> <span class="nx">orgXY</span><span class="o">[</span><span class="m">1</span><span class="o">]);</span>
<span class="o">}</span> <span class="k">catch</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="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;autoHeight&#39;</span><span class="o">)</span> <span class="o">===</span> <span class="kc">false</span><span class="o">)</span> <span class="o">{</span>
<span class="k">var</span> <span class="nx">iTop</span> <span class="o">=</span> <span class="nx">elXY</span><span class="o">[</span><span class="m">1</span><span class="o">]</span> <span class="o">+</span> <span class="nb">parseInt</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;height&#39;</span><span class="o">),</span> <span class="m">10</span><span class="o">);</span>
<span class="k">var</span> <span class="nx">iLeft</span> <span class="o">=</span> <span class="nx">elXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">+</span> <span class="nb">parseInt</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;width&#39;</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">newXY</span><span class="o">[</span><span class="m">1</span><span class="o">]</span> <span class="o">&gt;</span> <span class="nx">iTop</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">newXY</span><span class="o">[</span><span class="m">1</span><span class="o">]</span> <span class="o">=</span> <span class="nx">iTop</span><span class="o">;</span>
<span class="o">}</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">newXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">&gt;</span> <span class="nx">iLeft</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">newXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">=</span> <span class="o">(</span><span class="nx">iLeft</span> <span class="o">/</span> <span class="m">2</span><span class="o">);</span>
<span class="o">}</span>
<span class="o">}</span>
<span class="c">//Convert negative numbers to positive so we can get the difference in distance</span>
<span class="c"></span> <span class="nx">xDiff</span> <span class="o">=</span> <span class="o">((</span><span class="nx">xDiff</span> <span class="o">&lt;</span> <span class="m">0</span><span class="o">)</span> <span class="o">?</span> <span class="o">(</span><span class="nx">xDiff</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">xDiff</span><span class="o">);</span>
<span class="nx">yDiff</span> <span class="o">=</span> <span class="o">((</span><span class="nx">yDiff</span> <span class="o">&lt;</span> <span class="m">0</span><span class="o">)</span> <span class="o">?</span> <span class="o">(</span><span class="nx">yDiff</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">yDiff</span><span class="o">);</span>
<span class="k">if</span> <span class="o">(((</span><span class="nx">xDiff</span> <span class="o">&gt;</span> <span class="m">10</span><span class="o">)</span> <span class="o">||</span> <span class="o">(</span><span class="nx">yDiff</span> <span class="o">&gt;</span> <span class="m">10</span><span class="o">))</span> <span class="o">||</span> <span class="nx">force</span><span class="o">)</span> <span class="o">{</span> <span class="c">//Only move the window if it&#39;s supposed to move more than 10px or force was passed (new window)</span>
<span class="c"></span> <span class="k">var</span> <span class="nx">_knobLeft</span> <span class="o">=</span> <span class="m">0</span><span class="o">,</span>
<span class="nx">elW</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="k">this</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">].</span><span class="nx">width</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">elW</span> <span class="o">=</span> <span class="o">(</span><span class="nb">parseInt</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">].</span><span class="nx">width</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="k">var</span> <span class="nx">leftOffset</span> <span class="o">=</span> <span class="nx">xy</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">+</span> <span class="nx">elXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">+</span> <span class="nx">elW</span><span class="o">;</span>
<span class="nx">_knobLeft</span> <span class="o">=</span> <span class="nx">leftOffset</span> <span class="o">-</span> <span class="nx">newXY</span><span class="o">[</span><span class="m">0</span><span class="o">];</span>
<span class="c">//Check to see if the knob will go off either side &amp; reposition it</span>
<span class="c"></span> <span class="k">if</span> <span class="o">(</span><span class="nx">_knobLeft</span> <span class="o">&gt;</span> <span class="o">(</span><span class="nb">parseInt</span><span class="o">(</span><span class="nx">win</span><span class="o">.</span><span class="nx">attrs</span><span class="o">.</span><span class="nx">width</span><span class="o">,</span> <span class="m">10</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">_knobLeft</span> <span class="o">=</span> <span class="o">((</span><span class="nb">parseInt</span><span class="o">(</span><span class="nx">win</span><span class="o">.</span><span class="nx">attrs</span><span class="o">.</span><span class="nx">width</span><span class="o">,</span> <span class="m">10</span><span class="o">)</span> <span class="o">-</span> <span class="m">30</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="k">if</span> <span class="o">(</span><span class="nx">_knobLeft</span> <span class="o">&lt;</span> <span class="m">40</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">_knobLeft</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="nb">isNaN</span><span class="o">(</span><span class="nx">_knobLeft</span><span class="o">))</span> <span class="o">{</span>
<span class="nx">_knobLeft</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">force</span><span class="o">)</span> <span class="o">{</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">_knob</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">_knob</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">left</span> <span class="o">=</span> <span class="nx">_knobLeft</span> <span class="o">+</span> <span class="s1">&#39;px&#39;</span><span class="o">;</span>
<span class="o">}</span>
<span class="c">//Removed Animation from a forced move..</span>
<span class="c"></span> <span class="nx">panel</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="s1">&#39;xy&#39;</span><span class="o">,</span> <span class="nx">newXY</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">get</span><span class="o">(</span><span class="s1">&#39;animate&#39;</span><span class="o">))</span> <span class="o">{</span>
<span class="nx">anim</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Anim</span><span class="o">(</span><span class="nx">panel</span><span class="o">.</span><span class="nx">element</span><span class="o">,</span> <span class="o">{},</span> <span class="m">0</span><span class="o">.</span><span class="m">5</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">Easing</span><span class="o">.</span><span class="nx">easeOut</span><span class="o">);</span>
<span class="nx">anim</span><span class="o">.</span><span class="nx">attributes</span> <span class="o">=</span> <span class="o">{</span>
<span class="nx">top</span><span class="o">:</span> <span class="o">{</span>
<span class="nx">to</span><span class="o">:</span> <span class="nx">newXY</span><span class="o">[</span><span class="m">1</span><span class="o">]</span>
<span class="o">},</span>
<span class="nx">left</span><span class="o">:</span> <span class="o">{</span>
<span class="nx">to</span><span class="o">:</span> <span class="nx">newXY</span><span class="o">[</span><span class="m">0</span><span class="o">]</span>
<span class="o">}</span>
<span class="o">};</span>
<span class="nx">anim</span><span class="o">.</span><span class="nx">onComplete</span><span class="o">.</span><span class="nx">subscribe</span><span class="o">(</span><span class="k">function</span><span class="o">()</span> <span class="o">{</span>
<span class="nx">panel</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="s1">&#39;xy&#39;</span><span class="o">,</span> <span class="nx">newXY</span><span class="o">);</span>
<span class="o">});</span>
<span class="c">//We have to animate the iframe shim at the same time as the panel or we get scrollbar bleed ..</span>
<span class="c"></span> <span class="k">var</span> <span class="nx">iframeAnim</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Anim</span><span class="o">(</span><span class="nx">panel</span><span class="o">.</span><span class="nx">iframe</span><span class="o">,</span> <span class="nx">anim</span><span class="o">.</span><span class="nx">attributes</span><span class="o">,</span> <span class="m">0</span><span class="o">.</span><span class="m">5</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">Easing</span><span class="o">.</span><span class="nx">easeOut</span><span class="o">);</span>
<span class="k">var</span> <span class="nx">_knobAnim</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="o">.</span><span class="nx">util</span><span class="o">.</span><span class="nx">Anim</span><span class="o">(</span><span class="nx">_knob</span><span class="o">,</span> <span class="o">{</span>
<span class="nx">left</span><span class="o">:</span> <span class="o">{</span>
<span class="nx">to</span><span class="o">:</span> <span class="nx">_knobLeft</span>
<span class="o">}</span>
<span class="o">},</span> <span class="m">0</span><span class="o">.</span><span class="m">6</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">Easing</span><span class="o">.</span><span class="nx">easeOut</span><span class="o">);</span>
<span class="nx">anim</span><span class="o">.</span><span class="nx">animate</span><span class="o">();</span>
<span class="nx">iframeAnim</span><span class="o">.</span><span class="nx">animate</span><span class="o">();</span>
<span class="nx">_knobAnim</span><span class="o">.</span><span class="nx">animate</span><span class="o">();</span>
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
<span class="nx">_knob</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">left</span> <span class="o">=</span> <span class="nx">_knobLeft</span> <span class="o">+</span> <span class="s1">&#39;px&#39;</span><span class="o">;</span>
<span class="nx">panel</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="s1">&#39;xy&#39;</span><span class="o">,</span> <span class="nx">newXY</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"> * @private</span>
<span class="c"> * @method _closeWindow</span>
<span class="c"> * @description Close the currently open EditorWindow with the Escape key.</span>
<span class="c"> * @param {Event} ev The keypress Event that we are trapping</span>
<span class="c"> */</span>
<span class="nx">_closeWindow</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">ev</span><span class="o">)</span> <span class="o">{</span>
<span class="c">//if ((ev.charCode == 87) &amp;&amp; ev.shiftKey &amp;&amp; ev.ctrlKey) {</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">_checkKey</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">_keyMap</span><span class="o">.</span><span class="nx">CLOSE_WINDOW</span><span class="o">,</span> <span class="nx">ev</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">currentWindow</span><span class="o">)</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">closeWindow</span><span class="o">();</span>
<span class="o">}</span>
<span class="o">}</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @method closeWindow</span>
<span class="c"> * @description Close the currently open EditorWindow.</span>
<span class="c"> */</span>
<span class="nx">closeWindow</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">keepOpen</span><span class="o">)</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="s1">&#39;closeWindow: &#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">currentWindow</span><span class="o">.</span><span class="nx">name</span><span class="o">,</span> <span class="s1">&#39;info&#39;</span><span class="o">,</span> <span class="s1">&#39;Editor&#39;</span><span class="o">);</span>
<span class="c">//YAHOO.widget.EditorInfo.window = {};</span>
<span class="c"></span> <span class="k">this</span><span class="o">.</span><span class="nx">fireEvent</span><span class="o">(</span><span class="s1">&#39;window&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">currentWindow</span><span class="o">.</span><span class="nx">name</span> <span class="o">+</span> <span class="s1">&#39;Close&#39;</span><span class="o">,</span> <span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;window&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">currentWindow</span><span class="o">.</span><span class="nx">name</span> <span class="o">+</span> <span class="s1">&#39;Close&#39;</span><span class="o">,</span> <span class="nx">win</span><span class="o">:</span> <span class="k">this</span><span class="o">.</span><span class="nx">currentWindow</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">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">});</span>
<span class="k">this</span><span class="o">.</span><span class="nx">fireEvent</span><span class="o">(</span><span class="s1">&#39;closeWindow&#39;</span><span class="o">,</span> <span class="o">{</span> <span class="nx">type</span><span class="o">:</span> <span class="s1">&#39;closeWindow&#39;</span><span class="o">,</span> <span class="nx">win</span><span class="o">:</span> <span class="k">this</span><span class="o">.</span><span class="nx">currentWindow</span> <span class="o">});</span>
<span class="k">this</span><span class="o">.</span><span class="nx">currentWindow</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
<span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">).</span><span class="nx">hide</span><span class="o">();</span>
<span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</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="s1">&#39;xy&#39;</span><span class="o">,</span> <span class="o">[-</span><span class="m">900</span><span class="o">,-</span><span class="m">900</span><span class="o">]);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;panel&#39;</span><span class="o">).</span><span class="nx">syncIframe</span><span class="o">();</span> <span class="c">//Needed to move the iframe with the hidden panel</span>
<span class="c"></span> <span class="k">this</span><span class="o">.</span><span class="nx">unsubscribeAll</span><span class="o">(</span><span class="s1">&#39;afterExecCommand&#39;</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">toolbar</span><span class="o">.</span><span class="nx">set</span><span class="o">(</span><span class="s1">&#39;disabled&#39;</span><span class="o">,</span> <span class="kc">false</span><span class="o">);</span> <span class="c">//enable the toolbar now that the window is closed</span>
<span class="c"></span> <span class="k">this</span><span class="o">.</span><span class="nx">toolbar</span><span class="o">.</span><span class="nx">resetAllButtons</span><span class="o">();</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_focusWindow</span><span class="o">();</span>
<span class="nx">Event</span><span class="o">.</span><span class="nx">removeListener</span><span class="o">(</span><span class="nb">document</span><span class="o">,</span> <span class="s1">&#39;keydown&#39;</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">_closeWindow</span><span class="o">);</span>
<span class="o">},</span>
<span class="c">/* {{{ Command Overrides - These commands are only over written when we are using the advanced version */</span>
<span class="c">/**</span>
<span class="c"> * @method cmd_undo</span>
<span class="c"> * @description Pulls an item from the Undo stack and updates the Editor</span>
<span class="c"> * @param value Value passed from the execCommand method</span>
<span class="c"> */</span>
<span class="nx">cmd_undo</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">value</span><span class="o">)</span> <span class="o">{</span>
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">_hasUndoLevel</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">_undoLevel</span><span class="o">)</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_undoLevel</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_undoCache</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span>
<span class="o">}</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_undoLevel</span> <span class="o">=</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">_undoLevel</span> <span class="o">-</span> <span class="m">1</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">_undoCache</span><span class="o">[</span><span class="k">this</span><span class="o">.</span><span class="nx">_undoLevel</span><span class="o">])</span> <span class="o">{</span>
<span class="k">var</span> <span class="nx">html</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_getUndo</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">_undoLevel</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">setEditorHTML</span><span class="o">(</span><span class="nx">html</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">_undoLevel</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
<span class="k">this</span><span class="o">.</span><span class="nx">toolbar</span><span class="o">.</span><span class="nx">disableButton</span><span class="o">(</span><span class="s1">&#39;undo&#39;</span><span class="o">);</span>
<span class="o">}</span>
<span class="o">}</span>
<span class="k">return</span> <span class="o">[</span><span class="kc">false</span><span class="o">];</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @method cmd_redo</span>
<span class="c"> * @description Pulls an item from the Undo stack and updates the Editor</span>
<span class="c"> * @param value Value passed from the execCommand method</span>
<span class="c"> */</span>
<span class="nx">cmd_redo</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">value</span><span class="o">)</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_undoLevel</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_undoLevel</span> <span class="o">+</span> <span class="m">1</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">_undoLevel</span> <span class="o">&gt;=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_undoCache</span><span class="o">.</span><span class="nx">length</span><span class="o">)</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_undoLevel</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_undoCache</span><span class="o">.</span><span class="nx">length</span><span class="o">;</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="k">this</span><span class="o">.</span><span class="nx">_undoLevel</span> <span class="o">+</span> <span class="s1">&#39; :: &#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">_undoCache</span><span class="o">.</span><span class="nx">length</span><span class="o">,</span> <span class="s1">&#39;warn&#39;</span><span class="o">,</span> <span class="s1">&#39;SimpleEditor&#39;</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">_undoCache</span><span class="o">[</span><span class="k">this</span><span class="o">.</span><span class="nx">_undoLevel</span><span class="o">])</span> <span class="o">{</span>
<span class="k">var</span> <span class="nx">html</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_getUndo</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">_undoLevel</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">setEditorHTML</span><span class="o">(</span><span class="nx">html</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">toolbar</span><span class="o">.</span><span class="nx">disableButton</span><span class="o">(</span><span class="s1">&#39;redo&#39;</span><span class="o">);</span>
<span class="o">}</span>
<span class="k">return</span> <span class="o">[</span><span class="kc">false</span><span class="o">];</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @method cmd_heading</span>
<span class="c"> * @param value Value passed from the execCommand method</span>
<span class="c"> * @description This is an execCommand override method. It is called from execCommand when the execCommand(&#39;heading&#39;) is used.</span>
<span class="c"> */</span>
<span class="nx">cmd_heading</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">value</span><span class="o">)</span> <span class="o">{</span>
<span class="k">var</span> <span class="nx">exec</span> <span class="o">=</span> <span class="kc">true</span><span class="o">,</span>
<span class="nx">el</span> <span class="o">=</span> <span class="kc">null</span><span class="o">,</span>
<span class="nx">action</span> <span class="o">=</span> <span class="s1">&#39;heading&#39;</span><span class="o">,</span>
<span class="nx">_sel</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_getSelection</span><span class="o">(),</span>
<span class="nx">_selEl</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_getSelectedElement</span><span class="o">();</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">_selEl</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">_sel</span> <span class="o">=</span> <span class="nx">_selEl</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">browser</span><span class="o">.</span><span class="nx">ie</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">action</span> <span class="o">=</span> <span class="s1">&#39;formatblock&#39;</span><span class="o">;</span>
<span class="o">}</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">value</span> <span class="o">==</span> <span class="s1">&#39;none&#39;</span><span class="o">)</span> <span class="o">{</span>
<span class="k">if</span> <span class="o">((</span><span class="nx">_sel</span> <span class="o">&amp;&amp;</span> <span class="nx">_sel</span><span class="o">.</span><span class="nx">tagName</span> <span class="o">&amp;&amp;</span> <span class="o">(</span><span class="nx">_sel</span><span class="o">.</span><span class="nx">tagName</span><span class="o">.</span><span class="nx">toLowerCase</span><span class="o">().</span><span class="nx">substring</span><span class="o">(</span><span class="m">0</span><span class="o">,</span><span class="m">1</span><span class="o">)</span> <span class="o">==</span> <span class="s1">&#39;h&#39;</span><span class="o">))</span> <span class="o">||</span> <span class="o">(</span><span class="nx">_sel</span> <span class="o">&amp;&amp;</span> <span class="nx">_sel</span><span class="o">.</span><span class="nx">parentNode</span> <span class="o">&amp;&amp;</span> <span class="nx">_sel</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">.</span><span class="nx">tagName</span> <span class="o">&amp;&amp;</span> <span class="o">(</span><span class="nx">_sel</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">.</span><span class="nx">tagName</span><span class="o">.</span><span class="nx">toLowerCase</span><span class="o">().</span><span class="nx">substring</span><span class="o">(</span><span class="m">0</span><span class="o">,</span><span class="m">1</span><span class="o">)</span> <span class="o">==</span> <span class="s1">&#39;h&#39;</span><span class="o">)))</span> <span class="o">{</span>
<span class="k">if</span> <span class="o">(</span><span class="nx">_sel</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">.</span><span class="nx">tagName</span><span class="o">.</span><span class="nx">toLowerCase</span><span class="o">().</span><span class="nx">substring</span><span class="o">(</span><span class="m">0</span><span class="o">,</span><span class="m">1</span><span class="o">)</span> <span class="o">==</span> <span class="s1">&#39;h&#39;</span><span class="o">)</span> <span class="o">{</span>
<span class="nx">_sel</span> <span class="o">=</span> <span class="nx">_sel</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="k">this</span><span class="o">.</span><span class="nx">_isElement</span><span class="o">(</span><span class="nx">_sel</span><span class="o">,</span> <span class="s1">&#39;html&#39;</span><span class="o">))</span> <span class="o">{</span>
<span class="k">return</span> <span class="o">[</span><span class="kc">false</span><span class="o">];</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">_swapEl</span><span class="o">(</span><span class="nx">_selEl</span><span class="o">,</span> <span class="s1">&#39;span&#39;</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="o">{</span>
<span class="nx">el</span><span class="o">.</span><span class="nx">className</span> <span class="o">=</span> <span class="s1">&#39;yui-non&#39;</span><span class="o">;</span>
<span class="o">});</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_selectNode</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">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">=</span> <span class="nx">el</span><span class="o">;</span>
<span class="o">}</span>
<span class="nx">exec</span> <span class="o">=</span> <span class="kc">false</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">_isElement</span><span class="o">(</span><span class="nx">_selEl</span><span class="o">,</span> <span class="s1">&#39;h1&#39;</span><span class="o">)</span> <span class="o">||</span> <span class="k">this</span><span class="o">.</span><span class="nx">_isElement</span><span class="o">(</span><span class="nx">_selEl</span><span class="o">,</span> <span class="s1">&#39;h2&#39;</span><span class="o">)</span> <span class="o">||</span> <span class="k">this</span><span class="o">.</span><span class="nx">_isElement</span><span class="o">(</span><span class="nx">_selEl</span><span class="o">,</span> <span class="s1">&#39;h3&#39;</span><span class="o">)</span> <span class="o">||</span> <span class="k">this</span><span class="o">.</span><span class="nx">_isElement</span><span class="o">(</span><span class="nx">_selEl</span><span class="o">,</span> <span class="s1">&#39;h4&#39;</span><span class="o">)</span> <span class="o">||</span> <span class="k">this</span><span class="o">.</span><span class="nx">_isElement</span><span class="o">(</span><span class="nx">_selEl</span><span class="o">,</span> <span class="s1">&#39;h5&#39;</span><span class="o">)</span> <span class="o">||</span> <span class="k">this</span><span class="o">.</span><span class="nx">_isElement</span><span class="o">(</span><span class="nx">_selEl</span><span class="o">,</span> <span class="s1">&#39;h6&#39;</span><span class="o">))</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">_swapEl</span><span class="o">(</span><span class="nx">_selEl</span><span class="o">,</span> <span class="nx">value</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_selectNode</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">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">=</span> <span class="nx">el</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">_createCurrentElement</span><span class="o">(</span><span class="nx">value</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_selectNode</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">]);</span>
<span class="o">}</span>
<span class="nx">exec</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
<span class="o">}</span>
<span class="k">return</span> <span class="o">[</span><span class="nx">exec</span><span class="o">,</span> <span class="nx">action</span><span class="o">];</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @method cmd_hiddenelements</span>
<span class="c"> * @param value Value passed from the execCommand method</span>
<span class="c"> * @description This is an execCommand override method. It is called from execCommand when the execCommand(&#39;hiddenelements&#39;) is used.</span>
<span class="c"> */</span>
<span class="nx">cmd_hiddenelements</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">value</span><span class="o">)</span> <span class="o">{</span>
<span class="k">if</span> <span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">_showingHiddenElements</span><span class="o">)</span> <span class="o">{</span>
<span class="c">//Don&#39;t auto highlight the hidden button</span>
<span class="c"></span> <span class="k">this</span><span class="o">.</span><span class="nx">_lastButton</span> <span class="o">=</span> <span class="kc">null</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="s1">&#39;Enabling hidden CSS File&#39;</span><span class="o">,</span> <span class="s1">&#39;info&#39;</span><span class="o">,</span> <span class="s1">&#39;SimpleEditor&#39;</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_showingHiddenElements</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
<span class="k">this</span><span class="o">.</span><span class="nx">toolbar</span><span class="o">.</span><span class="nx">deselectButton</span><span class="o">(</span><span class="s1">&#39;hiddenelements&#39;</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">_getDoc</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">CLASS_HIDDEN</span><span class="o">);</span>
<span class="o">}</span> <span class="k">else</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="s1">&#39;Disabling hidden CSS File&#39;</span><span class="o">,</span> <span class="s1">&#39;info&#39;</span><span class="o">,</span> <span class="s1">&#39;SimpleEditor&#39;</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_showingHiddenElements</span> <span class="o">=</span> <span class="kc">true</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">_getDoc</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">CLASS_HIDDEN</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">toolbar</span><span class="o">.</span><span class="nx">selectButton</span><span class="o">(</span><span class="s1">&#39;hiddenelements&#39;</span><span class="o">);</span>
<span class="o">}</span>
<span class="k">return</span> <span class="o">[</span><span class="kc">false</span><span class="o">];</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @method cmd_removeformat</span>
<span class="c"> * @param value Value passed from the execCommand method</span>
<span class="c"> * @description This is an execCommand override method. It is called from execCommand when the execCommand(&#39;removeformat&#39;) is used.</span>
<span class="c"> */</span>
<span class="nx">cmd_removeformat</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">value</span><span class="o">)</span> <span class="o">{</span>
<span class="k">var</span> <span class="nx">exec</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
<span class="c">/**</span>
<span class="c"> * @knownissue Remove Format issue</span>
<span class="c"> * @browser Safari 2.x</span>
<span class="c"> * @description There is an issue here with Safari, that it may not always remove the format of the item that is selected.</span>
<span class="c"> * Due to the way that Safari 2.x handles ranges, it is very difficult to determine what the selection holds.</span>
<span class="c"> * So here we are making the best possible guess and acting on it.</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">browser</span><span class="o">.</span><span class="nx">webkit</span> <span class="o">&amp;&amp;</span> <span class="o">!</span><span class="k">this</span><span class="o">.</span><span class="nx">_getDoc</span><span class="o">().</span><span class="nx">queryCommandEnabled</span><span class="o">(</span><span class="s1">&#39;removeformat&#39;</span><span class="o">))</span> <span class="o">{</span>
<span class="k">var</span> <span class="nx">_txt</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_getSelection</span><span class="o">()+</span><span class="s1">&#39;&#39;</span><span class="o">;</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_createCurrentElement</span><span class="o">(</span><span class="s1">&#39;span&#39;</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">].</span><span class="nx">className</span> <span class="o">=</span> <span class="s1">&#39;yui-non&#39;</span><span class="o">;</span>
<span class="k">this</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">].</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="nx">_txt</span><span class="o">;</span>
<span class="k">for</span> <span class="o">(</span><span class="k">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="m">1</span><span class="o">;</span> <span class="nx">i</span> <span class="o">&lt;</span> <span class="k">this</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">.</span><span class="nx">length</span><span class="o">;</span> <span class="nx">i</span><span class="o">++)</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="nx">i</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">currentElement</span><span class="o">[</span><span class="nx">i</span><span class="o">]);</span>
<span class="o">}</span>
<span class="c">/*</span>
<span class="c"> this._createCurrentElement(&#39;span&#39;);</span>
<span class="c"> YAHOO.util.Dom.addClass(this.currentElement[0], &#39;yui-non&#39;);</span>
<span class="c"> var re= /&lt;\S[^&gt;&lt;]*&gt;/g;</span>
<span class="c"> var str = this.currentElement[0].innerHTML.replace(re, &#39;&#39;);</span>
<span class="c"> var _txt = this._getDoc().createTextNode(str);</span>
<span class="c"> this.currentElement[0].parentNode.parentNode.replaceChild(_txt, this.currentElement[0].parentNode);</span>
<span class="c"> */</span>
<span class="nx">exec</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
<span class="o">}</span>
<span class="k">return</span> <span class="o">[</span><span class="nx">exec</span><span class="o">];</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @method cmd_script</span>
<span class="c"> * @param action action passed from the execCommand method</span>
<span class="c"> * @param value Value passed from the execCommand method</span>
<span class="c"> * @description This is a combined execCommand override method. It is called from the cmd_superscript and cmd_subscript methods.</span>
<span class="c"> */</span>
<span class="nx">cmd_script</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">action</span><span class="o">,</span> <span class="nx">value</span><span class="o">)</span> <span class="o">{</span>
<span class="k">var</span> <span class="nx">exec</span> <span class="o">=</span> <span class="kc">true</span><span class="o">,</span> <span class="nx">tag</span> <span class="o">=</span> <span class="nx">action</span><span class="o">.</span><span class="nx">toLowerCase</span><span class="o">().</span><span class="nx">substring</span><span class="o">(</span><span class="m">0</span><span class="o">,</span> <span class="m">3</span><span class="o">),</span>
<span class="nx">_span</span> <span class="o">=</span> <span class="kc">null</span><span class="o">,</span> <span class="nx">_selEl</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_getSelectedElement</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">browser</span><span class="o">.</span><span class="nx">webkit</span><span class="o">)</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="s1">&#39;Safari dom fun again (&#39;</span> <span class="o">+</span> <span class="nx">action</span> <span class="o">+</span> <span class="s1">&#39;)..&#39;</span><span class="o">,</span> <span class="s1">&#39;info&#39;</span><span class="o">,</span> <span class="s1">&#39;EditorSafari&#39;</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">_isElement</span><span class="o">(</span><span class="nx">_selEl</span><span class="o">,</span> <span class="nx">tag</span><span class="o">))</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="s1">&#39;we are a child of tag (&#39;</span> <span class="o">+</span> <span class="nx">tag</span> <span class="o">+</span> <span class="s1">&#39;), reverse process&#39;</span><span class="o">,</span> <span class="s1">&#39;info&#39;</span><span class="o">,</span> <span class="s1">&#39;EditorSafari&#39;</span><span class="o">);</span>
<span class="nx">_span</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_swapEl</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">],</span> <span class="s1">&#39;span&#39;</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="o">{</span>
<span class="nx">el</span><span class="o">.</span><span class="nx">className</span> <span class="o">=</span> <span class="s1">&#39;yui-non&#39;</span><span class="o">;</span>
<span class="o">});</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_selectNode</span><span class="o">(</span><span class="nx">_span</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">_createCurrentElement</span><span class="o">(</span><span class="nx">tag</span><span class="o">);</span>
<span class="k">var</span> <span class="nx">_sub</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_swapEl</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">],</span> <span class="nx">tag</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_selectNode</span><span class="o">(</span><span class="nx">_sub</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">=</span> <span class="nx">_sub</span><span class="o">;</span>
<span class="o">}</span>
<span class="nx">exec</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
<span class="o">}</span>
<span class="k">return</span> <span class="nx">exec</span><span class="o">;</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @method cmd_superscript</span>
<span class="c"> * @param value Value passed from the execCommand method</span>
<span class="c"> * @description This is an execCommand override method. It is called from execCommand when the execCommand(&#39;superscript&#39;) is used.</span>
<span class="c"> */</span>
<span class="nx">cmd_superscript</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">value</span><span class="o">)</span> <span class="o">{</span>
<span class="k">return</span> <span class="o">[</span><span class="k">this</span><span class="o">.</span><span class="nx">cmd_script</span><span class="o">(</span><span class="s1">&#39;superscript&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">)];</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @method cmd_subscript</span>
<span class="c"> * @param value Value passed from the execCommand method</span>
<span class="c"> * @description This is an execCommand override method. It is called from execCommand when the execCommand(&#39;subscript&#39;) is used.</span>
<span class="c"> */</span>
<span class="nx">cmd_subscript</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">value</span><span class="o">)</span> <span class="o">{</span>
<span class="k">return</span> <span class="o">[</span><span class="k">this</span><span class="o">.</span><span class="nx">cmd_script</span><span class="o">(</span><span class="s1">&#39;subscript&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">)];</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @method cmd_indent</span>
<span class="c"> * @param value Value passed from the execCommand method</span>
<span class="c"> * @description This is an execCommand override method. It is called from execCommand when the execCommand(&#39;indent&#39;) is used.</span>
<span class="c"> */</span>
<span class="nx">cmd_indent</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">value</span><span class="o">)</span> <span class="o">{</span>
<span class="k">var</span> <span class="nx">exec</span> <span class="o">=</span> <span class="kc">true</span><span class="o">,</span> <span class="nx">selEl</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_getSelectedElement</span><span class="o">(),</span> <span class="nx">_bq</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
<span class="c">//if (this.browser.webkit || this.browser.ie || this.browser.gecko) {</span>
<span class="c"></span> <span class="c">//if (this.browser.webkit || this.browser.ie) {</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">browser</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="k">this</span><span class="o">.</span><span class="nx">_isElement</span><span class="o">(</span><span class="nx">selEl</span><span class="o">,</span> <span class="s1">&#39;blockquote&#39;</span><span class="o">))</span> <span class="o">{</span>
<span class="nx">_bq</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_getDoc</span><span class="o">().</span><span class="nx">createElement</span><span class="o">(</span><span class="s1">&#39;blockquote&#39;</span><span class="o">);</span>
<span class="nx">_bq</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="nx">selEl</span><span class="o">.</span><span class="nx">innerHTML</span><span class="o">;</span>
<span class="nx">selEl</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span><span class="o">;</span>
<span class="nx">selEl</span><span class="o">.</span><span class="nx">appendChild</span><span class="o">(</span><span class="nx">_bq</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_selectNode</span><span class="o">(</span><span class="nx">_bq</span><span class="o">);</span>
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
<span class="nx">_bq</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_getDoc</span><span class="o">().</span><span class="nx">createElement</span><span class="o">(</span><span class="s1">&#39;blockquote&#39;</span><span class="o">);</span>
<span class="k">var</span> <span class="nx">html</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_getRange</span><span class="o">().</span><span class="nx">htmlText</span><span class="o">;</span>
<span class="nx">_bq</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="nx">html</span><span class="o">;</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_createCurrentElement</span><span class="o">(</span><span class="s1">&#39;blockquote&#39;</span><span class="o">);</span>
<span class="c">/*</span>
<span class="c"> for (var i = 0; i &lt; this.currentElement.length; i++) {</span>
<span class="c"> _bq = this._getDoc().createElement(&#39;blockquote&#39;);</span>
<span class="c"> _bq.innerHTML = this.currentElement[i].innerHTML;</span>
<span class="c"> this.currentElement[i].parentNode.replaceChild(_bq, this.currentElement[i]);</span>
<span class="c"> this.currentElement[i] = _bq;</span>
<span class="c"> }</span>
<span class="c"> */</span>
<span class="k">this</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">].</span><span class="nx">parentNode</span><span class="o">.</span><span class="nx">replaceChild</span><span class="o">(</span><span class="nx">_bq</span><span class="o">,</span> <span class="k">this</span><span class="o">.</span><span class="nx">currentElement</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">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">]</span> <span class="o">=</span> <span class="nx">_bq</span><span class="o">;</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_selectNode</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">]);</span>
<span class="o">}</span>
<span class="nx">exec</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
<span class="nx">value</span> <span class="o">=</span> <span class="s1">&#39;blockquote&#39;</span><span class="o">;</span>
<span class="o">}</span>
<span class="k">return</span> <span class="o">[</span><span class="nx">exec</span><span class="o">,</span> <span class="s1">&#39;formatblock&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">];</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @method cmd_outdent</span>
<span class="c"> * @param value Value passed from the execCommand method</span>
<span class="c"> * @description This is an execCommand override method. It is called from execCommand when the execCommand(&#39;outdent&#39;) is used.</span>
<span class="c"> */</span>
<span class="nx">cmd_outdent</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">value</span><span class="o">)</span> <span class="o">{</span>
<span class="k">var</span> <span class="nx">exec</span> <span class="o">=</span> <span class="kc">true</span><span class="o">,</span> <span class="nx">selEl</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_getSelectedElement</span><span class="o">(),</span> <span class="nx">_bq</span> <span class="o">=</span> <span class="kc">null</span><span class="o">,</span> <span class="nx">_span</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
<span class="c">//if (this.browser.webkit || this.browser.ie || this.browser.gecko) {</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">browser</span><span class="o">.</span><span class="nx">webkit</span> <span class="o">||</span> <span class="k">this</span><span class="o">.</span><span class="nx">browser</span><span class="o">.</span><span class="nx">ie</span><span class="o">)</span> <span class="o">{</span>
<span class="c">//if (this.browser.ie) {</span>
<span class="c"></span> <span class="nx">selEl</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_getSelectedElement</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">_isElement</span><span class="o">(</span><span class="nx">selEl</span><span class="o">,</span> <span class="s1">&#39;blockquote&#39;</span><span class="o">))</span> <span class="o">{</span>
<span class="k">var</span> <span class="nx">par</span> <span class="o">=</span> <span class="nx">selEl</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="k">this</span><span class="o">.</span><span class="nx">_isElement</span><span class="o">(</span><span class="nx">selEl</span><span class="o">.</span><span class="nx">parentNode</span><span class="o">,</span> <span class="s1">&#39;blockquote&#39;</span><span class="o">))</span> <span class="o">{</span>
<span class="nx">par</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="nx">selEl</span><span class="o">.</span><span class="nx">innerHTML</span><span class="o">;</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_selectNode</span><span class="o">(</span><span class="nx">par</span><span class="o">);</span>
<span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
<span class="nx">_span</span> <span class="o">=</span> <span class="k">this</span><span class="o">.</span><span class="nx">_getDoc</span><span class="o">().</span><span class="nx">createElement</span><span class="o">(</span><span class="s1">&#39;span&#39;</span><span class="o">);</span>
<span class="nx">_span</span><span class="o">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="nx">selEl</span><span class="o">.</span><span class="nx">innerHTML</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">addClass</span><span class="o">(</span><span class="nx">_span</span><span class="o">,</span> <span class="s1">&#39;yui-non&#39;</span><span class="o">);</span>
<span class="nx">par</span><span class="o">.</span><span class="nx">replaceChild</span><span class="o">(</span><span class="nx">_span</span><span class="o">,</span> <span class="nx">selEl</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_selectNode</span><span class="o">(</span><span class="nx">_span</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">YAHOO</span><span class="o">.</span><span class="nx">log</span><span class="o">(</span><span class="s1">&#39;Can not outdent, we are not inside a blockquote&#39;</span><span class="o">,</span> <span class="s1">&#39;warn&#39;</span><span class="o">,</span> <span class="s1">&#39;Editor&#39;</span><span class="o">);</span>
<span class="o">}</span>
<span class="nx">exec</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
<span class="o">}</span> <span class="k">else</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="o">}</span>
<span class="k">return</span> <span class="o">[</span><span class="nx">exec</span><span class="o">,</span> <span class="s1">&#39;outdent&#39;</span><span class="o">,</span> <span class="nx">value</span><span class="o">];</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @method cmd_justify</span>
<span class="c"> * @param dir The direction to justify</span>
<span class="c"> * @description This is a factory method for the justify family of commands.</span>
<span class="c"> */</span>
<span class="nx">cmd_justify</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">dir</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">browser</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="k">this</span><span class="o">.</span><span class="nx">_hasSelection</span><span class="o">())</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_createCurrentElement</span><span class="o">(</span><span class="s1">&#39;span&#39;</span><span class="o">);</span>
<span class="k">this</span><span class="o">.</span><span class="nx">_swapEl</span><span class="o">(</span><span class="k">this</span><span class="o">.</span><span class="nx">currentElement</span><span class="o">[</span><span class="m">0</span><span class="o">],</span> <span class="s1">&#39;div&#39;</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="o">{</span>
<span class="nx">el</span><span class="o">.</span><span class="nx">style</span><span class="o">.</span><span class="nx">textAlign</span> <span class="o">=</span> <span class="nx">dir</span><span class="o">;</span>
<span class="o">});</span>
<span class="k">return</span> <span class="o">[</span><span class="kc">false</span><span class="o">];</span>
<span class="o">}</span>
<span class="o">}</span>
<span class="k">return</span> <span class="o">[</span><span class="kc">true</span><span class="o">,</span> <span class="s1">&#39;justify&#39;</span> <span class="o">+</span> <span class="nx">dir</span><span class="o">,</span> <span class="s1">&#39;&#39;</span><span class="o">];</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @method cmd_justifycenter</span>
<span class="c"> * @param value Value passed from the execCommand method</span>
<span class="c"> * @description This is an execCommand override method. It is called from execCommand when the execCommand(&#39;justifycenter&#39;) is used.</span>
<span class="c"> */</span>
<span class="nx">cmd_justifycenter</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="o">[</span><span class="k">this</span><span class="o">.</span><span class="nx">cmd_justify</span><span class="o">(</span><span class="s1">&#39;center&#39;</span><span class="o">)];</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @method cmd_justifyleft</span>
<span class="c"> * @param value Value passed from the execCommand method</span>
<span class="c"> * @description This is an execCommand override method. It is called from execCommand when the execCommand(&#39;justifyleft&#39;) is used.</span>
<span class="c"> */</span>
<span class="nx">cmd_justifyleft</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="o">[</span><span class="k">this</span><span class="o">.</span><span class="nx">cmd_justify</span><span class="o">(</span><span class="s1">&#39;left&#39;</span><span class="o">)];</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @method cmd_justifyright</span>
<span class="c"> * @param value Value passed from the execCommand method</span>
<span class="c"> * @description This is an execCommand override method. It is called from execCommand when the execCommand(&#39;justifyright&#39;) is used.</span>
<span class="c"> */</span>
<span class="nx">cmd_justifyright</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="o">[</span><span class="k">this</span><span class="o">.</span><span class="nx">cmd_justify</span><span class="o">(</span><span class="s1">&#39;right&#39;</span><span class="o">)];</span>
<span class="o">},</span>
<span class="c">/* }}}*/</span>
<span class="c">/**</span>
<span class="c"> * @method toString</span>
<span class="c"> * @description Returns a string representing the editor.</span>
<span class="c"> * @return {String}</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">var</span> <span class="nx">str</span> <span class="o">=</span> <span class="s1">&#39;Editor&#39;</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">get</span> <span class="o">&amp;&amp;</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;element_cont&#39;</span><span class="o">))</span> <span class="o">{</span>
<span class="nx">str</span> <span class="o">=</span> <span class="s1">&#39;Editor (#&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;element_cont&#39;</span><span class="o">).</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;id&#39;</span><span class="o">)</span> <span class="o">+</span> <span class="s1">&#39;)&#39;</span> <span class="o">+</span> <span class="o">((</span><span class="k">this</span><span class="o">.</span><span class="nx">get</span><span class="o">(</span><span class="s1">&#39;disabled&#39;</span><span class="o">)</span> <span class="o">?</span> <span class="s1">&#39; Disabled&#39;</span> <span class="o">:</span> <span class="s1">&#39;&#39;</span><span class="o">));</span>
<span class="o">}</span>
<span class="k">return</span> <span class="nx">str</span><span class="o">;</span>
<span class="o">}</span>
<span class="o">});</span>
<span class="c">/**</span>
<span class="c"> * @description Class to hold Window information between uses. We use the same panel to show the windows, so using this will allow you to configure a window before it is shown.</span>
<span class="c"> * This is what you pass to Editor.openWindow();. These parameters will not take effect until the openWindow() is called in the editor.</span>
<span class="c"> * @class EditorWindow</span>
<span class="c"> * @param {String} name The name of the window.</span>
<span class="c"> * @param {Object} attrs Attributes for the window. Current attributes used are : height and width</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">EditorWindow</span> <span class="o">=</span> <span class="k">function</span><span class="o">(</span><span class="nx">name</span><span class="o">,</span> <span class="nx">attrs</span><span class="o">)</span> <span class="o">{</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @property name</span>
<span class="c"> * @description A unique name for the window</span>
<span class="c"> */</span>
<span class="k">this</span><span class="o">.</span><span class="nx">name</span> <span class="o">=</span> <span class="nx">name</span><span class="o">.</span><span class="nx">replace</span><span class="o">(</span><span class="s1">&#39; &#39;</span><span class="o">,</span> <span class="s1">&#39;_&#39;</span><span class="o">);</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @property attrs</span>
<span class="c"> * @description The window attributes</span>
<span class="c"> */</span>
<span class="k">this</span><span class="o">.</span><span class="nx">attrs</span> <span class="o">=</span> <span class="nx">attrs</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">EditorWindow</span><span class="o">.</span><span class="nx">prototype</span> <span class="o">=</span> <span class="o">{</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @property header</span>
<span class="c"> * @description Holder for the header of the window, used in Editor.openWindow</span>
<span class="c"> */</span>
<span class="nx">header</span><span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @property body</span>
<span class="c"> * @description Holder for the body of the window, used in Editor.openWindow</span>
<span class="c"> */</span>
<span class="nx">body</span><span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @private</span>
<span class="c"> * @property footer</span>
<span class="c"> * @description Holder for the footer of the window, used in Editor.openWindow</span>
<span class="c"> */</span>
<span class="nx">footer</span><span class="o">:</span> <span class="kc">null</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @method setHeader</span>
<span class="c"> * @description Sets the header for the window.</span>
<span class="c"> * @param {String/HTMLElement} str The string or DOM reference to be used as the windows header.</span>
<span class="c"> */</span>
<span class="nx">setHeader</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">str</span><span class="o">)</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">header</span> <span class="o">=</span> <span class="nx">str</span><span class="o">;</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @method setBody</span>
<span class="c"> * @description Sets the body for the window.</span>
<span class="c"> * @param {String/HTMLElement} str The string or DOM reference to be used as the windows body.</span>
<span class="c"> */</span>
<span class="nx">setBody</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">str</span><span class="o">)</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">body</span> <span class="o">=</span> <span class="nx">str</span><span class="o">;</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @method setFooter</span>
<span class="c"> * @description Sets the footer for the window.</span>
<span class="c"> * @param {String/HTMLElement} str The string or DOM reference to be used as the windows footer.</span>
<span class="c"> */</span>
<span class="nx">setFooter</span><span class="o">:</span> <span class="k">function</span><span class="o">(</span><span class="nx">str</span><span class="o">)</span> <span class="o">{</span>
<span class="k">this</span><span class="o">.</span><span class="nx">footer</span> <span class="o">=</span> <span class="nx">str</span><span class="o">;</span>
<span class="o">},</span>
<span class="c">/**</span>
<span class="c"> * @method toString</span>
<span class="c"> * @description Returns a string representing the EditorWindow.</span>
<span class="c"> * @return {String}</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="s1">&#39;Editor Window (&#39;</span> <span class="o">+</span> <span class="k">this</span><span class="o">.</span><span class="nx">name</span> <span class="o">+</span> <span class="s1">&#39;)&#39;</span><span class="o">;</span>
<span class="o">}</span>
<span class="o">};</span>
<span class="c">/**</span>
<span class="c">* @event beforeOpenWindow</span>
<span class="c">* @param {&lt;a href=&quot;YAHOO.widget.EditorWindow.html&quot;&gt;EditorWindow&lt;/a&gt;} win The EditorWindow object</span>
<span class="c">* @param {Overlay} panel The Overlay object that is used to create the window.</span>
<span class="c">* @description Event fires before an Editor Window is opened. See &lt;a href=&quot;YAHOO.util.Element.html#addListener&quot;&gt;Element.addListener&lt;/a&gt; for more information on listening for this event.</span>
<span class="c">* @type YAHOO.util.CustomEvent</span>
<span class="c">*/</span>
<span class="c">/**</span>
<span class="c">* @event afterOpenWindow</span>
<span class="c">* @param {&lt;a href=&quot;YAHOO.widget.EditorWindow.html&quot;&gt;EditorWindow&lt;/a&gt;} win The EditorWindow object</span>
<span class="c">* @param {Overlay} panel The Overlay object that is used to create the window.</span>
<span class="c">* @description Event fires after an Editor Window is opened. See &lt;a href=&quot;YAHOO.util.Element.html#addListener&quot;&gt;Element.addListener&lt;/a&gt; for more information on listening for this event.</span>
<span class="c">* @type YAHOO.util.CustomEvent</span>
<span class="c">*/</span>
<span class="c">/**</span>
<span class="c">* @event closeWindow</span>
<span class="c">* @param {&lt;a href=&quot;YAHOO.widget.EditorWindow.html&quot;&gt;EditorWindow&lt;/a&gt;} win The EditorWindow object</span>
<span class="c">* @description Event fires after an Editor Window is closed. See &lt;a href=&quot;YAHOO.util.Element.html#addListener&quot;&gt;Element.addListener&lt;/a&gt; for more information on listening for this event.</span>
<span class="c">* @type YAHOO.util.CustomEvent</span>
<span class="c">*/</span>
<span class="c">/**</span>
<span class="c">* @event windowCMDOpen</span>
<span class="c">* @param {&lt;a href=&quot;YAHOO.widget.EditorWindow.html&quot;&gt;EditorWindow&lt;/a&gt;} win The EditorWindow object</span>
<span class="c">* @param {Overlay} panel The Overlay object that is used to create the window.</span>
<span class="c">* @description Dynamic event fired when an &lt;a href=&quot;YAHOO.widget.EditorWindow.html&quot;&gt;EditorWindow&lt;/a&gt; is opened.. The dynamic event is based on the name of the window. Example Window: createlink, opening this window would fire the windowcreatelinkOpen event. See &lt;a href=&quot;YAHOO.util.Element.html#addListener&quot;&gt;Element.addListener&lt;/a&gt; for more information on listening for this event.</span>
<span class="c">* @type YAHOO.util.CustomEvent</span>
<span class="c">*/</span>
<span class="c">/**</span>
<span class="c">* @event windowCMDClose</span>
<span class="c">* @param {&lt;a href=&quot;YAHOO.widget.EditorWindow.html&quot;&gt;EditorWindow&lt;/a&gt;} win The EditorWindow object</span>
<span class="c">* @param {Overlay} panel The Overlay object that is used to create the window.</span>
<span class="c">* @description Dynamic event fired when an &lt;a href=&quot;YAHOO.widget.EditorWindow.html&quot;&gt;EditorWindow&lt;/a&gt; is closed.. The dynamic event is based on the name of the window. Example Window: createlink, opening this window would fire the windowcreatelinkClose event. See &lt;a href=&quot;YAHOO.util.Element.html#addListener&quot;&gt;Element.addListener&lt;/a&gt; for more information on listening for this event.</span>
<span class="c">* @type YAHOO.util.CustomEvent</span>
<span class="c">*/</span>
<span class="c">/**</span>
<span class="c">* @event windowRender</span>
<span class="c">* @param {&lt;a href=&quot;YAHOO.widget.EditorWindow.html&quot;&gt;EditorWindow&lt;/a&gt;} win The EditorWindow object</span>
<span class="c">* @param {Overlay} panel The Overlay object that is used to create the window.</span>
<span class="c">* @description Event fired when the initial Overlay is rendered. Can be used to manipulate the content of the panel.</span>
<span class="c">* @type YAHOO.util.CustomEvent</span>
<span class="c">*/</span>
<span class="c">/**</span>
<span class="c">* @event windowInsertImageRender</span>
<span class="c">* @param {Overlay} panel The Overlay object that is used to create the window.</span>
<span class="c">* @param {HTMLElement} body The HTML element used as the body of the window..</span>
<span class="c">* @param {Toolbar} toolbar A reference to the toolbar object used inside this window.</span>
<span class="c">* @description Event fired when the pre render of the Insert Image window has finished.</span>
<span class="c">* @type YAHOO.util.CustomEvent</span>
<span class="c">*/</span>
<span class="c">/**</span>
<span class="c">* @event windowCreateLinkRender</span>
<span class="c">* @param {Overlay} panel The Overlay object that is used to create the window.</span>
<span class="c">* @param {HTMLElement} body The HTML element used as the body of the window..</span>
<span class="c">* @description Event fired when the pre render of the Create Link window has finished.</span>
<span class="c">* @type YAHOO.util.CustomEvent</span>
<span class="c">*/</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_carousel.html">carousel</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=""><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="selected"><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_paginator.html">paginator</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.widget.Editor.html">YAHOO.widget.Editor</a></li>
<li class=""><a href="YAHOO.widget.EditorInfo.html">YAHOO.widget.EditorInfo</a></li>
<li class=""><a href="YAHOO.widget.EditorWindow.html">YAHOO.widget.EditorWindow</a></li>
<li class=""><a href="YAHOO.widget.SimpleEditor.html">YAHOO.widget.SimpleEditor</a></li>
<li class=""><a href="YAHOO.widget.Toolbar.html">YAHOO.widget.Toolbar</a></li>
<li class=""><a href="YAHOO.widget.ToolbarButton.html">YAHOO.widget.ToolbarButton</a></li>
<li class=""><a href="YAHOO.widget.ToolbarButtonAdvanced.html">YAHOO.widget.ToolbarButtonAdvanced</a></li>
</ul>
</div>
<div class="module">
<h4>Files</h4>
<ul class="content">
<li class="selected"><a href="editor.js.html">editor.js</a></li>
<li class=""><a href="simple-editor.js.html">simple-editor.js</a></li>
<li class=""><a href="toolbar-button.js.html">toolbar-button.js</a></li>
<li class=""><a href="toolbar.js.html">toolbar.js</a></li>
</ul>
</div>
</div>
</div>
</div>
<div id="ft">
<hr />
Copyright &copy; 2008 Yahoo! Inc. All rights reserved.
</div>
</div>
</body>
</html>