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

Side by Side Diff: gm/rebaseline_server/static/new/partials/rebaseline-view.html

Issue 538613002: Refactored frontend for the rebaseline server. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Addressing issues raised during CR Created 6 years, 3 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
« no previous file with comments | « gm/rebaseline_server/static/new/partials/index-view.html ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 <div class="container-fluid ng-cloak" ng-cloak>
2
3 <div class="row" ng-show="state === c.ST_LOADING">
4 <h4>Loading ...</h4>
5 </div>
6
7 <div class="row" ng-show="state === c.ST_STILL_LOADING">
8 <h4>Still loading from backend.</h4>
9 <div>
10 Load time so far: {{ loadTime | number:0 }} s.
11 </div>
12 </div>
13
14 <div class="row" ng-show="state === c.ST_READY">
15 <tabset>
16 <tab heading="Unfiled">
17 <!-- settings -->
18 <div class="container controlBox">
19 <form class="form-inline settingsForm" novalidate >
20 <legend class="simpleLegend">Settings</legend>
21 <div class="checkbox formPadding">
22 <label>
23 <input type="checkbox"
24 ng-model="settings.showThumbnails">Sh ow thumbnails
25 </label>
26 </div>
27
28 <div class="checkbox formPadding">
29 <label>
30 <input type="checkbox"
31 ng-model="settings.mergeIdenticalRows"
32 ng-change="mergeRowsChanged(mergeIdentical Rows)"> Merge identical rows
33 </label>
34 </div>
35
36 <div class="form-group formPadding">
37 <label for="imageWidth">Image Width</label>
38 <select ng-model="settings.imageSize"
39 ng-options="iSize for iSize in c.IM AGE_SIZES"
40 class="form-control input-sm">
41
42 </select>
43 </div>
44 <div class="form-group formPadding">
45 <label>Max records</label>
46 <select ng-model="settings.nRecords"
47 ng-options="n for n in c.MAX_RECORD S"
48 ng-change="maxRecordsChanged();"
49 class="form-control input-sm">
50 </select>
51 </div>
52 </form>
53 <br>
54
55 <form class="form settingsForm" novalidate>
56 <legend class="simpleLegend">Filters</legend>
57 <div class="container-fluid">
58 <div class="col-lg-2 filterBox" ng-repeat="oneCol in filterCols">
59 <div class="filterKey">{{ oneCol.key }}</div>
60
61 <!-- If we filter this column using free-form text match... -->
62 <div ng-if="oneCol.ftype === c.FILTER_FREE_FOR M">
63 <input type="text"
64 ng-model="filterVals[$index]"
65 typeahead="opt.value for opt in oneCo l.foptions | filter:$viewValue"
66 class="form-control input-sm">
67 <br>
68 <a ng-click="filterVals[$index]=''"
69 ng-disabled="'' === filterVals[$index]"
70 href="">
71 Clear
72 </a>
73 </div>
74
75 <!-- If we filter this column using checkboxes ... -->
76 <div ng-if="oneCol.ftype === c.FILTER_CHECK_BO X">
77
78 <div class="checkbox" ng-repeat="oneOpt in oneCol.foptions">
79 <label>
80 <input type="checkbox"
81 ng-model="filterVals[$parent.$i ndex][$index]">{{oneOpt.value}} ({{ oneOpt.count }})
82 </label>
83 </div>
84 <div>
85 <a ng-click="setFilterAll($index, true)" href="">All</a> -
86 <a ng-click="setFilterAll($index, False) " href="">None</a> -
87 <a ng-click="setFilterToggle($index)" hr ef="">Toggle</a>
88 </div>
89 </div>
90 </div>
91 <br>
92 </div>
93
94 <div class="container updateBtn">
95 <button class="btn btn-success col-lg-4 pull-left"
96 ng-click="filtersChanged()"
97 ng-disabled="updating">
98 {{ updating && 'Updating ...' || 'Update ' }}
99 </button>
100 </div>
101
102 </form>
103
104 <br>
105
106 <!-- Rows -->
107
108 <!-- results header -->
109 <div class="col-lg-12 resultsHeaderActions well">
110 <div class="col-lg-6">
111 <h4>Showing {{showingRecords}} of {{selectedRecord s}} (of {{totalRecords}} total)</h4>
112 <span ng-show="renderTime > 0">
113 Rendered in {{renderTime | number:0 }} ms (filte red and sorted in {{ filterTime | number:0 }} ms).
114 </span>
115 <br>
116 (click on the column header radio buttons to re-so rt by that column)
117 </div>
118
119
120 <div class="col-lg-6">
121 All tests shown:
122 <button class="btn btn-default btn-sm" ng-click= "selectAllImagePairs()">Select</button>
123 <button class="btn btn-default btn-sm" ng-click= "clearAllImagePairs()">Clear</button>
124 <button class="btn btn-default btn-sm" ng-click= "toggleAllImagePairs()">Toggle</button>
125
126 <div ng-repeat="otherTab in tabs">
127 <button class="btn btn-default btn-sm"
128 ng-click="moveSelectedImagePairsToTa b(otherTab)"
129 ng-disabled="selectedImagePairs.leng th == 0"
130 ng-show="otherTab != viewingTab">
131 Move {{selectedImagePairs.length}} s elected tests to {{otherTab}} tab
132 </button>
133 </div>
134 </div>
135 <br>
136 </div>
137
138 <!-- results -->
139 <table class="table table-bordered">
140 <thead>
141 <tr>
142 <!-- Most column headers are displayed in a comm on fashion... -->
143 <th ng-repeat="oneCol in allCols" ng-style="{ 'm in-width': getImageWidthStyle(oneCol, 20, 'auto') }">
144 <a ng-class="getSortedClass('sort', $index, '')"
145 ng-click="sortBy($index)"
146 href=""
147 class="sortableHeader">
148 {{ oneCol.ctitle }}
149 </a>
150 </th>
151 <th>
152 <div class="checkbox">
153 <label>
154 <input type="checkbox" ng-model=" allChecked" ng-change="checkAll()">All
155 </label>
156 </div>
157 </th>
158 </tr>
159 </thead>
160 <tbody>
161 <tr ng-repeat="oneRow in data">
162 <td ng-repeat="oneColVal in oneRow.dataCols">
163 {{oneColVal}}
164 </td>
165
166 <td ng-repeat="oneCol in oneRow.imageCols" ng-if ="oneRow.rowspan > 0" rowspan="{{ oneRow.rowspan }}">
167 <div ng-show="oneCol.url">
168 <a href="{{ oneCol.url }}" target="_blan k">View Image</a><br/>
169 <img ng-if="settings.showThumbnails"
170 ng-style="{ width: settings.imageSi ze+'px' }"
171 ng-src="{{ oneCol.url }}" />
172 <div ng-if="oneCol.percent && oneCol.val ue">
173 {{oneCol.percent}}% ({{ oneCol.value }})
174 </div>
175 </div>
176 <div ng-hide="oneCol.url" style="text-align: center">
177 <span ng-show="oneCol.url === null">&nda sh;none&ndash;</span>
178 <span ng-hide="oneCol.url === null">&nbs p;</span>
179 </div>
180 </td>
181
182 <td ng-if="oneRow.rowspan > 0" rowspan="{{ oneRo w.rowspan }}">
183 <div class="checkbox">
184 <input type="checkbox"
185 ng-model="checkRows[$index]"
186 ng-change="rowCheckChanged($index )">
187 </div>
188 </td>
189 </tr>
190 </tbody>
191 </table>
192
193 </div>
194 </tab>
195
196 <tab heading="Hidden">
197 <h3>Hidden</h3>
198 </tab>
199
200 <tab heading="Pending Approval">
201 <h3>Pending Approval</h3>
202 </tab>
203
204 </tabset>
205
206 </div>
207 </div>
OLDNEW
« no previous file with comments | « gm/rebaseline_server/static/new/partials/index-view.html ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698