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

Side by Side Diff: runtime/bin/vmservice/observatory/lib/src/elements/class_view.html

Issue 810623005: Build Observatory with runtime (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 5 years, 11 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
(Empty)
1 <link rel="import" href="../../../../packages/polymer/polymer.html">
2 <link rel="import" href="curly_block.html">
3 <link rel="import" href="eval_box.html">
4 <link rel="import" href="eval_link.html">
5 <link rel="import" href="field_ref.html">
6 <link rel="import" href="function_ref.html">
7 <link rel="import" href="instance_ref.html">
8 <link rel="import" href="library_ref.html">
9 <link rel="import" href="nav_bar.html">
10 <link rel="import" href="observatory_element.html">
11 <link rel="import" href="script_inset.html">
12 <link rel="import" href="script_ref.html">
13
14 <polymer-element name="class-view" extends="observatory-element">
15 <template>
16 <link rel="stylesheet" href="css/shared.css">
17 <nav-bar>
18 <top-nav-menu></top-nav-menu>
19 <isolate-nav-menu isolate="{{ cls.isolate }}"></isolate-nav-menu>
20 <library-nav-menu library="{{ cls.library }}"></library-nav-menu>
21 <class-nav-menu cls="{{ cls }}" last="{{ true }}"></class-nav-menu>
22 <nav-refresh callback="{{ refreshCoverage }}" label="Refresh Coverage"></n av-refresh>
23 <nav-refresh callback="{{ refresh }}"></nav-refresh>
24 <nav-control></nav-control>
25 </nav-bar>
26
27 <div class="content">
28 <h1>
29 <template if="{{ cls.isAbstract }}">
30 abstract
31 </template>
32 <template if="{{ cls.isPatch }}">
33 patch
34 </template>
35 class {{ cls.name }}
36 </h1>
37 <div class="memberList">
38 <div class="memberItem">
39 <div class="memberName">library</div>
40 <div class="memberValue">
41 <library-ref ref="{{ cls.library }}"></library-ref>
42 </div>
43 </div>
44 <div class="memberItem">
45 <div class="memberName">script</div>
46 <div class="memberValue">
47 <script-ref ref="{{ cls.script }}" pos="{{ cls.tokenPos }}">
48 </script-ref>
49 </div>
50 </div>
51
52 <div class="memberItem">&nbsp;</div>
53
54 <template if="{{ cls.superclass != null }}">
55 <div class="memberItem">
56 <div class="memberName">extends</div>
57 <div class="memberValue">
58 <class-ref ref="{{ cls.superclass }}"></class-ref>
59 </div>
60 </div>
61 </template>
62 <template if="{{ cls.subclasses.length > 0 }}">
63 <div class="memberItem">
64 <div class="memberName">extended by</div>
65 <div class="memberValue">
66 <template repeat="{{ subclass in cls.subclasses }}">
67 <class-ref ref="{{ subclass }}"></class-ref>
68 </template>
69 </div>
70 </div>
71 </template>
72
73 <div class="memberItem">&nbsp;</div>
74
75 <template if="{{ cls.interfaces.length > 0 }}">
76 <div class="memberItem">
77 <div class="memberName">implements</div>
78 <div class="memberValue">
79 <template repeat="{{ interface in cls.interfaces }}">
80 <class-ref ref="{{ interface }}"></class-ref>
81 </template>
82 </div>
83 </div>
84 </template>
85 <template if="{{ cls.name != cls.vmName }}">
86 <div class="memberItem">
87 <div class="memberName">vm name</div>
88 <div class="memberValue">{{ cls.vmName }}</div>
89 </div>
90 </template>
91 </div>
92 </div>
93
94 <template if="{{ cls.error != null }}">
95 <error-ref ref="{{ cls.error }}"></error-ref>
96 </template>
97
98 <hr>
99
100 <div class="content">
101 <template if="{{ cls.fields.isNotEmpty }}">
102 fields ({{ cls.fields.length }})
103 <curly-block expand="{{ cls.fields.length <= 8 }}">
104 <div class="memberList">
105 <template repeat="{{ field in cls.fields }}">
106 <div class="memberItem">
107 <div class="memberName">
108 <field-ref ref="{{ field }}"></field-ref>
109 </div>
110 <div class="memberValue">
111 <template if="{{ field.value != null }}">
112 <any-service-ref ref="{{ field.value }}"></any-service-ref>
113 </template>
114 </div>
115 </div>
116 </template>
117 </div>
118 </curly-block><br><br>
119 </template>
120
121 <template if="{{ cls.functions.isNotEmpty }}">
122 functions ({{ cls.functions.length }})
123 <curly-block expand="{{ cls.functions.length <= 8 }}">
124 <div class="memberList">
125 <template repeat="{{ function in cls.functions }}">
126 <div class="memberItem">
127 <div class="memberValue">
128 <function-ref ref="{{ function }}" qualified="{{ false }}">
129 </function-ref>
130 </div>
131 </div>
132 </template>
133 </div>
134 </curly-block><br><br>
135 </template>
136
137 <template if="{{ !cls.hasNoAllocations }}">
138 instances
139 <div class="memberItem">
140 <div class="memberName">currently allocated</div>
141 <div class="memberValue">
142 count {{ cls.newSpace.current.instances + cls.oldSpace.current.ins tances }}
143 (shallow size {{ cls.newSpace.current.bytes + cls.oldSpace.current .bytes | formatSize }})
144 </div>
145 </div>
146 <div class="memberItem">
147 <div class="memberName">strongly reachable</div>
148 <div class="memberValue">
149 <template if="{{ instances == null }}">
150 <eval-link callback="{{ reachable }}"
151 label="[find]"
152 expr="100">
153 </eval-link>
154 </template>
155 <template if="{{ instances != null }}">
156 sample
157 <any-service-ref ref="{{ instances['sample'] }}"></any-service-r ef>
158 <template if="{{ instances['totalCount'] > instances['sampleCoun t'] }}">
159 <eval-link callback="{{ reachable }}"
160 label="[more]"
161 expr="{{ instances['sampleCount'] * 2 }}">
162 </eval-link>
163 </template>
164 of total {{ instances['totalCount'] }}
165 </template>
166 </div>
167 </div>
168 <div class="memberItem">
169 <div class="memberName">retained size</div>
170 <div class="memberValue">
171 <template if="{{ retainedBytes == null }}">
172 <eval-link callback="{{ retainedSize }}"
173 label="[calculate]">
174 </eval-link>
175 </template>
176 <template if="{{ retainedBytes != null }}">
177 {{ retainedBytes | formatSize }}
178 </template>
179 </div>
180 </div>
181 </template>
182 </div>
183
184 <hr>
185
186 <div class="content">
187 <eval-box callback="{{ eval }}"></eval-box>
188 </div>
189
190 <hr>
191 <script-inset script="{{ cls.script }}"
192 startPos="{{ cls.tokenPos }}"
193 endPos="{{ cls.endTokenPos }}">
194 </script-inset>
195
196 <br><br><br><br>
197 <br><br><br><br>
198 </template>
199 </polymer-element>
200
201 <script type="application/dart" src="class_view.dart"></script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698