/*
	Gestionador de eventos para JavaScript.
	Ejemplo:
		- Suscribirse a un evento: AddEventListener("Click", this.CreateMenu);
		- Eliminar suscripción: RemoveEventListener("Click", this.CreateMenu);
		- Lanzar evento: DispatchEvent('Click', this);
	Tested:
		- IE, Firefox, Safari.
*/
// <![CDATA[

function CreateEventObject (e, fn)
{
	this.e = e;
	this.fn = fn;
}
function AddEventListener (e, fn)
{
	arrEvents.push(new CreateEventObject(e, fn));
}
function RemoveEventListener (e, fn)
{
	for (var i in arrEvents)
		if (arrEvents[i].e == e && arrEvents[i].fn == fn)
			arrEvents.splice(i, 1);
}
function DispatchEvent (e, obj)
{
	
	for (var i in arrEvents)
		if (arrEvents[i].e == e)
			arrEvents[i].fn(obj);
}

var arrEvents = new Array();

// ]]>