Subversion Repositories SmartDukaan

Rev

Rev 162 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
162 naveen 1
/*
2
 * jQuery UI Progressbar 1.8.1
3
 *
4
 * Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
5
 * Dual licensed under the MIT (MIT-LICENSE.txt)
6
 * and GPL (GPL-LICENSE.txt) licenses.
7
 *
8
 * http://docs.jquery.com/UI/Progressbar
9
 *
10
 * Depends:
11
 *   jquery.ui.core.js
12
 *   jquery.ui.widget.js
13
 */
14
(function( $ ) {
15
 
16
$.widget( "ui.progressbar", {
17
	options: {
18
		value: 0
19
	},
20
	_create: function() {
21
		this.element
22
			.addClass( "ui-progressbar ui-widget ui-widget-content ui-corner-all" )
23
			.attr({
24
				role: "progressbar",
25
				"aria-valuemin": this._valueMin(),
26
				"aria-valuemax": this._valueMax(),
27
				"aria-valuenow": this._value()
28
			});
29
 
30
		this.valueDiv = $( "<div class='ui-progressbar-value ui-widget-header ui-corner-left'></div>" )
31
			.appendTo( this.element );
32
 
33
		this._refreshValue();
34
	},
35
 
36
	destroy: function() {
37
		this.element
38
			.removeClass( "ui-progressbar ui-widget ui-widget-content ui-corner-all" )
39
			.removeAttr( "role" )
40
			.removeAttr( "aria-valuemin" )
41
			.removeAttr( "aria-valuemax" )
42
			.removeAttr( "aria-valuenow" );
43
 
44
		this.valueDiv.remove();
45
 
46
		$.Widget.prototype.destroy.apply( this, arguments );
47
	},
48
 
49
	value: function( newValue ) {
50
		if ( newValue === undefined ) {
51
			return this._value();
52
		}
53
 
54
		this._setOption( "value", newValue );
55
		return this;
56
	},
57
 
58
	_setOption: function( key, value ) {
59
		switch ( key ) {
60
			case "value":
61
				this.options.value = value;
62
				this._refreshValue();
63
				this._trigger( "change" );
64
				break;
65
		}
66
 
67
		$.Widget.prototype._setOption.apply( this, arguments );
68
	},
69
 
70
	_value: function() {
71
		var val = this.options.value;
72
		// normalize invalid value
73
		if ( typeof val !== "number" ) {
74
			val = 0;
75
		}
76
		if ( val < this._valueMin() ) {
77
			val = this._valueMin();
78
		}
79
		if ( val > this._valueMax() ) {
80
			val = this._valueMax();
81
		}
82
 
83
		return val;
84
	},
85
 
86
	_valueMin: function() {
87
		return 0;
88
	},
89
 
90
	_valueMax: function() {
91
		return 100;
92
	},
93
 
94
	_refreshValue: function() {
95
		var value = this.value();
96
		this.valueDiv
97
			[ value === this._valueMax() ? "addClass" : "removeClass"]( "ui-corner-right" )
98
			.width( value + "%" );
99
		this.element.attr( "aria-valuenow", value );
100
	}
101
});
102
 
103
$.extend( $.ui.progressbar, {
104
	version: "1.8.1"
105
});
106
 
107
})( jQuery );