added support for heigt and width properties inside an object config property to be transition-able

This commit is contained in:
Eric Rowell 2012-05-13 17:04:15 -07:00
parent 1c36f208c0
commit 9944b897c4
5 changed files with 31 additions and 5 deletions

11
dist/kinetic-core.js vendored
View File

@ -3048,7 +3048,7 @@ Kinetic.Image = function(config) {
this.applyStyles();
// if cropping
if(cropWidth !== undefined && cropHeight !== undefined) {
if(cropWidth !== undefined && cropHeight !== undefined) {
context.drawImage(this.image, cropX, cropY, cropWidth, cropHeight, 0, 0, width, height);
}
// no cropping
@ -4025,15 +4025,22 @@ Kinetic.Transition = function(node, config) {
// add tween for each property
for(var key in config) {
if(key !== 'duration' && key !== 'easing' && key !== 'callback') {
if(config[key].x === undefined && config[key].y === undefined) {
if(config[key].x === undefined && config[key].y === undefined && config[key].width === undefined && config[key].height === undefined) {
this.add(this._getTween(key, config));
}
if(config[key].x !== undefined) {
this.add(this._getComponentTween(key, 'x', config));
}
if(config[key].y !== undefined) {
this.add(this._getComponentTween(key, 'y', config));
}
if(config[key].width !== undefined) {
this.add(this._getComponentTween(key, 'width', config));
}
if(config[key].height !== undefined) {
this.add(this._getComponentTween(key, 'height', config));
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -35,7 +35,7 @@ Kinetic.Image = function(config) {
this.applyStyles();
// if cropping
if(cropWidth !== undefined && cropHeight !== undefined) {
if(cropWidth !== undefined && cropHeight !== undefined) {
context.drawImage(this.image, cropX, cropY, cropWidth, cropHeight, 0, 0, width, height);
}
// no cropping

View File

@ -17,15 +17,22 @@ Kinetic.Transition = function(node, config) {
// add tween for each property
for(var key in config) {
if(key !== 'duration' && key !== 'easing' && key !== 'callback') {
if(config[key].x === undefined && config[key].y === undefined) {
if(config[key].x === undefined && config[key].y === undefined && config[key].width === undefined && config[key].height === undefined) {
this.add(this._getTween(key, config));
}
if(config[key].x !== undefined) {
this.add(this._getComponentTween(key, 'x', config));
}
if(config[key].y !== undefined) {
this.add(this._getComponentTween(key, 'y', config));
}
if(config[key].width !== undefined) {
this.add(this._getComponentTween(key, 'width', config));
}
if(config[key].height !== undefined) {
this.add(this._getComponentTween(key, 'height', config));
}
}
}

View File

@ -1019,6 +1019,18 @@ Test.prototype.tests = {
test(crop.y === 20, 'crop y should be 20');
test(crop.width === 200, 'crop width should be 200');
test(crop.height === 250, 'crop height should be 250');
/*
darth.transitionTo({
crop: {
width: 100,
height: 125
},
duration: 1
});
*/
};
imageObj.src = '../darth-vader.jpg';
},