webgui/www/extras/yui-ext/docs/output/EditorSelectionModel.js.html
JT Smith cfd09a5cb6 upgraded to yui 0.12.0
upgraded to yui-ext 0.33 rc2
2006-11-28 02:23:34 +00:00

182 lines
No EOL
46 KiB
HTML

<html><head><title>EditorSelectionModel.js</title><link rel="stylesheet" type="text/css" href="../style.css" media="screen"/></head><body><div class="hl-main"><pre>
</span><span class="hl-comment">/**
@class YAHOO.ext.grid.EditorSelectionModel
* Extends {@link YAHOO.ext.grid.DefaultSelectionModel} to enable cell navigation. &lt;br&gt;&lt;br&gt;
@extends YAHOO.ext.grid.DefaultSelectionModel
@constructor
*/
</span><span class="hl-identifier">YAHOO</span><span class="hl-default">.</span><span class="hl-identifier">ext</span><span class="hl-default">.</span><span class="hl-identifier">grid</span><span class="hl-default">.</span><span class="hl-identifier">EditorSelectionModel</span><span class="hl-default"> = </span><span class="hl-reserved">function</span><span class="hl-brackets">(){
</span><span class="hl-identifier">YAHOO</span><span class="hl-code">.</span><span class="hl-identifier">ext</span><span class="hl-code">.</span><span class="hl-identifier">grid</span><span class="hl-code">.</span><span class="hl-identifier">EditorSelectionModel</span><span class="hl-code">.</span><span class="hl-identifier">superclass</span><span class="hl-code">.</span><span class="hl-identifier">constructor</span><span class="hl-code">.</span><span class="hl-identifier">call</span><span class="hl-brackets">(</span><span class="hl-reserved">this</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-comment">/** Number of clicks to activate a cell (for editing) - valid values are 1 or 2
* @type Number */
</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">clicksToActivateCell</span><span class="hl-code"> = </span><span class="hl-number">1</span><span class="hl-code">;
</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">events</span><span class="hl-brackets">[</span><span class="hl-quotes">'</span><span class="hl-string">cellactivate</span><span class="hl-quotes">'</span><span class="hl-brackets">]</span><span class="hl-code"> = </span><span class="hl-reserved">new </span><span class="hl-identifier">YAHOO</span><span class="hl-code">.</span><span class="hl-identifier">util</span><span class="hl-code">.</span><span class="hl-identifier">CustomEvent</span><span class="hl-brackets">(</span><span class="hl-quotes">'</span><span class="hl-string">cellactivate</span><span class="hl-quotes">'</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-brackets">}</span><span class="hl-default">;
</span><span class="hl-identifier">YAHOO</span><span class="hl-default">.</span><span class="hl-identifier">extendX</span><span class="hl-brackets">(</span><span class="hl-identifier">YAHOO</span><span class="hl-code">.</span><span class="hl-identifier">ext</span><span class="hl-code">.</span><span class="hl-identifier">grid</span><span class="hl-code">.</span><span class="hl-identifier">EditorSelectionModel</span><span class="hl-code">, </span><span class="hl-identifier">YAHOO</span><span class="hl-code">.</span><span class="hl-identifier">ext</span><span class="hl-code">.</span><span class="hl-identifier">grid</span><span class="hl-code">.</span><span class="hl-identifier">DefaultSelectionModel</span><span class="hl-brackets">)</span><span class="hl-default">;
</span><span class="hl-identifier">YAHOO</span><span class="hl-default">.</span><span class="hl-identifier">ext</span><span class="hl-default">.</span><span class="hl-identifier">grid</span><span class="hl-default">.</span><span class="hl-identifier">EditorSelectionModel</span><span class="hl-default">.</span><span class="hl-identifier">prototype</span><span class="hl-default">.</span><span class="hl-identifier">disableArrowNavigation</span><span class="hl-default"> = </span><span class="hl-reserved">false</span><span class="hl-default">;
</span><span class="hl-identifier">YAHOO</span><span class="hl-default">.</span><span class="hl-identifier">ext</span><span class="hl-default">.</span><span class="hl-identifier">grid</span><span class="hl-default">.</span><span class="hl-identifier">EditorSelectionModel</span><span class="hl-default">.</span><span class="hl-identifier">prototype</span><span class="hl-default">.</span><span class="hl-identifier">controlForArrowNavigation</span><span class="hl-default"> = </span><span class="hl-reserved">false</span><span class="hl-default">;
</span><span class="hl-comment">/** @ignore */
</span><span class="hl-identifier">YAHOO</span><span class="hl-default">.</span><span class="hl-identifier">ext</span><span class="hl-default">.</span><span class="hl-identifier">grid</span><span class="hl-default">.</span><span class="hl-identifier">EditorSelectionModel</span><span class="hl-default">.</span><span class="hl-identifier">prototype</span><span class="hl-default">.</span><span class="hl-identifier">initEvents</span><span class="hl-default"> = </span><span class="hl-reserved">function</span><span class="hl-brackets">(){
</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">grid</span><span class="hl-code">.</span><span class="hl-identifier">addListener</span><span class="hl-brackets">(</span><span class="hl-quotes">&quot;</span><span class="hl-string">cellclick</span><span class="hl-quotes">&quot;</span><span class="hl-code">, </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">onCellClick</span><span class="hl-code">, </span><span class="hl-reserved">this</span><span class="hl-code">, </span><span class="hl-reserved">true</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">grid</span><span class="hl-code">.</span><span class="hl-identifier">addListener</span><span class="hl-brackets">(</span><span class="hl-quotes">&quot;</span><span class="hl-string">celldblclick</span><span class="hl-quotes">&quot;</span><span class="hl-code">, </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">onCellDblClick</span><span class="hl-code">, </span><span class="hl-reserved">this</span><span class="hl-code">, </span><span class="hl-reserved">true</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">grid</span><span class="hl-code">.</span><span class="hl-identifier">addListener</span><span class="hl-brackets">(</span><span class="hl-quotes">&quot;</span><span class="hl-string">keydown</span><span class="hl-quotes">&quot;</span><span class="hl-code">, </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">keyDown</span><span class="hl-code">, </span><span class="hl-reserved">this</span><span class="hl-code">, </span><span class="hl-reserved">true</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-brackets">}</span><span class="hl-default">;
</span><span class="hl-identifier">YAHOO</span><span class="hl-default">.</span><span class="hl-identifier">ext</span><span class="hl-default">.</span><span class="hl-identifier">grid</span><span class="hl-default">.</span><span class="hl-identifier">EditorSelectionModel</span><span class="hl-default">.</span><span class="hl-identifier">prototype</span><span class="hl-default">.</span><span class="hl-identifier">onCellClick</span><span class="hl-default"> = </span><span class="hl-reserved">function</span><span class="hl-brackets">(</span><span class="hl-identifier">grid</span><span class="hl-code">, </span><span class="hl-identifier">rowIndex</span><span class="hl-code">, </span><span class="hl-identifier">colIndex</span><span class="hl-brackets">){
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">clicksToActivateCell</span><span class="hl-code"> == </span><span class="hl-number">1</span><span class="hl-brackets">){
</span><span class="hl-reserved">var </span><span class="hl-identifier">row</span><span class="hl-code"> = </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">grid</span><span class="hl-code">.</span><span class="hl-identifier">getRow</span><span class="hl-brackets">(</span><span class="hl-identifier">rowIndex</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-reserved">var </span><span class="hl-identifier">cell</span><span class="hl-code"> = </span><span class="hl-identifier">row</span><span class="hl-code">.</span><span class="hl-identifier">childNodes</span><span class="hl-brackets">[</span><span class="hl-identifier">colIndex</span><span class="hl-brackets">]</span><span class="hl-code">;
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-identifier">cell</span><span class="hl-brackets">){
</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">activate</span><span class="hl-brackets">(</span><span class="hl-identifier">row</span><span class="hl-code">, </span><span class="hl-identifier">cell</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-brackets">}
}
}</span><span class="hl-default">;
</span><span class="hl-identifier">YAHOO</span><span class="hl-default">.</span><span class="hl-identifier">ext</span><span class="hl-default">.</span><span class="hl-identifier">grid</span><span class="hl-default">.</span><span class="hl-identifier">EditorSelectionModel</span><span class="hl-default">.</span><span class="hl-identifier">prototype</span><span class="hl-default">.</span><span class="hl-identifier">activate</span><span class="hl-default"> = </span><span class="hl-reserved">function</span><span class="hl-brackets">(</span><span class="hl-identifier">row</span><span class="hl-code">, </span><span class="hl-identifier">cell</span><span class="hl-brackets">){
</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">fireEvent</span><span class="hl-brackets">(</span><span class="hl-quotes">'</span><span class="hl-string">cellactivate</span><span class="hl-quotes">'</span><span class="hl-code">, </span><span class="hl-reserved">this</span><span class="hl-code">, </span><span class="hl-identifier">row</span><span class="hl-code">, </span><span class="hl-identifier">cell</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">grid</span><span class="hl-code">.</span><span class="hl-identifier">doEdit</span><span class="hl-brackets">(</span><span class="hl-identifier">row</span><span class="hl-code">, </span><span class="hl-identifier">cell</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-brackets">}</span><span class="hl-default">;
</span><span class="hl-identifier">YAHOO</span><span class="hl-default">.</span><span class="hl-identifier">ext</span><span class="hl-default">.</span><span class="hl-identifier">grid</span><span class="hl-default">.</span><span class="hl-identifier">EditorSelectionModel</span><span class="hl-default">.</span><span class="hl-identifier">prototype</span><span class="hl-default">.</span><span class="hl-identifier">onCellDblClick</span><span class="hl-default"> = </span><span class="hl-reserved">function</span><span class="hl-brackets">(</span><span class="hl-identifier">grid</span><span class="hl-code">, </span><span class="hl-identifier">rowIndex</span><span class="hl-code">, </span><span class="hl-identifier">colIndex</span><span class="hl-brackets">){
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">clicksToActivateCell</span><span class="hl-code"> == </span><span class="hl-number">2</span><span class="hl-brackets">){
</span><span class="hl-reserved">var </span><span class="hl-identifier">row</span><span class="hl-code"> = </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">grid</span><span class="hl-code">.</span><span class="hl-identifier">getRow</span><span class="hl-brackets">(</span><span class="hl-identifier">rowIndex</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-reserved">var </span><span class="hl-identifier">cell</span><span class="hl-code"> = </span><span class="hl-identifier">row</span><span class="hl-code">.</span><span class="hl-identifier">childNodes</span><span class="hl-brackets">[</span><span class="hl-identifier">colIndex</span><span class="hl-brackets">]</span><span class="hl-code">;
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-identifier">cell</span><span class="hl-brackets">){
</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">activate</span><span class="hl-brackets">(</span><span class="hl-identifier">row</span><span class="hl-code">, </span><span class="hl-identifier">cell</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-brackets">}
}
}</span><span class="hl-default">;
</span><span class="hl-comment">/** @ignore */
</span><span class="hl-identifier">YAHOO</span><span class="hl-default">.</span><span class="hl-identifier">ext</span><span class="hl-default">.</span><span class="hl-identifier">grid</span><span class="hl-default">.</span><span class="hl-identifier">EditorSelectionModel</span><span class="hl-default">.</span><span class="hl-identifier">prototype</span><span class="hl-default">.</span><span class="hl-identifier">setRowState</span><span class="hl-default"> = </span><span class="hl-reserved">function</span><span class="hl-brackets">(</span><span class="hl-identifier">row</span><span class="hl-code">, </span><span class="hl-identifier">selected</span><span class="hl-brackets">){
</span><span class="hl-identifier">YAHOO</span><span class="hl-code">.</span><span class="hl-identifier">ext</span><span class="hl-code">.</span><span class="hl-identifier">grid</span><span class="hl-code">.</span><span class="hl-identifier">EditorSelectionModel</span><span class="hl-code">.</span><span class="hl-identifier">superclass</span><span class="hl-code">.</span><span class="hl-identifier">setRowState</span><span class="hl-code">.</span><span class="hl-identifier">call</span><span class="hl-brackets">(</span><span class="hl-reserved">this</span><span class="hl-code">, </span><span class="hl-identifier">row</span><span class="hl-code">, </span><span class="hl-reserved">false</span><span class="hl-code">, </span><span class="hl-reserved">false</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-brackets">}</span><span class="hl-default">;
</span><span class="hl-comment">/** @ignore */
</span><span class="hl-identifier">YAHOO</span><span class="hl-default">.</span><span class="hl-identifier">ext</span><span class="hl-default">.</span><span class="hl-identifier">grid</span><span class="hl-default">.</span><span class="hl-identifier">EditorSelectionModel</span><span class="hl-default">.</span><span class="hl-identifier">prototype</span><span class="hl-default">.</span><span class="hl-identifier">focusRow</span><span class="hl-default"> = </span><span class="hl-reserved">function</span><span class="hl-brackets">(</span><span class="hl-identifier">row</span><span class="hl-code">, </span><span class="hl-identifier">selected</span><span class="hl-brackets">){
}</span><span class="hl-default">;
</span><span class="hl-identifier">YAHOO</span><span class="hl-default">.</span><span class="hl-identifier">ext</span><span class="hl-default">.</span><span class="hl-identifier">grid</span><span class="hl-default">.</span><span class="hl-identifier">EditorSelectionModel</span><span class="hl-default">.</span><span class="hl-identifier">prototype</span><span class="hl-default">.</span><span class="hl-identifier">getEditorCellAfter</span><span class="hl-default"> = </span><span class="hl-reserved">function</span><span class="hl-brackets">(</span><span class="hl-identifier">cell</span><span class="hl-code">, </span><span class="hl-identifier">spanRows</span><span class="hl-brackets">){
</span><span class="hl-reserved">var </span><span class="hl-identifier">g</span><span class="hl-code"> = </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">grid</span><span class="hl-code">;
</span><span class="hl-reserved">var </span><span class="hl-identifier">next</span><span class="hl-code"> = </span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">getCellAfter</span><span class="hl-brackets">(</span><span class="hl-identifier">cell</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-reserved">while</span><span class="hl-brackets">(</span><span class="hl-identifier">next</span><span class="hl-code"> &amp;&amp; !</span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">colModel</span><span class="hl-code">.</span><span class="hl-identifier">isCellEditable</span><span class="hl-brackets">(</span><span class="hl-identifier">next</span><span class="hl-code">.</span><span class="hl-identifier">columnIndex</span><span class="hl-brackets">)){
</span><span class="hl-identifier">next</span><span class="hl-code"> = </span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">getCellAfter</span><span class="hl-brackets">(</span><span class="hl-identifier">next</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-brackets">}
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-code">!</span><span class="hl-identifier">next</span><span class="hl-code"> &amp;&amp; </span><span class="hl-identifier">spanRows</span><span class="hl-brackets">){
</span><span class="hl-reserved">var </span><span class="hl-identifier">row</span><span class="hl-code"> = </span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">getRowAfter</span><span class="hl-brackets">(</span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">getRowFromChild</span><span class="hl-brackets">(</span><span class="hl-identifier">cell</span><span class="hl-brackets">))</span><span class="hl-code">;
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-identifier">row</span><span class="hl-brackets">){
</span><span class="hl-identifier">next</span><span class="hl-code"> = </span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">getFirstCell</span><span class="hl-brackets">(</span><span class="hl-identifier">row</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-code">!</span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">colModel</span><span class="hl-code">.</span><span class="hl-identifier">isCellEditable</span><span class="hl-brackets">(</span><span class="hl-identifier">next</span><span class="hl-code">.</span><span class="hl-identifier">columnIndex</span><span class="hl-brackets">)){
</span><span class="hl-identifier">next</span><span class="hl-code"> = </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">getEditorCellAfter</span><span class="hl-brackets">(</span><span class="hl-identifier">next</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-brackets">}
}
}
</span><span class="hl-reserved">return </span><span class="hl-identifier">next</span><span class="hl-code">;
</span><span class="hl-brackets">}</span><span class="hl-default">;
</span><span class="hl-identifier">YAHOO</span><span class="hl-default">.</span><span class="hl-identifier">ext</span><span class="hl-default">.</span><span class="hl-identifier">grid</span><span class="hl-default">.</span><span class="hl-identifier">EditorSelectionModel</span><span class="hl-default">.</span><span class="hl-identifier">prototype</span><span class="hl-default">.</span><span class="hl-identifier">getEditorCellBefore</span><span class="hl-default"> = </span><span class="hl-reserved">function</span><span class="hl-brackets">(</span><span class="hl-identifier">cell</span><span class="hl-code">, </span><span class="hl-identifier">spanRows</span><span class="hl-brackets">){
</span><span class="hl-reserved">var </span><span class="hl-identifier">g</span><span class="hl-code"> = </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">grid</span><span class="hl-code">;
</span><span class="hl-reserved">var </span><span class="hl-identifier">prev</span><span class="hl-code"> = </span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">getCellBefore</span><span class="hl-brackets">(</span><span class="hl-identifier">cell</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-reserved">while</span><span class="hl-brackets">(</span><span class="hl-identifier">prev</span><span class="hl-code"> &amp;&amp; !</span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">colModel</span><span class="hl-code">.</span><span class="hl-identifier">isCellEditable</span><span class="hl-brackets">(</span><span class="hl-identifier">prev</span><span class="hl-code">.</span><span class="hl-identifier">columnIndex</span><span class="hl-brackets">)){
</span><span class="hl-identifier">prev</span><span class="hl-code"> = </span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">getCellBefore</span><span class="hl-brackets">(</span><span class="hl-identifier">prev</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-brackets">}
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-code">!</span><span class="hl-identifier">prev</span><span class="hl-code"> &amp;&amp; </span><span class="hl-identifier">spanRows</span><span class="hl-brackets">){
</span><span class="hl-reserved">var </span><span class="hl-identifier">row</span><span class="hl-code"> = </span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">getRowBefore</span><span class="hl-brackets">(</span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">getRowFromChild</span><span class="hl-brackets">(</span><span class="hl-identifier">cell</span><span class="hl-brackets">))</span><span class="hl-code">;
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-identifier">row</span><span class="hl-brackets">){
</span><span class="hl-identifier">prev</span><span class="hl-code"> = </span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">getLastCell</span><span class="hl-brackets">(</span><span class="hl-identifier">row</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-code">!</span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">colModel</span><span class="hl-code">.</span><span class="hl-identifier">isCellEditable</span><span class="hl-brackets">(</span><span class="hl-identifier">prev</span><span class="hl-code">.</span><span class="hl-identifier">columnIndex</span><span class="hl-brackets">)){
</span><span class="hl-identifier">prev</span><span class="hl-code"> = </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">getEditorCellBefore</span><span class="hl-brackets">(</span><span class="hl-identifier">prev</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-brackets">}
}
}
</span><span class="hl-reserved">return </span><span class="hl-identifier">prev</span><span class="hl-code">;
</span><span class="hl-brackets">}</span><span class="hl-default">;
</span><span class="hl-identifier">YAHOO</span><span class="hl-default">.</span><span class="hl-identifier">ext</span><span class="hl-default">.</span><span class="hl-identifier">grid</span><span class="hl-default">.</span><span class="hl-identifier">EditorSelectionModel</span><span class="hl-default">.</span><span class="hl-identifier">prototype</span><span class="hl-default">.</span><span class="hl-identifier">allowArrowNav</span><span class="hl-default"> = </span><span class="hl-reserved">function</span><span class="hl-brackets">(</span><span class="hl-identifier">e</span><span class="hl-brackets">){
</span><span class="hl-reserved">return </span><span class="hl-brackets">(</span><span class="hl-code">!</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">disableArrowNavigation</span><span class="hl-code"> &amp;&amp; </span><span class="hl-brackets">(</span><span class="hl-code">!</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">controlForArrowNavigation</span><span class="hl-code"> || </span><span class="hl-identifier">e</span><span class="hl-code">.</span><span class="hl-identifier">ctrlKey</span><span class="hl-brackets">))</span><span class="hl-code">;
</span><span class="hl-brackets">}
</span><span class="hl-comment">/** @ignore */
</span><span class="hl-identifier">YAHOO</span><span class="hl-default">.</span><span class="hl-identifier">ext</span><span class="hl-default">.</span><span class="hl-identifier">grid</span><span class="hl-default">.</span><span class="hl-identifier">EditorSelectionModel</span><span class="hl-default">.</span><span class="hl-identifier">prototype</span><span class="hl-default">.</span><span class="hl-identifier">keyDown</span><span class="hl-default"> = </span><span class="hl-reserved">function</span><span class="hl-brackets">(</span><span class="hl-identifier">e</span><span class="hl-brackets">){
</span><span class="hl-reserved">var </span><span class="hl-identifier">g</span><span class="hl-code"> = </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">grid</span><span class="hl-code">, </span><span class="hl-identifier">cm</span><span class="hl-code"> = </span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">colModel</span><span class="hl-code">, </span><span class="hl-identifier">cell</span><span class="hl-code"> = </span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">getEditingCell</span><span class="hl-brackets">()</span><span class="hl-code">;
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-code">!</span><span class="hl-identifier">cell</span><span class="hl-brackets">) </span><span class="hl-reserved">return</span><span class="hl-code">;
</span><span class="hl-reserved">var </span><span class="hl-identifier">newCell</span><span class="hl-code">;
</span><span class="hl-reserved">switch</span><span class="hl-brackets">(</span><span class="hl-identifier">e</span><span class="hl-code">.</span><span class="hl-identifier">browserEvent</span><span class="hl-code">.</span><span class="hl-identifier">keyCode</span><span class="hl-brackets">){
</span><span class="hl-reserved">case </span><span class="hl-identifier">e</span><span class="hl-code">.</span><span class="hl-identifier">TAB</span><span class="hl-code">:
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-identifier">e</span><span class="hl-code">.</span><span class="hl-identifier">shiftKey</span><span class="hl-brackets">){
</span><span class="hl-identifier">newCell</span><span class="hl-code"> = </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">getEditorCellBefore</span><span class="hl-brackets">(</span><span class="hl-identifier">cell</span><span class="hl-code">, </span><span class="hl-reserved">true</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-brackets">}</span><span class="hl-reserved">else</span><span class="hl-brackets">{
</span><span class="hl-identifier">newCell</span><span class="hl-code"> = </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">getEditorCellAfter</span><span class="hl-brackets">(</span><span class="hl-identifier">cell</span><span class="hl-code">, </span><span class="hl-reserved">true</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-brackets">}
</span><span class="hl-identifier">e</span><span class="hl-code">.</span><span class="hl-identifier">preventDefault</span><span class="hl-brackets">()</span><span class="hl-code">;
</span><span class="hl-reserved">break</span><span class="hl-code">;
</span><span class="hl-reserved">case </span><span class="hl-identifier">e</span><span class="hl-code">.</span><span class="hl-identifier">DOWN</span><span class="hl-code">:
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">allowArrowNav</span><span class="hl-brackets">(</span><span class="hl-identifier">e</span><span class="hl-brackets">)){
</span><span class="hl-reserved">var </span><span class="hl-identifier">next</span><span class="hl-code"> = </span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">getRowAfter</span><span class="hl-brackets">(</span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">getRowFromChild</span><span class="hl-brackets">(</span><span class="hl-identifier">cell</span><span class="hl-brackets">))</span><span class="hl-code">;
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-identifier">next</span><span class="hl-brackets">){
</span><span class="hl-identifier">newCell</span><span class="hl-code"> = </span><span class="hl-identifier">next</span><span class="hl-code">.</span><span class="hl-identifier">childNodes</span><span class="hl-brackets">[</span><span class="hl-identifier">cell</span><span class="hl-code">.</span><span class="hl-identifier">columnIndex</span><span class="hl-brackets">]</span><span class="hl-code">;
</span><span class="hl-brackets">}
}
</span><span class="hl-reserved">break</span><span class="hl-code">;
</span><span class="hl-reserved">case </span><span class="hl-identifier">e</span><span class="hl-code">.</span><span class="hl-identifier">UP</span><span class="hl-code">:
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">allowArrowNav</span><span class="hl-brackets">(</span><span class="hl-identifier">e</span><span class="hl-brackets">)){
</span><span class="hl-reserved">var </span><span class="hl-identifier">prev</span><span class="hl-code"> = </span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">getRowBefore</span><span class="hl-brackets">(</span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">getRowFromChild</span><span class="hl-brackets">(</span><span class="hl-identifier">cell</span><span class="hl-brackets">))</span><span class="hl-code">;
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-identifier">prev</span><span class="hl-brackets">){
</span><span class="hl-identifier">newCell</span><span class="hl-code"> = </span><span class="hl-identifier">prev</span><span class="hl-code">.</span><span class="hl-identifier">childNodes</span><span class="hl-brackets">[</span><span class="hl-identifier">cell</span><span class="hl-code">.</span><span class="hl-identifier">columnIndex</span><span class="hl-brackets">]</span><span class="hl-code">;
</span><span class="hl-brackets">}
}
</span><span class="hl-reserved">break</span><span class="hl-code">;
</span><span class="hl-reserved">case </span><span class="hl-identifier">e</span><span class="hl-code">.</span><span class="hl-identifier">RETURN</span><span class="hl-code">:
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-identifier">e</span><span class="hl-code">.</span><span class="hl-identifier">shiftKey</span><span class="hl-brackets">){
</span><span class="hl-reserved">var </span><span class="hl-identifier">prev</span><span class="hl-code"> = </span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">getRowBefore</span><span class="hl-brackets">(</span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">getRowFromChild</span><span class="hl-brackets">(</span><span class="hl-identifier">cell</span><span class="hl-brackets">))</span><span class="hl-code">;
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-identifier">prev</span><span class="hl-brackets">){
</span><span class="hl-identifier">newCell</span><span class="hl-code"> = </span><span class="hl-identifier">prev</span><span class="hl-code">.</span><span class="hl-identifier">childNodes</span><span class="hl-brackets">[</span><span class="hl-identifier">cell</span><span class="hl-code">.</span><span class="hl-identifier">columnIndex</span><span class="hl-brackets">]</span><span class="hl-code">;
</span><span class="hl-brackets">}
}</span><span class="hl-reserved">else</span><span class="hl-brackets">{
</span><span class="hl-reserved">var </span><span class="hl-identifier">next</span><span class="hl-code"> = </span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">getRowAfter</span><span class="hl-brackets">(</span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">getRowFromChild</span><span class="hl-brackets">(</span><span class="hl-identifier">cell</span><span class="hl-brackets">))</span><span class="hl-code">;
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-identifier">next</span><span class="hl-brackets">){
</span><span class="hl-identifier">newCell</span><span class="hl-code"> = </span><span class="hl-identifier">next</span><span class="hl-code">.</span><span class="hl-identifier">childNodes</span><span class="hl-brackets">[</span><span class="hl-identifier">cell</span><span class="hl-code">.</span><span class="hl-identifier">columnIndex</span><span class="hl-brackets">]</span><span class="hl-code">;
</span><span class="hl-brackets">}
}
</span><span class="hl-reserved">break</span><span class="hl-code">;
</span><span class="hl-reserved">case </span><span class="hl-identifier">e</span><span class="hl-code">.</span><span class="hl-identifier">RIGHT</span><span class="hl-code">:
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">allowArrowNav</span><span class="hl-brackets">(</span><span class="hl-identifier">e</span><span class="hl-brackets">)){
</span><span class="hl-identifier">newCell</span><span class="hl-code"> = </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">getEditorCellAfter</span><span class="hl-brackets">(</span><span class="hl-identifier">cell</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-brackets">}
</span><span class="hl-reserved">break</span><span class="hl-code">;
</span><span class="hl-reserved">case </span><span class="hl-identifier">e</span><span class="hl-code">.</span><span class="hl-identifier">LEFT</span><span class="hl-code">:
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">allowArrowNav</span><span class="hl-brackets">(</span><span class="hl-identifier">e</span><span class="hl-brackets">)){
</span><span class="hl-identifier">newCell</span><span class="hl-code"> = </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">getEditorCellBefore</span><span class="hl-brackets">(</span><span class="hl-identifier">cell</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-brackets">}
</span><span class="hl-reserved">break</span><span class="hl-code">;
</span><span class="hl-brackets">}</span><span class="hl-code">;
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-identifier">newCell</span><span class="hl-brackets">){
</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">activate</span><span class="hl-brackets">(</span><span class="hl-identifier">g</span><span class="hl-code">.</span><span class="hl-identifier">getRowFromChild</span><span class="hl-brackets">(</span><span class="hl-identifier">newCell</span><span class="hl-brackets">)</span><span class="hl-code">, </span><span class="hl-identifier">newCell</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-identifier">e</span><span class="hl-code">.</span><span class="hl-identifier">stopEvent</span><span class="hl-brackets">()</span><span class="hl-code">;
</span><span class="hl-brackets">}
}</span><span class="hl-default">;
</span><span class="hl-comment">/**
* @class YAHOO.ext.grid.EditorAndSelectionModel
*/
</span><span class="hl-identifier">YAHOO</span><span class="hl-default">.</span><span class="hl-identifier">ext</span><span class="hl-default">.</span><span class="hl-identifier">grid</span><span class="hl-default">.</span><span class="hl-identifier">EditorAndSelectionModel</span><span class="hl-default"> = </span><span class="hl-reserved">function</span><span class="hl-brackets">(){
</span><span class="hl-identifier">YAHOO</span><span class="hl-code">.</span><span class="hl-identifier">ext</span><span class="hl-code">.</span><span class="hl-identifier">grid</span><span class="hl-code">.</span><span class="hl-identifier">EditorAndSelectionModel</span><span class="hl-code">.</span><span class="hl-identifier">superclass</span><span class="hl-code">.</span><span class="hl-identifier">constructor</span><span class="hl-code">.</span><span class="hl-identifier">call</span><span class="hl-brackets">(</span><span class="hl-reserved">this</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">events</span><span class="hl-brackets">[</span><span class="hl-quotes">'</span><span class="hl-string">cellactivate</span><span class="hl-quotes">'</span><span class="hl-brackets">]</span><span class="hl-code"> = </span><span class="hl-reserved">new </span><span class="hl-identifier">YAHOO</span><span class="hl-code">.</span><span class="hl-identifier">util</span><span class="hl-code">.</span><span class="hl-identifier">CustomEvent</span><span class="hl-brackets">(</span><span class="hl-quotes">'</span><span class="hl-string">cellactivate</span><span class="hl-quotes">'</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-brackets">}</span><span class="hl-default">;
</span><span class="hl-identifier">YAHOO</span><span class="hl-default">.</span><span class="hl-identifier">extendX</span><span class="hl-brackets">(</span><span class="hl-identifier">YAHOO</span><span class="hl-code">.</span><span class="hl-identifier">ext</span><span class="hl-code">.</span><span class="hl-identifier">grid</span><span class="hl-code">.</span><span class="hl-identifier">EditorAndSelectionModel</span><span class="hl-code">, </span><span class="hl-identifier">YAHOO</span><span class="hl-code">.</span><span class="hl-identifier">ext</span><span class="hl-code">.</span><span class="hl-identifier">grid</span><span class="hl-code">.</span><span class="hl-identifier">DefaultSelectionModel</span><span class="hl-brackets">)</span><span class="hl-default">;
</span><span class="hl-identifier">YAHOO</span><span class="hl-default">.</span><span class="hl-identifier">ext</span><span class="hl-default">.</span><span class="hl-identifier">grid</span><span class="hl-default">.</span><span class="hl-identifier">EditorAndSelectionModel</span><span class="hl-default">.</span><span class="hl-identifier">prototype</span><span class="hl-default">.</span><span class="hl-identifier">initEvents</span><span class="hl-default"> = </span><span class="hl-reserved">function</span><span class="hl-brackets">(){
</span><span class="hl-identifier">YAHOO</span><span class="hl-code">.</span><span class="hl-identifier">ext</span><span class="hl-code">.</span><span class="hl-identifier">grid</span><span class="hl-code">.</span><span class="hl-identifier">EditorAndSelectionModel</span><span class="hl-code">.</span><span class="hl-identifier">superclass</span><span class="hl-code">.</span><span class="hl-identifier">initEvents</span><span class="hl-code">.</span><span class="hl-identifier">call</span><span class="hl-brackets">(</span><span class="hl-reserved">this</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">grid</span><span class="hl-code">.</span><span class="hl-identifier">addListener</span><span class="hl-brackets">(</span><span class="hl-quotes">&quot;</span><span class="hl-string">celldblclick</span><span class="hl-quotes">&quot;</span><span class="hl-code">, </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">onCellDblClick</span><span class="hl-code">, </span><span class="hl-reserved">this</span><span class="hl-code">, </span><span class="hl-reserved">true</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-brackets">}</span><span class="hl-default">;
</span><span class="hl-identifier">YAHOO</span><span class="hl-default">.</span><span class="hl-identifier">ext</span><span class="hl-default">.</span><span class="hl-identifier">grid</span><span class="hl-default">.</span><span class="hl-identifier">EditorAndSelectionModel</span><span class="hl-default">.</span><span class="hl-identifier">prototype</span><span class="hl-default">.</span><span class="hl-identifier">onCellDblClick</span><span class="hl-default"> = </span><span class="hl-reserved">function</span><span class="hl-brackets">(</span><span class="hl-identifier">grid</span><span class="hl-code">, </span><span class="hl-identifier">rowIndex</span><span class="hl-code">, </span><span class="hl-identifier">colIndex</span><span class="hl-brackets">){
</span><span class="hl-reserved">var </span><span class="hl-identifier">row</span><span class="hl-code"> = </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">grid</span><span class="hl-code">.</span><span class="hl-identifier">getRow</span><span class="hl-brackets">(</span><span class="hl-identifier">rowIndex</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-reserved">var </span><span class="hl-identifier">cell</span><span class="hl-code"> = </span><span class="hl-identifier">row</span><span class="hl-code">.</span><span class="hl-identifier">childNodes</span><span class="hl-brackets">[</span><span class="hl-identifier">colIndex</span><span class="hl-brackets">]</span><span class="hl-code">;
</span><span class="hl-reserved">if</span><span class="hl-brackets">(</span><span class="hl-identifier">cell</span><span class="hl-brackets">){
</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">fireEvent</span><span class="hl-brackets">(</span><span class="hl-quotes">'</span><span class="hl-string">cellactivate</span><span class="hl-quotes">'</span><span class="hl-code">, </span><span class="hl-reserved">this</span><span class="hl-code">, </span><span class="hl-identifier">row</span><span class="hl-code">, </span><span class="hl-identifier">cell</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">grid</span><span class="hl-code">.</span><span class="hl-identifier">doEdit</span><span class="hl-brackets">(</span><span class="hl-identifier">row</span><span class="hl-code">, </span><span class="hl-identifier">cell</span><span class="hl-brackets">)</span><span class="hl-code">;
</span><span class="hl-brackets">}
}</span><span class="hl-default">; </span></pre></div><hr>Copyright &copy; 2006 Jack Slocum. All rights reserved.</body></html>