  function cEvent(){
    // -----------------------------------------------------      
    this.bindEvent = function (oFunction, oObject) {
	    return function(event) {
		    return oFunction.call(oObject, event||window.event)
	    }
	  };
    // -----------------------------------------------------  
    this.AddEvent = function(Objet, EventType, FunctionName, PropagationType){
      if (Objet.addEventListener) {
        Objet.addEventListener(EventType, FunctionName, PropagationType);
      } 
      else if (Objet.attachEvent) {
        Objet.attachEvent('on' + EventType, FunctionName);
      }
    };      
    // -----------------------------------------------------
    this.RemoveEvent = function(el, evname, func){
      if(el.detachEvent) { // IE
        el.detachEvent("on" + evname, func);
      } 
      else if (el.removeEventListener) { // Gecko / W3C
        el.removeEventListener(evname, func, true);
      } 
    };
    // -----------------------------------------------------    
    this.StopEvent = function(event) {
      var ev =window.event || event //cross browser event object    
      if(ev.preventDefault) {
        ev.preventDefault();
        ev.stopPropagation();
    
      } else {// IE
        ev.returnValue = false;
        ev.cancelBubble = true;    
      }
      return false;
    };
	}
	