annotate light9/fade/Light9EffectFader.ts @ 2339:2210d934d62d

fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
author drewp@bigasterisk.com
date Fri, 02 Jun 2023 17:34:24 -0700
parents b09ff4b0094c
children 078e6e7ec206
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2339
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
1 import debug from "debug";
2329
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
2 import { css, html, LitElement } from "lit";
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
3 import { customElement, property, state } from "lit/decorators.js";
2331
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
4 import { NamedNode, Quad } from "n3";
2329
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
5 import { getTopGraph } from "../web/RdfdbSyncedGraph";
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
6 import { showRoot } from "../web/show_specific";
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
7 import { SyncedGraph } from "../web/SyncedGraph";
2331
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
8 import { Patch } from "../web/patch";
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
9 import { Literal } from "n3";
2329
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
10 export { Light9Fader } from "./Light9Fader";
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
11
2339
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
12 const log = debug("efffader")
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
13
2331
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
14 //////////////////////////////////////
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
15 const RETURN_URI = new NamedNode("");
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
16 const RETURN_FLOAT = 1;
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
17 function get2Step<T extends NamedNode | number>(returnWhat: T, graph: SyncedGraph, subj1: NamedNode, pred1: NamedNode, pred2: NamedNode): T | undefined {
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
18 // ?subj1 ?pred1 ?x . ?x ?pred2 ?returned .
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
19 let x: NamedNode;
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
20 try {
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
21 x = graph.uriValue(subj1, pred1);
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
22 } catch (e) {
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
23 return undefined;
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
24 }
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
25 try {
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
26 if (typeof returnWhat === "object" && (returnWhat as NamedNode).termType == "NamedNode") {
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
27 return graph.uriValue(x, pred2) as T;
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
28 } else if (typeof returnWhat === "number") {
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
29 return graph.floatValue(x, pred2) as T;
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
30 }
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
31 } catch (e) {
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
32 return undefined;
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
33 }
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
34 }
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
35 function set2Step(
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
36 graph: SyncedGraph, //
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
37 subj1: NamedNode,
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
38 pred1: NamedNode,
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
39 baseName: string,
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
40 pred2: NamedNode,
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
41 newObjLiteral: Literal
2339
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
42 ) { }
2331
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
43
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
44 function maybeUriValue(graph: SyncedGraph, s: NamedNode, p: NamedNode): NamedNode | undefined {
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
45 try {
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
46 return graph.uriValue(s, p);
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
47 } catch (e) {
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
48 return undefined;
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
49 }
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
50 }
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
51 function maybeStringValue(graph: SyncedGraph, s: NamedNode, p: NamedNode): string | undefined {
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
52 try {
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
53 return graph.stringValue(s, p);
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
54 } catch (e) {
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
55 return undefined;
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
56 }
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
57 }
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
58 function maybeFloatValue(graph: SyncedGraph, s: NamedNode, p: NamedNode): number | undefined {
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
59 try {
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
60 return graph.floatValue(s, p);
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
61 } catch (e) {
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
62 return undefined;
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
63 }
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
64 }
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
65
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
66 //////////////////////////////////////
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
67 class EffectFader {
2339
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
68 constructor(public uri: NamedNode) { }
2331
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
69 column: string = "unset";
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
70 effect?: NamedNode;
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
71 effectAttr?: NamedNode; // :strength
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
72 setting?: NamedNode; // we assume fader always has exactly one setting
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
73 value?: number;
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
74 }
2329
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
75
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
76 @customElement("light9-effect-fader")
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
77 export class Light9EffectFader extends LitElement {
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
78 static styles = [
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
79 css`
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
80 :host {
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
81 display: inline-block;
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
82 border: 2px gray outset;
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
83 background: #272727;
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
84 }
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
85 light9-fader {
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
86 margin: 4px;
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
87 width: 100%;
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
88 }
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
89 `,
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
90 ];
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
91 render() {
2331
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
92 if (this.conf === undefined || this.conf.value === undefined) {
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
93 return html`...`;
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
94 }
2329
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
95 return html`
2339
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
96 <div><resource-display .uri=${this.uri}></resource-display>
2331
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
97 <light9-fader .value=${this.conf.value} @change=${this.onSliderInput}></light9-fader>
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
98 <div>${this.conf.value.toPrecision(3)}</div>
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
99 <div>effect <edit-choice nounlink .uri=${this.conf.effect} @edited=${this.onEffectChange}></edit-choice></div>
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
100 <div>attr <edit-choice nounlink .uri=${this.conf.effectAttr} @edited=${this.onEffectAttrChange}></edit-choice></div>
2329
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
101 `;
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
102 }
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
103
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
104 graph?: SyncedGraph;
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
105 ctx: NamedNode = new NamedNode(showRoot + "/fade");
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
106 @property() uri!: NamedNode;
2331
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
107 @state() conf?: EffectFader; // compiled from graph
2329
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
108
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
109 constructor() {
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
110 super();
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
111 getTopGraph().then((g) => {
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
112 this.graph = g;
2331
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
113 this.graph.runHandler(this.compile.bind(this, this.graph), `fader config ${this.uri.value}`);
2329
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
114 });
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
115 }
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
116
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
117 private compile(graph: SyncedGraph) {
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
118 const U = graph.U();
2331
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
119 this.conf = undefined;
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
120
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
121 const conf = new EffectFader(this.uri);
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
122
2329
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
123 if (!graph.contains(this.uri, U("rdf:type"), U(":Fader"))) {
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
124 // not loaded yet, perhaps
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
125 return;
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
126 }
2331
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
127
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
128 conf.column = maybeStringValue(graph, this.uri, U(":column")) || "unset";
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
129 conf.effect = maybeUriValue(graph, this.uri, U(":effect"));
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
130 conf.effectAttr = get2Step(RETURN_URI, graph, this.uri, U(":setting"), U(":effectAttr"));
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
131
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
132 this.conf = conf;
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
133 graph.runHandler(this.compileValue.bind(this, graph, this.conf), `fader config.value ${this.uri.value}`);
2329
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
134 }
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
135
2331
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
136 private compileValue(graph: SyncedGraph, conf: EffectFader) {
2339
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
137 // external graph change -> conf.value
2329
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
138 const U = graph.U();
2331
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
139 conf.value = get2Step(RETURN_FLOAT, graph, this.uri, U(":setting"), U(":value"));
2339
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
140 // since conf attrs aren't watched as property:
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
141 this.requestUpdate()
2329
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
142 }
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
143
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
144 onSliderInput(ev: CustomEvent) {
2331
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
145 // slider user input -> graph
2339
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
146 if (this.conf === undefined) return;
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
147 this.conf.value = ev.detail.value
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
148 this.writeValueToGraph()
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
149 }
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
150
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
151 writeValueToGraph() {
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
152 // this.value -> graph
2329
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
153 if (this.graph === undefined) {
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
154 return;
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
155 }
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
156 const U = this.graph.U();
2331
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
157 if (this.conf === undefined) {
2329
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
158 return;
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
159 }
2339
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
160 if (this.conf.value === undefined) {
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
161 log(`value of ${this.uri} is undefined`)
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
162 return;
2329
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
163 }
2339
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
164 log('writeValueToGraph', this.conf.value)
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
165 const valueTerm = this.graph.LiteralRoundedFloat(this.conf.value);
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
166 const settingNode = this.graph.uriValue(this.uri, U(":setting"));
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
167 this.graph.patchObject(settingNode, this.graph.Uri(":value"), valueTerm, this.ctx);
2210d934d62d fader was echoing external edits as patches back into the graph. This fixes that the wrong way, circumventing lit
drewp@bigasterisk.com
parents: 2331
diff changeset
168
2329
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
169 }
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
170
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
171 onEffectChange(ev: CustomEvent) {
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
172 if (this.graph === undefined) {
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
173 return;
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
174 }
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
175 const { newValue } = ev.detail;
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
176 this.graph.patchObject(this.uri, this.graph.Uri(":effect"), newValue, this.ctx);
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
177 }
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
178
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
179 onEffectAttrChange(ev: CustomEvent) {
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
180 if (this.graph === undefined) {
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
181 return;
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
182 }
2331
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
183 // const { newValue } = ev.detail;
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
184 // if (this.setting === undefined) {
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
185 // this.setting = this.graph.nextNumberedResource(this.graph.Uri(":fade_set"));
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
186 // this.graph.patchObject(this.uri, this.graph.Uri(":setting"), this.setting, this.ctx);
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
187 // }
b09ff4b0094c faders in pages now
drewp@bigasterisk.com
parents: 2330
diff changeset
188 // this.graph.patchObject(this.setting, this.graph.Uri(":effectAttr"), newValue, this.ctx);
2329
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
189 }
c5cd51e32fc5 refactor
drewp@bigasterisk.com
parents:
diff changeset
190 }