<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://wbex.ru/index.php?action=history&amp;feed=atom&amp;title=JavaScript_DHTML%2FExt_JS%2FPageable</id>
		<title>JavaScript DHTML/Ext JS/Pageable - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://wbex.ru/index.php?action=history&amp;feed=atom&amp;title=JavaScript_DHTML%2FExt_JS%2FPageable"/>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=JavaScript_DHTML/Ext_JS/Pageable&amp;action=history"/>
		<updated>2026-04-04T15:17:12Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://wbex.ru/index.php?title=JavaScript_DHTML/Ext_JS/Pageable&amp;diff=2328&amp;oldid=prev</id>
		<title> в 09:59, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=JavaScript_DHTML/Ext_JS/Pageable&amp;diff=2328&amp;oldid=prev"/>
				<updated>2010-05-26T09:59:51Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 09:59, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://wbex.ru/index.php?title=JavaScript_DHTML/Ext_JS/Pageable&amp;diff=2329&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=JavaScript_DHTML/Ext_JS/Pageable&amp;diff=2329&amp;oldid=prev"/>
				<updated>2010-05-26T07:21:16Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Combine paging, Ext.Template and a remote data store to create a &amp;quot;live search&amp;quot; feature.==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
/*!&lt;br /&gt;
 * Ext JS Library 3.0.0&lt;br /&gt;
 * Copyright(c) 2006-2009 Ext JS, LLC&lt;br /&gt;
 * licensing@extjs.ru&lt;br /&gt;
 * http://www.extjs.ru/license&lt;br /&gt;
 */&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Hello World Window&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; type=&amp;quot;text/css&amp;quot; href=&amp;quot;ext-3.0.0/resources/css/ext-all.css&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/adapter/ext/ext-base.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/ext-all.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;!-- The box wrap markup embedded instead of using Element.boxWrap() --&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;width:600px;&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;x-box-tl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;x-box-tr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;x-box-tc&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;x-box-ml&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;x-box-mr&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;x-box-mc&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;h3 style=&amp;quot;margin-bottom:5px;&amp;quot;&amp;gt;Search the Ext Forums&amp;lt;/h3&amp;gt;&lt;br /&gt;
        &amp;lt;input type=&amp;quot;text&amp;quot; size=&amp;quot;40&amp;quot; name=&amp;quot;search&amp;quot; id=&amp;quot;search&amp;quot; /&amp;gt;&lt;br /&gt;
        &amp;lt;div style=&amp;quot;padding-top:4px;&amp;quot;&amp;gt;&lt;br /&gt;
            Live search requires a minimum of 4 characters.&lt;br /&gt;
        &amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;x-box-bl&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;x-box-br&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;x-box-bc&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;!-- Revised from demo code in ext3.0.0 --&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
/*!&lt;br /&gt;
 * Ext JS Library 3.0.0&lt;br /&gt;
 * Copyright(c) 2006-2009 Ext JS, LLC&lt;br /&gt;
 * licensing@extjs.ru&lt;br /&gt;
 * http://www.extjs.ru/license&lt;br /&gt;
 */&lt;br /&gt;
