function eventConverter()
{
  this.version = 'EventConverter 1.0.1';
}

eventConverter.prototype.convertEvent = e_c_convertEvent;
eventConverter.prototype.registerEvent = e_c_registerEvent;
eventConverter.prototype.removeEvent = e_c_removeEvent;
eventConverter.prototype.doNothing = e_c_doNothing;
eventConverter.prototype.preventDefault = e_c_preventDefault;
eventConverter.prototype.stopPropagation = e_c_stopPropagation;

function e_c_convertEvent(e) {
  var eventObject = window.event || e;
  if (window.event) {
    eventObject.target = eventObject.srcElement;
    eventObject.pageX = eventObject.clientX;
    eventObject.pageY = eventObject.clientY;
    eventObject.detail = -eventObject.wheelDelta;
    eventObject.preventDefault = new Function("window.event.returnValue = false;");
    eventObject.stopPropagation =  new Function("window.event.cancelBubble = true");
    try {eventObject.eDirection = (eventObject.wheelDelta > 0) ? -1 : 1} catch(e){};
  }
  try {eventObject.eDirection = (eventObject.detail > 0) ? 1 : -1} catch(e){};
  return eventObject;
}

function e_c_registerEvent(obj,eventName,handler,dir) {
  if (document.all) {
    eval("obj.on" + eventName + " = " + handler);
  }
  else {
    dir = dir || false;
    if (eventName == 'mousewheel') eventName = 'DOMMouseScroll';
    obj.addEventListener(eventName,handler,dir)
  }
}

function e_c_removeEvent(obj,eventName,handler,dir) {
  if (window.event) {
    eval("obj.on" + eventName + " = " + null);
  }
  else {
    dir = dir || false;
    obj.removeEventListener(eventName,handler,dir)
  }
}

function e_c_doNothing() {
};

function e_c_preventDefault(e) {
  e = ec.convertEvent(e);
  e.preventDefault();
}

function e_c_stopPropagation(e) {
  e = ec.convertEvent(e);
  e.stopPropagation();
}
