annotate service/arduinoNode/static/output-widgets.html @ 256:d2c60552fb13

polling timing and error catching Ignore-this: 2d78d67d367c3286aec4e990a396eee7
author drewp@bigasterisk.com
date Mon, 21 Mar 2016 04:21:35 -0700
parents 5bbcf7d9a5f5
children 362de08c4c52
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
1 <link rel="import" href="/lib/polymer/1.0.9/iron-ajax/iron-ajax.html">
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
2 <link rel="import" href="/lib/polymer/1.0.9/polymer/polymer.html">
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
3 <link rel="import" href="/lib/polymer/1.0.9/color-picker-element/dist/color-picker.html">
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
4 <link rel="import" href="/room/ari/static/rdf-uri.html">
170
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
5
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
6 <dom-module id="output-sender">
170
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
7 <template>
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
8 <iron-ajax id="output" url="../output" method="PUT"></iron-ajax>
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
9 Set <a href$="{{subj}}">{{compactUri(subj)}}</a>'s
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
10 <span>{{compactUri(pred)}}</span> to
170
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
11 </template>
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
12 <script>
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
13 Polymer({
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
14 is: 'output-sender',
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
15 behaviors: [BigastUri],
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
16 properties: {
233
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
17 streamedGraph: { notify: true, observer: 'onGraphChange' },
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
18 subj: { notify: true },
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
19 pred: { notify: true },
233
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
20 value: { notify: true, observer: 'browserChangedValue' }
218
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
21 },
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
22 ready: function() {
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
23 this.waitOnChangeMs = 100;
233
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
24 this.smallestRequestPeriodMs = 100;
218
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
25 this.synced = false;
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
26
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
27 this.newRequestNeedsSending = false;
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
28 this.lastSendMs = 0;
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
29 this.$.output.addEventListener('response', this.onResponse.bind(this));
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
30
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
31 },
233
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
32 onGraphChange: function(streamedGraph) {
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
33 if (!streamedGraph.graph) {
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
34 return;
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
35 }
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
36 var env = streamedGraph.graph.store.rdf;
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
37 streamedGraph.graph.quadStore.quads({
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
38 subject: env.createNamedNode(this.subj),
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
39 predicate: env.createNamedNode(this.pred)
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
40 }, function(quad) {
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
41 this.serverChangedValue(quad.object.valueOf());
218
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
42 }.bind(this));
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
43 },
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
44 onResponse: function() {
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
45 if (!this.newRequestNeedsSending) {
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
46 return;
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
47 }
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
48 if (this.$.output.activeRequests.length > 0) {
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
49 return; // 'response' event will call us back
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
50 }
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
51
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
52 var now = Date.now(), dt = now - this.lastSendMs;
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
53 if (dt < this.smallestRequestPeriodMs) {
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
54 setTimeout(this.onResponse.bind(this),
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
55 this.smallestRequestPeriodMs - dt);
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
56 return;
234
5bbcf7d9a5f5 logging
drewp@bigasterisk.com
parents: 233
diff changeset
57 }
218
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
58 this.newRequestNeedsSending = false;
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
59 this.lastSendMs = now;
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
60 this.$.output.generateRequest();
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
61 },
233
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
62 browserChangedValue: function () {
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
63 if (!this.subj || !this.pred) {
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
64 return;
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
65 }
187
fc5fdcc3ed4a board control ui: output-rgb, fix ajax protocol, display output uris
drewp@bigasterisk.com
parents: 173
diff changeset
66 //this.$.output.headers = {'content-type': ...}
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
67 this.$.output.params = {s: this.subj, p: this.pred};
187
fc5fdcc3ed4a board control ui: output-rgb, fix ajax protocol, display output uris
drewp@bigasterisk.com
parents: 173
diff changeset
68 this.$.output.body = this.value;
218
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
69 this.newRequestNeedsSending = true;
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
70 setTimeout(this.onResponse.bind(this), this.waitOnChangeMs);
233
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
71 },
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
72 serverChangedValue: function(v) {
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
73 this.value = v;
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
74 this.synced = true;
170
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
75 }
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
76 });
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
77 </script>
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
78 </dom-module>
170
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
79
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
80 <dom-module id="output-rgb">
187
fc5fdcc3ed4a board control ui: output-rgb, fix ajax protocol, display output uris
drewp@bigasterisk.com
parents: 173
diff changeset
81 <template>
218
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
82 <div style="display: flex">
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
83 <div>
233
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
84 <output-sender streamed-graph="{{streamedGraph}}" subj="{{subj}}" pred="{{pred}}" value="{{value}}"></output-sender>
218
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
85 <div>color pick <span>{{value}}</span>
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
86 <button on-click="black">Black</button>
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
87 <button on-click="white">White</button>
218
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
88 </div>
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
89 </div>
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
90 <div>
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
91 <color-picker id="pick" width="200" height="100" color="{{value}}"></color-picker>
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
92 </div>
f8ffb9d8d982 multi-boards on one service, new devices, devices return their current
drewp@bigasterisk.com
parents: 193
diff changeset
93 </div>
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
94 </template>
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
95 <script>
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
96 Polymer({
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
97 is: 'output-rgb',
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
98 properties: {
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
99 value: { notify: true },
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
100 },
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
101 ready: function () {
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
102 this.$.pick.addEventListener('colorselected', function (ev) {
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
103 this.value = ev.detail.hex;
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
104 }.bind(this));
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
105 },
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
106 black: function() {this.value = "#000000";},
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
107 white: function() {this.value = "#ffffff";}
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
108 });
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
109 </script>
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
110 </dom-module>
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
111
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
112 <dom-module id="output-slider">
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
113 <template>
233
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
114 <output-sender streamed-graph="{{streamedGraph}}" subj="{{subj}}" pred="{{pred}}" value="{{value}}"></output-sender>
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
115 <input type="range" min="{{min}}" max="{{max}}" step="{{step}}" value="{{value::input}}"> <span>{{value}}</span>
187
fc5fdcc3ed4a board control ui: output-rgb, fix ajax protocol, display output uris
drewp@bigasterisk.com
parents: 173
diff changeset
116 </template>
fc5fdcc3ed4a board control ui: output-rgb, fix ajax protocol, display output uris
drewp@bigasterisk.com
parents: 173
diff changeset
117 <script>
233
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
118 Polymer({
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
119 is: 'output-slider',
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
120 properties: {
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
121 streamedGraph: { notify: true },
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
122 max: { notify: true },
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
123 min: { notify: true },
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
124 step: { notify: true }
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
125 },
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
126 });
187
fc5fdcc3ed4a board control ui: output-rgb, fix ajax protocol, display output uris
drewp@bigasterisk.com
parents: 173
diff changeset
127 </script>
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
128 </dom-module>
170
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
129
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
130 <!--
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
131 TODO(polyup): Inheriting from other custom elements is not yet supported.
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
132 See: https://www.polymer-project.org/1.0/docs/migration.html#inheritance
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
133 -->
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
134 <dom-module id="output-fixed-text">
170
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
135 <template>
233
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
136 <output-sender streamed-graph="{{streamedGraph}}" subj="{{subj}}" pred="{{pred}}" value="{{value}}"></output-sender>
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
137 <textarea rows="{{rows}}" cols="{{cols}}" value="{{value::input}}"></textarea>
170
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
138 </template>
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
139 <script>
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
140 Polymer({
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
141 is: 'output-fixed-text',
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
142 properties: {
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
143 cols: { notify: true },
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
144 rows: { notify: true }
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
145 },
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
146 });
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
147 </script>
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
148 </dom-module>
170
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
149
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
150 <dom-module id="output-switch">
170
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
151 <template>
233
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
152 <output-sender streamed-graph="{{streamedGraph}}" subj="{{subj}}" pred="{{pred}}" value="{{value}}"></output-sender>
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
153 <input type="checkbox" checked="{{check::change}}"> <span>{{value}}</span>
170
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
154 </template>
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
155 <script>
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
156 Polymer({
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
157 is: 'output-switch',
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
158 properties: {
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
159 check: {
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
160 type: Boolean,
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
161 value: false,
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
162 observer: 'checkChanged'
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
163 },
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
164 value: { notify: true }
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
165 },
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
166 checkChanged: function () {
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
167 this.value = this.check ? 'high' : 'low';
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
168 },
170
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
169 });
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
170 </script>
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
171 </dom-module>
170
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
172
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
173 <dom-module id="output-widget-any">
170
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
174 <template></template>
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
175 <script>
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
176 Polymer({
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
177 is: 'output-widget-any',
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
178 properties: {
233
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
179 desc: { type: Object, notify: true },
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
180 streamedGraph: { type: Object, notify: true, observer: 'onGraph' },
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
181 },
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
182 ready: function () {
233
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
183 this.elem = document.createElement(this.desc.element);
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
184 this.appendChild(this.elem);
170
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
185 for (var k of Object.keys(this.desc)) {
233
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
186 this.elem.setAttribute(k, this.desc[k]);
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
187 }
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
188 this.elem.streamedGraph = this.streamedGraph;
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
189 },
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
190 onGraph: function(g) {
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
191 if (this.elem) {
4ebb5cc30002 server/browser graph sync. cut dependency on the WS version. merge some changes between arduino/pi code.
drewp@bigasterisk.com
parents: 218
diff changeset
192 this.elem.streamedGraph = g;
170
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
193 }
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
194 }
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
195 });
376599552a4c polymer board debug page with working output widgets
drewp@bigasterisk.com
parents:
diff changeset
196 </script>
193
960b3b4cdd29 rewrite to polymer 1
drewp@bigasterisk.com
parents: 187
diff changeset
197 </dom-module>