// Wrapper of event processing

function addListener(element, eventName, funcName, isPropagation) {
  if(window.addEventListener) {
    element.addEventListener(eventName, funcName, isPropagation);
  } else {
    element.attachEvent('on' + eventName, funcName);
  }
}

function removeListener(element, eventName, funcName, isPropagation) {
  if(window.removeEventListener) {
    element.removeEventListener(eventName, funcName, isPropagation);
  } else {
    element.detachEvent('on' + eventName, funcName);
  }
}

function cancelPropagation(eventObj) {
  if(window.addEventListener) {
    eventObj.stopPropagation();
  } else {
    window.event.cancelBubble = true;
  }
}

function getEventTarget(eventObj) {
  if(window.addEventListener) {
    return eventObj.target;
  } else {
    return event.srcElement;
  }
}

