| <html> |
| <head> |
| <title>paramset-sk demo</title> |
| <meta charset="utf-8"> |
| <meta http-equiv="X-UA-Compatible" content="IE=edge"> |
| <meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1, user-scalable=yes"> |
| <script src="/res/common/js/common.js"></script> |
| <script src="/res/imp/bower_components/webcomponentsjs/webcomponents-lite.js"></script> |
| <link rel=import href="/res/imp/bower_components/polymer/polymer.html"> |
| <link rel="stylesheet" href="res/common/css/md.css" type="text/css" media="all" /> |
| <link rel=import href="paramset.html"> |
| <!--We must use is=custom-style here so the variables get piped through to the |
| app properly. Note that using custom-style inside <dom-module> can lead to |
| unintended consequences, such as CSS mixins not being visible. |
| https://www.polymer-project.org/1.0/docs/devguide/styling#custom-style --> |
| <style is="custom-style"> |
| body { |
| font-family: sans-serif; |
| } |
| |
| paramset-sk { |
| display: block; |
| margin: 3em; |
| } |
| |
| #set1 { |
| --paramset-highlight-color: red; |
| } |
| </style> |
| </head> |
| <body> |
| <h1>Params</h1> |
| |
| <button class=action id=highlight>Highlight</button> |
| <button class=action id=clear>Clear</button> |
| |
| <paramset-sk id=set1></paramset-sk> |
| |
| <paramset-sk clickable id=set2></paramset-sk> |
| |
| <paramset-sk clickable-values id=set3></paramset-sk> |
| |
| <table> |
| <tr><th>paramset-key-click</th> <td id=key ></td></tr> |
| <tr><th>paramset-key-value-click</th><td id=value></td></tr> |
| </table> |
| |
| <script type="text/javascript" charset="utf-8"> |
| var paramset = { |
| "arch": ["Arm7", "Arm64", "x86_64", "x86"], |
| "bench_type": ["micro", "playback", "recording"], |
| "compiler": ["GCC", "MSVC", "Clang"], |
| "cpu_or_gpu": ["GPU", "CPU"], |
| }; |
| |
| var paramset2 = { |
| "arch": ["Arm7", ], |
| "bench_type": ["playback", "recording"], |
| "compiler": [], |
| "cpu_or_gpu": ["GPU"], |
| }; |
| |
| var set1 = $$$('#set1'); |
| var set2 = $$$('#set2'); |
| var set3 = $$$('#set3'); |
| |
| set1.setParamSets([paramset]); |
| set2.setParamSets([paramset, paramset2], ["Set 1", "Set 2"]); |
| set3.setParamSets([paramset], ["Clickable Values Only"]); |
| |
| set2.addEventListener('paramset-key-click', function(e) { |
| $$$('#key').textContent = JSON.stringify(e.detail); |
| }); |
| |
| set2.addEventListener('paramset-key-value-click', function(e) { |
| $$$('#value').textContent = JSON.stringify(e.detail); |
| }); |
| |
| set3.addEventListener('paramset-key-value-click', function(e) { |
| $$$('#value').textContent = JSON.stringify(e.detail); |
| }); |
| |
| $$$('#highlight').addEventListener('click', function() { |
| set1.setHighlight({"arch": "Arm7", "cpu_or_gpu": "GPU"}); |
| set2.setHighlight({"arch": "Arm7", "cpu_or_gpu": "GPU"}); |
| set3.setHighlight({"arch": "Arm7", "cpu_or_gpu": "GPU"}); |
| }); |
| |
| $$$('#clear').addEventListener('click', function() { |
| set1.clearHighlight(); |
| set2.clearHighlight(); |
| }); |
| </script> |
| |
| </body> |
| </html> |