aboutsummaryrefslogtreecommitdiff
path: root/contexts/data/lib/closure-library/closure/goog/dom/nodeoffset.js
diff options
context:
space:
mode:
Diffstat (limited to 'contexts/data/lib/closure-library/closure/goog/dom/nodeoffset.js')
-rw-r--r--contexts/data/lib/closure-library/closure/goog/dom/nodeoffset.js112
1 files changed, 0 insertions, 112 deletions
diff --git a/contexts/data/lib/closure-library/closure/goog/dom/nodeoffset.js b/contexts/data/lib/closure-library/closure/goog/dom/nodeoffset.js
deleted file mode 100644
index 084d4b0..0000000
--- a/contexts/data/lib/closure-library/closure/goog/dom/nodeoffset.js
+++ /dev/null
@@ -1,112 +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 Object to store the offset from one node to another in a way
- * that works on any similar DOM structure regardless of whether it is the same
- * actual nodes.
- *
- */
-
-goog.provide('goog.dom.NodeOffset');
-
-goog.require('goog.Disposable');
-goog.require('goog.dom.TagName');
-
-
-
-/**
- * Object to store the offset from one node to another in a way that works on
- * any similar DOM structure regardless of whether it is the same actual nodes.
- * @param {Node} node The node to get the offset for.
- * @param {Node} baseNode The node to calculate the offset from.
- * @extends {goog.Disposable}
- * @constructor
- */
-goog.dom.NodeOffset = function(node, baseNode) {
- goog.Disposable.call(this);
-
- /**
- * A stack of childNode offsets.
- * @type {Array.<number>}
- * @private
- */
- this.offsetStack_ = [];
-
- /**
- * A stack of childNode names.
- * @type {Array.<string>}
- * @private
- */
- this.nameStack_ = [];
-
- while (node && node.nodeName != goog.dom.TagName.BODY && node != baseNode) {
- // Compute the sibling offset.
- var siblingOffset = 0;
- var sib = node.previousSibling;
- while (sib) {
- sib = sib.previousSibling;
- ++siblingOffset;
- }
- this.offsetStack_.unshift(siblingOffset);
- this.nameStack_.unshift(node.nodeName);
-
- node = node.parentNode;
- }
-};
-goog.inherits(goog.dom.NodeOffset, goog.Disposable);
-
-
-/**
- * @return {string} A string representation of this object.
- * @override
- */
-goog.dom.NodeOffset.prototype.toString = function() {
- var strs = [];
- var name;
- for (var i = 0; name = this.nameStack_[i]; i++) {
- strs.push(this.offsetStack_[i] + ',' + name);
- }
- return strs.join('\n');
-};
-
-
-/**
- * Walk the dom and find the node relative to baseNode. Returns null on
- * failure.
- * @param {Node} baseNode The node to start walking from. Should be equivalent
- * to the node passed in to the constructor, in that it should have the
- * same contents.
- * @return {Node} The node relative to baseNode, or null on failure.
- */
-goog.dom.NodeOffset.prototype.findTargetNode = function(baseNode) {
- var name;
- var curNode = baseNode;
- for (var i = 0; name = this.nameStack_[i]; ++i) {
- curNode = curNode.childNodes[this.offsetStack_[i]];
-
- // Sanity check and make sure the element names match.
- if (!curNode || curNode.nodeName != name) {
- return null;
- }
- }
- return curNode;
-};
-
-
-/** @override */
-goog.dom.NodeOffset.prototype.disposeInternal = function() {
- delete this.offsetStack_;
- delete this.nameStack_;
-};