/** This class defines the data structure and operations required to handle a component's * events. */ Base.Comp.Evt = Base.inherits({ /** The constructor generates an event storage for an event on a component's * instance. * @param name the name of the event * @param propagate a boolean indicating whether this event should * be propagated to a component's children */ constructor: function (name, propagate) { this.id = ++Base.Comp.Evt.lId; this.name = name; this.propagate = propagate; this.bindings = new Base.Util.Hashtable(); Base.Comp.Evt.list[this.id] = this; }, /** This method is responsible for cleaning up an event storage instance being * destroyed. */ destroy: function () { var k = this.bindings.keys(), i; for (i=0;i