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

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

Issue 1101083003: Fixes to enable building dart io implementation in mojo tree (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 5 years, 8 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 | Annotate | Revision Log
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 script_inset_element; 5 library script_inset_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 'service_ref.dart'; 10 import 'service_ref.dart';
(...skipping 317 matching lines...) Expand 10 before | Expand all | Expand 10 after
328 func.load(); 328 func.load();
329 } 329 }
330 }); 330 });
331 } 331 }
332 }); 332 });
333 } 333 }
334 334
335 void computeAnnotations() { 335 void computeAnnotations() {
336 _startLine = (startPos != null 336 _startLine = (startPos != null
337 ? script.tokenToLine(startPos) 337 ? script.tokenToLine(startPos)
338 : 1); 338 : 1 + script.lineOffset);
339 _currentLine = (currentPos != null 339 _currentLine = (currentPos != null
340 ? script.tokenToLine(currentPos) 340 ? script.tokenToLine(currentPos)
341 : null); 341 : null);
342 _currentCol = (currentPos != null 342 _currentCol = (currentPos != null
343 ? (script.tokenToCol(currentPos) - 1) // make this 0-based. 343 ? (script.tokenToCol(currentPos) - 1) // make this 0-based.
344 : null); 344 : null);
345 _endLine = (endPos != null 345 _endLine = (endPos != null
346 ? script.tokenToLine(endPos) 346 ? script.tokenToLine(endPos)
347 : script.lines.length); 347 : script.lines.length + script.lineOffset);
348 348
349 annotations.clear(); 349 annotations.clear();
350 if (_currentLine != null) { 350 if (_currentLine != null) {
351 var a = new CurrentExecutionAnnotation(); 351 var a = new CurrentExecutionAnnotation();
352 a.line = _currentLine; 352 a.line = _currentLine;
353 a.columnStart = _currentCol; 353 a.columnStart = _currentCol;
354 a.columnStop = _currentCol + 1; 354 a.columnStop = _currentCol + 1;
355 annotations.add(a); 355 annotations.add(a);
356 } 356 }
357 357
(...skipping 21 matching lines...) Expand all
379 annotations.sort(); 379 annotations.sort();
380 } 380 }
381 381
382 Element linesTable() { 382 Element linesTable() {
383 var table = new DivElement(); 383 var table = new DivElement();
384 table.classes.add("sourceTable"); 384 table.classes.add("sourceTable");
385 385
386 annotationsCursor = 0; 386 annotationsCursor = 0;
387 387
388 int blankLineCount = 0; 388 int blankLineCount = 0;
389 for (int i = (_startLine - 1); i <= (_endLine - 1); i++) { 389 for (int i = _startLine; i <= _endLine; i++) {
390 if (script.lines[i].isBlank) { 390 var line = script.getLine(i);
391 if (line.isBlank) {
391 // Try to introduce elipses if there are 4 or more contiguous 392 // Try to introduce elipses if there are 4 or more contiguous
392 // blank lines. 393 // blank lines.
393 blankLineCount++; 394 blankLineCount++;
394 } else { 395 } else {
395 if (blankLineCount > 0) { 396 if (blankLineCount > 0) {
396 int firstBlank = i - blankLineCount; 397 int firstBlank = i - blankLineCount;
397 int lastBlank = i - 1; 398 int lastBlank = i - 1;
398 if (blankLineCount < 4) { 399 if (blankLineCount < 4) {
399 // Too few blank lines for an elipsis. 400 // Too few blank lines for an elipsis.
400 for (int j = firstBlank; j <= lastBlank; j++) { 401 for (int j = firstBlank; j <= lastBlank; j++) {
401 table.append(lineElement(script.lines[j])); 402 table.append(lineElement(script.getLine(j)));
402 } 403 }
403 } else { 404 } else {
404 // Add an elipsis for the skipped region. 405 // Add an elipsis for the skipped region.
405 table.append(lineElement(script.lines[firstBlank])); 406 table.append(lineElement(script.getLine(firstBlank)));
406 table.append(lineElement(null)); 407 table.append(lineElement(null));
407 table.append(lineElement(script.lines[lastBlank])); 408 table.append(lineElement(script.getLine(lastBlank)));
408 } 409 }
409 blankLineCount = 0; 410 blankLineCount = 0;
410 } 411 }
411 table.append(lineElement(script.lines[i])); 412 table.append(lineElement(line));
412 } 413 }
413 } 414 }
414 415
415 return table; 416 return table;
416 } 417 }
417 418
418 // Assumes annotations are sorted. 419 // Assumes annotations are sorted.
419 Annotation nextAnnotationOnLine(int line) { 420 Annotation nextAnnotationOnLine(int line) {
420 if (annotationsCursor >= annotations.length) return null; 421 if (annotationsCursor >= annotations.length) return null;
421 var annotation = annotations[annotationsCursor]; 422 var annotation = annotations[annotationsCursor];
(...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after
550 annotation.applyStyleTo(consumeUntil(annotation.columnStop)); 551 annotation.applyStyleTo(consumeUntil(annotation.columnStop));
551 } 552 }
552 consumeUntil(line.text.length); 553 consumeUntil(line.text.length);
553 } 554 }
554 555
555 return e; 556 return e;
556 } 557 }
557 558
558 ScriptInsetElement.created() : super.created(); 559 ScriptInsetElement.created() : super.created();
559 } 560 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698