| <!DOCTYPE html> |
| <!-- |
| Copyright (c) 2015 The Chromium Authors. All rights reserved. |
| Use of this source code is governed by a BSD-style license that can be |
| found in the LICENSE file. |
| --> |
| |
| <link rel="import" href="/core/analysis/analysis_sub_view.html"> |
| <link rel="import" href="/base/ui/table.html"> |
| <link rel="import" href="/base/units/util.html"> |
| |
| <polymer-element name="tr-c-a-multi-global-memory-dump-sub-view" |
| extends="tr-c-a-sub-view"> |
| <template> |
| <style> |
| :host { |
| display: flex; |
| } |
| </style> |
| <tr-b-ui-table id="content"></tr-b-ui-table> |
| </template> |
| |
| <script> |
| 'use strict'; |
| |
| Polymer({ |
| created: function() { |
| this.currentSelection_ = undefined; |
| }, |
| |
| get selection() { |
| return this.currentSelection_; |
| }, |
| |
| set selection(selection) { |
| this.currentSelection_ = selection; |
| |
| selection = tr.b.asArray(selection).sort( |
| tr.b.Range.compareByMinTimes); |
| |
| var table = this.$.content; |
| table.tableColumns = [ |
| { |
| title: 'Dump', |
| value: function(row) { |
| var linkEl = document.createElement('tr-c-a-analysis-link'); |
| linkEl.setSelectionAndContent(function() { |
| return new tr.c.Selection(row); |
| }); |
| var spanEl = document.createElement('span'); |
| spanEl.textContent = 'Global memory dump at '; |
| linkEl.appendChild(spanEl); |
| linkEl.appendChild(tr.b.units.createTimeStampSpan(row.start)); |
| return linkEl; |
| } |
| } |
| ]; |
| table.showHeader = false; |
| table.tableRows = selection; |
| table.rebuild(); |
| } |
| }); |
| </script> |
| </polymer-element> |