3 <title>The source code</title>
\r
4 <link href="../resources/prettify/prettify.css" type="text/css" rel="stylesheet" />
\r
5 <script type="text/javascript" src="../resources/prettify/prettify.js"></script>
\r
7 <body onload="prettyPrint();">
\r
8 <pre class="prettyprint lang-js">Ext.onReady(function(){
\r
9 //==== Progress bar 1 ====
\r
10 var pbar1 = new Ext.ProgressBar({
\r
11 text:'Initializing...'
\r
13 var btn1 = Ext.get('btn1');
\r
14 btn1.on('click', function(){
\r
15 Ext.fly('p1text').update('Working');
\r
16 if (!pbar1.rendered){
\r
19 pbar1.text = 'Initializing...';
\r
22 Runner.run(pbar1, Ext.get('btn1'), 10, function(){
\r
24 Ext.fly('p1text').update('Done.').show();
\r
28 //==== Progress bar 2 ====
\r
29 var pbar2 = new Ext.ProgressBar({
\r
35 var btn2 = Ext.get('btn2');
\r
36 btn2.on('click', function(){
\r
37 Runner.run(pbar2, btn2, 12, function(){
\r
39 pbar2.updateText('Done.');
\r
43 //==== Progress bar 3 ====
\r
44 var pbar3 = new Ext.ProgressBar({
\r
49 pbar3.on('update', function(val){
\r
50 //You can handle this event at each progress interval if
\r
51 //needed to perform some other action
\r
52 Ext.fly('p3text').dom.innerHTML += '.';
\r
54 var btn3 = Ext.get('btn3');
\r
55 btn3.on('click', function(){
\r
56 Ext.fly('p3text').update('Working');
\r
57 btn3.dom.disabled = true;
\r
63 btn3.dom.disabled = false;
\r
64 Ext.fly('p3text').update('Done');
\r
69 //==== Progress bar 4 ====
\r
70 var pbar4 = new Ext.ProgressBar({
\r
71 text:'Waiting on you...',
\r
77 var btn4 = Ext.get('btn4');
\r
78 btn4.on('click', function(){
\r
79 Runner.run(pbar4, btn4, 19, function(){
\r
80 pbar4.updateText('All finished!');
\r
85 //Please do not use the following code as a best practice! :)
\r
86 var Runner = function(){
\r
87 var f = function(v, pbar, btn, count, cb){
\r
90 btn.dom.disabled = false;
\r
93 if(pbar.id=='pbar4'){
\r
94 //give this one a different count style for fun
\r
96 pbar.updateProgress(i, Math.round(100*i)+'% completed...');
\r
98 pbar.updateProgress(v/count, 'Loading item ' + v + ' of '+count+'...');
\r
104 run : function(pbar, btn, count, cb){
\r
105 btn.dom.disabled = true;
\r
106 var ms = 5000/count;
\r
107 for(var i = 1; i < (count+2); i++){
\r
108 setTimeout(f(i, pbar, btn, count, cb), i*ms);
\r