blob: c81dd90ca35d0fbdd8e2892297d1645e1c2c4fe0 [file] [log] [blame]
<!DOCTYPE html>
<!--
Copyright (c) 2013 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="/base/units/util.html">
<link rel="import" href="/core/selection.html">
<link rel="import" href="/base/ui.html">
<polymer-element name="tr-c-a-analysis-link" is="a">
<template>
<style>
:host {
display: inline;
color: -webkit-link;
cursor: pointer;
text-decoration: underline;
/* TODO(nduca): Whitespace is forced to normal here because the
analysis_results.css forces everything under it to pre. This is insane.
When that horrible evil class dies, then we can rip this white-space
restriction out.
*/
white-space: normal;
cursor: pointer;
}
</style>
<content></content>
</template>
<script>
'use strict';
Polymer({
ready: function() {
this.addEventListener('click', this.onClicked_.bind(this));
this.selection_ = undefined;
},
get selection() {
return this.selection_;
},
set selection(selection) {
this.selection_ = selection;
this.textContent = selection.userFriendlyName;
},
setSelectionAndContent: function(selection, opt_textContent) {
this.selection_ = selection;
if (opt_textContent)
this.textContent = opt_textContent;
},
onClicked_: function() {
if (!this.selection_)
return;
var event = new tr.c.RequestSelectionChangeEvent();
if (typeof this.selection_ === 'function')
event.selection = this.selection_();
else
event.selection = this.selection_;
this.dispatchEvent(event);
}
});
</script>
</polymer-element>