Ext.onReady(function(){&lt;br /&gt;
    var ds = new Ext.data.Store({&lt;br /&gt;
        proxy: new Ext.data.ScriptTagProxy({&lt;br /&gt;
            url: &amp;quot;http://extjs.ru/forum/topics-remote.php&amp;quot;&lt;br /&gt;
        }),&lt;br /&gt;
        reader: new Ext.data.JsonReader({&lt;br /&gt;
            root: &amp;quot;topics&amp;quot;,&lt;br /&gt;
            totalProperty: &amp;quot;totalCount&amp;quot;,&lt;br /&gt;
            id: &amp;quot;post_id&amp;quot;&lt;br /&gt;
        }, [&lt;br /&gt;
            {name: &amp;quot;title&amp;quot;, mapping: &amp;quot;topic_title&amp;quot;},&lt;br /&gt;
            {name: &amp;quot;topicId&amp;quot;, mapping: &amp;quot;topic_id&amp;quot;},&lt;br /&gt;
            {name: &amp;quot;author&amp;quot;, mapping: &amp;quot;author&amp;quot;},&lt;br /&gt;
            {name: &amp;quot;lastPost&amp;quot;, mapping: &amp;quot;post_time&amp;quot;, type: &amp;quot;date&amp;quot;, dateFormat: &amp;quot;timestamp&amp;quot;},&lt;br /&gt;
            {name: &amp;quot;excerpt&amp;quot;, mapping: &amp;quot;post_text&amp;quot;}&lt;br /&gt;
        ])&lt;br /&gt;
    });&lt;br /&gt;
    // Custom rendering Template&lt;br /&gt;
    var resultTpl = new Ext.XTemplate(&lt;br /&gt;
        &amp;quot;&amp;lt;tpl for=&amp;quot;.&amp;quot;&amp;gt;&amp;lt;div class=&amp;quot;search-item&amp;quot;&amp;gt;&amp;quot;,&lt;br /&gt;
            &amp;quot;&amp;lt;h3&amp;gt;&amp;lt;span&amp;gt;{lastPost:date(&amp;quot;M j, Y&amp;quot;)}&amp;lt;br /&amp;gt;by {author}&amp;lt;/span&amp;gt;{title}&amp;lt;/h3&amp;gt;&amp;quot;,&lt;br /&gt;
            &amp;quot;{excerpt}&amp;quot;,&lt;br /&gt;
        &amp;quot;&amp;lt;/div&amp;gt;&amp;lt;/tpl&amp;gt;&amp;quot;&lt;br /&gt;
    );&lt;br /&gt;
    &lt;br /&gt;
    var search = new Ext.form.ruboBox({&lt;br /&gt;
        store: ds,&lt;br /&gt;
        displayField:&amp;quot;title&amp;quot;,&lt;br /&gt;
        typeAhead: false,&lt;br /&gt;
        loadingText: &amp;quot;Searching...&amp;quot;,&lt;br /&gt;
        width: 570,&lt;br /&gt;
        pageSize:10,&lt;br /&gt;
        hideTrigger:true,&lt;br /&gt;
        tpl: resultTpl,&lt;br /&gt;
        applyTo: &amp;quot;search&amp;quot;,&lt;br /&gt;
        itemSelector: &amp;quot;div.search-item&amp;quot;,&lt;br /&gt;
        onSelect: function(record){ // override default onSelect to do redirect&lt;br /&gt;
            window.location =&lt;br /&gt;
                String.format(&amp;quot;http://extjs.ru/forum/showthread.php?t={0}&amp;amp;p={1}&amp;quot;, record.data.topicId, record.id);&lt;br /&gt;
        }&lt;br /&gt;
    });&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/script&amp;gt; &lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Create a grid with paging==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
/*!&lt;br /&gt;
 * Ext JS Library 3.0.0&lt;br /&gt;
 * Copyright(c) 2006-2009 Ext JS, LLC&lt;br /&gt;
 * licensing@extjs.ru&lt;br /&gt;
 * http://www.extjs.ru/license&lt;br /&gt;
 */&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Hello World Window&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; type=&amp;quot;text/css&amp;quot; href=&amp;quot;ext-3.0.0/resources/css/ext-all.css&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/adapter/ext/ext-base.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/ext-all.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;!-- Revised from demo code in ext3.0.0 --&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
/*!&lt;br /&gt;
 * Ext JS Library 3.0.0&lt;br /&gt;
 * Copyright(c) 2006-2009 Ext JS, LLC&lt;br /&gt;
 * licensing@extjs.ru&lt;br /&gt;
 * http://www.extjs.ru/license&lt;br /&gt;
 */&lt;br /&gt;
Ext.onReady(function(){&lt;br /&gt;
    // create the Data Store&lt;br /&gt;
    var store = new Ext.data.JsonStore({&lt;br /&gt;
        root: &amp;quot;topics&amp;quot;,&lt;br /&gt;
        totalProperty: &amp;quot;totalCount&amp;quot;,&lt;br /&gt;
        idProperty: &amp;quot;threadid&amp;quot;,&lt;br /&gt;
        remoteSort: true,&lt;br /&gt;
        fields: [&lt;br /&gt;
            &amp;quot;title&amp;quot;, &amp;quot;forumtitle&amp;quot;, &amp;quot;forumid&amp;quot;, &amp;quot;author&amp;quot;,&lt;br /&gt;
            {name: &amp;quot;replycount&amp;quot;, type: &amp;quot;int&amp;quot;},&lt;br /&gt;
            {name: &amp;quot;lastpost&amp;quot;, mapping: &amp;quot;lastpost&amp;quot;, type: &amp;quot;date&amp;quot;, dateFormat: &amp;quot;timestamp&amp;quot;},&lt;br /&gt;
            &amp;quot;lastposter&amp;quot;, &amp;quot;excerpt&amp;quot;&lt;br /&gt;
        ],&lt;br /&gt;
        // load using script tags for cross domain, if the data in on the same domain as&lt;br /&gt;
        // this page, an HttpProxy would be better&lt;br /&gt;
        proxy: new Ext.data.ScriptTagProxy({&lt;br /&gt;
            url: &amp;quot;http://extjs.ru/forum/topics-browse-remote.php&amp;quot;&lt;br /&gt;
        })&lt;br /&gt;
    });&lt;br /&gt;
    store.setDefaultSort(&amp;quot;lastpost&amp;quot;, &amp;quot;desc&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
    // pluggable renders&lt;br /&gt;
    function renderTopic(value, p, record){&lt;br /&gt;
        return String.format(&lt;br /&gt;
                &amp;quot;&amp;lt;b&amp;gt;&amp;lt;a href=&amp;quot;http://extjs.ru/forum/showthread.php?t={2}&amp;quot; target=&amp;quot;_blank&amp;quot;&amp;gt;{0}&amp;lt;/a&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;a href=&amp;quot;http://extjs.ru/forum/forumdisplay.php?f={3}&amp;quot; target=&amp;quot;_blank&amp;quot;&amp;gt;{1} Forum&amp;lt;/a&amp;gt;&amp;quot;,&lt;br /&gt;
                value, record.data.forumtitle, record.id, record.data.forumid);&lt;br /&gt;
    }&lt;br /&gt;
    function renderLast(value, p, r){&lt;br /&gt;
        return String.format(&amp;quot;{0}&amp;lt;br/&amp;gt;by {1}&amp;quot;, value.dateFormat(&amp;quot;M j, Y, g:i a&amp;quot;), r.data[&amp;quot;lastposter&amp;quot;]);&lt;br /&gt;
    }&lt;br /&gt;
    var grid = new Ext.grid.GridPanel({&lt;br /&gt;
        width:700,&lt;br /&gt;
        height:500,&lt;br /&gt;
        title:&amp;quot;ExtJS.ru - Browse Forums&amp;quot;,&lt;br /&gt;
        store: store,&lt;br /&gt;
        trackMouseOver:false,&lt;br /&gt;
        disableSelection:true,&lt;br /&gt;
        loadMask: true,&lt;br /&gt;
        // grid columns&lt;br /&gt;
        columns:[{&lt;br /&gt;
            id: &amp;quot;topic&amp;quot;, // id assigned so we can apply custom css (e.g. .x-grid-col-topic b { color:#333 })&lt;br /&gt;
            header: &amp;quot;Topic&amp;quot;,&lt;br /&gt;
            dataIndex: &amp;quot;title&amp;quot;,&lt;br /&gt;
            width: 420,&lt;br /&gt;
            renderer: renderTopic,&lt;br /&gt;
            sortable: true&lt;br /&gt;
        },{&lt;br /&gt;
            header: &amp;quot;Author&amp;quot;,&lt;br /&gt;
            dataIndex: &amp;quot;author&amp;quot;,&lt;br /&gt;
            width: 100,&lt;br /&gt;
            hidden: true,&lt;br /&gt;
            sortable: true&lt;br /&gt;
        },{&lt;br /&gt;
            header: &amp;quot;Replies&amp;quot;,&lt;br /&gt;
            dataIndex: &amp;quot;replycount&amp;quot;,&lt;br /&gt;
            width: 70,&lt;br /&gt;
            align: &amp;quot;right&amp;quot;,&lt;br /&gt;
            sortable: true&lt;br /&gt;
        },{&lt;br /&gt;
            id: &amp;quot;last&amp;quot;,&lt;br /&gt;
            header: &amp;quot;Last Post&amp;quot;,&lt;br /&gt;
            dataIndex: &amp;quot;lastpost&amp;quot;,&lt;br /&gt;
            width: 150,&lt;br /&gt;
            renderer: renderLast,&lt;br /&gt;
            sortable: true&lt;br /&gt;
        }],&lt;br /&gt;
        // customize view config&lt;br /&gt;
        viewConfig: {&lt;br /&gt;
            forceFit:true,&lt;br /&gt;
            enableRowBody:true,&lt;br /&gt;
            showPreview:true,&lt;br /&gt;
            getRowClass : function(record, rowIndex, p, store){&lt;br /&gt;
                if(this.showPreview){&lt;br /&gt;
                    p.body = &amp;quot;&amp;lt;p&amp;gt;&amp;quot;+record.data.excerpt+&amp;quot;&amp;lt;/p&amp;gt;&amp;quot;;&lt;br /&gt;
                    return &amp;quot;x-grid3-row-expanded&amp;quot;;&lt;br /&gt;
                }&lt;br /&gt;
                return &amp;quot;x-grid3-row-collapsed&amp;quot;;&lt;br /&gt;
            }&lt;br /&gt;
        },&lt;br /&gt;
        // paging bar on the bottom&lt;br /&gt;
        bbar: new Ext.PagingToolbar({&lt;br /&gt;
            pageSize: 25,&lt;br /&gt;
            store: store,&lt;br /&gt;
            displayInfo: true,&lt;br /&gt;
            displayMsg: &amp;quot;Displaying topics {0} - {1} of {2}&amp;quot;,&lt;br /&gt;
            emptyMsg: &amp;quot;No topics to display&amp;quot;,&lt;br /&gt;
            items:[&lt;br /&gt;
                &amp;quot;-&amp;quot;, {&lt;br /&gt;
                pressed: true,&lt;br /&gt;
                enableToggle:true,&lt;br /&gt;
                text: &amp;quot;Show Preview&amp;quot;,&lt;br /&gt;
                cls: &amp;quot;x-btn-text-icon details&amp;quot;,&lt;br /&gt;
                toggleHandler: function(btn, pressed){&lt;br /&gt;
                    var view = grid.getView();&lt;br /&gt;
                    view.showPreview = pressed;&lt;br /&gt;
                    view.refresh();&lt;br /&gt;
                }&lt;br /&gt;
            }]&lt;br /&gt;
        })&lt;br /&gt;
    });&lt;br /&gt;
    // render it&lt;br /&gt;
    grid.render(&amp;quot;topic-grid&amp;quot;);&lt;br /&gt;
    // trigger the data store load&lt;br /&gt;
    store.load({params:{start:0, limit:25}});&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;topic-grid&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Pageable table==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
/*!&lt;br /&gt;
 * Ext JS Library 3.0.0&lt;br /&gt;
 * Copyright(c) 2006-2009 Ext JS, LLC&lt;br /&gt;
 * licensing@extjs.ru&lt;br /&gt;
 * http://www.extjs.ru/license&lt;br /&gt;
 */&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Hello World Window&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; type=&amp;quot;text/css&amp;quot; href=&amp;quot;ext-3.0.0/resources/css/ext-all.css&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/adapter/ext/ext-base.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/ext-all.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;!-- Revised from demo code from ext3.0.0 --&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
/*!&lt;br /&gt;
 * Ext JS Library 3.0.0&lt;br /&gt;
 * Copyright(c) 2006-2009 Ext JS, LLC&lt;br /&gt;
 * licensing@extjs.ru&lt;br /&gt;
 * http://www.extjs.ru/license&lt;br /&gt;
 */&lt;br /&gt;
// A DropZone which cooperates with DragZones whose dragData contains&lt;br /&gt;
// a &amp;quot;field&amp;quot; property representing a form Field. Fields may be dropped onto&lt;br /&gt;
// grid data cells containing a matching data type.&lt;br /&gt;
Ext.ux.CellFieldDropZone = Ext.extend(Ext.dd.DropZone, {&lt;br /&gt;
    constructor: function(){},&lt;br /&gt;
//  Call the DropZone constructor using the View&amp;quot;s scrolling element&lt;br /&gt;
//  only after the grid has been rendered.&lt;br /&gt;
    init: function(grid) {&lt;br /&gt;
        if (grid.rendered) {&lt;br /&gt;
            this.grid = grid;&lt;br /&gt;
            this.view = grid.getView();&lt;br /&gt;
            this.store = grid.getStore();&lt;br /&gt;
            Ext.ux.CellFieldDropZone.superclass.constructor.call(this, this.view.scroller);&lt;br /&gt;
        } else {&lt;br /&gt;
            grid.on(&amp;quot;render&amp;quot;, this.init, this);&lt;br /&gt;
        }&lt;br /&gt;
    },&lt;br /&gt;
//  Scroll the main configured Element when we drag close to the edge&lt;br /&gt;
    containerScroll: true,&lt;br /&gt;
    getTargetFromEvent: function(e) {&lt;br /&gt;
//      Ascertain whether the mousemove is within a grid cell&lt;br /&gt;
        var t = e.getTarget(this.view.cellSelector);&lt;br /&gt;
        if (t) {&lt;br /&gt;
//          We *are* within a grid cell, so ask the View exactly which one,&lt;br /&gt;
//          Extract data from the Model to create a target object for&lt;br /&gt;
//          processing in subsequent onNodeXXXX methods. Note that the target does&lt;br /&gt;
//          not have to be a DOM element. It can be whatever the noNodeXXX methods are&lt;br /&gt;
//          programmed to expect.&lt;br /&gt;
            var rowIndex = this.view.findRowIndex(t);&lt;br /&gt;
            var columnIndex = this.view.findCellIndex(t);&lt;br /&gt;
            if ((rowIndex !== false) &amp;amp;&amp;amp; (columnIndex !== false)) {&lt;br /&gt;
                return {&lt;br /&gt;
                    node: t,&lt;br /&gt;
                    record: this.store.getAt(rowIndex),&lt;br /&gt;
                    fieldName: this.grid.getColumnModel().getDataIndex(columnIndex)&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    },&lt;br /&gt;
//  On Node enter, see if it is valid for us to drop the field on that type of column.&lt;br /&gt;
    onNodeEnter: function(target, dd, e, dragData) {&lt;br /&gt;
        delete this.dropOK;&lt;br /&gt;
        if (!target) {&lt;br /&gt;
            return;&lt;br /&gt;
        }&lt;br /&gt;
//      Check that a field is being dragged.&lt;br /&gt;
        var f = dragData.field;&lt;br /&gt;
        if (!f) {&lt;br /&gt;
            return;&lt;br /&gt;
        }&lt;br /&gt;
//      Check whether the data type of the column being dropped on accepts the&lt;br /&gt;
//      dragged field type. If so, set dropOK flag, and highlight the target node.&lt;br /&gt;
        var type = target.record.fields.get(target.fieldName).type;&lt;br /&gt;
        switch (type) {&lt;br /&gt;
            case &amp;quot;float&amp;quot;:&lt;br /&gt;
            case &amp;quot;int&amp;quot;:&lt;br /&gt;
                if (!f.isXType(&amp;quot;numberfield&amp;quot;)) {&lt;br /&gt;
                    return;&lt;br /&gt;
                }&lt;br /&gt;
                break;&lt;br /&gt;
            case &amp;quot;date&amp;quot;:&lt;br /&gt;
                if (!f.isXType(&amp;quot;datefield&amp;quot;)) {&lt;br /&gt;
                    return;&lt;br /&gt;
                }&lt;br /&gt;
                break;&lt;br /&gt;
            case &amp;quot;boolean&amp;quot;:&lt;br /&gt;
                if (!f.isXType(&amp;quot;checkbox&amp;quot;)) {&lt;br /&gt;
                    return;&lt;br /&gt;
                }&lt;br /&gt;
        }&lt;br /&gt;
        this.dropOK = true;&lt;br /&gt;
        Ext.fly(target.node).addClass(&amp;quot;x-drop-target-active&amp;quot;);&lt;br /&gt;
    },&lt;br /&gt;
//  Return the class name to add to the drag proxy. This provides a visual indication&lt;br /&gt;
//  of drop allowed or not allowed.&lt;br /&gt;
    onNodeOver: function(target, dd, e, dragData) {&lt;br /&gt;
        return this.dropOK ? this.dropAllowed : this.dropNotAllowed;&lt;br /&gt;
    },&lt;br /&gt;
//   nhighlight the target node.&lt;br /&gt;
    onNodeOut: function(target, dd, e, dragData) {&lt;br /&gt;
        Ext.fly(target.node).removeClass(&amp;quot;x-drop-target-active&amp;quot;);&lt;br /&gt;
    },&lt;br /&gt;
//  Process the drop event if we have previously ascertained that a drop is OK.&lt;br /&gt;
    onNodeDrop: function(target, dd, e, dragData) {&lt;br /&gt;
        if (this.dropOK) {&lt;br /&gt;
            target.record.set(target.fieldName, dragData.field.getValue());&lt;br /&gt;
            return true;&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
});&lt;br /&gt;
//  A class which makes Fields within a Panel draggable.&lt;br /&gt;
//  the dragData delivered to a coooperating DropZone&amp;quot;s methods contains&lt;br /&gt;
//  the dragged Field in the property &amp;quot;field&amp;quot;.&lt;br /&gt;
Ext.ux.PanelFieldDragZone = Ext.extend(Ext.dd.DragZone, {&lt;br /&gt;
    constructor: function(){},&lt;br /&gt;
//  Call the DRagZone&amp;quot;s constructor. The Panel must have been rendered.&lt;br /&gt;
    init: function(panel) {&lt;br /&gt;
        if (panel.nodeType) {&lt;br /&gt;
            Ext.ux.PanelFieldDragZone.superclass.init.apply(this, arguments);&lt;br /&gt;
        } else {&lt;br /&gt;
            if (panel.rendered) {&lt;br /&gt;
                Ext.ux.PanelFieldDragZone.superclass.constructor.call(this, panel.getEl());&lt;br /&gt;
                var i = Ext.fly(panel.getEl()).select(&amp;quot;input&amp;quot;);&lt;br /&gt;
                i.unselectable();&lt;br /&gt;
            } else {&lt;br /&gt;
                panel.on(&amp;quot;afterlayout&amp;quot;, this.init, this, {single: true});&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    },&lt;br /&gt;
    scroll: false,&lt;br /&gt;
//  On mousedown, we ascertain whether it is on one of our draggable Fields.&lt;br /&gt;
//  If so, we collect data about the draggable object, and return a drag data&lt;br /&gt;
//  object which contains our own data, plus a &amp;quot;ddel&amp;quot; property which is a DOM&lt;br /&gt;
//  node which provides a &amp;quot;view&amp;quot; of the dragged data.&lt;br /&gt;
    getDragData: function(e) {&lt;br /&gt;
        var t = e.getTarget(&amp;quot;input&amp;quot;);&lt;br /&gt;
        if (t) {&lt;br /&gt;
            e.stopEvent();&lt;br /&gt;
//          Ugly code to &amp;quot;detach&amp;quot; the drag gesture from the input field.&lt;br /&gt;
//          Without this, Opera never changes the mouseover target from the input field&lt;br /&gt;
//          even when dragging outside of the field - it just keeps selecting.&lt;br /&gt;
            if (Ext.isOpera) {&lt;br /&gt;
                Ext.fly(t).on(&amp;quot;mousemove&amp;quot;, function(e1){&lt;br /&gt;
                    t.style.visibility = &amp;quot;hidden&amp;quot;;&lt;br /&gt;
                    (function(){&lt;br /&gt;
                        t.style.visibility = &amp;quot;&amp;quot;;&lt;br /&gt;
                    }).defer(1);&lt;br /&gt;
                }, null, {single:true});&lt;br /&gt;
            }&lt;br /&gt;
//          Get the data we are dragging: the Field&lt;br /&gt;
//          create a ddel for the drag proxy to display&lt;br /&gt;
            var f = Ext.getCmp(t.id);&lt;br /&gt;
            var d = document.createElement(&amp;quot;div&amp;quot;);&lt;br /&gt;
            d.className = &amp;quot;x-form-text&amp;quot;;&lt;br /&gt;
            d.appendChild(document.createTextNode(t.value));&lt;br /&gt;
            Ext.fly(d).setWidth(f.getEl().getWidth());&lt;br /&gt;
            return {&lt;br /&gt;
                field: f,&lt;br /&gt;
                ddel: d&lt;br /&gt;
            };&lt;br /&gt;
        }&lt;br /&gt;
    },&lt;br /&gt;
//  The coordinates to slide the drag proxy back to on failed drop.&lt;br /&gt;
    getRepairXY: function() {&lt;br /&gt;
        return this.dragData.field.getEl().getXY();&lt;br /&gt;
    }&lt;br /&gt;
});&lt;br /&gt;
Ext.onReady(function(){&lt;br /&gt;
    var myData = [&lt;br /&gt;
        [&amp;quot;3m Co&amp;quot;,71.72,0.02,0.03,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Alcoa Inc&amp;quot;,29.01,0.42,1.47,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Altria Group Inc&amp;quot;,83.81,0.28,0.34,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;American Express Company&amp;quot;,52.55,0.01,0.02,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;American International Group, Inc.&amp;quot;,64.13,0.31,0.49,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;AT&amp;amp;T Inc.&amp;quot;,31.61,-0.48,-1.54,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Boeing Co.&amp;quot;,75.43,0.53,0.71,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Caterpillar Inc.&amp;quot;,67.27,0.92,1.39,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Citigroup, Inc.&amp;quot;,49.37,0.02,0.04,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;E.I. du Pont de Nemours and Company&amp;quot;,40.48,0.51,1.28,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Exxon Mobil Corp&amp;quot;,68.1,-0.43,-0.64,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;General Electric Company&amp;quot;,34.14,-0.08,-0.23,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;General Motors Corporation&amp;quot;,30.27,1.09,3.74,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Hewlett-Packard Co.&amp;quot;,36.53,-0.03,-0.08,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Honeywell Intl Inc&amp;quot;,38.77,0.05,0.13,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Intel Corporation&amp;quot;,19.88,0.31,1.58,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;International Business Machines&amp;quot;,81.41,0.44,0.54,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Johnson &amp;amp; Johnson&amp;quot;,64.72,0.06,0.09,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;JP Morgan &amp;amp; Chase &amp;amp; Co&amp;quot;,45.73,0.07,0.15,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;McDonald\&amp;quot;s Corporation&amp;quot;,36.76,0.86,2.40,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Merck &amp;amp; Co., Inc.&amp;quot;,40.96,0.41,1.01,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Microsoft Corporation&amp;quot;,25.84,0.14,0.54,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Pfizer Inc&amp;quot;,27.96,0.4,1.45,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;The Coca-Cola Company&amp;quot;,45.07,0.26,0.58,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;The Home Depot, Inc.&amp;quot;,34.64,0.35,1.02,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;The Procter &amp;amp; Gamble Company&amp;quot;,61.91,0.01,0.02,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;United Technologies Corporation&amp;quot;,63.26,0.55,0.88,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Verizon Communications&amp;quot;,35.57,0.39,1.11,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Wal-Mart Stores, Inc.&amp;quot;,45.45,0.73,1.63,&amp;quot;9/1 12:00am&amp;quot;]&lt;br /&gt;
    ];&lt;br /&gt;
    // example of custom renderer function&lt;br /&gt;
    function change(val){&lt;br /&gt;
        if(val &amp;gt; 0){&lt;br /&gt;
            return &amp;quot;&amp;lt;span style=&amp;quot;color:green;&amp;quot;&amp;gt;&amp;quot; + val + &amp;quot;&amp;lt;/span&amp;gt;&amp;quot;;&lt;br /&gt;
        }else if(val &amp;lt; 0){&lt;br /&gt;
            return &amp;quot;&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;quot; + val + &amp;quot;&amp;lt;/span&amp;gt;&amp;quot;;&lt;br /&gt;
        }&lt;br /&gt;
        return val;&lt;br /&gt;
    }&lt;br /&gt;
    // example of custom renderer function&lt;br /&gt;
    function pctChange(val){&lt;br /&gt;
        if(val &amp;gt; 0){&lt;br /&gt;
            return &amp;quot;&amp;lt;span style=&amp;quot;color:green;&amp;quot;&amp;gt;&amp;quot; + val + &amp;quot;%&amp;lt;/span&amp;gt;&amp;quot;;&lt;br /&gt;
        }else if(val &amp;lt; 0){&lt;br /&gt;
            return &amp;quot;&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;quot; + val + &amp;quot;%&amp;lt;/span&amp;gt;&amp;quot;;&lt;br /&gt;
        }&lt;br /&gt;
        return val;&lt;br /&gt;
    }&lt;br /&gt;
    // create the data store&lt;br /&gt;
    var store = new Ext.data.ArrayStore({&lt;br /&gt;
        fields: [&lt;br /&gt;
           {name: &amp;quot;company&amp;quot;},&lt;br /&gt;
           {name: &amp;quot;price&amp;quot;, type: &amp;quot;float&amp;quot;},&lt;br /&gt;
           {name: &amp;quot;change&amp;quot;, type: &amp;quot;float&amp;quot;},&lt;br /&gt;
           {name: &amp;quot;pctChange&amp;quot;, type: &amp;quot;float&amp;quot;},&lt;br /&gt;
           {name: &amp;quot;lastChange&amp;quot;, type: &amp;quot;date&amp;quot;, dateFormat: &amp;quot;n/j h:ia&amp;quot;}&lt;br /&gt;
        ]&lt;br /&gt;
    });&lt;br /&gt;
    store.loadData(myData);&lt;br /&gt;
    &lt;br /&gt;
    var helpWindow = new Ext.Window({&lt;br /&gt;
        title: &amp;quot;Source code&amp;quot;,&lt;br /&gt;
        width: 920,&lt;br /&gt;
        height: 500,&lt;br /&gt;
        closeAction: &amp;quot;hide&amp;quot;,&lt;br /&gt;
        bodyCfg: {tag: &amp;quot;textarea&amp;quot;, readonly: true},&lt;br /&gt;
        bodyStyle: {&lt;br /&gt;
            backgroundColor: &amp;quot;white&amp;quot;,&lt;br /&gt;
            margin: &amp;quot;0px&amp;quot;,&lt;br /&gt;
            border: &amp;quot;0px none&amp;quot;&lt;br /&gt;
        },&lt;br /&gt;
        listeners: {&lt;br /&gt;
            render: function(w) {&lt;br /&gt;
                Ext.Ajax.request({&lt;br /&gt;
                    url: &amp;quot;field-to-grid-dd.js&amp;quot;,&lt;br /&gt;
                    success: function(r) {&lt;br /&gt;
                        w.body.dom.value = r.responseText;&lt;br /&gt;
                    }&lt;br /&gt;
                });&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    });&lt;br /&gt;
    // create the Grid&lt;br /&gt;
    var grid = new Ext.grid.GridPanel({&lt;br /&gt;
        store: store,&lt;br /&gt;
        columns: [&lt;br /&gt;
            {id:&amp;quot;company&amp;quot;,header: &amp;quot;Company&amp;quot;, width: 160, sortable: true, dataIndex: &amp;quot;company&amp;quot;},&lt;br /&gt;
            {header: &amp;quot;Price&amp;quot;, width: 75, sortable: true, renderer: &amp;quot;usMoney&amp;quot;, dataIndex: &amp;quot;price&amp;quot;},&lt;br /&gt;
            {header: &amp;quot;Change&amp;quot;, width: 75, sortable: true, renderer: change, dataIndex: &amp;quot;change&amp;quot;},&lt;br /&gt;
            {header: &amp;quot;% Change&amp;quot;, width: 75, sortable: true, renderer: pctChange, dataIndex: &amp;quot;pctChange&amp;quot;},&lt;br /&gt;
            {header: &amp;quot;Last Updated&amp;quot;, width: 85, sortable: true, renderer: Ext.util.Format.dateRenderer(&amp;quot;m/d/Y&amp;quot;), dataIndex: &amp;quot;lastChange&amp;quot;}&lt;br /&gt;
        ],&lt;br /&gt;
        plugins: new Ext.ux.CellFieldDropZone(),&lt;br /&gt;
        stripeRows: true,&lt;br /&gt;
        autoExpandColumn: &amp;quot;company&amp;quot;,&lt;br /&gt;
        height:350,&lt;br /&gt;
        width:600,&lt;br /&gt;
        title:&amp;quot;Array Grid&amp;quot;,&lt;br /&gt;
        bbar: new Ext.PagingToolbar({&lt;br /&gt;
            buttons: [{&lt;br /&gt;
                text: &amp;quot;View Source&amp;quot;,&lt;br /&gt;
                handler: function() {&lt;br /&gt;
                    helpWindow.show();&lt;br /&gt;
                }&lt;br /&gt;
            }],&lt;br /&gt;
            store: store,&lt;br /&gt;
            pageSize: 25&lt;br /&gt;
        })&lt;br /&gt;
    });&lt;br /&gt;
    grid.render(&amp;quot;grid-example&amp;quot;);&lt;br /&gt;
    grid.getSelectionModel().selectFirstRow();&lt;br /&gt;
    var f = new Ext.Panel({&lt;br /&gt;
        frame: true,&lt;br /&gt;
        layout: &amp;quot;form&amp;quot;,&lt;br /&gt;
        width: 600,&lt;br /&gt;
        plugins: new Ext.ux.PanelFieldDragZone(),&lt;br /&gt;
        style: {&lt;br /&gt;
            &amp;quot;margin-top&amp;quot;: &amp;quot;10px&amp;quot;&lt;br /&gt;
        },&lt;br /&gt;
        labelWidth: 150,&lt;br /&gt;
        items: [{&lt;br /&gt;
            xtype: &amp;quot;textfield&amp;quot;,&lt;br /&gt;
            fieldLabel: &amp;quot;Drag this text&amp;quot;,&lt;br /&gt;
            value: &amp;quot;test&amp;quot;&lt;br /&gt;
        },{&lt;br /&gt;
            xtype: &amp;quot;numberfield&amp;quot;,&lt;br /&gt;
            fieldLabel: &amp;quot;Drag this number&amp;quot;,&lt;br /&gt;
            value: &amp;quot;1.2&amp;quot;&lt;br /&gt;
        },{&lt;br /&gt;
            xtype: &amp;quot;datefield&amp;quot;,&lt;br /&gt;
            fieldLabel: &amp;quot;Drag this date&amp;quot;,&lt;br /&gt;
            value: new Date()&lt;br /&gt;
        }],&lt;br /&gt;
        renderTo: Ext.getBody()&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/script&amp;gt; &lt;br /&gt;
&amp;lt;div id=&amp;quot;grid-example&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Progress Bar Pager Extension==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
/*!&lt;br /&gt;
 * Ext JS Library 3.0.0&lt;br /&gt;
 * Copyright(c) 2006-2009 Ext JS, LLC&lt;br /&gt;
 * licensing@extjs.ru&lt;br /&gt;
 * http://www.extjs.ru/license&lt;br /&gt;
 */&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Hello World Window&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; type=&amp;quot;text/css&amp;quot; href=&amp;quot;ext-3.0.0/resources/css/ext-all.css&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/adapter/ext/ext-base.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/ext-all.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
    &amp;lt;link rel=&amp;quot;stylesheet&amp;quot; type=&amp;quot;text/css&amp;quot; href=&amp;quot;ext-3.0.0/examples/ux/css/PanelResizer.css&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/examples/ux/ProgressBarPager.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
    &amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/examples/ux/PanelResizer.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
    &amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/examples/ux/PagingMemoryProxy.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;!-- Revised from demo code in ext3.0.0 --&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
/*!&lt;br /&gt;
 * Ext JS Library 3.0.0&lt;br /&gt;
 * Copyright(c) 2006-2009 Ext JS, LLC&lt;br /&gt;
 * licensing@extjs.ru&lt;br /&gt;
 * http://www.extjs.ru/license&lt;br /&gt;
 */&lt;br /&gt;
Ext.onReady(function(){&lt;br /&gt;
    var myData = [&lt;br /&gt;
        [&amp;quot;3m Co&amp;quot;,71.72,0.02,0.03,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Alcoa Inc&amp;quot;,29.01,0.42,1.47,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Altria Group Inc&amp;quot;,83.81,0.28,0.34,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;American Express Company&amp;quot;,52.55,0.01,0.02,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;American International Group, Inc.&amp;quot;,64.13,0.31,0.49,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;AT&amp;amp;T Inc.&amp;quot;,31.61,-0.48,-1.54,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Boeing Co.&amp;quot;,75.43,0.53,0.71,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Caterpillar Inc.&amp;quot;,67.27,0.92,1.39,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Citigroup, Inc.&amp;quot;,49.37,0.02,0.04,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;E.I. du Pont de Nemours and Company&amp;quot;,40.48,0.51,1.28,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Exxon Mobil Corp&amp;quot;,68.1,-0.43,-0.64,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;General Electric Company&amp;quot;,34.14,-0.08,-0.23,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;General Motors Corporation&amp;quot;,30.27,1.09,3.74,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Hewlett-Packard Co.&amp;quot;,36.53,-0.03,-0.08,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Honeywell Intl Inc&amp;quot;,38.77,0.05,0.13,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Intel Corporation&amp;quot;,19.88,0.31,1.58,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;International Business Machines&amp;quot;,81.41,0.44,0.54,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Johnson &amp;amp; Johnson&amp;quot;,64.72,0.06,0.09,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;JP Morgan &amp;amp; Chase &amp;amp; Co&amp;quot;,45.73,0.07,0.15,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;McDonald\&amp;quot;s Corporation&amp;quot;,36.76,0.86,2.40,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Merck &amp;amp; Co., Inc.&amp;quot;,40.96,0.41,1.01,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Microsoft Corporation&amp;quot;,25.84,0.14,0.54,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Pfizer Inc&amp;quot;,27.96,0.4,1.45,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;The Coca-Cola Company&amp;quot;,45.07,0.26,0.58,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;The Home Depot, Inc.&amp;quot;,34.64,0.35,1.02,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;The Procter &amp;amp; Gamble Company&amp;quot;,61.91,0.01,0.02,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;United Technologies Corporation&amp;quot;,63.26,0.55,0.88,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Verizon Communications&amp;quot;,35.57,0.39,1.11,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Wal-Mart Stores, Inc.&amp;quot;,45.45,0.73,1.63,&amp;quot;9/1 12:00am&amp;quot;]&lt;br /&gt;
    ];&lt;br /&gt;
    // example of custom renderer function&lt;br /&gt;
    function change(val){&lt;br /&gt;
        if(val &amp;gt; 0){&lt;br /&gt;
            return &amp;quot;&amp;lt;span style=&amp;quot;color:green;&amp;quot;&amp;gt;&amp;quot; + val + &amp;quot;&amp;lt;/span&amp;gt;&amp;quot;;&lt;br /&gt;
        }else if(val &amp;lt; 0){&lt;br /&gt;
            return &amp;quot;&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;quot; + val + &amp;quot;&amp;lt;/span&amp;gt;&amp;quot;;&lt;br /&gt;
        }&lt;br /&gt;
        return val;&lt;br /&gt;
    }&lt;br /&gt;
    // example of custom renderer function&lt;br /&gt;
    function pctChange(val){&lt;br /&gt;
        if(val &amp;gt; 0){&lt;br /&gt;
            return &amp;quot;&amp;lt;span style=&amp;quot;color:green;&amp;quot;&amp;gt;&amp;quot; + val + &amp;quot;%&amp;lt;/span&amp;gt;&amp;quot;;&lt;br /&gt;
        }else if(val &amp;lt; 0){&lt;br /&gt;
            return &amp;quot;&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;quot; + val + &amp;quot;%&amp;lt;/span&amp;gt;&amp;quot;;&lt;br /&gt;
        }&lt;br /&gt;
        return val;&lt;br /&gt;
    }&lt;br /&gt;
    // create the data store&lt;br /&gt;
    var store = new Ext.data.Store({&lt;br /&gt;
        proxy: new Ext.ux.data.PagingMemoryProxy(myData),&lt;br /&gt;
        remoteSort:true,&lt;br /&gt;
        sortInfo: {field:&amp;quot;price&amp;quot;, direction:&amp;quot;ASC&amp;quot;},&lt;br /&gt;
        reader: new Ext.data.ArrayReader({&lt;br /&gt;
            fields: [&lt;br /&gt;
               {name: &amp;quot;company&amp;quot;},&lt;br /&gt;
               {name: &amp;quot;price&amp;quot;, type: &amp;quot;float&amp;quot;},&lt;br /&gt;
               {name: &amp;quot;change&amp;quot;, type: &amp;quot;float&amp;quot;},&lt;br /&gt;
               {name: &amp;quot;pctChange&amp;quot;, type: &amp;quot;float&amp;quot;},&lt;br /&gt;
               {name: &amp;quot;lastChange&amp;quot;, type: &amp;quot;date&amp;quot;, dateFormat: &amp;quot;n/j h:ia&amp;quot;}&lt;br /&gt;
            ]&lt;br /&gt;
        })&lt;br /&gt;
    });&lt;br /&gt;
    // create the Grid&lt;br /&gt;
    var grid = new Ext.grid.GridPanel({&lt;br /&gt;
        store: store,&lt;br /&gt;
        columns: [&lt;br /&gt;
            {id:&amp;quot;company&amp;quot;,header: &amp;quot;Company&amp;quot;, width: 160, sortable: true, dataIndex: &amp;quot;company&amp;quot;},&lt;br /&gt;
            {header: &amp;quot;Price&amp;quot;, width: 75, sortable: true, renderer: &amp;quot;usMoney&amp;quot;, dataIndex: &amp;quot;price&amp;quot;},&lt;br /&gt;
            {header: &amp;quot;Change&amp;quot;, width: 75, sortable: true, renderer: change, dataIndex: &amp;quot;change&amp;quot;},&lt;br /&gt;
            {header: &amp;quot;% Change&amp;quot;, width: 75, sortable: true, renderer: pctChange, dataIndex: &amp;quot;pctChange&amp;quot;},&lt;br /&gt;
            {header: &amp;quot;Last Updated&amp;quot;, width: 85, sortable: true, renderer: Ext.util.Format.dateRenderer(&amp;quot;m/d/Y&amp;quot;), dataIndex: &amp;quot;lastChange&amp;quot;}&lt;br /&gt;
        ],&lt;br /&gt;
        stripeRows: true,&lt;br /&gt;
        autoExpandColumn: &amp;quot;company&amp;quot;,&lt;br /&gt;
        height:320,&lt;br /&gt;
        width:600,&lt;br /&gt;
        frame:true,&lt;br /&gt;
        title:&amp;quot;Sliding Pager&amp;quot;,&lt;br /&gt;
        plugins: new Ext.ux.PanelResizer({&lt;br /&gt;
            minHeight: 100&lt;br /&gt;
        }),&lt;br /&gt;
        bbar: new Ext.PagingToolbar({&lt;br /&gt;
            pageSize: 10,&lt;br /&gt;
            store: store,&lt;br /&gt;
            displayInfo: true,&lt;br /&gt;
            plugins: new Ext.ux.ProgressBarPager()&lt;br /&gt;
        })&lt;br /&gt;
    });&lt;br /&gt;
    grid.render(&amp;quot;grid-example&amp;quot;);&lt;br /&gt;
    store.load({params:{start:0, limit:10}});&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;grid-example&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Sliding Pager Extension==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;html4strict&amp;quot;&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
/*!&lt;br /&gt;
 * Ext JS Library 3.0.0&lt;br /&gt;
 * Copyright(c) 2006-2009 Ext JS, LLC&lt;br /&gt;
 * licensing@extjs.ru&lt;br /&gt;
 * http://www.extjs.ru/license&lt;br /&gt;
 */&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
&amp;lt;head&amp;gt;&lt;br /&gt;
&amp;lt;title&amp;gt;Hello World Window&amp;lt;/title&amp;gt;&lt;br /&gt;
&amp;lt;link rel=&amp;quot;stylesheet&amp;quot; type=&amp;quot;text/css&amp;quot; href=&amp;quot;ext-3.0.0/resources/css/ext-all.css&amp;quot; /&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/adapter/ext/ext-base.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/ext-all.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
    &amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/examples/ux/SlidingPager.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
    &amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/examples/ux/SliderTip.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
    &amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/examples/ux/PanelResizer.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
    &amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;ext-3.0.0/examples/ux/PagingMemoryProxy.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;!-- Revised from demo code in ext3.0.0 --&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
/*!&lt;br /&gt;
 * Ext JS Library 3.0.0&lt;br /&gt;
 * Copyright(c) 2006-2009 Ext JS, LLC&lt;br /&gt;
 * licensing@extjs.ru&lt;br /&gt;
 * http://www.extjs.ru/license&lt;br /&gt;
 */&lt;br /&gt;
Ext.onReady(function(){&lt;br /&gt;
    var myData = [&lt;br /&gt;
        [&amp;quot;3m Co&amp;quot;,71.72,0.02,0.03,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Alcoa Inc&amp;quot;,29.01,0.42,1.47,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Altria Group Inc&amp;quot;,83.81,0.28,0.34,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;American Express Company&amp;quot;,52.55,0.01,0.02,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;American International Group, Inc.&amp;quot;,64.13,0.31,0.49,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;AT&amp;amp;T Inc.&amp;quot;,31.61,-0.48,-1.54,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Boeing Co.&amp;quot;,75.43,0.53,0.71,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Caterpillar Inc.&amp;quot;,67.27,0.92,1.39,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Citigroup, Inc.&amp;quot;,49.37,0.02,0.04,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;E.I. du Pont de Nemours and Company&amp;quot;,40.48,0.51,1.28,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Exxon Mobil Corp&amp;quot;,68.1,-0.43,-0.64,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;General Electric Company&amp;quot;,34.14,-0.08,-0.23,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;General Motors Corporation&amp;quot;,30.27,1.09,3.74,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Hewlett-Packard Co.&amp;quot;,36.53,-0.03,-0.08,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Honeywell Intl Inc&amp;quot;,38.77,0.05,0.13,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Intel Corporation&amp;quot;,19.88,0.31,1.58,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;International Business Machines&amp;quot;,81.41,0.44,0.54,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Johnson &amp;amp; Johnson&amp;quot;,64.72,0.06,0.09,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;JP Morgan &amp;amp; Chase &amp;amp; Co&amp;quot;,45.73,0.07,0.15,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;McDonald\&amp;quot;s Corporation&amp;quot;,36.76,0.86,2.40,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Merck &amp;amp; Co., Inc.&amp;quot;,40.96,0.41,1.01,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Microsoft Corporation&amp;quot;,25.84,0.14,0.54,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Pfizer Inc&amp;quot;,27.96,0.4,1.45,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;The Coca-Cola Company&amp;quot;,45.07,0.26,0.58,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;The Home Depot, Inc.&amp;quot;,34.64,0.35,1.02,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;The Procter &amp;amp; Gamble Company&amp;quot;,61.91,0.01,0.02,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;United Technologies Corporation&amp;quot;,63.26,0.55,0.88,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Verizon Communications&amp;quot;,35.57,0.39,1.11,&amp;quot;9/1 12:00am&amp;quot;],&lt;br /&gt;
        [&amp;quot;Wal-Mart Stores, Inc.&amp;quot;,45.45,0.73,1.63,&amp;quot;9/1 12:00am&amp;quot;]&lt;br /&gt;
    ];&lt;br /&gt;
    // example of custom renderer function&lt;br /&gt;
    function change(val){&lt;br /&gt;
        if(val &amp;gt; 0){&lt;br /&gt;
            return &amp;quot;&amp;lt;span style=&amp;quot;color:green;&amp;quot;&amp;gt;&amp;quot; + val + &amp;quot;&amp;lt;/span&amp;gt;&amp;quot;;&lt;br /&gt;
        }else if(val &amp;lt; 0){&lt;br /&gt;
            return &amp;quot;&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;quot; + val + &amp;quot;&amp;lt;/span&amp;gt;&amp;quot;;&lt;br /&gt;
        }&lt;br /&gt;
        return val;&lt;br /&gt;
    }&lt;br /&gt;
    // example of custom renderer function&lt;br /&gt;
    function pctChange(val){&lt;br /&gt;
        if(val &amp;gt; 0){&lt;br /&gt;
            return &amp;quot;&amp;lt;span style=&amp;quot;color:green;&amp;quot;&amp;gt;&amp;quot; + val + &amp;quot;%&amp;lt;/span&amp;gt;&amp;quot;;&lt;br /&gt;
        }else if(val &amp;lt; 0){&lt;br /&gt;
            return &amp;quot;&amp;lt;span style=&amp;quot;color:red;&amp;quot;&amp;gt;&amp;quot; + val + &amp;quot;%&amp;lt;/span&amp;gt;&amp;quot;;&lt;br /&gt;
        }&lt;br /&gt;
        return val;&lt;br /&gt;
    }&lt;br /&gt;
    // create the data store&lt;br /&gt;
    var store = new Ext.data.Store({&lt;br /&gt;
        proxy: new Ext.ux.data.PagingMemoryProxy(myData),&lt;br /&gt;
        remoteSort:true,&lt;br /&gt;
        sortInfo: {field:&amp;quot;price&amp;quot;, direction:&amp;quot;ASC&amp;quot;},&lt;br /&gt;
        reader: new Ext.data.ArrayReader({&lt;br /&gt;
            fields: [&lt;br /&gt;
               {name: &amp;quot;company&amp;quot;},&lt;br /&gt;
               {name: &amp;quot;price&amp;quot;, type: &amp;quot;float&amp;quot;},&lt;br /&gt;
               {name: &amp;quot;change&amp;quot;, type: &amp;quot;float&amp;quot;},&lt;br /&gt;
               {name: &amp;quot;pctChange&amp;quot;, type: &amp;quot;float&amp;quot;},&lt;br /&gt;
               {name: &amp;quot;lastChange&amp;quot;, type: &amp;quot;date&amp;quot;, dateFormat: &amp;quot;n/j h:ia&amp;quot;}&lt;br /&gt;
            ]&lt;br /&gt;
        })&lt;br /&gt;
    });&lt;br /&gt;
    // create the Grid&lt;br /&gt;
    var grid = new Ext.grid.GridPanel({&lt;br /&gt;
        store: store,&lt;br /&gt;
        columns: [&lt;br /&gt;
            {id:&amp;quot;company&amp;quot;,header: &amp;quot;Company&amp;quot;, width: 160, sortable: true, dataIndex: &amp;quot;company&amp;quot;},&lt;br /&gt;
            {header: &amp;quot;Price&amp;quot;, width: 75, sortable: true, renderer: &amp;quot;usMoney&amp;quot;, dataIndex: &amp;quot;price&amp;quot;},&lt;br /&gt;
            {header: &amp;quot;Change&amp;quot;, width: 75, sortable: true, renderer: change, dataIndex: &amp;quot;change&amp;quot;},&lt;br /&gt;
            {header: &amp;quot;% Change&amp;quot;, width: 75, sortable: true, renderer: pctChange, dataIndex: &amp;quot;pctChange&amp;quot;},&lt;br /&gt;
            {header: &amp;quot;Last Updated&amp;quot;, width: 85, sortable: true, renderer: Ext.util.Format.dateRenderer(&amp;quot;m/d/Y&amp;quot;), dataIndex: &amp;quot;lastChange&amp;quot;}&lt;br /&gt;
        ],&lt;br /&gt;
        stripeRows: true,&lt;br /&gt;
        autoExpandColumn: &amp;quot;company&amp;quot;,&lt;br /&gt;
        height:320,&lt;br /&gt;
        width:600,&lt;br /&gt;
        frame:true,&lt;br /&gt;
        title:&amp;quot;Sliding Pager&amp;quot;,&lt;br /&gt;
        plugins: new Ext.ux.PanelResizer({&lt;br /&gt;
            minHeight: 100&lt;br /&gt;
        }),&lt;br /&gt;
        bbar: new Ext.PagingToolbar({&lt;br /&gt;
            pageSize: 10,&lt;br /&gt;
            store: store,&lt;br /&gt;
            displayInfo: true,&lt;br /&gt;
            plugins: new Ext.ux.SlidingPager()&lt;br /&gt;
        })&lt;br /&gt;
    });&lt;br /&gt;
    grid.render(&amp;quot;grid-example&amp;quot;);&lt;br /&gt;
    store.load({params:{start:0, limit:10}});&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;div id=&amp;quot;grid-example&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>