| OLD | NEW |
| 1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
| 2 | 2 |
| 3 <html ng-app="Loader" ng-controller="Loader.Controller"> | 3 <html ng-app="Loader" ng-controller="Loader.Controller"> |
| 4 | 4 |
| 5 <head> | 5 <head> |
| 6 <title ng-bind="windowTitle"></title> | 6 <title ng-bind="windowTitle"></title> |
| 7 <script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></scr
ipt> | 7 <script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></scr
ipt> |
| 8 <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js"
></script> | 8 <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.20/angular.js
"></script> |
| 9 <script src="constants.js"></script> | 9 <script src="constants.js"></script> |
| 10 <script src="live-loader.js"></script> | 10 <script src="live-loader.js"></script> |
| 11 <script src="utils.js"></script> | 11 <script src="utils.js"></script> |
| 12 | 12 |
| 13 <link rel="stylesheet" href="view.css"> | 13 <link rel="stylesheet" href="view.css"> |
| 14 </head> | 14 </head> |
| 15 | 15 |
| 16 <body> | 16 <body> |
| 17 <h2> | 17 <h2> |
| 18 Instructions, roadmap, etc. are at | 18 Instructions, roadmap, etc. are at |
| (...skipping 220 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 239 </button> | 239 </button> |
| 240 </div> | 240 </div> |
| 241 </td> | 241 </td> |
| 242 </tr> | 242 </tr> |
| 243 </table> <!-- results header --> | 243 </table> <!-- results header --> |
| 244 </td></tr><tr><td> | 244 </td></tr><tr><td> |
| 245 <table border="1" ng-app="diff_viewer"> <!-- results --> | 245 <table border="1" ng-app="diff_viewer"> <!-- results --> |
| 246 <tr> | 246 <tr> |
| 247 <!-- Most column headers are displayed in a common fashion... --> | 247 <!-- Most column headers are displayed in a common fashion... --> |
| 248 <th ng-repeat="columnName in orderedColumnNames"> | 248 <th ng-repeat="columnName in orderedColumnNames"> |
| 249 <input type="radio" | 249 <a ng-class="'sort-' + sortedByColumnsCls(columnName)" |
| 250 name="sortColumnRadio" | 250 ng-click="sortResultsBy(constants.KEY__IMAGEPAIRS__EXTRACOLUMNS
, columnName)" |
| 251 value="{{columnName}}" | 251 href="" |
| 252 ng-checked="(sortColumnKey == columnName)" | 252 class="sortable-header"> |
| 253 ng-click="sortResultsBy(constants.KEY__IMAGEPAIRS__EXTRACOLUM
NS, columnName)"> | 253 {{extraColumnHeaders[columnName][constants.KEY__EXTRACOLUMNHEADER
S__HEADER_TEXT]}} |
| 254 {{extraColumnHeaders[columnName][constants.KEY__EXTRACOLUMNHEADERS__
HEADER_TEXT]}} | 254 </a> |
| 255 </th> | 255 </th> |
| 256 <!-- ... but there are a few columns where we display things different
ly. --> | 256 <!-- ... but there are a few columns where we display things different
ly. --> |
| 257 <th> | 257 <th> |
| 258 <input type="radio" | 258 <a ng-class="'sort-' + sortedByColumnsCls(constants.KEY__EXPECTATION
S__BUGS)" |
| 259 name="sortColumnRadio" | 259 ng-click="sortResultsBy(constants.KEY__IMAGEPAIRS__EXPECTATIONS,
constants.KEY__EXPECTATIONS__BUGS)" |
| 260 value="bugs" | 260 href="" |
| 261 ng-checked="(sortColumnKey == constants.KEY__EXPECTATIONS__BU
GS)" | 261 class="sortable-header"> |
| 262 ng-click="sortResultsBy(constants.KEY__IMAGEPAIRS__EXPECTATIO
NS, constants.KEY__EXPECTATIONS__BUGS)"> | 262 bugs |
| 263 </a> |
| 263 bugs | 264 bugs |
| 264 </th> | 265 </th> |
| 265 <th width="{{imageSize}}"> | 266 <th width="{{imageSize}}"> |
| 266 <input type="radio" | 267 <a ng-class="'sort-' + sortedByColumnsCls(constants.KEY__IMAGEPAIRS_
_IMAGE_A_URL)" |
| 267 name="sortColumnRadio" | 268 ng-click="sortResultsBy('none', constants.KEY__IMAGEPAIRS__IMAGE_
A_URL)" |
| 268 value="imageA" | 269 href="" |
| 269 ng-checked="(sortColumnKey == constants.KEY__IMAGEPAIRS__IMAG
E_A_URL)" | 270 class="sortable-header"> |
| 270 ng-click="sortResultsBy('none', constants.KEY__IMAGEPAIRS__IM
AGE_A_URL)"> | 271 {{imageSets[constants.KEY__IMAGESETS__SET__IMAGE_A][constants
.KEY__IMAGESETS__FIELD__DESCRIPTION]}} |
| 271 {{imageSets[constants.KEY__IMAGESETS__SET__IMAGE_A][constants.KEY__I
MAGESETS__FIELD__DESCRIPTION]}} | 272 </a> |
| 272 </th> | 273 </th> |
| 273 <th width="{{imageSize}}"> | 274 <th width="{{imageSize}}"> |
| 274 <input type="radio" | 275 <a ng-class="'sort-' + sortedByColumnsCls(constants.KEY__IMAGEPAIRS_
_IMAGE_B_URL)" |
| 275 name="sortColumnRadio" | 276 ng-click="sortResultsBy('none', constants.KEY__IMAGEPAIRS__IMAGE_
B_URL)" |
| 276 value="imageB" | 277 href="" |
| 277 ng-checked="(sortColumnKey == constants.KEY__IMAGEPAIRS__IMAG
E_B_URL)" | 278 class="sortable-header"> |
| 278 ng-click="sortResultsBy('none', constants.KEY__IMAGEPAIRS__IM
AGE_B_URL)"> | 279 {{imageSets[constants.KEY__IMAGESETS__SET__IMAGE_B][constants.
KEY__IMAGESETS__FIELD__DESCRIPTION]}} |
| 279 {{imageSets[constants.KEY__IMAGESETS__SET__IMAGE_B][constants.KEY__I
MAGESETS__FIELD__DESCRIPTION]}} | 280 </a> |
| 280 </th> | 281 </th> |
| 281 <th width="{{imageSize}}"> | 282 <th width="{{imageSize}}"> |
| 282 <input type="radio" | 283 <a ng-class="'sort-' + sortedByColumnsCls(constants.KEY__DIFFERENCES
__PERCENT_DIFF_PIXELS)" |
| 283 name="sortColumnRadio" | 284 ng-click="sortResultsBy(constants.KEY__IMAGEPAIRS__DIFFERENCES, c
onstants.KEY__DIFFERENCES__PERCENT_DIFF_PIXELS)" |
| 284 value="percentDifferingPixels" | 285 href="" |
| 285 ng-checked="(sortColumnKey == constants.KEY__DIFFERENCES__PER
CENT_DIFF_PIXELS)" | 286 class="sortable-header"> |
| 286 ng-click="sortResultsBy(constants.KEY__IMAGEPAIRS__DIFFERENCE
S, constants.KEY__DIFFERENCES__PERCENT_DIFF_PIXELS)"> | 287 differing pixels in white |
| 287 differing pixels in white | 288 </a> |
| 288 </th> | 289 </th> |
| 289 <th width="{{imageSize}}"> | 290 <th width="{{imageSize}}"> |
| 290 <input type="radio" | 291 <a ng-class="'sort-' + sortedByColumnsCls(constants.KEY__DIFFERENCES
__PERCEPTUAL_DIFF)" |
| 291 name="sortColumnRadio" | 292 ng-click="sortResultsBy(constants.KEY__IMAGEPAIRS__DIFFERENCES, c
onstants.KEY__DIFFERENCES__PERCEPTUAL_DIFF)" |
| 292 value="perceptualDiff" | 293 href="" |
| 293 ng-checked="(sortColumnKey == constants.KEY__DIFFERENCES__PER
CEPTUAL_DIFF)" | 294 class="sortable-header"> |
| 294 ng-click="sortResultsBy(constants.KEY__IMAGEPAIRS__DIFFERENCE
S, constants.KEY__DIFFERENCES__PERCEPTUAL_DIFF)"> | 295 perceptual difference |
| 295 perceptual difference | 296 </a> |
| 296 <br> | 297 <br> |
| 297 <input type="range" ng-model="pixelDiffBgColorBrightness" | 298 <input type="range" ng-model="pixelDiffBgColorBrightness" |
| 298 ng-init="pixelDiffBgColorBrightness=64; pixelDiffBgColor=brig
htnessStringToHexColor(pixelDiffBgColorBrightness)" | 299 ng-init="pixelDiffBgColorBrightness=64; pixelDiffBgColor=brig
htnessStringToHexColor(pixelDiffBgColorBrightness)" |
| 299 ng-change="pixelDiffBgColor=brightnessStringToHexColor(pixelD
iffBgColorBrightness)" | 300 ng-change="pixelDiffBgColor=brightnessStringToHexColor(pixelD
iffBgColorBrightness)" |
| 300 title="image background brightness" | 301 title="image background brightness" |
| 301 min="0" max="255"/> | 302 min="0" max="255"/> |
| 302 </th> | 303 </th> |
| 303 <th> | 304 <th> |
| 304 <!-- imagepair-selection checkbox column --> | 305 <!-- imagepair-selection checkbox column --> |
| 305 </th> | 306 </th> |
| (...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 414 ng-click="toggleSomeImagePairs($index, imagePair[constants.KE
Y__IMAGEPAIRS__ROWSPAN])"> | 415 ng-click="toggleSomeImagePairs($index, imagePair[constants.KE
Y__IMAGEPAIRS__ROWSPAN])"> |
| 415 </tr> | 416 </tr> |
| 416 </table> <!-- imagePairs --> | 417 </table> <!-- imagePairs --> |
| 417 </td></tr></table> <!-- table holding results header + imagePairs table --> | 418 </td></tr></table> <!-- table holding results header + imagePairs table --> |
| 418 | 419 |
| 419 </div><!-- main display area of selected tab --> | 420 </div><!-- main display area of selected tab --> |
| 420 </div><!-- everything: hide until readyToDisplay --> | 421 </div><!-- everything: hide until readyToDisplay --> |
| 421 | 422 |
| 422 </body> | 423 </body> |
| 423 </html> | 424 </html> |
| OLD | NEW |