Upgrade to ExtJS 3.1.1 - Released 02/08/2010
[extjs.git] / examples / ux / SlidingPager.js
1 /*!
2  * Ext JS Library 3.1.1
3  * Copyright(c) 2006-2010 Ext JS, LLC
4  * licensing@extjs.com
5  * http://www.extjs.com/license
6  */
7 Ext.ux.SlidingPager = Ext.extend(Object, {\r
8     init : function(pbar){\r
9         var idx = pbar.items.indexOf(pbar.inputItem);\r
10         Ext.each(pbar.items.getRange(idx - 2, idx + 2), function(c){\r
11             c.hide();\r
12         });\r
13         var slider = new Ext.Slider({\r
14             width: 114,\r
15             minValue: 1,\r
16             maxValue: 1,\r
17             plugins: new Ext.ux.SliderTip({\r
18                 getText : function(s){\r
19                     return String.format('Page <b>{0}</b> of <b>{1}</b>', s.value, s.maxValue);\r
20                 }\r
21             }),\r
22             listeners: {\r
23                 changecomplete: function(s, v){\r
24                     pbar.changePage(v);\r
25                 }\r
26             }\r
27         });\r
28         pbar.insert(idx + 1, slider);\r
29         pbar.on({\r
30             change: function(pb, data){\r
31                 slider.setMaxValue(data.pages);\r
32                 slider.setValue(data.activePage);\r
33             }\r
34         });\r
35     }\r
36 });