<?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%2FProgressBar</id>
		<title>JavaScript DHTML/Ext JS/ProgressBar - История изменений</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%2FProgressBar"/>
		<link rel="alternate" type="text/html" href="http://wbex.ru/index.php?title=JavaScript_DHTML/Ext_JS/ProgressBar&amp;action=history"/>
		<updated>2026-04-04T12:47:21Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://wbex.ru/index.php?title=JavaScript_DHTML/Ext_JS/ProgressBar&amp;diff=2370&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/ProgressBar&amp;diff=2370&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/ProgressBar&amp;diff=2371&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/ProgressBar&amp;diff=2371&amp;oldid=prev"/>
				<updated>2010-05-26T07:21:19Z</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;==ProgressBar: Rendered on page load, left-aligned text and % width==&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;!-- Revised from demo code in ext3.0.0 --&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;&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;
    // Progress bar 1 &lt;br /&gt;
    var pbar1 = new Ext.ProgressBar({&lt;br /&gt;
       text:&amp;quot;Initializing...&amp;quot;&lt;br /&gt;
    });&lt;br /&gt;
    var btn1 = Ext.get(&amp;quot;btn1&amp;quot;);&lt;br /&gt;
    btn1.on(&amp;quot;click&amp;quot;, function(){&lt;br /&gt;
        Ext.fly(&amp;quot;p1text&amp;quot;).update(&amp;quot;Working&amp;quot;);&lt;br /&gt;
        if (!pbar1.rendered){&lt;br /&gt;
            pbar1.render(&amp;quot;p1&amp;quot;);&lt;br /&gt;
        }else{&lt;br /&gt;
            pbar1.text = &amp;quot;Initializing...&amp;quot;;&lt;br /&gt;
            pbar1.show();&lt;br /&gt;
        }&lt;br /&gt;
        Runner.run(pbar1, Ext.get(&amp;quot;btn1&amp;quot;), 10, function(){&lt;br /&gt;
            pbar1.reset(true);&lt;br /&gt;
            Ext.fly(&amp;quot;p1text&amp;quot;).update(&amp;quot;Done.&amp;quot;).show();&lt;br /&gt;
        });&lt;br /&gt;
    });&lt;br /&gt;
    // Progress bar 2 &lt;br /&gt;
    var pbar2 = new Ext.ProgressBar({&lt;br /&gt;
        text:&amp;quot;Ready&amp;quot;,&lt;br /&gt;
        id:&amp;quot;pbar2&amp;quot;,&lt;br /&gt;
        cls:&amp;quot;left-align&amp;quot;,&lt;br /&gt;
        renderTo:&amp;quot;p2&amp;quot;&lt;br /&gt;
    });&lt;br /&gt;
    var btn2 = Ext.get(&amp;quot;btn2&amp;quot;);&lt;br /&gt;
    btn2.on(&amp;quot;click&amp;quot;, function(){&lt;br /&gt;
        Runner.run(pbar2, btn2, 12, function(){&lt;br /&gt;
            pbar2.reset();&lt;br /&gt;
            pbar2.updateText(&amp;quot;Done.&amp;quot;);&lt;br /&gt;
        });&lt;br /&gt;
    });&lt;br /&gt;
    // Progress bar 3 &lt;br /&gt;
    var pbar3 = new Ext.ProgressBar({&lt;br /&gt;
        id:&amp;quot;pbar3&amp;quot;,&lt;br /&gt;
        width:300,&lt;br /&gt;
        renderTo:&amp;quot;p3&amp;quot;&lt;br /&gt;
    });&lt;br /&gt;
    pbar3.on(&amp;quot;update&amp;quot;, function(val){&lt;br /&gt;
        //You can handle this event at each progress interval if&lt;br /&gt;
        //needed to perform some other action&lt;br /&gt;
        Ext.fly(&amp;quot;p3text&amp;quot;).dom.innerHTML += &amp;quot;.&amp;quot;;&lt;br /&gt;
    });&lt;br /&gt;
    var btn3 = Ext.get(&amp;quot;btn3&amp;quot;);&lt;br /&gt;
    btn3.on(&amp;quot;click&amp;quot;, function(){&lt;br /&gt;
        Ext.fly(&amp;quot;p3text&amp;quot;).update(&amp;quot;Working&amp;quot;);&lt;br /&gt;
        btn3.dom.disabled = true;&lt;br /&gt;
        pbar3.wait({&lt;br /&gt;
            interval:200,&lt;br /&gt;
            duration:5000,&lt;br /&gt;
            increment:15,&lt;br /&gt;
            fn:function(){&lt;br /&gt;
                btn3.dom.disabled = false;&lt;br /&gt;
                Ext.fly(&amp;quot;p3text&amp;quot;).update(&amp;quot;Done&amp;quot;);&lt;br /&gt;
            }&lt;br /&gt;
        });&lt;br /&gt;
    });&lt;br /&gt;
    // Progress bar 4 &lt;br /&gt;
    var pbar4 = new Ext.ProgressBar({&lt;br /&gt;
        text:&amp;quot;Waiting on you...&amp;quot;,&lt;br /&gt;
        id:&amp;quot;pbar4&amp;quot;,&lt;br /&gt;
        textEl:&amp;quot;p4text&amp;quot;,&lt;br /&gt;
        cls:&amp;quot;custom&amp;quot;,&lt;br /&gt;
        renderTo:&amp;quot;p4&amp;quot;&lt;br /&gt;
    });&lt;br /&gt;
    var btn4 = Ext.get(&amp;quot;btn4&amp;quot;);&lt;br /&gt;
    btn4.on(&amp;quot;click&amp;quot;, function(){&lt;br /&gt;
        Runner.run(pbar4, btn4, 19, function(){&lt;br /&gt;
            pbar4.updateText(&amp;quot;All finished!&amp;quot;);&lt;br /&gt;
        });&lt;br /&gt;
    });&lt;br /&gt;
});&lt;br /&gt;
//Please do not use the following code as a best practice! :)&lt;br /&gt;
var Runner = function(){&lt;br /&gt;
    var f = function(v, pbar, btn, count, cb){&lt;br /&gt;
        return function(){&lt;br /&gt;
            if(v &amp;gt; count){&lt;br /&gt;
                btn.dom.disabled = false;&lt;br /&gt;
                cb();&lt;br /&gt;
            }else{&lt;br /&gt;
                if(pbar.id==&amp;quot;pbar4&amp;quot;){&lt;br /&gt;
                    //give this one a different count style for fun&lt;br /&gt;
                    var i = v/count;&lt;br /&gt;
                    pbar.updateProgress(i, Math.round(100*i)+&amp;quot;% completed...&amp;quot;);&lt;br /&gt;
                }else{&lt;br /&gt;
                    pbar.updateProgress(v/count, &amp;quot;Loading item &amp;quot; + v + &amp;quot; of &amp;quot;+count+&amp;quot;...&amp;quot;);&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
       };&lt;br /&gt;
    };&lt;br /&gt;
    return {&lt;br /&gt;
        run : function(pbar, btn, count, cb){&lt;br /&gt;
            btn.dom.disabled = true;&lt;br /&gt;
            var ms = 5000/count;&lt;br /&gt;
            for(var i = 1; i &amp;lt; (count+2); i++){&lt;br /&gt;
               setTimeout(f(i, pbar, btn, count, cb), i*ms);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}();&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;h1&amp;gt;Progress Bar&amp;lt;/h1&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
    &amp;lt;b&amp;gt;Basic Progress Bar&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    Deferred rendering, dynamic show/hide and built-in progress text:&lt;br /&gt;
    &amp;lt;button id=&amp;quot;btn1&amp;quot;&amp;gt;Show&amp;lt;/button&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;status&amp;quot; id=&amp;quot;p1text&amp;quot;&amp;gt;Nothing to see here.&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;p1&amp;quot; style=&amp;quot;width:300px;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
    &amp;lt;b&amp;gt;Additional Options&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    Rendered on page load, left-aligned text and % width:&lt;br /&gt;
    &amp;lt;button id=&amp;quot;btn2&amp;quot;&amp;gt;Show&amp;lt;/button&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;p2&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
    &amp;lt;b&amp;gt;Waiting Bar&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    Wait for a long operation to complete (example will stop after 5 secs):&lt;br /&gt;
    &amp;lt;button id=&amp;quot;btn3&amp;quot;&amp;gt;Show&amp;lt;/button&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;p3&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;span class=&amp;quot;status&amp;quot; id=&amp;quot;p3text&amp;quot;&amp;gt;Ready&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
    &amp;lt;b&amp;gt;Custom Styles&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    Rendered like Windows XP with custom progress text element:&lt;br /&gt;
    &amp;lt;button id=&amp;quot;btn4&amp;quot;&amp;gt;Show&amp;lt;/button&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;p4&amp;quot; style=&amp;quot;width:300px;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;status&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt; &amp;lt;span id=&amp;quot;p4text&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/p&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;
==Rendered like Windows XP with custom progress text element==&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;!-- Revised from demo code in ext3.0.0 --&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;&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;
    // Progress bar 1 &lt;br /&gt;
    var pbar1 = new Ext.ProgressBar({&lt;br /&gt;
       text:&amp;quot;Initializing...&amp;quot;&lt;br /&gt;
    });&lt;br /&gt;
    var btn1 = Ext.get(&amp;quot;btn1&amp;quot;);&lt;br /&gt;
    btn1.on(&amp;quot;click&amp;quot;, function(){&lt;br /&gt;
        Ext.fly(&amp;quot;p1text&amp;quot;).update(&amp;quot;Working&amp;quot;);&lt;br /&gt;
        if (!pbar1.rendered){&lt;br /&gt;
            pbar1.render(&amp;quot;p1&amp;quot;);&lt;br /&gt;
        }else{&lt;br /&gt;
            pbar1.text = &amp;quot;Initializing...&amp;quot;;&lt;br /&gt;
            pbar1.show();&lt;br /&gt;
        }&lt;br /&gt;
        Runner.run(pbar1, Ext.get(&amp;quot;btn1&amp;quot;), 10, function(){&lt;br /&gt;
            pbar1.reset(true);&lt;br /&gt;
            Ext.fly(&amp;quot;p1text&amp;quot;).update(&amp;quot;Done.&amp;quot;).show();&lt;br /&gt;
        });&lt;br /&gt;
    });&lt;br /&gt;
    // Progress bar 2 &lt;br /&gt;
    var pbar2 = new Ext.ProgressBar({&lt;br /&gt;
        text:&amp;quot;Ready&amp;quot;,&lt;br /&gt;
        id:&amp;quot;pbar2&amp;quot;,&lt;br /&gt;
        cls:&amp;quot;left-align&amp;quot;,&lt;br /&gt;
        renderTo:&amp;quot;p2&amp;quot;&lt;br /&gt;
    });&lt;br /&gt;
    var btn2 = Ext.get(&amp;quot;btn2&amp;quot;);&lt;br /&gt;
    btn2.on(&amp;quot;click&amp;quot;, function(){&lt;br /&gt;
        Runner.run(pbar2, btn2, 12, function(){&lt;br /&gt;
            pbar2.reset();&lt;br /&gt;
            pbar2.updateText(&amp;quot;Done.&amp;quot;);&lt;br /&gt;
        });&lt;br /&gt;
    });&lt;br /&gt;
    // Progress bar 3 &lt;br /&gt;
    var pbar3 = new Ext.ProgressBar({&lt;br /&gt;
        id:&amp;quot;pbar3&amp;quot;,&lt;br /&gt;
        width:300,&lt;br /&gt;
        renderTo:&amp;quot;p3&amp;quot;&lt;br /&gt;
    });&lt;br /&gt;
    pbar3.on(&amp;quot;update&amp;quot;, function(val){&lt;br /&gt;
        //You can handle this event at each progress interval if&lt;br /&gt;
        //needed to perform some other action&lt;br /&gt;
        Ext.fly(&amp;quot;p3text&amp;quot;).dom.innerHTML += &amp;quot;.&amp;quot;;&lt;br /&gt;
    });&lt;br /&gt;
    var btn3 = Ext.get(&amp;quot;btn3&amp;quot;);&lt;br /&gt;
    btn3.on(&amp;quot;click&amp;quot;, function(){&lt;br /&gt;
        Ext.fly(&amp;quot;p3text&amp;quot;).update(&amp;quot;Working&amp;quot;);&lt;br /&gt;
        btn3.dom.disabled = true;&lt;br /&gt;
        pbar3.wait({&lt;br /&gt;
            interval:200,&lt;br /&gt;
            duration:5000,&lt;br /&gt;
            increment:15,&lt;br /&gt;
            fn:function(){&lt;br /&gt;
                btn3.dom.disabled = false;&lt;br /&gt;
                Ext.fly(&amp;quot;p3text&amp;quot;).update(&amp;quot;Done&amp;quot;);&lt;br /&gt;
            }&lt;br /&gt;
        });&lt;br /&gt;
    });&lt;br /&gt;
    // Progress bar 4 &lt;br /&gt;
    var pbar4 = new Ext.ProgressBar({&lt;br /&gt;
        text:&amp;quot;Waiting on you...&amp;quot;,&lt;br /&gt;
        id:&amp;quot;pbar4&amp;quot;,&lt;br /&gt;
        textEl:&amp;quot;p4text&amp;quot;,&lt;br /&gt;
        cls:&amp;quot;custom&amp;quot;,&lt;br /&gt;
        renderTo:&amp;quot;p4&amp;quot;&lt;br /&gt;
    });&lt;br /&gt;
    var btn4 = Ext.get(&amp;quot;btn4&amp;quot;);&lt;br /&gt;
    btn4.on(&amp;quot;click&amp;quot;, function(){&lt;br /&gt;
        Runner.run(pbar4, btn4, 19, function(){&lt;br /&gt;
            pbar4.updateText(&amp;quot;All finished!&amp;quot;);&lt;br /&gt;
        });&lt;br /&gt;
    });&lt;br /&gt;
});&lt;br /&gt;
//Please do not use the following code as a best practice! :)&lt;br /&gt;
var Runner = function(){&lt;br /&gt;
    var f = function(v, pbar, btn, count, cb){&lt;br /&gt;
        return function(){&lt;br /&gt;
            if(v &amp;gt; count){&lt;br /&gt;
                btn.dom.disabled = false;&lt;br /&gt;
                cb();&lt;br /&gt;
            }else{&lt;br /&gt;
                if(pbar.id==&amp;quot;pbar4&amp;quot;){&lt;br /&gt;
                    //give this one a different count style for fun&lt;br /&gt;
                    var i = v/count;&lt;br /&gt;
                    pbar.updateProgress(i, Math.round(100*i)+&amp;quot;% completed...&amp;quot;);&lt;br /&gt;
                }else{&lt;br /&gt;
                    pbar.updateProgress(v/count, &amp;quot;Loading item &amp;quot; + v + &amp;quot; of &amp;quot;+count+&amp;quot;...&amp;quot;);&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
       };&lt;br /&gt;
    };&lt;br /&gt;
    return {&lt;br /&gt;
        run : function(pbar, btn, count, cb){&lt;br /&gt;
            btn.dom.disabled = true;&lt;br /&gt;
            var ms = 5000/count;&lt;br /&gt;
            for(var i = 1; i &amp;lt; (count+2); i++){&lt;br /&gt;
               setTimeout(f(i, pbar, btn, count, cb), i*ms);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}();&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;h1&amp;gt;Progress Bar&amp;lt;/h1&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
    &amp;lt;b&amp;gt;Basic Progress Bar&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    Deferred rendering, dynamic show/hide and built-in progress text:&lt;br /&gt;
    &amp;lt;button id=&amp;quot;btn1&amp;quot;&amp;gt;Show&amp;lt;/button&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;status&amp;quot; id=&amp;quot;p1text&amp;quot;&amp;gt;Nothing to see here.&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;p1&amp;quot; style=&amp;quot;width:300px;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
    &amp;lt;b&amp;gt;Additional Options&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    Rendered on page load, left-aligned text and % width:&lt;br /&gt;
    &amp;lt;button id=&amp;quot;btn2&amp;quot;&amp;gt;Show&amp;lt;/button&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;p2&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
    &amp;lt;b&amp;gt;Waiting Bar&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    Wait for a long operation to complete (example will stop after 5 secs):&lt;br /&gt;
    &amp;lt;button id=&amp;quot;btn3&amp;quot;&amp;gt;Show&amp;lt;/button&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;p3&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;span class=&amp;quot;status&amp;quot; id=&amp;quot;p3text&amp;quot;&amp;gt;Ready&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
    &amp;lt;b&amp;gt;Custom Styles&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    Rendered like Windows XP with custom progress text element:&lt;br /&gt;
    &amp;lt;button id=&amp;quot;btn4&amp;quot;&amp;gt;Show&amp;lt;/button&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;p4&amp;quot; style=&amp;quot;width:300px;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;status&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt; &amp;lt;span id=&amp;quot;p4text&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/p&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;
==Use the ProgressBar class.==&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;!-- Revised from demo code in ext3.0.0 --&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;&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;
    // Progress bar 1 &lt;br /&gt;
    var pbar1 = new Ext.ProgressBar({&lt;br /&gt;
       text:&amp;quot;Initializing...&amp;quot;&lt;br /&gt;
    });&lt;br /&gt;
    var btn1 = Ext.get(&amp;quot;btn1&amp;quot;);&lt;br /&gt;
    btn1.on(&amp;quot;click&amp;quot;, function(){&lt;br /&gt;
        Ext.fly(&amp;quot;p1text&amp;quot;).update(&amp;quot;Working&amp;quot;);&lt;br /&gt;
        if (!pbar1.rendered){&lt;br /&gt;
            pbar1.render(&amp;quot;p1&amp;quot;);&lt;br /&gt;
        }else{&lt;br /&gt;
            pbar1.text = &amp;quot;Initializing...&amp;quot;;&lt;br /&gt;
            pbar1.show();&lt;br /&gt;
        }&lt;br /&gt;
        Runner.run(pbar1, Ext.get(&amp;quot;btn1&amp;quot;), 10, function(){&lt;br /&gt;
            pbar1.reset(true);&lt;br /&gt;
            Ext.fly(&amp;quot;p1text&amp;quot;).update(&amp;quot;Done.&amp;quot;).show();&lt;br /&gt;
        });&lt;br /&gt;
    });&lt;br /&gt;
    // Progress bar 2 &lt;br /&gt;
    var pbar2 = new Ext.ProgressBar({&lt;br /&gt;
        text:&amp;quot;Ready&amp;quot;,&lt;br /&gt;
        id:&amp;quot;pbar2&amp;quot;,&lt;br /&gt;
        cls:&amp;quot;left-align&amp;quot;,&lt;br /&gt;
        renderTo:&amp;quot;p2&amp;quot;&lt;br /&gt;
    });&lt;br /&gt;
    var btn2 = Ext.get(&amp;quot;btn2&amp;quot;);&lt;br /&gt;
    btn2.on(&amp;quot;click&amp;quot;, function(){&lt;br /&gt;
        Runner.run(pbar2, btn2, 12, function(){&lt;br /&gt;
            pbar2.reset();&lt;br /&gt;
            pbar2.updateText(&amp;quot;Done.&amp;quot;);&lt;br /&gt;
        });&lt;br /&gt;
    });&lt;br /&gt;
    // Progress bar 3 &lt;br /&gt;
    var pbar3 = new Ext.ProgressBar({&lt;br /&gt;
        id:&amp;quot;pbar3&amp;quot;,&lt;br /&gt;
        width:300,&lt;br /&gt;
        renderTo:&amp;quot;p3&amp;quot;&lt;br /&gt;
    });&lt;br /&gt;
    pbar3.on(&amp;quot;update&amp;quot;, function(val){&lt;br /&gt;
        //You can handle this event at each progress interval if&lt;br /&gt;
        //needed to perform some other action&lt;br /&gt;
        Ext.fly(&amp;quot;p3text&amp;quot;).dom.innerHTML += &amp;quot;.&amp;quot;;&lt;br /&gt;
    });&lt;br /&gt;
    var btn3 = Ext.get(&amp;quot;btn3&amp;quot;);&lt;br /&gt;
    btn3.on(&amp;quot;click&amp;quot;, function(){&lt;br /&gt;
        Ext.fly(&amp;quot;p3text&amp;quot;).update(&amp;quot;Working&amp;quot;);&lt;br /&gt;
        btn3.dom.disabled = true;&lt;br /&gt;
        pbar3.wait({&lt;br /&gt;
            interval:200,&lt;br /&gt;
            duration:5000,&lt;br /&gt;
            increment:15,&lt;br /&gt;
            fn:function(){&lt;br /&gt;
                btn3.dom.disabled = false;&lt;br /&gt;
                Ext.fly(&amp;quot;p3text&amp;quot;).update(&amp;quot;Done&amp;quot;);&lt;br /&gt;
            }&lt;br /&gt;
        });&lt;br /&gt;
    });&lt;br /&gt;
    // Progress bar 4 &lt;br /&gt;
    var pbar4 = new Ext.ProgressBar({&lt;br /&gt;
        text:&amp;quot;Waiting on you...&amp;quot;,&lt;br /&gt;
        id:&amp;quot;pbar4&amp;quot;,&lt;br /&gt;
        textEl:&amp;quot;p4text&amp;quot;,&lt;br /&gt;
        cls:&amp;quot;custom&amp;quot;,&lt;br /&gt;
        renderTo:&amp;quot;p4&amp;quot;&lt;br /&gt;
    });&lt;br /&gt;
    var btn4 = Ext.get(&amp;quot;btn4&amp;quot;);&lt;br /&gt;
    btn4.on(&amp;quot;click&amp;quot;, function(){&lt;br /&gt;
        Runner.run(pbar4, btn4, 19, function(){&lt;br /&gt;
            pbar4.updateText(&amp;quot;All finished!&amp;quot;);&lt;br /&gt;
        });&lt;br /&gt;
    });&lt;br /&gt;
});&lt;br /&gt;
//Please do not use the following code as a best practice! :)&lt;br /&gt;
var Runner = function(){&lt;br /&gt;
    var f = function(v, pbar, btn, count, cb){&lt;br /&gt;
        return function(){&lt;br /&gt;
            if(v &amp;gt; count){&lt;br /&gt;
                btn.dom.disabled = false;&lt;br /&gt;
                cb();&lt;br /&gt;
            }else{&lt;br /&gt;
                if(pbar.id==&amp;quot;pbar4&amp;quot;){&lt;br /&gt;
                    //give this one a different count style for fun&lt;br /&gt;
                    var i = v/count;&lt;br /&gt;
                    pbar.updateProgress(i, Math.round(100*i)+&amp;quot;% completed...&amp;quot;);&lt;br /&gt;
                }else{&lt;br /&gt;
                    pbar.updateProgress(v/count, &amp;quot;Loading item &amp;quot; + v + &amp;quot; of &amp;quot;+count+&amp;quot;...&amp;quot;);&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
       };&lt;br /&gt;
    };&lt;br /&gt;
    return {&lt;br /&gt;
        run : function(pbar, btn, count, cb){&lt;br /&gt;
            btn.dom.disabled = true;&lt;br /&gt;
            var ms = 5000/count;&lt;br /&gt;
            for(var i = 1; i &amp;lt; (count+2); i++){&lt;br /&gt;
               setTimeout(f(i, pbar, btn, count, cb), i*ms);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}();&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;h1&amp;gt;Progress Bar&amp;lt;/h1&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
    &amp;lt;b&amp;gt;Basic Progress Bar&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    Deferred rendering, dynamic show/hide and built-in progress text:&lt;br /&gt;
    &amp;lt;button id=&amp;quot;btn1&amp;quot;&amp;gt;Show&amp;lt;/button&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;status&amp;quot; id=&amp;quot;p1text&amp;quot;&amp;gt;Nothing to see here.&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;p1&amp;quot; style=&amp;quot;width:300px;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
    &amp;lt;b&amp;gt;Additional Options&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    Rendered on page load, left-aligned text and % width:&lt;br /&gt;
    &amp;lt;button id=&amp;quot;btn2&amp;quot;&amp;gt;Show&amp;lt;/button&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;p2&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
    &amp;lt;b&amp;gt;Waiting Bar&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    Wait for a long operation to complete (example will stop after 5 secs):&lt;br /&gt;
    &amp;lt;button id=&amp;quot;btn3&amp;quot;&amp;gt;Show&amp;lt;/button&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;p3&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;span class=&amp;quot;status&amp;quot; id=&amp;quot;p3text&amp;quot;&amp;gt;Ready&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
    &amp;lt;b&amp;gt;Custom Styles&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    Rendered like Windows XP with custom progress text element:&lt;br /&gt;
    &amp;lt;button id=&amp;quot;btn4&amp;quot;&amp;gt;Show&amp;lt;/button&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;p4&amp;quot; style=&amp;quot;width:300px;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;status&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt; &amp;lt;span id=&amp;quot;p4text&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/p&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;
==Wait for a long operation to complete (example will stop after 5 secs)==&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;!-- Revised from demo code in ext3.0.0 --&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;&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;
    // Progress bar 1 &lt;br /&gt;
    var pbar1 = new Ext.ProgressBar({&lt;br /&gt;
       text:&amp;quot;Initializing...&amp;quot;&lt;br /&gt;
    });&lt;br /&gt;
    var btn1 = Ext.get(&amp;quot;btn1&amp;quot;);&lt;br /&gt;
    btn1.on(&amp;quot;click&amp;quot;, function(){&lt;br /&gt;
        Ext.fly(&amp;quot;p1text&amp;quot;).update(&amp;quot;Working&amp;quot;);&lt;br /&gt;
        if (!pbar1.rendered){&lt;br /&gt;
            pbar1.render(&amp;quot;p1&amp;quot;);&lt;br /&gt;
        }else{&lt;br /&gt;
            pbar1.text = &amp;quot;Initializing...&amp;quot;;&lt;br /&gt;
            pbar1.show();&lt;br /&gt;
        }&lt;br /&gt;
        Runner.run(pbar1, Ext.get(&amp;quot;btn1&amp;quot;), 10, function(){&lt;br /&gt;
            pbar1.reset(true);&lt;br /&gt;
            Ext.fly(&amp;quot;p1text&amp;quot;).update(&amp;quot;Done.&amp;quot;).show();&lt;br /&gt;
        });&lt;br /&gt;
    });&lt;br /&gt;
    // Progress bar 2 &lt;br /&gt;
    var pbar2 = new Ext.ProgressBar({&lt;br /&gt;
        text:&amp;quot;Ready&amp;quot;,&lt;br /&gt;
        id:&amp;quot;pbar2&amp;quot;,&lt;br /&gt;
        cls:&amp;quot;left-align&amp;quot;,&lt;br /&gt;
        renderTo:&amp;quot;p2&amp;quot;&lt;br /&gt;
    });&lt;br /&gt;
    var btn2 = Ext.get(&amp;quot;btn2&amp;quot;);&lt;br /&gt;
    btn2.on(&amp;quot;click&amp;quot;, function(){&lt;br /&gt;
        Runner.run(pbar2, btn2, 12, function(){&lt;br /&gt;
            pbar2.reset();&lt;br /&gt;
            pbar2.updateText(&amp;quot;Done.&amp;quot;);&lt;br /&gt;
        });&lt;br /&gt;
    });&lt;br /&gt;
    // Progress bar 3 &lt;br /&gt;
    var pbar3 = new Ext.ProgressBar({&lt;br /&gt;
        id:&amp;quot;pbar3&amp;quot;,&lt;br /&gt;
        width:300,&lt;br /&gt;
        renderTo:&amp;quot;p3&amp;quot;&lt;br /&gt;
    });&lt;br /&gt;
    pbar3.on(&amp;quot;update&amp;quot;, function(val){&lt;br /&gt;
        //You can handle this event at each progress interval if&lt;br /&gt;
        //needed to perform some other action&lt;br /&gt;
        Ext.fly(&amp;quot;p3text&amp;quot;).dom.innerHTML += &amp;quot;.&amp;quot;;&lt;br /&gt;
    });&lt;br /&gt;
    var btn3 = Ext.get(&amp;quot;btn3&amp;quot;);&lt;br /&gt;
    btn3.on(&amp;quot;click&amp;quot;, function(){&lt;br /&gt;
        Ext.fly(&amp;quot;p3text&amp;quot;).update(&amp;quot;Working&amp;quot;);&lt;br /&gt;
        btn3.dom.disabled = true;&lt;br /&gt;
        pbar3.wait({&lt;br /&gt;
            interval:200,&lt;br /&gt;
            duration:5000,&lt;br /&gt;
            increment:15,&lt;br /&gt;
            fn:function(){&lt;br /&gt;
                btn3.dom.disabled = false;&lt;br /&gt;
                Ext.fly(&amp;quot;p3text&amp;quot;).update(&amp;quot;Done&amp;quot;);&lt;br /&gt;
            }&lt;br /&gt;
        });&lt;br /&gt;
    });&lt;br /&gt;
    // Progress bar 4 &lt;br /&gt;
    var pbar4 = new Ext.ProgressBar({&lt;br /&gt;
        text:&amp;quot;Waiting on you...&amp;quot;,&lt;br /&gt;
        id:&amp;quot;pbar4&amp;quot;,&lt;br /&gt;
        textEl:&amp;quot;p4text&amp;quot;,&lt;br /&gt;
        cls:&amp;quot;custom&amp;quot;,&lt;br /&gt;
        renderTo:&amp;quot;p4&amp;quot;&lt;br /&gt;
    });&lt;br /&gt;
    var btn4 = Ext.get(&amp;quot;btn4&amp;quot;);&lt;br /&gt;
    btn4.on(&amp;quot;click&amp;quot;, function(){&lt;br /&gt;
        Runner.run(pbar4, btn4, 19, function(){&lt;br /&gt;
            pbar4.updateText(&amp;quot;All finished!&amp;quot;);&lt;br /&gt;
        });&lt;br /&gt;
    });&lt;br /&gt;
});&lt;br /&gt;
//Please do not use the following code as a best practice! :)&lt;br /&gt;
var Runner = function(){&lt;br /&gt;
    var f = function(v, pbar, btn, count, cb){&lt;br /&gt;
        return function(){&lt;br /&gt;
            if(v &amp;gt; count){&lt;br /&gt;
                btn.dom.disabled = false;&lt;br /&gt;
                cb();&lt;br /&gt;
            }else{&lt;br /&gt;
                if(pbar.id==&amp;quot;pbar4&amp;quot;){&lt;br /&gt;
                    //give this one a different count style for fun&lt;br /&gt;
                    var i = v/count;&lt;br /&gt;
                    pbar.updateProgress(i, Math.round(100*i)+&amp;quot;% completed...&amp;quot;);&lt;br /&gt;
                }else{&lt;br /&gt;
                    pbar.updateProgress(v/count, &amp;quot;Loading item &amp;quot; + v + &amp;quot; of &amp;quot;+count+&amp;quot;...&amp;quot;);&lt;br /&gt;
                }&lt;br /&gt;
            }&lt;br /&gt;
       };&lt;br /&gt;
    };&lt;br /&gt;
    return {&lt;br /&gt;
        run : function(pbar, btn, count, cb){&lt;br /&gt;
            btn.dom.disabled = true;&lt;br /&gt;
            var ms = 5000/count;&lt;br /&gt;
            for(var i = 1; i &amp;lt; (count+2); i++){&lt;br /&gt;
               setTimeout(f(i, pbar, btn, count, cb), i*ms);&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
    }&lt;br /&gt;
}();&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;/head&amp;gt;&lt;br /&gt;
&amp;lt;body&amp;gt;&lt;br /&gt;
&amp;lt;h1&amp;gt;Progress Bar&amp;lt;/h1&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
    &amp;lt;b&amp;gt;Basic Progress Bar&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    Deferred rendering, dynamic show/hide and built-in progress text:&lt;br /&gt;
    &amp;lt;button id=&amp;quot;btn1&amp;quot;&amp;gt;Show&amp;lt;/button&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;status&amp;quot; id=&amp;quot;p1text&amp;quot;&amp;gt;Nothing to see here.&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;p1&amp;quot; style=&amp;quot;width:300px;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
    &amp;lt;b&amp;gt;Additional Options&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    Rendered on page load, left-aligned text and % width:&lt;br /&gt;
    &amp;lt;button id=&amp;quot;btn2&amp;quot;&amp;gt;Show&amp;lt;/button&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;p2&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
    &amp;lt;b&amp;gt;Waiting Bar&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    Wait for a long operation to complete (example will stop after 5 secs):&lt;br /&gt;
    &amp;lt;button id=&amp;quot;btn3&amp;quot;&amp;gt;Show&amp;lt;/button&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;p3&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;span class=&amp;quot;status&amp;quot; id=&amp;quot;p3text&amp;quot;&amp;gt;Ready&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
    &amp;lt;b&amp;gt;Custom Styles&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    Rendered like Windows XP with custom progress text element:&lt;br /&gt;
    &amp;lt;button id=&amp;quot;btn4&amp;quot;&amp;gt;Show&amp;lt;/button&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
    &amp;lt;div id=&amp;quot;p4&amp;quot; style=&amp;quot;width:300px;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
    &amp;lt;div class=&amp;quot;status&amp;quot;&amp;gt;&amp;lt;b&amp;gt;Status:&amp;lt;/b&amp;gt; &amp;lt;span id=&amp;quot;p4text&amp;quot;&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/p&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;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>