Fix #5718 - Change the order / layout of tabs. / new master lists
[roojs1] / docs / src / Roo_bootstrap_PagingToolbar.js.html
1 <html><head><title>/home/edward/gitlive/roojs1/Roo/bootstrap/PagingToolbar.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
12 /**
13  * @class Roo.bootstrap.PagingToolbar
14  * @extends Roo.bootstrap.NavSimplebar
15  * A specialized toolbar that is bound to a {@link Roo.data.Store} and provides automatic paging controls.
16  * @constructor
17  * Create a new PagingToolbar
18  * @param {Object} config The config object
19  * @param {Roo.data.Store} store
20  */
21 </span><span class="jsdoc-var">Roo.bootstrap.PagingToolbar </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">)
22 {
23     </span><span class="jsdoc-comment">// old args format still supported... - xtype is prefered..
24         // created from xtype...
25
26     </span><span class="jsdoc-var">this.ds </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">config.dataSource</span><span class="jsdoc-syntax">;
27
28     </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config.store </span><span class="jsdoc-syntax">&amp;&amp; !</span><span class="jsdoc-var">this.ds</span><span class="jsdoc-syntax">) {
29         </span><span class="jsdoc-var">this.store</span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.factory</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config.store</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.data</span><span class="jsdoc-syntax">);
30         </span><span class="jsdoc-var">this.ds </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.store</span><span class="jsdoc-syntax">;
31         </span><span class="jsdoc-var">this.ds.xmodule </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.xmodule </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
32     }
33
34     </span><span class="jsdoc-var">this.toolbarItems </span><span class="jsdoc-syntax">= [];
35     </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config.items</span><span class="jsdoc-syntax">) {
36         </span><span class="jsdoc-var">this.toolbarItems </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">config.items</span><span class="jsdoc-syntax">;
37     }
38
39     </span><span class="jsdoc-var">Roo.bootstrap.PagingToolbar.superclass.constructor.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">);
40
41     </span><span class="jsdoc-var">this.cursor </span><span class="jsdoc-syntax">= 0;
42
43     </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.ds</span><span class="jsdoc-syntax">) {
44         </span><span class="jsdoc-var">this.bind</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.ds</span><span class="jsdoc-syntax">);
45     }
46
47     </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.bootstrap.version </span><span class="jsdoc-syntax">== 4) {
48         </span><span class="jsdoc-var">this.navgroup </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.bootstrap.ButtonGroup</span><span class="jsdoc-syntax">({ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'pagination' </span><span class="jsdoc-syntax">});
49     } </span><span class="jsdoc-keyword">else </span><span class="jsdoc-syntax">{
50         </span><span class="jsdoc-var">this.navgroup </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.bootstrap.NavGroup</span><span class="jsdoc-syntax">({ </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'pagination' </span><span class="jsdoc-syntax">});
51     }
52
53 };
54
55 </span><span class="jsdoc-var">Roo.extend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.bootstrap.PagingToolbar</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.bootstrap.NavSimplebar</span><span class="jsdoc-syntax">, {
56     </span><span class="jsdoc-comment">/**
57      * @cfg {Roo.data.Store} dataSource
58      * The underlying data store providing the paged data
59      */
60     /**
61      * @cfg {String/HTMLElement/Element} container
62      * container The id or element that will contain the toolbar
63      */
64     /**
65      * @cfg {Boolean} displayInfo
66      * True to display the displayMsg (defaults to false)
67      */
68     /**
69      * @cfg {Number} pageSize
70      * The number of records to display per page (defaults to 20)
71      */
72     </span><span class="jsdoc-var">pageSize</span><span class="jsdoc-syntax">: 20,
73     </span><span class="jsdoc-comment">/**
74      * @cfg {String} displayMsg
75      * The paging status message to display (defaults to &quot;Displaying {start} - {end} of {total}&quot;)
76      */
77     </span><span class="jsdoc-var">displayMsg </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Displaying {0} - {1} of {2}'</span><span class="jsdoc-syntax">,
78     </span><span class="jsdoc-comment">/**
79      * @cfg {String} emptyMsg
80      * The message to display when no records are found (defaults to &quot;No data to display&quot;)
81      */
82     </span><span class="jsdoc-var">emptyMsg </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'No data to display'</span><span class="jsdoc-syntax">,
83     </span><span class="jsdoc-comment">/**
84      * Customizable piece of the default paging text (defaults to &quot;Page&quot;)
85      * @type String
86      */
87     </span><span class="jsdoc-var">beforePageText </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;Page&quot;</span><span class="jsdoc-syntax">,
88     </span><span class="jsdoc-comment">/**
89      * Customizable piece of the default paging text (defaults to &quot;of %0&quot;)
90      * @type String
91      */
92     </span><span class="jsdoc-var">afterPageText </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;of {0}&quot;</span><span class="jsdoc-syntax">,
93     </span><span class="jsdoc-comment">/**
94      * Customizable piece of the default paging text (defaults to &quot;First Page&quot;)
95      * @type String
96      */
97     </span><span class="jsdoc-var">firstText </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;First Page&quot;</span><span class="jsdoc-syntax">,
98     </span><span class="jsdoc-comment">/**
99      * Customizable piece of the default paging text (defaults to &quot;Previous Page&quot;)
100      * @type String
101      */
102     </span><span class="jsdoc-var">prevText </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;Previous Page&quot;</span><span class="jsdoc-syntax">,
103     </span><span class="jsdoc-comment">/**
104      * Customizable piece of the default paging text (defaults to &quot;Next Page&quot;)
105      * @type String
106      */
107     </span><span class="jsdoc-var">nextText </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;Next Page&quot;</span><span class="jsdoc-syntax">,
108     </span><span class="jsdoc-comment">/**
109      * Customizable piece of the default paging text (defaults to &quot;Last Page&quot;)
110      * @type String
111      */
112     </span><span class="jsdoc-var">lastText </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;Last Page&quot;</span><span class="jsdoc-syntax">,
113     </span><span class="jsdoc-comment">/**
114      * Customizable piece of the default paging text (defaults to &quot;Refresh&quot;)
115      * @type String
116      */
117     </span><span class="jsdoc-var">refreshText </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;Refresh&quot;</span><span class="jsdoc-syntax">,
118
119     </span><span class="jsdoc-var">buttons </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
120     </span><span class="jsdoc-comment">// private
121     </span><span class="jsdoc-var">onRender </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ct</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">position</span><span class="jsdoc-syntax">)
122     {
123         </span><span class="jsdoc-var">Roo.bootstrap.PagingToolbar.superclass.onRender.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">ct</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">position</span><span class="jsdoc-syntax">);
124         </span><span class="jsdoc-var">this.navgroup.parentId </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.id</span><span class="jsdoc-syntax">;
125         </span><span class="jsdoc-var">this.navgroup.onRender</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.el</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">null</span><span class="jsdoc-syntax">);
126         </span><span class="jsdoc-comment">// add the buttons to the navgroup
127
128         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.displayInfo</span><span class="jsdoc-syntax">){
129             </span><span class="jsdoc-var">this.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'ul.navbar-nav'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.createChild</span><span class="jsdoc-syntax">({</span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">'x-paging-info'</span><span class="jsdoc-syntax">});
130             </span><span class="jsdoc-var">this.displayEl </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.x-paging-info'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
131 </span><span class="jsdoc-comment">//            var navel = this.navgroup.addItem( { tagtype : 'span', html : '', cls : 'x-paging-info', preventDefault : true } );
132 //            this.displayEl = navel.el.select('span',true).first();
133         </span><span class="jsdoc-syntax">}
134
135         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">_this </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
136
137         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.buttons</span><span class="jsdoc-syntax">){
138             </span><span class="jsdoc-var">Roo.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">_this.buttons</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">){ </span><span class="jsdoc-comment">// this might need to use render????
139                </span><span class="jsdoc-var">Roo.factory</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.render</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">_this.el</span><span class="jsdoc-syntax">);
140             });
141         }
142
143         </span><span class="jsdoc-var">Roo.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">_this.toolbarItems</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">) {
144             </span><span class="jsdoc-var">_this.navgroup.addItem</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">);
145         });
146
147
148         </span><span class="jsdoc-var">this.first </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.navgroup.addItem</span><span class="jsdoc-syntax">({
149             </span><span class="jsdoc-var">tooltip</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.firstText</span><span class="jsdoc-syntax">,
150             </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;prev btn-outline-secondary&quot;</span><span class="jsdoc-syntax">,
151             </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">' &lt;i class=&quot;fa fa-step-backward&quot;&gt;&lt;/i&gt;'</span><span class="jsdoc-syntax">,
152             </span><span class="jsdoc-var">disabled</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
153             </span><span class="jsdoc-var">preventDefault</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
154             </span><span class="jsdoc-var">listeners </span><span class="jsdoc-syntax">: { </span><span class="jsdoc-var">click </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.onClick.createDelegate</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, [</span><span class="jsdoc-string">&quot;first&quot;</span><span class="jsdoc-syntax">]) }
155         });
156
157         </span><span class="jsdoc-var">this.prev </span><span class="jsdoc-syntax">=  </span><span class="jsdoc-var">this.navgroup.addItem</span><span class="jsdoc-syntax">({
158             </span><span class="jsdoc-var">tooltip</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.prevText</span><span class="jsdoc-syntax">,
159             </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;prev btn-outline-secondary&quot;</span><span class="jsdoc-syntax">,
160             </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">' &lt;i class=&quot;fa fa-backward&quot;&gt;&lt;/i&gt;'</span><span class="jsdoc-syntax">,
161             </span><span class="jsdoc-var">disabled</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
162             </span><span class="jsdoc-var">preventDefault</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
163             </span><span class="jsdoc-var">listeners </span><span class="jsdoc-syntax">: { </span><span class="jsdoc-var">click </span><span class="jsdoc-syntax">:  </span><span class="jsdoc-var">this.onClick.createDelegate</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, [</span><span class="jsdoc-string">&quot;prev&quot;</span><span class="jsdoc-syntax">]) }
164         });
165     </span><span class="jsdoc-comment">//this.addSeparator();
166
167
168         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">field </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.navgroup.addItem</span><span class="jsdoc-syntax">( {
169             </span><span class="jsdoc-var">tagtype </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'span'</span><span class="jsdoc-syntax">,
170             </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-paging-position  btn-outline-secondary'</span><span class="jsdoc-syntax">,
171              </span><span class="jsdoc-var">disabled</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
172             </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.beforePageText  </span><span class="jsdoc-syntax">+
173                 </span><span class="jsdoc-string">'&lt;input type=&quot;text&quot; size=&quot;3&quot; value=&quot;1&quot; class=&quot;x-grid-page-number&quot;&gt;' </span><span class="jsdoc-syntax">+
174                 </span><span class="jsdoc-string">'&lt;span class=&quot;x-paging-after&quot;&gt;' </span><span class="jsdoc-syntax">+  </span><span class="jsdoc-var">String.format</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.afterPageText</span><span class="jsdoc-syntax">, 1) + </span><span class="jsdoc-string">'&lt;/span&gt;'
175          </span><span class="jsdoc-syntax">} ); </span><span class="jsdoc-comment">//?? escaped?
176
177         </span><span class="jsdoc-var">this.field </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">field.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'input'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
178         </span><span class="jsdoc-var">this.field.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;keydown&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onPagingKeydown</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
179         </span><span class="jsdoc-var">this.field.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;focus&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){</span><span class="jsdoc-var">this.dom.select</span><span class="jsdoc-syntax">();});
180
181
182         </span><span class="jsdoc-var">this.afterTextEl </span><span class="jsdoc-syntax">=  </span><span class="jsdoc-var">field.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.x-paging-after'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
183         </span><span class="jsdoc-comment">//this.field.setHeight(18);
184         //this.addSeparator();
185         </span><span class="jsdoc-var">this.next </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.navgroup.addItem</span><span class="jsdoc-syntax">({
186             </span><span class="jsdoc-var">tooltip</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.nextText</span><span class="jsdoc-syntax">,
187             </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;next btn-outline-secondary&quot;</span><span class="jsdoc-syntax">,
188             </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">' &lt;i class=&quot;fa fa-forward&quot;&gt;&lt;/i&gt;'</span><span class="jsdoc-syntax">,
189             </span><span class="jsdoc-var">disabled</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
190             </span><span class="jsdoc-var">preventDefault</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
191             </span><span class="jsdoc-var">listeners </span><span class="jsdoc-syntax">: { </span><span class="jsdoc-var">click </span><span class="jsdoc-syntax">:  </span><span class="jsdoc-var">this.onClick.createDelegate</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, [</span><span class="jsdoc-string">&quot;next&quot;</span><span class="jsdoc-syntax">]) }
192         });
193         </span><span class="jsdoc-var">this.last </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.navgroup.addItem</span><span class="jsdoc-syntax">({
194             </span><span class="jsdoc-var">tooltip</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.lastText</span><span class="jsdoc-syntax">,
195             </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">' &lt;i class=&quot;fa fa-step-forward&quot;&gt;&lt;/i&gt;'</span><span class="jsdoc-syntax">,
196             </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;next btn-outline-secondary&quot;</span><span class="jsdoc-syntax">,
197             </span><span class="jsdoc-var">disabled</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
198             </span><span class="jsdoc-var">preventDefault</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
199             </span><span class="jsdoc-var">listeners </span><span class="jsdoc-syntax">: { </span><span class="jsdoc-var">click </span><span class="jsdoc-syntax">:  </span><span class="jsdoc-var">this.onClick.createDelegate</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, [</span><span class="jsdoc-string">&quot;last&quot;</span><span class="jsdoc-syntax">]) }
200         });
201     </span><span class="jsdoc-comment">//this.addSeparator();
202         </span><span class="jsdoc-var">this.loading </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.navgroup.addItem</span><span class="jsdoc-syntax">({
203             </span><span class="jsdoc-var">tooltip</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.refreshText</span><span class="jsdoc-syntax">,
204             </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">&quot;btn-outline-secondary&quot;</span><span class="jsdoc-syntax">,
205             </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">' &lt;i class=&quot;fa fa-refresh&quot;&gt;&lt;/i&gt;'</span><span class="jsdoc-syntax">,
206             </span><span class="jsdoc-var">preventDefault</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
207             </span><span class="jsdoc-var">listeners </span><span class="jsdoc-syntax">: { </span><span class="jsdoc-var">click </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.onClick.createDelegate</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, [</span><span class="jsdoc-string">&quot;refresh&quot;</span><span class="jsdoc-syntax">]) }
208         });
209
210     },
211
212     </span><span class="jsdoc-comment">// private
213     </span><span class="jsdoc-var">updateInfo </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
214         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.displayEl</span><span class="jsdoc-syntax">){
215             </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">count </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.getCount</span><span class="jsdoc-syntax">) == </span><span class="jsdoc-string">'undefined'</span><span class="jsdoc-syntax">) ? </span><span class="jsdoc-var">this.ds.getCount</span><span class="jsdoc-syntax">() : </span><span class="jsdoc-var">this.getCount</span><span class="jsdoc-syntax">();
216             </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">msg </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">count </span><span class="jsdoc-syntax">== 0 ?
217                 </span><span class="jsdoc-var">this.emptyMsg </span><span class="jsdoc-syntax">:
218                 </span><span class="jsdoc-var">String.format</span><span class="jsdoc-syntax">(
219                     </span><span class="jsdoc-var">this.displayMsg</span><span class="jsdoc-syntax">,
220                     </span><span class="jsdoc-var">this.cursor</span><span class="jsdoc-syntax">+1, </span><span class="jsdoc-var">this.cursor</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">count</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.ds.getTotalCount</span><span class="jsdoc-syntax">()
221                 );
222             </span><span class="jsdoc-var">this.displayEl.update</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">msg</span><span class="jsdoc-syntax">);
223         }
224     },
225
226     </span><span class="jsdoc-comment">// private
227     </span><span class="jsdoc-var">onLoad </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ds</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">)
228     {
229         </span><span class="jsdoc-var">this.cursor </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">o.params.start </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">o.params.start </span><span class="jsdoc-syntax">: 0;
230
231         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">d </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.getPageData</span><span class="jsdoc-syntax">(),
232             </span><span class="jsdoc-var">ap </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">d.activePage</span><span class="jsdoc-syntax">,
233             </span><span class="jsdoc-var">ps </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">d.pages</span><span class="jsdoc-syntax">;
234
235
236         </span><span class="jsdoc-var">this.afterTextEl.dom.innerHTML </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">String.format</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.afterPageText</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">d.pages</span><span class="jsdoc-syntax">);
237         </span><span class="jsdoc-var">this.field.dom.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">ap</span><span class="jsdoc-syntax">;
238         </span><span class="jsdoc-var">this.first.setDisabled</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ap </span><span class="jsdoc-syntax">== 1);
239         </span><span class="jsdoc-var">this.prev.setDisabled</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ap </span><span class="jsdoc-syntax">== 1);
240         </span><span class="jsdoc-var">this.next.setDisabled</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ap </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">ps</span><span class="jsdoc-syntax">);
241         </span><span class="jsdoc-var">this.last.setDisabled</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ap </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">ps</span><span class="jsdoc-syntax">);
242         </span><span class="jsdoc-var">this.loading.enable</span><span class="jsdoc-syntax">();
243         </span><span class="jsdoc-var">this.updateInfo</span><span class="jsdoc-syntax">();
244     },
245
246     </span><span class="jsdoc-comment">// private
247     </span><span class="jsdoc-var">getPageData </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
248         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">total </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.ds.getTotalCount</span><span class="jsdoc-syntax">();
249         </span><span class="jsdoc-keyword">return </span><span class="jsdoc-syntax">{
250             </span><span class="jsdoc-var">total </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">total</span><span class="jsdoc-syntax">,
251             </span><span class="jsdoc-var">activePage </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Math.ceil</span><span class="jsdoc-syntax">((</span><span class="jsdoc-var">this.cursor</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">this.pageSize</span><span class="jsdoc-syntax">)/</span><span class="jsdoc-var">this.pageSize</span><span class="jsdoc-syntax">),
252             </span><span class="jsdoc-var">pages </span><span class="jsdoc-syntax">:  </span><span class="jsdoc-var">total </span><span class="jsdoc-syntax">&lt; </span><span class="jsdoc-var">this.pageSize </span><span class="jsdoc-syntax">? 1 : </span><span class="jsdoc-var">Math.ceil</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">total</span><span class="jsdoc-syntax">/</span><span class="jsdoc-var">this.pageSize</span><span class="jsdoc-syntax">)
253         };
254     },
255
256     </span><span class="jsdoc-comment">// private
257     </span><span class="jsdoc-var">onLoadError </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
258         </span><span class="jsdoc-var">this.loading.enable</span><span class="jsdoc-syntax">();
259     },
260
261     </span><span class="jsdoc-comment">// private
262     </span><span class="jsdoc-var">onPagingKeydown </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">){
263         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">e.getKey</span><span class="jsdoc-syntax">();
264         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">d </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.getPageData</span><span class="jsdoc-syntax">();
265         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.RETURN</span><span class="jsdoc-syntax">){
266             </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.field.dom.value</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">pageNum</span><span class="jsdoc-syntax">;
267             </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">isNaN</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">pageNum </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">parseInt</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">, 10))){
268                 </span><span class="jsdoc-var">this.field.dom.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">d.activePage</span><span class="jsdoc-syntax">;
269                 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
270             }
271             </span><span class="jsdoc-var">pageNum </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Math.min</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Math.max</span><span class="jsdoc-syntax">(1, </span><span class="jsdoc-var">pageNum</span><span class="jsdoc-syntax">), </span><span class="jsdoc-var">d.pages</span><span class="jsdoc-syntax">) - 1;
272             </span><span class="jsdoc-var">this.ds.load</span><span class="jsdoc-syntax">({</span><span class="jsdoc-var">params</span><span class="jsdoc-syntax">:{</span><span class="jsdoc-var">start</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">pageNum </span><span class="jsdoc-syntax">* </span><span class="jsdoc-var">this.pageSize</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">limit</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.pageSize</span><span class="jsdoc-syntax">}});
273             </span><span class="jsdoc-var">e.stopEvent</span><span class="jsdoc-syntax">();
274         }
275         </span><span class="jsdoc-keyword">else if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.HOME </span><span class="jsdoc-syntax">|| (</span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.UP </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">e.ctrlKey</span><span class="jsdoc-syntax">) || (</span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.PAGEUP </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">e.ctrlKey</span><span class="jsdoc-syntax">) || (</span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.RIGHT </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">e.ctrlKey</span><span class="jsdoc-syntax">) || </span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.END </span><span class="jsdoc-syntax">|| (</span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.DOWN </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">e.ctrlKey</span><span class="jsdoc-syntax">) || (</span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.LEFT </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">e.ctrlKey</span><span class="jsdoc-syntax">) || (</span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.PAGEDOWN </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">e.ctrlKey</span><span class="jsdoc-syntax">))
276         {
277           </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">pageNum </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.HOME </span><span class="jsdoc-syntax">|| (</span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.DOWN </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">e.ctrlKey</span><span class="jsdoc-syntax">) || (</span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.LEFT </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">e.ctrlKey</span><span class="jsdoc-syntax">) || (</span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.PAGEDOWN </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">e.ctrlKey</span><span class="jsdoc-syntax">)) ? 1 : </span><span class="jsdoc-var">d.pages</span><span class="jsdoc-syntax">;
278           </span><span class="jsdoc-var">this.field.dom.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">pageNum</span><span class="jsdoc-syntax">;
279           </span><span class="jsdoc-var">this.ds.load</span><span class="jsdoc-syntax">({</span><span class="jsdoc-var">params</span><span class="jsdoc-syntax">:{</span><span class="jsdoc-var">start</span><span class="jsdoc-syntax">: (</span><span class="jsdoc-var">pageNum </span><span class="jsdoc-syntax">- 1) * </span><span class="jsdoc-var">this.pageSize</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">limit</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.pageSize</span><span class="jsdoc-syntax">}});
280           </span><span class="jsdoc-var">e.stopEvent</span><span class="jsdoc-syntax">();
281         }
282         </span><span class="jsdoc-keyword">else if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.UP </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.RIGHT </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.PAGEUP </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.DOWN </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.LEFT </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.PAGEDOWN</span><span class="jsdoc-syntax">)
283         {
284           </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.field.dom.value</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">pageNum</span><span class="jsdoc-syntax">;
285           </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">increment </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-var">e.shiftKey</span><span class="jsdoc-syntax">) ? 10 : 1;
286           </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.DOWN </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.LEFT </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">e.PAGEDOWN</span><span class="jsdoc-syntax">) {
287                 </span><span class="jsdoc-var">increment </span><span class="jsdoc-syntax">*= -1;
288           }
289           </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">isNaN</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">pageNum </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">parseInt</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">, 10))) {
290             </span><span class="jsdoc-var">this.field.dom.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">d.activePage</span><span class="jsdoc-syntax">;
291             </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
292           }
293           </span><span class="jsdoc-keyword">else if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">parseInt</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">, 10) + </span><span class="jsdoc-var">increment </span><span class="jsdoc-syntax">&gt;= 1 &amp; </span><span class="jsdoc-var">parseInt</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">, 10) + </span><span class="jsdoc-var">increment </span><span class="jsdoc-syntax">&lt;= </span><span class="jsdoc-var">d.pages</span><span class="jsdoc-syntax">)
294           {
295             </span><span class="jsdoc-var">this.field.dom.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">parseInt</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">, 10) + </span><span class="jsdoc-var">increment</span><span class="jsdoc-syntax">;
296             </span><span class="jsdoc-var">pageNum </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Math.min</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Math.max</span><span class="jsdoc-syntax">(1, </span><span class="jsdoc-var">pageNum </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">increment</span><span class="jsdoc-syntax">), </span><span class="jsdoc-var">d.pages</span><span class="jsdoc-syntax">) - 1;
297             </span><span class="jsdoc-var">this.ds.load</span><span class="jsdoc-syntax">({</span><span class="jsdoc-var">params</span><span class="jsdoc-syntax">:{</span><span class="jsdoc-var">start</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">pageNum </span><span class="jsdoc-syntax">* </span><span class="jsdoc-var">this.pageSize</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">limit</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.pageSize</span><span class="jsdoc-syntax">}});
298           }
299           </span><span class="jsdoc-var">e.stopEvent</span><span class="jsdoc-syntax">();
300         }
301     },
302
303     </span><span class="jsdoc-comment">// private
304     </span><span class="jsdoc-var">beforeLoad </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
305         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.loading</span><span class="jsdoc-syntax">){
306             </span><span class="jsdoc-var">this.loading.disable</span><span class="jsdoc-syntax">();
307         }
308     },
309
310     </span><span class="jsdoc-comment">// private
311     </span><span class="jsdoc-var">onClick </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">which</span><span class="jsdoc-syntax">){
312
313         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ds </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.ds</span><span class="jsdoc-syntax">;
314         </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">ds</span><span class="jsdoc-syntax">) {
315             </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
316         }
317
318         </span><span class="jsdoc-keyword">switch</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">which</span><span class="jsdoc-syntax">){
319             </span><span class="jsdoc-keyword">case </span><span class="jsdoc-string">&quot;first&quot;</span><span class="jsdoc-syntax">:
320                 </span><span class="jsdoc-var">ds.load</span><span class="jsdoc-syntax">({</span><span class="jsdoc-var">params</span><span class="jsdoc-syntax">:{</span><span class="jsdoc-var">start</span><span class="jsdoc-syntax">: 0, </span><span class="jsdoc-var">limit</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.pageSize</span><span class="jsdoc-syntax">}});
321             </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
322             </span><span class="jsdoc-keyword">case </span><span class="jsdoc-string">&quot;prev&quot;</span><span class="jsdoc-syntax">:
323                 </span><span class="jsdoc-var">ds.load</span><span class="jsdoc-syntax">({</span><span class="jsdoc-var">params</span><span class="jsdoc-syntax">:{</span><span class="jsdoc-var">start</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Math.max</span><span class="jsdoc-syntax">(0, </span><span class="jsdoc-var">this.cursor</span><span class="jsdoc-syntax">-</span><span class="jsdoc-var">this.pageSize</span><span class="jsdoc-syntax">), </span><span class="jsdoc-var">limit</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.pageSize</span><span class="jsdoc-syntax">}});
324             </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
325             </span><span class="jsdoc-keyword">case </span><span class="jsdoc-string">&quot;next&quot;</span><span class="jsdoc-syntax">:
326                 </span><span class="jsdoc-var">ds.load</span><span class="jsdoc-syntax">({</span><span class="jsdoc-var">params</span><span class="jsdoc-syntax">:{</span><span class="jsdoc-var">start</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.cursor</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">this.pageSize</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">limit</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.pageSize</span><span class="jsdoc-syntax">}});
327             </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
328             </span><span class="jsdoc-keyword">case </span><span class="jsdoc-string">&quot;last&quot;</span><span class="jsdoc-syntax">:
329                 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">total </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">ds.getTotalCount</span><span class="jsdoc-syntax">();
330                 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">extra </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">total </span><span class="jsdoc-syntax">% </span><span class="jsdoc-var">this.pageSize</span><span class="jsdoc-syntax">;
331                 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">lastStart </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">extra </span><span class="jsdoc-syntax">? (</span><span class="jsdoc-var">total </span><span class="jsdoc-syntax">- </span><span class="jsdoc-var">extra</span><span class="jsdoc-syntax">) : </span><span class="jsdoc-var">total</span><span class="jsdoc-syntax">-</span><span class="jsdoc-var">this.pageSize</span><span class="jsdoc-syntax">;
332                 </span><span class="jsdoc-var">ds.load</span><span class="jsdoc-syntax">({</span><span class="jsdoc-var">params</span><span class="jsdoc-syntax">:{</span><span class="jsdoc-var">start</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">lastStart</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">limit</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.pageSize</span><span class="jsdoc-syntax">}});
333             </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
334             </span><span class="jsdoc-keyword">case </span><span class="jsdoc-string">&quot;refresh&quot;</span><span class="jsdoc-syntax">:
335                 </span><span class="jsdoc-var">ds.load</span><span class="jsdoc-syntax">({</span><span class="jsdoc-var">params</span><span class="jsdoc-syntax">:{</span><span class="jsdoc-var">start</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.cursor</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">limit</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.pageSize</span><span class="jsdoc-syntax">}});
336             </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
337         }
338     },
339
340     </span><span class="jsdoc-comment">/**
341      * Unbinds the paging toolbar from the specified {@link Roo.data.Store}
342      * @param {Roo.data.Store} store The data store to unbind
343      */
344     </span><span class="jsdoc-var">unbind </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ds</span><span class="jsdoc-syntax">){
345         </span><span class="jsdoc-var">ds.un</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;beforeload&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.beforeLoad</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
346         </span><span class="jsdoc-var">ds.un</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;load&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onLoad</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
347         </span><span class="jsdoc-var">ds.un</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;loadexception&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onLoadError</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
348         </span><span class="jsdoc-var">ds.un</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;remove&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.updateInfo</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
349         </span><span class="jsdoc-var">ds.un</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;add&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.updateInfo</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
350         </span><span class="jsdoc-var">this.ds </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">undefined</span><span class="jsdoc-syntax">;
351     },
352
353     </span><span class="jsdoc-comment">/**
354      * Binds the paging toolbar to the specified {@link Roo.data.Store}
355      * @param {Roo.data.Store} store The data store to bind
356      */
357     </span><span class="jsdoc-var">bind </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ds</span><span class="jsdoc-syntax">){
358         </span><span class="jsdoc-var">ds.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;beforeload&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.beforeLoad</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
359         </span><span class="jsdoc-var">ds.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;load&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onLoad</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
360         </span><span class="jsdoc-var">ds.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;loadexception&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onLoadError</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
361         </span><span class="jsdoc-var">ds.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;remove&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.updateInfo</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
362         </span><span class="jsdoc-var">ds.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">&quot;add&quot;</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.updateInfo</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
363         </span><span class="jsdoc-var">this.ds </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">ds</span><span class="jsdoc-syntax">;
364     }
365 });</span></code></body></html>