/*dependencies: 
    content_manager/lib_js/
                            node.js
                            dom.js
                            filters.js
*/

function Event(){}

/*TODO: rename to Event.target*/
Event.getTarget = function(evt){
    evt=evt||window.event;
    return target = evt.target ? evt.target : evt.srcElement;
}
Event.target=Event.getTarget;

Event.addListener = function(element, eventName, handler, capture){
    if(element.addEventListener)
        element.addEventListener(eventName, handler, capture);
    else if(element.attachEvent)
        element.attachEvent("on" + eventName, handler);
    else if(element.onclick)
        alert("library does not yet support DOM 1.0 events");
}

Event.addEventListener=Event.addListener;

Event.parentTagNamed = function(evt, tagName){
    evt=evt||window.event;
    return DOM.ancestorTag(Event.getTarget(evt), Filters.TagNameMatches(tagName));
};
Event.ancestorTagNamed=Event.parentTagNamed;

Event.stopPropagation=function(evt){
    evt=evt||window.event;
    if(evt.stopPropagation)
        evt.stopPropagation();
    else
        evt.cancelBubble = true;
}