Skip to content
Permalink
Browse files

Progressbar: Cleanup, byte shaving.

  • Loading branch information...
scottgonzalez committed Dec 6, 2012
1 parent 9d0df53 commit f7614706abfdbc653de53fbc31361f9aacab8821
Showing with 17 additions and 27 deletions.
  1. +1 −1 tests/unit/progressbar/progressbar_core.js
  2. +16 −26 ui/jquery.ui.progressbar.js
@@ -24,5 +24,5 @@ test( "accessibility", function() {
element.progressbar( "option", "value", false );
equal( element.attr( "aria-valuemin" ), 0, "aria-valuemin" );
equal( element.attr( "aria-valuemax" ), 150, "aria-valuemax" );
strictEqual( element.attr( "aria-valuenow" ), undefined, "aria-valuenow initially" );
strictEqual( element.attr( "aria-valuenow" ), undefined, "aria-valuenow" );
});
@@ -28,7 +28,7 @@ $.widget( "ui.progressbar", {

_create: function() {
// Constrain initial value
this.options.value = this._constrainedValue();
this.oldValue = this.options.value = this._constrainedValue();

this.element
.addClass( "ui-progressbar ui-widget ui-widget-content ui-corner-all" )
@@ -42,7 +42,6 @@ $.widget( "ui.progressbar", {
this.valueDiv = $( "<div class='ui-progressbar-value ui-widget-header ui-corner-left'></div>" )
.appendTo( this.element );

this.oldValue = this.options.value;
this._refreshValue();
},

@@ -62,53 +61,44 @@ $.widget( "ui.progressbar", {
return this.options.value;
}

this._setOption( "value", this._constrainedValue( newValue ) );
return this;
this.options.value = this._constrainedValue( newValue );
this._refreshValue();
},

_constrainedValue: function( newValue ) {
var val;
if ( newValue === undefined ) {
val = this.options.value;
} else {
val = newValue;
newValue = this.options.value;
}

this.indeterminate = val === false;
this.indeterminate = newValue === false;

// sanitize value
if ( typeof val !== "number" ) {
val = 0;
if ( typeof newValue !== "number" ) {
newValue = 0;
}
return this.indeterminate ? false : Math.min( this.options.max, Math.max( this.min, val ) );

return this.indeterminate ? false :
Math.min( this.options.max, Math.max( this.min, newValue ) );
},

_setOptions: function( options ) {
var val = options.value;

// Ensure "value" option is set after other values (like max)
var value = options.value;
delete options.value;

this._super( options );

if ( val !== undefined ) {
this._setOption( "value", val );
}
this.options.value = this._constrainedValue( value );
this._refreshValue();
},

_setOption: function( key, value ) {
if ( key === "max" ) {
// Don't allow a max less than min
this.options.max = Math.max( this.min, value );
this.options.value = this._constrainedValue();
}
if ( key === "value" ) {
this.options.value = this._constrainedValue( value );
}
else {
this._super( key, value );
value = Math.max( this.min, value );
}

this._refreshValue();
this._super( key, value );
},

_percentage: function() {

0 comments on commit f761470

Please sign in to comment.
You can’t perform that action at this time.