﻿//*********************** Event Handler Creation ***************************
function AddHandler(object, eventName, handler) {
    if (object.addEventListener) { object.addEventListener(eventName, handler, false); }
    else { object.attachEvent("on" + eventName, handler); }
}

function RemoveHandler(object, eventName, handler) {
    if (object.removeEventListener) { object.removeEventListener(eventName, handler, false); }
    else { object.detachEvent("on" + eventName, handler); }
}

function AddWheelHandler(handler) {
    if (document.addEventListener) { document.addEventListener('DOMMouseScroll', handler, false); }
    else {
        document.attachEvent("onmousewheel", handler);
    }
}

function RemoveWheelHandler(handler) {
    if (document.removeEventListener) { document.removeEventListener('DOMMouseScroll', handler, false); }
    else {
        document.detachEvent("onmousewheel", handler);
    }
}

function CreateDelegate(object, method) {
    return (function() { return method.apply(object, arguments); })
}

function ForceEvent(element, eventName) {
    var isIE = navigator.userAgent.indexOf("MSIE") != -1 ? true : false;
    if (isIE) {
        element[('on' + event)];
    }
    else {
        var theEvent = document.createEvent("MouseEvent");
        theEvent.initMouseEvent(eventName, true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
        
        element.dispatchEvent(theEvent);
    }
}


