Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(7876)

Unified Diff: chrome/third_party/jstemplate/dom.js

Issue 119384: Update JSTemplate to the latest version from Google Code (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/third_party/jstemplate/compile.sh ('k') | chrome/third_party/jstemplate/exports.js » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/third_party/jstemplate/dom.js
===================================================================
--- chrome/third_party/jstemplate/dom.js (revision 17821)
+++ chrome/third_party/jstemplate/dom.js (working copy)
@@ -1,342 +0,0 @@
-// Copyright 2005 Google
-//
-// Functions that handle the DOM. Partly, these merely wrap methods in
-// DOM interfaces in order to allow them to be obfuscated. Partly,
-// they wrap cross browser differences, and partly they provide
-// functionality beyond what is available directly in the DOM.
-
-
-// These constants will be condensed away by jscompiler, other than
-// the corresponding properties of Node. Based on
-// <http://www.w3.org/TR/2000/ REC-DOM-Level-2-Core-20001113/
-// core.html#ID-1950641247>.
-var DOM_ELEMENT_NODE = 1;
-var DOM_ATTRIBUTE_NODE = 2;
-var DOM_TEXT_NODE = 3;
-var DOM_CDATA_SECTION_NODE = 4;
-var DOM_ENTITY_REFERENCE_NODE = 5;
-var DOM_ENTITY_NODE = 6;
-var DOM_PROCESSING_INSTRUCTION_NODE = 7;
-var DOM_COMMENT_NODE = 8;
-var DOM_DOCUMENT_NODE = 9;
-var DOM_DOCUMENT_TYPE_NODE = 10;
-var DOM_DOCUMENT_FRAGMENT_NODE = 11;
-var DOM_NOTATION_NODE = 12;
-
-/**
- * Traverses the element nodes in the DOM tree underneath the given
- * node and finds the first node with elemId, or null if there is no such
- * element. Traversal is in depth-first order.
- *
- * NOTE: The reason this is not combined with the elem() function is
- * that the implementations are different.
- * elem() is a wrapper for the built-in document.getElementById() function,
- * whereas this function performs the traversal itself.
- * Modifying elem() to take an optional root node is a possibility,
- * but the in-built function would perform better than using our own traversal.
- *
- * @param {Element} node Root element of subtree to traverse.
- * @param {String} elemId The id of the element to search for.
- * @return {Element|Null} The corresponding element, or null if not found.
- */
-function nodeGetElementById(node, elemId) {
- for (var c = node.firstChild; c; c = c.nextSibling) {
- if (c.id == elemId) {
- return c;
- }
- if (c.nodeType == DOM_ELEMENT_NODE) {
- var n = arguments.callee.call(this, c, elemId);
- if (n) {
- return n;
- }
- }
- }
- return null;
-}
-
-// These wrapper functions make the underlying Node methods condense
-// better: the wrapper function can be condensed by the compiler,
-// while the method cannot.
-
-/**
- * Get an attribute from the DOM. Simple redirect, exists to compress code.
- *
- * @param {Element} node Element to interrogate.
- * @param {String} name Name of parameter to extract.
- * @return {String} Resulting attribute.
- */
-function domGetAttribute(node, name) {
- return node.getAttribute(name);
- // NOTE: Neither in IE nor in Firefox, HTML DOM attributes
- // implement namespaces. All items in the attribute collection have
- // null localName and namespaceURI attribute values. In IE, we even
- // encounter DIV elements that don't implement the method
- // getAttributeNS().
-}
-
-/**
- * Set an attribute in the DOM. Simple redirect to compress code.
- *
- * @param {Element} node Element to interrogate.
- * @param {String} name Name of parameter to set.
- * @param {String} value Set attribute to this value.
- */
-function domSetAttribute(node, name, value) {
- node.setAttribute(name, value);
-}
-
-/**
- * Remove an attribute from the DOM. Simple redirect to compress code.
- *
- * @param {Element} node Element to interrogate.
- * @param {String} name Name of parameter to remove.
- */
-function domRemoveAttribute(node, name) {
- node.removeAttribute(name);
-}
-
-/**
- * Clone a node in the DOM.
- *
- * @param {Node} node Node to clone.
- * @return {Node} Cloned node.
- */
-function domCloneNode(node) {
- return node.cloneNode(true);
- // NOTE: we never so far wanted to use cloneNode(false),
- // hence the default.
-}
-
-
-/**
- * Return a safe string for the className of a node.
- * If className is not a string, returns "".
- *
- * @param {Element} node DOM element to query.
- * @return {String}
- */
-function domClassName(node) {
- return node.className ? "" + node.className : "";
-}
-
-/**
- * Adds a class name to the class attribute of the given node.
- *
- * @param {Element} node DOM element to modify.
- * @param {String} className Class name to add.
- */
-function domAddClass(node, className) {
- var name = domClassName(node);
- if (name) {
- var cn = name.split(/\s+/);
- var found = false;
- for (var i = 0; i < jsLength(cn); ++i) {
- if (cn[i] == className) {
- found = true;
- break;
- }
- }
-
- if (!found) {
- cn.push(className);
- }
-
- node.className = cn.join(' ');
- } else {
- node.className = className;
- }
-}
-
-/**
- * Removes a class name from the class attribute of the given node.
- *
- * @param {Element} node DOM element to modify.
- * @param {String} className Class name to remove.
- */
-function domRemoveClass(node, className) {
- // Don't touch the class name if we won't find anything to change
- // anyway.
- var c = domClassName(node);
- if (!c || c.indexOf(className) == -1) {
- return;
- }
- var cn = c.split(/\s+/);
- for (var i = 0; i < jsLength(cn); ++i) {
- if (cn[i] == className) {
- cn.splice(i--, 1);
- }
- }
- node.className = cn.join(' ');
-}
-
-/**
- * Checks if a node belongs to a style class.
- *
- * @param {Element} node DOM element to test.
- * @param {String} className Class name to check for.
- * @return {Boolean} Node belongs to style class.
- */
-function domTestClass(node, className) {
- var cn = domClassName(node).split(/\s+/);
- for (var i = 0; i < jsLength(cn); ++i) {
- if (cn[i] == className) {
- return true;
- }
- }
- return false;
-}
-
-/**
- * Inserts a new child before a given sibling.
- *
- * @param {Node} newChild Node to insert.
- * @param {Node} oldChild Sibling node.
- * @return {Node} Reference to new child.
- */
-function domInsertBefore(newChild, oldChild) {
- return oldChild.parentNode.insertBefore(newChild, oldChild);
-}
-
-/**
- * Appends a new child to the specified (parent) node.
- *
- * @param {Element} node Parent element.
- * @param {Node} child Child node to append.
- * @return {Node} Newly appended node.
- */
-function domAppendChild(node, child) {
- return node.appendChild(child);
-}
-
-/**
- * Remove a new child from the specified (parent) node.
- *
- * @param {Element} node Parent element.
- * @param {Node} child Child node to remove.
- * @return {Node} Removed node.
- */
-function domRemoveChild(node, child) {
- return node.removeChild(child);
-}
-
-/**
- * Replaces an old child node with a new child node.
- *
- * @param {Node} newChild New child to append.
- * @param {Node} oldChild Old child to remove.
- * @return {Node} Replaced node.
- */
-function domReplaceChild(newChild, oldChild) {
- return oldChild.parentNode.replaceChild(newChild, oldChild);
-}
-
-/**
- * Removes a node from the DOM.
- *
- * @param {Node} node The node to remove.
- * @return {Node} The removed node.
- */
-function domRemoveNode(node) {
- return domRemoveChild(node.parentNode, node);
-}
-
-/**
- * Creates a new text node in the given document.
- *
- * @param {Document} doc Target document.
- * @param {String} text Text composing new text node.
- * @return {Text} Newly constructed text node.
- */
-function domCreateTextNode(doc, text) {
- return doc.createTextNode(text);
-}
-
-/**
- * Creates a new node in the given document
- *
- * @param {Document} doc Target document.
- * @param {String} name Name of new element (i.e. the tag name)..
- * @return {Element} Newly constructed element.
- */
-function domCreateElement(doc, name) {
- return doc.createElement(name);
-}
-
-/**
- * Creates a new attribute in the given document.
- *
- * @param {Document} doc Target document.
- * @param {String} name Name of new attribute.
- * @return {Attr} Newly constructed attribute.
- */
-function domCreateAttribute(doc, name) {
- return doc.createAttribute(name);
-}
-
-/**
- * Creates a new comment in the given document.
- *
- * @param {Document} doc Target document.
- * @param {String} text Comment text.
- * @return {Comment} Newly constructed comment.
- */
-function domCreateComment(doc, text) {
- return doc.createComment(text);
-}
-
-/**
- * Creates a document fragment.
- *
- * @param {Document} doc Target document.
- * @return {DocumentFragment} Resulting document fragment node.
- */
-function domCreateDocumentFragment(doc) {
- return doc.createDocumentFragment();
-}
-
-/**
- * Redirect to document.getElementById
- *
- * @param {Document} doc Target document.
- * @param {String} id Id of requested node.
- * @return {Element|Null} Resulting element.
- */
-function domGetElementById(doc, id) {
- return doc.getElementById(id);
-}
-
-/**
- * Redirect to window.setInterval
- *
- * @param {Window} win Target window.
- * @param {Function} fun Callback function.
- * @param {Number} time Time in milliseconds.
- * @return {Object} Contract id.
- */
-function windowSetInterval(win, fun, time) {
- return win.setInterval(fun, time);
-}
-
-/**
- * Redirect to window.clearInterval
- *
- * @param {Window} win Target window.
- * @param {object} id Contract id.
- * @return {any} NOTE: Return type unknown?
- */
-function windowClearInterval(win, id) {
- return win.clearInterval(id);
-}
-
-/**
- * Determines whether one node is recursively contained in another.
- * @param parent The parent node.
- * @param child The node to look for in parent.
- * @return parent recursively contains child
- */
-function containsNode(parent, child) {
- while (parent != child && child.parentNode) {
- child = child.parentNode;
- }
- return parent == child;
-};
« no previous file with comments | « chrome/third_party/jstemplate/compile.sh ('k') | chrome/third_party/jstemplate/exports.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698