JKow.namespace(["Anim"]);

JKow.Anim.Transform = function() {
	this.element = null;
	this.states = {
		'base' : { 'x' : 0, 'y' : 0 },
		'current' : { 'x' : 0, 'y' : 0 }
	};

	this.transform = function(x, y){
		var sender = this;
		if (sender.element != null){
			var $ = sender.element;
			var old_y = parseInt(JKow.Util.getStyle(sender.element, 'top'));
			var old_x = parseInt(JKow.Util.getStyle(sender.element, 'left'));
			JKow.Util.setStyle(sender.element, 'top', (old_y + y).toString() + 'px');
			JKow.Util.setStyle(sender.element, 'left', (old_x + x).toString() + 'px');
		}
	}

	this.setElement = function(element){
		var sender = this;
		sender.element = element;
			if (element != null){
			var _y = parseInt(JKow.Util.getStyle(sender.element, 'top'));
			var _x = parseInt(JKow.Util.getStyle(sender.element, 'left'));
			if (typeof _y != "numeric"){ _y = 0; }
			if (typeof _x != "numeric"){ _x = 0; }
			sender.states.base.x = _x;
			sender.states.base.y = _y;
			JKow.Util.setStyle(sender.element, 'top', _y.toString() + 'px');
			JKow.Util.setStyle(sender.element, 'left', _x.toString() + 'px');
		}
	}

}
