/**
 * SWFMacMouseWheel v1.0: Mac Mouse Wheel functionality in flash - http://blog.pixelbreaker.com/
 *
 * SWFMacMouseWheel is (c) 2006 Gabriel Bucknall and is released under the MIT License:
 * http://www.opensource.org/licenses/mit-license.php
 *
 * The original script was changed by Nickolay Artamonov specially for comapping.
 */

swfMacMouseWheel = {
	init: function() {
		if (window.addEventListener) {
			window.addEventListener('DOMMouseScroll', swfMacMouseWheel.wheel, false);
		}
		window.onmousewheel = document.onmousewheel = swfMacMouseWheel.wheel;
	},
	
	handle: function(delta) {
		connect.ProxiedConnectionServer.instance.notifyMouseWheelListeners(delta);
	},

	wheel: function(event) {
		var delta = 0;
		if (event.wheelDelta) { /* IE/Opera. */
			delta = event.wheelDelta/120;
			if (window.opera) delta = -delta;
		} else if (event.detail) { /** Mozilla case. */
			delta = -event.detail/3;
		}
		if(/AppleWebKit/.test(navigator.userAgent)){
			delta /= 3;
		}
		/** If delta is nonzero, handle it.
		 * Basically, delta is now positive if wheel was scrolled up,
		 * and negative, if wheel was scrolled down.
		 */
		if (delta) swfMacMouseWheel.handle(delta);
		/** Prevent default actions caused by mouse wheel.
		 * That might be ugly, but we handle scrolls somehow
		 * anyway, so don't bother here..
		 */
		if (event.preventDefault)event.preventDefault();
		event.returnValue = false;
	}
};

swfDisableMouseWheel = {
	init: function() {
		if (window.addEventListener) {
			window.addEventListener('DOMMouseScroll', swfDisableMouseWheel.wheel, false);
		}
		window.onmousewheel = document.onmousewheel = swfDisableMouseWheel.wheel;
	},

	wheel: function() {
		var event = window.event;
		if (event.preventDefault)event.preventDefault();
		event.returnValue = false;
	}
};

if (BrowserDetect.OS == "Mac") swfMacMouseWheel.init();
// Disable mouse wheel events for Explorer - they cause Flash Player uncontrollable zoom
else if (BrowserDetect.browser == "Explorer") swfDisableMouseWheel.init();