EventTarget provides the implementation for any object to publish, subscribe and fire to custom events, and also alows other EventTargets to target the object with events sourced from the other object. EventTarget is designed to be used with Y.augment to wrap EventCustom in an interface that allows events to be listened to and fired by name. This makes it possible for implementing code to subscribe to an event that either has not been created yet, or will not be created at all.
_getFullTypetype
                                
                            Returns the fully qualified type, given a short type string. That is, returns "foo:bar" when given "bar" if "foo" is the configured prefix.
NOTE: This method, unlike _getType, does no checking of the value passed in, and is designed to be used with the low level _publish() method, for critical path implementations which need to fast-track publish for performance reasons.
type
                                    String
                                
            
                                
            
                                The short type to prefix
The prefixed type, if a prefix is set, otherwise the type passed in
_getTypeIf the instance has a prefix attribute and the event type is not prefixed, the instance prefix is applied to the supplied type.
_hasPotentialSubscribersfullType
                                
                            fullType
                                    String
                                
            
                                
            
                                The fully prefixed type name
Whether the event has potential subscribers or not
_monitorwhat
                                
                            eventType
                                
                            o
                                
                            This is the entry point for the event monitoring system. You can monitor 'attach', 'detach', 'fire', and 'publish'. When configured, these events generate an event. click -> click_attach, click_detach, click_publish -- these can be subscribed to like other events to monitor the event system. Inividual published events can have monitoring turned on or off (publish can't be turned off before it it published) by setting the events 'monitor' config.
what
                                    String
                                
            
                                
            
                                'attach', 'detach', 'fire', or 'publish'
eventType
                                    String | CustomEvent
                                
            
                                
            
                                The prefixed name of the event being monitored, or the CustomEvent object.
o
                                    Object
                                
            
                                
            
                                Information about the event interaction, such as fire() args, subscription category, publish config
_parseTypeReturns an array with the detach key (if provided), and the prefixed event name from _getType Y.on('detachcategory| menu:click', fn)
_publishfullType
                                
                            etOpts
                                
                            ceOpts
                                
                            The low level event publish implementation. It expects all the massaging to have been done
            outside of this method. e.g. the type to fullType conversion. It's designed to be a fast
            path publish, which can be used by critical code paths to improve performance.
The published event. If called without etOpts or ceOpts, this will
            be the default CustomEvent instance, and can be configured independently.
addTargeto
                                
                            Registers another EventTarget as a bubble target. Bubble order is determined by the order registered. Multiple targets can be specified.
Events can only bubble if emitFacade is true.
Included in the event-custom-complex submodule.
o
                                    EventTarget
                                
            
                                
            
                                the target to add
aftertype
                                
                            fn
                                
                            [context]
                                
                            [arg*]
                                
                            Subscribe to a custom event hosted by this object. The supplied callback will execute after any listeners add via the subscribe method, and after the default function, if configured for the event, has executed.
A subscription handle capable of detaching the subscription
beforeExecutes the callback before a DOM event, custom event or method. If the first argument is a function, it is assumed the target is a method. For DOM and custom events, this is an alias for Y.on.
For DOM and custom events: type, callback, context, 0-n arguments
For methods: callback, object (method host), methodName, context, 0-n arguments
detach handle
bubbleevt
                                
                            Propagate an event. Requires the event-custom-complex module.
evt
                                    CustomEvent
                                
            
                                
            
                                the custom event to propagate
the aggregated return value from Event.Custom.fire
detachtype
                                
                            fn
                                
                            context
                                
                            Detach one or more listeners the from the specified event
type
                                    String | Object
                                
            
                                
            
                                Either the handle to the subscriber or the type of event. If the type is not specified, it will attempt to remove the listener from all hosted events.
fn
                                    Function
                                
            
                                
            
                                The subscribed function to unsubscribe, if not supplied, all subscribers will be removed.
context
                                    Object
                                
            
                                
            
                                The custom object passed to subscribe. This is optional, but if supplied will be used to disambiguate multiple listeners that are the same (e.g., you subscribe many object using a function that lives on the prototype)
the host
detachAlltype
                                
                            Removes all listeners from the specified event. If the event type is not specified, all listeners from all hosted custom events will be removed.
type
                                    String
                                
            
                                
            
                                The type, or name of the event
firetype
                                
                            arguments
                                
                            Fire a custom event by name. The callback functions will be executed from the context specified when the event was created, and with the following parameters.
The first argument is the event type, and any additional arguments are passed to the listeners as parameters. If the first of these is an object literal, and the event is configured to emit an event facade, that object is mixed into the event facade and the facade is provided in place of the original object.
If the custom event object hasn't been created, then the event hasn't been published and it has no subscribers. For performance sake, we immediate exit in this case. This means the event won't bubble, so if the intention is that a bubble target be notified, the event must be published on this object first.
type
                                    String | Object
                                
            
                                
            
                                The type of the event, or an object that contains a 'type' property.
arguments
                                    Object*
                                
            
                                
            
                                an arbitrary set of parameters to pass to the handler. If the first of these is an object literal and the event is configured to emit an event facade, the event facade will replace that parameter after the properties the object literal contains are copied to the event facade.
True if the whole lifecycle of the event went through, false if at any point the event propagation was halted.
getEventtype
                                
                            prefixed
                                
                            Returns the custom event of the provided type has been created, a falsy value otherwise
the custom event or null
getTargetsReturns an array of bubble targets for this object.
EventTarget[]
ontype
                                
                            fn
                                
                            [context]
                                
                            [arg*]
                                
                            Subscribe a callback function to a custom event fired by this object or from an object that bubbles its events to this object.
 this.on("change", this._onChange, this);
            Callback functions for events published with emitFacade = true will
            receive an EventFacade as the first argument (typically named "e").
            These callbacks can then call e.preventDefault() to disable the
            behavior published to that event's defaultFn.  See the EventFacade
            API for all available properties and methods. Subscribers to
            non-emitFacade events will receive the arguments passed to fire()
            after the event name.
To subscribe to multiple events at once, pass an object as the first argument, where the key:value pairs correspond to the eventName:callback.
 this.on({
                 "attrChange" : this._onAttrChange,
                 "change"     : this._onChange
             });
            You can also pass an array of event names as the first argument to subscribe to all listed events with the same callback.
 this.on([ "change", "attrChange" ], this._onChange);
            Returning false from a callback is supported as an alternative to
            calling e.preventDefault(); e.stopPropagation();.  However, it is
            recommended to use the event methods whenever possible.
A subscription handle capable of detaching that subscription
oncetype
                                
                            fn
                                
                            [context]
                                
                            [arg*]
                                
                            Listen to a custom event hosted by this object one time.
            This is the equivalent to on except the
            listener is immediatelly detached when it is executed.
A subscription handle capable of detaching the subscription
onceAftertype
                                
                            fn
                                
                            [context]
                                
                            [arg*]
                                
                            Listen to a custom event hosted by this object one time.
            This is the equivalent to after except the
            listener is immediatelly detached when it is executed.
A subscription handle capable of detaching that subscription
parseTypetype
                                
                            [pre]
                                
                            Takes the type parameter passed to 'on' and parses out the various pieces that could be included in the type. If the event type is passed without a prefix, it will be expanded to include the prefix one is supplied or the event target is configured with a default prefix.
an array containing:
publishtype
                                
                            opts
                                
                            Creates a new custom event of the specified type. If a custom event by that name already exists, it will not be re-created. In either case the custom event is returned.
type
                                    String
                                
            
                                
            
                                the type, or name of the event
opts
                                    Object
                                
            
                                
            
                                optional config params. Valid properties are:
[broadcast=false]
                                                Boolean
                                                optional
                                            
            
                                            whether or not the YUI instance and YUI global are notified when the event is fired.
[bubbles=true]
                                                Boolean
                                                optional
                                            
            
                                            Whether or not this event bubbles. Events can
                 only bubble if emitFacade is true.
[context=this]
                                                Object
                                                optional
                                            
            
                                            the default execution context for the listeners.
[defaultFn]
                                                Function
                                                optional
                                            
            
                                            the default function to execute when this event fires if preventDefault was not called.
[emitFacade=false]
                                                Boolean
                                                optional
                                            
            
                                            whether or not this event emits a facade.
[prefix]
                                                String
                                                optional
                                            
            
                                            the prefix for this targets events, e.g., 'menu' in 'menu:click'.
[fireOnce=false]
                                                Boolean
                                                optional
                                            
            
                                            if an event is configured to fire once, new subscribers after the fire will be notified immediately.
[async=false]
                                                Boolean
                                                optional
                                            
            
                                            fireOnce event listeners will fire synchronously
                 if the event has already fired unless async is true.
[preventable=true]
                                                Boolean
                                                optional
                                            
            
                                            whether or not preventDefault() has an effect.
[preventedFn]
                                                Function
                                                optional
                                            
            
                                            a function that is executed when preventDefault() is called.
[queuable=false]
                                                Boolean
                                                optional
                                            
            
                                            whether or not this event can be queued during bubbling.
[silent]
                                                Boolean
                                                optional
                                            
            
                                            if silent is true, debug messages are not provided for this event.
[stoppedFn]
                                                Function
                                                optional
                                            
            
                                            a function that is executed when stopPropagation is called.
[monitored]
                                                Boolean
                                                optional
                                            
            
                                            specifies whether or not this event should send notifications about when the event has been attached, detached, or published.
[type]
                                                String
                                                optional
                                            
            
                                            the event type (valid option if not provided as the first parameter to publish).
the custom event
subscribesubscribe to an event
unsubscribedetach a listener
unsubscribeAlltype
                                
                            Removes all listeners from the specified event. If the event type is not specified, all listeners from all hosted custom events will be removed.
type
                                    String
                                
            
                                
            
                                The type, or name of the event