d6011cd43ef10388f7bf180fc1162af4dd887aca
[roojs1] / docs / src / Roo_grid_HeaderDropZone.js.html
1 <html><head><title>/home/edward/gitlive/roojs1/Roo/grid/HeaderDropZone.js</title><link rel="stylesheet" type="text/css" href="../../css/highlight-js.css"/></head><body class="highlightpage"><code class="jsdoc-pretty"><span class="jsdoc-comment">/*
2  * Based on:
3  * Ext JS Library 1.1.1
4  * Copyright(c) 2006-2007, Ext JS, LLC.
5  *
6  * Originally Released Under LGPL - original licence link has changed is not relivant.
7  *
8  * Fork - LGPL
9  * &lt;script type=&quot;text/javascript&quot;&gt;
10  */
11 // private
12 // This is a support class used internally by the Grid components
13 </span><span class="jsdoc-var">Roo.grid.HeaderDropZone </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">grid</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">hd</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">hd2</span><span class="jsdoc-syntax">){
14     </span><span class="jsdoc-var">this.grid </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">grid</span><span class="jsdoc-syntax">;
15     </span><span class="jsdoc-var">this.view </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">grid.getView</span><span class="jsdoc-syntax">();
16     </span><span class="jsdoc-comment">// split the proxies so they don't interfere with mouse events
17     </span><span class="jsdoc-var">this.proxyTop </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.DomHelper.append</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">document.body</span><span class="jsdoc-syntax">, {
18         </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">&quot;col-move-top&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">html</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">&quot;&amp;#160;&quot;
19     </span><span class="jsdoc-syntax">}, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
20     </span><span class="jsdoc-var">this.proxyBottom </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.DomHelper.append</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">document.body</span><span class="jsdoc-syntax">, {
21         </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">&quot;col-move-bottom&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">html</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">&quot;&amp;#160;&quot;
22     </span><span class="jsdoc-syntax">}, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
23     </span><span class="jsdoc-var">this.proxyTop.hide </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.proxyBottom.hide </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
24         </span><span class="jsdoc-var">this.setLeftTop</span><span class="jsdoc-syntax">(-100,-100);
25         </span><span class="jsdoc-var">this.setStyle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;visibility&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">&quot;hidden&quot;</span><span class="jsdoc-syntax">);
26     };
27     </span><span class="jsdoc-var">this.ddGroup </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">&quot;gridHeader&quot; </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.grid.getGridEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.id</span><span class="jsdoc-syntax">;
28     </span><span class="jsdoc-comment">// temporarily disabled
29     //Roo.dd.ScrollManager.register(this.view.scroller.dom);
30     </span><span class="jsdoc-var">Roo.grid.HeaderDropZone.superclass.constructor.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">grid.getGridEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom</span><span class="jsdoc-syntax">);
31 };
32 </span><span class="jsdoc-var">Roo.extend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.grid.HeaderDropZone</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.dd.DropZone</span><span class="jsdoc-syntax">, {
33     </span><span class="jsdoc-var">proxyOffsets </span><span class="jsdoc-syntax">: [-4, -9],
34     </span><span class="jsdoc-var">fly</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo.Element.fly</span><span class="jsdoc-syntax">,
35
36     </span><span class="jsdoc-var">getTargetFromEvent </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
37         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">t </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.lib.Event.getTarget</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">);
38         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cindex </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.view.findCellIndex</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">t</span><span class="jsdoc-syntax">);
39         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cindex </span><span class="jsdoc-syntax">!== </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">){
40             </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.view.getHeaderCell</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cindex</span><span class="jsdoc-syntax">);
41         }
42         </span><span class="jsdoc-keyword">return null</span><span class="jsdoc-syntax">;
43     },
44
45     </span><span class="jsdoc-var">nextVisible </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">){
46         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.view</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">cm </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.grid.colModel</span><span class="jsdoc-syntax">;
47         </span><span class="jsdoc-var">h </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">h.nextSibling</span><span class="jsdoc-syntax">;
48         </span><span class="jsdoc-keyword">while</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">){
49             </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">cm.isHidden</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v.getCellIndex</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">))){
50                 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">;
51             }
52             </span><span class="jsdoc-var">h </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">h.nextSibling</span><span class="jsdoc-syntax">;
53         }
54         </span><span class="jsdoc-keyword">return null</span><span class="jsdoc-syntax">;
55     },
56
57     </span><span class="jsdoc-var">prevVisible </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">){
58         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.view</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">cm </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.grid.colModel</span><span class="jsdoc-syntax">;
59         </span><span class="jsdoc-var">h </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">h.prevSibling</span><span class="jsdoc-syntax">;
60         </span><span class="jsdoc-keyword">while</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">){
61             </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">cm.isHidden</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v.getCellIndex</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">))){
62                 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">;
63             }
64             </span><span class="jsdoc-var">h </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">h.prevSibling</span><span class="jsdoc-syntax">;
65         }
66         </span><span class="jsdoc-keyword">return null</span><span class="jsdoc-syntax">;
67     },
68
69     </span><span class="jsdoc-var">positionIndicator </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">n</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
70         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">x </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.lib.Event.getPageX</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">);
71         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">r </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.lib.Dom.getRegion</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">n.firstChild</span><span class="jsdoc-syntax">);
72         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">px</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">pt</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">py </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">r.top </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.proxyOffsets</span><span class="jsdoc-syntax">[1];
73         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">((</span><span class="jsdoc-var">r.right </span><span class="jsdoc-syntax">- </span><span class="jsdoc-var">x</span><span class="jsdoc-syntax">) &lt;= (</span><span class="jsdoc-var">r.right</span><span class="jsdoc-syntax">-</span><span class="jsdoc-var">r.left</span><span class="jsdoc-syntax">)/2){
74             </span><span class="jsdoc-var">px </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">r.right</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">this.view.borderWidth</span><span class="jsdoc-syntax">;
75             </span><span class="jsdoc-var">pt </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">&quot;after&quot;</span><span class="jsdoc-syntax">;
76         }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
77             </span><span class="jsdoc-var">px </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">r.left</span><span class="jsdoc-syntax">;
78             </span><span class="jsdoc-var">pt </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">&quot;before&quot;</span><span class="jsdoc-syntax">;
79         }
80         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">oldIndex </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.view.getCellIndex</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">);
81         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">newIndex </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.view.getCellIndex</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">n</span><span class="jsdoc-syntax">);
82
83         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.grid.colModel.isFixed</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">newIndex</span><span class="jsdoc-syntax">)){
84             </span><span class="jsdoc-keyword">return false</span><span class="jsdoc-syntax">;
85         }
86
87         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">locked </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.grid.colModel.isLocked</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">newIndex</span><span class="jsdoc-syntax">);
88
89         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">pt </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">&quot;after&quot;</span><span class="jsdoc-syntax">){
90             </span><span class="jsdoc-var">newIndex</span><span class="jsdoc-syntax">++;
91         }
92         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">oldIndex </span><span class="jsdoc-syntax">&lt; </span><span class="jsdoc-var">newIndex</span><span class="jsdoc-syntax">){
93             </span><span class="jsdoc-var">newIndex</span><span class="jsdoc-syntax">--;
94         }
95         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">oldIndex </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">newIndex </span><span class="jsdoc-syntax">&amp;&amp; (</span><span class="jsdoc-var">locked </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">this.grid.colModel.isLocked</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">oldIndex</span><span class="jsdoc-syntax">))){
96             </span><span class="jsdoc-keyword">return false</span><span class="jsdoc-syntax">;
97         }
98         </span><span class="jsdoc-var">px </span><span class="jsdoc-syntax">+=  </span><span class="jsdoc-var">this.proxyOffsets</span><span class="jsdoc-syntax">[0];
99         </span><span class="jsdoc-var">this.proxyTop.setLeftTop</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">px</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">py</span><span class="jsdoc-syntax">);
100         </span><span class="jsdoc-var">this.proxyTop.show</span><span class="jsdoc-syntax">();
101         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.bottomOffset</span><span class="jsdoc-syntax">){
102             </span><span class="jsdoc-var">this.bottomOffset </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.view.mainHd.getHeight</span><span class="jsdoc-syntax">();
103         }
104         </span><span class="jsdoc-var">this.proxyBottom.setLeftTop</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">px</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">py</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">this.proxyTop.dom.offsetHeight</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">this.bottomOffset</span><span class="jsdoc-syntax">);
105         </span><span class="jsdoc-var">this.proxyBottom.show</span><span class="jsdoc-syntax">();
106         </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">pt</span><span class="jsdoc-syntax">;
107     },
108
109     </span><span class="jsdoc-var">onNodeEnter </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">n</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">dd</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">data</span><span class="jsdoc-syntax">){
110         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">data.header </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-var">n</span><span class="jsdoc-syntax">){
111             </span><span class="jsdoc-var">this.positionIndicator</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">data.header</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">n</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">);
112         }
113     },
114
115     </span><span class="jsdoc-var">onNodeOver </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">n</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">dd</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">data</span><span class="jsdoc-syntax">){
116         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">result </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
117         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">data.header </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-var">n</span><span class="jsdoc-syntax">){
118             </span><span class="jsdoc-var">result </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.positionIndicator</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">data.header</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">n</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">);
119         }
120         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">result</span><span class="jsdoc-syntax">){
121             </span><span class="jsdoc-var">this.proxyTop.hide</span><span class="jsdoc-syntax">();
122             </span><span class="jsdoc-var">this.proxyBottom.hide</span><span class="jsdoc-syntax">();
123         }
124         </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">result </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.dropAllowed </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.dropNotAllowed</span><span class="jsdoc-syntax">;
125     },
126
127     </span><span class="jsdoc-var">onNodeOut </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">n</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">dd</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">data</span><span class="jsdoc-syntax">){
128         </span><span class="jsdoc-var">this.proxyTop.hide</span><span class="jsdoc-syntax">();
129         </span><span class="jsdoc-var">this.proxyBottom.hide</span><span class="jsdoc-syntax">();
130     },
131
132     </span><span class="jsdoc-var">onNodeDrop </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">n</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">dd</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">data</span><span class="jsdoc-syntax">){
133         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">h </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">data.header</span><span class="jsdoc-syntax">;
134         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">h </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-var">n</span><span class="jsdoc-syntax">){
135             </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cm </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.grid.colModel</span><span class="jsdoc-syntax">;
136             </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">x </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.lib.Event.getPageX</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">);
137             </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">r </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.lib.Dom.getRegion</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">n.firstChild</span><span class="jsdoc-syntax">);
138             </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">pt </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-var">r.right </span><span class="jsdoc-syntax">- </span><span class="jsdoc-var">x</span><span class="jsdoc-syntax">) &lt;= ((</span><span class="jsdoc-var">r.right</span><span class="jsdoc-syntax">-</span><span class="jsdoc-var">r.left</span><span class="jsdoc-syntax">)/2) ? </span><span class="jsdoc-string">&quot;after&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;before&quot;</span><span class="jsdoc-syntax">;
139             </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">oldIndex </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.view.getCellIndex</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">);
140             </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">newIndex </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.view.getCellIndex</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">n</span><span class="jsdoc-syntax">);
141             </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">locked </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cm.isLocked</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">newIndex</span><span class="jsdoc-syntax">);
142             </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">pt </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">&quot;after&quot;</span><span class="jsdoc-syntax">){
143                 </span><span class="jsdoc-var">newIndex</span><span class="jsdoc-syntax">++;
144             }
145             </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">oldIndex </span><span class="jsdoc-syntax">&lt; </span><span class="jsdoc-var">newIndex</span><span class="jsdoc-syntax">){
146                 </span><span class="jsdoc-var">newIndex</span><span class="jsdoc-syntax">--;
147             }
148             </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">oldIndex </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">newIndex </span><span class="jsdoc-syntax">&amp;&amp; (</span><span class="jsdoc-var">locked </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">cm.isLocked</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">oldIndex</span><span class="jsdoc-syntax">))){
149                 </span><span class="jsdoc-keyword">return false</span><span class="jsdoc-syntax">;
150             }
151             </span><span class="jsdoc-var">cm.setLocked</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">oldIndex</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">locked</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
152             </span><span class="jsdoc-var">cm.moveColumn</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">oldIndex</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">newIndex</span><span class="jsdoc-syntax">);
153             </span><span class="jsdoc-var">this.grid.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;columnmove&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">oldIndex</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">newIndex</span><span class="jsdoc-syntax">);
154             </span><span class="jsdoc-keyword">return true</span><span class="jsdoc-syntax">;
155         }
156         </span><span class="jsdoc-keyword">return false</span><span class="jsdoc-syntax">;
157     }
158 });
159 </span></code></body></html>