function dia_disableEvent(e)
{
	if (!e) e = window.event;
	return dia_setEventReturnValue(e,false);
}

function dia_getEventTarget(e)
{
	if (!e) e = window.event;
	var obj;	
	if (e.target)
		obj = e.target;
	else if (e.srcElement)
		obj = e.srcElement;
	if (obj.nodeType == 3) // defeat Safari bug
		obj = obj.parentNode;
	return obj;
}

function dia_setEventReturnValue(e,value)
{
	if (!e) e = window.event;
	if (!value && e.preventDefault)
		e.preventDefault();	
	e.returnValue = value;
	return value;
}

function dia_fireEvent(obj,eventName)
{
	try
	{
		if (DIA_BROWSER.isIE)
		{
			obj.fireEvent('on'+eventName);
		}
		else
		{
			var newEvt = document.createEvent("Events");
				newEvt.initEvent(eventName,false,true);
			obj.dispatchEvent(newEvt);
		}			
	}
	catch(e)
	{
		alert('dia_fireEvent error : ' + e);
	}
}

function dia_addEventListener(obj,eventName,eventHandler)
{
	try
	{
		if (DIA_BROWSER.isIE)
		{
			obj.attachEvent('on'+eventName,eventHandler);
		}
		else
		{
			obj.addEventListener(eventName,eventHandler,false);
		}
	}
	catch(e)
	{
		alert('dia_addEventListender error : ' + e);
	}
}

function dia_removeEventListener(obj,eventName,eventHandler)
{
	try
	{
		if (DIA_BROWSER.isIE)
		{
			obj.detachEvent('on'+eventName,eventHandler);
		}
		else
		{
			obj.removeEventListener(eventName,eventHandler,false);
		}
	}
	catch(e)
	{
		alert('dia_addEventListender error : ' + e);
	}
}