| OLD | NEW |
| 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 observatory_element; | 5 library observatory_element; |
| 6 | 6 |
| 7 import 'dart:math'; | 7 import 'dart:math'; |
| 8 import 'package:polymer/polymer.dart'; | 8 import 'package:polymer/polymer.dart'; |
| 9 | 9 |
| 10 /// Base class for all Observatory custom elements. | 10 /// Base class for all Observatory custom elements. |
| (...skipping 20 matching lines...) Expand all Loading... |
| 31 while (pad > 1) { | 31 while (pad > 1) { |
| 32 int pow10 = pow(10, pad - 1); | 32 int pow10 = pow(10, pad - 1); |
| 33 if (value < pow10) { | 33 if (value < pow10) { |
| 34 prefix = prefix + "0"; | 34 prefix = prefix + "0"; |
| 35 } | 35 } |
| 36 pad--; | 36 pad--; |
| 37 } | 37 } |
| 38 return "${prefix}${value}"; | 38 return "${prefix}${value}"; |
| 39 } | 39 } |
| 40 | 40 |
| 41 String formatTime(double time) { | 41 String formatTimePrecise(double time) { |
| 42 if (time == null) { | 42 if (time == null) { |
| 43 return "-"; | 43 return "-"; |
| 44 } | 44 } |
| 45 const millisPerHour = 60 * 60 * 1000; | 45 const millisPerHour = 60 * 60 * 1000; |
| 46 const millisPerMinute = 60 * 1000; | 46 const millisPerMinute = 60 * 1000; |
| 47 const millisPerSecond = 1000; | 47 const millisPerSecond = 1000; |
| 48 | 48 |
| 49 var millis = (time * millisPerSecond).round(); | 49 var millis = (time * millisPerSecond).round(); |
| 50 | 50 |
| 51 var hours = millis ~/ millisPerHour; | 51 var hours = millis ~/ millisPerHour; |
| 52 millis = millis % millisPerHour; | 52 millis = millis % millisPerHour; |
| 53 | 53 |
| 54 var minutes = millis ~/ millisPerMinute; | 54 var minutes = millis ~/ millisPerMinute; |
| 55 millis = millis % millisPerMinute; | 55 millis = millis % millisPerMinute; |
| 56 | 56 |
| 57 var seconds = millis ~/ millisPerSecond; | 57 var seconds = millis ~/ millisPerSecond; |
| 58 millis = millis % millisPerSecond; | 58 millis = millis % millisPerSecond; |
| 59 | 59 |
| 60 return ("${_zeroPad(hours,2)}" | 60 return ("${_zeroPad(hours,2)}" |
| 61 ":${_zeroPad(minutes,2)}" | 61 ":${_zeroPad(minutes,2)}" |
| 62 ":${_zeroPad(seconds,2)}" | 62 ":${_zeroPad(seconds,2)}" |
| 63 ".${_zeroPad(millis,3)}"); | 63 ".${_zeroPad(millis,3)}"); |
| 64 | 64 |
| 65 } | 65 } |
| 66 | 66 |
| 67 String formatTime(double time) { |
| 68 if (time == null) { |
| 69 return "-"; |
| 70 } |
| 71 const millisPerHour = 60 * 60 * 1000; |
| 72 const millisPerMinute = 60 * 1000; |
| 73 const millisPerSecond = 1000; |
| 74 |
| 75 var millis = (time * millisPerSecond).round(); |
| 76 |
| 77 var hours = millis ~/ millisPerHour; |
| 78 millis = millis % millisPerHour; |
| 79 |
| 80 var minutes = millis ~/ millisPerMinute; |
| 81 millis = millis % millisPerMinute; |
| 82 |
| 83 var seconds = millis ~/ millisPerSecond; |
| 84 |
| 85 StringBuffer out = new StringBuffer(); |
| 86 if (hours != 0) { |
| 87 return '${hours}h ${minutes}m ${seconds}s'; |
| 88 } |
| 89 if (minutes != 0) { |
| 90 return '${minutes}m ${seconds}s'; |
| 91 } |
| 92 return '${seconds}s'; |
| 93 } |
| 94 |
| 67 String formatSeconds(double x) { | 95 String formatSeconds(double x) { |
| 68 return x.toStringAsFixed(2); | 96 return x.toStringAsFixed(2); |
| 69 } | 97 } |
| 70 | 98 |
| 71 | 99 |
| 72 String formatSize(int bytes) { | 100 String formatSize(int bytes) { |
| 73 const int bytesPerKB = 1024; | 101 const int bytesPerKB = 1024; |
| 74 const int bytesPerMB = 1024 * bytesPerKB; | 102 const int bytesPerMB = 1024 * bytesPerKB; |
| 75 const int bytesPerGB = 1024 * bytesPerMB; | 103 const int bytesPerGB = 1024 * bytesPerMB; |
| 76 const int bytesPerTB = 1024 * bytesPerGB; | 104 const int bytesPerTB = 1024 * bytesPerGB; |
| (...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 141 'Bool', | 169 'Bool', |
| 142 'String', | 170 'String', |
| 143 'Closure', | 171 'Closure', |
| 144 'Double', | 172 'Double', |
| 145 'Instance', | 173 'Instance', |
| 146 'GrowableObjectArray', | 174 'GrowableObjectArray', |
| 147 'Array', | 175 'Array', |
| 148 'Error'].contains(type)); | 176 'Error'].contains(type)); |
| 149 } | 177 } |
| 150 } | 178 } |
| OLD | NEW |