annotate src/main/webapp/imageServer/resources/js/jquery-ui-1.10.4/ui/jquery.ui.progressbar.js @ 7:764f47286679

(none)
author jurzua
date Wed, 29 Oct 2014 14:28:34 +0000
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7
jurzua
parents:
diff changeset
1 /*!
jurzua
parents:
diff changeset
2 * jQuery UI Progressbar 1.10.4
jurzua
parents:
diff changeset
3 * http://jqueryui.com
jurzua
parents:
diff changeset
4 *
jurzua
parents:
diff changeset
5 * Copyright 2014 jQuery Foundation and other contributors
jurzua
parents:
diff changeset
6 * Released under the MIT license.
jurzua
parents:
diff changeset
7 * http://jquery.org/license
jurzua
parents:
diff changeset
8 *
jurzua
parents:
diff changeset
9 * http://api.jqueryui.com/progressbar/
jurzua
parents:
diff changeset
10 *
jurzua
parents:
diff changeset
11 * Depends:
jurzua
parents:
diff changeset
12 * jquery.ui.core.js
jurzua
parents:
diff changeset
13 * jquery.ui.widget.js
jurzua
parents:
diff changeset
14 */
jurzua
parents:
diff changeset
15 (function( $, undefined ) {
jurzua
parents:
diff changeset
16
jurzua
parents:
diff changeset
17 $.widget( "ui.progressbar", {
jurzua
parents:
diff changeset
18 version: "1.10.4",
jurzua
parents:
diff changeset
19 options: {
jurzua
parents:
diff changeset
20 max: 100,
jurzua
parents:
diff changeset
21 value: 0,
jurzua
parents:
diff changeset
22
jurzua
parents:
diff changeset
23 change: null,
jurzua
parents:
diff changeset
24 complete: null
jurzua
parents:
diff changeset
25 },
jurzua
parents:
diff changeset
26
jurzua
parents:
diff changeset
27 min: 0,
jurzua
parents:
diff changeset
28
jurzua
parents:
diff changeset
29 _create: function() {
jurzua
parents:
diff changeset
30 // Constrain initial value
jurzua
parents:
diff changeset
31 this.oldValue = this.options.value = this._constrainedValue();
jurzua
parents:
diff changeset
32
jurzua
parents:
diff changeset
33 this.element
jurzua
parents:
diff changeset
34 .addClass( "ui-progressbar ui-widget ui-widget-content ui-corner-all" )
jurzua
parents:
diff changeset
35 .attr({
jurzua
parents:
diff changeset
36 // Only set static values, aria-valuenow and aria-valuemax are
jurzua
parents:
diff changeset
37 // set inside _refreshValue()
jurzua
parents:
diff changeset
38 role: "progressbar",
jurzua
parents:
diff changeset
39 "aria-valuemin": this.min
jurzua
parents:
diff changeset
40 });
jurzua
parents:
diff changeset
41
jurzua
parents:
diff changeset
42 this.valueDiv = $( "<div class='ui-progressbar-value ui-widget-header ui-corner-left'></div>" )
jurzua
parents:
diff changeset
43 .appendTo( this.element );
jurzua
parents:
diff changeset
44
jurzua
parents:
diff changeset
45 this._refreshValue();
jurzua
parents:
diff changeset
46 },
jurzua
parents:
diff changeset
47
jurzua
parents:
diff changeset
48 _destroy: function() {
jurzua
parents:
diff changeset
49 this.element
jurzua
parents:
diff changeset
50 .removeClass( "ui-progressbar ui-widget ui-widget-content ui-corner-all" )
jurzua
parents:
diff changeset
51 .removeAttr( "role" )
jurzua
parents:
diff changeset
52 .removeAttr( "aria-valuemin" )
jurzua
parents:
diff changeset
53 .removeAttr( "aria-valuemax" )
jurzua
parents:
diff changeset
54 .removeAttr( "aria-valuenow" );
jurzua
parents:
diff changeset
55
jurzua
parents:
diff changeset
56 this.valueDiv.remove();
jurzua
parents:
diff changeset
57 },
jurzua
parents:
diff changeset
58
jurzua
parents:
diff changeset
59 value: function( newValue ) {
jurzua
parents:
diff changeset
60 if ( newValue === undefined ) {
jurzua
parents:
diff changeset
61 return this.options.value;
jurzua
parents:
diff changeset
62 }
jurzua
parents:
diff changeset
63
jurzua
parents:
diff changeset
64 this.options.value = this._constrainedValue( newValue );
jurzua
parents:
diff changeset
65 this._refreshValue();
jurzua
parents:
diff changeset
66 },
jurzua
parents:
diff changeset
67
jurzua
parents:
diff changeset
68 _constrainedValue: function( newValue ) {
jurzua
parents:
diff changeset
69 if ( newValue === undefined ) {
jurzua
parents:
diff changeset
70 newValue = this.options.value;
jurzua
parents:
diff changeset
71 }
jurzua
parents:
diff changeset
72
jurzua
parents:
diff changeset
73 this.indeterminate = newValue === false;
jurzua
parents:
diff changeset
74
jurzua
parents:
diff changeset
75 // sanitize value
jurzua
parents:
diff changeset
76 if ( typeof newValue !== "number" ) {
jurzua
parents:
diff changeset
77 newValue = 0;
jurzua
parents:
diff changeset
78 }
jurzua
parents:
diff changeset
79
jurzua
parents:
diff changeset
80 return this.indeterminate ? false :
jurzua
parents:
diff changeset
81 Math.min( this.options.max, Math.max( this.min, newValue ) );
jurzua
parents:
diff changeset
82 },
jurzua
parents:
diff changeset
83
jurzua
parents:
diff changeset
84 _setOptions: function( options ) {
jurzua
parents:
diff changeset
85 // Ensure "value" option is set after other values (like max)
jurzua
parents:
diff changeset
86 var value = options.value;
jurzua
parents:
diff changeset
87 delete options.value;
jurzua
parents:
diff changeset
88
jurzua
parents:
diff changeset
89 this._super( options );
jurzua
parents:
diff changeset
90
jurzua
parents:
diff changeset
91 this.options.value = this._constrainedValue( value );
jurzua
parents:
diff changeset
92 this._refreshValue();
jurzua
parents:
diff changeset
93 },
jurzua
parents:
diff changeset
94
jurzua
parents:
diff changeset
95 _setOption: function( key, value ) {
jurzua
parents:
diff changeset
96 if ( key === "max" ) {
jurzua
parents:
diff changeset
97 // Don't allow a max less than min
jurzua
parents:
diff changeset
98 value = Math.max( this.min, value );
jurzua
parents:
diff changeset
99 }
jurzua
parents:
diff changeset
100
jurzua
parents:
diff changeset
101 this._super( key, value );
jurzua
parents:
diff changeset
102 },
jurzua
parents:
diff changeset
103
jurzua
parents:
diff changeset
104 _percentage: function() {
jurzua
parents:
diff changeset
105 return this.indeterminate ? 100 : 100 * ( this.options.value - this.min ) / ( this.options.max - this.min );
jurzua
parents:
diff changeset
106 },
jurzua
parents:
diff changeset
107
jurzua
parents:
diff changeset
108 _refreshValue: function() {
jurzua
parents:
diff changeset
109 var value = this.options.value,
jurzua
parents:
diff changeset
110 percentage = this._percentage();
jurzua
parents:
diff changeset
111
jurzua
parents:
diff changeset
112 this.valueDiv
jurzua
parents:
diff changeset
113 .toggle( this.indeterminate || value > this.min )
jurzua
parents:
diff changeset
114 .toggleClass( "ui-corner-right", value === this.options.max )
jurzua
parents:
diff changeset
115 .width( percentage.toFixed(0) + "%" );
jurzua
parents:
diff changeset
116
jurzua
parents:
diff changeset
117 this.element.toggleClass( "ui-progressbar-indeterminate", this.indeterminate );
jurzua
parents:
diff changeset
118
jurzua
parents:
diff changeset
119 if ( this.indeterminate ) {
jurzua
parents:
diff changeset
120 this.element.removeAttr( "aria-valuenow" );
jurzua
parents:
diff changeset
121 if ( !this.overlayDiv ) {
jurzua
parents:
diff changeset
122 this.overlayDiv = $( "<div class='ui-progressbar-overlay'></div>" ).appendTo( this.valueDiv );
jurzua
parents:
diff changeset
123 }
jurzua
parents:
diff changeset
124 } else {
jurzua
parents:
diff changeset
125 this.element.attr({
jurzua
parents:
diff changeset
126 "aria-valuemax": this.options.max,
jurzua
parents:
diff changeset
127 "aria-valuenow": value
jurzua
parents:
diff changeset
128 });
jurzua
parents:
diff changeset
129 if ( this.overlayDiv ) {
jurzua
parents:
diff changeset
130 this.overlayDiv.remove();
jurzua
parents:
diff changeset
131 this.overlayDiv = null;
jurzua
parents:
diff changeset
132 }
jurzua
parents:
diff changeset
133 }
jurzua
parents:
diff changeset
134
jurzua
parents:
diff changeset
135 if ( this.oldValue !== value ) {
jurzua
parents:
diff changeset
136 this.oldValue = value;
jurzua
parents:
diff changeset
137 this._trigger( "change" );
jurzua
parents:
diff changeset
138 }
jurzua
parents:
diff changeset
139 if ( value === this.options.max ) {
jurzua
parents:
diff changeset
140 this._trigger( "complete" );
jurzua
parents:
diff changeset
141 }
jurzua
parents:
diff changeset
142 }
jurzua
parents:
diff changeset
143 });
jurzua
parents:
diff changeset
144
jurzua
parents:
diff changeset
145 })( jQuery );