Skip to content
Permalink
Browse files

Spinner: Use _getCreateOptions() instead of custom _markupOptions().

  • Loading branch information
scottgonzalez committed Aug 6, 2011
1 parent c1da941 commit e4c0f202c8f29a8038d9f37615a787c61bc57262
Showing with 17 additions and 24 deletions.
  1. +3 −3 tests/unit/spinner/spinner_defaults.js
  2. +14 −21 ui/jquery.ui.spinner.js
@@ -2,11 +2,11 @@ commonWidgetTests( "spinner", {
defaults: {
disabled: false,
incremental: true,
max: null,
min: null,
max: Number.MAX_VALUE,
min: -Number.MAX_VALUE,
numberFormat: null,
page: 10,
step: null,
step: 1,
value: null,

// callbacks
@@ -19,40 +19,33 @@ $.widget( "ui.spinner", {
widgetEventPrefix: "spin",
options: {
incremental: true,
max: null,
min: null,
max: Number.MAX_VALUE,
min: -Number.MAX_VALUE,
numberFormat: null,
page: 10,
step: null,
step: 1,
value: null
},

_create: function() {
this._markupOptions();
this.value( this.options.value !== null ? this.options.value : this.element.val() || 0 );
this._draw();
this._mousewheel();
this._aria();
},

// TODO: should we use _getCreateOptions() now?
// would increase overhead of init when options are specified,
// but would move the defaults to the right location
// and use our API the way it's meant to be used
_markupOptions: function() {
var that = this;
$.each({
min: -Number.MAX_VALUE,
max: Number.MAX_VALUE,
step: 1
}, function( attr, defaultValue ) {
if ( that.options[ attr ] === null ) {
var value = that.element.attr( attr );
that.options[ attr ] = typeof value === "string" && value.length > 0 ?
that._parse( value ) :
defaultValue;
_getCreateOptions: function() {
var options = {},
element = this.element;

$.each( [ "min", "max", "step" ], function( i, option ) {
var value = element.attr( option );
if ( value !== undefined ) {
options[ option ] = value;
}
});
this.value( this.options.value !== null ? this.options.value : this.element.val() || 0 );

return options;
},

_draw: function() {

0 comments on commit e4c0f20

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