jQuery UI 1.8 -> 1.8.2

This commit is contained in:
Samuel Clay 2010-07-08 20:06:22 -04:00
parent a1e12a48ab
commit 9e65a4931b
11 changed files with 483 additions and 396 deletions

View file

@ -4,24 +4,21 @@ import sys
from south.db import db
from south.v2 import DataMigration
from django.db import models
from apps.rss_feeds.models import Story, StoryAuthor
from apps.rss_feeds.models import Story, Feed
class Migration(DataMigration):
def forwards(self, orm):
i = 0
while True:
print i,
feeds = Feed.objects.all().order_by('-stories_per_month')
for feed in feeds:
print feed
sys.stdout.flush()
stories = Story.objects.all().select_related('story_author')[i:i+500]
if not stories:
break
else:
i += 500
for story in stories:
if story.story_author.author_name:
stories = Story.objects.select_related('story_author').filter(story_feed=feed)
for story in stories.iterator():
if not story.story_author_name and story.story_author.author_name:
story.story_author_name = story.story_author.author_name
story.save()
print story.story_date,
def backwards(self, orm):

View file

@ -1,5 +1,5 @@
/*!
* jQuery UI 1.8
* jQuery UI 1.8.2
*
* Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt)
@ -7,11 +7,20 @@
*
* http://docs.jquery.com/UI
*/
;jQuery.ui || (function($) {
(function($) {
// prevent duplicate loading
// this is only a problem because we proxy existing functions
// and we don't want to double proxy them
$.ui = $.ui || {};
if ($.ui.version) {
return;
}
//Helper functions and ui object
$.ui = {
version: "1.8",
$.extend($.ui, {
version: "1.8.2",
// $.ui.plugin is deprecated. Use the proxy pattern instead.
plugin: {
@ -70,9 +79,13 @@ $.ui = {
},
keyCode: {
ALT: 18,
BACKSPACE: 8,
CAPS_LOCK: 20,
COMMA: 188,
COMMAND: 91,
COMMAND_LEFT: 91, // COMMAND
COMMAND_RIGHT: 93,
CONTROL: 17,
DELETE: 46,
DOWN: 40,
@ -82,6 +95,7 @@ $.ui = {
HOME: 36,
INSERT: 45,
LEFT: 37,
MENU: 93, // COMMAND_RIGHT
NUMPAD_ADD: 107,
NUMPAD_DECIMAL: 110,
NUMPAD_DIVIDE: 111,
@ -95,9 +109,10 @@ $.ui = {
SHIFT: 16,
SPACE: 32,
TAB: 9,
UP: 38
UP: 38,
WINDOWS: 91 // COMMAND
}
};
});
//jQuery plugins
$.fn.extend({
@ -117,15 +132,13 @@ $.fn.extend({
enableSelection: function() {
return this
.attr('unselectable', 'off')
.css('MozUserSelect', '')
.unbind('selectstart.ui');
.css('MozUserSelect', '');
},
disableSelection: function() {
return this
.attr('unselectable', 'on')
.css('MozUserSelect', 'none')
.bind('selectstart.ui', function() { return false; });
.css('MozUserSelect', 'none');
},
scrollParent: function() {

View file

@ -1,5 +1,5 @@
/*
* jQuery UI Draggable 1.8
* jQuery UI Draggable 1.8.2
*
* Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt)
@ -459,7 +459,7 @@ $.widget("ui.draggable", $.ui.mouse, {
});
$.extend($.ui.draggable, {
version: "1.8"
version: "1.8.2"
});
$.ui.plugin.add("draggable", "connectToSortable", {

View file

@ -1,5 +1,5 @@
/*
* jQuery UI Droppable 1.8
* jQuery UI Droppable 1.8.2
*
* Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt)
@ -147,7 +147,7 @@ $.widget("ui.droppable", {
});
$.extend($.ui.droppable, {
version: "1.8"
version: "1.8.2"
});
$.ui.intersect = function(draggable, droppable, toleranceMode) {

View file

@ -1,5 +1,5 @@
/*!
* jQuery UI Mouse 1.8
* jQuery UI Mouse 1.8.2
*
* Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt)

View file

@ -1,5 +1,5 @@
/*
* jQuery UI Position 1.8
* jQuery UI Position 1.8.2
*
* Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt)
@ -113,6 +113,10 @@ $.fn.position = function( options ) {
position.top -= elemHeight / 2;
}
// prevent fractions (see #5280)
position.left = parseInt( position.left );
position.top = parseInt( position.top );
$.each( [ "left", "top" ], function( i, dir ) {
if ( $.ui.position[ collision[i] ] ) {
$.ui.position[ collision[i] ][ dir ]( position, {

View file

@ -1,5 +1,5 @@
/*
* jQuery UI Resizable 1.8
* jQuery UI Resizable 1.8.2
*
* Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt)
@ -519,7 +519,7 @@ $.widget("ui.resizable", $.ui.mouse, {
});
$.extend($.ui.resizable, {
version: "1.8"
version: "1.8.2"
});
/*

View file

@ -1,5 +1,6 @@
/*
* jQuery UI Selectable 1.8
* jQuery UI Selectable 1.8.2
*
* Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt)
@ -56,9 +57,7 @@ $.widget("ui.selectable", $.ui.mouse, {
this._mouseInit();
this.helper = $(document.createElement('div'))
.css({border:'1px dotted black'})
.addClass("ui-selectable-helper");
this.helper = $("<div class='ui-selectable-helper'></div>");
},
destroy: function() {
@ -121,14 +120,23 @@ $.widget("ui.selectable", $.ui.mouse, {
$(event.target).parents().andSelf().each(function() {
var selectee = $.data(this, "selectable-item");
if (selectee) {
selectee.$element.removeClass("ui-unselecting").addClass('ui-selecting');
selectee.unselecting = false;
selectee.selecting = true;
selectee.selected = true;
// selectable SELECTING callback
var doSelect = !event.metaKey || !selectee.$element.hasClass('ui-selected');
selectee.$element
.removeClass(doSelect ? "ui-unselecting" : "ui-selected")
.addClass(doSelect ? "ui-selecting" : "ui-unselecting");
selectee.unselecting = !doSelect;
selectee.selecting = doSelect;
selectee.selected = doSelect;
// selectable (UN)SELECTING callback
if (doSelect) {
self._trigger("selecting", event, {
selecting: selectee.element
});
} else {
self._trigger("unselecting", event, {
unselecting: selectee.element
});
}
return false;
}
});
@ -255,7 +263,7 @@ $.widget("ui.selectable", $.ui.mouse, {
});
$.extend($.ui.selectable, {
version: "1.8"
version: "1.8.2"
});
})(jQuery);

View file

@ -1,5 +1,5 @@
/*
* jQuery UI Slider 1.8
* jQuery UI Slider 1.8.2
*
* Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt)
@ -13,28 +13,32 @@
* jquery.ui.widget.js
*/
(function($) {
(function( $ ) {
// number of pages in a slider
// (how many times can you page up/down to go through the whole range)
var numPages = 5;
$.widget("ui.slider", $.ui.mouse, {
$.widget( "ui.slider", $.ui.mouse, {
widgetEventPrefix: "slide",
options: {
animate: false,
distance: 0,
max: 100,
min: 0,
orientation: 'horizontal',
orientation: "horizontal",
range: false,
step: 1,
value: 0,
values: null
},
_create: function() {
var self = this, o = this.options;
_create: function() {
var self = this,
o = this.options;
this._keySliding = false;
this._mouseSliding = false;
this._animateOff = true;
@ -43,98 +47,105 @@ $.widget("ui.slider", $.ui.mouse, {
this._mouseInit();
this.element
.addClass("ui-slider"
+ " ui-slider-" + this.orientation
+ " ui-widget"
+ " ui-widget-content"
+ " ui-corner-all");
.addClass( "ui-slider" +
" ui-slider-" + this.orientation +
" ui-widget" +
" ui-widget-content" +
" ui-corner-all" );
if (o.disabled) {
this.element.addClass('ui-slider-disabled ui-disabled');
if ( o.disabled ) {
this.element.addClass( "ui-slider-disabled ui-disabled" );
}
this.range = $([]);
if (o.range) {
if (o.range === true) {
this.range = $('<div></div>');
if (!o.values) o.values = [this._valueMin(), this._valueMin()];
if (o.values.length && o.values.length != 2) {
o.values = [o.values[0], o.values[0]];
if ( o.range ) {
if ( o.range === true ) {
this.range = $( "<div></div>" );
if ( !o.values ) {
o.values = [ this._valueMin(), this._valueMin() ];
}
if ( o.values.length && o.values.length !== 2 ) {
o.values = [ o.values[0], o.values[0] ];
}
} else {
this.range = $('<div></div>');
this.range = $( "<div></div>" );
}
this.range
.appendTo(this.element)
.addClass("ui-slider-range");
.appendTo( this.element )
.addClass( "ui-slider-range" );
if (o.range == "min" || o.range == "max") {
this.range.addClass("ui-slider-range-" + o.range);
if ( o.range === "min" || o.range === "max" ) {
this.range.addClass( "ui-slider-range-" + o.range );
}
// note: this isn't the most fittingly semantic framework class for this element,
// but worked best visually with a variety of themes
this.range.addClass("ui-widget-header");
this.range.addClass( "ui-widget-header" );
}
if ($(".ui-slider-handle", this.element).length == 0)
$('<a href="#"></a>')
.appendTo(this.element)
.addClass("ui-slider-handle");
if (o.values && o.values.length) {
while ($(".ui-slider-handle", this.element).length < o.values.length)
$('<a href="#"></a>')
.appendTo(this.element)
.addClass("ui-slider-handle");
if ( $( ".ui-slider-handle", this.element ).length === 0 ) {
$( "<a href='#'></a>" )
.appendTo( this.element )
.addClass( "ui-slider-handle" );
}
this.handles = $(".ui-slider-handle", this.element)
.addClass("ui-state-default"
+ " ui-corner-all");
if ( o.values && o.values.length ) {
while ( $(".ui-slider-handle", this.element).length < o.values.length ) {
$( "<a href='#'></a>" )
.appendTo( this.element )
.addClass( "ui-slider-handle" );
}
}
this.handle = this.handles.eq(0);
this.handles = $( ".ui-slider-handle", this.element )
.addClass( "ui-state-default" +
" ui-corner-all" );
this.handles.add(this.range).filter("a")
.click(function(event) {
this.handle = this.handles.eq( 0 );
this.handles.add( this.range ).filter( "a" )
.click(function( event ) {
event.preventDefault();
})
.hover(function() {
if (!o.disabled) {
$(this).addClass('ui-state-hover');
if ( !o.disabled ) {
$( this ).addClass( "ui-state-hover" );
}
}, function() {
$(this).removeClass('ui-state-hover');
$( this ).removeClass( "ui-state-hover" );
})
.focus(function() {
if (!o.disabled) {
$(".ui-slider .ui-state-focus").removeClass('ui-state-focus'); $(this).addClass('ui-state-focus');
if ( !o.disabled ) {
$( ".ui-slider .ui-state-focus" ).removeClass( "ui-state-focus" );
$( this ).addClass( "ui-state-focus" );
} else {
$(this).blur();
$( this ).blur();
}
})
.blur(function() {
$(this).removeClass('ui-state-focus');
$( this ).removeClass( "ui-state-focus" );
});
this.handles.each(function(i) {
$(this).data("index.ui-slider-handle", i);
this.handles.each(function( i ) {
$( this ).data( "index.ui-slider-handle", i );
});
this.handles.keydown(function(event) {
this.handles
.keydown(function( event ) {
var ret = true,
index = $( this ).data( "index.ui-slider-handle" ),
allowed,
curVal,
newVal,
step;
var ret = true;
var index = $(this).data("index.ui-slider-handle");
if (self.options.disabled)
if ( self.options.disabled ) {
return;
}
switch (event.keyCode) {
switch ( event.keyCode ) {
case $.ui.keyCode.HOME:
case $.ui.keyCode.END:
case $.ui.keyCode.PAGE_UP:
@ -144,22 +155,25 @@ $.widget("ui.slider", $.ui.mouse, {
case $.ui.keyCode.DOWN:
case $.ui.keyCode.LEFT:
ret = false;
if (!self._keySliding) {
if ( !self._keySliding ) {
self._keySliding = true;
$(this).addClass("ui-state-active");
self._start(event, index);
$( this ).addClass( "ui-state-active" );
allowed = self._start( event, index );
if ( allowed === false ) {
return;
}
}
break;
}
var curVal, newVal, step = self._step();
if (self.options.values && self.options.values.length) {
curVal = newVal = self.values(index);
step = self.options.step;
if ( self.options.values && self.options.values.length ) {
curVal = newVal = self.values( index );
} else {
curVal = newVal = self.value();
}
switch (event.keyCode) {
switch ( event.keyCode ) {
case $.ui.keyCode.HOME:
newVal = self._valueMin();
break;
@ -167,36 +181,40 @@ $.widget("ui.slider", $.ui.mouse, {
newVal = self._valueMax();
break;
case $.ui.keyCode.PAGE_UP:
newVal = curVal + ((self._valueMax() - self._valueMin()) / numPages);
newVal = self._trimAlignValue( curVal + ( (self._valueMax() - self._valueMin()) / numPages ) );
break;
case $.ui.keyCode.PAGE_DOWN:
newVal = curVal - ((self._valueMax() - self._valueMin()) / numPages);
newVal = self._trimAlignValue( curVal - ( (self._valueMax() - self._valueMin()) / numPages ) );
break;
case $.ui.keyCode.UP:
case $.ui.keyCode.RIGHT:
if(curVal == self._valueMax()) return;
newVal = curVal + step;
if ( curVal === self._valueMax() ) {
return;
}
newVal = self._trimAlignValue( curVal + step );
break;
case $.ui.keyCode.DOWN:
case $.ui.keyCode.LEFT:
if(curVal == self._valueMin()) return;
newVal = curVal - step;
if ( curVal === self._valueMin() ) {
return;
}
newVal = self._trimAlignValue( curVal - step );
break;
}
self._slide(event, index, newVal);
self._slide( event, index, newVal );
return ret;
}).keyup(function(event) {
})
.keyup(function( event ) {
var index = $( this ).data( "index.ui-slider-handle" );
var index = $(this).data("index.ui-slider-handle");
if (self._keySliding) {
if ( self._keySliding ) {
self._keySliding = false;
self._stop(event, index);
self._change(event, index);
$(this).removeClass("ui-state-active");
self._stop( event, index );
self._change( event, index );
$( this ).removeClass( "ui-state-active" );
}
});
@ -204,36 +222,43 @@ $.widget("ui.slider", $.ui.mouse, {
this._refreshValue();
this._animateOff = false;
},
destroy: function() {
this.handles.remove();
this.range.remove();
this.element
.removeClass("ui-slider"
+ " ui-slider-horizontal"
+ " ui-slider-vertical"
+ " ui-slider-disabled"
+ " ui-widget"
+ " ui-widget-content"
+ " ui-corner-all")
.removeData("slider")
.unbind(".slider");
.removeClass( "ui-slider" +
" ui-slider-horizontal" +
" ui-slider-vertical" +
" ui-slider-disabled" +
" ui-widget" +
" ui-widget-content" +
" ui-corner-all" )
.removeData( "slider" )
.unbind( ".slider" );
this._mouseDestroy();
return this;
},
_mouseCapture: function(event) {
_mouseCapture: function( event ) {
var o = this.options,
position,
normValue,
distance,
closestHandle,
self,
index,
allowed,
offset,
mouseOverHandle;
var o = this.options;
if (o.disabled)
if ( o.disabled ) {
return false;
}
this.elementSize = {
width: this.element.outerWidth(),
@ -241,16 +266,15 @@ $.widget("ui.slider", $.ui.mouse, {
};
this.elementOffset = this.element.offset();
var position = { x: event.pageX, y: event.pageY };
var normValue = this._normValueFromMouse(position);
var distance = this._valueMax() - this._valueMin() + 1, closestHandle;
var self = this, index;
this.handles.each(function(i) {
var thisDistance = Math.abs(normValue - self.values(i));
if (distance > thisDistance) {
position = { x: event.pageX, y: event.pageY };
normValue = this._normValueFromMouse( position );
distance = this._valueMax() - this._valueMin() + 1;
self = this;
this.handles.each(function( i ) {
var thisDistance = Math.abs( normValue - self.values(i) );
if ( distance > thisDistance ) {
distance = thisDistance;
closestHandle = $(this);
closestHandle = $( this );
index = i;
}
});
@ -258,216 +282,218 @@ $.widget("ui.slider", $.ui.mouse, {
// workaround for bug #3736 (if both handles of a range are at 0,
// the first is always used as the one with least distance,
// and moving it is obviously prevented by preventing negative ranges)
if(o.range == true && this.values(1) == o.min) {
closestHandle = $(this.handles[++index]);
if( o.range === true && this.values(1) === o.min ) {
index += 1;
closestHandle = $( this.handles[index] );
}
this._start(event, index);
allowed = this._start( event, index );
if ( allowed === false ) {
return false;
}
this._mouseSliding = true;
self._handleIndex = index;
closestHandle
.addClass("ui-state-active")
.addClass( "ui-state-active" )
.focus();
var offset = closestHandle.offset();
var mouseOverHandle = !$(event.target).parents().andSelf().is('.ui-slider-handle');
offset = closestHandle.offset();
mouseOverHandle = !$( event.target ).parents().andSelf().is( ".ui-slider-handle" );
this._clickOffset = mouseOverHandle ? { left: 0, top: 0 } : {
left: event.pageX - offset.left - (closestHandle.width() / 2),
top: event.pageY - offset.top
- (closestHandle.height() / 2)
- (parseInt(closestHandle.css('borderTopWidth'),10) || 0)
- (parseInt(closestHandle.css('borderBottomWidth'),10) || 0)
+ (parseInt(closestHandle.css('marginTop'),10) || 0)
left: event.pageX - offset.left - ( closestHandle.width() / 2 ),
top: event.pageY - offset.top -
( closestHandle.height() / 2 ) -
( parseInt( closestHandle.css("borderTopWidth"), 10 ) || 0 ) -
( parseInt( closestHandle.css("borderBottomWidth"), 10 ) || 0) +
( parseInt( closestHandle.css("marginTop"), 10 ) || 0)
};
normValue = this._normValueFromMouse(position);
this._slide(event, index, normValue);
normValue = this._normValueFromMouse( position );
this._slide( event, index, normValue );
this._animateOff = true;
return true;
},
_mouseStart: function(event) {
_mouseStart: function( event ) {
return true;
},
_mouseDrag: function(event) {
_mouseDrag: function( event ) {
var position = { x: event.pageX, y: event.pageY },
normValue = this._normValueFromMouse( position );
var position = { x: event.pageX, y: event.pageY };
var normValue = this._normValueFromMouse(position);
this._slide(event, this._handleIndex, normValue);
this._slide( event, this._handleIndex, normValue );
return false;
},
_mouseStop: function(event) {
this.handles.removeClass("ui-state-active");
_mouseStop: function( event ) {
this.handles.removeClass( "ui-state-active" );
this._mouseSliding = false;
this._stop(event, this._handleIndex);
this._change(event, this._handleIndex);
this._stop( event, this._handleIndex );
this._change( event, this._handleIndex );
this._handleIndex = null;
this._clickOffset = null;
this._animateOff = false;
return false;
return false;
},
_detectOrientation: function() {
this.orientation = this.options.orientation == 'vertical' ? 'vertical' : 'horizontal';
this.orientation = ( this.options.orientation === "vertical" ) ? "vertical" : "horizontal";
},
_normValueFromMouse: function(position) {
_normValueFromMouse: function( position ) {
var pixelTotal,
pixelMouse,
percentMouse,
valueTotal,
valueMouse;
var pixelTotal, pixelMouse;
if ('horizontal' == this.orientation) {
if ( this.orientation === "horizontal" ) {
pixelTotal = this.elementSize.width;
pixelMouse = position.x - this.elementOffset.left - (this._clickOffset ? this._clickOffset.left : 0);
pixelMouse = position.x - this.elementOffset.left - ( this._clickOffset ? this._clickOffset.left : 0 );
} else {
pixelTotal = this.elementSize.height;
pixelMouse = position.y - this.elementOffset.top - (this._clickOffset ? this._clickOffset.top : 0);
pixelMouse = position.y - this.elementOffset.top - ( this._clickOffset ? this._clickOffset.top : 0 );
}
var percentMouse = (pixelMouse / pixelTotal);
if (percentMouse > 1) percentMouse = 1;
if (percentMouse < 0) percentMouse = 0;
if ('vertical' == this.orientation)
percentMouse = ( pixelMouse / pixelTotal );
if ( percentMouse > 1 ) {
percentMouse = 1;
}
if ( percentMouse < 0 ) {
percentMouse = 0;
}
if ( this.orientation === "vertical" ) {
percentMouse = 1 - percentMouse;
}
var valueTotal = this._valueMax() - this._valueMin(),
valueMouse = percentMouse * valueTotal,
valueMouseModStep = valueMouse % this.options.step,
normValue = this._valueMin() + valueMouse - valueMouseModStep;
if (valueMouseModStep > (this.options.step / 2))
normValue += this.options.step;
// Since JavaScript has problems with large floats, round
// the final value to 5 digits after the decimal point (see #4124)
return parseFloat(normValue.toFixed(5));
valueTotal = this._valueMax() - this._valueMin();
valueMouse = this._valueMin() + percentMouse * valueTotal;
return this._trimAlignValue( valueMouse );
},
_start: function(event, index) {
_start: function( event, index ) {
var uiHash = {
handle: this.handles[index],
handle: this.handles[ index ],
value: this.value()
};
if (this.options.values && this.options.values.length) {
uiHash.value = this.values(index);
if ( this.options.values && this.options.values.length ) {
uiHash.value = this.values( index );
uiHash.values = this.values();
}
this._trigger("start", event, uiHash);
return this._trigger( "start", event, uiHash );
},
_slide: function(event, index, newVal) {
_slide: function( event, index, newVal ) {
var otherVal,
newValues,
allowed;
var handle = this.handles[index];
if ( this.options.values && this.options.values.length ) {
otherVal = this.values( index ? 0 : 1 );
if (this.options.values && this.options.values.length) {
var otherVal = this.values(index ? 0 : 1);
if ((this.options.values.length == 2 && this.options.range === true) &&
((index == 0 && newVal > otherVal) || (index == 1 && newVal < otherVal))){
if ( ( this.options.values.length === 2 && this.options.range === true ) &&
( ( index === 0 && newVal > otherVal) || ( index === 1 && newVal < otherVal ) )
) {
newVal = otherVal;
}
if (newVal != this.values(index)) {
var newValues = this.values();
newValues[index] = newVal;
if ( newVal !== this.values( index ) ) {
newValues = this.values();
newValues[ index ] = newVal;
// A slide can be canceled by returning false from the slide callback
var allowed = this._trigger("slide", event, {
handle: this.handles[index],
allowed = this._trigger( "slide", event, {
handle: this.handles[ index ],
value: newVal,
values: newValues
});
var otherVal = this.values(index ? 0 : 1);
if (allowed !== false) {
this.values(index, newVal, true);
} );
otherVal = this.values( index ? 0 : 1 );
if ( allowed !== false ) {
this.values( index, newVal, true );
}
}
} else {
if (newVal != this.value()) {
if ( newVal !== this.value() ) {
// A slide can be canceled by returning false from the slide callback
var allowed = this._trigger("slide", event, {
handle: this.handles[index],
allowed = this._trigger( "slide", event, {
handle: this.handles[ index ],
value: newVal
});
if (allowed !== false) {
this.value(newVal);
} );
if ( allowed !== false ) {
this.value( newVal );
}
}
}
},
_stop: function(event, index) {
_stop: function( event, index ) {
var uiHash = {
handle: this.handles[index],
handle: this.handles[ index ],
value: this.value()
};
if (this.options.values && this.options.values.length) {
uiHash.value = this.values(index);
if ( this.options.values && this.options.values.length ) {
uiHash.value = this.values( index );
uiHash.values = this.values();
}
this._trigger("stop", event, uiHash);
this._trigger( "stop", event, uiHash );
},
_change: function(event, index) {
if (!this._keySliding && !this._mouseSliding) {
_change: function( event, index ) {
if ( !this._keySliding && !this._mouseSliding ) {
var uiHash = {
handle: this.handles[index],
handle: this.handles[ index ],
value: this.value()
};
if (this.options.values && this.options.values.length) {
uiHash.value = this.values(index);
if ( this.options.values && this.options.values.length ) {
uiHash.value = this.values( index );
uiHash.values = this.values();
}
this._trigger("change", event, uiHash);
this._trigger( "change", event, uiHash );
}
},
value: function(newValue) {
if (arguments.length) {
this.options.value = this._trimValue(newValue);
value: function( newValue ) {
if ( arguments.length ) {
this.options.value = this._trimAlignValue( newValue );
this._refreshValue();
this._change(null, 0);
this._change( null, 0 );
}
return this._value();
},
values: function(index, newValue) {
values: function( index, newValue ) {
var vals,
newValues,
i;
if (arguments.length > 1) {
this.options.values[index] = this._trimValue(newValue);
if ( arguments.length > 1 ) {
this.options.values[ index ] = this._trimAlignValue( newValue );
this._refreshValue();
this._change(null, index);
this._change( null, index );
}
if (arguments.length) {
if ($.isArray(arguments[0])) {
var vals = this.options.values, newValues = arguments[0];
for (var i = 0, l = vals.length; i < l; i++) {
vals[i] = this._trimValue(newValues[i]);
this._change(null, i);
if ( arguments.length ) {
if ( $.isArray( arguments[ 0 ] ) ) {
vals = this.options.values;
newValues = arguments[ 0 ];
for ( i = 0; i < vals.length; i += 1 ) {
vals[ i ] = this._trimAlignValue( newValues[ i ] );
this._change( null, i );
}
this._refreshValue();
} else {
if (this.options.values && this.options.values.length) {
return this._values(index);
if ( this.options.values && this.options.values.length ) {
return this._values( index );
} else {
return this.value();
}
@ -475,155 +501,182 @@ $.widget("ui.slider", $.ui.mouse, {
} else {
return this._values();
}
},
_setOption: function(key, value) {
_setOption: function( key, value ) {
var i,
valsLength = 0;
if ( jQuery.isArray(this.options.values) ) {
if ( $.isArray( this.options.values ) ) {
valsLength = this.options.values.length;
};
}
$.Widget.prototype._setOption.apply(this, arguments);
$.Widget.prototype._setOption.apply( this, arguments );
switch (key) {
case 'disabled':
if (value) {
this.handles.filter(".ui-state-focus").blur();
this.handles.removeClass("ui-state-hover");
this.handles.attr("disabled", "disabled");
this.element.addClass("ui-disabled");
switch ( key ) {
case "disabled":
if ( value ) {
this.handles.filter( ".ui-state-focus" ).blur();
this.handles.removeClass( "ui-state-hover" );
this.handles.attr( "disabled", "disabled" );
this.element.addClass( "ui-disabled" );
} else {
this.handles.removeAttr("disabled");
this.element.removeClass("ui-disabled");
this.handles.removeAttr( "disabled" );
this.element.removeClass( "ui-disabled" );
}
case 'orientation':
break;
case "orientation":
this._detectOrientation();
this.element
.removeClass("ui-slider-horizontal ui-slider-vertical")
.addClass("ui-slider-" + this.orientation);
.removeClass( "ui-slider-horizontal ui-slider-vertical" )
.addClass( "ui-slider-" + this.orientation );
this._refreshValue();
break;
case 'value':
case "value":
this._animateOff = true;
this._refreshValue();
this._change(null, 0);
this._change( null, 0 );
this._animateOff = false;
break;
case 'values':
case "values":
this._animateOff = true;
this._refreshValue();
for (i = 0; i < valsLength; i++) {
this._change(null, i);
for ( i = 0; i < valsLength; i += 1 ) {
this._change( null, i );
}
this._animateOff = false;
break;
}
},
_step: function() {
var step = this.options.step;
return step;
},
_value: function() {
//internal value getter
// _value() returns value trimmed by min and max
// _value() returns value trimmed by min and max, aligned by step
_value: function() {
var val = this.options.value;
val = this._trimValue(val);
val = this._trimAlignValue( val );
return val;
},
_values: function(index) {
//internal values getter
// _values() returns array of values trimmed by min and max
// _values(index) returns single value trimmed by min and max
// _values() returns array of values trimmed by min and max, aligned by step
// _values( index ) returns single value trimmed by min and max, aligned by step
_values: function( index ) {
var val,
vals,
i;
if (arguments.length) {
var val = this.options.values[index];
val = this._trimValue(val);
if ( arguments.length ) {
val = this.options.values[ index ];
val = this._trimAlignValue( val );
return val;
} else {
// .slice() creates a copy of the array
// this copy gets trimmed by min and max and then returned
var vals = this.options.values.slice();
for (var i = 0, l = vals.length; i < l; i++) {
vals[i] = this._trimValue(vals[i]);
vals = this.options.values.slice();
for ( i = 0; i < vals.length; i+= 1) {
vals[ i ] = this._trimAlignValue( vals[ i ] );
}
return vals;
}
},
_trimValue: function(val) {
if (val < this._valueMin()) val = this._valueMin();
if (val > this._valueMax()) val = this._valueMax();
// returns the step-aligned value that val is closest to, between (inclusive) min and max
_trimAlignValue: function( val ) {
if ( val < this._valueMin() ) {
return this._valueMin();
}
if ( val > this._valueMax() ) {
return this._valueMax();
}
var step = ( this.options.step > 0 ) ? this.options.step : 1,
valModStep = val % step,
alignValue = val - valModStep;
return val;
if ( Math.abs(valModStep) * 2 >= step ) {
alignValue += ( valModStep > 0 ) ? step : ( -step );
}
// Since JavaScript has problems with large floats, round
// the final value to 5 digits after the decimal point (see #4124)
return parseFloat( alignValue.toFixed(5) );
},
_valueMin: function() {
var valueMin = this.options.min;
return valueMin;
return this.options.min;
},
_valueMax: function() {
var valueMax = this.options.max;
return valueMax;
return this.options.max;
},
_refreshValue: function() {
var oRange = this.options.range,
o = this.options,
self = this,
animate = ( !this._animateOff ) ? o.animate : false,
valPercent,
_set = {},
lastValPercent,
value,
valueMin,
valueMax;
var oRange = this.options.range, o = this.options, self = this;
var animate = (!this._animateOff) ? o.animate : false;
if (this.options.values && this.options.values.length) {
var vp0, vp1;
this.handles.each(function(i, j) {
var valPercent = (self.values(i) - self._valueMin()) / (self._valueMax() - self._valueMin()) * 100;
var _set = {}; _set[self.orientation == 'horizontal' ? 'left' : 'bottom'] = valPercent + '%';
$(this).stop(1,1)[animate ? 'animate' : 'css'](_set, o.animate);
if (self.options.range === true) {
if (self.orientation == 'horizontal') {
(i == 0) && self.range.stop(1,1)[animate ? 'animate' : 'css']({ left: valPercent + '%' }, o.animate);
(i == 1) && self.range[animate ? 'animate' : 'css']({ width: (valPercent - lastValPercent) + '%' }, { queue: false, duration: o.animate });
if ( this.options.values && this.options.values.length ) {
this.handles.each(function( i, j ) {
valPercent = ( self.values(i) - self._valueMin() ) / ( self._valueMax() - self._valueMin() ) * 100;
_set[ self.orientation === "horizontal" ? "left" : "bottom" ] = valPercent + "%";
$( this ).stop( 1, 1 )[ animate ? "animate" : "css" ]( _set, o.animate );
if ( self.options.range === true ) {
if ( self.orientation === "horizontal" ) {
if ( i === 0 ) {
self.range.stop( 1, 1 )[ animate ? "animate" : "css" ]( { left: valPercent + "%" }, o.animate );
}
if ( i === 1 ) {
self.range[ animate ? "animate" : "css" ]( { width: ( valPercent - lastValPercent ) + "%" }, { queue: false, duration: o.animate } );
}
} else {
(i == 0) && self.range.stop(1,1)[animate ? 'animate' : 'css']({ bottom: (valPercent) + '%' }, o.animate);
(i == 1) && self.range[animate ? 'animate' : 'css']({ height: (valPercent - lastValPercent) + '%' }, { queue: false, duration: o.animate });
if ( i === 0 ) {
self.range.stop( 1, 1 )[ animate ? "animate" : "css" ]( { bottom: ( valPercent ) + "%" }, o.animate );
}
if ( i === 1 ) {
self.range[ animate ? "animate" : "css" ]( { height: ( valPercent - lastValPercent ) + "%" }, { queue: false, duration: o.animate } );
}
}
}
lastValPercent = valPercent;
});
} else {
var value = this.value(),
valueMin = this._valueMin(),
valueMax = this._valueMax(),
valPercent = valueMax != valueMin
? (value - valueMin) / (valueMax - valueMin) * 100
: 0;
var _set = {}; _set[self.orientation == 'horizontal' ? 'left' : 'bottom'] = valPercent + '%';
this.handle.stop(1,1)[animate ? 'animate' : 'css'](_set, o.animate);
value = this.value();
valueMin = this._valueMin();
valueMax = this._valueMax();
valPercent = ( valueMax !== valueMin ) ?
( value - valueMin ) / ( valueMax - valueMin ) * 100 :
0;
_set[ self.orientation === "horizontal" ? "left" : "bottom" ] = valPercent + "%";
this.handle.stop( 1, 1 )[ animate ? "animate" : "css" ]( _set, o.animate );
(oRange == "min") && (this.orientation == "horizontal") && this.range.stop(1,1)[animate ? 'animate' : 'css']({ width: valPercent + '%' }, o.animate);
(oRange == "max") && (this.orientation == "horizontal") && this.range[animate ? 'animate' : 'css']({ width: (100 - valPercent) + '%' }, { queue: false, duration: o.animate });
(oRange == "min") && (this.orientation == "vertical") && this.range.stop(1,1)[animate ? 'animate' : 'css']({ height: valPercent + '%' }, o.animate);
(oRange == "max") && (this.orientation == "vertical") && this.range[animate ? 'animate' : 'css']({ height: (100 - valPercent) + '%' }, { queue: false, duration: o.animate });
if ( oRange === "min" && this.orientation === "horizontal" ) {
this.range.stop( 1, 1 )[ animate ? "animate" : "css" ]( { width: valPercent + "%" }, o.animate );
}
if ( oRange === "max" && this.orientation === "horizontal" ) {
this.range[ animate ? "animate" : "css" ]( { width: ( 100 - valPercent ) + "%" }, { queue: false, duration: o.animate } );
}
if ( oRange === "min" && this.orientation === "vertical" ) {
this.range.stop( 1, 1 )[ animate ? "animate" : "css" ]( { height: valPercent + "%" }, o.animate );
}
if ( oRange === "max" && this.orientation === "vertical" ) {
this.range[ animate ? "animate" : "css" ]( { height: ( 100 - valPercent ) + "%" }, { queue: false, duration: o.animate } );
}
}
}
});
$.extend($.ui.slider, {
version: "1.8"
$.extend( $.ui.slider, {
version: "1.8.2"
});
})(jQuery);
}(jQuery));

View file

@ -1,5 +1,5 @@
/*
* jQuery UI Sortable 1.8
* jQuery UI Sortable 1.8.2
*
* Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt)
@ -73,6 +73,18 @@ $.widget("ui.sortable", $.ui.mouse, {
return this;
},
_setOption: function(key, value){
if ( key === "disabled" ) {
this.options[ key ] = value;
this.widget()
[ value ? "addClass" : "removeClass"]( "ui-sortable-disabled" );
} else {
// Don't call widget base _setOption for disable as it adds ui-state-disabled class
$.Widget.prototype._setOption.apply(this, arguments);
}
},
_mouseCapture: function(event, overrideHandle) {
if (this.reverting) {
@ -1049,7 +1061,7 @@ $.widget("ui.sortable", $.ui.mouse, {
});
$.extend($.ui.sortable, {
version: "1.8"
version: "1.8.2"
});
})(jQuery);

View file

@ -1,5 +1,5 @@
/*!
* jQuery UI Widget 1.8
* jQuery UI Widget 1.8.2
*
* Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt)
@ -155,7 +155,7 @@ $.Widget.prototype = {
.removeAttr( "aria-disabled" )
.removeClass(
this.widgetBaseClass + "-disabled " +
this.namespace + "-state-disabled" );
"ui-state-disabled" );
},
widget: function() {
@ -192,7 +192,7 @@ $.Widget.prototype = {
this.widget()
[ value ? "addClass" : "removeClass"](
this.widgetBaseClass + "-disabled" + " " +
this.namespace + "-state-disabled" )
"ui-state-disabled" )
.attr( "aria-disabled", value );
}