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

Side by Side Diff: tracing/tracing/ui/base/ui.html

Issue 2390373003: Change all == to === and != to !== in trace viewer. (Closed)
Patch Set: more changes from code review Created 4 years, 2 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 unified diff | Download patch
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <!-- 2 <!--
3 Copyright (c) 2014 The Chromium Authors. All rights reserved. 3 Copyright (c) 2014 The Chromium Authors. All rights reserved.
4 Use of this source code is governed by a BSD-style license that can be 4 Use of this source code is governed by a BSD-style license that can be
5 found in the LICENSE file. 5 found in the LICENSE file.
6 --> 6 -->
7 <link rel="import" href="/tracing/base/base.html"> 7 <link rel="import" href="/tracing/base/base.html">
8 <script> 8 <script>
9 'use strict'; 9 'use strict';
10 10
11 tr.exportTo('tr.ui.b', function() { 11 tr.exportTo('tr.ui.b', function() {
12 12
13 /** 13 /**
14 * Decorates elements as an instance of a class. 14 * Decorates elements as an instance of a class.
15 * @param {string|!Element} source The way to find the element(s) to decorate. 15 * @param {string|!Element} source The way to find the element(s) to decorate.
16 * If this is a string then {@code querySeletorAll} is used to find the 16 * If this is a string then {@code querySeletorAll} is used to find the
17 * elements to decorate. 17 * elements to decorate.
18 * @param {!Function} constr The constructor to decorate with. The constr 18 * @param {!Function} constr The constructor to decorate with. The constr
19 * needs to have a {@code decorate} function. 19 * needs to have a {@code decorate} function.
20 */ 20 */
21 function decorate(source, constr) { 21 function decorate(source, constr) {
22 var elements; 22 var elements;
23 if (typeof source == 'string') 23 if (typeof source === 'string')
24 elements = Polymer.dom(tr.doc).querySelectorAll(source); 24 elements = Polymer.dom(tr.doc).querySelectorAll(source);
25 else 25 else
26 elements = [source]; 26 elements = [source];
27 27
28 for (var i = 0, el; el = elements[i]; i++) { 28 for (var i = 0, el; el = elements[i]; i++) {
29 if (!(el instanceof constr)) 29 if (!(el instanceof constr))
30 constr.decorate(el); 30 constr.decorate(el);
31 } 31 }
32 } 32 }
33 33
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
65 * be also a function created by tr.ui.b.define. 65 * be also a function created by tr.ui.b.define.
66 * 66 *
67 * @param {string=} opt_tagNS The namespace in which to create the base 67 * @param {string=} opt_tagNS The namespace in which to create the base
68 * element. Has no meaning when opt_parentConstructor is passed and must 68 * element. Has no meaning when opt_parentConstructor is passed and must
69 * either be undefined or the same namespace as the parent class. 69 * either be undefined or the same namespace as the parent class.
70 * 70 *
71 * @return {function(Object=):Element} The newly created component 71 * @return {function(Object=):Element} The newly created component
72 * constructor. 72 * constructor.
73 */ 73 */
74 function define(className, opt_parentConstructor, opt_tagNS) { 74 function define(className, opt_parentConstructor, opt_tagNS) {
75 if (typeof className == 'function') { 75 if (typeof className === 'function') {
76 throw new Error('Passing functions as className is deprecated. Please ' + 76 throw new Error('Passing functions as className is deprecated. Please ' +
77 'use (className, opt_parentConstructor) to subclass'); 77 'use (className, opt_parentConstructor) to subclass');
78 } 78 }
79 79
80 var className = className.toLowerCase(); 80 var className = className.toLowerCase();
81 if (opt_parentConstructor && !opt_parentConstructor.tagName) 81 if (opt_parentConstructor && !opt_parentConstructor.tagName)
82 throw new Error('opt_parentConstructor was not ' + 82 throw new Error('opt_parentConstructor was not ' +
83 'created by tr.ui.b.define'); 83 'created by tr.ui.b.define');
84 84
85 // Walk up the parent constructors until we can find the type of tag 85 // Walk up the parent constructors until we can find the type of tag
(...skipping 15 matching lines...) Expand all
101 101
102 /** 102 /**
103 * Creates a new UI element constructor. 103 * Creates a new UI element constructor.
104 * Arguments passed to the constuctor are provided to the decorate method. 104 * Arguments passed to the constuctor are provided to the decorate method.
105 * You will need to call the parent elements decorate method from within 105 * You will need to call the parent elements decorate method from within
106 * your decorate method and pass any required parameters. 106 * your decorate method and pass any required parameters.
107 * @constructor 107 * @constructor
108 */ 108 */
109 function f() { 109 function f() {
110 if (opt_parentConstructor && 110 if (opt_parentConstructor &&
111 f.prototype.__proto__ != opt_parentConstructor.prototype) { 111 f.prototype.__proto__ !== opt_parentConstructor.prototype) {
112 throw new Error( 112 throw new Error(
113 className + ' prototye\'s __proto__ field is messed up. ' + 113 className + ' prototye\'s __proto__ field is messed up. ' +
114 'It MUST be the prototype of ' + opt_parentConstructor.tagName); 114 'It MUST be the prototype of ' + opt_parentConstructor.tagName);
115 } 115 }
116 116
117 var el; 117 var el;
118 if (tagNS === undefined) 118 if (tagNS === undefined)
119 el = tr.doc.createElement(tagName); 119 el = tr.doc.createElement(tagName);
120 else 120 else
121 el = tr.doc.createElementNS(tagNS, tagName); 121 el = tr.doc.createElementNS(tagNS, tagName);
(...skipping 19 matching lines...) Expand all
141 f.toString = function() { 141 f.toString = function() {
142 if (!f.parentConstructor) 142 if (!f.parentConstructor)
143 return f.tagName; 143 return f.tagName;
144 return f.parentConstructor.toString() + '::' + f.className; 144 return f.parentConstructor.toString() + '::' + f.className;
145 }; 145 };
146 146
147 return f; 147 return f;
148 } 148 }
149 149
150 function elementIsChildOf(el, potentialParent) { 150 function elementIsChildOf(el, potentialParent) {
151 if (el == potentialParent) 151 if (el === potentialParent)
152 return false; 152 return false;
153 153
154 var cur = el; 154 var cur = el;
155 while (Polymer.dom(cur).parentNode) { 155 while (Polymer.dom(cur).parentNode) {
156 if (cur == potentialParent) 156 if (cur === potentialParent)
157 return true; 157 return true;
158 cur = Polymer.dom(cur).parentNode; 158 cur = Polymer.dom(cur).parentNode;
159 } 159 }
160 return false; 160 return false;
161 }; 161 }
162 162
163 return { 163 return {
164 decorate: decorate, 164 decorate: decorate,
165 define: define, 165 define: define,
166 elementIsChildOf: elementIsChildOf 166 elementIsChildOf: elementIsChildOf
167 }; 167 };
168 }); 168 });
169 </script> 169 </script>
OLDNEW
« no previous file with comments | « tracing/tracing/ui/base/timing_tool.html ('k') | tracing/tracing/ui/extras/about_tracing/record_controller.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698