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

Side by Side Diff: runtime/observatory/lib/src/elements/code_view.dart

Issue 1208153002: Include pattern and functions for RegExps over the service protocol. Remove quadratic behavior from… (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 5 years, 5 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
« no previous file with comments | « no previous file | runtime/observatory/lib/src/elements/instance_ref.html » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library code_view_element; 5 library code_view_element;
6 6
7 import 'dart:async'; 7 import 'dart:async';
8 import 'dart:html'; 8 import 'dart:html';
9 import 'observatory_element.dart'; 9 import 'observatory_element.dart';
10 import 'package:observatory/app.dart'; 10 import 'package:observatory/app.dart';
(...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after
190 cell.classes.add('monospace'); 190 cell.classes.add('monospace');
191 cell = tr.insertCell(-1); 191 cell = tr.insertCell(-1);
192 cell.classes.add('monospace'); 192 cell.classes.add('monospace');
193 cell = tr.insertCell(-1); 193 cell = tr.insertCell(-1);
194 cell.classes.add('monospace'); 194 cell.classes.add('monospace');
195 195
196 tableBody.children.add(tr); 196 tableBody.children.add(tr);
197 } 197 }
198 198
199 void _fillDisassemblyDOMRow(TableRowElement tr, int rowIndex) { 199 void _fillDisassemblyDOMRow(TableRowElement tr, int rowIndex) {
200 var row = disassemblyTable.rows[rowIndex]; 200 final row = disassemblyTable.rows[rowIndex];
201 for (var i = 0; i < row.values.length; i++) { 201 final n = row.values.length;
202 var cell = tr.children[i]; 202 for (var i = 0; i < n; i++) {
203 final cell = tr.children[i];
203 cell.title = row.values[i].toString(); 204 cell.title = row.values[i].toString();
204 cell.text = row.values[i].toString(); 205 cell.text = row.values[i].toString();
205 } 206 }
206 } 207 }
207 208
208 void _updateDisassemblyDOMTable() { 209 void _updateDisassemblyDOMTable() {
209 var tableBody = $['disassemblyTableBody']; 210 var tableBody = $['disassemblyTableBody'];
210 assert(tableBody != null); 211 assert(tableBody != null);
211 // Resize DOM table. 212 // Resize DOM table.
212 if (tableBody.children.length > disassemblyTable.sortedRows.length) { 213 if (tableBody.children.length > disassemblyTable.sortedRows.length) {
213 // Shrink the table. 214 // Shrink the table.
214 var deadRows = 215 var deadRows =
215 tableBody.children.length - disassemblyTable.sortedRows.length; 216 tableBody.children.length - disassemblyTable.sortedRows.length;
216 for (var i = 0; i < deadRows; i++) { 217 for (var i = 0; i < deadRows; i++) {
217 tableBody.children.removeLast(); 218 tableBody.children.removeLast();
218 } 219 }
219 } else if (tableBody.children.length < disassemblyTable.sortedRows.length) { 220 } else if (tableBody.children.length < disassemblyTable.sortedRows.length) {
220 // Grow table. 221 // Grow table.
221 var newRows = 222 var newRows =
222 disassemblyTable.sortedRows.length - tableBody.children.length; 223 disassemblyTable.sortedRows.length - tableBody.children.length;
223 for (var i = 0; i < newRows; i++) { 224 for (var i = 0; i < newRows; i++) {
224 _addDisassemblyDOMRow(); 225 _addDisassemblyDOMRow();
225 } 226 }
226 } 227 }
227 228
228 assert(tableBody.children.length == disassemblyTable.sortedRows.length); 229 assert(tableBody.children.length == disassemblyTable.sortedRows.length);
230
229 // Fill table. 231 // Fill table.
230 for (var i = 0; i < disassemblyTable.sortedRows.length; i++) { 232 var i = 0;
233 for (var tr in tableBody.children) {
231 var rowIndex = disassemblyTable.sortedRows[i]; 234 var rowIndex = disassemblyTable.sortedRows[i];
232 var tr = tableBody.children[i];
233 _fillDisassemblyDOMRow(tr, rowIndex); 235 _fillDisassemblyDOMRow(tr, rowIndex);
236 i++;
234 } 237 }
235 } 238 }
236 239
237 void _updateDisassembly() { 240 void _updateDisassembly() {
238 _updateDiasssemblyTable(); 241 _updateDiasssemblyTable();
239 _updateDisassemblyDOMTable(); 242 _updateDisassemblyDOMTable();
240 } 243 }
241 244
242 void _updateInlineTable() { 245 void _updateInlineTable() {
243 inlineTable.clearRows(); 246 inlineTable.clearRows();
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after
361 } 364 }
362 365
363 void mouseOut(Event e, var detail, Node target) { 366 void mouseOut(Event e, var detail, Node target) {
364 var jt = _findJumpTarget(target); 367 var jt = _findJumpTarget(target);
365 if (jt == null) { 368 if (jt == null) {
366 return; 369 return;
367 } 370 }
368 jt.classes.remove('highlight'); 371 jt.classes.remove('highlight');
369 } 372 }
370 } 373 }
OLDNEW
« no previous file with comments | « no previous file | runtime/observatory/lib/src/elements/instance_ref.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698