Upgrade to ExtJS 4.0.0 - Released 04/26/2011
[extjs.git] / examples / ux / SlidingPager.js
index fc8b9ed..2eddccc 100644 (file)
@@ -1,39 +1,54 @@
-/*!
- * Ext JS Library 3.3.1
- * Copyright(c) 2006-2010 Sencha Inc.
- * licensing@sencha.com
- * http://www.sencha.com/license
- */
 /**
- * Plugin for PagingToolbar which replaces the textfield input with a slider 
- */
-Ext.ux.SlidingPager = Ext.extend(Object, {
+* @class Ext.ux.SlidingPager
+* @extends Object
+* Plugin for PagingToolbar which replaces the textfield input with a slider
+* @constructor
+* Create a new ItemSelector
+* @param {Object} config Configuration options
+*/
+Ext.define('Ext.ux.SlidingPager', {
+    extend: 'Object',
+    requires: [
+        'Ext.slider.Single',
+        'Ext.slider.Tip'
+    ],
+
+    constructor : function(config) {
+        if (config) {
+            Ext.apply(this, config);
+        }
+    },
+
     init : function(pbar){
-        var idx = pbar.items.indexOf(pbar.inputItem);
+        var idx = pbar.items.indexOf(pbar.child("#inputItem")),
+            slider;
+
         Ext.each(pbar.items.getRange(idx - 2, idx + 2), function(c){
             c.hide();
         });
-        var slider = new Ext.Slider({
+
+        slider = Ext.create('Ext.slider.Single', {
             width: 114,
             minValue: 1,
             maxValue: 1,
-            plugins: new Ext.slider.Tip({
-                getText : function(thumb) {
-                    return String.format('Page <b>{0}</b> of <b>{1}</b>', thumb.value, thumb.slider.maxValue);
-                }
-            }),
+            hideLabel: true,
+            tipText: function(thumb) {
+                return Ext.String.format('Page <b>{0}</b> of <b>{1}</b>', thumb.value, thumb.slider.maxValue);
+            },
             listeners: {
                 changecomplete: function(s, v){
-                    pbar.changePage(v);
+                    pbar.store.loadPage(v);
                 }
             }
         });
+
         pbar.insert(idx + 1, slider);
+
         pbar.on({
             change: function(pb, data){
-                slider.setMaxValue(data.pages);
-                slider.setValue(data.activePage);
+                slider.setMaxValue(data.pageCount);
+                slider.setValue(data.currentPage);
             }
         });
     }
-});
\ No newline at end of file
+});