diff -r 000000000000 -r 40c8f766c9b8 src/cm/media/js/lib/yui/yui_3.0.0b1/api/event-facade.js.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/cm/media/js/lib/yui/yui_3.0.0b1/api/event-facade.js.html Mon Nov 23 15:14:29 2009 +0100 @@ -0,0 +1,269 @@ + + +
+ +(function() {
+
+/**
+ * Wraps and protects a custom event for use when emitFacade is set to true.
+ * @class EventFacade
+ * @param e {Event} the custom event
+ * @param currentTarget {HTMLElement} the element the listener was attached to
+ */
+
+/*
+var PROPS = {
+ details: 1,
+ type: 1,
+ target: 1,
+ currentTarget: 1,
+ stopPropagation: 2,
+ stopImmediatePropagation: 2,
+ preventDefault: 2,
+ halt: 2
+};
+
+Y.EventFacade = function(e, currentTarget) {
+ if (e) {
+ Y.Object.each(PROPS, function(v, k) {
+ //this[k] = (v == 2) ? e[k].apply(e, arguments) : e[k];
+ var val = e[k];
+ if (val) {
+ this[k] = (v == 2) ? function() {
+ if (val) {
+ val.apply(e, arguments);
+ }
+ } : val;
+ } else {
+ console.log('missing ' + k);
+ }
+ });
+ }
+};
+*/
+
+Y.EventFacade = function(e, currentTarget) {
+
+ e = e || {};
+
+ /**
+ * The arguments passed to fire
+ * @property details
+ * @type Array
+ */
+ this.details = e.details;
+
+ /**
+ * The event type
+ * @property type
+ * @type string
+ */
+ this.type = e.type;
+
+ //////////////////////////////////////////////////////
+
+ /**
+ * Node reference for the targeted eventtarget
+ * @propery target
+ * @type Node
+ */
+ this.target = e.target;
+
+ /**
+ * Node reference for the element that the listener was attached to.
+ * @propery currentTarget
+ * @type Node
+ */
+ this.currentTarget = currentTarget;
+
+ /**
+ * Node reference to the relatedTarget
+ * @propery relatedTarget
+ * @type Node
+ */
+ this.relatedTarget = e.relatedTarget;
+
+ /**
+ * Stops the propagation to the next bubble target
+ * @method stopPropagation
+ */
+ this.stopPropagation = function() {
+ e.stopPropagation();
+ };
+
+ /**
+ * Stops the propagation to the next bubble target and
+ * prevents any additional listeners from being exectued
+ * on the current target.
+ * @method stopImmediatePropagation
+ */
+ this.stopImmediatePropagation = function() {
+ e.stopImmediatePropagation();
+ };
+
+ /**
+ * Prevents the event's default behavior
+ * @method preventDefault
+ */
+ this.preventDefault = function() {
+ e.preventDefault();
+ };
+
+ /**
+ * Stops the event propagation and prevents the default
+ * event behavior.
+ * @method halt
+ * @param immediate {boolean} if true additional listeners
+ * on the current target will not be executed
+ */
+ this.halt = function(immediate) {
+ e.halt(immediate);
+ };
+
+};
+
+})();
+