diff options
Diffstat (limited to 'contexts/data/lib/closure-library/closure/goog/events/listener.js')
-rw-r--r-- | contexts/data/lib/closure-library/closure/goog/events/listener.js | 181 |
1 files changed, 0 insertions, 181 deletions
diff --git a/contexts/data/lib/closure-library/closure/goog/events/listener.js b/contexts/data/lib/closure-library/closure/goog/events/listener.js deleted file mode 100644 index 2789480..0000000 --- a/contexts/data/lib/closure-library/closure/goog/events/listener.js +++ /dev/null @@ -1,181 +0,0 @@ -// Copyright 2005 The Closure Library Authors. All Rights Reserved. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS-IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -/** - * @fileoverview Listener object. - * @see ../demos/events.html - */ - - -/** - * Namespace for events - */ -goog.provide('goog.events.Listener'); - - - -/** - * Simple class that stores information about a listener - * @constructor - */ -goog.events.Listener = function() { - if (goog.events.Listener.ENABLE_MONITORING) { - this.creationStack = new Error().stack; - } -}; - - -/** - * Counter used to create a unique key - * @type {number} - * @private - */ -goog.events.Listener.counter_ = 0; - - -/** - * @define {boolean} Whether to enable the monitoring of the - * goog.events.Listener instances. Switching on the monitoring is only - * recommended for debugging because it has a significant impact on - * performance and memory usage. If switched off, the monitoring code - * compiles down to 0 bytes. - */ -goog.events.Listener.ENABLE_MONITORING = false; - - -/** - * Whether the listener is a function or an object that implements handleEvent. - * @type {boolean} - * @private - */ -goog.events.Listener.prototype.isFunctionListener_; - - -/** - * Call back function or an object with a handleEvent function. - * @type {Function|Object|null} - */ -goog.events.Listener.prototype.listener; - - -/** - * Proxy for callback that passes through {@link goog.events#HandleEvent_} - * @type {Function} - */ -goog.events.Listener.prototype.proxy; - - -/** - * Object or node that callback is listening to - * @type {Object|goog.events.EventTarget} - */ -goog.events.Listener.prototype.src; - - -/** - * Type of event - * @type {string} - */ -goog.events.Listener.prototype.type; - - -/** - * Whether the listener is being called in the capture or bubble phase - * @type {boolean} - */ -goog.events.Listener.prototype.capture; - - -/** - * Optional object whose context to execute the listener in - * @type {Object|undefined} - */ -goog.events.Listener.prototype.handler; - - -/** - * The key of the listener. - * @type {number} - */ -goog.events.Listener.prototype.key = 0; - - -/** - * Whether the listener has been removed. - * @type {boolean} - */ -goog.events.Listener.prototype.removed = false; - - -/** - * Whether to remove the listener after it has been called. - * @type {boolean} - */ -goog.events.Listener.prototype.callOnce = false; - - -/** - * If monitoring the goog.events.Listener instances is enabled, stores the - * creation stack trace of the Disposable instance. - * @type {string} - */ -goog.events.Listener.prototype.creationStack; - - -/** - * Initializes the listener. - * @param {Function|Object} listener Callback function, or an object with a - * handleEvent function. - * @param {Function} proxy Wrapper for the listener that patches the event. - * @param {Object} src Source object for the event. - * @param {string} type Event type. - * @param {boolean} capture Whether in capture or bubble phase. - * @param {Object=} opt_handler Object in whose context to execute the callback. - */ -goog.events.Listener.prototype.init = function(listener, proxy, src, type, - capture, opt_handler) { - // we do the test of the listener here so that we do not need to - // continiously do this inside handleEvent - if (goog.isFunction(listener)) { - this.isFunctionListener_ = true; - } else if (listener && listener.handleEvent && - goog.isFunction(listener.handleEvent)) { - this.isFunctionListener_ = false; - } else { - throw Error('Invalid listener argument'); - } - - this.listener = listener; - this.proxy = proxy; - this.src = src; - this.type = type; - this.capture = !!capture; - this.handler = opt_handler; - this.callOnce = false; - this.key = ++goog.events.Listener.counter_; - this.removed = false; -}; - - -/** - * Calls the internal listener - * @param {Object} eventObject Event object to be passed to listener. - * @return {boolean} The result of the internal listener call. - */ -goog.events.Listener.prototype.handleEvent = function(eventObject) { - if (this.isFunctionListener_) { - return this.listener.call(this.handler || this.src, eventObject); - } - return this.listener.handleEvent.call(this.listener, eventObject); -}; |