1// Copyright 2014 Google Inc. All Rights Reserved. 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15package report 16 17import ( 18 "html/template" 19) 20 21// AddSourceTemplates adds templates used by PrintWebList to t. 22func AddSourceTemplates(t *template.Template) { 23 template.Must(t.Parse(`{{define "weblistcss"}}` + weblistPageCSS + `{{end}}`)) 24 template.Must(t.Parse(`{{define "weblistjs"}}` + weblistPageScript + `{{end}}`)) 25} 26 27const weblistPageCSS = `<style type="text/css"> 28body #content{ 29font-family: sans-serif; 30} 31h1 { 32 font-size: 1.5em; 33} 34.legend { 35 font-size: 1.25em; 36} 37.line, .nop, .unimportant { 38 color: #aaaaaa; 39} 40.inlinesrc { 41 color: #000066; 42} 43.livesrc { 44cursor: pointer; 45} 46.livesrc:hover { 47background-color: #eeeeee; 48} 49.asm { 50color: #008800; 51display: none; 52} 53</style>` 54 55const weblistPageScript = `<script type="text/javascript"> 56function pprof_toggle_asm(e) { 57 var target; 58 if (!e) e = window.event; 59 if (e.target) target = e.target; 60 else if (e.srcElement) target = e.srcElement; 61 62 if (target) { 63 var asm = target.nextSibling; 64 if (asm && asm.className == "asm") { 65 asm.style.display = (asm.style.display == "block" ? "" : "block"); 66 e.preventDefault(); 67 return false; 68 } 69 } 70} 71</script>` 72