Element.Events.mousedownmove = {
	base: "mousedown",
	condition: function(event)
	{
		event = new Event(event);
		if (event.relatedTarget != this && !this.hasChild(event.relatedTarget)) 
		{
			var downmove = function(event)
			{
				this.fireEvent('mousedownmove',event);
			}.bind(this);
			var cleanup = function()
			{
				this.removeEvent("mousemove",downmove);
				window.removeEvent("mouseup",cleanup);
			}.bind(this);
			this.fireEvent('mousedownmove',event);
			window.addEvent("mouseup",cleanup);
			this.addEvent('mousemove',downmove);
		}
	}
};