<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html xmlns:yui="http://yuilibrary.com/rdf/1.0/yui.rdf#">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<title>API: editor-plugin WiringEditor.js (YUI Library)</title>
<link rel="stylesheet" type="text/css" href="assets/reset-fonts-grids-min.css" />
<link rel="stylesheet" type="text/css" href="assets/api.css" />
<script type="text/javascript" src="assets/api-js"></script>
<script type="text/javascript" src="assets/ac-js"></script>
</head>
<body id="yahoo-com">
<div id="doc3" class="yui-t2">
<div id="hd">
<h1><a href="http://neyric.github.com/wireit" title="WireItLibrary">WireItLibrary</a></h1>
<h3>editor-plugin <span class="subtitle">0.6.0</span></h3>
<a href="./index.html" title="WireItLibrary">WireItLibrary</a>
> <a href="./module_editor-plugin.html" title="editor-plugin">editor-plugin</a>
> WiringEditor.js (source view)
<form onsubmit="return false">
<div id="propertysearch">
Search: <input autocomplete="off" id="searchinput" />
<div id="searchresults">
</div>
</div>
</form>
</div>
<div id="bd">
<div id="yui-main">
<div class="yui-b">
<form action="#" name="yui-classopts-form" method="get" id="yui-classopts-form">
<fieldset>
<legend>Filters</legend>
<span class="classopts"><input type="checkbox" name="show_private" id="show_private" /> <label for="show_private">Show Private</label></span>
<span class="classopts"><input type="checkbox" name="show_protected" id="show_protected" /> <label for="show_protected">Show Protected</label></span>
<span class="classopts"><input type="checkbox" name="show_deprecated" id="show_deprecated" /> <label for="show_deprecated">Show Deprecated</label></span>
</fieldset>
</form>
<div id="srcout">
<style>
#doc3 .classopts { display:none; }
</style>
<div class="highlight"><pre><span class="p">(</span><span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
<span class="kd">var</span> <span class="nx">util</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="o">,</span><span class="nx">lang</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">lang</span><span class="o">;</span>
<span class="kd">var</span> <span class="nx">Event</span> <span class="o">=</span> <span class="nx">util</span><span class="p">.</span><span class="nx">Event</span><span class="o">,</span> <span class="nx">Dom</span> <span class="o">=</span> <span class="nx">util</span><span class="p">.</span><span class="nx">Dom</span><span class="o">,</span> <span class="nx">Connect</span> <span class="o">=</span> <span class="nx">util</span><span class="p">.</span><span class="nx">Connect</span><span class="o">,</span><span class="nx">widget</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">widget</span><span class="o">;</span>
<span class="c">/**</span>
<span class="c"> * The WiringEditor class provides a full page interface </span>
<span class="c"> * @class WiringEditor</span>
<span class="c"> * @extends WireIt.BaseEditor</span>
<span class="c"> * @constructor</span>
<span class="c"> * @param {Object} options</span>
<span class="c"> */</span>
<span class="nx">WireIt</span><span class="p">.</span><span class="nx">WiringEditor</span> <span class="o">=</span> <span class="kd">function</span><span class="p">(</span><span class="nx">options</span><span class="p">)</span> <span class="p">{</span>
<span class="c">/**</span>
<span class="c"> * Hash object to reference module definitions by their name</span>
<span class="c"> * @property modulesByName</span>
<span class="c"> * @type {Object}</span>
<span class="c"> */</span>
<span class="k">this</span><span class="p">.</span><span class="nx">modulesByName</span> <span class="o">=</span> <span class="p">{};</span>
<span class="nx">WireIt</span><span class="p">.</span><span class="nx">WiringEditor</span><span class="p">.</span><span class="nx">superclass</span><span class="p">.</span><span class="nx">constructor</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="o">,</span> <span class="nx">options</span><span class="p">);</span>
<span class="c">// LoadWirings</span>
<span class="k">if</span><span class="p">(</span> <span class="k">this</span><span class="p">.</span><span class="nx">adapter</span><span class="p">.</span><span class="nx">init</span> <span class="o">&&</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">lang</span><span class="p">.</span><span class="nx">isFunction</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">adapter</span><span class="p">.</span><span class="nx">init</span><span class="p">)</span> <span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">adapter</span><span class="p">.</span><span class="nx">init</span><span class="p">();</span>
<span class="p">}</span>
<span class="k">this</span><span class="p">.</span><span class="nx">load</span><span class="p">();</span>
<span class="p">};</span>
<span class="nx">lang</span><span class="p">.</span><span class="nx">extend</span><span class="p">(</span><span class="nx">WireIt</span><span class="p">.</span><span class="nx">WiringEditor</span><span class="o">,</span> <span class="nx">WireIt</span><span class="p">.</span><span class="nx">BaseEditor</span><span class="o">,</span> <span class="p">{</span>
<span class="c">/**</span>
<span class="c"> * @method setOptions</span>
<span class="c"> * @param {Object} options</span>
<span class="c"> */</span>
<span class="nx">setOptions</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">options</span><span class="p">)</span> <span class="p">{</span>
<span class="nx">WireIt</span><span class="p">.</span><span class="nx">WiringEditor</span><span class="p">.</span><span class="nx">superclass</span><span class="p">.</span><span class="nx">setOptions</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="o">,</span> <span class="nx">options</span><span class="p">);</span>
<span class="c">// Load the modules from options</span>
<span class="k">this</span><span class="p">.</span><span class="nx">modules</span> <span class="o">=</span> <span class="nx">options</span><span class="p">.</span><span class="nx">modules</span> <span class="o">||</span> <span class="p">[];</span>
<span class="k">for</span><span class="p">(</span><span class="kd">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span> <span class="o">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="k">this</span><span class="p">.</span><span class="nx">modules</span><span class="p">.</span><span class="nx">length</span> <span class="o">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
<span class="kd">var</span> <span class="nx">m</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">modules</span><span class="p">[</span><span class="nx">i</span><span class="p">];</span>
<span class="k">this</span><span class="p">.</span><span class="nx">modulesByName</span><span class="p">[</span><span class="nx">m</span><span class="p">.</span><span class="nx">name</span><span class="p">]</span> <span class="o">=</span> <span class="nx">m</span><span class="o">;</span>
<span class="p">}</span>
<span class="k">this</span><span class="p">.</span><span class="nx">adapter</span> <span class="o">=</span> <span class="nx">options</span><span class="p">.</span><span class="nx">adapter</span> <span class="o">||</span> <span class="nx">WireIt</span><span class="p">.</span><span class="nx">WiringEditor</span><span class="p">.</span><span class="nx">adapters</span><span class="p">.</span><span class="nx">JsonRpc</span><span class="o">;</span>
<span class="k">this</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">languageName</span> <span class="o">=</span> <span class="nx">options</span><span class="p">.</span><span class="nx">languageName</span> <span class="o">||</span> <span class="s1">'anonymousLanguage'</span><span class="o">;</span>
<span class="k">this</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">layerOptions</span> <span class="o">=</span> <span class="p">{};</span>
<span class="kd">var</span> <span class="nx">layerOptions</span> <span class="o">=</span> <span class="nx">options</span><span class="p">.</span><span class="nx">layerOptions</span> <span class="o">||</span> <span class="p">{};</span>
<span class="k">this</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">layerOptions</span><span class="p">.</span><span class="nx">parentEl</span> <span class="o">=</span> <span class="nx">layerOptions</span><span class="p">.</span><span class="nx">parentEl</span> <span class="o">?</span> <span class="nx">layerOptions</span><span class="p">.</span><span class="nx">parentEl</span> <span class="o">:</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">get</span><span class="p">(</span><span class="s1">'center'</span><span class="p">);</span>
<span class="k">this</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">layerOptions</span><span class="p">.</span><span class="nx">layerMap</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">lang</span><span class="p">.</span><span class="nx">isUndefined</span><span class="p">(</span><span class="nx">layerOptions</span><span class="p">.</span><span class="nx">layerMap</span><span class="p">)</span> <span class="o">?</span> <span class="kc">true</span> <span class="o">:</span> <span class="nx">layerOptions</span><span class="p">.</span><span class="nx">layerMap</span><span class="o">;</span>
<span class="k">this</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">layerOptions</span><span class="p">.</span><span class="nx">layerMapOptions</span> <span class="o">=</span> <span class="nx">layerOptions</span><span class="p">.</span><span class="nx">layerMapOptions</span> <span class="o">||</span> <span class="p">{</span> <span class="nx">parentEl</span><span class="o">:</span> <span class="s1">'layerMap'</span> <span class="p">};</span>
<span class="k">this</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">modulesAccordionViewParams</span> <span class="o">=</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">lang</span><span class="p">.</span><span class="nx">merge</span><span class="p">({</span>
<span class="nx">collapsible</span><span class="o">:</span> <span class="kc">true</span><span class="o">,</span>
<span class="nx">expandable</span><span class="o">:</span> <span class="kc">true</span><span class="o">,</span> <span class="c">// remove this parameter to open only one panel at a time</span>
<span class="nx">width</span><span class="o">:</span> <span class="s1">'auto'</span><span class="o">,</span>
<span class="nx">expandItem</span><span class="o">:</span> <span class="mi">0</span><span class="o">,</span>
<span class="nx">animationSpeed</span><span class="o">:</span> <span class="s1">'0.3'</span><span class="o">,</span>
<span class="nx">animate</span><span class="o">:</span> <span class="kc">true</span><span class="o">,</span>
<span class="nx">effect</span><span class="o">:</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">Easing</span><span class="p">.</span><span class="nx">easeBothStrong</span>
<span class="p">}</span><span class="o">,</span><span class="nx">options</span><span class="p">.</span><span class="nx">modulesAccordionViewParams</span> <span class="o">||</span> <span class="p">{});</span>
<span class="c">// Grouping options</span>
<span class="kd">var</span> <span class="nx">temp</span> <span class="o">=</span> <span class="k">this</span><span class="o">;</span>
<span class="kd">var</span> <span class="nx">baseConfigFunction</span> <span class="o">=</span> <span class="kd">function</span><span class="p">(</span><span class="nx">name</span><span class="p">)</span> <span class="p">{</span>
<span class="k">return</span> <span class="p">(</span><span class="nx">name</span> <span class="o">==</span> <span class="s2">"Group"</span><span class="p">)</span> <span class="o">?</span> <span class="p">({</span>
<span class="s2">"xtype"</span><span class="o">:</span> <span class="s2">"WireIt.GroupFormContainer"</span><span class="o">,</span>
<span class="s2">"title"</span><span class="o">:</span> <span class="s2">"Group"</span><span class="o">,</span>
<span class="s2">"collapsible"</span><span class="o">:</span> <span class="kc">true</span><span class="o">,</span>
<span class="s2">"fields"</span><span class="o">:</span> <span class="p">[</span> <span class="p">]</span><span class="o">,</span>
<span class="s2">"legend"</span><span class="o">:</span> <span class="s2">"Inner group fields"</span><span class="o">,</span>
<span class="s2">"getBaseConfigFunction"</span> <span class="o">:</span> <span class="nx">baseConfigFunction</span>
<span class="p">})</span> <span class="o">:</span> <span class="nx">temp</span><span class="p">.</span><span class="nx">modulesByName</span><span class="p">[</span><span class="nx">name</span><span class="p">].</span><span class="nx">container</span><span class="o">;</span>
<span class="p">};</span>
<span class="k">this</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">layerOptions</span><span class="p">.</span><span class="nx">grouper</span> <span class="o">=</span> <span class="p">{</span><span class="s2">"baseConfigFunction"</span><span class="o">:</span> <span class="nx">baseConfigFunction</span> <span class="p">};</span>
<span class="p">}</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * Add the rendering of the layer</span>
<span class="c"> */</span>
<span class="nx">render</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
<span class="nx">WireIt</span><span class="p">.</span><span class="nx">WiringEditor</span><span class="p">.</span><span class="nx">superclass</span><span class="p">.</span><span class="nx">render</span><span class="p">.</span><span class="nx">call</span><span class="p">(</span><span class="k">this</span><span class="p">);</span>
<span class="c">/**</span>
<span class="c"> * @property layer</span>
<span class="c"> * @type {WireIt.Layer}</span>
<span class="c"> */</span>
<span class="k">this</span><span class="p">.</span><span class="nx">layer</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">WireIt</span><span class="p">.</span><span class="nx">Layer</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">layerOptions</span><span class="p">);</span>
<span class="k">this</span><span class="p">.</span><span class="nx">layer</span><span class="p">.</span><span class="nx">eventChanged</span><span class="p">.</span><span class="nx">subscribe</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">onLayerChanged</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="p">);</span>
<span class="c">// Left Accordion</span>
<span class="k">this</span><span class="p">.</span><span class="nx">renderModulesAccordion</span><span class="p">();</span>
<span class="c">// Render module list</span>
<span class="k">this</span><span class="p">.</span><span class="nx">buildModulesList</span><span class="p">();</span>
<span class="p">}</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * render the modules accordion in the left panel</span>
<span class="c"> */</span>
<span class="nx">renderModulesAccordion</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
<span class="c">// Create the modules accordion DOM if not found</span>
<span class="k">if</span><span class="p">(</span><span class="o">!</span><span class="nx">Dom</span><span class="p">.</span><span class="nx">get</span><span class="p">(</span><span class="s1">'modulesAccordionView'</span><span class="p">))</span> <span class="p">{</span>
<span class="nx">Dom</span><span class="p">.</span><span class="nx">get</span><span class="p">(</span><span class="s1">'left'</span><span class="p">).</span><span class="nx">appendChild</span><span class="p">(</span> <span class="nx">WireIt</span><span class="p">.</span><span class="nx">cn</span><span class="p">(</span><span class="s1">'ul'</span><span class="o">,</span> <span class="p">{</span><span class="nx">id</span><span class="o">:</span> <span class="s1">'modulesAccordionView'</span><span class="p">})</span> <span class="p">);</span>
<span class="kd">var</span> <span class="nx">li</span> <span class="o">=</span> <span class="nx">WireIt</span><span class="p">.</span><span class="nx">cn</span><span class="p">(</span><span class="s1">'li'</span><span class="p">);</span>
<span class="nx">li</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">WireIt</span><span class="p">.</span><span class="nx">cn</span><span class="p">(</span><span class="s1">'h2'</span><span class="o">,</span><span class="kc">null</span><span class="o">,</span><span class="kc">null</span><span class="o">,</span><span class="s2">"Main"</span><span class="p">));</span>
<span class="kd">var</span> <span class="nx">d</span> <span class="o">=</span> <span class="nx">WireIt</span><span class="p">.</span><span class="nx">cn</span><span class="p">(</span><span class="s1">'div'</span><span class="p">);</span>
<span class="nx">d</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span> <span class="nx">WireIt</span><span class="p">.</span><span class="nx">cn</span><span class="p">(</span><span class="s1">'div'</span><span class="o">,</span> <span class="p">{</span><span class="nx">id</span><span class="o">:</span> <span class="s2">"module-category-main"</span><span class="p">})</span> <span class="p">);</span>
<span class="nx">li</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">d</span><span class="p">);</span>
<span class="nx">Dom</span><span class="p">.</span><span class="nx">get</span><span class="p">(</span><span class="s1">'modulesAccordionView'</span><span class="p">).</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">li</span><span class="p">);</span>
<span class="p">}</span>
<span class="k">this</span><span class="p">.</span><span class="nx">modulesAccordionView</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">widget</span><span class="p">.</span><span class="nx">AccordionView</span><span class="p">(</span><span class="s1">'modulesAccordionView'</span><span class="o">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">modulesAccordionViewParams</span><span class="p">);</span>
<span class="c">// Open all panels</span>
<span class="k">for</span><span class="p">(</span><span class="kd">var</span> <span class="nx">l</span> <span class="o">=</span> <span class="mi">1</span><span class="o">,</span> <span class="nx">n</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">modulesAccordionView</span><span class="p">.</span><span class="nx">getPanels</span><span class="p">().</span><span class="nx">length</span><span class="o">;</span> <span class="nx">l</span> <span class="o"><</span> <span class="nx">n</span> <span class="o">;</span> <span class="nx">l</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">modulesAccordionView</span><span class="p">.</span><span class="nx">openPanel</span><span class="p">(</span><span class="nx">l</span><span class="p">);</span>
<span class="p">}</span>
<span class="p">}</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * Build the left menu on the left</span>
<span class="c"> * @method buildModulesList</span>
<span class="c"> */</span>
<span class="nx">buildModulesList</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
<span class="kd">var</span> <span class="nx">modules</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">modules</span><span class="o">;</span>
<span class="k">for</span><span class="p">(</span><span class="kd">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span> <span class="o">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="nx">modules</span><span class="p">.</span><span class="nx">length</span> <span class="o">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">addModuleToList</span><span class="p">(</span><span class="nx">modules</span><span class="p">[</span><span class="nx">i</span><span class="p">]);</span>
<span class="p">}</span>
<span class="c">// Make the layer a drag drop target</span>
<span class="k">if</span><span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">ddTarget</span><span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">ddTarget</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">DDTarget</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">layer</span><span class="p">.</span><span class="nx">el</span><span class="o">,</span> <span class="s2">"module"</span><span class="p">);</span>
<span class="k">this</span><span class="p">.</span><span class="nx">ddTarget</span><span class="p">.</span><span class="nx">_layer</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">layer</span><span class="o">;</span>
<span class="p">}</span>
<span class="p">}</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * Add a module definition to the left list</span>
<span class="c"> */</span>
<span class="nx">addModuleToList</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">module</span><span class="p">)</span> <span class="p">{</span>
<span class="k">try</span> <span class="p">{</span>
<span class="kd">var</span> <span class="nx">div</span> <span class="o">=</span> <span class="nx">WireIt</span><span class="p">.</span><span class="nx">cn</span><span class="p">(</span><span class="s1">'div'</span><span class="o">,</span> <span class="p">{</span><span class="nx">className</span><span class="o">:</span> <span class="s2">"WiringEditor-module"</span><span class="p">});</span>
<span class="k">if</span><span class="p">(</span><span class="nx">module</span><span class="p">.</span><span class="nx">description</span><span class="p">)</span> <span class="p">{</span>
<span class="nx">div</span><span class="p">.</span><span class="nx">title</span> <span class="o">=</span> <span class="nx">module</span><span class="p">.</span><span class="nx">description</span><span class="o">;</span>
<span class="p">}</span>
<span class="k">if</span><span class="p">(</span><span class="nx">module</span><span class="p">.</span><span class="nx">container</span><span class="p">.</span><span class="nx">icon</span><span class="p">)</span> <span class="p">{</span>
<span class="nx">div</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span> <span class="nx">WireIt</span><span class="p">.</span><span class="nx">cn</span><span class="p">(</span><span class="s1">'img'</span><span class="o">,</span><span class="p">{</span><span class="nx">src</span><span class="o">:</span> <span class="nx">module</span><span class="p">.</span><span class="nx">container</span><span class="p">.</span><span class="nx">icon</span><span class="p">})</span> <span class="p">);</span>
<span class="p">}</span>
<span class="nx">div</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span> <span class="nx">WireIt</span><span class="p">.</span><span class="nx">cn</span><span class="p">(</span><span class="s1">'span'</span><span class="o">,</span> <span class="kc">null</span><span class="o">,</span> <span class="kc">null</span><span class="o">,</span> <span class="nx">module</span><span class="p">.</span><span class="nx">name</span><span class="p">)</span> <span class="p">);</span>
<span class="kd">var</span> <span class="nx">ddProxy</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">WireIt</span><span class="p">.</span><span class="nx">ModuleProxy</span><span class="p">(</span><span class="nx">div</span><span class="o">,</span> <span class="k">this</span><span class="p">);</span>
<span class="nx">ddProxy</span><span class="p">.</span><span class="nx">_module</span> <span class="o">=</span> <span class="nx">module</span><span class="o">;</span>
<span class="c">// Get the category element in the accordion or create a new one</span>
<span class="kd">var</span> <span class="nx">category</span> <span class="o">=</span> <span class="nx">module</span><span class="p">.</span><span class="nx">category</span> <span class="o">||</span> <span class="s2">"main"</span><span class="o">;</span>
<span class="kd">var</span> <span class="nx">el</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">get</span><span class="p">(</span><span class="s2">"module-category-"</span><span class="o">+</span><span class="nx">category</span><span class="p">);</span>
<span class="k">if</span><span class="p">(</span> <span class="o">!</span><span class="nx">el</span> <span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">modulesAccordionView</span><span class="p">.</span><span class="nx">addPanel</span><span class="p">({</span>
<span class="kd">label</span><span class="o">:</span> <span class="nx">category</span><span class="o">,</span>
<span class="nx">content</span><span class="o">:</span> <span class="s2">"<div id='module-category-"</span><span class="o">+</span><span class="nx">category</span><span class="o">+</span><span class="s2">"'></div>"</span>
<span class="p">});</span>
<span class="k">this</span><span class="p">.</span><span class="nx">modulesAccordionView</span><span class="p">.</span><span class="nx">openPanel</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">modulesAccordionView</span><span class="p">.</span><span class="nx">_panels</span><span class="p">.</span><span class="nx">length</span><span class="o">-</span><span class="mi">1</span><span class="p">);</span>
<span class="nx">el</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">get</span><span class="p">(</span><span class="s2">"module-category-"</span><span class="o">+</span><span class="nx">category</span><span class="p">);</span>
<span class="p">}</span>
<span class="nx">el</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">div</span><span class="p">);</span>
<span class="p">}</span><span class="k">catch</span><span class="p">(</span><span class="nx">ex</span><span class="p">){</span> <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">ex</span><span class="p">);}</span>
<span class="p">}</span><span class="o">,</span>
<span class="nx">getCurrentGrouper</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">editor</span><span class="p">)</span> <span class="p">{</span>
<span class="k">return</span> <span class="nx">editor</span><span class="p">.</span><span class="nx">currentGrouper</span><span class="o">;</span>
<span class="p">}</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * add a module at the given pos</span>
<span class="c"> */</span>
<span class="nx">addModule</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">module</span><span class="o">,</span> <span class="nx">pos</span><span class="p">)</span> <span class="p">{</span>
<span class="k">try</span> <span class="p">{</span>
<span class="kd">var</span> <span class="nx">containerConfig</span> <span class="o">=</span> <span class="nx">module</span><span class="p">.</span><span class="nx">container</span><span class="o">;</span>
<span class="nx">containerConfig</span><span class="p">.</span><span class="nx">position</span> <span class="o">=</span> <span class="nx">pos</span><span class="o">;</span>
<span class="nx">containerConfig</span><span class="p">.</span><span class="nx">title</span> <span class="o">=</span> <span class="nx">module</span><span class="p">.</span><span class="nx">name</span><span class="o">;</span>
<span class="kd">var</span> <span class="nx">temp</span> <span class="o">=</span> <span class="k">this</span><span class="o">;</span>
<span class="nx">containerConfig</span><span class="p">.</span><span class="nx">getGrouper</span> <span class="o">=</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span> <span class="k">return</span> <span class="nx">temp</span><span class="p">.</span><span class="nx">getCurrentGrouper</span><span class="p">(</span><span class="nx">temp</span><span class="p">);</span> <span class="p">};</span>
<span class="kd">var</span> <span class="nx">container</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">layer</span><span class="p">.</span><span class="nx">addContainer</span><span class="p">(</span><span class="nx">containerConfig</span><span class="p">);</span>
<span class="c">// Adding the category CSS class name</span>
<span class="kd">var</span> <span class="nx">category</span> <span class="o">=</span> <span class="nx">module</span><span class="p">.</span><span class="nx">category</span> <span class="o">||</span> <span class="s2">"main"</span><span class="o">;</span>
<span class="nx">Dom</span><span class="p">.</span><span class="nx">addClass</span><span class="p">(</span><span class="nx">container</span><span class="p">.</span><span class="nx">el</span><span class="o">,</span> <span class="s2">"WiringEditor-module-category-"</span><span class="o">+</span><span class="nx">category</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="sr">/ /g</span><span class="o">,</span><span class="s1">'-'</span><span class="p">));</span>
<span class="c">// Adding the module CSS class name</span>
<span class="nx">Dom</span><span class="p">.</span><span class="nx">addClass</span><span class="p">(</span><span class="nx">container</span><span class="p">.</span><span class="nx">el</span><span class="o">,</span> <span class="s2">"WiringEditor-module-"</span><span class="o">+</span><span class="nx">module</span><span class="p">.</span><span class="nx">name</span><span class="p">.</span><span class="nx">replace</span><span class="p">(</span><span class="sr">/ /g</span><span class="o">,</span><span class="s1">'-'</span><span class="p">));</span>
<span class="p">}</span>
<span class="k">catch</span><span class="p">(</span><span class="nx">ex</span><span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">alert</span><span class="p">(</span><span class="s2">"Error Layer.addContainer: "</span><span class="o">+</span> <span class="nx">ex</span><span class="p">.</span><span class="nx">message</span><span class="p">);</span>
<span class="k">if</span><span class="p">(</span><span class="nb">window</span><span class="p">.</span><span class="nx">console</span> <span class="o">&&</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">lang</span><span class="p">.</span><span class="nx">isFunction</span><span class="p">(</span><span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">))</span> <span class="p">{</span>
<span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">ex</span><span class="p">);</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="p">}</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * save the current module</span>
<span class="c"> */</span>
<span class="nx">save</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
<span class="kd">var</span> <span class="nx">value</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">getValue</span><span class="p">();</span>
<span class="k">if</span><span class="p">(</span><span class="nx">value</span><span class="p">.</span><span class="nx">name</span> <span class="o">===</span> <span class="s2">""</span><span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">alert</span><span class="p">(</span><span class="s2">"Please choose a name"</span><span class="p">);</span>
<span class="k">return</span><span class="o">;</span>
<span class="p">}</span>
<span class="k">this</span><span class="p">.</span><span class="nx">tempSavedWiring</span> <span class="o">=</span> <span class="p">{</span><span class="nx">name</span><span class="o">:</span> <span class="nx">value</span><span class="p">.</span><span class="nx">name</span><span class="o">,</span> <span class="nx">working</span><span class="o">:</span> <span class="nx">value</span><span class="p">.</span><span class="nx">working</span><span class="o">,</span> <span class="nx">language</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">languageName</span> <span class="p">};</span>
<span class="k">this</span><span class="p">.</span><span class="nx">adapter</span><span class="p">.</span><span class="nx">saveWiring</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">tempSavedWiring</span><span class="o">,</span> <span class="p">{</span>
<span class="nx">success</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">saveModuleSuccess</span><span class="o">,</span>
<span class="nx">failure</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">saveModuleFailure</span><span class="o">,</span>
<span class="nx">scope</span><span class="o">:</span> <span class="k">this</span>
<span class="p">});</span>
<span class="p">}</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * saveModule success callback</span>
<span class="c"> * @method saveModuleSuccess</span>
<span class="c"> */</span>
<span class="nx">saveModuleSuccess</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">o</span><span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">markSaved</span><span class="p">();</span>
<span class="k">this</span><span class="p">.</span><span class="nx">alert</span><span class="p">(</span><span class="s2">"Saved !"</span><span class="p">);</span>
<span class="c">// TODO: call a saveModuleSuccess callback...</span>
<span class="p">}</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * saveModule failure callback</span>
<span class="c"> * @method saveModuleFailure</span>
<span class="c"> */</span>
<span class="nx">saveModuleFailure</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">errorStr</span><span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">alert</span><span class="p">(</span><span class="s2">"Unable to save the wiring : "</span><span class="o">+</span><span class="nx">errorStr</span><span class="p">);</span>
<span class="p">}</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @method onNew</span>
<span class="c"> */</span>
<span class="nx">onNew</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
<span class="k">if</span><span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">isSaved</span><span class="p">())</span> <span class="p">{</span>
<span class="k">if</span><span class="p">(</span> <span class="o">!</span><span class="nx">confirm</span><span class="p">(</span><span class="s2">"Warning: Your work is not saved yet ! Press ok to continue anyway."</span><span class="p">)</span> <span class="p">)</span> <span class="p">{</span>
<span class="k">return</span><span class="o">;</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="k">this</span><span class="p">.</span><span class="nx">preventLayerChangedEvent</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
<span class="k">this</span><span class="p">.</span><span class="nx">layer</span><span class="p">.</span><span class="nx">clear</span><span class="p">();</span>
<span class="k">this</span><span class="p">.</span><span class="nx">propertiesForm</span><span class="p">.</span><span class="nx">clear</span><span class="p">(</span><span class="kc">false</span><span class="p">);</span> <span class="c">// false to tell inputEx to NOT send the updatedEvt</span>
<span class="k">this</span><span class="p">.</span><span class="nx">markSaved</span><span class="p">();</span>
<span class="k">this</span><span class="p">.</span><span class="nx">preventLayerChangedEvent</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
<span class="p">}</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @method onDelete</span>
<span class="c"> */</span>
<span class="nx">onDelete</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
<span class="k">if</span><span class="p">(</span> <span class="nx">confirm</span><span class="p">(</span><span class="s2">"Are you sure you want to delete this wiring ?"</span><span class="p">)</span> <span class="p">)</span> <span class="p">{</span>
<span class="kd">var</span> <span class="nx">value</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">getValue</span><span class="p">();</span>
<span class="k">this</span><span class="p">.</span><span class="nx">adapter</span><span class="p">.</span><span class="nx">deleteWiring</span><span class="p">({</span><span class="nx">name</span><span class="o">:</span> <span class="nx">value</span><span class="p">.</span><span class="nx">name</span><span class="o">,</span> <span class="nx">language</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">languageName</span><span class="p">}</span><span class="o">,</span><span class="p">{</span>
<span class="nx">success</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">result</span><span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">onNew</span><span class="p">();</span>
<span class="k">this</span><span class="p">.</span><span class="nx">alert</span><span class="p">(</span><span class="s2">"Deleted !"</span><span class="p">);</span>
<span class="p">}</span><span class="o">,</span>
<span class="nx">failure</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">errorStr</span><span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">alert</span><span class="p">(</span><span class="s2">"Unable to delete wiring: "</span><span class="o">+</span><span class="nx">errorStr</span><span class="p">);</span>
<span class="p">}</span><span class="o">,</span>
<span class="nx">scope</span><span class="o">:</span> <span class="k">this</span>
<span class="p">});</span>
<span class="p">}</span>
<span class="p">}</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @method renderLoadPanel</span>
<span class="c"> */</span>
<span class="nx">renderLoadPanel</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
<span class="k">if</span><span class="p">(</span> <span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">loadPanel</span><span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">loadPanel</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">widget</span><span class="p">.</span><span class="nx">Panel</span><span class="p">(</span><span class="s1">'WiringEditor-loadPanel'</span><span class="o">,</span> <span class="p">{</span>
<span class="nx">fixedcenter</span><span class="o">:</span> <span class="kc">true</span><span class="o">,</span>
<span class="nx">draggable</span><span class="o">:</span> <span class="kc">true</span><span class="o">,</span>
<span class="nx">width</span><span class="o">:</span> <span class="s1">'500px'</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">modal</span><span class="o">:</span> <span class="kc">true</span>
<span class="p">});</span>
<span class="k">this</span><span class="p">.</span><span class="nx">loadPanel</span><span class="p">.</span><span class="nx">setHeader</span><span class="p">(</span><span class="s2">"Select the wiring to load"</span><span class="p">);</span>
<span class="k">this</span><span class="p">.</span><span class="nx">loadPanel</span><span class="p">.</span><span class="nx">setBody</span><span class="p">(</span><span class="s2">"Filter: <input type='text' id='loadFilter' /><div id='loadPanelBody'></div>"</span><span class="p">);</span>
<span class="k">this</span><span class="p">.</span><span class="nx">loadPanel</span><span class="p">.</span><span class="nx">render</span><span class="p">(</span><span class="nb">document</span><span class="p">.</span><span class="nx">body</span><span class="p">);</span>
<span class="c">// Listen the keyup event to filter the module list</span>
<span class="nx">Event</span><span class="p">.</span><span class="nx">onAvailable</span><span class="p">(</span><span class="s1">'loadFilter'</span><span class="o">,</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
<span class="nx">Event</span><span class="p">.</span><span class="nx">addListener</span><span class="p">(</span><span class="s1">'loadFilter'</span><span class="o">,</span> <span class="s2">"keyup"</span><span class="o">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">inputFilterTimer</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="p">);</span>
<span class="p">}</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="p">);</span>
<span class="p">}</span>
<span class="p">}</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * Method called from each keyup on the search filter in load panel.</span>
<span class="c"> * The real filtering occurs only after 500ms so that the filter process isn't called too often</span>
<span class="c"> */</span>
<span class="nx">inputFilterTimer</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
<span class="k">if</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">inputFilterTimeout</span><span class="p">)</span> <span class="p">{</span>
<span class="nx">clearTimeout</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">inputFilterTimeout</span><span class="p">);</span>
<span class="k">this</span><span class="p">.</span><span class="nx">inputFilterTimeout</span> <span class="o">=</span> <span class="kc">null</span><span class="o">;</span>
<span class="p">}</span>
<span class="kd">var</span> <span class="nx">that</span> <span class="o">=</span> <span class="k">this</span><span class="o">;</span>
<span class="k">this</span><span class="p">.</span><span class="nx">inputFilterTimeout</span> <span class="o">=</span> <span class="nx">setTimeout</span><span class="p">(</span><span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
<span class="nx">that</span><span class="p">.</span><span class="nx">updateLoadPanelList</span><span class="p">(</span><span class="nx">Dom</span><span class="p">.</span><span class="nx">get</span><span class="p">(</span><span class="s1">'loadFilter'</span><span class="p">).</span><span class="nx">value</span><span class="p">);</span>
<span class="p">}</span><span class="o">,</span> <span class="mi">500</span><span class="p">);</span>
<span class="p">}</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @method updateLoadPanelList</span>
<span class="c"> */</span>
<span class="nx">updateLoadPanelList</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">filter</span><span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">renderLoadPanel</span><span class="p">();</span>
<span class="kd">var</span> <span class="nx">list</span> <span class="o">=</span> <span class="nx">WireIt</span><span class="p">.</span><span class="nx">cn</span><span class="p">(</span><span class="s2">"ul"</span><span class="p">);</span>
<span class="k">if</span><span class="p">(</span><span class="nx">lang</span><span class="p">.</span><span class="nx">isArray</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">pipes</span><span class="p">))</span> <span class="p">{</span>
<span class="k">for</span><span class="p">(</span><span class="kd">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span> <span class="o">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="k">this</span><span class="p">.</span><span class="nx">pipes</span><span class="p">.</span><span class="nx">length</span> <span class="o">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
<span class="kd">var</span> <span class="nx">pipe</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">pipes</span><span class="p">[</span><span class="nx">i</span><span class="p">];</span>
<span class="k">if</span><span class="p">(</span><span class="o">!</span><span class="nx">filter</span> <span class="o">||</span> <span class="nx">filter</span> <span class="o">===</span> <span class="s2">""</span> <span class="o">||</span> <span class="nx">pipe</span><span class="p">.</span><span class="nx">name</span><span class="p">.</span><span class="nx">match</span><span class="p">(</span><span class="k">new</span> <span class="nb">RegExp</span><span class="p">(</span><span class="nx">filter</span><span class="o">,</span><span class="s2">"i"</span><span class="p">))</span> <span class="p">)</span> <span class="p">{</span>
<span class="nx">list</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span> <span class="nx">WireIt</span><span class="p">.</span><span class="nx">cn</span><span class="p">(</span><span class="s1">'li'</span><span class="o">,</span><span class="kc">null</span><span class="o">,</span><span class="p">{</span><span class="nx">cursor</span><span class="o">:</span> <span class="s1">'pointer'</span><span class="p">}</span><span class="o">,</span><span class="nx">pipe</span><span class="p">.</span><span class="nx">name</span><span class="p">)</span> <span class="p">);</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="kd">var</span> <span class="nx">panelBody</span> <span class="o">=</span> <span class="nx">Dom</span><span class="p">.</span><span class="nx">get</span><span class="p">(</span><span class="s1">'loadPanelBody'</span><span class="p">);</span>
<span class="c">// Purge element (remove listeners on panelBody and childNodes recursively)</span>
<span class="nx">YAHOO</span><span class="p">.</span><span class="nx">util</span><span class="p">.</span><span class="nx">Event</span><span class="p">.</span><span class="nx">purgeElement</span><span class="p">(</span><span class="nx">panelBody</span><span class="o">,</span> <span class="kc">true</span><span class="p">);</span>
<span class="nx">panelBody</span><span class="p">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="s2">""</span><span class="o">;</span>
<span class="nx">panelBody</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">list</span><span class="p">);</span>
<span class="nx">Event</span><span class="p">.</span><span class="nx">addListener</span><span class="p">(</span><span class="nx">list</span><span class="o">,</span> <span class="s1">'click'</span><span class="o">,</span> <span class="kd">function</span><span class="p">(</span><span class="nx">e</span><span class="o">,</span><span class="nx">args</span><span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">loadPipe</span><span class="p">(</span><span class="nx">Event</span><span class="p">.</span><span class="nx">getTarget</span><span class="p">(</span><span class="nx">e</span><span class="p">).</span><span class="nx">innerHTML</span><span class="p">);</span>
<span class="p">}</span><span class="o">,</span> <span class="k">this</span><span class="o">,</span> <span class="kc">true</span><span class="p">);</span>
<span class="p">}</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * Start the loading of the pipes using the adapter</span>
<span class="c"> * @method load</span>
<span class="c"> */</span>
<span class="nx">load</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">adapter</span><span class="p">.</span><span class="nx">listWirings</span><span class="p">({</span><span class="nx">language</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">options</span><span class="p">.</span><span class="nx">languageName</span><span class="p">}</span><span class="o">,</span><span class="p">{</span>
<span class="nx">success</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">result</span><span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">onLoadSuccess</span><span class="p">(</span><span class="nx">result</span><span class="p">);</span>
<span class="p">}</span><span class="o">,</span>
<span class="nx">failure</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">errorStr</span><span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">alert</span><span class="p">(</span><span class="s2">"Unable to load the wirings: "</span><span class="o">+</span><span class="nx">errorStr</span><span class="p">);</span>
<span class="p">}</span><span class="o">,</span>
<span class="nx">scope</span><span class="o">:</span> <span class="k">this</span>
<span class="p">});</span>
<span class="p">}</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @method onLoadSuccess</span>
<span class="c"> */</span>
<span class="nx">onLoadSuccess</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">wirings</span><span class="p">)</span> <span class="p">{</span>
<span class="c">// Reset the internal structure</span>
<span class="k">this</span><span class="p">.</span><span class="nx">pipes</span> <span class="o">=</span> <span class="nx">wirings</span><span class="o">;</span>
<span class="k">this</span><span class="p">.</span><span class="nx">pipesByName</span> <span class="o">=</span> <span class="p">{};</span>
<span class="c">// Build the "pipesByName" index</span>
<span class="k">for</span><span class="p">(</span><span class="kd">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span> <span class="o">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="k">this</span><span class="p">.</span><span class="nx">pipes</span><span class="p">.</span><span class="nx">length</span> <span class="o">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">pipesByName</span><span class="p">[</span> <span class="k">this</span><span class="p">.</span><span class="nx">pipes</span><span class="p">[</span><span class="nx">i</span><span class="p">].</span><span class="nx">name</span><span class="p">]</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">pipes</span><span class="p">[</span><span class="nx">i</span><span class="p">];</span>
<span class="p">}</span>
<span class="k">this</span><span class="p">.</span><span class="nx">updateLoadPanelList</span><span class="p">();</span>
<span class="c">// Check for autoload param and display the loadPanel otherwise</span>
<span class="k">if</span><span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">checkAutoLoad</span><span class="p">())</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">loadPanel</span><span class="p">.</span><span class="nx">show</span><span class="p">();</span>
<span class="p">}</span>
<span class="p">}</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * checkAutoLoad looks for the "autoload" URL parameter and open the pipe.</span>
<span class="c"> * returns true if it loads a Pipe</span>
<span class="c"> * @method checkAutoLoad</span>
<span class="c"> */</span>
<span class="nx">checkAutoLoad</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
<span class="k">if</span><span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">checkAutoLoadOnce</span><span class="p">)</span> <span class="p">{</span>
<span class="kd">var</span> <span class="nx">p</span> <span class="o">=</span> <span class="nb">window</span><span class="p">.</span><span class="nx">location</span><span class="p">.</span><span class="nx">search</span><span class="p">.</span><span class="nx">substr</span><span class="p">(</span><span class="mi">1</span><span class="p">).</span><span class="nx">split</span><span class="p">(</span><span class="s1">'&'</span><span class="p">);</span>
<span class="kd">var</span> <span class="nx">oP</span> <span class="o">=</span> <span class="p">{};</span>
<span class="k">for</span><span class="p">(</span><span class="kd">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span> <span class="o">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="nx">p</span><span class="p">.</span><span class="nx">length</span> <span class="o">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
<span class="kd">var</span> <span class="nx">v</span> <span class="o">=</span> <span class="nx">p</span><span class="p">[</span><span class="nx">i</span><span class="p">].</span><span class="nx">split</span><span class="p">(</span><span class="s1">'='</span><span class="p">);</span>
<span class="nx">oP</span><span class="p">[</span><span class="nx">v</span><span class="p">[</span><span class="mi">0</span><span class="p">]]</span><span class="o">=</span><span class="nb">window</span><span class="p">.</span><span class="nb">decodeURIComponent</span><span class="p">(</span><span class="nx">v</span><span class="p">[</span><span class="mi">1</span><span class="p">]);</span>
<span class="p">}</span>
<span class="k">this</span><span class="p">.</span><span class="nx">checkAutoLoadOnce</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
<span class="k">if</span><span class="p">(</span><span class="nx">oP</span><span class="p">.</span><span class="nx">autoload</span><span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">loadPipe</span><span class="p">(</span><span class="nx">oP</span><span class="p">.</span><span class="nx">autoload</span><span class="p">);</span>
<span class="k">return</span> <span class="kc">true</span><span class="o">;</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="k">return</span> <span class="kc">false</span><span class="o">;</span>
<span class="p">}</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @method getPipeByName</span>
<span class="c"> * @param {String} name Pipe's name</span>
<span class="c"> * @return {Object} return the pipe configuration</span>
<span class="c"> */</span>
<span class="nx">getPipeByName</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">name</span><span class="p">)</span> <span class="p">{</span>
<span class="kd">var</span> <span class="nx">n</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">pipes</span><span class="p">.</span><span class="nx">length</span><span class="o">,</span><span class="nx">ret</span><span class="o">;</span>
<span class="k">for</span><span class="p">(</span><span class="kd">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span> <span class="o">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="nx">n</span> <span class="o">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
<span class="k">if</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">pipes</span><span class="p">[</span><span class="nx">i</span><span class="p">].</span><span class="nx">name</span> <span class="o">==</span> <span class="nx">name</span><span class="p">)</span> <span class="p">{</span>
<span class="k">return</span> <span class="k">this</span><span class="p">.</span><span class="nx">pipes</span><span class="p">[</span><span class="nx">i</span><span class="p">].</span><span class="nx">working</span><span class="o">;</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="k">return</span> <span class="kc">null</span><span class="o">;</span>
<span class="p">}</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * @method loadPipe</span>
<span class="c"> * @param {String} name Pipe name</span>
<span class="c"> */</span>
<span class="nx">loadPipe</span><span class="o">:</span> <span class="kd">function</span><span class="p">(</span><span class="nx">name</span><span class="p">)</span> <span class="p">{</span>
<span class="k">if</span><span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">isSaved</span><span class="p">())</span> <span class="p">{</span>
<span class="k">if</span><span class="p">(</span> <span class="o">!</span><span class="nx">confirm</span><span class="p">(</span><span class="s2">"Warning: Your work is not saved yet ! Press ok to continue anyway."</span><span class="p">)</span> <span class="p">)</span> <span class="p">{</span>
<span class="k">return</span><span class="o">;</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="k">try</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">preventLayerChangedEvent</span> <span class="o">=</span> <span class="kc">true</span><span class="o">;</span>
<span class="k">this</span><span class="p">.</span><span class="nx">loadPanel</span><span class="p">.</span><span class="nx">hide</span><span class="p">();</span>
<span class="kd">var</span> <span class="nx">wiring</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">getPipeByName</span><span class="p">(</span><span class="nx">name</span><span class="p">)</span><span class="o">,</span> <span class="nx">i</span><span class="o">;</span>
<span class="k">if</span><span class="p">(</span><span class="o">!</span><span class="nx">wiring</span><span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">alert</span><span class="p">(</span><span class="s2">"The wiring '"</span><span class="o">+</span><span class="nx">name</span><span class="o">+</span><span class="s2">"' was not found."</span><span class="p">);</span>
<span class="k">return</span><span class="o">;</span>
<span class="p">}</span>
<span class="c">// TODO: check if current wiring is saved...</span>
<span class="k">this</span><span class="p">.</span><span class="nx">layer</span><span class="p">.</span><span class="nx">clear</span><span class="p">();</span>
<span class="k">this</span><span class="p">.</span><span class="nx">propertiesForm</span><span class="p">.</span><span class="nx">setValue</span><span class="p">(</span><span class="nx">wiring</span><span class="p">.</span><span class="nx">properties</span><span class="o">,</span> <span class="kc">false</span><span class="p">);</span> <span class="c">// the false tells inputEx to NOT fire the updatedEvt</span>
<span class="k">if</span><span class="p">(</span><span class="nx">lang</span><span class="p">.</span><span class="nx">isArray</span><span class="p">(</span><span class="nx">wiring</span><span class="p">.</span><span class="nx">modules</span><span class="p">))</span> <span class="p">{</span>
<span class="c">// Containers</span>
<span class="k">for</span><span class="p">(</span><span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span> <span class="o">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="nx">wiring</span><span class="p">.</span><span class="nx">modules</span><span class="p">.</span><span class="nx">length</span> <span class="o">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
<span class="kd">var</span> <span class="nx">m</span> <span class="o">=</span> <span class="nx">wiring</span><span class="p">.</span><span class="nx">modules</span><span class="p">[</span><span class="nx">i</span><span class="p">];</span>
<span class="k">if</span><span class="p">(</span><span class="k">this</span><span class="p">.</span><span class="nx">modulesByName</span><span class="p">[</span><span class="nx">m</span><span class="p">.</span><span class="nx">name</span><span class="p">])</span> <span class="p">{</span>
<span class="kd">var</span> <span class="nx">baseContainerConfig</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">modulesByName</span><span class="p">[</span><span class="nx">m</span><span class="p">.</span><span class="nx">name</span><span class="p">].</span><span class="nx">container</span><span class="o">;</span>
<span class="nx">YAHOO</span><span class="p">.</span><span class="nx">lang</span><span class="p">.</span><span class="nx">augmentObject</span><span class="p">(</span><span class="nx">m</span><span class="p">.</span><span class="nx">config</span><span class="o">,</span> <span class="nx">baseContainerConfig</span><span class="p">);</span>
<span class="nx">m</span><span class="p">.</span><span class="nx">config</span><span class="p">.</span><span class="nx">title</span> <span class="o">=</span> <span class="nx">m</span><span class="p">.</span><span class="nx">name</span><span class="o">;</span>
<span class="kd">var</span> <span class="nx">container</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">layer</span><span class="p">.</span><span class="nx">addContainer</span><span class="p">(</span><span class="nx">m</span><span class="p">.</span><span class="nx">config</span><span class="p">);</span>
<span class="nx">Dom</span><span class="p">.</span><span class="nx">addClass</span><span class="p">(</span><span class="nx">container</span><span class="p">.</span><span class="nx">el</span><span class="o">,</span> <span class="s2">"WiringEditor-module-"</span><span class="o">+</span><span class="nx">m</span><span class="p">.</span><span class="nx">name</span><span class="p">);</span>
<span class="nx">container</span><span class="p">.</span><span class="nx">setValue</span><span class="p">(</span><span class="nx">m</span><span class="p">.</span><span class="nx">value</span><span class="p">);</span>
<span class="p">}</span>
<span class="k">else</span> <span class="p">{</span>
<span class="k">throw</span> <span class="k">new</span> <span class="nb">Error</span><span class="p">(</span><span class="s2">"WiringEditor: module '"</span><span class="o">+</span><span class="nx">m</span><span class="p">.</span><span class="nx">name</span><span class="o">+</span><span class="s2">"' not found !"</span><span class="p">);</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="c">// Wires</span>
<span class="k">if</span><span class="p">(</span><span class="nx">lang</span><span class="p">.</span><span class="nx">isArray</span><span class="p">(</span><span class="nx">wiring</span><span class="p">.</span><span class="nx">wires</span><span class="p">))</span> <span class="p">{</span>
<span class="k">for</span><span class="p">(</span><span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span> <span class="o">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="nx">wiring</span><span class="p">.</span><span class="nx">wires</span><span class="p">.</span><span class="nx">length</span> <span class="o">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
<span class="c">// On doit chercher dans la liste des terminaux de chacun des modules l'index des terminaux...</span>
<span class="k">this</span><span class="p">.</span><span class="nx">layer</span><span class="p">.</span><span class="nx">addWire</span><span class="p">(</span><span class="nx">wiring</span><span class="p">.</span><span class="nx">wires</span><span class="p">[</span><span class="nx">i</span><span class="p">]);</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="k">this</span><span class="p">.</span><span class="nx">markSaved</span><span class="p">();</span>
<span class="k">this</span><span class="p">.</span><span class="nx">preventLayerChangedEvent</span> <span class="o">=</span> <span class="kc">false</span><span class="o">;</span>
<span class="p">}</span>
<span class="k">catch</span><span class="p">(</span><span class="nx">ex</span><span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">alert</span><span class="p">(</span><span class="nx">ex</span><span class="p">);</span>
<span class="k">if</span><span class="p">(</span><span class="nb">window</span><span class="p">.</span><span class="nx">console</span> <span class="o">&&</span> <span class="nx">YAHOO</span><span class="p">.</span><span class="nx">lang</span><span class="p">.</span><span class="nx">isFunction</span><span class="p">(</span><span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">))</span> <span class="p">{</span>
<span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">ex</span><span class="p">);</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="p">}</span><span class="o">,</span>
<span class="nx">onLayerChanged</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
<span class="k">if</span><span class="p">(</span><span class="o">!</span><span class="k">this</span><span class="p">.</span><span class="nx">preventLayerChangedEvent</span><span class="p">)</span> <span class="p">{</span>
<span class="k">this</span><span class="p">.</span><span class="nx">markUnsaved</span><span class="p">();</span>
<span class="p">}</span>
<span class="p">}</span><span class="o">,</span>
<span class="c">/**</span>
<span class="c"> * This method return a wiring within the given vocabulary described by the modules list</span>
<span class="c"> * @method getValue</span>
<span class="c"> */</span>
<span class="nx">getValue</span><span class="o">:</span> <span class="kd">function</span><span class="p">()</span> <span class="p">{</span>
<span class="kd">var</span> <span class="nx">i</span><span class="o">;</span>
<span class="kd">var</span> <span class="nx">obj</span> <span class="o">=</span> <span class="p">{</span><span class="nx">modules</span><span class="o">:</span> <span class="p">[]</span><span class="o">,</span> <span class="nx">wires</span><span class="o">:</span> <span class="p">[]</span><span class="o">,</span> <span class="nx">properties</span><span class="o">:</span> <span class="kc">null</span><span class="p">};</span>
<span class="k">for</span><span class="p">(</span> <span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span> <span class="o">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="k">this</span><span class="p">.</span><span class="nx">layer</span><span class="p">.</span><span class="nx">containers</span><span class="p">.</span><span class="nx">length</span> <span class="o">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
<span class="nx">obj</span><span class="p">.</span><span class="nx">modules</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span> <span class="p">{</span><span class="nx">name</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">layer</span><span class="p">.</span><span class="nx">containers</span><span class="p">[</span><span class="nx">i</span><span class="p">].</span><span class="nx">title</span><span class="o">,</span> <span class="nx">value</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">layer</span><span class="p">.</span><span class="nx">containers</span><span class="p">[</span><span class="nx">i</span><span class="p">].</span><span class="nx">getValue</span><span class="p">()</span><span class="o">,</span> <span class="nx">config</span><span class="o">:</span> <span class="k">this</span><span class="p">.</span><span class="nx">layer</span><span class="p">.</span><span class="nx">containers</span><span class="p">[</span><span class="nx">i</span><span class="p">].</span><span class="nx">getConfig</span><span class="p">()});</span>
<span class="p">}</span>
<span class="k">for</span><span class="p">(</span> <span class="nx">i</span> <span class="o">=</span> <span class="mi">0</span> <span class="o">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="k">this</span><span class="p">.</span><span class="nx">layer</span><span class="p">.</span><span class="nx">wires</span><span class="p">.</span><span class="nx">length</span> <span class="o">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
<span class="kd">var</span> <span class="nx">wire</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">layer</span><span class="p">.</span><span class="nx">wires</span><span class="p">[</span><span class="nx">i</span><span class="p">];</span>
<span class="kd">var</span> <span class="nx">wireObj</span> <span class="o">=</span> <span class="nx">wire</span><span class="p">.</span><span class="nx">getConfig</span><span class="p">();</span>
<span class="nx">wireObj</span><span class="p">.</span><span class="nx">src</span> <span class="o">=</span> <span class="p">{</span><span class="nx">moduleId</span><span class="o">:</span> <span class="nx">WireIt</span><span class="p">.</span><span class="nx">indexOf</span><span class="p">(</span><span class="nx">wire</span><span class="p">.</span><span class="nx">terminal1</span><span class="p">.</span><span class="nx">container</span><span class="o">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">layer</span><span class="p">.</span><span class="nx">containers</span><span class="p">)</span><span class="o">,</span> <span class="nx">terminal</span><span class="o">:</span> <span class="nx">wire</span><span class="p">.</span><span class="nx">terminal1</span><span class="p">.</span><span class="nx">name</span> <span class="p">};</span>
<span class="nx">wireObj</span><span class="p">.</span><span class="nx">tgt</span> <span class="o">=</span> <span class="p">{</span><span class="nx">moduleId</span><span class="o">:</span> <span class="nx">WireIt</span><span class="p">.</span><span class="nx">indexOf</span><span class="p">(</span><span class="nx">wire</span><span class="p">.</span><span class="nx">terminal2</span><span class="p">.</span><span class="nx">container</span><span class="o">,</span> <span class="k">this</span><span class="p">.</span><span class="nx">layer</span><span class="p">.</span><span class="nx">containers</span><span class="p">)</span><span class="o">,</span> <span class="nx">terminal</span><span class="o">:</span> <span class="nx">wire</span><span class="p">.</span><span class="nx">terminal2</span><span class="p">.</span><span class="nx">name</span> <span class="p">};</span>
<span class="nx">obj</span><span class="p">.</span><span class="nx">wires</span><span class="p">.</span><span class="nx">push</span><span class="p">(</span><span class="nx">wireObj</span><span class="p">);</span>
<span class="p">}</span>
<span class="nx">obj</span><span class="p">.</span><span class="nx">properties</span> <span class="o">=</span> <span class="k">this</span><span class="p">.</span><span class="nx">propertiesForm</span><span class="p">.</span><span class="nx">getValue</span><span class="p">();</span>
<span class="k">return</span> <span class="p">{</span>
<span class="nx">name</span><span class="o">:</span> <span class="nx">obj</span><span class="p">.</span><span class="nx">properties</span><span class="p">.</span><span class="nx">name</span><span class="o">,</span>
<span class="nx">working</span><span class="o">:</span> <span class="nx">obj</span>
<span class="p">};</span>
<span class="p">}</span>
<span class="p">});</span>
<span class="c">/**</span>
<span class="c"> * WiringEditor Adapters</span>
<span class="c"> * @static</span>
<span class="c"> */</span>
<span class="nx">WireIt</span><span class="p">.</span><span class="nx">WiringEditor</span><span class="p">.</span><span class="nx">adapters</span> <span class="o">=</span> <span class="p">{};</span>
<span class="p">})();</span>
</pre></div>
</div>
</div>
</div>
<div class="yui-b">
<div class="nav">
<div id="moduleList" class="module">
<h4>Modules</h4>
<ul class="content">
<li class=""><a href="module_animations-plugin.html" title="animations-plugin">animations-plugin</a></li>
<li class=""><a href="module_composable-plugin.html" title="composable-plugin">composable-plugin</a></li>
<li class="selected"><a href="module_editor-plugin.html" title="editor-plugin">editor-plugin</a></li>
<li class=""><a href="module_inputex-plugin.html" title="inputex-plugin">inputex-plugin</a></li>
<li class=""><a href="module_layout-plugin.html" title="layout-plugin">layout-plugin</a></li>
<li class=""><a href="module_wireit.html" title="WireIt">WireIt</a></li>
</ul>
</div>
<div id="classList" class="module">
<h4>Classes</h4>
<ul class="content">
<li class=""><a href="WireIt.BaseEditor.html" title="WireIt.BaseEditor">WireIt.BaseEditor</a></li>
<li class=""><a href="WireIt.FormContainer.html" title="WireIt.FormContainer">WireIt.FormContainer</a></li>
<li class=""><a href="WireIt.Group.html" title="WireIt.Group">WireIt.Group</a></li>
<li class=""><a href="WireIt.Grouper.html" title="WireIt.Grouper">WireIt.Grouper</a></li>
<li class=""><a href="WireIt.GroupUtils.html" title="WireIt.GroupUtils">WireIt.GroupUtils</a></li>
<li class=""><a href="WireIt.ModuleProxy.html" title="WireIt.ModuleProxy">WireIt.ModuleProxy</a></li>
<li class=""><a href="WireIt.RubberBand.html" title="WireIt.RubberBand">WireIt.RubberBand</a></li>
<li class=""><a href="WireIt.WiringEditor.html" title="WireIt.WiringEditor">WireIt.WiringEditor</a></li>
<li class=""><a href="WireIt.WiringEditor.adapters.Ajax.html" title="WireIt.WiringEditor.adapters.Ajax">WireIt.WiringEditor.adapters.Ajax</a></li>
<li class=""><a href="WireIt.WiringEditor.adapters.Gears.html" title="WireIt.WiringEditor.adapters.Gears">WireIt.WiringEditor.adapters.Gears</a></li>
<li class=""><a href="WireIt.WiringEditor.adapters.JsonRpc.html" title="WireIt.WiringEditor.adapters.JsonRpc">WireIt.WiringEditor.adapters.JsonRpc</a></li>
</ul>
</div>
<div id="fileList" class="module">
<h4>Files</h4>
<ul class="content">
<li class=""><a href="ajax.js.html" title="ajax.js">ajax.js</a></li>
<li class=""><a href="FormContainer.js.html" title="FormContainer.js">FormContainer.js</a></li>
<li class=""><a href="gears.js.html" title="gears.js">gears.js</a></li>
<li class=""><a href="Group.js.html" title="Group.js">Group.js</a></li>
<li class=""><a href="Grouper.js.html" title="Grouper.js">Grouper.js</a></li>
<li class=""><a href="GroupFormContainer.js.html" title="GroupFormContainer.js">GroupFormContainer.js</a></li>
<li class=""><a href="GroupUtils.js.html" title="GroupUtils.js">GroupUtils.js</a></li>
<li class=""><a href="json-rpc.js.html" title="json-rpc.js">json-rpc.js</a></li>
<li class=""><a href="ModuleProxy.js.html" title="ModuleProxy.js">ModuleProxy.js</a></li>
<li class=""><a href="rest-json.js.html" title="rest-json.js">rest-json.js</a></li>
<li class=""><a href="RubberBand.js.html" title="RubberBand.js">RubberBand.js</a></li>
<li class="selected"><a href="WiringEditor.js.html" title="WiringEditor.js">WiringEditor.js</a></li>
</ul>
</div>
</div>
</div>
</div>
<div id="ft">
<hr />
Copyright © 2010 Eric Abouaf All rights reserved.
</div>
</div>
<script type="text/javascript">
var ALL_YUI_PROPS = [{"url": "WireIt.WiringEditor.html#property_adapters", "access": "", "host": "WireIt.WiringEditor", "type": "property", "name": "adapters"}, {"url": "WireIt.GroupUtils.html#method_addAllContainers", "access": "", "host": "WireIt.GroupUtils", "type": "method", "name": "addAllContainers"}, {"url": "WireIt.Grouper.html#method_addContainer", "access": "", "host": "WireIt.Grouper", "type": "method", "name": "addContainer"}, {"url": "WireIt.Grouper.html#method_addGroup", "access": "", "host": "WireIt.Grouper", "type": "method", "name": "addGroup"}, {"url": "WireIt.WiringEditor.html#method_addModule", "access": "", "host": "WireIt.WiringEditor", "type": "method", "name": "addModule"}, {"url": "WireIt.WiringEditor.html#method_addModuleToList", "access": "", "host": "WireIt.WiringEditor", "type": "method", "name": "addModuleToList"}, {"url": "WireIt.BaseEditor.html#method_alert", "access": "", "host": "WireIt.BaseEditor", "type": "method", "name": "alert"}, {"url": "WireIt.BaseEditor.html#property_alertPanel", "access": "", "host": "WireIt.BaseEditor", "type": "property", "name": "alertPanel"}, {"url": "WireIt.GroupUtils.html#method_applyToContainers", "access": "", "host": "WireIt.GroupUtils", "type": "method", "name": "applyToContainers"}, {"url": "WireIt.WiringEditor.html#method_buildModulesList", "access": "", "host": "WireIt.WiringEditor", "type": "method", "name": "buildModulesList"}, {"url": "WireIt.WiringEditor.html#method_checkAutoLoad", "access": "", "host": "WireIt.WiringEditor", "type": "method", "name": "checkAutoLoad"}, {"url": "WireIt.FormContainer.html#property_collapsible", "access": "", "host": "WireIt.FormContainer", "type": "property", "name": "collapsible"}, {"url": "WireIt.WiringEditor.adapters.Ajax.html#property_config", "access": "", "host": "WireIt.WiringEditor.adapters.Ajax", "type": "property", "name": "config"}, {"url": "WireIt.RubberBand.html#property_defaultDelay", "access": "", "host": "WireIt.RubberBand", "type": "property", "name": "defaultDelay"}, {"url": "WireIt.BaseEditor.html#property_defaultOptions", "access": "", "host": "WireIt.BaseEditor", "type": "property", "name": "defaultOptions"}, {"url": "WireIt.WiringEditor.adapters.Ajax.html#method_deleteWiring", "access": "", "host": "WireIt.WiringEditor.adapters.Ajax", "type": "method", "name": "deleteWiring"}, {"url": "WireIt.Grouper.html#method_deselectGroup", "access": "", "host": "WireIt.Grouper", "type": "method", "name": "deselectGroup"}, {"url": "WireIt.BaseEditor.html#property_el", "access": "", "host": "WireIt.BaseEditor", "type": "property", "name": "el"}, {"url": "WireIt.ModuleProxy.html#method_endDrag", "access": "", "host": "WireIt.ModuleProxy", "type": "method", "name": "endDrag"}, {"url": "WireIt.FormContainer.html#property_fields", "access": "", "host": "WireIt.FormContainer", "type": "property", "name": "fields"}, {"url": "WireIt.RubberBand.html#method_finish", "access": "", "host": "WireIt.RubberBand", "type": "method", "name": "finish"}, {"url": "WireIt.GroupUtils.html#method_getCollapsedConfig", "access": "", "host": "WireIt.GroupUtils", "type": "method", "name": "getCollapsedConfig"}, {"url": "WireIt.Grouper.html#method_getContainerCorners", "access": "", "host": "WireIt.Grouper", "type": "method", "name": "getContainerCorners"}, {"url": "WireIt.GroupUtils.html#method_getOuterGroup", "access": "", "host": "WireIt.GroupUtils", "type": "method", "name": "getOuterGroup"}, {"url": "WireIt.GroupUtils.html#method_getOverridesFromUI", "access": "", "host": "WireIt.GroupUtils", "type": "method", "name": "getOverridesFromUI"}, {"url": "WireIt.WiringEditor.html#method_getPipeByName", "access": "", "host": "WireIt.WiringEditor", "type": "method", "name": "getPipeByName"}, {"url": "WireIt.WiringEditor.html#method_getValue", "access": "", "host": "WireIt.WiringEditor", "type": "method", "name": "getValue"}, {"url": "WireIt.FormContainer.html#method_getValue", "access": "", "host": "WireIt.FormContainer", "type": "method", "name": "getValue"}, {"url": "WireIt.Grouper.html#method_groupCollapse", "access": "", "host": "WireIt.Grouper", "type": "method", "name": "groupCollapse"}, {"url": "WireIt.BaseEditor.html#property_helpPanel", "access": "", "host": "WireIt.BaseEditor", "type": "property", "name": "helpPanel"}, {"url": "WireIt.RubberBand.html#method_hide", "access": "", "host": "WireIt.RubberBand", "type": "method", "name": "hide"}, {"url": "WireIt.Grouper.html#method_hideGroupConfigure", "access": "", "host": "WireIt.Grouper", "type": "method", "name": "hideGroupConfigure"}, {"url": "WireIt.WiringEditor.adapters.Ajax.html#method_init", "access": "", "host": "WireIt.WiringEditor.adapters.Ajax", "type": "method", "name": "init"}, {"url": "WireIt.WiringEditor.html#method_inputFilterTimer", "access": "", "host": "WireIt.WiringEditor", "type": "method", "name": "inputFilterTimer"}, {"url": "WireIt.BaseEditor.html#method_isSaved", "access": "", "host": "WireIt.BaseEditor", "type": "method", "name": "isSaved"}, {"url": "WireIt.WiringEditor.html#property_layer", "access": "", "host": "WireIt.WiringEditor", "type": "property", "name": "layer"}, {"url": "WireIt.RubberBand.html#method_layerMouseDown", "access": "", "host": "WireIt.RubberBand", "type": "method", "name": "layerMouseDown"}, {"url": "WireIt.BaseEditor.html#property_layout", "access": "", "host": "WireIt.BaseEditor", "type": "property", "name": "layout"}, {"url": "WireIt.FormContainer.html#property_legend", "access": "", "host": "WireIt.FormContainer", "type": "property", "name": "legend"}, {"url": "WireIt.WiringEditor.adapters.Ajax.html#method_listWirings", "access": "", "host": "WireIt.WiringEditor.adapters.Ajax", "type": "method", "name": "listWirings"}, {"url": "WireIt.WiringEditor.html#method_load", "access": "", "host": "WireIt.WiringEditor", "type": "method", "name": "load"}, {"url": "WireIt.WiringEditor.html#method_loadPipe", "access": "", "host": "WireIt.WiringEditor", "type": "method", "name": "loadPipe"}, {"url": "WireIt.Grouper.html#method_makeGroup", "access": "", "host": "WireIt.Grouper", "type": "method", "name": "makeGroup"}, {"url": "WireIt.BaseEditor.html#method_markSaved", "access": "", "host": "WireIt.BaseEditor", "type": "method", "name": "markSaved"}, {"url": "WireIt.BaseEditor.html#method_markUnsaved", "access": "", "host": "WireIt.BaseEditor", "type": "method", "name": "markUnsaved"}, {"url": "WireIt.WiringEditor.html#property_modulesByName", "access": "", "host": "WireIt.WiringEditor", "type": "property", "name": "modulesByName"}, {"url": "WireIt.RubberBand.html#method_nextPoint", "access": "", "host": "WireIt.RubberBand", "type": "method", "name": "nextPoint"}, {"url": "WireIt.WiringEditor.html#method_onDelete", "access": "", "host": "WireIt.WiringEditor", "type": "method", "name": "onDelete"}, {"url": "WireIt.ModuleProxy.html#method_onDragDrop", "access": "", "host": "WireIt.ModuleProxy", "type": "method", "name": "onDragDrop"}, {"url": "WireIt.BaseEditor.html#method_onHelp", "access": "", "host": "WireIt.BaseEditor", "type": "method", "name": "onHelp"}, {"url": "WireIt.WiringEditor.html#method_onLoadSuccess", "access": "", "host": "WireIt.WiringEditor", "type": "method", "name": "onLoadSuccess"}, {"url": "WireIt.WiringEditor.html#method_onNew", "access": "", "host": "WireIt.WiringEditor", "type": "method", "name": "onNew"}, {"url": "WireIt.BaseEditor.html#method_onSave", "access": "", "host": "WireIt.BaseEditor", "type": "method", "name": "onSave"}, {"url": "WireIt.BaseEditor.html#property_options", "access": "", "host": "WireIt.BaseEditor", "type": "property", "name": "options"}, {"url": "WireIt.RubberBand.html#method_pointIsInside", "access": "", "host": "WireIt.RubberBand", "type": "method", "name": "pointIsInside"}, {"url": "WireIt.Grouper.html#method_removeContainer", "access": "", "host": "WireIt.Grouper", "type": "method", "name": "removeContainer"}, {"url": "WireIt.Grouper.html#method_removeGroup", "access": "", "host": "WireIt.Grouper", "type": "method", "name": "removeGroup"}, {"url": "WireIt.GroupUtils.html#method_removeGroupFromLayer", "access": "", "host": "WireIt.GroupUtils", "type": "method", "name": "removeGroupFromLayer"}, {"url": "WireIt.BaseEditor.html#method_render", "access": "", "host": "WireIt.BaseEditor", "type": "method", "name": "render"}, {"url": "WireIt.WiringEditor.html#method_render", "access": "", "host": "WireIt.WiringEditor", "type": "method", "name": "render"}, {"url": "WireIt.FormContainer.html#method_render", "access": "", "host": "WireIt.FormContainer", "type": "method", "name": "render"}, {"url": "WireIt.BaseEditor.html#method_renderAlertPanel", "access": "", "host": "WireIt.BaseEditor", "type": "method", "name": "renderAlertPanel"}, {"url": "WireIt.BaseEditor.html#method_renderButtons", "access": "", "host": "WireIt.BaseEditor", "type": "method", "name": "renderButtons"}, {"url": "WireIt.FormContainer.html#method_renderForm", "access": "", "host": "WireIt.FormContainer", "type": "method", "name": "renderForm"}, {"url": "WireIt.BaseEditor.html#method_renderHelpPanel", "access": "", "host": "WireIt.BaseEditor", "type": "method", "name": "renderHelpPanel"}, {"url": "WireIt.WiringEditor.html#method_renderLoadPanel", "access": "", "host": "WireIt.WiringEditor", "type": "method", "name": "renderLoadPanel"}, {"url": "WireIt.WiringEditor.html#method_renderModulesAccordion", "access": "", "host": "WireIt.WiringEditor", "type": "method", "name": "renderModulesAccordion"}, {"url": "WireIt.BaseEditor.html#method_renderPropertiesAccordion", "access": "", "host": "WireIt.BaseEditor", "type": "method", "name": "renderPropertiesAccordion"}, {"url": "WireIt.BaseEditor.html#method_renderPropertiesForm", "access": "", "host": "WireIt.BaseEditor", "type": "method", "name": "renderPropertiesForm"}, {"url": "WireIt.BaseEditor.html#method_renderSavedStatus", "access": "", "host": "WireIt.BaseEditor", "type": "method", "name": "renderSavedStatus"}, {"url": "WireIt.WiringEditor.adapters.JsonRpc.html#property_RestJSON", "access": "", "host": "WireIt.WiringEditor.adapters.JsonRpc", "type": "property", "name": "RestJSON"}, {"url": "WireIt.Grouper.html#method_rubberbandSelect", "access": "", "host": "WireIt.Grouper", "type": "method", "name": "rubberbandSelect"}, {"url": "WireIt.BaseEditor.html#method_save", "access": "", "host": "WireIt.BaseEditor", "type": "method", "name": "save"}, {"url": "WireIt.WiringEditor.html#method_save", "access": "", "host": "WireIt.WiringEditor", "type": "method", "name": "save"}, {"url": "WireIt.WiringEditor.html#method_saveModuleFailure", "access": "", "host": "WireIt.WiringEditor", "type": "method", "name": "saveModuleFailure"}, {"url": "WireIt.WiringEditor.html#method_saveModuleSuccess", "access": "", "host": "WireIt.WiringEditor", "type": "method", "name": "saveModuleSuccess"}, {"url": "WireIt.WiringEditor.adapters.Ajax.html#method_saveWiring", "access": "", "host": "WireIt.WiringEditor.adapters.Ajax", "type": "method", "name": "saveWiring"}, {"url": "WireIt.RubberBand.html#method_scroll", "access": "", "host": "WireIt.RubberBand", "type": "method", "name": "scroll"}, {"url": "WireIt.Grouper.html#method_selectGroup", "access": "", "host": "WireIt.Grouper", "type": "method", "name": "selectGroup"}, {"url": "WireIt.WiringEditor.adapters.Ajax.html#method__sendRequest", "access": "", "host": "WireIt.WiringEditor.adapters.Ajax", "type": "method", "name": "_sendRequest"}, {"url": "WireIt.GroupUtils.html#method_serialiseGroup", "access": "", "host": "WireIt.GroupUtils", "type": "method", "name": "serialiseGroup"}, {"url": "WireIt.Grouper.html#method_setDisplay", "access": "", "host": "WireIt.Grouper", "type": "method", "name": "setDisplay"}, {"url": "WireIt.Grouper.html#method_setGroupOptions", "access": "", "host": "WireIt.Grouper", "type": "method", "name": "setGroupOptions"}, {"url": "WireIt.BaseEditor.html#method_setOptions", "access": "", "host": "WireIt.BaseEditor", "type": "method", "name": "setOptions"}, {"url": "WireIt.WiringEditor.html#method_setOptions", "access": "", "host": "WireIt.WiringEditor", "type": "method", "name": "setOptions"}, {"url": "WireIt.FormContainer.html#method_setOptions", "access": "", "host": "WireIt.FormContainer", "type": "method", "name": "setOptions"}, {"url": "WireIt.Grouper.html#method_setSelectedGroup", "access": "", "host": "WireIt.Grouper", "type": "method", "name": "setSelectedGroup"}, {"url": "WireIt.Grouper.html#method_setupSelectedGroups", "access": "", "host": "WireIt.Grouper", "type": "method", "name": "setupSelectedGroups"}, {"url": "WireIt.Grouper.html#method_setupWidget", "access": "", "host": "WireIt.Grouper", "type": "method", "name": "setupWidget"}, {"url": "WireIt.FormContainer.html#method_setValue", "access": "", "host": "WireIt.FormContainer", "type": "method", "name": "setValue"}, {"url": "WireIt.RubberBand.html#method_show", "access": "", "host": "WireIt.RubberBand", "type": "method", "name": "show"}, {"url": "WireIt.Grouper.html#method_showGroup", "access": "", "host": "WireIt.Grouper", "type": "method", "name": "showGroup"}, {"url": "WireIt.Grouper.html#method_showGroupConfigure", "access": "", "host": "WireIt.Grouper", "type": "method", "name": "showGroupConfigure"}, {"url": "WireIt.RubberBand.html#method_start", "access": "", "host": "WireIt.RubberBand", "type": "method", "name": "start"}, {"url": "WireIt.ModuleProxy.html#method_startDrag", "access": "", "host": "WireIt.ModuleProxy", "type": "method", "name": "startDrag"}, {"url": "WireIt.Grouper.html#method_toggle", "access": "", "host": "WireIt.Grouper", "type": "method", "name": "toggle"}, {"url": "WireIt.Grouper.html#method_unGroup", "access": "", "host": "WireIt.Grouper", "type": "method", "name": "unGroup"}, {"url": "WireIt.WiringEditor.html#method_updateLoadPanelList", "access": "", "host": "WireIt.WiringEditor", "type": "method", "name": "updateLoadPanelList"}, {"url": "WireIt.GroupUtils.html#method_valueOr", "access": "", "host": "WireIt.GroupUtils", "type": "method", "name": "valueOr"}, {"url": "WireIt.GroupUtils.html#method_workOutCenter", "access": "", "host": "WireIt.GroupUtils", "type": "method", "name": "workOutCenter"}, {"url": "WireIt.FormContainer.html#property_xtype", "access": "", "host": "WireIt.FormContainer", "type": "property", "name": "xtype"}];
</script>
</body>
</html>