Commit d7b2e68667afc951281db48367f5dfaff0bd55e2

Authored by Adeel Kazmi
1 parent 9d5a9b01

Remove DALi Toy as it no longer compiles & refs to ShaderEffect

Change-Id: I650cb43c8a5ad685f62422f5b1977f8dec5e4033
README.md
... ... @@ -12,7 +12,6 @@
12 12 * [SMACK enabled Targets](#smack-enabled-targets)
13 13 * [DEBUG Builds](#debug-builds-1)
14 14 * [Creating an example](#creating-an-example)
15   - * [Installing Emscripten Examples](#installing-emscripten-examples)
16 15  
17 16 # Build Instructions
18 17  
... ... @@ -65,15 +64,3 @@ Before running make install as normal:
65 64 - Add all source files for the required example in this directory.
66 65 - Modify "com.samsung.dali-demo.xml" to include your example so that it can be launched on target.
67 66 - No changes are required to the make system as long as the above is followed, your example will be automatically built & installed.
68   -
69   -# Installing Emscripten Examples
70   -
71   -Some Emscripten Javascript examples are included in dali-demo.
72   -
73   -They do not require building, to install them run the provided install script.
74   -Note: Your dali-env must be setup as it will install to your dali-env/opt/share/emscripten directory.
75   -
76   - $ cd ./emscripten-examples
77   - $ ./install.sh
78   -
79   -Run the examples by either opening them in a browser, or, running the browser from the command line with an example as a parameter.
... ...
emscripten-examples/dali-doc-demo.html deleted
1   -<html>
2   - <head>
3   - </head>
4   - <body>
5   - <script>
6   - function native2ascii(str) {
7   - "use strict";
8   - // really this function allows only GLSL permittable chars
9   - var out = "";
10   - for (var i = 0; i < str.length; i++) {
11   - if ( 0x20 <= str.charCodeAt(i) && str.charCodeAt(i) <= 0x7E) {
12   - // normal characters
13   - out += str.charAt(i);
14   - } else if( 0x9 <= str.charCodeAt(i) && str.charCodeAt(i) <= 0xD) {
15   - // new lines and tabs
16   - out += str.charAt(i);
17   - }
18   - }
19   - return out;
20   - }
21   -
22   - function clearAndEval(code) {
23   - "use strict";
24   - var ascii = native2ascii(code);
25   - clear();
26   - // as of ecma5 an indirect call like this is in global scope
27   - var globalEval = eval;
28   - globalEval(ascii);
29   - };
30   -
31   - function getEmbeddedImage() {
32   - "use strict";
33   - // name is presumed to be in the html as base64 data
34   - var doc = document;
35   - var c = doc.createElement("canvas");
36   - var img = doc.getElementById("testImage");
37   - c.width = img.naturalWidth;
38   - c.height = img.naturalHeight;
39   - var context = c.getContext("2d");
40   - context.drawImage(img, 0, 0 );
41   - var imageData = context.getImageData(0, 0, img.naturalWidth, img.naturalHeight); // <-ImageData
42   - var uint8clampedarray = new Uint8ClampedArray(imageData.data);
43   - var uint8array = new Uint8Array(uint8clampedarray);
44   - var image = new dali.BufferImage(uint8array, imageData.width, imageData.height, dali.PixelFormat.RGBA8888);
45   - return image;
46   - }
47   -
48   - function createExampleColorActor() {
49   - var halfQuadSize = 0.5;
50   - var verts = dali.createPropertyBuffer( {format: [ ["aPosition", dali.PropertyType.VECTOR3],
51   - ["aCol", dali.PropertyType.VECTOR4] ],
52   - data: { "aPosition": [ [-halfQuadSize, -halfQuadSize, 0.0],
53   - [+halfQuadSize, -halfQuadSize, 0.0],
54   - [-halfQuadSize, +halfQuadSize, 0.0],
55   - [+halfQuadSize, +halfQuadSize, 0.0]
56   - ],
57   - "aCol": [ [0, 0, 0, 1],
58   - [1, 0, 1, 1],
59   - [0, 1, 0, 1],
60   - [1, 1, 1, 1]
61   - ]
62   - }
63   - });
64   -
65   - var indices = dali.createPropertyBuffer( { format: [ ["indices", dali.PropertyType.INTEGER]],
66   - data: { "indices": [0, 3, 1, 0, 2, 3] } } ) ;
67   -
68   - var geometry = new dali.Geometry();
69   - geometry.addVertexBuffer(verts);
70   - geometry.setIndexBuffer(indices);
71   -
72   - var vertex = "" +
73   - "attribute mediump vec3 aPosition;" +
74   - "attribute mediump vec4 aCol;" +
75   - "uniform mediump mat4 uMvpMatrix;" +
76   - "uniform mediump vec3 uSize;" +
77   - "uniform lowp vec4 uColor;" +
78   - "varying lowp vec4 vColor;" +
79   - "" +
80   - "void main()" +
81   - "{" +
82   - " vColor = aCol * uColor;" +
83   - " mediump vec4 vertexPosition = vec4(aPosition,1.0);" +
84   - " vertexPosition.xyz *= uSize;" +
85   - " gl_Position = uMvpMatrix * vertexPosition;" +
86   - "}";
87   -
88   - var fragment = "" +
89   - "varying lowp vec4 vColor;" +
90   - "uniform lowp vec4 uColor;" +
91   - "" +
92   - "void main()" +
93   - "{" +
94   - " gl_FragColor = vColor * uColor;" +
95   - "}";
96   -
97   - var shader = new dali.Shader(vertex, fragment, dali.ShaderHints.HINT_NONE);
98   - var material = new dali.Material(shader);
99   - var renderer = new dali.Renderer(geometry, material);
100   - var actor = new dali.Actor();
101   - actor.addRenderer(renderer);
102   - return actor;
103   - }
104   -
105   - // Currently no toolkit, so no image actor so we create from scratch
106   - function createExampleImageActor() {
107   - var halfQuadSize = 0.5;
108   - var verts = dali.createPropertyBuffer( {format: [ ["aPosition", dali.PropertyType.VECTOR3],
109   - ["aTexCoord", dali.PropertyType.VECTOR2] ],
110   - data: { "aPosition": [ [-halfQuadSize, -halfQuadSize, 0.0],
111   - [+halfQuadSize, -halfQuadSize, 0.0],
112   - [-halfQuadSize, +halfQuadSize, 0.0],
113   - [+halfQuadSize, +halfQuadSize, 0.0]
114   - ],
115   - "aTexCoord": [ [0, 0],
116   - [1, 0],
117   - [0, 1],
118   - [1, 1]
119   - ]
120   - }
121   - });
122   -
123   - var indices = dali.createPropertyBuffer( { format: [ ["indices", dali.PropertyType.INTEGER]],
124   - data: { "indices": [0, 3, 1, 0, 2, 3] } } ) ;
125   - var geometry = new dali.Geometry();
126   - geometry.addVertexBuffer(verts);
127   - geometry.setIndexBuffer(indices);
128   -
129   - var vertex = "" +
130   - "// atributes\n" +
131   - "attribute mediump vec3 aPosition;" +
132   - "attribute mediump vec2 aTexCoord;\n" +
133   - "// inbuilt\n" +
134   - "uniform mediump mat4 uMvpMatrix;" +
135   - "uniform mediump vec3 uSize;" +
136   - "uniform lowp vec4 uColor;" +
137   - "// varying\n" +
138   - "varying mediump vec2 vTexCoord;\n" +
139   - "" +
140   - "void main()" +
141   - "{" +
142   - " mediump vec4 vertexPosition = vec4(aPosition, 1.0);" +
143   - " vertexPosition.xyz *= uSize;" +
144   - " gl_Position = uMvpMatrix * vertexPosition;" +
145   - " vTexCoord = aTexCoord;\n" +
146   - "}";
147   -
148   - var fragment = "" +
149   - "uniform lowp vec4 uColor;" +
150   - "uniform sampler2D sTexture;\n" +
151   - "varying mediump vec2 vTexCoord;\n" +
152   - "\n" +
153   - "void main()" +
154   - "{" +
155   - " gl_FragColor = texture2D(sTexture, vTexCoord) * uColor;\n" +
156   - "}";
157   -
158   - var shader = new dali.Shader(vertex, fragment, dali.ShaderHints.HINT_NONE);
159   - var material = new dali.Material(shader);
160   - var image = getEmbeddedImage() ;
161   - var sampler = new dali.Sampler();
162   - material.addTexture(image, "sTexture", sampler);
163   - var renderer = new dali.Renderer(geometry, material);
164   - var actor = new dali.Actor();
165   - actor.addRenderer(renderer);
166   - return actor;
167   - }
168   - </script>
169   -
170   - <h1>Dali Docs (Live Example)</h1>
171   - <div id="canvas-anchor"></div>
172   - <div class="emscripten" id="status">
173   - Downloading...
174   - </div>
175   - <!-- we can only have one canvas per page, so make it float off to the right -->
176   - <canvas class="emscripten" id="canvas" oncontextmenu="event.preventDefault()" width="300" height="400" style="background-color: black;float:right;position:fixed;right:0"></canvas>
177   -
178   - <script type="text/javascript"> // emscripten
179   -
180   - var statusElement = document.getElementById('status');
181   -
182   - var Module = {
183   - doNotCaptureKeyboard:true,
184   - preRun: [],
185   - postRun: [],
186   - print: (function() {
187   - var element = document.getElementById('output');
188   - if (element) element.value = ''; // clear browser cache
189   - return function(text) {
190   - text = Array.prototype.slice.call(arguments).join(' ');
191   - // These replacements are necessary if you render to raw HTML
192   - //text = text.replace(/&/g, "&amp;");
193   - //text = text.replace(/</g, "&lt;");
194   - //text = text.replace(/>/g, "&gt;");
195   - //text = text.replace('\n', '<br>', 'g');
196   - console.log("STDOUT:", text);
197   - if (element) {
198   - element.value += text + "\n";
199   - element.scrollTop = element.scrollHeight; // focus on bottom
200   - }
201   - };
202   - })(),
203   - printErr: function(text) {
204   - text = Array.prototype.slice.call(arguments).join(' ');
205   - if (0) { // XXX disabled for safety typeof dump == 'function') {
206   - dump(text + '\n'); // fast, straight to the real console
207   - } else {
208   - console.error("STDERR:", text);
209   - }
210   - },
211   - canvas: document.getElementById('canvas'),
212   - setStatus: function(text) {
213   - if (!Module.setStatus.last) Module.setStatus.last = { time: Date.now(), text: '' };
214   - if (text === Module.setStatus.text) return;
215   - statusElement.innerHTML = text;
216   - },
217   - totalDependencies: 0,
218   - monitorRunDependencies: function(left) {
219   - this.totalDependencies = Math.max(this.totalDependencies, left);
220   - Module.setStatus(left ? 'Preparing... (' + (this.totalDependencies-left) + '/' + this.totalDependencies + ')' : 'All downloads complete.');
221   - },
222   -
223   - postRun: function () {
224   - // postRun; so that dali-emscripten.js is loaded first
225   - // (postMainLoop to run all the time)
226   - var s = document.createElement("script");
227   - s.src = "dali-wrapper.js";
228   - document.body.appendChild(s);
229   - },
230   -
231   - postDaliWrapperRunFunctions: [], // list of functions to run on postDaliWrapperRun()
232   -
233   - postDaliWrapperRun: function() {
234   - for(var i = 0; i < Module.postDaliWrapperRunFunctions.length; i++) {
235   - Module.postDaliWrapperRunFunctions[i]();
236   - }
237   - }
238   - }; // Module
239   -
240   - Module.setStatus('Downloading...');
241   - window.onerror = function() {
242   - Module.setStatus('Exception thrown, see JavaScript console');
243   - Module.setStatus = function(text) {
244   - if (text) Module.printErr('[post-exception status] ' + text);
245   - };
246   - };
247   -
248   - </script>
249   -
250   - <!-- load dali-emscripten.js. Then use dali-emscripten.js::postRun callback function (see postRun above) -->
251   - <script async type="text/javascript" src="dali-emscripten.js"></script>
252   -
253   - <h3>Positioning Actors</h3>
254   - <p>An actor inherits its parent's position. The relative position between the actor &amp; parent is determined by 3 properties:</p>
255   - <ol>
256   - <li>PositionExample. This Vector3 property defines a point relative to the parent actor's area.</li>
257   - </ol>
258   - <p>The default is "top-left", which can be visualized in 2D as (0, 0), but is actually Vector3(0, 0, 0.5) in the 3D DALi world. The actor's position is relative to this point.</p>
259   - <pre class="code prettyprint"><code>// to change parent origin to the centre
260   -myActor.positionExample = [0.5, 0.5, 0.5];
261   - </code></pre>
262   - <script>
263   -
264   - var PositionExample = function() {
265   -
266   - var self = this;
267   -
268   - this.init = function() {
269   - self.parent = createExampleColorActor();
270   - self.parent.position = [0.0, 0.0, 0.0];
271   - self.parent.parentOrigin = [0.5, 0.5, 0.5];
272   - self.parent.size = [100,100,1];
273   - dali.stage.add(self.parent);
274   -
275   - self.actor = createExampleImageActor();
276   - self.actor.position = [0.0, 0.0, 1.0];
277   - self.actor.size = [25,25,1];
278   - self.actor.parentOrigin = [0.0, 0.0, 0.0];
279   - self.parent.add(self.actor);
280   - };
281   -
282   - this.setParentVector3 = function(propertyName) {
283   - var x = Number(document.getElementById("parentX-" + propertyName).value);
284   - var y = Number(document.getElementById("parentY-" + propertyName).value);
285   - var z = Number(document.getElementById("parentZ-" + propertyName).value);
286   - self.parent[propertyName] = [x,y,z];
287   - };
288   -
289   - this.setActorVector3 = function(propertyName) {
290   - var x = Number(document.getElementById("actorX-" + propertyName).value);
291   - var y = Number(document.getElementById("actorY-" + propertyName).value);
292   - var z = Number(document.getElementById("actorZ-" + propertyName).value);
293   - self.actor[propertyName] = [x,y,z];
294   - };
295   - };
296   -
297   - var positionExample = new PositionExample();
298   -
299   - Module.postDaliWrapperRunFunctions.push(positionExample.init);
300   -
301   - </script>
302   - <input type="button" value="[0.0, 0.0, 0.0]" onclick="positionExample.actor.parentOrigin = [0.0, 0.0, 0.0];"/>
303   - <input type="button" value="[0.5, 0.0, 0.5]" onclick="positionExample.actor.parentOrigin = [0.5, 0.0, 0.5];"/>
304   - <input type="button" value="[1.0, 0.0, 0.5]" onclick="positionExample.actor.parentOrigin = [1.0, 0.0, 0.5];"/>
305   - <br>
306   - <input type="button" value="[0.0, 0.5, 0.5]" onclick="positionExample.actor.parentOrigin = [0.0, 0.5, 0.5];"/>
307   - <input type="button" value="[0.5, 0.5, 0.5]" onclick="positionExample.actor.parentOrigin = [0.5, 0.5, 0.5];"/>
308   - <input type="button" value="[1.0, 0.5, 0.5]" onclick="positionExample.actor.parentOrigin = [1.0, 0.5, 0.5];"/>
309   - <br>
310   - <input type="button" value="[0.0, 1.0, 0.5]" onclick="positionExample.actor.parentOrigin = [0.0, 1.0, 0.5];"/>
311   - <input type="button" value="[0.5, 1.0, 0.5]" onclick="positionExample.actor.parentOrigin = [0.5, 1.0, 0.5];"/>
312   - <input type="button" value="[1.0, 1.0, 0.5]" onclick="positionExample.actor.parentOrigin = [1.0, 1.0, 0.5];"/>
313   -
314   -
315   - <ol start="2">
316   - <li>AnchorPoint. This Vector3 property defines a point relative to the child actor's area.</li>
317   - </ol>
318   - <p>The default is "center", which can be visualized in 2D as (0.5, 0.5), but is actually Vector3(0.5, 0.5, 0.5) in the 3D DALi world. The actor's position is also relative to this point.</p>
319   - <pre class="code prettyprint"><code>// setting anchor point to the centre
320   -myActor.anchorPoint = [0.5, 0.5, 0.5];
321   - </code></pre>
322   - <input type="button" value="[0.0, 0.0, 0.0]" onclick="positionExample.actor.anchorPoint = [0.0, 0.0, 0.0];"/>
323   - <input type="button" value="[0.5, 0.0, 0.5]" onclick="positionExample.actor.anchorPoint = [0.5, 0.0, 0.5];"/>
324   - <input type="button" value="[1.0, 0.0, 0.5]" onclick="positionExample.actor.anchorPoint = [1.0, 0.0, 0.5];"/>
325   - <br>
326   - <input type="button" value="[0.0, 0.5, 0.5]" onclick="positionExample.actor.anchorPoint = [0.0, 0.5, 0.5];"/>
327   - <input type="button" value="[0.5, 0.5, 0.5]" onclick="positionExample.actor.anchorPoint = [0.5, 0.5, 0.5];"/>
328   - <input type="button" value="[1.0, 0.5, 0.5]" onclick="positionExample.actor.anchorPoint = [1.0, 0.5, 0.5];"/>
329   - <br>
330   - <input type="button" value="[0.0, 1.0, 0.5]" onclick="positionExample.actor.anchorPoint = [0.0, 1.0, 0.5];"/>
331   - <input type="button" value="[0.5, 1.0, 0.5]" onclick="positionExample.actor.anchorPoint = [0.5, 1.0, 0.5];"/>
332   - <input type="button" value="[1.0, 1.0, 0.5]" onclick="positionExample.actor.anchorPoint = [1.0, 1.0, 0.5];"/>
333   -
334   - <ol start="3">
335   - <li>Position. This is the position vector between the parent-origin and anchor-point.</li>
336   - </ol>
337   - <p>Therefore by default, an actors position is the distance between its center and the top-left corner of its parent.</p>
338   - <p>An actor added directly to the stage with position (X = stageWidth<em>0.5, Y = stageHeight</em>0.5), would appear in the center of the screen. Likewise an actor with position (X = actorWidth<em>0.5, Y = actorWidth</em>0.5), would appear at the top-left of the screen.</p>
339   - <p>Note that since DALi is a 3D toolkit, this behaviour is the result of a default perspective camera setup.</p>
340   - <br>
341   - <input type="button" value="Set parent position" onclick="positionExample.setParentVector3('position');"/>
342   - <input type="Number" id="parentX-position" value="0.0"/>
343   - <input type="Number" id="parentY-position" value="0.0"/>
344   - <input type="Number" id="parentZ-position" value="0.0"/>
345   - <br>
346   - <input type="button" value="Set child position" onclick="positionExample.setActorVector3('position');"/>
347   - <input type="Number" id="actorX-position" value="0.0"/>
348   - <input type="Number" id="actorY-position" value="0.0"/>
349   - <input type="Number" id="actorZ-position" value="0.0"/>
350   - <br>
351   - <p>The parent in the example already has a parentOrigin [0.5, 0.5, 0.5] so a zero position displays in the centre. This can be changed below</p>
352   - <input type="button" value="Set parent parentOrigin" onclick="positionExample.setParentVector3('parentOrigin');"/>
353   - <input type="Number" id="parentX-parentOrigin" value="0.0"/>
354   - <input type="Number" id="parentY-parentOrigin" value="0.0"/>
355   - <input type="Number" id="parentZ-parentOrigin" value="0.0"/>
356   - <br>
357   - <input type="button" value="Set child parentOrigin" onclick="positionExample.setActorVector3('parentOrigin');"/>
358   - <input type="Number" id="actorX-parentOrigin" value="0.0"/>
359   - <input type="Number" id="actorY-parentOrigin" value="0.0"/>
360   - <input type="Number" id="actorZ-parentOrigin" value="0.0"/>
361   - <br>
362   - <br>
363   -
364   - <img alt="Brand" width="50" id="testImage" style="visibility: hidden" src="data:image/png;base64,/9j/4QCGRXhpZgAASUkqAAgAAAABAJiCAgBiAAAAGgAAAAAAAABDb3B5cmlnaHQgKGMpIDIwMTQgU2Ftc3VuZyBFbGVjdHJvbmljcywgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMDogaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wAAAA/+EC12h0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8APD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNC40LjAtRXhpdjIiPgogPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIgogICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgIHhtcDpDcmVhdG9yVG9vbD0iS2lwaS1wbHVnaW5zLTIuNS4wIgogICB0aWZmOlNvZnR3YXJlPSJLaXBpLXBsdWdpbnMtMi41LjAiPgogICA8ZGM6cmlnaHRzPgogICAgPHJkZjpBbHQ+CiAgICAgPHJkZjpsaSB4bWw6bGFuZz0ieC1kZWZhdWx0Ij5Db3B5cmlnaHQgKGMpIDIwMTQgU2Ftc3VuZyBFbGVjdHJvbmljcywgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMDogaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wPC9yZGY6bGk+CiAgICA8L3JkZjpBbHQ+CiAgIDwvZGM6cmlnaHRzPgogIDwvcmRmOkRlc2NyaXB0aW9uPgogPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4K/+0ArlBob3Rv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">
365   -
366   - </body>
367   -</html>
368   -
369   -
emscripten-examples/dali-toy.html deleted
1   -<!--
2   -/*
3   - * Copyright (c) 2015 Samsung Electronics Co., Ltd.
4   - *
5   - * Licensed under the Apache License, Version 2.0 (the "License");
6   - * you may not use this file except in compliance with the License.
7   - * You may obtain a copy of the License at
8   - *
9   - * http://www.apache.org/licenses/LICENSE-2.0
10   - *
11   - * Unless required by applicable law or agreed to in writing, software
12   - * distributed under the License is distributed on an "AS IS" BASIS,
13   - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   - * See the License for the specific language governing permissions and
15   - * limitations under the License.
16   - *
17   - */
18   --->
19   -
20   -<html>
21   - <head>
22   - <script src="/skewer"></script>
23   -
24   - <style src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-colorpicker/2.1.0/css/bootstrap-colorpicker.min.css"></style>
25   -
26   - <style>
27   - body, html {
28   - overflow: hidden;
29   - height:100%;
30   - }
31   -
32   - @media{
33   - #left {
34   - position: absolute;
35   - bottom: 0;
36   - left: 0;
37   - overflow-y: scroll;
38   - }
39   -
40   - #right {
41   - position: absolute;
42   - bottom: 0;
43   - right: 0;
44   - overflow-y: scroll;
45   - }
46   - }
47   -
48   - #left {
49   - height:100%;
50   - }
51   -
52   - #right {
53   - height:100%;
54   - text-align:center;
55   - }
56   -
57   - /* 1st level */
58   - .nav label {
59   - color: blue;
60   - }
61   -
62   - /* 2nd level */
63   - .tree > li > label {
64   - padding:10px 15px;
65   - }
66   - /* 2nd level */
67   - .tree > li > label {
68   - padding:10px 15px;
69   - }
70   -
71   - /* 3rd level */
72   - .tree > li > ul > li > a {
73   - color:#cc0000;
74   - font-size:10pt;
75   - margin-left:15px;
76   - }
77   -
78   - #editorVertex {
79   - position: relative;
80   - height: 300;
81   - }
82   -
83   - #editorFragment {
84   - position: relative;
85   - height: 300;
86   - }
87   -
88   - #editorJavascript {
89   - position: relative;
90   - height: 600;
91   - }
92   -
93   - #solidActorBackgroundColour {
94   - position: relative;
95   - height: 150px;
96   - }
97   -
98   -
99   - .popover {
100   - /* max-width:600px; */
101   - /* width: auto; */
102   - }
103   -
104   - .tooltip-inner {
105   - max-width: 600px;
106   - /* If max-width does not work, try using width instead */
107   - width: 800px;
108   - white-space:pre-wrap;
109   - text-align:left;
110   - }
111   -
112   - .modal.modal-wide .modal-dialog {
113   - width: 90%;
114   - }
115   - .modal-wide .modal-body {
116   - overflow-y: auto;
117   - }
118   -
119   - </style>
120   -<!-- Latest compiled and minified CSS -->
121   - <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/css/bootstrap.min.css">
122   -
123   -<!-- Optional theme -->
124   - <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/css/bootstrap-theme.min.css">
125   -
126   - <link rel="shortcut icon" href="data:image/png;base64,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">
127   -
128   - </head>
129   -
130   - <body>
131   - <img alt="Brand" width="50" id="testImage1" style="visibility: hidden" src="data:image/png;base64,/9j/4QCGRXhpZgAASUkqAAgAAAABAJiCAgBiAAAAGgAAAAAAAABDb3B5cmlnaHQgKGMpIDIwMTQgU2Ftc3VuZyBFbGVjdHJvbmljcywgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMDogaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wAAAA/+EC12h0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8APD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNC40LjAtRXhpdjIiPgogPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIgogICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgIHhtcDpDcmVhdG9yVG9vbD0iS2lwaS1wbHVnaW5zLTIuNS4wIgogICB0aWZmOlNvZnR3YXJlPSJLaXBpLXBsdWdpbnMtMi41LjAiPgogICA8ZGM6cmlnaHRzPgogICAgPHJkZjpBbHQ+CiAgICAgPHJkZjpsaSB4bWw6bGFuZz0ieC1kZWZhdWx0Ij5Db3B5cmlnaHQgKGMpIDIwMTQgU2Ftc3VuZyBFbGVjdHJvbmljcywgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMDogaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wPC9yZGY6bGk+CiAgICA8L3JkZjpBbHQ+CiAgIDwvZGM6cmlnaHRzPgogIDwvcmRmOkRlc2NyaXB0aW9uPgogPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4K/+0ArlBob3Rv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">
132   - <img alt="Brand" width="50" id="testImage2" style="visibility: hidden" src="data:image/png;base64,/9j/4QCGRXhpZgAASUkqAAgAAAABAJiCAgBiAAAAGgAAAAAAAABDb3B5cmlnaHQgKGMpIDIwMTQgU2Ftc3VuZyBFbGVjdHJvbmljcywgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMDogaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wAAAA/+EC12h0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8APD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNC40LjAtRXhpdjIiPgogPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIgogICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgIHhtcDpDcmVhdG9yVG9vbD0iS2lwaS1wbHVnaW5zLTIuNS4wIgogICB0aWZmOlNvZnR3YXJlPSJLaXBpLXBsdWdpbnMtMi41LjAiPgogICA8ZGM6cmlnaHRzPgogICAgPHJkZjpBbHQ+CiAgICAgPHJkZjpsaSB4bWw6bGFuZz0ieC1kZWZhdWx0Ij5Db3B5cmlnaHQgKGMpIDIwMTQgU2Ftc3VuZyBFbGVjdHJvbmljcywgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMDogaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wPC9yZGY6bGk+CiAgICA8L3JkZjpBbHQ+CiAgIDwvZGM6cmlnaHRzPgogIDwvcmRmOkRlc2NyaXB0aW9uPgogPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4K/+0ArlBob3Rv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">
133   - <img alt="Brand" width="50" id="testImage3" style="visibility: hidden" src="data:image/png;base64,/9j/4QCGRXhpZgAASUkqAAgAAAABAJiCAgBiAAAAGgAAAAAAAABDb3B5cmlnaHQgKGMpIDIwMTQgU2Ftc3VuZyBFbGVjdHJvbmljcywgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMDogaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wAAAA/+EC12h0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8APD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNC40LjAtRXhpdjIiPgogPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIgogICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgIHhtcDpDcmVhdG9yVG9vbD0iS2lwaS1wbHVnaW5zLTIuNS4wIgogICB0aWZmOlNvZnR3YXJlPSJLaXBpLXBsdWdpbnMtMi41LjAiPgogICA8ZGM6cmlnaHRzPgogICAgPHJkZjpBbHQ+CiAgICAgPHJkZjpsaSB4bWw6bGFuZz0ieC1kZWZhdWx0Ij5Db3B5cmlnaHQgKGMpIDIwMTQgU2Ftc3VuZyBFbGVjdHJvbmljcywgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMDogaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wPC9yZGY6bGk+CiAgICA8L3JkZjpBbHQ+CiAgIDwvZGM6cmlnaHRzPgogIDwvcmRmOkRlc2NyaXB0aW9uPgogPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4K/+0ArlBob3Rv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">
134   - <img alt="Brand" width="50" id="testImage4" style="visibility: hidden" src="data:image/png;base64,/9j/4QCGRXhpZgAASUkqAAgAAAABAJiCAgBiAAAAGgAAAAAAAABDb3B5cmlnaHQgKGMpIDIwMTQgU2Ftc3VuZyBFbGVjdHJvbmljcywgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMDogaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wAAAA/+EC12h0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8APD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNC40LjAtRXhpdjIiPgogPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIgogICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgIHhtcDpDcmVhdG9yVG9vbD0iS2lwaS1wbHVnaW5zLTIuNS4wIgogICB0aWZmOlNvZnR3YXJlPSJLaXBpLXBsdWdpbnMtMi41LjAiPgogICA8ZGM6cmlnaHRzPgogICAgPHJkZjpBbHQ+CiAgICAgPHJkZjpsaSB4bWw6bGFuZz0ieC1kZWZhdWx0Ij5Db3B5cmlnaHQgKGMpIDIwMTQgU2Ftc3VuZyBFbGVjdHJvbmljcywgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMDogaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wPC9yZGY6bGk+CiAgICA8L3JkZjpBbHQ+CiAgIDwvZGM6cmlnaHRzPgogIDwvcmRmOkRlc2NyaXB0aW9uPgogPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4K/+0ArlBob3Rv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">
135   -
136   - <div class="container">
137   - <div class="row">
138   - <div class="col-md-6" id="left">
139   - <div class="panel with-nav-tabs panel-default">
140   - <div class="panel-heading">
141   - <ul class="nav nav-tabs">
142   - <li>
143   - <img alt="Brand" width="50" src="data:image/png;base64,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"><b style="font-size:24"><sub>toy<sub/></b></image>
144   - </a>
145   - </li>
146   - <li class="active"><a href="#tab1primary" id="actorTab" data-toggle="tab">Javascript buffers</a></li>
147   - <li><a href="#tab2primary" id="imagesTab" data-toggle="tab">Image buffers</a></li>
148   - <li><a href="#tab3primary" id="shadersTab" data-toggle="tab">Shader buffers</a></li>
149   - <li><a href="#tab4primary" id="propertiesTab" data-toggle="tab">Properties</a></li>
150   - <li><a href="#tab5primary" id="helpTab" data-toggle="tab">Help</a></li>
151   - </ul>
152   - </div>
153   - <div class="panel-body">
154   - <div class="tab-content">
155   -
156   - <div class="tab-pane fade in active" id="tab1primary">
157   -
158   - <div class="btn-group">
159   - <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-expanded="false">
160   - Select Javacript Buffer <span class="caret"></span>
161   - </button>
162   - <ul class="dropdown-menu" role="menu" id="javascriptDropDown">
163   - </ul>
164   - </div>
165   -
166   - <button type="button" class="btn btn-default" id="btnJavascriptAddBuffer">Add Buffer</button>
167   - <button type="button" class="btn btn-default" id="btnJavascriptRenameBuffer">Rename Buffer</button>
168   - <button type="button" class="btn btn-default" id="btnJavascriptClearRun">Clear stage & Run</button>
169   - <button type="button" class="btn btn-default" id="btnJavascriptRun">Run</button>
170   - <button type="button" class="btn btn-default" id="btnJavascriptSourceJson">Json</button>
171   - <div>
172   - <p id="textJavascriptName"></p>
173   - </div>
174   -
175   - <div id="editorJavascript" align="left">
176   - </div>
177   - </div>
178   -
179   - <div class="tab-pane fade" id="tab2primary">
180   -
181   - <div class="btn-group">
182   - <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-expanded="false">
183   - Select Image <span class="caret"></span>
184   - </button>
185   - <ul class="dropdown-menu" role="menu" id="imageDropDown">
186   - </ul>
187   - Add Image <input type="file" id="btnImageAddBuffer">
188   - <button type="button" class="btn btn-default" id="btnImageRenameBuffer">Rename Image</button>
189   - </div>
190   - <div>
191   - <canvas id="imageViewCanvas" width="200" height="50"></canvas>
192   - </div>
193   - </div>
194   -
195   - <div class="tab-pane fade" id="tab3primary">
196   - <div class="btn-group">
197   - <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-expanded="false">
198   - Load Shader Buffer <span class="caret"></span>
199   - </button>
200   - <ul class="dropdown-menu" role="menu" id="shaderDropDown">
201   - <li><a href="javascript:selectShader(1)">Emboss</a></li>
202   - <li><a href="javascript:selectShader(2)">eg shader2</a></li>
203   - <li><a href="javascript:selectShader(3)">eg shader3</a></li>
204   - <li class="divider"></li>
205   - <li><a href="javascript:selectShader(0)">Passthrough</a></li>
206   - </ul>
207   - </div>
208   -
209   - <div class="btn-group">
210   - <button type="button" class="btn btn-default" id="dropdownShaderHints">Shader Hints</button>
211   - <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-expanded="false">
212   - <span class="caret"></span>
213   - </button>
214   -
215   - <ul class="dropdown-menu" role="menu" id="shaderHintsDropDown">
216   - <li><a href="#" class="small" data-value="option1" tabIndex="-1"><input type="checkbox" id="requiresSelfDepthTest"/>Requires self depth test</a></li>
217   - <li><a href="#" class="small" data-value="option1" tabIndex="-1"><input type="checkbox" id="outputIsTransparent"/>Output is transparent</a></li>
218   - <li><a href="#" class="small" data-value="option1" tabIndex="-1"><input type="checkbox" id="outputIsOpaque"/>Output is opaque</a></li>
219   - <li><a href="#" class="small" data-value="option1" tabIndex="-1"><input type="checkbox" id="modifiesGeometry"/>Modifies geometry</a></li>
220   - </ul>
221   - </div>
222   - <button type="button" class="btn btn-default" id="btnShaderAddBuffer">Add Shader buffer</button>
223   - <button type="button" class="btn btn-default" id="btnShaderRenameBuffer">Rename buffer</button>
224   - <button type="button" class="btn btn-default" id="btnShaderSourceC">C++</button>
225   - <button type="button" class="btn btn-default" id="btnShaderSourceJS">JS</button>
226   - <button type="button" class="btn btn-default" id="btnShaderSourceJSON">Json</button>
227   - <p></p>
228   - <div>
229   - <p id="textShaderName"></p>
230   - </div>
231   - <div id="editorVertex" align="left">
232   - </div>
233   - <p></p>
234   - <div id="editorFragment" align="left">
235   - </div>
236   -
237   - <div>
238   - <text id="textShaderErrors"></textarea>
239   - </div>
240   -
241   - </div>
242   - <div class="tab-pane" id="tab4primary">
243   - <div class="panel-group" id="accordion" role="tablist" aria-multiselectable="true">
244   - <div class="panel panel-default">
245   - <div class="panel-heading" role="tab" id="headingOne">
246   - <h4 class="panel-title">
247   - <a data-toggle="collapse" data-parent="#accordion" href="#collapseOne" aria-expanded="true" aria-controls="collapseOne">
248   - Tree
249   - </a>
250   - </h4>
251   - </div>
252   - <div id="collapseOne" class="panel-collapse collapse in" role="tabpanel" aria-labelledby="headingOne">
253   - <div class="panel-body">
254   - <ul class="well" id="tree">
255   - </ul>
256   - </div>
257   - </div>
258   - </div>
259   - <div class="panel panel-default">
260   - <div class="panel-heading" role="tab" id="headingTwo">
261   - <h4 class="panel-title">
262   - <a>
263   - Properties
264   - </a>
265   - </h4>
266   - </div>
267   - <div>
268   - <div class="panel-body">
269   - <div class="well" id="selected"> </div>
270   - </div>
271   - </div>
272   - </div>
273   - </div>
274   -
275   -
276   - </div>
277   -
278   - <div class="tab-pane fade" id="tab5primary">
279   - <u>Quick Start</u>
280   - <ol>
281   - <li> Click "Javascript Buffers" tab. </li>
282   - <li> Click "Select Javscript Buffer" dropdown and choose "02. Textured Quad".</li>
283   - <li> Click "Clear and Run" to clear the stage and execute the selected Javascript buffer</li>
284   - <li> Click on the image in the Dali view to select the created actor</li>
285   - <li> Click "Properties" tab to view the actor properties</li>
286   - <li> Press F12 or Tools|Javascript Console to open the console. The selected actor can be accessed by typing "dali.actor" in the console.</li>
287   - </ol>
288   - <ul>
289   - <li>The example uses the function shaderFromUIBuffer(name) which gets a shader from one of the buffers in the "Shader buffers" tab.</li>
290   - <li>You can load images to the "Image Buffers" and create shaders in "Shader Buffers" and retrieve them in Javascript with the functions
291   - shaderFromUIBuffer(name) and imageFromUIBuffer(name) which create a Dali::Shader() or Dali::Image()</li>
292   - <li>The example uses the "Pass Through Texture" shader so you can select and edit that shader buffer and then re-click "Clear and Run" to
293   - run with your modified shader</li>
294   - </ul>
295   - <u>Tips</u>
296   - <ul>
297   - <li>"dali.stage.add(actor)" adds actors to a root actor for rudamentary scene rotation</li>
298   - <li>Data is saved to the browser IndexedBuffer so will persist over sessions. However the browser has control over when this data may be dropped.</li>
299   - The button below will remove this persisted data and reload the page (sometimes needed if upgrading dali-toy)
300   - <li>There are some helper functions useable in the developer console (see below).</li>
301   - <li>The functions imageFromUiBuffer(name) and shaderFromUiBuffer(name) will return a Dali.Image() or Dali.Shader() by name from the tabs.</li>
302   - <li>The shader buffers will attempt to compile the shader and display errors in the margin</li>
303   - </ul>
304   - <u>Mouse</u>
305   - <ul>
306   - <li>Left click - select actor. Left drag - move actor in X/Y plane</li>
307   - <li>Middle drag - rotate root rotation actor</li>
308   - <li>Right drag up/down - move actor in Z plane</li>
309   - </ul>
310   - <u>DALi Javascript wrapping</u>
311   - <p>See numbered examples in Javascript Buffer tab.</p>
312   - <u>DALi helper variables</u>
313   - <pre>
314   -dali.actor; // currently selected (clicked) actor or null
315   - </pre>
316   - <u>DALi toy helper functions</u>
317   - <pre>
318   -dali.actor.position = [0,100,0]; // property access via dot notation
319   -shader.weight = 3; // uniforms access from shader object
320   -col = collectByName(); // collect all actors on stage for dotted notation access
321   -col.picture_4_png.position = [100,0,0];
322   -
323   -clear(); // Clear all. If things are still funky right click the reload button
324   - // Open developer console, click "Empty Cache and hard reload" (chrome)
325   - </pre>
326   - <button type="button" class="btn btn-default" id="btnRewriteDatabase">Clear & Reset the Indexed Database (Delete & Reset buffers to original values), then reload the page</button>
327   - <br>
328   - <div>
329   - <textarea id="output" rows="8"></textarea>
330   - </div>
331   - </div>
332   -
333   - </div>
334   - </div>
335   - </div>
336   -
337   -<!-- Modal -->
338   - <div class="modal fade" id="modalAddProperty" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
339   - <div class="modal-dialog">
340   - <div class="modal-content">
341   - <div class="modal-header">
342   - <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
343   - <h4 class="modal-title" id="myModalLabel">Add Property</h4>
344   - </div>
345   - <div class="modal-body" id="modalPropertyBody">
346   - </div>
347   - <div class="modal-footer" id="modalFooter">
348   - <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
349   - <button type="button" class="btn btn-primary" data-dismiss="modal" id="addPropertySave">Save changes</button>
350   - </div>
351   - </div>
352   - </div>
353   - </div>
354   -
355   -<!-- Modal -->
356   - <div class="modal fade" id="modalSaveShader">
357   - <div class="modal-dialog">
358   - <div class="modal-content">
359   - <div class="modal-header">
360   - <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
361   - <h4 class="modal-title">Temporarily save shader shader in cache?</h4>
362   - </div>
363   - <div class="modal-body row">
364   - <div class="container-fluid">
365   - <div class="row">
366   - <p class="col-md-12" >Do you want to save the exisitng shader</p>
367   - </div>
368   - <div class="row">
369   - <input class="col-md-12" type="text" id="modalSaveShaderName"/>
370   - </div>
371   - </div>
372   - </div>
373   - <div class="modal-footer">
374   - <button type="button" class="btn btn-default" data-dismiss="modal">Don't save</button>
375   - <button type="button" class="btn btn-primary" data-dismiss="modal" id="modalSaveShaderYes">Save changes</button>
376   - </div>
377   - </div><!-- /.modal-content -->
378   - </div><!-- /.modal-dialog -->
379   - </div><!-- /.modal -->
380   -
381   -<!-- Modal -->
382   - <div class="modal modal-wide fade" id="modalCodeInfo" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
383   - <div class="modal-dialog">
384   - <div class="modal-content">
385   - <div class="modal-header">
386   - <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
387   - <h4 class="modal-title" id="myModalLabel">Code</h4>
388   - </div>
389   - <div class="modal-body" id="modalCodeInfoBody">
390   - </div>
391   - <div class="modal-footer">
392   - <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
393   - </div>
394   - </div>
395   - </div>
396   - </div>
397   -
398   -<!-- Modal -->
399   - <div class="modal modal-wide fade" id="modalQuestion" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
400   - <div class="modal-dialog">
401   - <div class="modal-content">
402   - <div class="modal-header">
403   - <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
404   - <h4 class="modal-title" id="myModalLabel">Question</h4>
405   - </div>
406   - <div class="modal-body" id="modalQuestionBody">
407   - </div>
408   - <div class="modal-footer">
409   - <button type="button" class="btn btn-default" data-dismiss="modal" id="modalQuestionNo">No</button>
410   - <button type="button" class="btn btn-primary" data-dismiss="modal" id="modalQuestionYes">Yes</button>
411   - </div>
412   - </div>
413   - </div>
414   - </div>
415   -
416   -<!-- Modal -->
417   - <div class="modal modal-wide fade" id="modalInput" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
418   - <div class="modal-dialog">
419   - <div class="modal-content">
420   - <div class="modal-header">
421   - <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
422   - <h4 class="modal-title" id="myModalLabel">Input</h4>
423   - </div>
424   - <div class="modal-body" id="modalInputBody">
425   - </div>
426   - <input type="text" id="modalInputText" class="form-control">
427   - <div class="modal-footer">
428   - <button type="button" class="btn btn-default" data-dismiss="modal" id="modalInputCancel">Cancel</button>
429   - <button type="button" class="btn btn-primary" data-dismiss="modal" id="modalInputOk">Ok</button>
430   - </div>
431   - </div>
432   - </div>
433   - </div>
434   -
435   -
436   - </div>
437   - <div class="col-md-6" id="right">
438   - <div class="spinner" id='spinner'></div>
439   - <div>
440   - <progress value="0" max="100" id="progress" hidden=1></progress>
441   - </div>
442   - <div class="emscripten" id="status">
443   - Downloading...
444   - </div>
445   - <canvas class="emscripten" id="canvas" oncontextmenu="event.preventDefault()" width="600" height="800" style="background-color: black;"></canvas>
446   -
447   - <div class="row">
448   - <div class="col-md-4">
449   - </div>
450   - <div class="col-md-4" id="statistics" align ="left">
451   - </div>
452   - <div class="col-md-4">
453   - </div>
454   - </div>
455   - </div>
456   - </div>
457   - </div>
458   -
459   -<!-- Small modal -->
460   -<div class="modal fade bs-example-modal-sm" id="infoModal" tabindex="-1" role="dialog" aria-labelledby="mySmallModalLabel" aria-hidden="true">
461   - <div class="modal-dialog modal-sm">
462   - <div class="modal-content" id="modalInfoBody">
463   - </div>
464   - </div>
465   -</div>
466   -
467   - <!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
468   - <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
469   - <!-- Latest compiled and minified JavaScript -->
470   - <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.2/js/bootstrap.min.js"></script>
471   -
472   -
473   -
474   - <script type="text/javascript"> // emscripten
475   -
476   - var statusElement = document.getElementById('status');
477   - var progressElement = document.getElementById('progress');
478   - var spinnerElement = document.getElementById('spinner');
479   -
480   - var Module = {
481   - doNotCaptureKeyboard:true,
482   - preRun: [],
483   - postRun: [],
484   - print: (function() {
485   - var element = document.getElementById('output');
486   - if (element) element.value = ''; // clear browser cache
487   - return function(text) {
488   - text = Array.prototype.slice.call(arguments).join(' ');
489   - // These replacements are necessary if you render to raw HTML
490   - //text = text.replace(/&/g, "&amp;");
491   - //text = text.replace(/</g, "&lt;");
492   - //text = text.replace(/>/g, "&gt;");
493   - //text = text.replace('\n', '<br>', 'g');
494   - console.log("STDOUT:", text);
495   - if (element) {
496   - element.value += text + "\n";
497   - element.scrollTop = element.scrollHeight; // focus on bottom
498   - }
499   - };
500   - })(),
501   - printErr: function(text) {
502   - text = Array.prototype.slice.call(arguments).join(' ');
503   - if (0) { // XXX disabled for safety typeof dump == 'function') {
504   - dump(text + '\n'); // fast, straight to the real console
505   - } else {
506   - console.error("STDERR:", text);
507   - }
508   - },
509   - canvas: document.getElementById('canvas'),
510   - setStatus: function(text) {
511   - if (!Module.setStatus.last) Module.setStatus.last = { time: Date.now(), text: '' };
512   - if (text === Module.setStatus.text) return;
513   - var m = text.match(/([^(]+)\((\d+(\.\d+)?)\/(\d+)\)/);
514   - var now = Date.now();
515   - if (m && now - Date.now() < 30) return; // if this is a progress update, skip it if too soon
516   - if (m) {
517   - text = m[1];
518   - progressElement.value = parseInt(m[2])*100;
519   - progressElement.max = parseInt(m[4])*100;
520   - progressElement.hidden = false;
521   - spinnerElement.hidden = false;
522   - } else {
523   - progressElement.value = null;
524   - progressElement.max = null;
525   - progressElement.hidden = true;
526   - if (!text) spinnerElement.style.display = 'none';
527   - }
528   - statusElement.innerHTML = text;
529   - },
530   - totalDependencies: 0,
531   - monitorRunDependencies: function(left) {
532   - this.totalDependencies = Math.max(this.totalDependencies, left);
533   - Module.setStatus(left ? 'Preparing... (' + (this.totalDependencies-left) + '/' + this.totalDependencies + ')' : 'All downloads complete.');
534   - },
535   -
536   - postRun: function () {
537   - // postRun; so that dali-emscripten.js is loaded first
538   - // (postMainLoop to run all the time)
539   - var s = document.createElement("script");
540   - s.src = "dali-wrapper.js";
541   - document.body.appendChild(s);
542   - },
543   - postDaliWrapperRun: function () {
544   - //
545   - // chain load main.js
546   - //
547   - var chainLoadScript = document.createElement("script");
548   - chainLoadScript.src = "dali-toy.js";
549   - document.body.appendChild(chainLoadScript);
550   - }
551   -
552   - }; // Module
553   -
554   - Module.setStatus('Downloading...');
555   - window.onerror = function() {
556   - Module.setStatus('Exception thrown, see JavaScript console');
557   - spinnerElement.style.display = 'none';
558   - Module.setStatus = function(text) {
559   - if (text) Module.printErr('[post-exception status] ' + text);
560   - };
561   - };
562   -
563   -
564   - </script>
565   -
566   - <script async type="text/javascript" src="dali-emscripten.js"></script>
567   -
568   - <script src="https://cdn.jsdelivr.net/ace/1.2/min/ace.js" type="text/javascript" charset="utf-8"></script>
569   - <script src="https://cdn.jsdelivr.net/ace/1.2/min/ext-language_tools.js" type="text/javascript" charset="utf-8"></script>
570   - <script src='https://cdnjs.cloudflare.com/ajax/libs/spectrum/1.6.1/spectrum.min.js'></script>
571   - <script src="https://cdnjs.cloudflare.com/ajax/libs/gl-matrix/2.1.0/gl-matrix-min.js"></script>
572   - <link rel='stylesheet' href='https://cdnjs.cloudflare.com/ajax/libs/spectrum/1.6.1/spectrum.min.css' />
573   -
574   - <script>
575   - var editor = ace.edit("editorVertex");
576   - editor.setTheme("ace/theme/eclipse");
577   - editor.getSession().setMode("ace/mode/glsl");
578   - editor.$blockScrolling = Infinity; // stops error message about scrolling
579   -
580   - var editor = ace.edit("editorFragment");
581   - editor.setTheme("ace/theme/eclipse");
582   - editor.getSession().setMode("ace/mode/glsl");
583   - editor.$blockScrolling = Infinity; // stops error message about scrolling
584   -
585   - var editor = ace.edit("editorJavascript");
586   - editor.setTheme("ace/theme/eclipse");
587   - editor.getSession().setMode("ace/mode/javascript");
588   - editor.$blockScrolling = Infinity; // stops error message about scrolling
589   -
590   - // var editor = ace.edit("editorJavascript");
591   - // editor.setTheme("ace/theme/eclipse");
592   - // editor.getSession().setMode("ace/mode/javascript");
593   -
594   - // var elem = document.getElementByClassName("solidActorBackgroundColour");
595   - // elem.colorpicker();
596   -
597   - </script>
598   - <script>
599   - //$(function(){
600   - // $('.solidActorBackgroundColour').colorpicker();
601   - //});
602   - $("#solidActorColor").spectrum({
603   - color: "#f00",
604   - preferredFormat: "rgb",
605   - showPalette: true,
606   - showInput: true,
607   - showAlpha: true
608   - });
609   - $("#solidActorBorderColor").spectrum({
610   - color: "#f00",
611   - preferredFormat: "rgb",
612   - showPalette: true,
613   - showInput: true,
614   - showAlpha: true
615   - });
616   -
617   -
618   - function getColorForElement(elemId)
619   - {
620   - var c = $("#" + elemId).spectrum("get").toRgb();
621   - return [c.r / 256, c.g / 256, c.b / 256, c.a];
622   - }
623   -
624   - </script>
625   - </body>
626   -
627   -</html>
emscripten-examples/dali-toy.js deleted
Changes suppressed. Click to show
1   -/*
2   - * Copyright (c) 2015 Samsung Electronics Co., Ltd.
3   - *
4   - * Licensed under the Apache License, Version 2.0 (the "License");
5   - * you may not use this file except in compliance with the License.
6   - * You may obtain a copy of the License at
7   - *
8   - * http://www.apache.org/licenses/LICENSE-2.0
9   - *
10   - * Unless required by applicable law or agreed to in writing, software
11   - * distributed under the License is distributed on an "AS IS" BASIS,
12   - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   - * See the License for the specific language governing permissions and
14   - * limitations under the License.
15   - *
16   - */
17   -
18   -/*global */
19   -/* eslint-env browser */
20   -/* eslint "brace-style": [2, "1tbs"] */
21   -/* eslint "no-console": 0 */
22   -/* eslint "no-underscore-dangle": 0 */
23   -
24   -//
25   -// Dali browser application for testing the javascript API.
26   -//
27   -
28   -// browser variables defined for eslint
29   -var $;
30   -var ace;
31   -var dali;
32   -// var canvas;
33   -var app;
34   -var eventHandler;
35   -var assert;
36   -
37   -//
38   -// Global state
39   -//
40   -var test;
41   -var database;
42   -
43   -var uiApp;
44   -var uiJavascriptTab;
45   -var uiImageTab;
46   -var uiShaderTab;
47   -
48   -
49   -var actorIdToShaderSet = {}; // actor id to shader
50   -var compiledShaders = {}; // compiled shaders by name
51   -
52   -var animationList = []; // list of animations that have been added [ { animation: new dali.Animation(), properties: [] } ]
53   -var animationSelectionIndex; // selected animation
54   -
55   -//
56   -//
57   -// Demo Shaders
58   -//
59   -//
60   -var shaderSourceSelection = 0;
61   -var shaderSources = [
62   - {
63   - name: "pass through texture",
64   - hints: "",
65   - vertex:
66   - "\n" +
67   - "attribute mediump vec3 aPosition;\n" +
68   - "attribute mediump vec2 aTexCoord;\n" +
69   - "varying mediump vec2 vTexCoord;\n" +
70   - "uniform mediump vec3 uSize;\n" +
71   - "uniform mediump mat4 uModelView;\n" +
72   - "uniform mediump mat4 uProjection;\n" +
73   - "uniform mediump mat4 uMvpMatrix;\n" +
74   - "\n" +
75   - "void main(void)\n" +
76   - "{\n" +
77   - " mediump vec4 vertexPosition = vec4(aPosition, 1.0);\n" +
78   - " vertexPosition.xyz *= uSize;\n" +
79   - " gl_Position = uMvpMatrix * vertexPosition;\n" +
80   - " vTexCoord = aTexCoord;\n" +
81   - "}\n",
82   - fragment: "precision mediump float;\n" +
83   - "\n" +
84   - "uniform sampler2D sTexture;\n" +
85   - "uniform mediump vec4 uColor;\n" +
86   - "varying mediump vec2 vTexCoord;\n" +
87   - "\n" +
88   - "void main()\n" +
89   - "{\n" +
90   - " gl_FragColor = texture2D( sTexture, vTexCoord ) * uColor;\n" +
91   - "}\n"
92   - },
93   - {
94   - name: "pass through color",
95   - hints: "",
96   - vertex: "\n" +
97   - "attribute mediump vec3 aPosition;\n" +
98   - "attribute mediump vec2 aTexCoord;\n" +
99   - "varying mediump vec2 vTexCoord;\n" +
100   - "uniform mediump vec3 uSize;\n" +
101   - "uniform mediump mat4 uModelView;\n" +
102   - "uniform mediump mat4 uProjection;\n" +
103   - "\n" +
104   - "void main(void)\n" +
105   - "{\n" +
106   - " gl_Position = uProjection * uModelView * vec4(aPosition, 1.0);\n" +
107   - " vertexPosition.xyz *= uSize;\n" +
108   - " vTexCoord = aTexCoord;\n" +
109   - "}\n",
110   - fragment: "precision mediump float;\n" +
111   - "\n" +
112   - "uniform mediump vec4 uColor;\n" +
113   - "varying mediump vec2 vTexCoord;\n" +
114   - "\n" +
115   - "void main()\n" +
116   - "{\n" +
117   - " gl_FragColor = vColor * uColor;\n" +
118   - "}\n"
119   - },
120   - {
121   - name: "sRGB Correction",
122   - hints: "",
123   - vertex: "\n" +
124   - "uniform mediump mat4 uModelView;\n" +
125   - "uniform mediump mat4 uProjection;\n" +
126   - "uniform mediump mat4 uModelMatrix;\n" +
127   - "attribute mediump vec3 aPosition;\n" +
128   - "attribute mediump vec2 aTexCoord;\n" +
129   - "varying mediump vec2 vTexCoord;\n" +
130   - "uniform mediump vec3 uSize;\n" +
131   - "\n" +
132   - "void main(void)\n" +
133   - "{\n" +
134   - " mediump vec3 vertexPosition = aPosition * uSize;\n" +
135   - " gl_Position = uProjection * uModelView * vec4(vertexPosition, 1.0);\n" +
136   - " vTexCoord = aTexCoord;\n" +
137   - "}\n",
138   - fragment: "precision mediump float;\n" +
139   - "\n" +
140   - "uniform mediump vec4 uColor;\n" +
141   - "uniform sampler2D sTexture;\n" +
142   - "varying mediump vec2 vTexCoord;\n" +
143   - "\n" +
144   - "void main()\n" +
145   - "{\n" +
146   - "vec4 col = texture2D( sTexture, vTexCoord ) * uColor;\n" +
147   - "vec3 mask = vec3(greaterThan(col.rgb, vec3(0.0031308)));\n" +
148   - "vec3 o = mix(col.rgb * 12.92, \n" +
149   - " pow(col.rgb, vec3(1.0/2.4)) * 1.055 - 0.055, \n" +
150   - " mask);\n" +
151   - "gl_FragColor = vec4(o.r, o.g, o.b, col.a);\n" +
152   - "}\n"
153   - },
154   - {
155   - name: "adjust brightness",
156   - hints: "",
157   - animateTo: [ ["uGain", 1.0, "Linear", 0, 3],
158   - ["uOffset", 0.2, "Linear", 0, 3] ],
159   - vertex:
160   - "\n" +
161   - "uniform mediump mat4 uModelView;\n" +
162   - "uniform mediump mat4 uProjection;\n" +
163   - "attribute mediump vec3 aPosition;\n" +
164   - "attribute mediump vec2 aTexCoord;\n" +
165   - "varying mediump vec2 vTexCoord;\n" +
166   - "uniform mediump vec3 uSize;\n" +
167   - "\n" +
168   - "void main(void)\n" +
169   - "{\n" +
170   - " mediump vec3 vertexPosition = aPosition * uSize;\n" +
171   - " gl_Position = uProjection * uModelView * vec4(vertexPosition, 1.0);\n" +
172   - " vTexCoord = aTexCoord;\n" +
173   - "}\n" +
174   - "\n" +
175   - "",
176   - fragment:
177   - "precision mediump float;\n" +
178   - "\n" +
179   - "uniform mediump vec4 uColor;\n" +
180   - "uniform sampler2D sTexture;\n" +
181   - "varying mediump vec2 vTexCoord;\n" +
182   - "\n" +
183   - "uniform float uGain; // {default:1.0} \n" +
184   - "uniform float uOffset; // {default:0.0} \n" +
185   - "void main()\n" +
186   - "{\n" +
187   - " vec4 t = texture2D( sTexture, vTexCoord );\n" +
188   - " \n" +
189   - " float y = 0.0 + (0.299 *t.r) + 0.587*t.g + 0.114*t.b;\n" +
190   - " float cb= 128.0-(0.168736*t.r)-0.331264*t.g+0.5*t.b;\n" +
191   - " float cr= 128.0+(0.5*t.r)-(0.418688*t.g)-0.081312*t.b;\n" +
192   - " \n" +
193   - " y = (y*uGain) + uOffset;\n" +
194   - " \n" +
195   - " vec4 col = vec4(t.a);\n" +
196   - " \n" +
197   - " col.r = y + 1.402*(cr-128.0);\n" +
198   - " col.g = y - 0.34414*(cb-128.0)-0.71414*(cr-128.0);\n" +
199   - " col.b = y + 1.722*(cb-128.0);\n" +
200   - " \n" +
201   - " \n" +
202   - " gl_FragColor = col * uColor;\n" +
203   - "}\n" +
204   - "\n" +
205   - ""
206   - },
207   - {
208   - name: "wavey",
209   - hints: "",
210   - animateTo: [ ["uAmplitude", 0.2, "Linear", 0, 3],
211   - ["uFrequency", 4, "Linear", 0, 3] ],
212   - vertex: "\n" +
213   - "uniform mediump mat4 uModelView;\n" +
214   - "uniform mediump mat4 uProjection;\n" +
215   - "attribute mediump vec3 aPosition;\n" +
216   - "attribute mediump vec2 aTexCoord;\n" +
217   - "varying mediump vec2 vTexCoord;\n" +
218   - "uniform mediump vec3 uSize;\n" +
219   - "\n" +
220   - "void main(void)\n" +
221   - "{\n" +
222   - " mediump vec3 vertexPosition = aPosition * uSize;\n" +
223   - " gl_Position = uProjection * uModelView * vec4(vertexPosition, 1.0);\n" +
224   - " vTexCoord = aTexCoord;\n" +
225   - "}\n",
226   - fragment: "precision mediump float;\n" +
227   - "\n" +
228   - "uniform mediump vec4 uColor;\n" +
229   - "uniform sampler2D sTexture;\n" +
230   - "varying mediump vec2 vTexCoord;\n" +
231   - "\n" +
232   - "uniform float uAmplitude; // {default:0.4, description:\"amplitude in x\"} \n" +
233   - "uniform float uFrequency; // {default: 4, description:\"frequence in y\"} \n" +
234   - "void main()\n" +
235   - "{\n" +
236   - " vec2 uv = vTexCoord.xy;\n" +
237   - "\n" +
238   - " uv.x += sin(uv.y * 3.14 * uFrequency) * uAmplitude;\n" +
239   - " \n" +
240   - " vec4 color = texture2D(sTexture, uv);\n" +
241   - " \n" +
242   - " gl_FragColor = color;\n" +
243   - "}\n"
244   - },
245   - {
246   - name: "melt",
247   - hints: "",
248   - animateTo: [ ["uFactor", -4.0, "Linear", 0, 3] ],
249   - vertex:
250   - "\n" +
251   - "uniform mediump mat4 uModelView;\n" +
252   - "uniform mediump mat4 uProjection;\n" +
253   - "attribute mediump vec3 aPosition;\n" +
254   - "attribute mediump vec2 aTexCoord;\n" +
255   - "varying mediump vec2 vTexCoord;\n" +
256   - "uniform mediump vec3 uSize;\n" +
257   - "\n" +
258   - "void main(void)\n" +
259   - "{\n" +
260   - " mediump vec3 vertexPosition = aPosition * uSize;\n" +
261   - " gl_Position = uProjection * uModelView * vec4(vertexPosition, 1.0);\n" +
262   - " vTexCoord = aTexCoord;\n" +
263   - "}\n" +
264   - "\n" +
265   - "",
266   - fragment:
267   - "precision mediump float;\n" +
268   - "\n" +
269   - "uniform mediump vec4 uColor;\n" +
270   - "uniform sampler2D sTexture;\n" +
271   - "varying mediump vec2 vTexCoord;\n" +
272   - "\n" +
273   - "uniform float uFactor; // {default:0.2, description:\"drip factor\"} \n" +
274   - "\n" +
275   - " \n" +
276   - "float random( vec2 p )\n" +
277   - "{\n" +
278   - " float q = p.x * 269.5 + p.y * 183.3;\n" +
279   - " return fract( sin( q ) * 43758.5453 );\n" +
280   - "}\n" +
281   - "\n" +
282   - "void main()\n" +
283   - "{\n" +
284   - " vec2 uv = vTexCoord.xy;\n" +
285   - " \n" +
286   - " float kindaRandom = (texture2D(sTexture, vec2(uv.x,0.5)).r + texture2D(sTexture, vec2(0.5,uv.x)).r) / 2.0;\n" +
287   - " \n" +
288   - " //kindaRandom = random( vec2(texture2D(sTexture, vec2(uv.x,0.5)).r, texture2D(sTexture, vec2(0.5,uv.y)).g) );\n" +
289   - " \n" +
290   - " uv.y += uFactor * kindaRandom;\n" +
291   - " \n" +
292   - "\n" +
293   - " gl_FragColor = texture2D( sTexture, uv ) * uColor;\n" +
294   - "}\n" +
295   - "\n" +
296   - "\n" +
297   - ""
298   - },
299   - {
300   - name: "round window",
301   - hints: "",
302   - animateTo: [ ["uRadius", 0.8, "Linear", 0, 3] ],
303   - vertex: "\n" +
304   - "uniform mediump mat4 uModelView;\n" +
305   - "uniform mediump mat4 uProjection;\n" +
306   - "attribute mediump vec3 aPosition;\n" +
307   - "attribute mediump vec2 aTexCoord;\n" +
308   - "varying mediump vec2 vTexCoord;\n" +
309   - "\n" +
310   - "void main(void)\n" +
311   - "{\n" +
312   - " gl_Position = uProjection * uModelView * vec4(aPosition, 1.0);\n" +
313   - " vTexCoord = aTexCoord;\n" +
314   - "}\n",
315   - fragment: "precision lowp float;\n" +
316   - "\n" +
317   - "uniform mediump vec4 uColor;\n" +
318   - "uniform sampler2D sTexture;\n" +
319   - "\n" +
320   - "uniform lowp float uRadius; // {default: 0.2} \n" +
321   - "varying mediump vec2 vTexCoord;\n" +
322   - "void main()\n" +
323   - "{\n" +
324   - " precision lowp float;\n" +
325   - " lowp vec2 pos= vec2(vTexCoord.x-0.5,vTexCoord.y-0.5);\n" +
326   - " lowp float radius = dot(pos, pos ) ;\n" +
327   - " if( radius > (uRadius*uRadius) )\n" +
328   - " discard;\n" +
329   - " gl_FragColor = texture2D( sTexture, vTexCoord ) * uColor ;\n" +
330   - "}\n"
331   - },
332   - {
333   - name: "mosaic",
334   - hints: "",
335   - animateTo: [ ["uPixelFactor", 0.3, "Linear", 0, 3] ],
336   - vertex: "\n" +
337   - "uniform mediump mat4 uModelView;\n" +
338   - "uniform mediump mat4 uProjection;\n" +
339   - "attribute mediump vec3 aPosition;\n" +
340   - "attribute mediump vec2 aTexCoord;\n" +
341   - "varying mediump vec2 vTexCoord;\n" +
342   - "uniform mediump vec3 uSize;\n" +
343   - "\n" +
344   - "void main(void)\n" +
345   - "{\n" +
346   - " mediump vec3 vertexPosition = aPosition * uSize;\n" +
347   - " gl_Position = uProjection * uModelView * vec4(vertexPosition, 1.0);\n" +
348   - " vTexCoord = aTexCoord;\n" +
349   - "}\n",
350   - fragment: "precision mediump float;\n" +
351   - "\n" +
352   - "uniform mediump vec4 uColor;\n" +
353   - "uniform sampler2D sTexture;\n" +
354   - "varying mediump vec2 vTexCoord;\n" +
355   - "\n" +
356   - " \n" +
357   - "uniform float uPixelFactor; // {default:0.1, min:0.0, max:0.3} \n" +
358   - "\n" +
359   - "\n" +
360   - "float smooth(float f) {\n" +
361   - " return 32.0*f*f*(0.25*f*f-0.5*f+0.25)+0.5;\n" +
362   - "}\n" +
363   - "\n" +
364   - "void main()\n" +
365   - "{\n" +
366   - " vec2 resolution = vec2(1,1); // uniform vec2 resolution;\n" +
367   - " //uPixelFactor = 8.0 + 8.0 * (0.5 + 0.5 * sin(globaltime * 0.25));\n" +
368   - " vec2 chunkCoord = floor(vTexCoord.xy / uPixelFactor) * uPixelFactor;\n" +
369   - " vec2 locCoord = (vTexCoord.xy - chunkCoord) / uPixelFactor;\n" +
370   - " vec4 color = vec4(floor(5.0 * texture2D(sTexture, chunkCoord / resolution.xy).xyz) / 5.0, 1.0);\n" +
371   - " float grey = (color.x + color.y + color.z) / 3.0;\n" +
372   - " gl_FragColor = color * smooth(locCoord.x) * smooth(locCoord.y);\n" +
373   - "}\n"
374   - },
375   - {
376   - name: "burn",
377   - hints: "",
378   - animateTo: [ ["uThresh", 0.8, "Linear", 0, 3] ],
379   - vertex:
380   - "\n" +
381   - "uniform mediump mat4 uModelView;\n" +
382   - "uniform mediump mat4 uProjection;\n" +
383   - "attribute mediump vec3 aPosition;\n" +
384   - "attribute mediump vec2 aTexCoord;\n" +
385   - "varying mediump vec2 vTexCoord;\n" +
386   - "uniform mediump vec3 uSize;\n" +
387   - "\n" +
388   - "void main(void)\n" +
389   - "{\n" +
390   - " mediump vec3 vertexPosition = aPosition * uSize;\n" +
391   - " gl_Position = uProjection * uModelView * vec4(vertexPosition, 1.0);\n" +
392   - " vTexCoord = aTexCoord;\n" +
393   - "}\n" +
394   - "\n" +
395   - "\n" +
396   - "\n" +
397   - "",
398   - fragment:
399   - "precision mediump float;\n" +
400   - "\n" +
401   - "uniform mediump vec4 uColor;\n" +
402   - "uniform sampler2D sTexture;\n" +
403   - "varying mediump vec2 vTexCoord;\n" +
404   - "\n" +
405   - "\n" +
406   - "float uScale = 2.0; // {default:10.0, description:\"noise texture scaling\"} \n" +
407   - "uniform float uThresh; // {default:1.1, description:\"threshold of noise for burn\"} \n" +
408   - "\n" +
409   - "float random( vec2 p )\n" +
410   - "{\n" +
411   - " float q = p.x * 269.5 + p.y * 183.3;\n" +
412   - " return fract( sin( q ) * 43758.5453 );\n" +
413   - "}\n" +
414   - "\n" +
415   - "float noise( vec2 point )\n" +
416   - "{\n" +
417   - " vec2 p = floor( point );\n" +
418   - " vec2 f = fract( point );\n" +
419   - " return mix(\n" +
420   - " mix( random( p + vec2( 0.0, 0.0 ) ), random( p + vec2( 1.0, 0.0 ) ), f.x ),\n" +
421   - " mix( random( p + vec2( 0.0, 1.0 ) ), random( p + vec2( 1.0, 1.0 ) ), f.x ),\n" +
422   - " f.y\n" +
423   - " );\n" +
424   - "}\n" +
425   - "\n" +
426   - "float fractal( vec2 point )\n" +
427   - "{\n" +
428   - " float sum = 0.0;\n" +
429   - " float scale = 0.5;\n" +
430   - " for ( int i = 0; i < 5; i++ )\n" +
431   - " {\n" +
432   - " sum += noise( point ) * scale;\n" +
433   - " point *= 2.0;\n" +
434   - " scale /= 2.0;\n" +
435   - " }\n" +
436   - " \n" +
437   - " return sum;\n" +
438   - "}\n" +
439   - "\n" +
440   - "\n" +
441   - "void main( )\n" +
442   - "{\n" +
443   - " vec2 point = vTexCoord.xy / uScale;\n" +
444   - " //point.x += iGlobalTime * 0.1;\n" +
445   - " float noise = fractal( point * 20.0 );\n" +
446   - " \n" +
447   - " vec2 uv = vTexCoord.xy; // iResolution.xy;\n" +
448   - " //uv.y = 1.0-uv.y;\n" +
449   - " gl_FragColor = texture2D(sTexture, uv);\n" +
450   - " \n" +
451   - " if(noise < uThresh)\n" +
452   - " {\n" +
453   - " gl_FragColor = vec4(1.0, 0.5, 0.0, 1.0);\n" +
454   - " }\n" +
455   - " if(noise < uThresh - 0.05)\n" +
456   - " {\n" +
457   - " gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);\n" +
458   - " }\n" +
459   - " if(noise < uThresh - 0.1)\n" +
460   - " {\n" +
461   - " \n" +
462   - " gl_FragColor = vec4(0.0, 0.0, 0.0, 0.0); // use discard?\n" +
463   - " }\n" +
464   - "}\n" +
465   - "\n" +
466   - "\n" +
467   - ""
468   - },
469   - {
470   - name: "ripple 2D",
471   - hints: "",
472   - animateTo: [ ["uAmplitude", 0.1, "Linear", 0, 3],
473   - ["uTime", 6, "Linear", 0, 3] ],
474   - vertex: "\n" +
475   - "uniform mediump mat4 uModelView;\n" +
476   - "uniform mediump mat4 uProjection;\n" +
477   - "attribute mediump vec3 aPosition;\n" +
478   - "attribute mediump vec2 aTexCoord;\n" +
479   - "varying mediump vec2 vTexCoord;\n" +
480   - "\n" +
481   - "void main(void)\n" +
482   - "{\n" +
483   - " gl_Position = uProjection * uModelView * vec4(aPosition, 1.0);\n" +
484   - " vTexCoord = aTexCoord;\n" +
485   - "}\n" +
486   - "\n" +
487   - "",
488   - fragment:
489   - "precision mediump float;\n" +
490   - "\n" +
491   - "uniform mediump vec4 uColor;\n" +
492   - "uniform sampler2D sTexture;\n" +
493   - "varying mediump vec2 vTexCoord;\n" +
494   - "\n" +
495   - "uniform float uAmplitude; // {default:0.02, min:0.0, max:1.0}\n" +
496   - "uniform float uTime;\n" +
497   - "uniform mediump vec4 sTextureRect;\n" +
498   - "void main()\n" +
499   - "{\n" +
500   - " highp vec2 textureSize = sTextureRect.zw - sTextureRect.xy;\n" +
501   - " highp vec2 pos = -1.0 + 2.0 * vTexCoord.st/textureSize;\n" +
502   - " highp float len = length(pos);\n" +
503   - " highp vec2 texCoord = vTexCoord.st/textureSize + pos/len * sin( len * 12.0 - uTime * 4.0 ) * uAmplitude; \n" +
504   - " gl_FragColor = texture2D(sTexture, texCoord) * uColor;\n" +
505   - "}\n" +
506   - "\n" +
507   - "\n" +
508   - ""
509   - },
510   - {
511   - name: "emboss combine",
512   - hints: "",
513   - animateTo: [ ["uWeight", [10.0, 10.0, 10.0, 10.0], "Linear", 0, 3] ],
514   - vertex: "\n" +
515   - "uniform mediump mat4 uModelView;\n" +
516   - "uniform mediump mat4 uProjection;\n" +
517   - "attribute mediump vec3 aPosition;\n" +
518   - "attribute mediump vec2 aTexCoord;\n" +
519   - "varying mediump vec2 vTexCoord;\n" +
520   - "uniform mediump vec3 uSize;\n" +
521   - "\n" +
522   - "void main(void)\n" +
523   - "{\n" +
524   - " mediump vec3 vertexPosition = aPosition * uSize;\n" +
525   - " gl_Position = uProjection * uModelView * vec4(vertexPosition, 1.0);\n" +
526   - " vTexCoord = aTexCoord;\n" +
527   - "}\n" +
528   - "\n" +
529   - "",
530   - fragment: "precision mediump float;\n" +
531   - "\n" +
532   - "uniform mediump vec4 uColor;\n" +
533   - "uniform sampler2D sTexture;\n" +
534   - "varying mediump vec2 vTexCoord;\n" +
535   - "\n" +
536   - "const int KERNEL_SIZE = 9;\n" +
537   - "\n" +
538   - "uniform vec4 uWeight; // {default: [10,10,10,10] }\n" +
539   - "\n" +
540   - "// Gaussian kernel\n" +
541   - "float kernel[KERNEL_SIZE];\n" +
542   - "\n" +
543   - "float width = 512.0;\n" +
544   - "float height = 512.0;\n" +
545   - "\n" +
546   - "float step_w = 1.0/width;\n" +
547   - "float step_h = 1.0/height;\n" +
548   - "\n" +
549   - "vec2 offset[KERNEL_SIZE];\n" +
550   - "\n" +
551   - "void main(void)\n" +
552   - "{\n" +
553   - " precision mediump float;\n" +
554   - "\n" +
555   - " vec4 sum = vec4(0.0);\n" +
556   - "\n" +
557   - " offset[0] = vec2(-step_w, -step_h);\n" +
558   - " offset[1] = vec2(0.0, -step_h);\n" +
559   - " offset[2] = vec2(step_w, -step_h);\n" +
560   - "\n" +
561   - " offset[3] = vec2(-step_w, 0.0);\n" +
562   - " offset[4] = vec2(0.0, 0.0);\n" +
563   - " offset[5] = vec2(step_w, 0.0);\n" +
564   - "\n" +
565   - " offset[6] = vec2(-step_w, step_h);\n" +
566   - " offset[7] = vec2(0.0, step_h);\n" +
567   - " offset[8] = vec2(step_w, step_h);\n" +
568   - "\n" +
569   - " // guassian blur\n" +
570   - " // kernel[0] = 1.0/16.0; kernel[1] = 2.0/16.0; kernel[2] = 1.0/16.0;\n" +
571   - " // kernel[3] = 2.0/16.0; kernel[4] = 4.0/16.0; kernel[5] = 2.0/16.0;\n" +
572   - " // kernel[6] = 1.0/16.0; kernel[7] = 2.0/16.0; kernel[8] = 1.0/16.0;\n" +
573   - "\n" +
574   - " // laplace\n" +
575   - " // kernel[0] = 0.0; kernel[1] = 1.0; kernel[2] = 0.0;\n" +
576   - " // kernel[3] = 1.0; kernel[4] = -4.0; kernel[5] = 1.0;\n" +
577   - " // kernel[6] = 0.0; kernel[7] = 1.0; kernel[8] = 0.0;\n" +
578   - "\n" +
579   - " // edge\n" +
580   - " // kernel[0] = -1.0; kernel[1] = -1.0; kernel[2] = -1.0;\n" +
581   - " // kernel[3] = -1.0; kernel[4] = +9.0; kernel[5] = -1.0;\n" +
582   - " // kernel[6] = -1.0; kernel[7] = -1.0; kernel[8] = -1.0;\n" +
583   - "\n" +
584   - " // Embossing\n" +
585   - " // 2 0 0\n" +
586   - " // 0 -1 0\n" +
587   - " // 0 0 -1\n" +
588   - " kernel[0] = 2.0; kernel[1] = 0.0; kernel[2] = 0.0;\n" +
589   - " kernel[3] = 0.0; kernel[4] = -1.0; kernel[5] = 0.0;\n" +
590   - " kernel[6] = 0.0; kernel[7] = 0.0; kernel[8] =-1.0;\n" +
591   - "\n" +
592   - " vec4 tmp = texture2D(sTexture, vTexCoord.st + offset[0]);\n" +
593   - " sum += tmp * kernel[0];\n" +
594   - "\n" +
595   - " tmp = texture2D(sTexture, vTexCoord.st + offset[1]);\n" +
596   - " sum += tmp * kernel[1];\n" +
597   - "\n" +
598   - " tmp = texture2D(sTexture, vTexCoord.st + offset[2]);\n" +
599   - " sum += tmp * kernel[2];\n" +
600   - "\n" +
601   - " tmp = texture2D(sTexture, vTexCoord.st + offset[3]);\n" +
602   - " sum += tmp * kernel[3];\n" +
603   - "\n" +
604   - " tmp = texture2D(sTexture, vTexCoord.st + offset[4]);\n" +
605   - " sum += tmp * kernel[4];\n" +
606   - "\n" +
607   - " tmp = texture2D(sTexture, vTexCoord.st + offset[5]);\n" +
608   - " sum += tmp * kernel[5];\n" +
609   - "\n" +
610   - " tmp = texture2D(sTexture, vTexCoord.st + offset[6]);\n" +
611   - " sum += tmp * kernel[6];\n" +
612   - "\n" +
613   - " tmp = texture2D(sTexture, vTexCoord.st + offset[7]);\n" +
614   - " sum += tmp * kernel[7];\n" +
615   - "\n" +
616   - " tmp = texture2D(sTexture, vTexCoord.st + offset[8]);\n" +
617   - " sum += tmp * kernel[8];\n" +
618   - "\n" +
619   - " sum = texture2D(sTexture, vTexCoord.xy) + (sum * uWeight);\n" +
620   - "\n" +
621   - " gl_FragColor = sum;\n" +
622   - "}\n"
623   - },
624   - {
625   - name: "blur",
626   - hints: "",
627   - vertex: "\n" +
628   - "uniform mediump mat4 uModelView;\n" +
629   - "uniform mediump mat4 uProjection;\n" +
630   - "uniform mediump vec3 uSize;\n" +
631   - "attribute mediump vec3 aPosition;\n" +
632   - "attribute mediump vec2 aTexCoord;\n" +
633   - "varying mediump vec2 vTexCoord;\n" +
634   - "\n" +
635   - "void main(void)\n" +
636   - "{\n" +
637   - " mediump vec3 vertexPosition = aPosition * uSize;\n" +
638   - " gl_Position = uProjection * uModelView * vec4(vertexPosition, 1.0);\n" +
639   - " vTexCoord = aTexCoord;\n" +
640   - "}\n" +
641   - "\n" +
642   - "",
643   - fragment:
644   - "\n" +
645   - "precision mediump float;\n" +
646   - "\n" +
647   - "uniform mediump vec4 uColor;\n" +
648   - "uniform sampler2D sTexture;\n" +
649   - "varying mediump vec2 vTexCoord;\n" +
650   - "\n" +
651   - "\n" +
652   - "#define PI2 6.283184\n" +
653   - "\n" +
654   - "#define CV 0.1\n" +
655   - "#define ST 0.05\n" +
656   - "\n" +
657   - "uniform float uFactor; // {default: 0.5, min:0.0, max:1.0}\n" +
658   - "\n" +
659   - "vec4 colorat(vec2 uv) {\n" +
660   - " return texture2D(sTexture, uv);\n" +
661   - "}\n" +
662   - "vec4 blur(vec2 uv) { // convolve\n" +
663   - " vec4 col = vec4(0.0);\n" +
664   - " for(float r0 = 0.0; r0 < 1.0; r0 += ST) {\n" +
665   - " float r = r0 * CV;\n" +
666   - " for(float a0 = 0.0; a0 < 1.0; a0 += ST) {\n" +
667   - " float a = a0 * PI2;\n" +
668   - " col += colorat(uv + vec2(cos(a), sin(a)) * r);\n" +
669   - " }\n" +
670   - " }\n" +
671   - " col *= ST * ST;\n" +
672   - " return col;\n" +
673   - "}\n" +
674   - "\n" +
675   - "\n" +
676   - "\n" +
677   - "void main() {\n" +
678   - " vec2 uv = vTexCoord.xy;\n" +
679   - " gl_FragColor = blur(uv) * uFactor + ((1.0-uFactor) * texture2D(sTexture, uv));\n" +
680   - "}\n" +
681   - "\n"
682   - },
683   - {name: "image-click",
684   - hints: "",
685   - animateTo: [ ["uRadius", 0.3, "Linear", 0, 0.3] ],
686   - vertex: "\n" +
687   - "uniform mediump mat4 uModelView;\n" +
688   - "uniform mediump mat4 uProjection;\n" +
689   - "attribute mediump vec3 aPosition;\n" +
690   - "attribute mediump vec2 aTexCoord;\n" +
691   - "varying mediump vec2 vTexCoord;\n" +
692   - "uniform mediump vec3 uSize;\n" +
693   - "\n" +
694   - "void main(void)\n" +
695   - "{\n" +
696   - " mediump vec3 vertexPosition = aPosition * uSize;\n" +
697   - " gl_Position = uProjection * uModelView * vec4(aPosition, 1.0);\n" +
698   - " vTexCoord = aTexCoord;\n" +
699   - "}\n" +
700   - "\n" +
701   - "",
702   - fragment:
703   - "precision lowp float;\n" +
704   - "\n" +
705   - "uniform mediump vec4 uColor;\n" +
706   - "varying mediump vec2 vTexCoord;\n" +
707   - "uniform sampler2D sTexture;\n" +
708   - "\n" +
709   - "uniform lowp float uRadius; // {default 0.2, min:0, max:0.3, description:\"touch radius and brightness mix\"\n" +
710   - "vec2 offset = vec2(0.3,-0.2); // offset from center; for touch point (todo - make uniform)\n" +
711   - "\n" +
712   - "void main()\n" +
713   - "{\n" +
714   - " precision lowp float;\n" +
715   - " lowp vec2 pos= vec2(vTexCoord.x-0.5-offset.x,vTexCoord.y-0.5-offset.y);\n" +
716   - " lowp float radius = dot(pos, pos ) ;\n" +
717   - "\n" +
718   - " // use sRGB correction to brighten image\n" +
719   - " vec4 col = texture2D( sTexture, vTexCoord ) * uColor;\n" +
720   - " vec3 mask = vec3(greaterThan(col.rgb, vec3(0.0031308)));\n" +
721   - " vec3 o = mix(col.rgb * 12.92, \n" +
722   - " pow(col.rgb, vec3(1.0/2.4)) * 1.055 - 0.055, \n" +
723   - " mask);\n" +
724   - " \n" +
725   - " vec3 diff = o - col.rgb;\n" +
726   - " diff *= uRadius * 3.0;\n" +
727   - " o = col.rgb + diff;\n" +
728   - " \n" +
729   - " gl_FragColor = vec4(o.r, o.g, o.b, col.a);\n" +
730   - "\n" +
731   - " if( radius <= (uRadius*uRadius) )\n" +
732   - " {\n" +
733   - " gl_FragColor += vec4(0.1);\n" +
734   - " }\n" +
735   - " \n" +
736   - "}\n" +
737   - "\n" +
738   - ""
739   - },
740   - {name: "iris effect",
741   - hints: "",
742   - animateTo: [ ["uRadius", 1.0, "Linear", 0, 0.3],
743   - ["uCenter", [0.2, 0.2], "Linear", 0, 0.0],
744   - ["uBlendFactor", 1.0, "Linear", 0, 0.0]
745   - ],
746   - vertex:
747   - "\n" +
748   - "uniform mediump mat4 uModelView;\n" +
749   - "uniform mediump mat4 uProjection;\n" +
750   - "attribute mediump vec3 aPosition;\n" +
751   - "attribute mediump vec2 aTexCoord;\n" +
752   - "varying mediump vec2 vTexCoord;\n" +
753   - "uniform mediump vec3 uSize;\n" +
754   - "\n" +
755   - "uniform mediump vec2 uCenter; // { default: [0.7, 0.7] } \n" +
756   - "varying mediump vec2 vRelativePosition;\n" +
757   - "\n" +
758   - "void main()\n" +
759   - "{\n" +
760   - " mediump vec3 vertexPosition = aPosition * uSize;\n" +
761   - " mediump vec4 world = uModelView * vec4(vertexPosition,1.0);\n" +
762   - " gl_Position = uProjection * world;\n" +
763   - "\n" +
764   - " vTexCoord = aTexCoord;\n" +
765   - " vRelativePosition = aTexCoord - uCenter;\n" +
766   - "}\n" +
767   - "\n" +
768   - "\n" +
769   - "",
770   - fragment:
771   - "\n" +
772   - "uniform mediump vec4 uColor;\n" +
773   - "uniform sampler2D sTexture;\n" +
774   - "varying mediump vec2 vTexCoord;\n" +
775   - "\n" +
776   - "uniform mediump float uRadius; // {default:0.5} \n" +
777   - "uniform mediump float uBlendFactor; // {default:2} \n" +
778   - "varying mediump vec2 vRelativePosition;\n" +
779   - "void main()\n" +
780   - "{\n" +
781   - " mediump float delta = (length(vRelativePosition) - uRadius);\n" +
782   - " delta = clamp(0.0 - delta * uBlendFactor, 0.0, 1.0);\n" +
783   - " gl_FragColor = texture2D(sTexture, vTexCoord) * uColor;\n" +
784   - " gl_FragColor.a *= delta;\n" +
785   - "}\n" +
786   - "\n" +
787   - ""
788   - },
789   - {name: "mirror effect",
790   - hints: "",
791   - animateTo: [ ["uDepth", 0.5, "Linear", 0, 0.0],
792   - ["uAlpha", 1.0, "Linear", 0, 0.0]
793   - ],
794   - vertex:
795   - "\n" +
796   - "uniform mediump mat4 uModelView;\n" +
797   - "uniform mediump mat4 uProjection;\n" +
798   - "attribute mediump vec3 aPosition;\n" +
799   - "attribute mediump vec2 aTexCoord;\n" +
800   - "varying mediump vec2 vTexCoord;\n" +
801   - "uniform mediump vec3 uSize;\n" +
802   - "\n" +
803   - "void main()\n" +
804   - "{\n" +
805   - " mediump vec3 pos = aPosition * uSize;\n" +
806   - " pos.y = pos.y * 3.0;\n" +
807   - " mediump vec4 world = uModelView * vec4(pos,1.0);\n" +
808   - " gl_Position = uProjection * world;\n" +
809   - " vTexCoord = aTexCoord;\n" +
810   - "}\n" +
811   - "\n" +
812   - "",
813   - fragment:
814   - "\n" +
815   - "uniform mediump vec4 uColor;\n" +
816   - "uniform sampler2D sTexture;\n" +
817   - "varying mediump vec2 vTexCoord;\n" +
818   - "\n" +
819   - "uniform mediump float uDepth; // {default: 0.3 }\n" +
820   - "uniform mediump float uAlpha; // {default: 10.0 }\n" +
821   - "void main()\n" +
822   - "{\n" +
823   - " if(vTexCoord.y < 1.0 / 3.0)\n" +
824   - " {\n" +
825   - " gl_FragColor = vec4(0.0, 0.0, 0.0, 0.0);\n" +
826   - " }\n" +
827   - " else if(vTexCoord.y < 2.0 / 3.0)\n" +
828   - " {\n" +
829   - " gl_FragColor = texture2D(sTexture, vec2(vTexCoord.x, vTexCoord.y * 3.0 - 1.0)) * uColor;\n" +
830   - " gl_FragColor.a *= uAlpha;\n" +
831   - " }\n" +
832   - " else\n" +
833   - " {\n" +
834   - " highp float darkness = 3.0 - vTexCoord.y * 3.0;\n" +
835   - " darkness = (1.0 - 1.0 / uDepth + darkness * 1.0/ uDepth) * 0.65;\n" +
836   - " highp vec4 color = texture2D(sTexture, vec2(vTexCoord.x, -vTexCoord.y *3.0 + 3.0)) * uColor;\n" +
837   - " color.a *= uAlpha;\n" +
838   - " gl_FragColor = color * vec4(darkness, darkness, darkness, darkness);\n" +
839   - " }\n" +
840   - "}\n" +
841   - ""
842   - },
843   - {name: "square dissolve",
844   - animateTo: [ ["uRows", 0.4, "Linear", 0, 0.0],
845   - ["uColumns", 0.4, "Linear", 0, 0.0],
846   - ["texSize", [100, 100], "Linear", 0, 0.0],
847   - ["uStep", 1, "Linear", 0, 3.0]
848   - ],
849   - hints: " grid blending",
850   - vertex: "\n" +
851   - "uniform mediump mat4 uModelView;\n" +
852   - "uniform mediump mat4 uProjection;\n" +
853   - "attribute mediump vec3 aPosition;\n" +
854   - "attribute mediump vec2 aTexCoord;\n" +
855   - "varying mediump vec2 vTexCoord;\n" +
856   - "\n" +
857   - "void main(void)\n" +
858   - "{\n" +
859   - " gl_Position = uProjection * uModelView * vec4(aPosition, 1.0);\n" +
860   - " vTexCoord = aTexCoord;\n" +
861   - "}\n" +
862   - "\n" +
863   - "",
864   - fragment:
865   - "\n" +
866   - "uniform mediump vec4 uColor;\n" +
867   - "uniform sampler2D sTexture;\n" +
868   - "varying mediump vec2 vTexCoord;\n" +
869   - "\n" +
870   - "uniform mediump vec2 texSize;\n" +
871   - "uniform mediump float uStep;\n" +
872   - "uniform mediump float uRows;\n" +
873   - "uniform mediump float uColumns;\n" +
874   - "uniform sampler2D sTexture;\n" +
875   - "void main()\n" +
876   - "{\n" +
877   - " mediump vec2 mosaicSize = vec2(1.0 / uRows, 1.0 / uColumns);\n" +
878   - " mediump vec2 intXY = vec2(vTexCoord.x * texSize.x, vTexCoord.y * texSize.y);\n" +
879   - " mediump vec2 XYMosaic = vec2(floor(intXY.x / mosaicSize.x) * mosaicSize.x, floor(intXY.y / mosaicSize.y) * mosaicSize.y);\n" +
880   - " mediump vec2 UVMosaic = vec2(XYMosaic.x /texSize.x, XYMosaic.y / texSize.y);\n" +
881   - " mediump vec4 noiseVec = texture2D(sEffect, UVMosaic);\n" +
882   - " mediump float intensity = (noiseVec[0] + noiseVec[1] + noiseVec[2] + noiseVec[3]) / 4.0;\n" +
883   - " if(intensity < uStep)\n" +
884   - " gl_FragColor = vec4(0.1, 0.1, 0.1, 1.0);\n" +
885   - " else\n" +
886   - " gl_FragColor = texture2D(sTexture, vTexCoord);\n" +
887   - " gl_FragColor *= uColor;\n" +
888   - "}\n" +
889   - "\n" +
890   - ""
891   - },
892   - {name: "swirl",
893   - hints: " grid blending",
894   - animateTo: [ ["uCenter", [0.5, 0.5], "Linear", 0, 0.0],
895   - ["uTextureSize", [100, 100], "Linear", 0, 0.0],
896   - ["uRadius", 1.0, "Linear", 0, 3.0],
897   - ["uAngle", 3.0, "Linear", 0, 3.0]
898   - ],
899   - vertex: "\n" +
900   - "uniform mediump mat4 uModelView;\n" +
901   - "uniform mediump mat4 uProjection;\n" +
902   - "attribute mediump vec3 aPosition;\n" +
903   - "attribute mediump vec2 aTexCoord;\n" +
904   - "varying mediump vec2 vTexCoord;\n" +
905   - "uniform mediump vec3 uSize;\n" +
906   - "\n" +
907   - "void main(void)\n" +
908   - "{\n" +
909   - " mediump vec3 vertexPosition = aPosition * uSize;\n" +
910   - " gl_Position = uProjection * uModelView * vec4(vertexPosition, 1.0);\n" +
911   - " vTexCoord = aTexCoord;\n" +
912   - "}\n" +
913   - "\n" +
914   - "",
915   - fragment: "\n" +
916   - "uniform mediump vec4 uColor;\n" +
917   - "uniform sampler2D sTexture;\n" +
918   - "uniform mediump vec4 sTextureRect;\n" +
919   - "\n" +
920   - "uniform mediump vec2 uTextureSize;\n" +
921   - "uniform highp float uRadius;\n" +
922   - "uniform highp float uAngle;\n" +
923   - "uniform mediump vec2 uCenter;\n" +
924   - "varying mediump vec2 vTexCoord;\n" +
925   - "void main()\n" +
926   - "{\n" +
927   - " highp vec2 textureCenter = (sTextureRect.xy + sTextureRect.zw) * 0.5;\n" +
928   - " textureCenter = vTexCoord.st - textureCenter;\n" +
929   - " highp float distance = length(textureCenter);\n" +
930   - " if (distance >= uRadius)\n" +
931   - " discard;\n" +
932   - " highp float percent = (uRadius - distance) / uRadius;\n" +
933   - " highp float theta = percent * percent * uAngle * 4.0;\n" +
934   - " highp float sinTheta = sin(theta);\n" +
935   - " highp float cosTheta = cos(theta);\n" +
936   - "// if warp, loose the sign from sin\n" +
937   - " bool warp = true;\n" +
938   - " if( warp )\n" +
939   - " {\n" +
940   - " textureCenter = vec2( dot( textureCenter, vec2(cosTheta, sinTheta) ),\n" +
941   - " dot( textureCenter, vec2(sinTheta, cosTheta) ) );\n" +
942   - " }\n" +
943   - " else\n" +
944   - " {\n" +
945   - " textureCenter = vec2( dot( textureCenter, vec2(cosTheta, -sinTheta) ),\n" +
946   - " dot( textureCenter, vec2(sinTheta, cosTheta) ) );\n" +
947   - " }\n" +
948   - " textureCenter += uCenter;\n" +
949   - " gl_FragColor = texture2D( sTexture, textureCenter ) * uColor;\n" +
950   - "}\n" +
951   - "\n" +
952   - "\n" +
953   - ""
954   - },
955   - {name: "drop shadow",
956   - vertex:
957   - "\n" +
958   - "uniform mediump mat4 uModelView;\n" +
959   - "uniform mediump mat4 uProjection;\n" +
960   - "attribute mediump vec3 aPosition;\n" +
961   - "attribute mediump vec2 aTexCoord;\n" +
962   - "varying mediump vec2 vTexCoord;\n" +
963   - "uniform mediump vec3 uSize;\n" +
964   - "\n" +
965   - "void main()\n" +
966   - "{\n" +
967   - " mediump vec3 pos = aPosition * uSize;\n" +
968   - " pos.y = pos.y * 1.1; \n" +
969   - " pos.x = pos.x * 1.1;\n" +
970   - " \n" +
971   - " mediump vec4 world = uModelView * vec4(pos,1.0);\n" +
972   - " gl_Position = uProjection * world;\n" +
973   - " vTexCoord = aTexCoord;\n" +
974   - "}\n" +
975   - "\n" +
976   - "\n" +
977   - "",
978   - fragment:
979   - "\n" +
980   - "uniform mediump vec4 uColor;\n" +
981   - "uniform sampler2D sTexture;\n" +
982   - "varying mediump vec2 vTexCoord;\n" +
983   - "\n" +
984   - "void main()\n" +
985   - "{\n" +
986   - " if(vTexCoord.y < 0.05)\n" +
987   - " {\n" +
988   - " discard;\n" +
989   - " gl_FragColor = vec4(0.0, 0.0, 1.0, 1.0);\n" +
990   - " }\n" +
991   - " else if(vTexCoord.x < 0.05)\n" +
992   - " {\n" +
993   - " discard;\n" +
994   - " gl_FragColor = vec4(0.0, 0.0, 1.0, 1.0);\n" +
995   - " }\n" +
996   - " else if(vTexCoord.y < 0.95 && vTexCoord.x < 0.95)\n" +
997   - " {\n" +
998   - " gl_FragColor = texture2D(sTexture, vec2(vTexCoord.x/ (1.0/1.1) - 0.05, vTexCoord.y / (1.0/1.0) - 0.05 )) * uColor;\n" +
999   - " }\n" +
1000   - " else\n" +
1001   - " {\n" +
1002   - " if(vTexCoord.y < 0.1 || vTexCoord.x < 0.1)\n" +
1003   - " {\n" +
1004   - " discard;\n" +
1005   - " }\n" +
1006   - " else\n" +
1007   - " {\n" +
1008   - " gl_FragColor = vec4(0.2, 0.2, 0.2, 1.0);\n" +
1009   - " }\n" +
1010   - " }\n" +
1011   - "}\n" +
1012   - "\n" +
1013   - "\n" +
1014   - "",
1015   - hints: ""
1016   - },
1017   - {
1018   - name: "noise",
1019   - hints: "",
1020   - vertex: "\n" +
1021   - "uniform mediump mat4 uModelView;\n" +
1022   - "uniform mediump mat4 uProjection;\n" +
1023   - "attribute mediump vec3 aPosition;\n" +
1024   - "attribute mediump vec2 aTexCoord;\n" +
1025   - "varying mediump vec2 vTexCoord;\n" +
1026   - "uniform mediump vec3 uSize; \n" +
1027   - "\n" +
1028   - "void main(void)\n" +
1029   - "{\n" +
1030   - " mediump vec3 vertexPosition = aPosition * uSize;\n" +
1031   - "\n" +
1032   - " gl_Position = uProjection * uModelView * vec4(vertexPosition, 1.0);\n" +
1033   - " vTexCoord = aTexCoord;\n" +
1034   - "}\n" +
1035   - "\n" +
1036   - "",
1037   - fragment:
1038   - "\n" +
1039   - "precision mediump float;\n" +
1040   - "\n" +
1041   - "uniform mediump vec4 uColor;\n" +
1042   - "varying mediump vec2 vTexCoord;\n" +
1043   - "\n" +
1044   - "// noise\n" +
1045   - "float noise(vec2 pos)\n" +
1046   - "{\n" +
1047   - " return fract( sin( dot(pos*0.001 ,vec2(24.12357, 36.789) ) ) * 12345.123);\n" +
1048   - "}\n" +
1049   - "\n" +
1050   - "\n" +
1051   - "// blur noise\n" +
1052   - "float smooth_noise(vec2 pos)\n" +
1053   - "{\n" +
1054   - " return ( noise(pos + vec2(1,1)) + noise(pos + vec2(1,1)) + noise(pos + vec2(1,1)) + noise(pos + vec2(1,1)) ) / 16.0\n" +
1055   - " + ( noise(pos + vec2(1,0)) + noise(pos + vec2(-1,0)) + noise(pos + vec2(0,1)) + noise(pos + vec2(0,-1)) ) / 8.0\n" +
1056   - " + noise(pos) / 4.0;\n" +
1057   - "}\n" +
1058   - "\n" +
1059   - "\n" +
1060   - "// linear interpolation\n" +
1061   - "float interpolate_noise(vec2 pos)\n" +
1062   - "{\n" +
1063   - "float a, b, c, d;\n" +
1064   - " \n" +
1065   - " a = smooth_noise(floor(pos));\n" +
1066   - " b = smooth_noise(vec2(floor(pos.x+1.0), floor(pos.y)));\n" +
1067   - " c = smooth_noise(vec2(floor(pos.x), floor(pos.y+1.0)));\n" +
1068   - " d = smooth_noise(vec2(floor(pos.x+1.0), floor(pos.y+1.0)));\n" +
1069   - "\n" +
1070   - " a = mix(a, b, fract(pos.x));\n" +
1071   - " b = mix(c, d, fract(pos.x));\n" +
1072   - " a = mix(a, b, fract(pos.y));\n" +
1073   - " \n" +
1074   - " return a;\n" +
1075   - "}\n" +
1076   - "\n" +
1077   - "\n" +
1078   - "float perlin_noise(vec2 pos)\n" +
1079   - "{\n" +
1080   - " float n;\n" +
1081   - " \n" +
1082   - " n = interpolate_noise(pos*0.0625)*0.5;\n" +
1083   - " n += interpolate_noise(pos*0.125)*0.25;\n" +
1084   - " n += interpolate_noise(pos*0.025)*0.225;\n" +
1085   - " n += interpolate_noise(pos*0.05)*0.0625;\n" +
1086   - " n += interpolate_noise(pos)*0.03125;\n" +
1087   - " return n;\n" +
1088   - "}\n" +
1089   - "\n" +
1090   - "\n" +
1091   - "\n" +
1092   - "void main()\n" +
1093   - "{\n" +
1094   - " vec2 pos = vTexCoord.xy;\n" +
1095   - " float c, n;\n" +
1096   - "\n" +
1097   - "\n" +
1098   - " n = perlin_noise(pos);\n" +
1099   - "\n" +
1100   - "\n" +
1101   - " vec2 p = pos; // / iResolution.xy;\n" +
1102   - "\n" +
1103   - " if(p.y < 0.333) // last row\n" +
1104   - "{\n" +
1105   - " \n" +
1106   - " if(p.x < 0.333)\n" +
1107   - " c = abs(cos(n*10.0));\n" +
1108   - " else if(p.x < 0.666)\n" +
1109   - " c = cos(pos.x*0.02 + n*10.0);//*0.5+0.5;\n" +
1110   - " else\n" +
1111   - " {\n" +
1112   - " pos *= 0.05;\n" +
1113   - " c = abs(sin(pos.x+n*5.0)*cos(pos.y+n*5.0));\n" +
1114   - " }\n" +
1115   - " }\n" +
1116   - " else if(p.y < 0.666) // middle row\n" +
1117   - " {\n" +
1118   - " \n" +
1119   - " if(p.x < 0.333)\n" +
1120   - " {\n" +
1121   - " pos *= 0.05;\n" +
1122   - " pos += vec2(10.0, 10.0);\n" +
1123   - " c = sqrt(pos.x * pos.x + pos.y * pos.y);\n" +
1124   - " c = fract(c+n);\n" +
1125   - " }\n" +
1126   - " else if(p.x < 0.666)\n" +
1127   - " {\n" +
1128   - " c = max(1.0 - mod(pos.x*0.5, 80.3+n*4.0)*0.5, 1.0 - mod(pos.y*0.5, 80.3+n*4.0)*0.5);\n" +
1129   - " c = max(c, 0.5*max(1.0 - mod(pos.x*0.5+40.0, 80.3+n*4.0)*0.5, 1.0 - mod(pos.y*0.5+40.0, 80.3+n*4.0)*0.5));\n" +
1130   - " }\n" +
1131   - " else\n" +
1132   - " c = abs(cos(pos.x*0.1 + n*20.0));// mod(pos.x*0.1, cos(pos.x));\n" +
1133   - " }\n" +
1134   - " else // first row\n" +
1135   - " {\n" +
1136   - " if(p.x < 0.333)\n" +
1137   - " c = noise(pos);\n" +
1138   - " else if(p.x < 0.666)\n" +
1139   - " c = n;\n" +
1140   - " else\n" +
1141   - " c =max(fract(n*20.0), max(fract(n*5.0), fract(n*10.0)));\n" +
1142   - " }\n" +
1143   - "\n" +
1144   - " gl_FragColor = vec4(c, c, c, 1.0);\n" +
1145   - "}\n" +
1146   - "\n" +
1147   - ""
1148   - }
1149   -];
1150   -
1151   -//
1152   -// Demo Javascript snippets
1153   -//
1154   -//
1155   -var javascriptSources =
1156   -[
1157   - {
1158   - name: "XX. Regression tests",
1159   - source: "\n" +
1160   - "clear();\n" +
1161   - "var test = new Test();\n" +
1162   - "test.regression(); // results in developer console (F12)\n" +
1163   - "\n"
1164   - },
1165   - {
1166   - name: "10. ImageView",
1167   - source:"\n" +
1168   - "var a = new dali.ImageView();\n" +
1169   - "\n" +
1170   - "var img = imageFromUiBuffer(\"field\");\n" +
1171   - "\n" +
1172   - "a.setImage(img);\n" +
1173   - "\n" +
1174   - "a.size = [100,100,1];\n" +
1175   - "\n" +
1176   - "dali.stage.add(a)\n" +
1177   - ""
1178   - },
1179   - {
1180   - name: "01. Colored Quad",
1181   - source: "var halfQuadSize = 0.5;\n" +
1182   - "\n" +
1183   - "// using helper function to create property buffer\n" +
1184   - "var verts = dali.createPropertyBuffer( {format: [ [\"aPosition\", dali.PropertyType.VECTOR3],\n" +
1185   - " [\"aCol\", dali.PropertyType.VECTOR4] ],\n" +
1186   - " data: { \"aPosition\": [ [-halfQuadSize, -halfQuadSize, 0.0],\n" +
1187   - " [+halfQuadSize, -halfQuadSize, 0.0],\n" +
1188   - " [-halfQuadSize, +halfQuadSize, 0.0],\n" +
1189   - " [+halfQuadSize, +halfQuadSize, 0.0]\n" +
1190   - " ],\n" +
1191   - " \"aCol\": [ [0, 0, 0, 1],\n" +
1192   - " [1, 0, 1, 1],\n" +
1193   - " [0, 1, 0, 1],\n" +
1194   - " [1, 1, 1, 1]\n" +
1195   - " ]\n" +
1196   - " }\n" +
1197   - " }\n" +
1198   - " );\n" +
1199   - "\n" +
1200   - "var indices = dali.createPropertyBuffer( { format: [ [\"indices\", dali.PropertyType.INTEGER]],\n" +
1201   - " data: { \"indices\": [0, 3, 1, 0, 2, 3] } } ) ;\n" +
1202   - "\n" +
1203   - "var geometry = new dali.Geometry();\n" +
1204   - "\n" +
1205   - "geometry.addVertexBuffer(verts);\n" +
1206   - "geometry.setIndexBuffer(indices);\n" +
1207   - "\n" +
1208   - "var vertex = \"\" +\n" +
1209   - " \"attribute mediump vec3 aPosition;\" +\n" +
1210   - " \"attribute mediump vec4 aCol;\" +\n" +
1211   - " \"uniform mediump mat4 uMvpMatrix;\" +\n" +
1212   - " \"uniform mediump vec3 uSize;\" +\n" +
1213   - " \"uniform lowp vec4 uColor;\" +\n" +
1214   - " \"varying lowp vec4 vColor;\" +\n" +
1215   - " \"\" +\n" +
1216   - " \"void main()\" +\n" +
1217   - " \"{\" +\n" +
1218   - " \" vColor = aCol * uColor;\" +\n" +
1219   - " \" mediump vec4 vertexPosition = vec4(aPosition,1.0);\" +\n" +
1220   - " \" vertexPosition.xyz *= uSize;\" +\n" +
1221   - " \" gl_Position = uMvpMatrix * vertexPosition;\" +\n" +
1222   - " \"}\";\n" +
1223   - "\n" +
1224   - "var fragment = \"\" +\n" +
1225   - " \"varying lowp vec4 vColor;\" +\n" +
1226   - " \"uniform lowp vec4 uColor;\" +\n" +
1227   - " \"\" +\n" +
1228   - " \"void main()\" +\n" +
1229   - " \"{\" +\n" +
1230   - " \" gl_FragColor = vColor * uColor;\" +\n" +
1231   - " \"}\";\n" +
1232   - "\n" +
1233   - "var shader = new dali.Shader(vertex, fragment, dali.ShaderHints.HINT_NONE);\n" +
1234   - "\n" +
1235   - "var material = new dali.Material(shader);\n" +
1236   - "\n" +
1237   - "var renderer = new dali.Renderer(geometry, material);\n" +
1238   - "\n" +
1239   - "var actor = new dali.Actor();\n" +
1240   - "\n" +
1241   - "actor.addRenderer(renderer);\n" +
1242   - "\n" +
1243   - "dali.stage.add(actor);\n" +
1244   - "\n" +
1245   - "actor.parentOrigin = [0.5, 0.5, 0.0];\n" +
1246   - "actor.size = [100,100,1];\n" +
1247   - "\n" +
1248   - ""
1249   - },
1250   - {
1251   - name: "02. Textured Quad",
1252   - source: "var halfQuadSize = 0.5;\n" +
1253   - "\n" +
1254   - "// using helper function to create property buffer\n" +
1255   - "var verts = dali.createPropertyBuffer( {format: [ [\"aPosition\", dali.PropertyType.VECTOR3],\n" +
1256   - " [\"aTexCoord\", dali.PropertyType.VECTOR2] ],\n" +
1257   - " data: { \"aPosition\": [ [-halfQuadSize, -halfQuadSize, 0.0],\n" +
1258   - " [+halfQuadSize, -halfQuadSize, 0.0],\n" +
1259   - " [-halfQuadSize, +halfQuadSize, 0.0],\n" +
1260   - " [+halfQuadSize, +halfQuadSize, 0.0]\n" +
1261   - " ],\n" +
1262   - " \"aTexCoord\": [ [0, 0],\n" +
1263   - " [1, 0],\n" +
1264   - " [0, 1],\n" +
1265   - " [1, 1]\n" +
1266   - " ]\n" +
1267   - " }\n" +
1268   - " });\n" +
1269   - "\n" +
1270   - "var indices = dali.createPropertyBuffer( { format: [ [\"indices\", dali.PropertyType.INTEGER]],\n" +
1271   - " data: { \"indices\": [0, 3, 1, 0, 2, 3] } } ) ;\n" +
1272   - "\n" +
1273   - "var geometry = new dali.Geometry();\n" +
1274   - "\n" +
1275   - "geometry.addVertexBuffer(verts);\n" +
1276   - "geometry.setIndexBuffer(indices);\n" +
1277   - "\n" +
1278   - "var shader = shaderFromUiBuffer(\"pass through texture\");\n" +
1279   - "\n" +
1280   - "var material = new dali.Material(shader);\n" +
1281   - "\n" +
1282   - "var image = imageFromUiBuffer(\"ducks\");\n" +
1283   - "var sampler = new dali.Sampler();\n" +
1284   - "material.addTexture(image, \"sTexture\", sampler);\n" +
1285   - "\n" +
1286   - "var renderer = new dali.Renderer(geometry, material);\n" +
1287   - "\n" +
1288   - "var actor = new dali.Actor();\n" +
1289   - "\n" +
1290   - "actor.addRenderer(renderer);\n" +
1291   - "\n" +
1292   - "dali.stage.add(actor);\n" +
1293   - "\n" +
1294   - "actor.parentOrigin = [0.5, 0.5, 0.0];\n" +
1295   - "actor.size = [100,100,1];\n" +
1296   - "\n" +
1297   - "\n" +
1298   - ""
1299   - },
1300   - {
1301   - name: "03. Shaded Quads",
1302   - source: "var halfQuadSize = 0.5;\n" +
1303   - "\n" +
1304   - "// using helper function to create property buffer\n" +
1305   - "var verts = dali.createPropertyBuffer( {format: [ [\"aPosition\", dali.PropertyType.VECTOR3],\n" +
1306   - " [\"aTexCoord\", dali.PropertyType.VECTOR2] ],\n" +
1307   - " data: { \"aPosition\": [ [-halfQuadSize, -halfQuadSize, 0.0],\n" +
1308   - " [+halfQuadSize, -halfQuadSize, 0.0],\n" +
1309   - " [-halfQuadSize, +halfQuadSize, 0.0],\n" +
1310   - " [+halfQuadSize, +halfQuadSize, 0.0]\n" +
1311   - " ],\n" +
1312   - " \"aTexCoord\": [ [0, 0],\n" +
1313   - " [1, 0],\n" +
1314   - " [0, 1],\n" +
1315   - " [1, 1]\n" +
1316   - " ]\n" +
1317   - " }\n" +
1318   - " });\n" +
1319   - "\n" +
1320   - "\n" +
1321   - "var indices = dali.createPropertyBuffer( { format: [ [\"indices\", dali.PropertyType.INTEGER]],\n" +
1322   - " data: { \"indices\": [0, 3, 1, 0, 2, 3] } } ) ;\n" +
1323   - "\n" +
1324   - "var geometry = new dali.Geometry();\n" +
1325   - "\n" +
1326   - "geometry.addVertexBuffer(verts);\n" +
1327   - "geometry.setIndexBuffer(indices);\n" +
1328   - "\n" +
1329   - "\n" +
1330   - "// some shader buffers for textured quad\n" +
1331   - "var names = [\"adjust brightness\", \"blur\", \"burn\", \"drop shadow\", \"emboss combine\",\n" +
1332   - " \"image-click\", \"melt\", \"ripple 2D\", \"mirror effect\", \"iris effect\",\n" +
1333   - " \"mosaic\", \"round window\", \"swirl\", \"noise\"];\n" +
1334   - "\n" +
1335   - "var n = Math.floor(Math.sqrt(names.length));\n" +
1336   - "var c = 0;\n" +
1337   - "var x = -(0.5*n*100);\n" +
1338   - "var y = -(0.5*n*100);\n" +
1339   - "\n" +
1340   - "for(var i = 0; i < names.length; i++) {\n" +
1341   - " var shader = shaderFromUiBuffer(names[i]);\n" +
1342   - "\n" +
1343   - " var material = new dali.Material(shader);\n" +
1344   - "\n" +
1345   - " var image = imageFromUiBuffer(\"ducks\");\n" +
1346   - " var sampler = new dali.Sampler();\n" +
1347   - " material.addTexture(image, \"sTexture\", sampler);\n" +
1348   - "\n" +
1349   - " var renderer = new dali.Renderer(geometry, material);\n" +
1350   - "\n" +
1351   - " var actor = new dali.Actor();\n" +
1352   - "\n" +
1353   - " actor.name = \"actor for shader:\" + names[i];\n" +
1354   - "\n" +
1355   - " actor.addRenderer(renderer);\n" +
1356   - "\n" +
1357   - " dali.stage.add(actor);\n" +
1358   - "\n" +
1359   - " actor.parentOrigin = [0.5, 0.5, 0.0];\n" +
1360   - " actor.size = [100,100,1];\n" +
1361   - "\n" +
1362   - " actor.position = [x,\n" +
1363   - " y + (c*110), \n" +
1364   - " 0];\n" +
1365   - "\n" +
1366   - " if(c>n) {\n" +
1367   - " c = 0;\n" +
1368   - " x += 110;\n" +
1369   - " } else {\n" +
1370   - " c += 1;\n" +
1371   - " }\n" +
1372   - "\n" +
1373   - "}\n" +
1374   - "\n" +
1375   - ""
1376   - },
1377   - {
1378   - name: "04. Animation",
1379   - source: "var halfQuadSize = 0.5;\n" +
1380   - "\n" +
1381   - "// use helper function to create property buffer\n" +
1382   - "var verts = dali.createPropertyBuffer( {format: [ [\"aPosition\", dali.PropertyType.VECTOR3],\n" +
1383   - " [\"aTexCoord\", dali.PropertyType.VECTOR2] ],\n" +
1384   - " data: { \"aPosition\": [ [-halfQuadSize, -halfQuadSize, 0.0],\n" +
1385   - " [+halfQuadSize, -halfQuadSize, 0.0],\n" +
1386   - " [-halfQuadSize, +halfQuadSize, 0.0],\n" +
1387   - " [+halfQuadSize, +halfQuadSize, 0.0]\n" +
1388   - " ],\n" +
1389   - " \"aTexCoord\": [ [0, 0],\n" +
1390   - " [1, 0],\n" +
1391   - " [0, 1],\n" +
1392   - " [1, 1]\n" +
1393   - " ]\n" +
1394   - " }\n" +
1395   - " });\n" +
1396   - "\n" +
1397   - "var indices = dali.createPropertyBuffer( { format: [ [\"indices\", dali.PropertyType.INTEGER]],\n" +
1398   - " data: { \"indices\": [0, 3, 1, 0, 2, 3] } } ) ;\n" +
1399   - "\n" +
1400   - "var geometry = new dali.Geometry();\n" +
1401   - "\n" +
1402   - "geometry.addVertexBuffer(verts);\n" +
1403   - "geometry.setIndexBuffer(indices);\n" +
1404   - "\n" +
1405   - "var vertex = \"\" + \n" +
1406   - " \"// atributes\\n\" + \n" +
1407   - " \"attribute mediump vec3 aPosition;\\n\" + \n" +
1408   - " \"attribute mediump vec2 aTexCoord;\\n\" + \n" +
1409   - " \"// inbuilt\\n\" + \n" +
1410   - " \"uniform mediump mat4 uMvpMatrix;\\n\" + \n" +
1411   - " \"uniform mediump vec3 uSize;\\n\" + \n" +
1412   - " \"uniform lowp vec4 uColor;\\n\" + \n" +
1413   - " \"// varying\\n\" + \n" +
1414   - " \"varying mediump vec2 vTexCoord;\\n\" + \n" +
1415   - " \"\\n\" + \n" +
1416   - " \"void main()\\n\" + \n" +
1417   - " \"{\\n\" + \n" +
1418   - " \" mediump vec4 vertexPosition = vec4(aPosition, 1.0);\\n\" + \n" +
1419   - " \" vertexPosition.xyz *= uSize;\\n\" + \n" +
1420   - " \" gl_Position = uMvpMatrix * vertexPosition;\\n\" + \n" +
1421   - " \" vTexCoord = aTexCoord;\\n\" + \n" +
1422   - " \"}\";\n" +
1423   - "\n" +
1424   - "var fragment = \"\" + \n" +
1425   - " \"uniform lowp vec4 uColor;\\n\" + \n" +
1426   - " \"uniform sampler2D sTexture;\\n\" + \n" +
1427   - " \"varying mediump vec2 vTexCoord;\\n\" + \n" +
1428   - " \"\\n\" + \n" +
1429   - " \"void main()\\n\" + \n" +
1430   - " \"{\\n\" + \n" +
1431   - " \" gl_FragColor = texture2D(sTexture, vTexCoord) * uColor;\\n\" + \n" +
1432   - " \"}\";\n" +
1433   - "\n" +
1434   - "var shader = new dali.Shader(vertex, fragment, dali.ShaderHints.HINT_NONE);\n" +
1435   - "\n" +
1436   - "var material = new dali.Material(shader);\n" +
1437   - "\n" +
1438   - "var image = imageFromUiBuffer(\"ducks\");\n" +
1439   - "var sampler = new dali.Sampler();\n" +
1440   - "material.addTexture(image, \"sTexture\",sampler);\n" +
1441   - "\n" +
1442   - "var renderer = new dali.Renderer(geometry, material);\n" +
1443   - "\n" +
1444   - "var actor = new dali.Actor();\n" +
1445   - "\n" +
1446   - "actor.addRenderer(renderer);\n" +
1447   - "\n" +
1448   - "dali.stage.add(actor);\n" +
1449   - "\n" +
1450   - "actor.parentOrigin = [0.5, 0.5, 0.0];\n" +
1451   - "actor.size = [100,100,1];\n" +
1452   - "\n" +
1453   - "\n" +
1454   - "var animation = new dali.Animation(9);\n" +
1455   - "\n" +
1456   - "animation.animateTo(actor, \"orientation\", [0,90,0], \"linear\", 0, 3);\n" +
1457   - "animation.animateTo(actor, \"orientation\", [0,0,0], \"linear\", 6, 3);\n" +
1458   - "\n" +
1459   - "var p = new dali.Path();\n" +
1460   - "\n" +
1461   - "p.addPoint( [0,0,0] );\n" +
1462   - "p.addPoint( [200,200,200] );\n" +
1463   - "p.addPoint( [0,0,-200] );\n" +
1464   - "p.addPoint( [0,-200,-900] );\n" +
1465   - "p.addPoint( [0,0,0] );\n" +
1466   - "\n" +
1467   - "p.generateControlPoints(0.43);\n" +
1468   - "\n" +
1469   - "animation.animatePath( actor, p, [1,0,0], \"linear\", 0, 6);\n" +
1470   - "\n" +
1471   - "//animation.setEndAction(dali.EndAction.Discard);\n" +
1472   - "\n" +
1473   - "animation.play();\n" +
1474   - "\n" +
1475   - "\n" +
1476   - ""
1477   - },
1478   - {
1479   - name: "05. Event driven Animation",
1480   - source: "var halfQuadSize = 0.5;\n" +
1481   - "\n" +
1482   - "// use helper function to create property buffer\n" +
1483   - "var verts = dali.createPropertyBuffer( {format: [ [\"aPosition\", dali.PropertyType.VECTOR3],\n" +
1484   - " [\"aTexCoord\", dali.PropertyType.VECTOR2] ],\n" +
1485   - " data: { \"aPosition\": [ [-halfQuadSize, -halfQuadSize, 0.0],\n" +
1486   - " [+halfQuadSize, -halfQuadSize, 0.0],\n" +
1487   - " [-halfQuadSize, +halfQuadSize, 0.0],\n" +
1488   - " [+halfQuadSize, +halfQuadSize, 0.0]\n" +
1489   - " ],\n" +
1490   - " \"aTexCoord\": [ [0, 0],\n" +
1491   - " [1, 0],\n" +
1492   - " [0, 1],\n" +
1493   - " [1, 1]\n" +
1494   - " ]\n" +
1495   - " }\n" +
1496   - " });\n" +
1497   - "\n" +
1498   - "var indices = dali.createPropertyBuffer( { format: [ [\"indices\", dali.PropertyType.INTEGER]],\n" +
1499   - " data: { \"indices\": [0, 3, 1, 0, 2, 3] } } ) ;\n" +
1500   - "\n" +
1501   - "var geometry = new dali.Geometry();\n" +
1502   - "\n" +
1503   - "geometry.addVertexBuffer(verts);\n" +
1504   - "geometry.setIndexBuffer(indices);\n" +
1505   - "\n" +
1506   - "var vertex = \"\" +\n" +
1507   - " \"// atributes\\n\" + \n" +
1508   - " \"attribute mediump vec3 aPosition;\\n\" + \n" +
1509   - " \"attribute mediump vec2 aTexCoord;\\n\" + \n" +
1510   - " \"// inbuilt\\n\" + \n" +
1511   - " \"uniform mediump mat4 uMvpMatrix;\\n\" + \n" +
1512   - " \"uniform mediump vec3 uSize;\\n\" + \n" +
1513   - " \"uniform lowp vec4 uColor;\\n\" + \n" +
1514   - " \"// varying\\n\" + \n" +
1515   - " \"varying mediump vec2 vTexCoord;\\n\" + \n" +
1516   - " \"\\n\" + \n" +
1517   - " \"void main()\\n\" + \n" +
1518   - " \"{\\n\" + \n" +
1519   - " \" mediump vec4 vertexPosition = vec4(aPosition, 1.0);\\n\" + \n" +
1520   - " \" vertexPosition.xyz *= uSize;\\n\" + \n" +
1521   - " \" gl_Position = uMvpMatrix * vertexPosition;\\n\" + \n" +
1522   - " \" vTexCoord = aTexCoord;\\n\" + \n" +
1523   - " \"}\";\n" +
1524   - "\n" +
1525   - "var fragment = \"\" +\n" +
1526   - " \"uniform lowp vec4 uColor;\\n\" + \n" +
1527   - " \"uniform sampler2D sTexture;\\n\" + \n" +
1528   - " \"varying mediump vec2 vTexCoord;\\n\" + \n" +
1529   - " \"\\n\" + \n" +
1530   - " \"void main()\\n\" + \n" +
1531   - " \"{\\n\" + \n" +
1532   - " \" gl_FragColor = texture2D(sTexture, vTexCoord) * uColor;\\n\" + \n" +
1533   - " \"}\";\n" +
1534   - "\n" +
1535   - "var shader = new dali.Shader(vertex, fragment, dali.ShaderHints.HINT_NONE);\n" +
1536   - "\n" +
1537   - "var material = new dali.Material(shader);\n" +
1538   - "\n" +
1539   - "var image = imageFromUiBuffer(\"ducks\");\n" +
1540   - "var sampler = new dali.Sampler();\n" +
1541   - "material.addTexture(image, \"sTexture\", sampler);\n" +
1542   - "\n" +
1543   - "var renderer = new dali.Renderer(geometry, material);\n" +
1544   - "\n" +
1545   - "var actor = new dali.Actor();\n" +
1546   - "\n" +
1547   - "actor.addRenderer(renderer);\n" +
1548   - "\n" +
1549   - "dali.stage.add(actor);\n" +
1550   - "\n" +
1551   - "actor.parentOrigin = [0.5, 0.5, 0.0];\n" +
1552   - "actor.size = [100,100,1];\n" +
1553   - "\n" +
1554   - "var actor2 = new dali.Actor();\n" +
1555   - "\n" +
1556   - "// @todo?? why can I no reuse the same renderer?\n" +
1557   - "//actor2.addRenderer(renderer);\n" +
1558   - "var renderer2 = new dali.Renderer(geometry, material);\n" +
1559   - "actor2.addRenderer(renderer2);\n" +
1560   - "\n" +
1561   - "dali.stage.add(actor2);\n" +
1562   - "\n" +
1563   - "actor2.position = [-200,0,0];\n" +
1564   - "actor2.parentOrigin = [0.5, 0.5, 0.0];\n" +
1565   - "actor2.size = [100,100,1];\n" +
1566   - "\n" +
1567   - "var animation = new dali.Animation(9);\n" +
1568   - "\n" +
1569   - "animation.animateTo(actor, \"orientation\", [0,90,0], \"linear\", 0, 3);\n" +
1570   - "animation.animateTo(actor, \"orientation\", [0,0,0], \"linear\", 6, 3);\n" +
1571   - "\n" +
1572   - "var p = new dali.Path();\n" +
1573   - "\n" +
1574   - "p.addPoint( [0,0,0] );\n" +
1575   - "p.addPoint( [200,200,200] );\n" +
1576   - "p.addPoint( [0,0,-200] );\n" +
1577   - "p.addPoint( [0,-200,-900] );\n" +
1578   - "p.addPoint( [0,0,0] );\n" +
1579   - "\n" +
1580   - "p.generateControlPoints(0.43);\n" +
1581   - "\n" +
1582   - "animation.animatePath( actor, p, [1,0,0], \"linear\", 0, 6);\n" +
1583   - "\n" +
1584   - "function onTouched(actor, e) {\n" +
1585   - " for(var i = 0; i < e.points.length; i++) {\n" +
1586   - " if(e.points[i].state === \"DOWN\") {\n" +
1587   - " console.log(e);\n" +
1588   - " animation.play();\n" +
1589   - " return;\n" +
1590   - " }\n" +
1591   - " }\n" +
1592   - "}\n" +
1593   - "\n" +
1594   - "actor2.connect(\"touch\", onTouched);\n" +
1595   - "\n" +
1596   - "\n" +
1597   - ""
1598   - },
1599   - {
1600   - name: "06. Offscreen",
1601   - source: "\n" +
1602   - "// todo"
1603   - },
1604   - {
1605   - name: "07. DALi toy pseudo dsl",
1606   - source: "\n" +
1607   - "//\n" +
1608   - "// @todo\n" +
1609   - "//\n" +
1610   - "addTo(\"stage\",\n" +
1611   - " image({\n" +
1612   - " name:\"img\",\n" +
1613   - " image:\"ducks\",\n" +
1614   - " size:[100,100,1]\n" +
1615   - " }),\n" +
1616   - " image({\n" +
1617   - " name:\"img2\",\n" +
1618   - " tag:\"listitem\",\n" +
1619   - " image:\"field\",\n" +
1620   - " position:[100,0,0],\n" +
1621   - " size:[100,100,1]\n" +
1622   - " }),\n" +
1623   - " image({\n" +
1624   - " name:\"img3\",\n" +
1625   - " tag:\"listitem\",\n" +
1626   - " image:\"funnyface\",\n" +
1627   - " position:[100,0,0],\n" +
1628   - " size:[100,100,1]\n" +
1629   - " }),\n" +
1630   - " image({\n" +
1631   - " name:\"img4\",\n" +
1632   - " tag:\"listitem\",\n" +
1633   - " image:\"girl1\",\n" +
1634   - " position:[100,0,0],\n" +
1635   - " size:[100,100,1]\n" +
1636   - " })\n" +
1637   - ");\n" +
1638   - "\n" +
1639   - "\n" +
1640   - "when(\"img\", \"touchedDown\",\n" +
1641   - " set(\"sensitive\", true),\n" +
1642   - " set(\"size\", to([200,200,200])),\n" +
1643   - " set(\"img2\", \"size\", to([200,200,200], 0,3, \"ease_in\")),\n" +
1644   - " set(excludeFrom(tagged(\"scrollitem\"), \"myimage\"), path(0,3, \"ease_in\", \"path0\")),\n" +
1645   - " endAction(\"Discard\")\n" +
1646   - " then(set(\"img4\", \"hide\"),\n" +
1647   - " play(\"anAnim\")) );\n" +
1648   - " \n" +
1649   - "\n" +
1650   - "\n"
1651   - }
1652   -];
1653   -
1654   -function log(errorLog) {
1655   - console.log(errorLog);
1656   -}
1657   -
1658   -function consoleAssert( test, message )
1659   -{
1660   - // using this rather than inbuild assert
1661   - // it lets dali carry on for some reason
1662   - if(!test)
1663   - {
1664   - throw message;
1665   - }
1666   -}
1667   -
1668   -function consoleLogErrorEvent(event) {
1669   - "use strict";
1670   - console.log("Error");
1671   - console.dir(event);
1672   - if(event.target) {
1673   - if(event.target.result) {
1674   - event.target.result.close();
1675   - }
1676   - }
1677   -}
1678   -
1679   -function consoleLogSuccess(message) {
1680   - "use strict";
1681   - return function() {
1682   - console.log("Success:" + message);
1683   - };
1684   -}
1685   -
1686   -
1687   -/**
1688   - * Gets embedded base64 images embedded in the HTML file
1689   - */
1690   -function getStockImageData(index) {
1691   - "use strict";
1692   - var name = "testImage" + index;
1693   - // need to draw it off screen first? @todo
1694   - var c = document.createElement("canvas");
1695   - var img = document.getElementById(name);
1696   - c.width = img.naturalWidth;
1697   - c.height = img.naturalHeight;
1698   - var context = c.getContext("2d");
1699   - context.drawImage(img, 0, 0 );
1700   - var imageData = context.getImageData(0, 0, img.naturalWidth, img.naturalHeight); // <-ImageData
1701   - return imageData;
1702   -}
1703   -
1704   -function formatValue(value)
1705   -{
1706   - if(typeof(value) === "number") {
1707   - if(value === 3.4028234663852886e+38)
1708   - {
1709   - return "MAX_FLOAT";
1710   - } else if(value === Number.MAX_VALUE) {
1711   - return "MAX_DBL";
1712   - } else if(value === 2147483647) {
1713   - return "MAX_INT";
1714   - } else if(value === 9223372036854775807) {
1715   - return "MAX_INT64";
1716   - } else {
1717   - return value.toFixed(3);
1718   - }
1719   - } else {
1720   - return value;
1721   - }
1722   -}
1723   -
1724   -/**
1725   - * Add bootstrap column for single value (not array)
1726   - */
1727   -function add1ColElement(elem, value)
1728   -{
1729   - var e = document.createElement("div");
1730   - e.className = "col-md-3";
1731   - e.innerHTML = formatValue(value);
1732   - elem.appendChild(e);
1733   -
1734   - e = document.createElement("div");
1735   - e.className = "col-md-3";
1736   - e.innerHTML = "";
1737   - elem.appendChild(e);
1738   -
1739   - e = document.createElement("div");
1740   - e.className = "col-md-3";
1741   - e.innerHTML = "";
1742   - elem.appendChild(e);
1743   -
1744   - e = document.createElement("div");
1745   - e.className = "col-md-3";
1746   - e.innerHTML = "";
1747   - elem.appendChild(e);
1748   -
1749   - return e;
1750   -}
1751   -
1752   -/*
1753   - * Add bootstrap column for array of 2 value
1754   - */
1755   -function add2ColElement(elem, value)
1756   -{
1757   - var e = document.createElement("div");
1758   - e.className = "col-md-3";
1759   - e.innerHTML = formatValue(value[0]);
1760   - elem.appendChild(e);
1761   -
1762   - e = document.createElement("div");
1763   - e.className = "col-md-3";
1764   - e.innerHTML = formatValue(value[1]);
1765   - elem.appendChild(e);
1766   -
1767   - e = document.createElement("div");
1768   - e.className = "col-md-3";
1769   - e.innerHTML = "";
1770   - elem.appendChild(e);
1771   -
1772   - e = document.createElement("div");
1773   - e.className = "col-md-3";
1774   - e.innerHTML = "";
1775   - elem.appendChild(e);
1776   -
1777   - return e;
1778   -}
1779   -
1780   -/*
1781   - * Add bootstrap table cell for array of 3 value
1782   - */
1783   -function add3ColElement(elem, value)
1784   -{
1785   - var e = document.createElement("div");
1786   - e.className = "col-md-3";
1787   - e.innerHTML = formatValue(value[0]);
1788   - elem.appendChild(e);
1789   -
1790   - e = document.createElement("div");
1791   - e.className = "col-md-3";
1792   - e.innerHTML = formatValue(value[1]);
1793   - elem.appendChild(e);
1794   -
1795   - e = document.createElement("div");
1796   - e.className = "col-md-3";
1797   - e.innerHTML = formatValue(value[2]);
1798   - elem.appendChild(e);
1799   -
1800   - e = document.createElement("div");
1801   - e.className = "col-md-3";
1802   - e.innerHTML = "";
1803   - elem.appendChild(e);
1804   - return e;
1805   -}
1806   -
1807   -/*
1808   - * Add bootstrap table cell for array of 4 value
1809   - */
1810   -function add4ColElement(elem, value)
1811   -{
1812   - var e = document.createElement("div");
1813   - e.className = "col-md-3";
1814   - e.innerHTML = formatValue(value[0]);
1815   - elem.appendChild(e);
1816   -
1817   - e = document.createElement("div");
1818   - e.className = "col-md-3";
1819   - e.innerHTML = formatValue(value[1]);
1820   - elem.appendChild(e);
1821   -
1822   - e = document.createElement("div");
1823   - e.className = "col-md-3";
1824   - e.innerHTML = formatValue(value[2]);
1825   - elem.appendChild(e);
1826   -
1827   - e = document.createElement("div");
1828   - e.className = "col-md-3";
1829   - e.innerHTML = formatValue(value[3]);
1830   - elem.appendChild(e);
1831   - return e;
1832   -}
1833   -
1834   -/*
1835   - * Add a bootstrap table cell for property 'name' for an actor
1836   - */
1837   -function createElementForActorProperty(actor, name) {
1838   - "use strict";
1839   - var elem = document.createElement("div");
1840   -
1841   - var value = actor[name];
1842   - var type = typeof value;
1843   -
1844   - if(name === "maximumSize") {
1845   - value = value;
1846   - }
1847   -
1848   - if(type === "string" || type === "number" || type === "boolean") {
1849   - elem.className = "row";
1850   - add1ColElement(elem, value);
1851   - } else if(value === undefined) {
1852   - elem.className = "row";
1853   - add1ColElement(elem, "???undefined???");
1854   - } else {
1855   - var r;
1856   - var length = value.length;
1857   - if(length === 2) {
1858   - elem.className = "row";
1859   - add2ColElement(elem, value);
1860   - } else if(length === 3) {
1861   - elem.className = "row";
1862   - add3ColElement(elem, value);
1863   - } else if(length === 4) {
1864   - elem.className = "row";
1865   - add4ColElement(elem, value);
1866   - } else if(length === 9) {
1867   - r = document.createElement("div");
1868   - r.className = "row";
1869   - add3ColElement(r, value.slice(0, 3));
1870   - elem.appendChild(r);
1871   -
1872   - r = document.createElement("div");
1873   - r.className = "row";
1874   - add3ColElement(r, value.slice(3, 6));
1875   - elem.appendChild(r);
1876   -
1877   - r = document.createElement("div");
1878   - r.className = "row";
1879   - add3ColElement(r, value.slice(6, 9));
1880   - elem.appendChild(r);
1881   - } else if(length === 16) {
1882   - r = document.createElement("div");
1883   - r.className = "row";
1884   - add4ColElement(r, value.slice(0, 4));
1885   - elem.appendChild(r);
1886   -
1887   - r = document.createElement("div");
1888   - r.className = "row";
1889   - add4ColElement(r, value.slice(4, 8));
1890   - elem.appendChild(r);
1891   -
1892   - r = document.createElement("div");
1893   - r.className = "row";
1894   - add4ColElement(r, value.slice(8, 12));
1895   - elem.appendChild(r);
1896   -
1897   - r = document.createElement("div");
1898   - r.className = "row";
1899   - add4ColElement(r, value.slice(12, 16));
1900   - elem.appendChild(r);
1901   - }
1902   - }
1903   -
1904   - return elem;
1905   -}
1906   -
1907   -/**
1908   - * Adds a bootstrap table to show the actor properties
1909   - */
1910   -function onActorSelected(actor) {
1911   - "use strict";
1912   - var i;
1913   - var name;
1914   - var gridBlock;
1915   - var nameBlock;
1916   - var valueBlock;
1917   - var actorId;
1918   -
1919   - //
1920   - // recreate property tab
1921   - //
1922   - var elem = document.getElementById("selected");
1923   -
1924   - removeAllChildren(elem);
1925   -
1926   - //
1927   - // setup property view
1928   - //
1929   - if (actor) {
1930   - actorId = actor.getId();
1931   -
1932   - var p = document.createElement("div");
1933   - p.innerHTML = "<h3><b>" + actor.name + "</b> [<b>" + actorId + "</b>] (<b>" + actor.position + "</b>)</h3>";
1934   - elem.appendChild(p);
1935   -
1936   - var parent = actor.getParent();
1937   - if(parent) {
1938   - p = document.createElement("div");
1939   - p.innerHTML =
1940   - "<p>" +
1941   - "(Parent: <b>" + parent.name + "</b> [<b>" + parent.getId() + "</b>] (<b>" + parent.position + "</b>)" +
1942   - " Anchored: <b>" + actor.anchorPoint + "</b>" +
1943   - " ParentOrigin: <b>" + actor.parentOrigin + "</b> )" +
1944   - "</p>";
1945   - elem.appendChild(p);
1946   - }
1947   -
1948   - if( actorId in actorIdToShaderSet &&
1949   - "shaderEffect" in actorIdToShaderSet[actorId]) { // if has compiled
1950   - var shaderOptions = actorIdToShaderSet[actorId];
1951   - var uniforms = dali.sourceUniformMetaData(shaderOptions.vertex);
1952   - uniforms = uniforms.concat(dali.sourceUniformMetaData(shaderOptions.fragment));
1953   -
1954   - var shader = getShader(actor);
1955   -
1956   - if(uniforms.length) {
1957   - gridBlock = document.createElement("div");
1958   - gridBlock.className = "row";
1959   -
1960   - nameBlock = document.createElement("div");
1961   - nameBlock.className = "col-md-5";
1962   - nameBlock.innerHTML = "<u>Shader Uniforms:</u>";
1963   - gridBlock.appendChild(nameBlock);
1964   -
1965   - valueBlock = document.createElement("div");
1966   - valueBlock.className = "col-md-7";
1967   - valueBlock.innerHTML = "";
1968   - gridBlock.appendChild(valueBlock);
1969   -
1970   - elem.appendChild(gridBlock);
1971   -
1972   - for(i = 0; i < uniforms.length; i++) {
1973   - var type = uniforms[i].type;
1974   - name = uniforms[i].name;
1975   - gridBlock = document.createElement("div");
1976   - gridBlock.className = "row";
1977   -
1978   - nameBlock = document.createElement("div");
1979   - nameBlock.className = "col-md-5";
1980   - nameBlock.innerHTML = type + " " + name + "<i> (Animatable) </i>";
1981   -
1982   - gridBlock.appendChild(nameBlock);
1983   -
1984   - valueBlock = document.createElement("div");
1985   - valueBlock.className = "col-md-7";
1986   - valueBlock.innerHTML = shader[ name ];
1987   - gridBlock.appendChild(valueBlock);
1988   -
1989   - elem.appendChild(gridBlock);
1990   -
1991   - }
1992   - }
1993   -
1994   - }
1995   -
1996   - // getproperties returns std::vector<string>
1997   - var props = actor.getProperties();
1998   -
1999   - gridBlock = document.createElement("div");
2000   - gridBlock.className = "row";
2001   -
2002   - nameBlock = document.createElement("div");
2003   - nameBlock.className = "col-md-5";
2004   - nameBlock.innerHTML = "<u>Properties:</ul>";
2005   - gridBlock.appendChild(nameBlock);
2006   -
2007   - valueBlock = document.createElement("div");
2008   - valueBlock.className = "col-md-7";
2009   - valueBlock.innerHTML = "";
2010   - gridBlock.appendChild(valueBlock);
2011   -
2012   - elem.appendChild(gridBlock);
2013   -
2014   -
2015   - for (i = 0; i < props.size(); i++) {
2016   - name = props.get(i);
2017   -
2018   - gridBlock = document.createElement("div");
2019   - gridBlock.className = "row";
2020   -
2021   - var animatable = actor.isPropertyAnimatable(actor.getPropertyIndex(name));
2022   -
2023   - nameBlock = document.createElement("div");
2024   - nameBlock.className = "col-md-5";
2025   - if(animatable) {
2026   - nameBlock.innerHTML = "'" + name + "'" + "<i> (animatable)</i>";
2027   - } else {
2028   - nameBlock.innerHTML = "'" + name + "'";
2029   - }
2030   - gridBlock.appendChild(nameBlock);
2031   -
2032   - valueBlock = document.createElement("div");
2033   - valueBlock.className = "col-md-7";
2034   -
2035   - valueBlock.appendChild( createElementForActorProperty(actor, name) );
2036   -
2037   - gridBlock.appendChild(valueBlock);
2038   -
2039   - elem.appendChild(gridBlock);
2040   - }
2041   -
2042   - props.delete();
2043   -
2044   - }
2045   -
2046   -}
2047   -
2048   -/**
2049   - * creates page element and set namesValues array
2050   - */
2051   -function createElement(elementName, namesValues) {
2052   - "use strict";
2053   - var e = document.createElement(elementName);
2054   - for(var name in namesValues) {
2055   - e[name] = namesValues[name];
2056   - }
2057   - return e;
2058   -}
2059   -
2060   -/**
2061   - * create element with innerHTML
2062   - */
2063   -function createElementInnerHTML(elementName, innerHTML) {
2064   - "use strict";
2065   - return createElement(elementName, {"innerHTML": innerHTML});
2066   -}
2067   -
2068   -/**
2069   - * remove all the children from the element
2070   - */
2071   -function removeAllChildren(elem) {
2072   - "use strict";
2073   - var count = elem.children.length;
2074   - for (var i = 0; i < count; i++) {
2075   - elem.removeChild(elem.children[0]);
2076   - }
2077   -}
2078   -
2079   -/**
2080   - *
2081   - */
2082   -function onChangeSetDataChanged(e) {
2083   - e.currentTarget["data-changed"] = true;
2084   -}
2085   -
2086   -/**
2087   - * creates a document input element [ ]
2088   - */
2089   -function inputElem(type, propObject, property, val, arrayIndex) {
2090   - "use strict";
2091   - var e = document.createElement("input");
2092   - e.type = type;
2093   - // for number then step of any means it can be a real number not just integer
2094   - e.step = "any";
2095   - e.value = val;
2096   - e.className = "form-control";
2097   - e["data-value"] = val;
2098   - e["data-arrayIndex"] = arrayIndex;
2099   - e["data-changed"] = false;
2100   - e.addEventListener("changed", onChangeSetDataChanged);
2101   - return e;
2102   -}
2103   -
2104   -/**
2105   - * creates an input 2 element [ , ]
2106   - */
2107   -function inputElem2(type, propObject, property, val, startIndex) {
2108   - "use strict";
2109   - var d = document.createElement("div");
2110   - var a = inputElem("number", propObject, property, val[startIndex], startIndex);
2111   - a.className = "col-md-3";
2112   - d.appendChild(a);
2113   - a = inputElem("number", propObject, property, val[startIndex + 1], startIndex + 1);
2114   - a.className = "col-md-3";
2115   - d.appendChild(a);
2116   - a.className = "col-md-3";
2117   - d.appendChild(a);
2118   - a = createElement("div");
2119   - a.className = "col-md-3";
2120   - d.appendChild(a);
2121   - return d;
2122   -}
2123   -
2124   -/**
2125   - * creates an input 3 element [ , , ]
2126   - */
2127   -function inputElem3(type, propObject, property, val, startIndex) {
2128   - "use strict";
2129   - var d = document.createElement("div");
2130   - var a = inputElem("number", propObject, property, val[startIndex], startIndex);
2131   - a.className = "col-md-3";
2132   - d.appendChild(a);
2133   - a = inputElem("number", propObject, property, val[startIndex + 1], startIndex + 1);
2134   - a.className = "col-md-3";
2135   - d.appendChild(a);
2136   - a = inputElem("number", propObject, property, val[startIndex + 2], startIndex + 2);
2137   - a.className = "col-md-3";
2138   - d.appendChild(a);
2139   - a = createElement("div");
2140   - a.className = "col-md-3";
2141   - d.appendChild(a);
2142   - return d;
2143   -}
2144   -
2145   -/**
2146   - * creates an input 4 element [ , , , ]
2147   - */
2148   -function inputElem4(type, propObject, property, val, startIndex) {
2149   - "use strict";
2150   - var d = document.createElement("div");
2151   - var a = inputElem("number", propObject, property, val[startIndex], startIndex);
2152   - a.className = "col-md-3";
2153   - d.appendChild(a);
2154   - a = inputElem("number", propObject, property, val[startIndex + 1], startIndex + 1);
2155   - a.className = "col-md-3";
2156   - d.appendChild(a);
2157   - a = inputElem("number", propObject, property, val[startIndex + 2], startIndex + 2);
2158   - a.className = "col-md-3";
2159   - d.appendChild(a);
2160   - a = inputElem("number", propObject, property, val[startIndex + 3], startIndex + 3);
2161   - a.className = "col-md-3";
2162   - d.appendChild(a);
2163   - return d;
2164   -}
2165   -
2166   -/**
2167   - * creates a document input element for an actor/shader's property
2168   - */
2169   -function createInputElement(actorShader, propertyName, value) {
2170   -// always4 ja columns
2171   - "use strict";
2172   - var type = typeof value;
2173   -
2174   - var e;
2175   - if(type === "string") {
2176   - e = inputElem("string", actorShader, propertyName, value);
2177   - } else if(type === "number") {
2178   - e = inputElem("number", actorShader, propertyName, value);
2179   - } else if(type === "boolean") {
2180   - e = inputElem("checkbox", actorShader, propertyName, value);
2181   - } else {
2182   - var length = value.length;
2183   - if(length === 2) {
2184   - e = inputElem2("number", actorShader, propertyName, value, 0);
2185   - } else if(length === 3) {
2186   - e = inputElem3("number", actorShader, propertyName, value, 0);
2187   - } else if(length === 4) {
2188   - e = inputElem4("number", actorShader, propertyName, value, 0);
2189   - } else if(length === 9) {
2190   - e = createElement("div");
2191   - e.appendChild( inputElem3("number", actorShader, propertyName, value, 0) );
2192   - e.appendChild( inputElem3("number", actorShader, propertyName, value, 3) );
2193   - e.appendChild( inputElem3("number", actorShader, propertyName, value, 6) );
2194   - } else if(length === 16) {
2195   - e = createElement("div");
2196   - e.appendChild( inputElem4("number", actorShader, propertyName, value, 0) );
2197   - e.appendChild( inputElem4("number", actorShader, propertyName, value, 4) );
2198   - e.appendChild( inputElem4("number", actorShader, propertyName, value, 8) );
2199   - e.appendChild( inputElem4("number", actorShader, propertyName, value, 12) );
2200   - } else {
2201   - throw "should not happen";
2202   - }
2203   - }
2204   -
2205   - return e;
2206   -}
2207   -
2208   -/**
2209   - * Selects an actor by id
2210   - */
2211   -function selectActor(id) { // from html tree
2212   - "use strict";
2213   - if(id === null) {
2214   - eventHandler.selectActor(null);
2215   - } else {
2216   - var root = dali.stage.getRootLayer();
2217   - var actor = root.findChildById(id);
2218   - if (actor) {
2219   - eventHandler.selectActor(actor);
2220   - }
2221   - root.delete(); // wrapper
2222   - }
2223   -}
2224   -
2225   -/**
2226   - * Rebuild the document actor property display
2227   - */
2228   -function rebuildTree() {
2229   - "use strict";
2230   - // remove childred
2231   - var e = document.getElementById("tree");
2232   - var count = e.children.length;
2233   - for (var i = 0; i < count; i++) {
2234   - e.removeChild(e.children[0]);
2235   - }
2236   -
2237   - // <ul class="nav nav-list">
2238   - // <li><label class="tree-toggler nav-header">Header 1</label>
2239   -
2240   - var root = dali.stage.getRootLayer() ; // dali.stage.rootRotationActor;
2241   -
2242   - var recurse = function(parentElement, actor) {
2243   - var children = actor.getChildren();
2244   - if (children) {
2245   - var ul = null;
2246   -
2247   - for (var i = 0; i < children.length; ++i) {
2248   - var child = children[i];
2249   -
2250   - if (child.name[0] !== "*") {
2251   -
2252   - var li = document.createElement("li");
2253   -
2254   - var a = document.createElement("a");
2255   - a.href = "javascript:selectActor(" + child.getId() + ");";
2256   - a.text = "(" + child.getId() + ") '" + child.name + "'";
2257   - li.appendChild(a);
2258   -
2259   - if (ul === null) {
2260   - ul = document.createElement("ul");
2261   - ul.className = "nav-tree";
2262   - }
2263   -
2264   - ul.appendChild(li);
2265   -
2266   - recurse(li, child);
2267   -
2268   - // finish with the child wrapper
2269   - child.delete();
2270   - }
2271   - }
2272   -
2273   - if (ul) {
2274   - parentElement.appendChild(ul);
2275   - }
2276   - }
2277   - };
2278   -
2279   - recurse(e, root);
2280   -
2281   - root.delete(); // wrapper
2282   -}
2283   -
2284   -
2285   -/**
2286   - * Eventhandler class; Touch handling abstraction.
2287   - *
2288   - * handling functions can be registered to get touch events
2289   - */
2290   -function EventHandler() {
2291   - "use strict";
2292   - // public
2293   - this.mouseX = 0;
2294   - this.mouseY = 0;
2295   - this.mouse_buttons = 0;
2296   - this.mouseDownPosition = [0, 0, 0];
2297   - this.dragDx = 0;
2298   - this.dragDy = 0;
2299   - this.touchedActor = null; // set if actor is touched (left click)
2300   - //private
2301   - // this.selectedActor = null;
2302   - this.mouseIsDown = 0;
2303   - this.metaKey = 0;
2304   - this.altKey = 0;
2305   - this.ctrlKey = 0;
2306   - this.shiftKey = 0;
2307   - // handlers; use register("MouseDragStart", func); where for func(eventHandler)
2308   - this.handlersMouseMove = []; // valid; touchedActor(can be null), mouseX, mouseY
2309   - this.handlersMouseDrag = []; // valid; touchedActor(can be null), dragDx, dragDy
2310   - this.handlersSelect = []; // valid; touchedActor(can be null), dragDx, dragDy
2311   - this.handlersDeselect = []; // valid; touchedActor(can be null), dragDx, dragDy
2312   -}
2313   -
2314   -/*
2315   - * Register a handler, ie register("MouseMove", moveFunc)
2316   - */
2317   -EventHandler.prototype.register = function(name, handler) {
2318   - "use strict";
2319   - var handlers = this["handlers" + name];
2320   - if (!(handler in handlers)) {
2321   - handlers.push(handler);
2322   - }
2323   -};
2324   -
2325   -/*
2326   - * Unregister a handler
2327   - */
2328   -EventHandler.prototype.unRegister = function(name, handler) {
2329   - "use strict";
2330   - var handlers = this["handlers" + name];
2331   - var index = handlers.index(handler);
2332   - if (index >= 0) {
2333   - handlers.splice(index, 1);
2334   - }
2335   -};
2336   -
2337   -/*
2338   - * update the mouse state
2339   - */
2340   -EventHandler.prototype.updateMouseState = function(canvas, e) {
2341   - "use strict";
2342   - var rect = canvas.getBoundingClientRect(); // in window
2343   - this.mouseX = e.clientX - rect.left; // from window
2344   - this.mouseY = e.clientY - (rect.bottom - rect.height);
2345   - this.mouse_buttons = e.button; // 0|1|2 left|middle|rigtht
2346   -};
2347   -
2348   -/*
2349   - * mouse down
2350   - */
2351   -EventHandler.prototype.mouseDown = function(canvas, e) {
2352   - "use strict";
2353   - this.mouseIsDown = 1;
2354   - this.updateMouseState(canvas, e);
2355   - this.mouseDownPosition = [this.mouseX, this.mouseY, 0];
2356   - var hitActor = dali.hitTest(this.mouseX, this.mouseY);
2357   - var tid = -1;
2358   - var hid = -2;
2359   - if (this.touchedActor) {
2360   - tid = this.touchedActor.getId();
2361   - }
2362   - if (hitActor) {
2363   - hid = hitActor.getId();
2364   - }
2365   -
2366   - if (hid !== tid) {
2367   - if (tid > 0) {
2368   - this.handleEvent(this.handlersDeselect);
2369   - this.touchedActor = null;
2370   - }
2371   - }
2372   -
2373   - this.selectActor(hitActor);
2374   -
2375   - // dali is 0==down,1==up,2==motion
2376   - dali.sendMouseEvent(this.mouseX, this.mouseY, 0);
2377   - // console.log("mouseDown", this.mouseX, this.mouseY, this.mouseIsDown, 0);
2378   -};
2379   -
2380   -/*
2381   - * set the touchedActor
2382   - */
2383   -EventHandler.prototype.selectActor = function(hitActor) {
2384   - "use strict";
2385   - if (hitActor) {
2386   - this.handleEvent(this.handlersDeselect);
2387   -
2388   - var layer = dali.stage.getRootLayer();
2389   - if (hitActor.getId() === dali.stage.rootRotationActor.getId()) {
2390   - // dont select our rotation actor
2391   - hitActor = null;
2392   - } else {
2393   - // dont select the root layer
2394   - if (hitActor.getId() === layer.getId()) {
2395   - hitActor = null;
2396   - }
2397   - }
2398   - layer.delete(); // wrapper
2399   -
2400   - this.touchedActor = hitActor;
2401   - } else {
2402   - if(this.touchedActor) {
2403   - this.handleEvent(this.handlersDeselect);
2404   - }
2405   - this.touchedActor = null;
2406   - }
2407   -
2408   - this.handleEvent(this.handlersSelect);
2409   -};
2410   -
2411   -/*
2412   - * canvas mouse move handler
2413   - */
2414   -EventHandler.prototype.mouseMove = function(canvas, e) {
2415   - "use strict";
2416   - this.updateMouseState(canvas, e);
2417   -
2418   - if(this.mouseIsDown) {
2419   - // if (this.touchedActor) {
2420   - this.dragDx = (this.mouseX - this.mouseDownPosition[0]);
2421   - this.dragDy = (this.mouseY - this.mouseDownPosition[1]);
2422   - // }
2423   -
2424   - this.handleEvent(this.handlersMouseDrag);
2425   - }
2426   -
2427   - this.handleEvent(this.handlersMouseMove);
2428   -
2429   - // dali is 0==down,1==up,2==motion
2430   - dali.sendMouseEvent(this.mouseX, this.mouseY, 2);
2431   - // console.log("mouseMove", this.mouseX, this.mouseY, this.mouseIsDown, 2);
2432   -};
2433   -
2434   -/*
2435   - * canvas mouse up handler
2436   - */
2437   -EventHandler.prototype.mouseUp = function(canvas, e) {
2438   - "use strict";
2439   - this.mouseIsDown = 0;
2440   - this.updateMouseState(canvas, e);
2441   - this.dragDx = (this.mouseX - this.mouseDownPosition[0]);
2442   - this.dragDy = (this.mouseY - this.mouseDownPosition[1]);
2443   -
2444   - // dali is 0==down,1==up,2==motion
2445   - dali.sendMouseEvent(this.mouseX, this.mouseY, 1);
2446   - // console.log("mouseUp", this.mouseX, this.mouseY, this.mouseIsDown, 1);
2447   -
2448   -};
2449   -
2450   -
2451   -/*
2452   - * canvas mouse wheel handler
2453   - */
2454   -EventHandler.prototype.mouseWheel = function(canvas, e) {
2455   - "use strict";
2456   - // multiples of +120 for up, -120 for down
2457   - var clicks = e.wheelDelta / 120;
2458   -
2459   - var taskList = dali.stage.getRenderTaskList();
2460   - var task = taskList.getTask(0);
2461   - var cameraActor = task.getCameraActor();
2462   -
2463   - var fov = cameraActor.fieldOfView;
2464   - cameraActor.fieldOfView = fov + (clicks / 180.0 * Math.PI);
2465   -
2466   - taskList.delete();
2467   - task.delete();
2468   - cameraActor.delete();
2469   - // console.log(e.wheelDelta);
2470   -};
2471   -
2472   -/*
2473   - * call given handlers
2474   - */
2475   -EventHandler.prototype.handleEvent = function(handlers) {
2476   - for (var i = 0, len = handlers.length; i < len; i++) {
2477   - var handler = handlers[i];
2478   - handler(this);
2479   - }
2480   -};
2481   -
2482   -/*
2483   - * canvas key down handler
2484   - */
2485   -EventHandler.prototype.keyDown = function(canvas, e) {
2486   - this.metaKey = e.metaKey;
2487   - this.altKey = e.altKey;
2488   - this.ctrlKey = e.ctrlKey;
2489   - this.shiftKey = e.shiftKey;
2490   -};
2491   -
2492   -/*
2493   - * canvas key up handler
2494   - */
2495   -EventHandler.prototype.keyUp = function(canvas, e) {
2496   - this.metaKey = e.metaKey;
2497   - this.altKey = e.altKey;
2498   - this.ctrlKey = e.ctrlKey;
2499   - this.shiftKey = e.shiftKey;
2500   -};
2501   -
2502   -//
2503   -// Actor list helpers; applies function to all actors in the list
2504   -//
2505   -var ActorList = {
2506   - doAll: function(actors, func) {
2507   - for (var i = 0, len = actors.length; i < len; i++) {
2508   - func(actors[i]);
2509   - }
2510   - },
2511   - show: function(actors, visible) {
2512   - this.doAll(actors, function(actor) {
2513   - actor.visible = visible;
2514   - });
2515   - },
2516   - delete: function(actors, visible) {
2517   - this.doAll(actors, function(actor) {
2518   - actor.delete = visible;
2519   - });
2520   - },
2521   - add: function(actors, actor) {
2522   - this.doAll(actors, function(a) {
2523   - actor.add(a);
2524   - });
2525   - },
2526   - remove: function(actors, actor) {
2527   - this.doAll(actors, function(a) {
2528   - actor.remove(a);
2529   - });
2530   - },
2531   - contains: function(actors, actor) {
2532   - if (!actor) {
2533   - return false;
2534   - }
2535   - for (var i = 0, len = actors.length; i < len; i++) {
2536   - if (actors[i].getId() == actor.getId()) {
2537   - return true;
2538   - }
2539   - }
2540   - return false;
2541   - }
2542   -};
2543   -
2544   -
2545   -//
2546   -// Class for depth adornments
2547   -//
2548   -function DepthAdornment() {
2549   - "use strict";
2550   - this.attachedTo = null;
2551   - this.actors = []; // array of 5 square attaced around and to back of actor to show depth
2552   -
2553   - for (var i = 0; i < 5; i++) { //
2554   -
2555   - var a = dali.createSolidColorActor([0.5, 0.5, 0.5, 1],
2556   - false, [0, 0, 0, 1],
2557   - 0);
2558   - a.name = "**_dali_adornment";
2559   - this.actors.push(a);
2560   - }
2561   -
2562   - ActorList.show(this.actors, false);
2563   -}
2564   -
2565   -DepthAdornment.prototype.delete = function() {
2566   - "use strict";
2567   - ActorList.delete(this.actors);
2568   - this.actors = [];
2569   -};
2570   -
2571   -DepthAdornment.prototype.attach = function(actor) {
2572   - "use strict";
2573   - var newActor = true;
2574   - if (this.attachedTo) {
2575   - newActor = (actor.getId() !== this.attachedTo.getId());
2576   - }
2577   -
2578   - if (actor && newActor) {
2579   - this.unattach(this.attachedTo);
2580   -
2581   - if(!ActorList.contains(this.actors, actor)) {
2582   - this.__positionActors(actor);
2583   -
2584   - ActorList.add(this.actors, actor);
2585   -
2586   - ActorList.show(this.actors, true);
2587   -
2588   - this.attachedTo = actor;
2589   - }
2590   - }
2591   -};
2592   -
2593   -DepthAdornment.prototype.unattach = function() {
2594   - "use strict";
2595   - if (this.attachedTo) {
2596   - ActorList.show(this.actors, false);
2597   - ActorList.remove(this.actors, this.attachedTo);
2598   - this.attachedTo = null;
2599   - }
2600   -};
2601   -
2602   -DepthAdornment.prototype.reposition = function() {
2603   - "use strict";
2604   - if (this.attachedTo) {
2605   - this.__positionActors(this.attachedTo);
2606   - }
2607   -};
2608   -
2609   -DepthAdornment.prototype.__positionActors = function(actor) {
2610   - "use strict";
2611   - var s = actor.size;
2612   - s[2] = Math.max(s[2], 20); // pretend the actor is at least 20
2613   - var halfw = s[0] / 2;
2614   - var halfh = s[1] / 2;
2615   - var halfd = s[2] / 2;
2616   -
2617   - this.actors[0].position = [-halfw, 0, -halfd];
2618   - this.actors[0].orientation = [0, -90, 0];
2619   - this.actors[0].size = [s[2], s[1], 1];
2620   -
2621   - this.actors[1].position = [+halfw, 0, -halfd];
2622   - this.actors[1].orientation = [0, 90, 0];
2623   - this.actors[1].size = [s[2], s[1], 1];
2624   -
2625   - this.actors[2].position = [0, -halfh, -halfd];
2626   - this.actors[2].orientation = [90, 0, 0];
2627   - this.actors[2].size = [s[0], s[2], 1];
2628   -
2629   - this.actors[3].position = [0, halfh, -halfd];
2630   - this.actors[3].orientation = [-90, 0, 0];
2631   - this.actors[3].size = [s[0], s[2], 1];
2632   - // back
2633   - // this.actors[4].position = [0, 0, -s[2]];
2634   - // this.actors[4].orientation = [0, 0, 0];
2635   - // this.actors[4].size = s;
2636   -
2637   -};
2638   -
2639   -
2640   -
2641   -/**
2642   - * Class for cursor adornments when displaying selected actor
2643   - */
2644   -function Cursors() {
2645   - "use strict";
2646   - var i;
2647   - var a;
2648   - this.attachedTo = null;
2649   - this.resizers = []; // array of 8 small square resizers
2650   - this.lines = []; // array of 4 bounding box lines
2651   - this.lineColor = [0.5, 0.5, 0.5, 1];
2652   - this.resizerColor = [0, 0, 0, 1];
2653   - this.depthAdornments = new DepthAdornment();
2654   -
2655   - for (i = 0; i < 4; i++) { // lines
2656   - a = dali.createSolidColorActor(this.lineColor, false, [0, 0, 0, 1], 0);
2657   - a.name = "**_dali_adornment";
2658   - this.lines.push(a);
2659   - }
2660   -
2661   - for(i = 0; i < 8; i++) { // squares
2662   - a = dali.createSolidColorActor(this.resizerColor, true, [1, 1, 1, 1], 1);
2663   - a.name = "**_dali_adornment";
2664   - this.resizers.push(a);
2665   - this.resizers[i].size = [10, 10, 1];
2666   - }
2667   -
2668   - ActorList.show(this.lines, false);
2669   - ActorList.show(this.resizers, false);
2670   -
2671   -}
2672   -
2673   -
2674   -Cursors.prototype.attach = function(actor) {
2675   - "use strict";
2676   - if (actor) {
2677   -
2678   - if (this.attachedTo) {
2679   - this.unattach(this.attachedTo);
2680   - }
2681   -
2682   - this.__positionActors(actor);
2683   -
2684   - ActorList.add(this.lines, actor);
2685   - ActorList.add(this.resizers, actor);
2686   -
2687   - ActorList.show(this.lines, true);
2688   - ActorList.show(this.resizers, true);
2689   -
2690   - this.depthAdornments.attach(actor);
2691   -
2692   - this.attachedTo = actor;
2693   - }
2694   -};
2695   -
2696   -Cursors.prototype.unattach = function(actor) {
2697   - "use strict";
2698   - if (actor && this.attachedTo) {
2699   - ActorList.show(this.lines, false);
2700   - ActorList.show(this.resizers, false);
2701   -
2702   - ActorList.remove(this.lines, actor);
2703   - ActorList.remove(this.resizers, actor);
2704   -
2705   - this.depthAdornments.unattach(actor);
2706   -
2707   - this.attachedTo = null;
2708   - }
2709   -};
2710   -
2711   -Cursors.prototype.reposition = function() {
2712   - "use strict";
2713   - if (this.attachedTo) {
2714   - this.__positionActors(this.attachedTo);
2715   - this.depthAdornments.reposition();
2716   - }
2717   -};
2718   -
2719   -Cursors.prototype.__positionActors = function(actor) {
2720   - "use strict";
2721   - var s = actor.size;
2722   - var p = actor.position;
2723   - var halfw = s[0] / 2;
2724   - var halfh = s[1] / 2;
2725   -
2726   - this.lines[0].position = [0 - halfw, 0, 0];
2727   - this.lines[0].size = [1, halfh * 2, 1];
2728   -
2729   - this.lines[1].position = [0, 0 - halfh, 0];
2730   - this.lines[1].size = [halfw * 2, 1, 1];
2731   -
2732   - this.lines[2].position = [0 + halfw, 0, 0];
2733   - this.lines[2].size = [1, halfh * 2, 1];
2734   -
2735   - this.lines[3].position = [0, 0 + halfh, 0];
2736   - this.lines[3].size = [halfw * 2, 1, 1];
2737   -
2738   - // drag functions presumes order here is clockwise from top left
2739   - var offsetZ = 5;
2740   - this.resizers[0].position = [-halfw, +halfh, offsetZ];
2741   - this.resizers[1].position = [0, +halfh, offsetZ];
2742   - this.resizers[2].position = [+halfw, +halfh, offsetZ];
2743   - this.resizers[3].position = [+halfw, 0, offsetZ];
2744   -
2745   - this.resizers[4].position = [+halfw, -halfh, offsetZ];
2746   - this.resizers[5].position = [0, -halfh, offsetZ];
2747   - this.resizers[6].position = [-halfw, -halfh, offsetZ];
2748   - this.resizers[7].position = [-halfw, 0, offsetZ];
2749   -};
2750   -
2751   -
2752   -
2753   -function App(theEventHandler) {
2754   - "use strict";
2755   - var self = this;
2756   - this.rootRotation = [0, 0, 0]; // in degrees
2757   - this.cursors = new Cursors();
2758   - // ActorWrapper CreateSolidColorActor(const Vector4 & color, bool border,
2759   - // const Vector4 & borderColor,
2760   - // const unsigned int borderSize)
2761   - this.rootLayerIndicator = dali.createSolidColorActor(
2762   - [0, 0, 0, 0.0],
2763   - true, [0, 0, 0, 1],
2764   - 1);
2765   - this.rootLayerIndicator.name = "**_dali_adornment";
2766   -
2767   - this.rootLayerIndicator.parentOrigin = [0.5, 0.5, 0.5];
2768   - this.rootLayerIndicator.anchorPoint = [0.5, 0.5, 0.5];
2769   - this.rootLayerIndicator.size = [250, 250, 1];
2770   - this.rootLayerIndicator.position = [0, 0, 0];
2771   -
2772   - this.selectedActor = null;
2773   - this.selectedActorSize = [0, 0, 0];
2774   - this.selectedActorPosition = [0, 0, 0];
2775   -
2776   - this.__handleMouseDrag = function(eventHandler) {
2777   - if (self.resizing) {
2778   - if (self.selectedActor) {
2779   - self.selectedActor.size = [
2780   - self.selectedActorSize[0] + eventHandler.dragDx,
2781   - self.selectedActorSize[1] + eventHandler.dragDy,
2782   - self.selectedActorSize[2]
2783   - ];
2784   - self.cursors.reposition();
2785   - }
2786   - } else {
2787   - // move the touched actor
2788   - if (self.selectedActor) {
2789   - if (eventHandler.mouse_buttons === 0) {
2790   - self.selectedActor.position = [
2791   - self.selectedActorPosition[0] + eventHandler.dragDx,
2792   - self.selectedActorPosition[1] + eventHandler.dragDy,
2793   - self.selectedActorPosition[2]
2794   - ];
2795   - } else if (eventHandler.mouse_buttons === 2) {
2796   - self.selectedActor.position = [
2797   - self.selectedActorPosition[0],
2798   - self.selectedActorPosition[1], -(self.selectedActorPosition[2] + eventHandler.dragDy)
2799   - ];
2800   - }
2801   - }
2802   - }
2803   -
2804   - // rotate on middle button
2805   - if (eventHandler.mouse_buttons === 1) {
2806   - self.rootRotation = [eventHandler.mouseDownPosition[1] - eventHandler.mouseY, -(eventHandler.mouseDownPosition[0] - eventHandler.mouseX),
2807   - self.rootRotation[2]
2808   - ];
2809   - dali.stage.rootRotationActor.orientation = self.rootRotation;
2810   - }
2811   -
2812   - };
2813   -
2814   - this.addActor = function(actor) {
2815   - if (eventHandler.touchedActor) {
2816   - eventHandler.touchedActor.add(actor);
2817   - actor.position = [20,20,0]; // offset so new actor isnt right behind touched
2818   - } else {
2819   - dali.stage.add(actor);
2820   - }
2821   -
2822   - rebuildTree();
2823   -
2824   - };
2825   -
2826   - this.__handleSelect = function(eventHandler) {
2827   - if (eventHandler.mouse_buttons === 0) { // left click only selects actor
2828   - var actor = eventHandler.touchedActor;
2829   - self.selectedActor = actor;
2830   - if(actor) {
2831   - self.selectedActorPosition = actor.position;
2832   - self.selectedActorSize = actor.size;
2833   - } else {
2834   - self.selectedActorPosition = [0, 0, 0];
2835   - self.selectedActorSize = [1, 1, 1];
2836   - }
2837   - self.cursors.attach(self.selectedActor);
2838   - dali.stage.add(self.rootLayerIndicator);
2839   - onActorSelected(actor);
2840   - }
2841   - };
2842   -
2843   - this.__handleDeselect = function(eventHandler) {
2844   - self.cursors.unattach(self.selectedActor);
2845   - dali.stage.remove(self.rootLayerIndicator);
2846   - };
2847   -
2848   - // initialize
2849   - eventHandler.register("MouseDrag", this.__handleMouseDrag);
2850   - eventHandler.register("Select", this.__handleSelect);
2851   - eventHandler.register("Deselect", this.__handleDeselect);
2852   -
2853   - //
2854   - // Monkey patch the stage object (to add to root object not the root layer for rotations)
2855   - //
2856   - dali.stage.rootRotationActor = new dali.Actor();
2857   - dali.stage.rootRotationActor.parentOrigin = [0.5, 0.5, 0.5];
2858   - dali.stage.rootRotationActor.anchorPoint = [0.5, 0.5, 0.5];
2859   - dali.stage.rootRotationActor.name = "app rotation actor";
2860   - dali.stage.rootRotationActor.size = [100,100,1];
2861   - dali.stage.add(dali.stage.rootRotationActor);
2862   -
2863   - dali.stage.add = function(actor) {
2864   - dali.stage.rootRotationActor.add(actor);
2865   - };
2866   -
2867   - dali.stage.remove = function(actor) {
2868   - dali.stage.rootRotationActor.remove(actor);
2869   - };
2870   -
2871   -}
2872   -
2873   -//
2874   -// Global
2875   -//
2876   -
2877   -var eventHandler = new EventHandler();
2878   -var app = new App(eventHandler);
2879   -var canvas = document.getElementById("canvas");
2880   -
2881   -function mouseDown(e) {
2882   - "use strict";
2883   - eventHandler.mouseDown(canvas, e);
2884   -}
2885   -
2886   -function mouseUp(e) {
2887   - "use strict";
2888   - eventHandler.mouseUp(canvas, e);
2889   -}
2890   -
2891   -function mouseMove(e) {
2892   - "use strict";
2893   - eventHandler.mouseMove(canvas, e);
2894   -}
2895   -
2896   -function mouseWheel(e) {
2897   - "use strict";
2898   - eventHandler.mouseWheel(canvas, e);
2899   -}
2900   -
2901   -function keyDown(e) {
2902   - "use strict";
2903   - eventHandler.keyDown(canvas, e);
2904   -}
2905   -
2906   -function keyUp(e) {
2907   - "use strict";
2908   - eventHandler.keyUp(canvas, e);
2909   -}
2910   -
2911   -canvas.onmousemove = mouseMove;
2912   -canvas.onmousedown = mouseDown;
2913   -canvas.onmouseup = mouseUp;
2914   -canvas.onwheel = mouseWheel;
2915   -
2916   -canvas.onkeydown = keyDown;
2917   -canvas.onkeyup = keyUp;
2918   -
2919   -//
2920   -//
2921   -//
2922   -
2923   -function runRandomAnimation(actor) {
2924   - "use strict";
2925   - var a = new dali.Animation(0);
2926   - a.setDuration(6);
2927   - a.setLooping(true);
2928   - a.animateTo(actor, "position", [300 * Math.random() - 150, 300 * Math.random() - 150, 0],
2929   - "Linear", 0, 3);
2930   - a.animateTo(actor, "position", [0, 0, 0], "Linear", 3, 3);
2931   - a.animateTo(actor, "rotation", [0, 0, 1, 720 * Math.random() - 360], "Linear", 0, 3);
2932   - a.animateTo(actor, "rotation", [0, 0, 1, 0], "Linear", 3, 3);
2933   -
2934   - a.play();
2935   - // a.delete(); // delete the animtion object but a.Play() keeps it running in Dali
2936   - return a;
2937   -}
2938   -
2939   -
2940   -//------------------------------------------------------------------------------
2941   -//
2942   -// application building helpers (pseudo DSL)
2943   -//
2944   -//------------------------------------------------------------------------------
2945   -var _whenBuilder = { // builder for when() function. mimicks dali builder
2946   - paths: {},
2947   - styles: {},
2948   - templates: {},
2949   - propertyBuffers: {},
2950   - geometries: {},
2951   - imageBuffers: {},
2952   - materials: {},
2953   - samplers: {},
2954   - shaders: {},
2955   - renderers: {},
2956   - tags: {}
2957   -};
2958   -
2959   -function _actorId(a) { // return id from [object|string name|id]
2960   - "use strict";
2961   - if( typeof a === "object" ) {
2962   - return a.getId();
2963   - } else if( typeof a === "string" ) {
2964   - var child = dali.stage.findChildByName(a);
2965   - return child.getId();
2966   - } else {
2967   - return a;
2968   - }
2969   -}
2970   -
2971   -/**
2972   - * Builder namespace. Usage as singleton "build".
2973   - */
2974   -dali.Builder = function() {
2975   - "use strict";
2976   - this.data = _whenBuilder;
2977   - this.init();
2978   -};
2979   -
2980   -/**
2981   - *
2982   - */
2983   -dali.Builder.prototype.init = function() {
2984   - var imageSize = 0.5; // half quad size
2985   - this.propertyBuffer("imageVerts",
2986   - {format: [ ["aPosition", dali.PropertyType.VECTOR3],
2987   - ["aTexCoord", dali.PropertyType.VECTOR2] ],
2988   - data: { "aPosition": [ [-imageSize, -imageSize, 0.0],
2989   - [+imageSize, -imageSize, 0.0],
2990   - [-imageSize, +imageSize, 0.0],
2991   - [+imageSize, +imageSize, 0.0]
2992   - ],
2993   - "aTexCoord": [ [0, 0],
2994   - [1, 0],
2995   - [0, 1],
2996   - [1, 1]
2997   - ]
2998   - }
2999   - }
3000   - );
3001   -
3002   - this.propertyBuffer("imageIndices",
3003   - { format: [ ["indices", dali.PropertyType.INTEGER]],
3004   - data: { "indices": [0, 3, 1, 0, 2, 3] } } );
3005   -
3006   - this.geometry("imageGeometry", {vertices: ["imageVerts"],
3007   - indices: "imageIndices",
3008   - type: "TRIANGLES",
3009   - requiresSelfDepthTest: false} );
3010   -
3011   - this.shader("imageShader",
3012   - {vertex: "\n" +
3013   - "attribute mediump vec3 aPosition;\n" +
3014   - "attribute mediump vec2 aTexCoord;\n" +
3015   - "varying mediump vec2 vTexCoord;\n" +
3016   - "uniform mediump vec3 uSize;\n" +
3017   - "uniform mediump mat4 uMvpMatrix;\n" +
3018   - "\n" +
3019   - "void main(void)\n" +
3020   - "{\n" +
3021   - " mediump vec4 vertexPosition = vec4(aPosition, 1.0);\n" +
3022   - " vertexPosition.xyz *= uSize;\n" +
3023   - " gl_Position = uMvpMatrix * vertexPosition;\n" +
3024   - " vTexCoord = aTexCoord;\n" +
3025   - "}\n" +
3026   - "\n" +
3027   - "",
3028   - fragment:
3029   - "precision mediump float;\n" +
3030   - "uniform sampler2D sTexture;\n" +
3031   - "uniform mediump vec4 uColor;\n" +
3032   - "varying mediump vec2 vTexCoord;\n" +
3033   - "\n" +
3034   - "void main()\n" +
3035   - "{\n" +
3036   - " gl_FragColor = texture2D( sTexture, vTexCoord ) * uColor;\n" +
3037   - "}\n" +
3038   - "\n" +
3039   - "",
3040   - hints: "HINTS_NONE"
3041   - });
3042   -
3043   - var builtInImages = ["girl1","funnyface","ducks","field"];
3044   -
3045   - var d;
3046   - for(var i=0; i < builtInImages.length; i++)
3047   - {
3048   - var imageName = builtInImages[i];
3049   -
3050   - var samplerName = "sampler_" + imageName;
3051   - this.sampler(samplerName,
3052   - { "minification-filter":0,
3053   - "magnification-filter":0,
3054   - "u-wrap":0,
3055   - "v-wrap":0,
3056   - "affects-transparency":false});
3057   -
3058   - var materialName ="material_" + imageName;
3059   - this.material(materialName,
3060   - {textures:
3061   - [
3062   - { image: imageName,
3063   - uniform: "sTexture",
3064   - sampler: samplerName
3065   - }
3066   - ],
3067   - shader: "imageShader"} );
3068   -
3069   - this.renderer("render_" + imageName,
3070   - {geometry: "imageGeometry",
3071   - material: materialName});
3072   -
3073   - }
3074   -
3075   -}; // init()
3076   -
3077   -/**
3078   - * tags an actor
3079   - */
3080   -dali.Builder.prototype.tag = function(actor, tag) {
3081   - // tag an actor (multiple by seperated by space)
3082   - "use strict";
3083   - var names = tag.split();
3084   - var id = _actorId(actor);
3085   - for(var i = 0; i < names.length; i++) {
3086   - var name = names[i];
3087   - if(!(name in _whenBuilder.tags)) {
3088   - _whenBuilder.tags[name] = [];
3089   - }
3090   - var nameIndex = _whenBuilder.tags[name].indexOf(id);
3091   - if(nameIndex < 0) {
3092   - _whenBuilder.tags[name].push( id );
3093   - }
3094   - }
3095   -};
3096   -
3097   -/**
3098   - * unTags an actor
3099   - */
3100   -dali.Builder.prototype.unTag = function(actor, tag) {
3101   - // untag
3102   - "use strict";
3103   - var names = tag.split();
3104   - var id = _actorId(actor);
3105   - for(var i = 0; i < names.length; i++) {
3106   - var name = names[i];
3107   - if( name in _whenBuilder.tags ) {
3108   - var nameIndex = _whenBuilder.tags[name].indexOf(id);
3109   - if(nameIndex >= 0) {
3110   - _whenBuilder.tags[name].splice(nameIndex, 1);
3111   - }
3112   - }
3113   - }
3114   -};
3115   -
3116   -/**
3117   - * Gets list of actors tagged by 'tag'
3118   - */
3119   -dali.Builder.prototype.tagged = function(tag) {
3120   - // return all tagged
3121   - "use strict";
3122   - return _whenBuilder.tags[tag];
3123   -};
3124   -
3125   -/**
3126   - * Returns actorIdArray with actorOrArray removed
3127   - */
3128   -dali.Builder.prototype.excludeFrom = function(actorIdArray, actorOrArray)
3129   -{
3130   - // return all except one
3131   - "use strict";
3132   - var item, id;
3133   - var excludes = {};
3134   - if("length" in actorOrArray) {
3135   - for(item in actorOrArray) {
3136   - id = _actorId(item);
3137   - excludes[id] = 1;
3138   - }
3139   - } else {
3140   - id = _actorId(actorOrArray);
3141   - excludes[id] = 1;
3142   - }
3143   -
3144   - var ret = [];
3145   - for(item in actorIdArray) {
3146   - if( !(item in excludes) ) {
3147   - ret.push( item );
3148   - }
3149   - }
3150   - return ret;
3151   -};
3152   -
3153   -/**
3154   - *
3155   - */
3156   -dali.Builder.prototype.path = function (d) {
3157   - // Stores paths in builder
3158   - // paths({name: {points: [[1,2,3],[4,5,6]], forward:[1,0,0]},
3159   - // other:{points: [[1,2,3],[4,5,6]], forward:[1,0,0]}})
3160   - //
3161   - "use strict";
3162   - for(var name in d) {
3163   - var pathData = {point: [], forward: [1, 0, 0]};
3164   - pathData = dali.mergeObjects(pathData, d[name]);
3165   - var daliPath = new dali.Path();
3166   - daliPath.points = pathData.points;
3167   - dali.generateControlPoints(daliPath, pathData.curvature); // @todo remove magic number?
3168   - _whenBuilder.paths[name] = daliPath;
3169   - }
3170   -};
3171   -
3172   -/**
3173   - * Set style definition
3174   - */
3175   -dali.Builder.prototype.style = function(name, d) {
3176   - // Stores styles in builder
3177   - // style(name, {property1:value, prop2,value})
3178   - // style(other, {property1:value, prop2,value})
3179   - //
3180   - "use strict";
3181   - _whenBuilder.styles[name] = d;
3182   -};
3183   -
3184   -//
3185   -// +------------------+ +---------------+
3186   -// | PropertyBuffer | * * | Geometry |
3187   -// +------------------+ -------- +---------------+
3188   -// | format: | | vertex:PBuf |1 * +-----------+ +------------+
3189   -// | name:v2,name:v3| | indices:PBuf +---------| Renderer | | Actor |
3190   -// | data | | | +-----------+ * * +------------+
3191   -// +------------------+ +---------------+ * | geom +---------| renderer(s)|
3192   -// +----| material | | |
3193   -// +-------------+ * * +----------+ 1 | | | | |
3194   -// |Sampler +----------|Material +--------------+ +-----------+ +------------+
3195   -// +-------------+ +----------+
3196   -// |uniformName | * |sampler(s)|
3197   -// |Image | +--|shader |
3198   -// |Filter/wrap | | |facecull |
3199   -// +-------------+ | |blendfunc |
3200   -// | +----------+
3201   -// +-----------------+ |
3202   -// |Shader | |
3203   -// +-----------------+ 1 |
3204   -// |program:vert,frag|---+
3205   -// |hints |
3206   -// +-----------------+
3207   -//
3208   -
3209   -/**
3210   - * Set template defintion
3211   - */
3212   -dali.Builder.prototype.template = function(name, d) {
3213   - // Stores templates in builder
3214   - // template("name":{ "type": "ImageActor", property1:value, prop2,value})
3215   - // template("other: { "type": "TextView", property1:value, prop2,value})
3216   - "use strict";
3217   - _whenBuilder.templates[name] = d;
3218   -
3219   -};
3220   -
3221   -/**
3222   - * Set style definition
3223   - */
3224   -dali.Builder.prototype.imageBuffer = function(name, d) {
3225   - // stores imageBuffers
3226   - // imageBuffers("buffer1", { bufferName: "" }
3227   - // } )
3228   - "use strict";
3229   - _whenBuilder.imageBuffers[name] = d;
3230   -};
3231   -
3232   -/**
3233   - * Set property buffer definition
3234   - */
3235   -dali.Builder.prototype.propertyBuffer = function(name, d) {
3236   - // stores PropertyBuffers
3237   - // propertyBuffers("buffer1", { format: [ ["aPosition", dali.PropertyType.VECTOR2],
3238   - // ["aTexCoord", dali.PropertyType.VECTOR2].
3239   - // data: {aPosition: [-0.5,-0.5,],
3240   - // [+0.5,-0.5,],
3241   - // [-0.5,+0.5,],
3242   - // [+0.5,+0.5,],
3243   - // aCol: [0.0, 0.0],
3244   - // [1.0, 0.0],
3245   - // [0.0, 1.0],
3246   - // [1.0, 1.0] }
3247   - // } )
3248   - "use strict";
3249   - _whenBuilder.propertyBuffers[name] = d;
3250   -};
3251   -
3252   -/**
3253   - * Set geometry definition
3254   - */
3255   -dali.Builder.prototype.geometry = function(name, d) {
3256   - // stores geometry meshes
3257   - // geometries("mesh1": { vertices: "buffer1",
3258   - // index: "index1",
3259   - // type: "TRIANGLES",
3260   - // requresDepthTest:false } )
3261   - "use strict";
3262   - _whenBuilder.geometries[name] = d;
3263   -};
3264   -
3265   -/**
3266   - * Set sample definition
3267   - */
3268   -dali.Builder.prototype.sampler = function(name, d) {
3269   - // stores samplers
3270   - // samplers("sampler1", { "minification-filter":0,
3271   - // "magnification-filter":0,
3272   - // "u-wrap":0,
3273   - // "v-wrap":0,
3274   - // "affects-transparency":false})
3275   - "use strict";
3276   - _whenBuilder.samplers[name] = d;
3277   -};
3278   -
3279   -/**
3280   - * Set shader definition
3281   - */
3282   -dali.Builder.prototype.shader = function(name, d) {
3283   - // stores shaders
3284   - // shaders("shader1", { vertex:"",
3285   - // fragment:"",
3286   - // hints:"NONE"} )
3287   - "use strict";
3288   - _whenBuilder.shaders[name] = d;
3289   -};
3290   -
3291   -/**
3292   - * Set material definition
3293   - */
3294   -dali.Builder.prototype.material = function(name, d) {
3295   - // stores materials meshes
3296   - // materials({"mat1",{ textures: [
3297   - // { image: animage,
3298   - // uniform: "uTexture"
3299   - // sampler: asampler
3300   - // }
3301   - // ],
3302   - // shader: "shader1",
3303   - // faceCulling: "BACK",
3304   - // blend: "AUTO",
3305   - // blendFunc : {srcFactorRGBA, destFactorRGBA},
3306   - // blendEquation : "",
3307   - // mixColor : [1,0,0,1] } )
3308   - //
3309   - "use strict";
3310   - var value; // check required things
3311   - value = this.GetRequiredKey(d, "shader");
3312   - this.GetRequiredKey(_whenBuilder.shaders, value); // must already exist
3313   -
3314   - // only support textures so must have textures section
3315   - this.GetRequiredKey(d, "textures");
3316   -
3317   - var i;
3318   - for(i = 0; i < d.textures.length; i++)
3319   - {
3320   - if(typeof(d.textures[i]) == "string")
3321   - {
3322   - // the image must already exist
3323   - value = this.GetRequiredKey(d.textures[i], "image");
3324   - this.GetRequiredKey(_whenBuilder.imageBuffers, value);
3325   - }
3326   - else
3327   - {
3328   - }
3329   - }
3330   -
3331   - // value = this.GetRequiredKey(d, "textures");
3332   - // this.GetRequiredKey(_whenBuilder.textures, value);
3333   - _whenBuilder.materials[name] = d;
3334   -};
3335   -
3336   -/**
3337   - * Set renderer definition
3338   - */
3339   -dali.Builder.prototype.renderer = function(name, d) {
3340   - // store renderer
3341   - // renderers("rend1", {"geometry": "geom1",
3342   - // "material": "mat1",
3343   - // "depth-index"})
3344   - "use strict";
3345   - var value; // check required things
3346   - value = this.GetRequiredKey(d, "geometry");
3347   - this.GetRequiredKey(_whenBuilder.geometries, value); // must already exist
3348   - value = this.GetRequiredKey(d, "material");
3349   - this.GetRequiredKey(_whenBuilder.materials, value);
3350   -
3351   - _whenBuilder.renderers[name] = d;
3352   -};
3353   -
3354   -dali.Builder.prototype.createOrGetDaliPropertyBuffer = function(name) {
3355   - "use strict";
3356   - consoleAssert(name in _whenBuilder.propertyBuffers, "property buffer not defined:" + name);
3357   - var ret;
3358   - if("daliObject" in _whenBuilder.propertyBuffers[name]) {
3359   - ret = _whenBuilder.propertyBuffers[name].daliObject;
3360   - } else {
3361   - var data = _whenBuilder.propertyBuffers[name];
3362   -
3363   - ret = dali.createPropertyBuffer(data);
3364   -
3365   - _whenBuilder.propertyBuffers[name].daliObject = ret;
3366   - }
3367   - return ret;
3368   -};
3369   -
3370   -dali.Builder.prototype.createOrGetDaliGeometry = function(name) {
3371   - "use strict";
3372   - consoleAssert(name in _whenBuilder.geometries, "geometry not defined:" + name);
3373   - var ret;
3374   - if("daliObject" in _whenBuilder.geometries[name]) {
3375   - ret = _whenBuilder.geometries[name].daliObject;
3376   - } else {
3377   - var data = _whenBuilder.geometries[name];
3378   -
3379   - ret = new dali.Geometry();
3380   -
3381   - for(var i = 0; i < data.vertices.length; i++) {
3382   - ret.addVertexBuffer( this.createOrGetDaliPropertyBuffer(data.vertices[i] ) );
3383   - }
3384   -
3385   - ret.setIndexBuffer( this.createOrGetDaliPropertyBuffer(data.indices) );
3386   -
3387   - if("requiresSelfDepthTest" in data) {
3388   - ret.setRequiresDepthTesting(data.requiresSelfDepthTest);
3389   - }
3390   -
3391   - _whenBuilder.geometries[name].daliObject = ret;
3392   - }
3393   - return ret;
3394   -};
3395   -
3396   -dali.Builder.prototype.createOrGetDaliShader = function(name) {
3397   - "use strict";
3398   - consoleAssert(name in _whenBuilder.shaders, "shader not defined:" + name);
3399   - var ret = null;
3400   - if("daliObject" in _whenBuilder.shaders[name]) {
3401   - ret = _whenBuilder.shaders[name].daliObject;
3402   - } else {
3403   - var data = _whenBuilder.shaders[name];
3404   -
3405   - ret = new dali.Shader(data.vertex,
3406   - data.fragment,
3407   - uiShaderTab.getDaliShaderHints(data.hints));
3408   -
3409   - _whenBuilder.shaders[name].daliObject = ret;
3410   - }
3411   -
3412   - return ret;
3413   -};
3414   -
3415   -dali.Builder.prototype.createOrGetDaliImage = function(name) {
3416   - "use strict";
3417   - if(!(name in _whenBuilder.imageBuffers)) {
3418   - _whenBuilder.imageBuffers[name] = {};
3419   - }
3420   -
3421   - var ret;
3422   - if("daliObject" in _whenBuilder.imageBuffers[name]) {
3423   - ret = _whenBuilder.imageBuffers[name].daliObject;
3424   - } else {
3425   - // get images from the ui buffer
3426   - ret = imageFromUiBuffer(name);
3427   - _whenBuilder.imageBuffers[name].daliObject = ret;
3428   - }
3429   - return ret;
3430   -};
3431   -
3432   -dali.Builder.prototype.createOrGetDaliSampler = function(name) {
3433   - "use strict";
3434   - consoleAssert( name in _whenBuilder.samplers, "sampler not defined:" + name);
3435   - var ret;
3436   - if("daliObject" in _whenBuilder.samplers[name]) {
3437   - ret = _whenBuilder.samplers[name].daliObject;
3438   - } else {
3439   - var data = _whenBuilder.samplers[name];
3440   - ret = new dali.Sampler();
3441   - _whenBuilder.samplers[name].daliObject = ret;
3442   - }
3443   - return ret;
3444   -};
3445   -
3446   -dali.Builder.prototype.createOrGetDaliMaterial = function(name) {
3447   - "use strict";
3448   - consoleAssert( name in _whenBuilder.materials, "Material not defined:" + name);
3449   - var ret;
3450   - if("daliObject" in _whenBuilder.materials[name]) {
3451   - ret = _whenBuilder.materials[name].daliObject;
3452   - } else {
3453   - var data = _whenBuilder.materials[name];
3454   -
3455   - ret = new dali.Material(this.createOrGetDaliShader( data.shader ));
3456   -
3457   - for(var i = 0; i < data.textures.length; i++) {
3458   - ret.addTexture( this.createOrGetDaliImage(data.textures[i].image),
3459   - data.textures[i].uniform,
3460   - this.createOrGetDaliSampler( data.textures[i].sampler ) );
3461   - }
3462   -
3463   - _whenBuilder.materials[name].daliObject = ret;
3464   - }
3465   - return ret;
3466   -};
3467   -
3468   -dali.Builder.prototype.createOrGetDaliRenderer = function(name) {
3469   - "use strict";
3470   - consoleAssert( name in _whenBuilder.renderers, "Renderer not defined:" + name);
3471   -
3472   - var ret;
3473   - if("daliObject" in _whenBuilder.renderers[name]) {
3474   - ret = _whenBuilder.renderers[name].daliObject;
3475   - } else {
3476   - var data = _whenBuilder.renderers[name];
3477   -
3478   - ret = new dali.Renderer(this.createOrGetDaliGeometry(data.geometry),
3479   - this.createOrGetDaliMaterial(data.material));
3480   -
3481   - _whenBuilder.renderers[name].daliObject = ret;
3482   - }
3483   - return ret;
3484   -};
3485   -
3486   -dali.Builder.prototype.createActorTree = function(dictionary) {
3487   - "use strict";
3488   - var ret;
3489   - var i;
3490   - consoleAssert(typeof(dictionary) == "object", "createActorTree needs an object");
3491   -
3492   - if("type" in dictionary) {
3493   - if( dictionary.type in dali ) {
3494   - ret = new dali[ dictionary.type ]();
3495   - } else if( dictionary.type in _whenBuilder.templates ) {
3496   - var realType = _whenBuilder.templates[ dictionary.type ].type;
3497   - ret = new dali[ realType ]();
3498   - } else {
3499   - consoleAssert(0, "Cannot find type to create:" + dictionary.type);
3500   - }
3501   - } else {
3502   - consoleAssert("render" in dictionary, "'type' or 'render needed to create dali object");
3503   - ret = new dali.Actor();
3504   - }
3505   -
3506   - var tags = [];
3507   -
3508   - for(var prop in dictionary) {
3509   - if( prop === "actors" ) {
3510   - var actors = dictionary[prop];
3511   - for(i = 0; i < actors.length; i++) {
3512   - ret.add( this.createActorTree( actors[i] ) );
3513   - }
3514   - } else if( prop === "tag" ) {
3515   - tags.push(dictionary.tag);
3516   - } else if( prop === "tags" ) {
3517   - tags.concat(dictionary.tags);
3518   - } else if( prop === "type" ) {
3519   - // ignore
3520   - } else if( prop === "render") {
3521   - var renderer;
3522   - if(typeof(dictionary.render) == "string")
3523   - {
3524   - renderer = this.createOrGetDaliRenderer(dictionary.render);
3525   - ret.addRenderer(renderer);
3526   - }
3527   - else
3528   - {
3529   - for(i = 0; i < dictionary.render.length; i++) {
3530   - renderer = this.createOrGetDaliRenderer(dictionary.render[i]);
3531   - ret.addRenderer(renderer);
3532   - }
3533   - }
3534   - } else {
3535   - // a property set
3536   - ret[prop] = dictionary[prop];
3537   - }
3538   - }
3539   -
3540   - if(tags) {
3541   - for(i = 0; i < tags.length; i++) {
3542   - this.tag(ret, tags[i]);
3543   - }
3544   - }
3545   -
3546   - return ret;
3547   -};
3548   -
3549   -/**
3550   - * Adds actor defintions to stage.
3551   - */
3552   -dali.Builder.prototype.stage = function(/* actor definition array */) {
3553   - "use strict";
3554   - for(var i = 0; i < arguments.length; i++) {
3555   - dali.stage.add( this.createActorTree( arguments[i] ) );
3556   - }
3557   -};
3558   -
3559   -/**
3560   - * Adds actor defintions to stage.
3561   - */
3562   -dali.Builder.prototype.addTo = function(/* toActor, actor_definition_array */) {
3563   - "use strict";
3564   - consoleAssert(typeof(arguments[0]) == "string", "1st argument must be name");
3565   -
3566   - var i;
3567   -
3568   - for(i = 1; i < arguments.length; i++) {
3569   - consoleAssert(typeof(arguments[1]) == "object", "2nd and other arguments must be object");
3570   - }
3571   -
3572   - var actor;
3573   - if( arguments[0] == "stage" ) {
3574   - actor = dali.stage.getRootLayer();
3575   - }
3576   - else {
3577   - actor = dali.stage.getRootLayer().findChildByName( arguments[0] );
3578   - consoleAssert(actor, "Cannot find actor:" + arguments[0]);
3579   - }
3580   -
3581   - for(i = 1; i < arguments.length; i++) {
3582   - dali.stage.add( this.createActorTree( arguments[i] ) );
3583   - }
3584   -};
3585   -
3586   -/**
3587   - * Adds actor defintions to stage.
3588   - */
3589   -dali.Builder.prototype.GetRequiredKey = function(object, name, caller) {
3590   - if( name in object )
3591   - {
3592   - return object[name];
3593   - }
3594   - else
3595   - {
3596   - consoleAssert(0, "Object is missing key:'" + name + "'\n" + JSON.stringify(object));
3597   - return false;
3598   - }
3599   -};
3600   -
3601   -dali.Builder.prototype.image = function(dictionary) {
3602   - // image({name:"name"
3603   - //
3604   - // })
3605   - //
3606   - //
3607   - "use strict";
3608   - var d = {};
3609   - var name = this.GetRequiredKey(dictionary, "name");
3610   -
3611   - var shaderName = "imageShader";
3612   - if("shader" in dictionary) {
3613   - shaderName = dictionary.shader;
3614   - }
3615   - var samplers = [name + "_sampler"];
3616   - if("samplers" in dictionary) {
3617   - samplers = dictionary.samplers;
3618   - }
3619   -
3620   - var samplername = name + "_sampler";
3621   - d = {};
3622   - d[samplername] = {};
3623   - this.samplers(d);
3624   -
3625   - var matname = name + "_material";
3626   - d = {};
3627   - d[matname] = {shader: shaderName, textures: [ {image: this.GetRequiredKey(dictionary, "image"),
3628   - uniform: "sTexture",
3629   - sampler: samplername}]};
3630   - this.materials(d);
3631   -
3632   - var rendname = name + "_renderer";
3633   - d = {};
3634   - d[rendname] = {geometry: "imageGeometry", material: matname};
3635   - this.renderers(d);
3636   -
3637   - // store imageBuffers if they are missing for image
3638   - // (we're only using image data from browser buffers)
3639   - if( !(dictionary.image in _whenBuilder.imageBuffers) ) { // add to _whenBuilder
3640   - d = {};
3641   - d[dictionary.image] = { bufferName: dictionary.image };
3642   - this.imageBuffers(d);
3643   - }
3644   -
3645   - dictionary.type = "Actor";
3646   - dictionary.renderers = [rendname];
3647   -
3648   - return dictionary;
3649   -};
3650   -
3651   -////////////////////////////////////////////////////////////////////////////////
3652   -//
3653   -// dali toy Builder singleton
3654   -//
3655   -//
3656   -////////////////////////////////////////////////////////////////////////////////
3657   -var build = new dali.Builder();
3658   -
3659   -////////////////////////////////////////////////////////////////////////////////
3660   -//
3661   -//
3662   -//
3663   -////////////////////////////////////////////////////////////////////////////////
3664   -function _addTypeToDictionaryClosure(actorType) {
3665   - "use strict";
3666   - return function(dictionary) {
3667   - dictionary.type = actorType;
3668   - return dictionary;
3669   - };
3670   -}
3671   -
3672   -// @ todo; why is this global?
3673   -var HTML5Image = Image; // html5 also has "Image" which were about to overwrite
3674   -var _registry = new dali.TypeRegistry();
3675   -for(var _i = 0; _i < _registry.getTypeNameCount(); _i++) {
3676   - var _typename = _registry.getTypeName(_i);
3677   - this[_typename] = _addTypeToDictionaryClosure(_typename);
3678   -}
3679   -
3680   -function _actorArray(actorOrName) {
3681   - "use strict";
3682   - if(typeof actorOrName === "string") {
3683   - return [actorOrName];
3684   - } else {
3685   - return [actorOrName.name];
3686   - }
3687   -}
3688   -
3689   -function _actorIdList(a) {
3690   - "use strict";
3691   - var ret = [];
3692   - if("length" in a) {
3693   - for(var item in a) {
3694   - ret.push( _actorId(item) );
3695   - }
3696   - } else {
3697   - ret.push( _actorId(a) );
3698   - }
3699   - return ret;
3700   -}
3701   -
3702   -
3703   -function _functionName(fun) {
3704   - "use strict";
3705   - var ret = fun.toString();
3706   - ret = ret.substr("function ".length);
3707   - ret = ret.substr(0, ret.indexOf("("));
3708   - return ret;
3709   -}
3710   -
3711   -function _numberOrRaise(value, errorMessage) {
3712   - "use strict";
3713   - if(typeof value === "number") {
3714   - return value;
3715   - } else {
3716   - throw errorMessage;
3717   - }
3718   -}
3719   -
3720   -function _stringOrRaise(value, errorMessage) {
3721   - "use strict";
3722   - if(typeof value === "string") {
3723   - return value;
3724   - } else {
3725   - throw errorMessage;
3726   - }
3727   -}
3728   -
3729   -// Animate to
3730   -// to(value)
3731   -// to(value, delay, duration)
3732   -// to(value, delay, duration, interpolation)
3733   -// ie
3734   -// to([10,10,10]
3735   -// to([10,10,10], 0,3, "ease_in")),
3736   -function to() {
3737   - "use strict";
3738   - var ret = { animate: "animateTo",
3739   - value: null,
3740   - delay: 0,
3741   - duration: 0,
3742   - alpha: "linear"};
3743   -
3744   - ret.value = arguments[0]; // property value
3745   - if( arguments.length > 1 ) {
3746   - ret.delay = _numberOrRaise(arguments[1], "Delay must be a number");
3747   - }
3748   - if( arguments.length > 2 ) {
3749   - ret.duration = _numberOrRaise(arguments[2], "Duration must be a number");
3750   - }
3751   - if( arguments.length > 3 ) { // optional
3752   - ret.alpha = arguments[3];
3753   - }
3754   - return ret;
3755   -}
3756   -
3757   -// Animate by
3758   -// by(value)
3759   -// by(value, delay, duration)
3760   -// by(value, delay, duration, interpolation)
3761   -// ie
3762   -// by([10,10,10]
3763   -// by([10,10,10], 0,3, "ease_in")),
3764   -function by() {
3765   - "use strict";
3766   - var ret = { animate: "animateBy",
3767   - value: null,
3768   - delay: 0,
3769   - duration: 0,
3770   - alpha: "linear"};
3771   -
3772   - ret.value = arguments[0]; // property value
3773   - if( arguments.length > 1 ) {
3774   - ret.delay = _numberOrRaise(arguments[1], "Delay must be a number");
3775   - }
3776   - if( arguments.length > 2 ) {
3777   - ret.duration = _numberOrRaise(arguments[2], "Duration must be a number");
3778   - }
3779   - if( arguments.length > 3 ) { // optional
3780   - ret.alpha = arguments[3];
3781   - }
3782   - return ret;
3783   -}
3784   -
3785   -// Animate between
3786   -// between(fromValue, toValue)
3787   -// between(fromValue, toValue, delay, duration)
3788   -// between(fromValue, toValue, delay, duration, interpolation)
3789   -// ie
3790   -// between([10,10,10], [100,10,10]
3791   -// between([10,10,10], [100,10,10], 0,3, "ease_in")),
3792   -function between() {
3793   - "use strict";
3794   - var ret = { animate: "animateBy",
3795   - fromValue: null,
3796   - toValue: null,
3797   - delay: 0,
3798   - duration: 0,
3799   - alpha: "linear"};
3800   -
3801   - ret.value = arguments[0]; // property value
3802   - ret.value = arguments[1]; // property value
3803   - if( arguments.length > 2 ) {
3804   - ret.delay = _numberOrRaise(arguments[2], "Delay must be a number");
3805   - }
3806   - if( arguments.length > 3 ) {
3807   - ret.duration = _numberOrRaise(arguments[3], "Duration must be a number");
3808   - }
3809   -
3810   - if( arguments.length > 4 ) { // optional
3811   - ret.alpha = arguments[4];
3812   - }
3813   - return ret;
3814   -}
3815   -
3816   -// Animate path
3817   -// path(pathName)
3818   -// path(pathName, delay, duration)
3819   -// path(pathName, delay, duration, interpolation)
3820   -// ie
3821   -// path("path0", 0, 3, "linear")
3822   -function path() {
3823   - "use strict";
3824   - var ret = { animate: "path",
3825   - path: null,
3826   - forward: [1, 0, 0],
3827   - delay: 0,
3828   - duration: 0,
3829   - alpha: "linear"};
3830   -
3831   - ret.path = arguments[0]; // path
3832   - if( arguments.length > 1 ) {
3833   - ret.delay = _numberOrRaise(arguments[1], "Delay must be a number");
3834   - }
3835   - if( arguments.length > 2 ) {
3836   - ret.duration = _numberOrRaise(arguments[2], "Duration must be a number");
3837   - }
3838   -
3839   - if( arguments.length > 3 ) { // optional
3840   - ret.alpha = arguments[3];
3841   - }
3842   - return ret;
3843   -}
3844   -
3845   -// conditional animation
3846   -// when("myimage", condition("touch", "inside", 0, 100),
3847   -//
3848   -function condition(propertyName, conditionType, arg0, arg1)
3849   -{
3850   - "use strict";
3851   - var ret = { actors: [],
3852   - property: propertyName,
3853   - type: conditionType,
3854   - arg0: arg0,
3855   - arg1: arg1
3856   - };
3857   -
3858   - if(arg1 === undefined) {
3859   - ret.arg1 = 0.0; // make a float for the c++ call (ignored if irrelevant)
3860   - }
3861   -
3862   - return ret;
3863   -}
3864   -
3865   -// set animation
3866   -// set(actorOrListOrNone, signalName, animationDefition)
3867   -// ie
3868   -// set("myimage", "size", to([10,10,10], 0,3, "ease_in"),
3869   -// path(0,3, "ease_in", "path0"))
3870   -// set("size", to([10,10,10], 0,3, "ease_in")),
3871   -// between([0,0,0], [10,10,10], 0,3, "ease_in")))
3872   -// set(tagged("scrollitem), "position", path(0,3, "ease_in", "path0")),
3873   -// set(excludeFrom(tagged("scrollitem"), "myimage"), "position", path(0,3, "ease_in", "path0")),
3874   -function set() {
3875   - "use strict";
3876   - var ret = { action: "set",
3877   - actors: [],
3878   - property: null,
3879   - animation: []
3880   - };
3881   -
3882   - var index;
3883   - if( arguments.length === 3 ) { // then actor is specified somehow
3884   - ret.actors = _actorArray( arguments[0] );
3885   - ret.property = _stringOrRaise(arguments[1], "Property must be a string");
3886   - index = 2;
3887   - } else if( arguments.length === 2 ) { // actor is self (indicated in 'when' call)
3888   - ret.property = _stringOrRaise(arguments[0], "Property must be a string");
3889   - index = 1;
3890   - } else {
3891   - throw "set needs 2 or 3 arguments";
3892   - }
3893   -
3894   - for(var i = index; i < arguments.length; i++) {
3895   - ret.animation.push( arguments[i] );
3896   - }
3897   -
3898   - return ret;
3899   -}
3900   -
3901   -// set animation
3902   -// call(function, arg0, arg1)
3903   -// ie
3904   -// call(func)
3905   -// call(func, 10.0, "enable")
3906   -function call() {
3907   - "use strict";
3908   - var ret = { action: "call",
3909   - arguments: [],
3910   - func: null
3911   - };
3912   -
3913   - ret.func = arguments[0];
3914   -
3915   - for(var i = 1; i < arguments.length; i++) {
3916   - ret.arguments.push( arguments[i] );
3917   - }
3918   -
3919   - return ret;
3920   -}
3921   -
3922   -function then()
3923   -{
3924   - "use strict";
3925   - return [{ action: arguments[0],
3926   - parameters: arguments[1]}];
3927   -}
3928   -
3929   -function _actorNameList()
3930   -{
3931   - "use strict";
3932   - var names;
3933   - if(typeof arguments[0] === "function") {
3934   - var lookup = arguments[0]();
3935   - names = lookup[0];
3936   - } else if(typeof arguments[0] === "object") {
3937   - // or it can be the actual dali actor object
3938   - names = _actorArray(arguments[0].name);
3939   - } else if(typeof arguments[0] === "string") {
3940   - // or arg0,arg1 are the actor property
3941   - names = _actorArray(arguments[0]);
3942   - } else {
3943   - return names; // presume already actor name list
3944   - }
3945   - return names;
3946   -}
3947   -
3948   -var _buildDescription = {animations:{}, templates:{}};
3949   -
3950   -function _animation(a) {
3951   - if(a) {
3952   - return a;
3953   - } else {
3954   - return new dali.Animation(0);
3955   - }
3956   -}
3957   -
3958   -// function _makeActionCallback(func, args) {
3959   -// "use strict";
3960   -// return function(){
3961   -// var a;
3962   -// for(var i = 0; i < args.length; i++) {
3963   -// var d = args[i];
3964   -// if( d.action === "set" ) {
3965   -// for(var ai = 0; ai < d.actors.length; ai++) {
3966   -// if( d.property ) {
3967   -// apply(_animation,
3968   -// d.arguments[0].animate,
3969   -
3970   -// anim.push( [d.actors[ai]], d.property,
3971   -// }
3972   -// }
3973   -// }
3974   -
3975   -// var ret = { action: "set",
3976   -// actors: [],
3977   -// property: null,
3978   -// condition: null,
3979   -// animation: []
3980   -// };
3981   -
3982   -
3983   -// func.apply(null, args);
3984   -// };
3985   -// }
3986   -
3987   -function loop(on)
3988   -{
3989   - "use strict";
3990   - return { action: "loop",
3991   - value: on};
3992   -}
3993   -
3994   -function endAction(action)
3995   -{
3996   - "use strict";
3997   - return { action: "endAction",
3998   - value: action};
3999   -}
4000   -
4001   -function disconnectAction(action)
4002   -{
4003   - "use strict";
4004   - return { action: "disconnectAction",
4005   - value: action};
4006   -}
4007   -
4008   -
4009   -function _makeCallback(args) {
4010   - "use strict";
4011   - return function(){
4012   - var a;
4013   - var actors = _actorNameList( args[0] );
4014   - // args[1] is signal name
4015   - for(var i = 2; i < args.length; i++) {
4016   - var d = args[i];
4017   - if(d.action === "call") {
4018   - d.func.apply(null, d.arguments);
4019   - } else if(d.action === "loop") {
4020   - a = _animation(a);
4021   - a.setLooping( d.value );
4022   - } else if(d.action === "endAction") {
4023   - a = _animation(a);
4024   - a.setEndAction( d.value );
4025   - } else if(d.action === "disconnectAction") {
4026   - a = _animation(a);
4027   - a.setDisconnectAction( d.value );
4028   - } else if(d.action === "set") {
4029   - if( d.actors.length ) {
4030   - actors = d.actors;
4031   - }
4032   - for(var actori = 0; actori < actors.length; actori++) {
4033   - var actorName = actors[actori];
4034   - var root = dali.stage.getRootLayer();
4035   - var actor = root.findChildByName( actorName );
4036   - a = _animation(a);
4037   - for(var animi = 0; animi < d.animation.length; animi++) {
4038   - var anim = d.animation[animi];
4039   - var value = anim.value;
4040   - if(typeof value === "function") { // can be a function
4041   - value = value();
4042   - }
4043   - if(anim.animate === "animateTo") {
4044   - a.animateTo(actor, d.property, value, anim.alpha, anim.delay, anim.duration);
4045   - } else if(anim.animate === "animateBy") {
4046   - a.animateBy(actor, d.property, value, anim.alpha, anim.delay, anim.duration);
4047   - } else if(anim.animate === "animatePath") {
4048   - var pathData = anim.path;
4049   - var daliPath;
4050   - if(typeof pathData === "function") {
4051   - pathData = pathData();
4052   - }
4053   - if(typeof pathData === "string") {
4054   - if(pathData in _whenBuilder.paths) {
4055   - daliPath = _whenBuilder.paths[pathData];
4056   - } else {
4057   - throw "Path not known";
4058   - }
4059   - } else {
4060   - daliPath = new dali.Path();
4061   - daliPath.points = pathData;
4062   - dali.generateControlPoints(daliPath, 0.35); // @todo remove magic number?
4063   - }
4064   - _animation(a).animatePath(actor, daliPath, anim.forward, anim.alpha, anim.delay, anim.duration);
4065   - } else {
4066   - throw "";
4067   - }
4068   - } // for anims
4069   - } // for actors
4070   - }
4071   - }// for args
4072   -
4073   - // animation support?
4074   - // else if( d.action === "animate" ) {
4075   - // }
4076   -
4077   - // actions support??
4078   - // else if( d.action === "then" ) {
4079   - // if( d.actors.length ) {
4080   - // actors = d.actors;
4081   - // }
4082   -
4083   - if(a) {
4084   - a.play();
4085   - }
4086   - }; // closure function
4087   -} // _makeCallback
4088   -
4089   -
4090   -// doNow(<defaultActor>, ...)
4091   -//
4092   -// doNow("myimage",
4093   -// call(myfunction),
4094   -// call(myfunction, arg1),
4095   -// and("animation-ends"),
4096   -// set("myimage", "size", to([10,10,10]),
4097   -// to([10,10,10], 0,3, "ease_in")),
4098   -// path(0,3, "ease_in", "path0")),
4099   -// between([0,0,0], [10,10,10], 0,3, "ease_in")),
4100   -// to([0,0,0], 0, 3)
4101   -// set(tagged("scrollitem), path(0,3, "ease_in", "path0")),
4102   -// set(excludeFrom(tagged("scrollitem"), "myimage"), path(0,3, "ease_in", "path0")),
4103   -// endAction("bake"),
4104   -// discardAction("bake"),
4105   -// loop(true),
4106   -// then("myimage", "hide"),
4107   -// then("quit"),
4108   -// then("play", "myanim"),
4109   -// thenOnChild("myimage", "child", "hide"),
4110   -// animate("name"),
4111   -// animateTo("position",
4112   -// )
4113   -function doNow(args) {
4114   - "use strict";
4115   - var actor = args.shift();
4116   - args.unshift(""); // signal name
4117   - args.unshift(actor);
4118   - var cb = _makeCallback.apply(null, args);
4119   - cb();
4120   -}
4121   -
4122   -function _makeSensibleTouched(func, state) { // dali giving all mouse events on touched signal --- is this correct?? @todo
4123   - "use strict";
4124   - return function(actor, touch){
4125   - var doit = false;
4126   - for(var i = 0; i < touch.points.length; i++) {
4127   - if(touch.points[i].state === state) {
4128   - doit = true;
4129   - break;
4130   - }
4131   - }
4132   - if(doit) {
4133   - func.apply( null, arguments);
4134   - }
4135   - };
4136   -}
4137   -
4138   -// function _connectToSignal(actors, signalName, func) {
4139   -// "use strict";
4140   -// var root = dali.stage.getRootLayer();
4141   -// var f = func;
4142   -
4143   -// if( signalName === "touchedDown" ) { // fix as touched signal is really "mouseState"?
4144   -// f = _makeSensibleTouchedDown(func);
4145   -// signalName = "touch";
4146   -// }
4147   -
4148   -// for(var ai = 0; ai < actors.length; ai++) {
4149   -// var actor = root.findChildByName( actors[ai] );
4150   -// actor.connect( signalName, f );
4151   -// }
4152   -// }
4153   -
4154   -
4155   -// when("myimage", condition("touch", "inside", 0, 100),
4156   -// or
4157   -// when("myimage", "touch",
4158   -// call(myfunction),
4159   -// call(myfunction, arg1),
4160   -// and("animation-ends"),
4161   -// set("myimage", "size", to([10,10,10]),
4162   -// to([10,10,10], 0,3, "ease_in")),
4163   -// path(0,3, "ease_in", "path0")),
4164   -// between([0,0,0], [10,10,10], 0,3, "ease_in")),
4165   -// to([0,0,0], 0, 3)
4166   -// set(tagged("scrollitem), path(0,3, "ease_in", "path0")),
4167   -// set(excludeFrom(tagged("scrollitem"), "myimage"), path(0,3, "ease_in", "path0")),
4168   -// endAction("bake"),
4169   -// discardAction("bake"),
4170   -// loop(true),
4171   -// then("myimage", "hide"),
4172   -// then("quit"),
4173   -// then("play", "myanim"),
4174   -// thenOnChild("myimage", "child", "hide"),
4175   -// animate("name"),
4176   -// )
4177   -function when() {
4178   - "use strict";
4179   - var actors, property, index;
4180   - var signal = null;
4181   - var condition = null;
4182   -
4183   - // arg0 can be an actor lookup function; returning an actor array
4184   - actors = _actorNameList(arguments[0]);
4185   -
4186   - if(typeof arguments[1] === "string") {
4187   - // if string then its a signal
4188   - signal = arguments[1];
4189   - } else {
4190   - // if object then its a condition
4191   - condition = arguments[1];
4192   - // actors can be null which means use the actors in when() call
4193   - if(condition.actors === null) {
4194   - condition.actor = actors[0];
4195   - }
4196   - }
4197   -
4198   - var root;
4199   - var f;
4200   - var ai;
4201   - var actor;
4202   -
4203   - if(signal) {
4204   - // _connectToSignal( actors, signal, _makeCallback(arguments) );
4205   - root = dali.stage.getRootLayer();
4206   - f = _makeCallback(arguments);
4207   -
4208   - if( signal === "touchedDown" ) { // fix as touched signal is really "mouseState"?
4209   - f = _makeSensibleTouched(f, "DOWN");
4210   - signal = "touch";
4211   - }
4212   - if( signal === "touchedUp" ) { // fix as touched signal is really "mouseState"?
4213   - f = _makeSensibleTouched(f, "UP");
4214   - signal = "touch";
4215   - }
4216   - if( signal === "touchedMotion" ) { // fix as touched signal is really "mouseState"?
4217   - f = _makeSensibleTouched(f, "MOTION");
4218   - signal = "touch";
4219   - }
4220   - if( signal === "touchedLeave" ) { // fix as touched signal is really "mouseState"?
4221   - f = _makeSensibleTouched(f, "LEAVE");
4222   - signal = "touch";
4223   - }
4224   - if( signal === "touchedStationary" ) { // fix as touched signal is really "mouseState"?
4225   - f = _makeSensibleTouched(f, "STATIONARY");
4226   - signal = "touch";
4227   - }
4228   - if( signal === "touchedInterrupted" ) { // fix as touched signal is really "mouseState"?
4229   - f = _makeSensibleTouched(f, "INTERRUPTED");
4230   - signal = "touch";
4231   - }
4232   -
4233   - for(ai = 0; ai < actors.length; ai++) {
4234   - actor = root.findChildByName( actors[ai] );
4235   - actor.connect( signal, f );
4236   - }
4237   - }
4238   -
4239   - if(condition) {
4240   - // _connectToCondition( actors, condition, _makeCallback(arguments) );
4241   - root = dali.stage.getRootLayer();
4242   - f = _makeCallback(arguments);
4243   -
4244   - for(ai = 0; ai < actors.length; ai++) {
4245   - actor = root.findChildByName( actors[ai] );
4246   - actor.setPropertyNotification(condition.property,
4247   - condition.type, condition.arg0, condition.arg1,
4248   - f);
4249   - }
4250   - }
4251   -
4252   -// when("myimage", condition("touch", "inside", 0, 100),
4253   -// or
4254   -// when("myimage", "touch",
4255   -// ***
4256   -// dali.ActorWrapper.prototype.connect = function(signalName, callback) {
4257   -// if(d.action === "set") {
4258   -// var animationActors = d.actors;
4259   -// if( animationActors.length === 0 ) {
4260   -// animationActors = actors;
4261   -// }
4262   -// var a = new dali.Animation(0);
4263   -// // dali.AnimationWrapper.prototype.animateTo = function(object, propertyName, value, alphaFunction, delay, duration) {
4264   -// //dali.AnimationWrapper.prototype.animateBy = function(object, propertyName, value, alphaFunction, delay, duration) {
4265   -// //dali.AnimationWrapper.prototype.animatePath = function(object, pathObject, forward, alphaFunction, delay, duration) {
4266   -// for(var ai =0; ai < animationActors.length; ai++) {
4267   -// for(var animi =0; animi < d.animation; animi++) {
4268   -// var animEntry = d.animation[animi];
4269   -// if( d.animate == "animatePath") {
4270   -// a.animatePath(animationActors[ai], animEntry.path, animEntry.forward, animEntry.alpha,
4271   -// animEntry.delay, animEntry.duration);
4272   -
4273   -// } else if( d.animate == "animateBetween") {
4274   -// a.animateBetween(animationActors[ai], d.property,
4275   -// animEntry.fromValue, animEntry.toValue,
4276   -// animEntry.alpha, animEntry.delay, animEntry.duration);
4277   -// } else {
4278   -// // call animateTo,animateBy,
4279   -// a[animEntry.animate](animationActors[ai], d.property, animEntry.value, animEntry.alpha,
4280   -// animEntry.delay, animEntry.duration);
4281   -// }
4282   -// }
4283   -// }
4284   -
4285   - // var animiations = [];
4286   -
4287   - // for(var i = 2; i < arguments.length; i++) {
4288   - // var d = arguments[i];
4289   - // if( d.action === "set" ) {
4290   - // // var ret = { action: "set",
4291   - // // actors: [],
4292   - // // property: null,
4293   - // // condition: null,
4294   - // // animation: []
4295   - // // };
4296   - // for(var ai = 0; ai < d.actors.length; ai++) {
4297   - // d.actors[ai]
4298   - // }
4299   - // }
4300   -
4301   - // for(var j = 0; j < d.length; j++) {
4302   - // if(signal) { // then its signal actions
4303   - // d.name = signal;
4304   - // templates[actorName].signals.push(d[j]);
4305   - // } else { // its property notifications
4306   - // d.condition = condition;
4307   - // d.property = property;
4308   - // templates[actorName].notifications.push(d[j]);
4309   -
4310   - // index = 2;
4311   -
4312   - // // but we could also be specifying a property notification so...
4313   - // //
4314   - // var condition;
4315   - // var value;
4316   - // if(typeof arguments[index] === "string") {
4317   - // var lowerCase = arguments[index].toLowerCase();
4318   - // if("insideoutsidegreaterthanlessthan".indexOf(lowerCase)) {
4319   - // property = signal;
4320   - // signal = null;
4321   - // condition = lowerCase;
4322   - // index += 1;
4323   - // value = arguments[index];
4324   - // index += 1;
4325   - // if( condition === "inside" || condition === "outside" ) {
4326   - // assert( value.length === 2, "Inside/Outside condition must specify min,max");
4327   - // assert(typeof value[0] === "number" && typeof value[1] === "number", "Conditions must be numbers");
4328   - // }
4329   - // if(condition === "lessthan" || condition === "greaterthan") {
4330   - // assert(value.length === 1, "LessThan/GreaterThan condition must specify one value");
4331   - // assert(typeof value === "number", "Conditions must be numbers");
4332   - // }
4333   - // }
4334   - // }
4335   -
4336   - // // The reset are objects created by the set or call function
4337   - // var templates = _buildDescription.templates;
4338   -
4339   - // for( var actorName in actors ) {
4340   - // // the other args come from functions that generate json
4341   - // for(var i = index; i < arguments.length; i++) {
4342   - // var d = arguments[i];
4343   - // for(var j = 0; j < d.length; j++) {
4344   - // if(signal) { // then its signal actions
4345   - // d.name = signal;
4346   - // templates[actorName].signals.push(d[j]);
4347   - // } else { // its property notifications
4348   - // d.condition = condition;
4349   - // d.property = property;
4350   - // templates[actorName].notifications.push(d[j]);
4351   - // }
4352   - // }
4353   - // }
4354   - // }
4355   -
4356   -} // when()
4357   -
4358   -
4359   -// function animation() {
4360   -// "use strict";
4361   -
4362   -// var name = arguments[0];
4363   -// var anim = {};
4364   -// for(var i = 1; i < arguments.length; i++) {
4365   -// var d = arguments[i];
4366   -
4367   -// if(d.length === undefined) { // then array from set
4368   -
4369   -// } else {
4370   -// extend( anim, d );
4371   -// }
4372   -// }
4373   -
4374   -// }
4375   -
4376   -
4377   -//
4378   -// pseudo dali DSL
4379   -//
4380   -
4381   -// stage(
4382   -// layer({
4383   -// width: 400,
4384   -// tag: "scroll"
4385   -// actors:[
4386   -// image({filename:"animage,
4387   -// name: "myimage",
4388   -// tag: "scrollitem",
4389   -// width: 200,
4390   -// height: 100}),
4391   -// text({text:"sometext,
4392   -// tag: "scrollitem",
4393   -// width:10})
4394   -// ]
4395   -// )
4396   -// )
4397   -
4398   -// when("myimage", condition("touch", "inside", 0, 100),
4399   -// or
4400   -// when("myimage", "touch",
4401   -// call(myfunction),
4402   -// call(myfunction, arg1),
4403   -// and("animation-ends"),
4404   -// set("myimage", "size", to([10,10,10]),
4405   -// to([10,10,10], 0,3, "ease_in")),
4406   -// path(0,3, "ease_in", "path0")),
4407   -// between([0,0,0], [10,10,10], 0,3, "ease_in")),
4408   -// to([0,0,0], 0, 3)
4409   -// set(tagged("scrollitem), path(0,3, "ease_in", "path0")),
4410   -// set(excludeFrom(tagged("scrollitem"), "myimage"), path(0,3, "ease_in", "path0")),
4411   -// then("myimage", "hide"),
4412   -// then("quit"),
4413   -// then("play", "myanim"),
4414   -// thenOnChild("myimage", "child", "hide"),
4415   -// animate("name"),
4416   -// )
4417   -
4418   -// constraints?
4419   -// on("myimage", "position", between(0, 100),
4420   -
4421   -
4422   -
4423   -//------------------------------------------------------------------------------
4424   -// test helper functions
4425   -//------------------------------------------------------------------------------
4426   -
4427   -function clear() {
4428   - var root = dali.stage.rootRotationActor;
4429   - var children = root.getChildren();
4430   -
4431   - for (var i = 0, len = children.length; i < len; i++) {
4432   - root.remove(children[i]);
4433   - children[i].delete(); // delete the wrapper
4434   - }
4435   - // root.delete(); // wrapper
4436   -}
4437   -
4438   -function square(color, size) {
4439   - var a = dali.createSolidColorActor(color, 0, [0, 0, 0, 1], 0);
4440   - a.size = size;
4441   - return a;
4442   -}
4443   -
4444   -function threeSquares() {
4445   - var root = dali.stage.rootRotationActor;
4446   -
4447   - var a = square([1, 0, 0, 1], [200, 200, 0]);
4448   - a.name = "red";
4449   - a.position = [-100, 0, -20];
4450   - root.add(a);
4451   - a.delete();
4452   -
4453   - a = square([0, 1, 0, 1], [200, 200, 0]);
4454   - a.name = "green";
4455   - a.position = [0, -100, -10];
4456   - root.add(a);
4457   - a.delete();
4458   -
4459   - a = square([0, 0, 1, 1], [200, 200, 0]);
4460   - a.name = "blue";
4461   - a.position = [0, -100, 0];
4462   - root.add(a);
4463   - a.delete();
4464   -
4465   - // root.delete();
4466   -}
4467   -
4468   -function threeSquares2() {
4469   - var root = dali.stage.rootRotationActor;
4470   -
4471   - var red = square([1, 0, 0, 1], [200, 200, 0]);
4472   - red.name = "red";
4473   - red.position = [-100, 0, 20];
4474   - red.size = [10, 10, 0];
4475   - root.add(red);
4476   -
4477   - var green = square([0, 1, 0, 1], [200, 200, 0]);
4478   - green.name = "green";
4479   - green.position = [0, -100, 0];
4480   - green.orientation = [0, 0, 20];
4481   - green.size = [200, 200, 0];
4482   -
4483   - var blue = square([0, 0, 1, 1], [200, 200, 0]);
4484   - blue.name = "blue";
4485   - blue.position = [0, 0, 10];
4486   - blue.parentOrigin = [0, 0, 0];
4487   - blue.size = [100, 100, 0];
4488   - green.add(blue);
4489   - root.add(green);
4490   -
4491   - red.delete(); // wrapper
4492   - green.delete(); // wrapper
4493   - blue.delete(); // wrapper
4494   -
4495   - // root.delete();
4496   -}
4497   -
4498   -function collectByName(collection) {
4499   - var root = dali.stage.rootRotationActor;
4500   - if (collection === undefined) {
4501   - collection = {};
4502   - }
4503   - var op = function(actor) {
4504   - if (actor.name) {
4505   - collection[actor.name] = actor;
4506   - }
4507   - return true;
4508   - };
4509   -
4510   - dali.debug.depthVisit(root, op, true);
4511   -
4512   - return collection;
4513   -}
4514   -
4515   -
4516   -function first() {
4517   - return dali.stage.getRenderTaskList().getTask(0);
4518   -}
4519   -
4520   -function second() {
4521   - return dali.stage.getRenderTaskList().getTask(1);
4522   -}
4523   -
4524   -function third() {
4525   - return dali.stage.getRenderTaskList().getTask(2);
4526   -}
4527   -
4528   -function firstCamera() {
4529   - return dali.stage.getRenderTaskList().getTask(0).getCameraActor();
4530   -}
4531   -
4532   -function secondCamera() {
4533   - return dali.stage.getRenderTaskList().getTask(1).getCameraActor();
4534   -}
4535   -
4536   -function thirdCamera() {
4537   - return dali.stage.getRenderTaskList().getTask(2).getCameraActor();
4538   -}
4539   -
4540   -function resize(w, h) {
4541   - dali.setCanvasSize(w, h);
4542   -}
4543   -
4544   -function compareProperties(a1, a2) {
4545   - var props1 = a1.getProperties();
4546   - var props2 = a2.getProperties();
4547   - var props = new Set();
4548   - for (var i = 0, len = props1.size(); i < len; i++) {
4549   - props.add(props1.get(i));
4550   - }
4551   -
4552   - for (i = 0, len = props2.size(); i < len; i++) {
4553   - var n = props2.get(i);
4554   - if (!props.has(n)) {
4555   - console.log("A1 missing :" + n);
4556   - }
4557   - }
4558   -
4559   - var doit = function(item) {
4560   - var v1 = a1[item]; // a1.getProperty(item);
4561   - var v2 = a2[item]; // a2.getProperty(item);
4562   -
4563   - var isSame;
4564   -
4565   - if (Array.isArray(v1)) {
4566   - isSame = (v1.length === v2.length) && v1.every(function(element, index) {
4567   - return element === v2[index];
4568   - });
4569   - } else {
4570   - isSame = v1 === v2;
4571   - }
4572   -
4573   - if (!isSame) {
4574   - console.log(item + ": A1= " + v1 + " A2= " + v2);
4575   - }
4576   - };
4577   -
4578   - props.forEach(doit);
4579   -}
4580   -
4581   -var EPSILON = 0.005;
4582   -
4583   -function compareArrays(a, b) {
4584   - "use strict";
4585   - if (Array.isArray(a) && Array.isArray(b)) {
4586   - if (a.length === b.length) {
4587   - for (var i = 0, len = a.length; i < len; i++) {
4588   - if (Array.isArray(a[i])) {
4589   - if (Array.isArray(b[i])) {
4590   - if (!compareArrays(a[i], b[i])) {
4591   - return false;
4592   - }
4593   - } else {
4594   - return false;
4595   - }
4596   - } else {
4597   - if (typeof (a[i]) === "number") {
4598   - if (typeof (b[i]) !== "number") {
4599   - return false;
4600   - } else {
4601   - if (Math.abs(a[i]) > Math.abs(b[i]) + EPSILON ||
4602   - Math.abs(a[i]) < Math.abs(b[i]) - EPSILON) {
4603   - return false;
4604   - }
4605   - }
4606   - } else {
4607   - if (a[i] !== b[i]) {
4608   - return false;
4609   - }
4610   - }
4611   - }
4612   - }
4613   - return true;
4614   - }
4615   - }
4616   - return false;
4617   -}
4618   -
4619   -function countAllProperties() {
4620   - var count = 0;
4621   - var tr = new dali.TypeRegistry();
4622   - var names = tr.getTypeNames();
4623   - for (var i = 0, len = names.size(); i < len; i++) {
4624   - var ti = tr.getTypeInfo(names.get(i));
4625   - var props = ti.getProperties();
4626   - count += props.size();
4627   - }
4628   - return count;
4629   -}
4630   -
4631   -function native2ascii(str) {
4632   - "use strict";
4633   - // really this function allows only GLSL permittable chars
4634   - var out = "";
4635   - for (var i = 0; i < str.length; i++) {
4636   - if ( 0x20 <= str.charCodeAt(i) && str.charCodeAt(i) <= 0x7E) {
4637   - // normal characters
4638   - out += str.charAt(i);
4639   - } else if( 0x9 <= str.charCodeAt(i) && str.charCodeAt(i) <= 0xD) {
4640   - // new lines and tabs
4641   - out += str.charAt(i);
4642   - }
4643   - }
4644   - return out;
4645   -}
4646   -
4647   -
4648   -var getGL = function() {
4649   - return canvas.getContext("webgl");
4650   -};
4651   -
4652   -var getAnimation = function() {
4653   - "use strict";
4654   - return animationList[animationSelectionIndex].animation;
4655   -};
4656   -
4657   -var getActor = function() {
4658   - "use strict";
4659   - return eventHandler.touchedActor;
4660   -};
4661   -
4662   -
4663   -//------------------------------------------------------------------------------
4664   -// Unit test class
4665   -//------------------------------------------------------------------------------
4666   -function Test() {
4667   - "use strict";
4668   -}
4669   -
4670   -Test.prototype.hierarchy = function() {
4671   - "use strict";
4672   - console.log("test_hierarchy...");
4673   -
4674   - // function onTouched(actor) {
4675   - // // console.log("touched " + actor.$$.ptr + " " + actor.position);
4676   - // eventHandler.onTouched(actor);
4677   - // }
4678   -
4679   - var actor = new dali.Actor();
4680   - actor.parentOrigin = [0.5, 0.5, 0.5];
4681   - actor.anchorPoint = [0.5, 0.5, 0.5];
4682   - actor.text = "actor";
4683   - actor.name = actor.text;
4684   - actor.size = [100, 100, 1];
4685   - actor.position = [0, 0, 10];
4686   - dali.stage.add(actor);
4687   -
4688   - var hello = new dali.Actor();
4689   - // hello.connect("touch", onTouched);
4690   - hello.text = "hello";
4691   - hello.name = hello.text;
4692   - actor.add(hello);
4693   -
4694   - var hellochild = new dali.Actor();
4695   - // hellochild.connect("touch", onTouched);
4696   - hellochild.text = "hello-child";
4697   - hellochild.name = hellochild.text;
4698   - hello.add(hellochild);
4699   -
4700   - var hellochild2 = new dali.Actor();
4701   - // hellochild2.connect("touch", onTouched);
4702   - hellochild2.text = "hello-child2";
4703   - hellochild2.name = hellochild2.text;
4704   - hello.add(hellochild2);
4705   -
4706   - var hellochildchild = new dali.Actor();
4707   - // hellochildchild.connect("touch", onTouched);
4708   - hellochildchild.text = "hello-child-child1";
4709   - hellochildchild.name = "hello-child-child1";
4710   - hellochildchild.name = hellochildchild.text;
4711   - hellochild.add(hellochildchild);
4712   -
4713   -
4714   - var depthfirst = actor.findAllChildren();
4715   -
4716   - assert(actor.getChildCount() === 1);
4717   - // assert(actor.getChildAt(0).text === "hello");
4718   - // assert(actor.findChildByName("hello-child-child1").text = "hello-child-child1");
4719   - // assert(hello.getParent().text === "actor");
4720   - // assert(depthfirst[depthfirst.length - 1].text === "hello-child2");
4721   -
4722   - var directChildren = actor.directChildren();
4723   -
4724   - assert(directChildren.length === 1);
4725   - assert(directChildren[0].getId() === hello.getId());
4726   -
4727   - actor.position = [100, 100, 0];
4728   -
4729   - var root = dali.stage.rootRotationActor;
4730   -
4731   - actor.remove(hello);
4732   - assert(actor.getChildCount() === 0);
4733   -
4734   - actor.add(hello);
4735   - assert(actor.getChildCount() === 1);
4736   -
4737   - var rootLayerCount = root.getChildCount();
4738   - dali.stage.remove(actor); // check these don't assert
4739   - assert(root.getChildCount() === rootLayerCount - 1);
4740   -
4741   - dali.stage.add(actor);
4742   - assert(root.getChildCount() === rootLayerCount);
4743   -
4744   - assert(root.findChildByName("none") === null);
4745   -
4746   - // actor.connect("touch", onTouched);
4747   -
4748   - // var inserted = new dali.TextActor(); // TextActor no more RIP
4749   - // inserted.parentOrigin = [0.5, 0.5, 0.5];
4750   - // inserted.anchorPoint = [0.5, 0.5, 0.5];
4751   - // inserted.text = "inserted";
4752   - // inserted.name = inserted.text;
4753   - // inserted.size = [100, 100, 1];
4754   - // inserted.position = [0, 0, 50];
4755   - // actor.insert(1, inserted);
4756   - // assert(actor.getChildAt(1).text === "inserted");
4757   -
4758   - clear();
4759   - console.log(" -> ok test_hierarchy");
4760   -};
4761   -
4762   -Test.prototype.registerProperty = function() {
4763   - "use strict";
4764   - console.log("test_registerPropery...");
4765   - var s = dali.stage;
4766   - var root = s.rootRotationActor;
4767   -
4768   - var another = new dali.Actor();
4769   - another.parentOrigin = [0.5, 0.5, 0.5];
4770   - another.anchorPoint = [0.5, 0.5, 0.5];
4771   - another.text = "peppa";
4772   - another.name = another.text;
4773   - another.size = [100, 100, 1];
4774   - another.position = [-50, 100, 0];
4775   - root.add(another);
4776   -
4777   - var c = root.getChildAt(root.getChildCount() - 1);
4778   - //var n = c.getChildCount();
4779   - var p = c.getParent();
4780   - assert(p.getId() == root.getId());
4781   -
4782   - var matrix = c.worldMatrix;
4783   -
4784   - assert(matrix.length === 16);
4785   -
4786   - // todo - no longer supported (?)
4787   - // another.registerProperty("data_output", true);
4788   - // assert(another.getPropertyTypeFromName("data_output") === "BOOLEAN");
4789   - // assert(another.data_output === true);
4790   - // another.data_output = false;
4791   - // assert(another.data_output === false);
4792   - // dali.__updateOnce();
4793   - // another.data_output = 2.5;
4794   - // assert(another.data_output === 2.5);
4795   - // assert(another.getPropertyTypeFromName("data_output") === "FLOAT");
4796   -
4797   - clear();
4798   - console.log(" -> ok test_registerPropery");
4799   -};
4800   -
4801   -Test.prototype.js_math = function() {
4802   - console.log("test_js_math...");
4803   - assert(dali.vectorLength([1, 2, 3, 4]) === Math.sqrt(1 * 1 + 2 * 2 + 3 * 3));
4804   - assert(dali.vectorLengthSquared(dali.normalize([0, 0, 0, 1])) === 0);
4805   -
4806   - // for(var f=0; f < 6; f+=1)
4807   - // {
4808   - var f = 2;
4809   - assert(1 === dali.vectorLengthSquared(dali.normalize([Math.cos(f) * 10.0,
4810   - Math.cos(f + 1.0) * 10.0,
4811   - Math.cos(f + 2.0) * 10.0,
4812   - 1.0
4813   - ])));
4814   -
4815   - function assertArray(a, b, epsilon) {
4816   - assert(a.length === b.length);
4817   - for (var i = 0, len = a.length; i < len; ++i) {
4818   - assert(a[i] > b[i] - epsilon && a[i] < b[i] + epsilon);
4819   - }
4820   - }
4821   -
4822   - assertArray(dali.axisAngleToQuaternion([1.0, 2.0, 3.0, Math.PI / 3.0, Math.PI / 2.0]), [0.189, 0.378, 0.567, 0.707], 0.001);
4823   -
4824   - assertArray(dali.quaternionToAxisAngle([1.1, 3.4, 2.7, 0.932]), [3.03, 9.38, 7.45, 0.74],
4825   - 0.01);
4826   -
4827   - assertArray(dali.vectorCross([0, 1, 0], [0, 0, 1]), [1, 0, 0], 0.001);
4828   -
4829   - assertArray(dali.vectorAdd([1, 2, 3], [2, 3, 4], [1, 1, 1]), [4, 6, 8], 0.001);
4830   -
4831   - var mq = dali.vectorAdd(dali.vectorCross([0.045, 0.443, 0.432], [0.612, 0.344, -0.144]),
4832   - dali.vectorByScalar([0.612, 0.344, -0.144], 0.784),
4833   - dali.vectorByScalar([0.045, 0.443, 0.432], 0.697));
4834   -
4835   - assertArray(dali.quatByQuat([0.045, 0.443, 0.432, 0.784], [0.612, 0.344, -0.144, 0.697]), [mq[0], mq[1], mq[2], (0.784 * 0.697) - dali.vectorDot([0.045, 0.443, 0.432], [0.612, 0.344, -0.144])],
4836   - 0.001);
4837   -
4838   - clear();
4839   - console.log(" -> ok test_js_math");
4840   -};
4841   -
4842   -Test.prototype.getset = function() {
4843   - "use strict";
4844   - console.log("test_getset...");
4845   - threeSquares();
4846   - var col = {};
4847   - collectByName(col);
4848   - var actor = col.red;
4849   - var p = actor.position;
4850   - actor.position = [1, 1, 1];
4851   - assert(compareArrays(actor.position, [1, 1, 1]));
4852   - actor.position = [3, 3, 3];
4853   - assert(compareArrays(actor.position, [3, 3, 3]));
4854   - actor.position = p;
4855   -
4856   - clear();
4857   - console.log(" -> ok test_getset");
4858   -};
4859   -
4860   -Test.prototype.animation_spline = function() {
4861   - "use strict";
4862   - console.log("test_animation_spline...");
4863   - threeSquares();
4864   - var col = {};
4865   - collectByName(col);
4866   - var actor = col.red;
4867   -
4868   - var a = new dali.Animation(0);
4869   - var path = new dali.Path();
4870   -
4871   - path.points = [
4872   - [-150, -50, 0],
4873   - [0.0, 70.0, 0.0],
4874   - [190.0, -150.0, 0.0]
4875   - ];
4876   -
4877   - assert(compareArrays(path.points, [
4878   - [-150, -50, 0],
4879   - [0.0, 70.0, 0.0],
4880   - [190.0, -150.0, 0.0]
4881   - ]));
4882   -
4883   - dali.generateControlPoints(path, 0.35);
4884   -
4885   - assert(compareArrays(path.controlPoints, [
4886   - [-97.5, -8, 0],
4887   - [-66.94940948486328, 76.16658020019531, 0],
4888   - [101.31224060058594, 60.66832733154297, 0],
4889   - [123.5, -73, 0]
4890   - ]));
4891   -
4892   - a.setDuration(3);
4893   - a.animatePath(actor, path, [1, 0, 0], dali.AlphaFunction.LINEAR, 0, 3);
4894   - a.play();
4895   -
4896   - function checkPos() {
4897   - assert(actor.position = path.points[2]);
4898   - clear();
4899   - actor.delete();
4900   - path.delete();
4901   - a.delete();
4902   - console.log(" -> ok test_animation_spline");
4903   - }
4904   -
4905   - window.setTimeout(checkPos, 4000);
4906   -};
4907   -
4908   -Test.prototype.animation = function() {
4909   - "use strict";
4910   - console.log("test_animation...");
4911   - threeSquares();
4912   - var col = {};
4913   - collectByName(col);
4914   - var actor = col.red;
4915   -
4916   - var a = new dali.Animation(0);
4917   - a.setDuration(3);
4918   - a.animateTo(actor, "position", [20, 0, 0], dali.AlphaFunction.LINEAR, 0, 3);
4919   - a.play();
4920   -
4921   - function checkAnimateBetween() {
4922   - assert(actor.position = [0, 0, -30]);
4923   - clear();
4924   - a.delete();
4925   - actor.delete();
4926   -
4927   - console.log(" -> ok test_animation");
4928   - }
4929   -
4930   - function checkAnimateBy() {
4931   - assert(actor.position = [120, 100, 0]);
4932   -
4933   - a.clear();
4934   - a.animateBetween(actor,
4935   - "position", [ [ 0, [10,20,30] ],
4936   - [ 1.0,[0, 0, -30] ] ],
4937   - "linear",
4938   - 0,
4939   - 3,
4940   - "linear");
4941   - a.play();
4942   - window.setTimeout(checkAnimateBetween, 4000);
4943   - }
4944   -
4945   - function checkAnimateTo() {
4946   - assert(actor.position = [20, 0, 0]);
4947   - actor.position = [100, 100, 0];
4948   -
4949   - a.clear(); // var a = new dali.Animation(0);
4950   - a.setDuration(3);
4951   - a.animateBy(actor, "position", [20, 0, 0], dali.AlphaFunction.LINEAR, 0, 3);
4952   - a.play();
4953   -
4954   - window.setTimeout(checkAnimateBy, 4000);
4955   - }
4956   -
4957   - window.setTimeout(checkAnimateTo, 4000);
4958   -};
4959   -
4960   -Test.prototype.onePane = function() {
4961   - var w = dali.canvas.width;
4962   - var h = dali.canvas.height;
4963   - var col = dali.getClearColor(0);
4964   - dali.onePane();
4965   - dali.setFrontView(0, 0, 0, w, h);
4966   - dali.setClearColor(0, col);
4967   -};
4968   -
4969   -Test.prototype.threePane = function() {
4970   - var w = dali.canvas.width;
4971   - var h = dali.canvas.height;
4972   - dali.threePane();
4973   - dali.setClearColor(0, [0.4, 0, 0, 1]);
4974   - dali.setClearColor(1, [0, 0.4, 0, 1]);
4975   - dali.setClearColor(2, [0, 0, 0.4, 1]);
4976   - dali.setFrontView(0, 0, 0, w / 2 - 5, h);
4977   - dali.setTopView(1, w / 2, 0, w / 2, h / 2 - 5);
4978   - dali.setRightView(2, w / 2, h / 2 + 5, w / 2, h / 2 - 5);
4979   -};
4980   -
4981   -Test.prototype.twoPane = function() {
4982   - var w = dali.canvas.width;
4983   - var h = dali.canvas.height;
4984   - dali.twoPane();
4985   - dali.setFrontView(0, 0, 0, w / 2 - 10, h);
4986   - dali.setTopView(1, 210, 0, w / 2 - 10, h);
4987   - dali.setClearColor(0, [0.4, 0, 0, 1]);
4988   - dali.setClearColor(1, [0, 0.4, 0, 1]);
4989   -};
4990   -
4991   -Test.prototype.views = function() {
4992   - "use strict";
4993   - console.log("test_views");
4994   -
4995   - var w = dali.canvas.width;
4996   - var h = dali.canvas.height;
4997   - var col = dali.getClearColor(0);
4998   - console.log(col);
4999   -
5000   - function one() {
5001   - dali.onePane();
5002   - dali.setFrontView(0, 0, 0, w, h);
5003   - dali.setClearColor(0, col);
5004   - }
5005   -
5006   - function three() {
5007   - dali.threePane();
5008   - dali.setClearColor(0, [0.4, 0, 0, 1]);
5009   - dali.setClearColor(1, [0, 0.4, 0, 1]);
5010   - dali.setClearColor(2, [0, 0, 0.4, 1]);
5011   - dali.setFrontView(0, 0, 0, w / 2 - 5, h);
5012   - dali.setTopView(1, w / 2, 0, w / 2, h / 2 - 5);
5013   - dali.setRightView(2, w / 2, h / 2 + 5, w / 2, h / 2 - 5);
5014   -
5015   - window.setTimeout(one, 1000);
5016   - }
5017   -
5018   - function two() {
5019   - dali.twoPane();
5020   - dali.setFrontView(0, 0, 0, w / 2 - 10, h);
5021   - dali.setTopView(1, 210, 0, w / 2 - 10, h);
5022   - dali.setClearColor(0, [0.4, 0, 0, 1]);
5023   - dali.setClearColor(1, [0, 0.4, 0, 1]);
5024   -
5025   - window.setTimeout(three, 1000);
5026   - }
5027   -
5028   - one();
5029   -
5030   - window.setTimeout(two, 1000);
5031   -};
5032   -
5033   -Test.prototype.blinking = function() {
5034   - "use strict";
5035   - var layer = new dali.Layer();
5036   - layer.name = "frameLayer";
5037   - dali.stage.add(layer);
5038   -
5039   - var a = dali.createSolidColorActor([0.5, 0.5, 0.5, 1],
5040   - false, [0, 0, 0, 1],
5041   - 0);
5042   - a.size = [100,100,1];
5043   -
5044   - layer.add(a);
5045   -
5046   - var camera = firstCamera();
5047   -
5048   - camera.position = [ camera.position[0]+10, camera.position[1]+20, camera.position[2] + 10 ];
5049   -
5050   - layer.delete(); // wrapper
5051   - a.delete(); // wrapper
5052   - camera.delete(); // wrapper
5053   -};
5054   -
5055   -Test.prototype.uniformMetaData = function() {
5056   - for(var i = 0; i < shaderSources.length; i++) {
5057   - console.log(dali.uniformMetaData(shaderSources[i].vertex, shaderSources[i].fragment));
5058   - }
5059   -};
5060   -
5061   -Test.prototype.signals = function() {
5062   - "use strict";
5063   - console.log("test_signals...");
5064   -
5065   - function onStage() {
5066   - console.log(" -> ok test signals");
5067   - //eventHandler.onTouched(actor);
5068   - }
5069   -
5070   - var actor = new dali.Actor();
5071   - actor.parentOrigin = [0.5, 0.5, 0.5];
5072   - actor.anchorPoint = [0.5, 0.5, 0.5];
5073   - actor.text = "actor";
5074   - actor.name = actor.text;
5075   - actor.size = [100, 100, 1];
5076   - actor.position = [0, 0, 10];
5077   -
5078   - actor.connect("on-stage", onStage);
5079   -
5080   - dali.stage.add(actor);
5081   -};
5082   -
5083   -Test.prototype.shaderInfo = function() {
5084   - "use strict";
5085   - var info = new dali.ShaderInfo();
5086   -
5087   - var vertex;
5088   - var fragment;
5089   -
5090   - vertex = "\n" +
5091   - "attribute mediump vec3 aPosition;\n" +
5092   - "attribute mediump vec2 aTexCoord;\n" +
5093   - "varying mediump vec2 vTexCoord;\n" +
5094   - "uniform mediump vec3 uSize;\n" +
5095   - "// uniform mediump vec3 unusedUniform;\n" +
5096   - "uniform mediump mat4 uModelView;\n" +
5097   - "uniform mediump mat4 uProjection;\n" +
5098   - "\n" +
5099   - "void main(void)\n" +
5100   - "{\n" +
5101   - " gl_Position = uProjection * uModelView * vec4(aPosition, 1.0);\n" +
5102   - " gl_Position.xyz *= uSize;\n" +
5103   - " vTexCoord = aTexCoord;\n" +
5104   - "}\n";
5105   -
5106   - fragment = "precision mediump float;\n" +
5107   - "\n" +
5108   - "uniform sampler2D sTexture;\n" +
5109   - "uniform mediump vec4 uMyColor; // {min:[0,0,0,0], max:[1,1,1,1]}\n" +
5110   - "uniform mediump vec4 uColor;\n" +
5111   - "varying mediump vec2 vTexCoord;\n" +
5112   - "\n" +
5113   - "void main()\n" +
5114   - "{\n" +
5115   - " gl_FragColor = texture2D( sTexture, vTexCoord ) * uColor * uMyColor;\n" +
5116   - "}\n";
5117   -
5118   - var canvas = document.createElement("canvas");
5119   - var meta = info.fromCompilation(canvas.getContext("webgl"), vertex, fragment);
5120   -
5121   - var uniforms = { uSize: 1,
5122   - uModelView: 1,
5123   - uProjection: 1,
5124   - uMyColor: 1,
5125   - uColor: 1
5126   - };
5127   -
5128   - assert(meta.hasError === false);
5129   - var name;
5130   - var metaUniformName;
5131   - var found;
5132   -
5133   - for(name in uniforms) {
5134   - found = false;
5135   - for(metaUniformName in meta.uniforms) {
5136   - if(metaUniformName === name) {
5137   - found = true;
5138   - break;
5139   - }
5140   - }
5141   - assert(found, "missing:" + name);
5142   - }
5143   -
5144   - assert(compareArrays(meta.uniformUISpec.uMyColor.min, [0, 0, 0, 0]));
5145   - assert(compareArrays(meta.uniformUISpec.uMyColor.max, [1, 1, 1, 1]));
5146   -
5147   -
5148   - meta = info.fromRegEx(vertex, fragment);
5149   -
5150   - assert(meta.hasError === false);
5151   -
5152   - for(name in uniforms) {
5153   - found = false;
5154   - for(metaUniformName in meta.uniforms) {
5155   - if(metaUniformName === name) {
5156   - found = true;
5157   - break;
5158   - }
5159   - }
5160   - assert(found, "missing:" + name);
5161   - }
5162   -
5163   - assert(compareArrays(meta.uniformUISpec.uMyColor.min, [0, 0, 0, 0]));
5164   - assert(compareArrays(meta.uniformUISpec.uMyColor.max, [1, 1, 1, 1]));
5165   -
5166   - console.log(" -> ok test shaderInfo");
5167   -};
5168   -
5169   -//------------------------------------------------------------------------------
5170   -// regression test
5171   -//------------------------------------------------------------------------------
5172   -
5173   -Test.prototype.regression = function() {
5174   - "use strict";
5175   - this.hierarchy();
5176   - this.registerProperty();
5177   - this.js_math();
5178   - this.getset();
5179   - this.animation();
5180   - this.animation_spline();
5181   - // this.shadereffect1();
5182   - this.views();
5183   - this.signals();
5184   - this.shaderInfo();
5185   -};
5186   -
5187   -Test.prototype.remote_execution = function() {
5188   - "use strict";
5189   - this.regression();
5190   -};
5191   -
5192   -Test.prototype.stacking = function() {
5193   - "use strict";
5194   -
5195   - eventHandler.selectActor( dali.stage.rootRotationActor );
5196   -
5197   - var a = dali.createSolidColorActor([1.0, 0.0, 0.0, 1.0],
5198   - false, [0, 0, 0, 1],
5199   - 0);
5200   - app.addActor(a);
5201   -
5202   - eventHandler.selectActor( a );
5203   -
5204   - var b = dali.createSolidColorActor([0.0, 0.0, 1.0, 1.0],
5205   - false, [0, 0, 0, 1],
5206   - 0);
5207   - app.addActor(b);
5208   -
5209   - a.sizeWidth = a.sizeHeight = 100;
5210   - b.sizeWidth = b.sizeHeight = 50;
5211   -
5212   - b.sizeWidth = 150;
5213   -
5214   - return [a, b];
5215   -};
5216   -
5217   -
5218   -var runTest = function(functionName) {
5219   - "use strict";
5220   -
5221   - clear();
5222   -
5223   - dali.stage.setBackgroundColor([0.3, 0.3, 0.3, 1]);
5224   -
5225   - var test = dali[functionName]();
5226   -
5227   - if( test )
5228   - {
5229   - if( !test.complete() )
5230   - {
5231   - function check() {
5232   - if( !test.complete() ) {
5233   - window.setTimeout(checkPos, 500);
5234   - } else {
5235   - console.log("test success");
5236   - }
5237   - }
5238   - }
5239   - }
5240   -
5241   -};
5242   -
5243   -//------------------------------------------------------------------------------
5244   -// scratch
5245   -//------------------------------------------------------------------------------
5246   -function animateShaderEffect2(actor) {
5247   - "use strict";
5248   - var shader = new dali.ShaderEffect({
5249   - vertex: shaderSource2.vertex,
5250   - fragment: shaderSource2.fragment
5251   - });
5252   -
5253   - actor.setShaderEffect(shader);
5254   -
5255   - var final = [5, 5, 5, 1];
5256   -
5257   - var a = new dali.Animation(0);
5258   - a.setDuration(3);
5259   - a.setLooping(true);
5260   - a.animateTo(shader, "weight", final, dali.AlphaFunction.LINEAR, 0, 3);
5261   -
5262   - a.play();
5263   -
5264   - a.delete();
5265   -
5266   -}
5267   -
5268   -
5269   -var testfile = { // output from clara.io "Threejs scene output"
5270   - "metadata": {
5271   - "version": 4.3, // This isnt as its documented on threejs website
5272   - "type": "Object", // and the general format looks more like format V3.
5273   - "generator": "ObjectExporter"
5274   - },
5275   - "geometries": [{
5276   - "uuid": "2f167add-e571-47c2-9da2-6f0e45cc1119",
5277   - "type": "Geometry",
5278   - "data": {
5279   - "vertices": [
5280   - 0.5,
5281   - 0.5,
5282   - 0.5,
5283   - 0.5,
5284   - 0.5, -0.5,
5285   - 0.5, -0.5,
5286   - 0.5,
5287   - 0.5, -0.5, -0.5, -0.5,
5288   - 0.5, -0.5, -0.5,
5289   - 0.5,
5290   - 0.5, -0.5, -0.5, -0.5, -0.5, -0.5,
5291   - 0.5
5292   - ],
5293   - "normals": [
5294   - 1,
5295   - 0,
5296   - 0, -1,
5297   - 0,
5298   - 0,
5299   - 0,
5300   - 1,
5301   - 0,
5302   - 0, -1,
5303   - 0,
5304   - 0,
5305   - 0,
5306   - 1,
5307   - 0,
5308   - 0, -1
5309   - ],
5310   - "uvs": [
5311   - [
5312   - 0,
5313   - 1,
5314   - 0,
5315   - 0,
5316   - 1,
5317   - 0,
5318   - 1,
5319   - 1
5320   - ]
5321   - ],
5322   - "faces": [
5323   - 56,
5324   -
5325   - 0,
5326   - 2,
5327   - 3,
5328   -
5329   - 0,
5330   - 1,
5331   - 2,
5332   -
5333   - 0,
5334   - 0,
5335   - 0,
5336   -
5337   - 0,
5338   -
5339   - 56,
5340   - 0,
5341   - 3,
5342   - 1,
5343   - 0,
5344   - 2,
5345   - 3,
5346   - 0,
5347   - 0,
5348   - 0,
5349   - 0,
5350   - 56,
5351   - 4,
5352   - 6,
5353   - 7,
5354   - 0,
5355   - 1,
5356   - 2,
5357   - 1,
5358   - 1,
5359   - 1,
5360   - 1,
5361   - 56,
5362   - 4,
5363   - 7,
5364   - 5,
5365   - 0,
5366   - 2,
5367   - 3,
5368   - 1,
5369   - 1,
5370   - 1,
5371   - 1,
5372   - 56,
5373   - 4,
5374   - 5,
5375   - 0,
5376   - 0,
5377   - 1,
5378   - 2,
5379   - 2,
5380   - 2,
5381   - 2,
5382   - 2,
5383   - 56,
5384   - 4,
5385   - 0,
5386   - 1,
5387   - 0,
5388   - 2,
5389   - 3,
5390   - 2,
5391   - 2,
5392   - 2,
5393   - 2,
5394   - 56,
5395   - 7,
5396   - 6,
5397   - 3,
5398   - 0,
5399   - 1,
5400   - 2,
5401   - 3,
5402   - 3,
5403   - 3,
5404   - 3,
5405   - 56,
5406   - 7,
5407   - 3,
5408   - 2,
5409   - 0,
5410   - 2,
5411   - 3,
5412   - 3,
5413   - 3,
5414   - 3,
5415   - 3,
5416   - 56,
5417   - 5,
5418   - 7,
5419   - 2,
5420   - 0,
5421   - 1,
5422   - 2,
5423   - 4,
5424   - 4,
5425   - 4,
5426   - 4,
5427   - 56,
5428   - 5,
5429   - 2,
5430   - 0,
5431   - 0,
5432   - 2,
5433   - 3,
5434   - 4,
5435   - 4,
5436   - 4,
5437   - 4,
5438   - 56,
5439   - 1,
5440   - 3,
5441   - 6,
5442   - 0,
5443   - 1,
5444   - 2,
5445   - 5,
5446   - 5,
5447   - 5,
5448   - 5,
5449   - 56,
5450   - 1,
5451   - 6,
5452   - 4,
5453   - 0,
5454   - 2,
5455   - 3,
5456   - 5,
5457   - 5,
5458   - 5,
5459   - 5
5460   - ]
5461   - }
5462   - }],
5463   - "materials": [{
5464   - "uuid": "14D499F1-27EF-45BF-A457-FD24DAB11205",
5465   - "type": "MeshPhongMaterial",
5466   - "color": 11579568,
5467   - "ambient": 11579568,
5468   - "emissive": 0,
5469   - "specular": 0,
5470   - "shininess": 50,
5471   - "opacity": 1,
5472   - "transparent": false,
5473   - "wireframe": false
5474   - }],
5475   - "object": {
5476   - "uuid": "BFEFB48D-0E6E-46A6-8568-5E258BA17078",
5477   - "type": "Scene",
5478   - "matrix": [
5479   - 1,
5480   - 0,
5481   - 0,
5482   - 0,
5483   - 0,
5484   - 1,
5485   - 0,
5486   - 0,
5487   - 0,
5488   - 0,
5489   - 1,
5490   - 0,
5491   - 0,
5492   - 0,
5493   - 0,
5494   - 1
5495   - ],
5496   - "children": [{
5497   - "uuid": "aa901bec-9e47-4b3b-bf3c-4efb0fe5d298",
5498   - "name": "Box",
5499   - "type": "Mesh",
5500   - "geometry": "2f167add-e571-47c2-9da2-6f0e45cc1119",
5501   - "material": "14D499F1-27EF-45BF-A457-FD24DAB11205",
5502   - "castShadow": true,
5503   - "receiveShadow": true,
5504   - "matrix": [
5505   - 1,
5506   - 0,
5507   - 0,
5508   - 0,
5509   - 0,
5510   - 1,
5511   - 0,
5512   - 0,
5513   - 0,
5514   - 0,
5515   - 1,
5516   - 0,
5517   - 0,
5518   - 0,
5519   - 0,
5520   - 1
5521   - ]
5522   - }]
5523   - }
5524   -};
5525   -
5526   -
5527   -
5528   -//
5529   -//
5530   -// Event/widget setup
5531   -//
5532   -//
5533   -
5534   -//------------------------------------------------------------------------------
5535   -//
5536   -// Helper functions
5537   -//
5538   -//------------------------------------------------------------------------------
5539   -function rebuildDropdown(dropdownElement, db, dbStoreName, optionalItemDataFunc) {
5540   - "use strict";
5541   - removeAllChildren(dropdownElement);
5542   -
5543   - var func = optionalItemDataFunc;
5544   - if( !func ) {
5545   - func = function(name) {
5546   - return [null, name];
5547   - };
5548   - }
5549   -
5550   - var li;
5551   - var a;
5552   - var names = db.getKeys(dbStoreName);
5553   -
5554   - for(var i = 0; i < names.length; i++) {
5555   - li = document.createElement("li");
5556   - var hrefText = func(names[i]);
5557   - if( hrefText[0] ) {
5558   - a = document.createElement("a");
5559   - a.href = hrefText[0];
5560   - a.text = hrefText[1];
5561   - } else {
5562   - a = document.createElement("p");
5563   - a.textContent = hrefText[1];
5564   - }
5565   - li.appendChild(a);
5566   - dropdownElement.appendChild(li);
5567   - }
5568   -}
5569   -
5570   -
5571   -//------------------------------------------------------------------------------
5572   -//
5573   -// UI General
5574   -//
5575   -//------------------------------------------------------------------------------
5576   -function UIApp() {
5577   - "use strict";
5578   - var self = this;
5579   -
5580   - self.modalQuestionYesFunction = null;
5581   - self.modalQuestionNoFunction = null;
5582   -
5583   - var _modalQuestionYes = function() {
5584   - if(self.modalQuestionYesFunction) {
5585   - self.modalQuestionYesFunction();
5586   - }
5587   - self.modalQuestionYesFunction = null;
5588   - self.modalQuestionNoFunction = null;
5589   - };
5590   -
5591   - var _modalQuestionNo = function() {
5592   - if(self.modalQuestionNo) {
5593   - self.modalQuestionNo();
5594   - }
5595   - self.modalQuestionYesFunction = null;
5596   - self.modalQuestionNoFunction = null;
5597   - };
5598   -
5599   - var _modalInputOk = function() {
5600   - if(self.modalInputOkFunction) {
5601   - var input = $("#modalInputText")[0];
5602   - self.modalInputOkFunction(input.value);
5603   - }
5604   - self.modalInputOkFunction = null;
5605   - self.modalInputCancelFunction = null;
5606   - };
5607   -
5608   - var _modalInputCancel = function() {
5609   - if(self.modalInputCancel) {
5610   - self.modalInputCancel();
5611   - }
5612   - self.modalInputOkFunction = null;
5613   - self.modalInputCancelFunction = null;
5614   - };
5615   -
5616   - $("#modalQuestionYes")[0].addEventListener("click", _modalQuestionYes);
5617   - $("#modalQuestionNo")[0].addEventListener("click", _modalQuestionNo);
5618   -
5619   - self.modalInputYesFunction = null;
5620   - self.modalInputNoFunction = null;
5621   -
5622   - $("#modalInputOk")[0].addEventListener("click", _modalInputOk);
5623   - $("#modalInputCancel")[0].addEventListener("click", _modalInputCancel);
5624   -
5625   -}
5626   -
5627   -UIApp.prototype.messageBoxHTML = function(innerHtmlText) {
5628   - "use strict";
5629   - var modalBody = $("#modalCodeInfoBody")[0];
5630   - removeAllChildren(modalBody);
5631   - modalBody.innerHTML = innerHtmlText;
5632   - $("#modalCodeInfo").modal("show");
5633   -};
5634   -
5635   -UIApp.prototype.messageBox = function(message) {
5636   - "use strict";
5637   - this.messageBoxHTML("<p>" + message + "</p>");
5638   -};
5639   -
5640   -UIApp.prototype.questionBox = function(message, yesFunction, noFunction) {
5641   - "use strict";
5642   - var modalBody = $("#modalQuestionBody")[0];
5643   - removeAllChildren(modalBody);
5644   - modalBody.innerHTML = "<p>" + message + "</p>";
5645   -
5646   - this.modalQuestionYesFunction = yesFunction;
5647   - this.modalQuestionNoFunction = noFunction;
5648   -
5649   - $("#modalQuestion").modal("show");
5650   -};
5651   -
5652   -UIApp.prototype.codeInformationBox = function(code) {
5653   - "use strict";
5654   - var modalBody = $("#modalCodeInfoBody")[0];
5655   - removeAllChildren(modalBody);
5656   - modalBody.innerHTML = "<pre>" + code + "</pre>";
5657   - $("#modalCodeInfo").modal("show");
5658   -};
5659   -
5660   -UIApp.prototype.inputbox = function(message, okFunction, cancelFunction) {
5661   - "use strict";
5662   - var modalBody = $("#modalInputBody")[0];
5663   - removeAllChildren(modalBody);
5664   - modalBody.innerHTML = "<p>" + message + "</p>";
5665   -
5666   - this.modalInputOkFunction = okFunction;
5667   - this.modalInputCancelFunction = cancelFunction;
5668   -
5669   - $("#modalInput").modal("show");
5670   -};
5671   -
5672   -UIApp.prototype.getTypedBuffer = function(file, callback) {
5673   - "use strict";
5674   - if (!file) {
5675   - return;
5676   - }
5677   - var reader = new FileReader();
5678   - reader._theFilename = file.name;
5679   - reader.onload = function(// e
5680   - ) {
5681   - var uint8View = new Uint8Array(reader.result); // convert ArrayBuffer into a typed array?
5682   - callback(file.name, uint8View);
5683   - };
5684   -
5685   - reader.readAsArrayBuffer(file);
5686   -};
5687   -
5688   -
5689   -//------------------------------------------------------------------------------
5690   -//
5691   -// Javascript UI Tab
5692   -//
5693   -//------------------------------------------------------------------------------
5694   -function UIJavascriptTab() {
5695   - "use strict";
5696   - var self = this;
5697   - self.bufferPrepend = "Buffer Name:";
5698   -
5699   - this.addNewBuffer = function() {
5700   - var alreadyExists = function() {
5701   - self.addNewBuffer();
5702   - };
5703   -
5704   - var inputOk = function(name) {
5705   - var data = database.readJavascript(name);
5706   - if(data) {
5707   - uiApp.messageBox("Name already exsists", alreadyExists);
5708   - } else {
5709   - var newData = {name: name, source: ""};
5710   - database.writeJavascript(newData);
5711   - self.rebuildDropdown(database);
5712   - }
5713   - };
5714   -
5715   - uiApp.inputbox("BufferName?", inputOk);
5716   -
5717   - };
5718   -
5719   - this.renameBuffer = function() {
5720   - var writeOK = function() {
5721   - var openRequest = database.open();
5722   -
5723   - openRequest.onsuccess = function(event) {
5724   - var db = event.target.result;
5725   - self.rebuildDropdown(database);
5726   - db.close();
5727   - };
5728   - };
5729   -
5730   - var inputOk = function(name) {
5731   - var data = uiJavascriptTab.getData();
5732   - data.name = name;
5733   - database.writeJavascript(data, writeOK);
5734   - };
5735   -
5736   - uiApp.inputbox("BufferName?", inputOk);
5737   -
5738   - };
5739   -
5740   - this.loadJavascript = function(name) {
5741   - var data = database.readJavascript(name);
5742   -
5743   - // save current
5744   - var currentData = self.getData();
5745   - if(currentData) {
5746   - database.writeJavascript(currentData);
5747   - }
5748   -
5749   - self.setData(data);
5750   - };
5751   -
5752   - ace.require("ace/ext/language_tools");
5753   - var editor = ace.edit("editorJavascript");
5754   -
5755   - var _thisFunctions = [];
5756   - for(var attr in this) {
5757   - if( !(attr.startsWith("_") || attr.startsWith("dynCall") || attr.startsWith("invoke") ) ) {
5758   - if( typeof this[attr] === "function") {
5759   - _thisFunctions.push( attr );
5760   - }
5761   - }
5762   - }
5763   -
5764   - var myCompleter = {
5765   - getCompletions: function(theEditor, session, pos, prefix, callback) {
5766   - var wordlist = [];
5767   - if(prefix === "dali.") {
5768   - for(attr in dali) {
5769   - if( !(attr.startsWith("_") || attr.startsWith("dynCall") || attr.startsWith("invoke") ) ) {
5770   - if( typeof dali[attr] === "function") {
5771   - wordlist.push( attr );
5772   - }
5773   - }
5774   - }
5775   - } else {
5776   - wordlist = _thisFunctions;
5777   - }
5778   - callback(null, wordlist.map(function(word) {
5779   - return {
5780   - caption: word,
5781   - value: word,
5782   - meta: "static"
5783   - };
5784   - }));
5785   - }
5786   - };
5787   -
5788   - editor.completers = [ myCompleter ];
5789   -
5790   - editor.setOptions({
5791   - enableBasicAutocompletion: true,
5792   - enableSnippets: true,
5793   - enableLiveAutocompletion: true
5794   - });
5795   -
5796   - document.getElementById("btnJavascriptSourceJson").addEventListener(
5797   - "click",
5798   - function(/*e*/) {
5799   - self.showModalJSON();
5800   - });
5801   -
5802   - document.getElementById("btnJavascriptClearRun").addEventListener(
5803   - "click",
5804   - function(/*e*/) {
5805   - self.clearStageAndEval();
5806   - });
5807   -
5808   - document.getElementById("btnJavascriptRun").addEventListener(
5809   - "click",
5810   - function(/*e*/) {
5811   - self.eval();
5812   - });
5813   -
5814   - document.getElementById("btnJavascriptAddBuffer").addEventListener(
5815   - "click",
5816   - function(/*e*/) {
5817   - self.addNewBuffer();
5818   - });
5819   -
5820   - document.getElementById("btnJavascriptRenameBuffer").addEventListener(
5821   - "click",
5822   - function(/*e*/) {
5823   - self.renameBuffer();
5824   - });
5825   -
5826   - this.currentName = undefined;
5827   -
5828   - var names = database.readJavascriptNames();
5829   - if(names.length) {
5830   - self.loadJavascript(names[0]); // load first javascript buffer
5831   - }
5832   -
5833   -}
5834   -
5835   -UIJavascriptTab.prototype.getData = function() {
5836   - "use strict";
5837   - var e = ace.edit("editorJavascript");
5838   - var ascii = native2ascii(e.getSession().getValue());
5839   -
5840   - if(this.currentName !== undefined) {
5841   - return { name: this.currentName,
5842   - source: ascii };
5843   - } else {
5844   - return undefined;
5845   - }
5846   -};
5847   -
5848   -UIJavascriptTab.prototype.setData = function(data) {
5849   - "use strict";
5850   - this.currentName = data.name;
5851   - // set new
5852   - var editor = ace.edit("editorJavascript");
5853   - editor.getSession().setValue(data.source);
5854   -
5855   - $("#textJavascriptName").html(this.bufferPrepend + data.name);
5856   -
5857   -};
5858   -
5859   -UIJavascriptTab.prototype.showModalJSON = function() {
5860   - "use strict";
5861   - var e = ace.edit("editorJavascript");
5862   - var ascii = native2ascii(e.getSession().getValue());
5863   -
5864   - var lines = ascii.split("\n");
5865   -
5866   - var data = "{source:";
5867   -
5868   - for(var i = 0; i < lines.length; i++) {
5869   - data += "\"" + lines[i].replace(/"/g, "\\\"") + "\\n\" +\n";
5870   - }
5871   -
5872   - data += "\n\"\"}";
5873   -
5874   - // data = data.replace(/<([^ ]*)/g, "< $1"); // for loops are interpreted by browser as tags and dont print?
5875   -
5876   - // data = data.replace(/"/g, "\\\""); // for loops are interpreted by browser as tags and dont print?
5877   -
5878   - // data = data.replace(/<([^ ]*)/g, "< $1"); // for loops are interpreted by browser as tags and dont print?
5879   -
5880   - uiApp.codeInformationBox( data );
5881   -
5882   -};
5883   -
5884   -UIJavascriptTab.prototype.clearStageAndEval = function() {
5885   - "use strict";
5886   - var e = ace.edit("editorJavascript");
5887   - var ascii = native2ascii(e.getSession().getValue());
5888   - clear();
5889   - // as of ecma5 an indirect call like this is in global scope
5890   - var globalEval = eval;
5891   - globalEval(ascii);
5892   -};
5893   -
5894   -UIJavascriptTab.prototype.eval = function() {
5895   - "use strict";
5896   - var e = ace.edit("editorJavascript");
5897   - var ascii = native2ascii(e.getSession().getValue());
5898   - // as of ecma5 an indirect call like this is in global scope
5899   - var globalEval = eval;
5900   - globalEval(ascii);
5901   -};
5902   -
5903   -UIJavascriptTab.prototype.rebuildDropdown = function(db) {
5904   - "use strict";
5905   - rebuildDropdown( document.getElementById("javascriptDropDown"),
5906   - db,
5907   - "javascript",
5908   - function(name) {
5909   - return ["javascript:uiJavascriptTab.loadJavascript(\"" + name + "\")",
5910   - name];
5911   - }
5912   - );
5913   -};
5914   -
5915   -
5916   -//------------------------------------------------------------------------------
5917   -//
5918   -// Image UI Tab
5919   -//
5920   -//------------------------------------------------------------------------------
5921   -
5922   -/**
5923   - * Get or create a dali image from the image buffer.
5924   - *
5925   - * Global function for use in javascript buffers or the console.
5926   - * @param {string} shader buffer name
5927   - * @return {Object} dali.Image
5928   - */
5929   -function imageFromUiBuffer(name) {
5930   - "use strict";
5931   - var img = uiImageTab.getDaliImage(name);
5932   - assert(img, "Could not find image:" + name);
5933   - return img;
5934   -}
5935   -
5936   -
5937   -/**
5938   - * Manages UI image tab.
5939   - *
5940   - * @constructor
5941   - */
5942   -function UIImageTab() {
5943   - "use strict";
5944   - var self = this;
5945   - this.imagesCreated = {}; // dali shader objects
5946   -
5947   - /********** methods **********/
5948   - this.getBufferImageRGB = function(file, callback) {
5949   - if (!file) {
5950   - return;
5951   - }
5952   -
5953   - var img = new HTML5Image(); // the renamed Image()
5954   -
5955   - var objectUrl = window.URL.createObjectURL(file);
5956   -
5957   - img.onload = function( //e
5958   - ) {
5959   - var imageCanvas = document.createElement("canvas");
5960   - imageCanvas.width = img.width; // naturalWidth;
5961   - imageCanvas.height = img.height; // naturalHeight;
5962   - var context = imageCanvas.getContext("2d");
5963   - context.drawImage(img, 0, 0 );
5964   - var imageData = context.getImageData(0, 0, img.naturalWidth, img.naturalHeight); // <-ImageData
5965   - callback(file.name, imageData);
5966   - window.URL.revokeObjectURL(objectUrl);
5967   - };
5968   -
5969   - img.src = objectUrl;
5970   -
5971   - };
5972   -
5973   -
5974   - /**
5975   - * Add new image data
5976   - *
5977   - * @param {object} ImageData object
5978   - */
5979   - this.addNewBuffer = function(imageData) {
5980   - var alreadyExists = function() {
5981   - self.addNewBuffer(imageData);
5982   - };
5983   -
5984   - var inputOk = function(name) {
5985   - var oldData = database.readImage(name);
5986   - if(oldData) {
5987   - uiApp.messageBox("Name already exsists", alreadyExists);
5988   - } else {
5989   - database.writeImage(name, imageData);
5990   - self.rebuildDropdown(database);
5991   - }
5992   - };
5993   -
5994   - uiApp.inputbox("BufferName?", inputOk);
5995   - };
5996   -
5997   - this.renameBuffer = function() {
5998   - var inputOk = function(name) {
5999   - var data = uiJavascriptTab.getData();
6000   - data.name = name;
6001   - database.writeJavascript(data);
6002   - self.rebuildDropdown(database);
6003   - };
6004   -
6005   - uiApp.inputbox("BufferName?", inputOk);
6006   - };
6007   -
6008   - /**
6009   - * Load image into the UI Image tab. (used for dynamically generated html dropdowns)
6010   - *
6011   - * @param {string} name of image buffer
6012   - */
6013   - this.loadImage = function(name) {
6014   - self.setData( database.readImage(name) );
6015   - };
6016   -
6017   - /********** init **********/
6018   -
6019   - document.getElementById("btnImageAddBuffer").addEventListener(
6020   - "change",
6021   - function() {
6022   - var fileInput = document.getElementById("btnImageAddBuffer");
6023   - var file = fileInput.files[0];
6024   - self.getBufferImageRGB(
6025   - file,
6026   - function(name, typedBuffer) {
6027   - self.addNewBuffer(typedBuffer);
6028   - });
6029   - });
6030   -
6031   -
6032   - document.getElementById("btnImageRenameBuffer").addEventListener(
6033   - "click",
6034   - function(/*e*/) {
6035   - self.renameBuffer();
6036   - });
6037   -
6038   - var names = database.readImageNames();
6039   - if(names.length) {
6040   - // load first image buffer
6041   - self.setData( database.readImage(names[0]) );
6042   - }
6043   -
6044   -}
6045   -
6046   -/**
6047   - * Get or create a dali image from the image buffer.
6048   - *
6049   - * @return {Object} dali.Image
6050   - */
6051   -UIImageTab.prototype.getDaliImage = function(name) {
6052   - "use strict";
6053   - if(name in this.imagesCreated) {
6054   - return this.imagesCreated[name];
6055   - } else {
6056   - var imageData = database.readImage(name);
6057   - var uint8array = new Uint8Array(imageData.data);
6058   - var image = new dali.BufferImage(uint8array, imageData.width, imageData.height, dali.PixelFormat.RGBA8888);
6059   - this.imagesCreated[name] = image;
6060   - return image;
6061   - }
6062   -};
6063   -
6064   -UIImageTab.prototype.rebuildDropdown = function(db) {
6065   - "use strict";
6066   - rebuildDropdown( document.getElementById("imageDropDown"),
6067   - db,
6068   - "images",
6069   - function(name) {
6070   - return ["javascript:uiImageTab.loadImage(\"" + name + "\")",
6071   - name];
6072   - }
6073   - );
6074   -};
6075   -
6076   -UIImageTab.prototype.setData = function(data) {
6077   - "use strict";
6078   - var imageViewCanvas = document.getElementById("imageViewCanvas"); // createElement("canvas");
6079   - imageViewCanvas.width = data.width; // naturalWidth;
6080   - imageViewCanvas.height = data.height; // naturalHeight;
6081   - var context = imageViewCanvas.getContext("2d");
6082   - context.putImageData( data, 0, 0 );
6083   -
6084   -};
6085   -
6086   -//------------------------------------------------------------------------------
6087   -//
6088   -// Shader UI Tab
6089   -//
6090   -//------------------------------------------------------------------------------
6091   -/**
6092   - * Get or create a dali shader from the shader buffer.
6093   - *
6094   - * Global function for use in javascript buffers or the console.
6095   - * @param {string} shader buffer name
6096   - * @return {Object} dali.Shader
6097   - */
6098   -function shaderFromUiBuffer(name) {
6099   - "use strict";
6100   - var shader = uiShaderTab.getDaliShader(name);
6101   - assert(shader, "Could not find/compile shader:" + name);
6102   - return shader;
6103   -}
6104   -
6105   -function shaderInfoFromUiBuffer(name) {
6106   - "use strict";
6107   - return uiShaderTab.getShaderInfo(name);
6108   -}
6109   -
6110   -/**
6111   - * Manage shader UI tab events.
6112   - * Holds dali shader objects created from shader buffers.
6113   - *
6114   - * @constructor
6115   - * @return {Object} UIShaderTab
6116   - */
6117   -function UIShaderTab() {
6118   - "use strict";
6119   - var self = this;
6120   - this.bufferPrepend = "Buffer Name:";
6121   - this.inhibitCheckAndUpdateShader = false;
6122   -
6123   - this.shadersCreated = {}; // dali shader objects
6124   - document.getElementById("btnShaderAddBuffer").addEventListener(
6125   - "click",
6126   - function(/*e*/) {
6127   - self.addNewBuffer();
6128   - });
6129   -
6130   - document.getElementById("btnShaderRenameBuffer").addEventListener(
6131   - "click",
6132   - function(/*e*/) {
6133   - self.renameBuffer();
6134   - });
6135   -
6136   - document.getElementById("btnShaderSourceJSON").addEventListener(
6137   - "click",
6138   - function(/*e*/) {
6139   - self.showModalJSON();
6140   - });
6141   -
6142   - document.getElementById("btnShaderSourceC").addEventListener(
6143   - "click",
6144   - function(/*e*/) {
6145   - self.showModalC();
6146   - });
6147   -
6148   - document.getElementById("btnShaderSourceJS").addEventListener(
6149   - "click",
6150   - function(/*e*/) {
6151   - self.showModalJS();
6152   - });
6153   -
6154   -
6155   - this.addNewBuffer = function() {
6156   - var alreadyExists = function() {
6157   - self.addNewBuffer();
6158   - };
6159   -
6160   - var inputOk = function(name) {
6161   - var data = database.readJavascript(name);
6162   - if(data) {
6163   - uiApp.messageBox("Name already exsists", alreadyExists);
6164   - } else {
6165   - var newData = {name: name, fragment: "", vertex: "", hints: ""};
6166   - database.writeShader(newData);
6167   - self.rebuildDropDown(database);
6168   - }
6169   - };
6170   -
6171   - uiApp.inputbox("BufferName?", inputOk);
6172   -
6173   - };
6174   -
6175   - this.renameBuffer = function() {
6176   - var inputOk = function(name) {
6177   - var data = self.getData();
6178   - data.name = name;
6179   - database.writeShader(data);
6180   - $("#textShaderName").html(self.bufferPrepend + name);
6181   - self.rebuildDropdown(database);
6182   - };
6183   -
6184   - uiApp.inputbox("BufferName?", inputOk);
6185   - };
6186   -
6187   - this.loadShader = function(name) {
6188   -
6189   - var data = database.readShader(name);
6190   -
6191   - // save current
6192   - var currentData = self.getData();
6193   - if(currentData) {
6194   - database.writeShader(currentData);
6195   - }
6196   -
6197   - // so that we can change vertex & fragment as an atomic operation
6198   - self.inhibitCheckAndUpdateShader = true;
6199   -
6200   - // otherwise this will trigger a checkAndUpdateShader() after
6201   - // we've only changed the vertex shader (ie with mismatching fragment shader)
6202   - self.setData(data);
6203   -
6204   - self.inhibitCheckAndUpdateShader = false;
6205   -
6206   - self.checkAndUpdateShader();
6207   -
6208   - };
6209   -
6210   - /**
6211   - * Set the UI tab data of vertex/fragment strings.
6212   - *
6213   - * @param {Object} shader data object
6214   - */
6215   - this.setData = function(options) {
6216   - var e;
6217   - var vertex = "";
6218   - var fragment = "";
6219   - var hints = "";
6220   -
6221   - vertex = options.vertex;
6222   - fragment = options.fragment;
6223   - hints = options.hints;
6224   -
6225   - $("#requiresSelfDepthTest").prop("checked", (hints.search("requiresSelfDepthTest") >= 0));
6226   - $("#outputIsTransparent").prop("checked", (hints.search("outputIsTransparent") >= 0));
6227   - $("#outputIsOpaque").prop("checked", (hints.search("outputIsOpaque") >= 0));
6228   - $("#modifiesGeometry").prop("checked", (hints.search("modifiesGeometry") >= 0));
6229   -
6230   - // do this after setting up the checkboxes as it will trigger storing the checkbox state
6231   - // in the actorIdToShaderSet map
6232   - e = ace.edit("editorVertex");
6233   - e.getSession().setValue(vertex);
6234   -
6235   - e = ace.edit("editorFragment");
6236   - e.getSession().setValue(fragment);
6237   -
6238   - $("#textShaderName").html(self.bufferPrepend + options.name);
6239   -
6240   - };
6241   -
6242   - var shaderTab = $("#tab2primary")[0];
6243   - var lastClassName = shaderTab.className;
6244   - window.setInterval( function() {
6245   - var className = shaderTab.className;
6246   - if (className !== lastClassName) {
6247   - //
6248   - // an attempt to get the editboxes to display the correct content.
6249   - // when you setValue() the content and they aren't visible then
6250   - // they dont update properly until you click in the box
6251   - //
6252   - var e = ace.edit("editorVertex");
6253   - e.setShowInvisibles(true);
6254   - e.setShowInvisibles(false);
6255   -
6256   - e = ace.edit("editorFragment");
6257   - e.setShowInvisibles(true);
6258   - e.setShowInvisibles(false);
6259   - lastClassName = className;
6260   - }
6261   - }, 1);
6262   -
6263   - var names = database.readShaderNames();
6264   - if(names.length) {
6265   - // load first image buffer
6266   - self.setData( database.readShader(names[0]) );
6267   - }
6268   -
6269   - var editor = ace.edit("editorVertex");
6270   - editor.getSession().addEventListener("change", function() {
6271   - self.checkAndUpdateShader();
6272   - });
6273   -
6274   - editor = ace.edit("editorFragment");
6275   - editor.getSession().addEventListener("change", function() {
6276   - self.checkAndUpdateShader();
6277   - });
6278   -
6279   -}
6280   -
6281   -/**
6282   - * Get or create a dali shader from the shader buffer.
6283   - *
6284   - * @return {Object} dali.Shader
6285   - */
6286   -UIShaderTab.prototype.getDaliShader = function(name) {
6287   - "use strict";
6288   - if(name in this.shadersCreated) {
6289   - return this.shadersCreated[name].daliShader;
6290   - } else {
6291   - var ret = null;
6292   - var data = database.readShader(name);
6293   -
6294   - if(this.isCompilable(data)) {
6295   - var daliShader = new dali.Shader(data.vertex,
6296   - data.fragment,
6297   - this.getDaliShaderHints(data.hints));
6298   -
6299   - var shaderInfo = new dali.ShaderInfo();
6300   - var info = shaderInfo.fromCompilation( canvas.getContext("webgl"),
6301   - data.vertex,
6302   - data.fragment );
6303   -
6304   - for(name in info.uniformUISpec) {
6305   - var metaData = info.uniformUISpec[name];
6306   - if("default" in metaData) {
6307   - // could provide automatic defaults
6308   - daliShader.registerAnimatedProperty(name, metaData.default);
6309   - }
6310   - }
6311   -
6312   - if(daliShader) {
6313   - this.shadersCreated[name] = data;
6314   - this.shadersCreated[name].daliShader = daliShader;
6315   - }
6316   - ret = daliShader;
6317   - } else {
6318   - console.log("Requested shader could not be compiled:" + name);
6319   - }
6320   -
6321   - return ret;
6322   - }
6323   -};
6324   -
6325   -/**
6326   - * Get info for a shader. See getInfo()
6327   - *
6328   - * @return {Object} dali.Shader
6329   - */
6330   -
6331   -UIShaderTab.prototype.getShaderInfo = function(name) {
6332   - "use strict";
6333   - var data = database.readShader(name);
6334   - return this.getInfo(data);
6335   -};
6336   -
6337   -/**
6338   - * Rebuild UI tab drop down selection.
6339   - *
6340   - * @param {Object} Database
6341   - */
6342   -UIShaderTab.prototype.rebuildDropdown = function(db) {
6343   - "use strict";
6344   - rebuildDropdown( document.getElementById("shaderDropDown"),
6345   - db,
6346   - "shaders",
6347   - function(name) {
6348   - return ["javascript:uiShaderTab.loadShader(\"" + name + "\")",
6349   - name];
6350   - }
6351   - );
6352   -};
6353   -
6354   -
6355   -/**
6356   - * Get the UI tab data with vertex/fragment strings.
6357   - *
6358   - * @return {Object} shader data object
6359   - */
6360   -UIShaderTab.prototype.getData = function() {
6361   - "use strict";
6362   - var e = ace.edit("editorVertex");
6363   - var ret = {};
6364   - ret.name = $("#textShaderName").text().substr(this.bufferPrepend.length);
6365   - ret.vertex = native2ascii(e.getSession().getValue());
6366   - e = ace.edit("editorFragment");
6367   - ret.fragment = native2ascii(e.getSession().getValue());
6368   -
6369   - ret.hints = "";
6370   - if( $("#requiresSelfDepthTest")[0].checked ) {
6371   - ret.hints += " requiresSelfDepthTest";
6372   - }
6373   - if( $("#outputIsTransparent")[0].checked ) {
6374   - ret.hints += " outputIsTransparent";
6375   - }
6376   - if( $("#outputIsOpaque")[0].checked ) {
6377   - ret.hints += " outputIsOpaque";
6378   - }
6379   - if( $("#modifiesGeometry")[0].checked ) {
6380   - ret.hints += " modifiesGeometry";
6381   - }
6382   -
6383   - return ret;
6384   -};
6385   -
6386   -/**
6387   - * Get dali shader hints from hints string.
6388   - *
6389   - * @param {string} hints string (space separated)
6390   - * @return {integer} or'd hints to pass to Dali
6391   - */
6392   -UIShaderTab.prototype.getDaliShaderHints = function(hintsString) {
6393   - "use strict";
6394   - var ret = 0;
6395   -
6396   - if(hintsString.search("requiresSelfDepthTest") >= 0) {
6397   - ret += dali.ShaderHints.REQUIRES_SELF_DEPTH_TEST;
6398   - }
6399   - if(hintsString.search("outputIsTransparent") >= 0) {
6400   - ret += dali.ShaderHints.OUTPUT_IS_TRANSPARENT;
6401   - }
6402   - if(hintsString.search("outputIsOpaque") >= 0) {
6403   - ret += dali.ShaderHints.OUTPUT_IS_OPAQUE;
6404   - }
6405   - if(hintsString.search("modifiesGeometry") >= 0) {
6406   - ret += dali.ShaderHints.MODIFIES_GEOMETRY;
6407   - }
6408   - return ret;
6409   -};
6410   -
6411   -/**
6412   - * Get information on a shader
6413   - * If hasError==true then attributes etc will be empty. ie it must compile.
6414   - *
6415   - * Compile the shader with webGL. Query webGL for meta data.
6416   - *
6417   - * @param {object} data object. {vertex:"", fragment:""}
6418   - * @return {object} info metadata object
6419   - * // var info = {
6420   - * // attributes: [],
6421   - * // uniforms: [],
6422   - * // attributeCount: 0,
6423   - * // uniformCount: 0,
6424   - * // hasError: false, // compiles without error
6425   - * // vertexError: "",
6426   - * // fragmentError: "",
6427   - * // linkError: ""
6428   - * // };
6429   - */
6430   -
6431   -
6432   -// uniform vec3 uMe; // gui:number, min:0, max:1, default: 0.5
6433   -// uniform vec3 uMe; // gui:slider, min:0, max:1, default: 0.5
6434   -// uniform vec3 uMe; // gui:color, min:[0,0,0,0] max:[1,1,1,1], default: [0,0,0,1]
6435   -
6436   -UIShaderTab.prototype.getInfo = function(data) {
6437   - "use strict";
6438   -
6439   - var canvas = document.getElementById("canvas");
6440   -
6441   - var info = new dali.ShaderInfo();
6442   -
6443   - return info.fromCompilation(canvas.getContext("webgl"),
6444   - data.vertex,
6445   - data.fragment);
6446   -};
6447   -
6448   -/**
6449   - * Check a shader can compile. Shader given as data object with vertex/fragment buffers.
6450   - *
6451   - * Compile the shader with webGL as a preprocess step to giving it to Dali.
6452   - *
6453   - * @param {string} shader buffer name
6454   - * @return {Boolean} true if the shader compiles ok.
6455   - */
6456   -UIShaderTab.prototype.isCompilable = function(data) {
6457   - "use strict";
6458   - var info = this.getInfo(data);
6459   - return !info.hasError;
6460   -};
6461   -
6462   -
6463   -/**
6464   - * Check the shader in the UI tab can compile and if so update the saved dali.Shader object.
6465   - * (Does not create the dali.Shader object)
6466   - *
6467   - * For use on an event for continuous shader checking.
6468   - *
6469   - * @param {string} shader buffer name
6470   - * @return {Object} dali.Shader
6471   - */
6472   -UIShaderTab.prototype.checkAndUpdateShader = function() {
6473   - "use strict";
6474   - if(this.inhibitCheckAndUpdateShader) {
6475   - return;
6476   - }
6477   -
6478   - var options = this.getData();
6479   -
6480   - var info = this.getInfo(options);
6481   -
6482   - if(!info.hasError) {
6483   - if( options.name in this.shadersCreated ) {
6484   - if("daliShader" in this.shadersCreated[options.name]) {
6485   - // setting shader.program= doesn't seem to recompile the shader?
6486   - // this.shadersCreated[options.name].daliShader.delete(); no delete; could be held elsewhere
6487   - delete this.shadersCreated[options.name];
6488   - }
6489   - }
6490   - }
6491   -
6492   - var vertexPrepend = "";
6493   - var fragmentPrepend = "";
6494   -
6495   - var errors = "";
6496   - var count;
6497   - var editor;
6498   - var description;
6499   - var col;
6500   - var line;
6501   - var i;
6502   -
6503   - var textShaderErrors = $("#textShaderErrors");
6504   -
6505   - textShaderErrors.value = "";
6506   -
6507   - editor = ace.edit("editorVertex");
6508   - if (info.hasError && info.vertexError) {
6509   - editor.getSession().setOption("useWorker", false);
6510   - textShaderErrors.value = "VERTEX:\n" + info.vertexError;
6511   - errors = info.vertexError.split("\n");
6512   - count = vertexPrepend.split("\n").length;
6513   - for(i = 0; i < errors.length; i++) {
6514   - if(errors[i]) {
6515   - description = errors[i].split(":");
6516   - col = Number(description[1]);
6517   - try {
6518   - line = Number(description[2]);
6519   - } catch(e) {
6520   - line = "unknown";
6521   - }
6522   - editor.getSession().setAnnotations([{row: line - count, column: col, text: errors[i], type: "error"}]);
6523   - }
6524   - }
6525   - } else {
6526   - editor.getSession().setOption("useWorker", true);
6527   - editor.getSession().setAnnotations([]);
6528   - }
6529   -
6530   - editor = ace.edit("editorFragment");
6531   - if (info.hasError && info.fragmentError) {
6532   - editor.getSession().setOption("useWorker", false);
6533   - textShaderErrors.value += "FRAGMENT:\n" + info.fragmentError;
6534   - errors = info.fragmentError.split("\n");
6535   - count = fragmentPrepend.split("\n").length;
6536   - for(i = 0; i < errors.length; i++) {
6537   - if(errors[i]) {
6538   - description = errors[i].split(":");
6539   - col = Number(description[1]);
6540   - try {
6541   - line = Number(description[2]);
6542   - } catch(e) {
6543   - line = "unknown";
6544   - }
6545   - editor.getSession().setAnnotations([{row: line - count, column: col, text: errors[i], type: "error"}]);
6546   - }
6547   - }
6548   - } else {
6549   - editor.getSession().setOption("useWorker", true);
6550   - editor.getSession().setAnnotations([]);
6551   - }
6552   -
6553   - if(!info.hasError) {
6554   - database.writeShader(options);
6555   - }
6556   -
6557   -};
6558   -
6559   -
6560   -UIShaderTab.prototype.showModalC = function() {
6561   - "use strict";
6562   - var i;
6563   - var info = this.getData();
6564   -
6565   - var data = "#define MAKE_STRING(A)#A\n\n" +
6566   - "std::string vertexShader = MAKE_STRING(\n";
6567   -
6568   - var lines = info.vertex.split("\n");
6569   - for(i = 0; i < lines.length; i++) {
6570   - data += lines[i] + "\n";
6571   - }
6572   - data += ");\n\n";
6573   -
6574   - data += "std::string fragShader = MAKE_STRING(\n";
6575   -
6576   - lines = info.fragment.split("\n");
6577   - for(i = 0; i < lines.length; i++) {
6578   - data += lines[i] + "\n";
6579   - }
6580   - data += ");\n\n";
6581   -
6582   - data += "ShaderEffect shaderEffect;\n" +
6583   - "shaderEffect = ShaderEffect::New( vertexShader, fragmentShader,\n" +
6584   - " ShaderEffect::ShaderHint( " + info.hints + " ) )\n";
6585   -
6586   - data = data.replace(/<([^ ]*)/g, "< $1"); // for loops are interpreted by browser as tags and dont print?
6587   -
6588   - uiApp.codeInformationBox( data );
6589   -
6590   - // data = data.replace(/</g, "&lt;");
6591   - // data = data.replace(/>/g, "&gt;");
6592   -
6593   - // var myWindow = window.open("data:text/html," + encodeURIComponent(data));
6594   - // // "_blank"); // , "width=00,height=100");
6595   - // myWindow.focus();
6596   -
6597   -};
6598   -
6599   -UIShaderTab.prototype.showModalJS = function() {
6600   - "use strict";
6601   - var i;
6602   - var info = this.getData();
6603   -
6604   - var data = "var shaderOptions = {vertex:\n";
6605   -
6606   - var lines = info.vertex.split("\n");
6607   - for(i = 0; i < lines.length; i++) {
6608   - data += " \"" + lines[i] + "\\n\" +\n";
6609   - }
6610   - data += " \"\",\n";
6611   -
6612   - data += " fragment:\n";
6613   - lines = info.fragment.split("\n");
6614   - for(i = 0; i < lines.length; i++) {
6615   - data += " \"" + lines[i] + "\\n\" +\n";
6616   - }
6617   - data += " \"\",\n";
6618   -
6619   - data += " geometryType: \"" + info.geometryType + "\",\n";
6620   - data += " geometryHints: \"" + info.geometryHints + "\"\n";
6621   - data += " };\n";
6622   -
6623   - data = data.replace(/<([^ ]*)/g, "< $1"); // for loops are interpreted by browser as tags and dont print?
6624   - // data = data.replace(/</g, "&lt;");
6625   - // data = data.replace(/>/g, "&gt;");
6626   -
6627   - // var myWindow = window.open("data:text/html," + encodeURIComponent(data));
6628   - // // "_blank"); // , "width=00,height=100");
6629   - // myWindow.focus();
6630   -
6631   - var modalBody = $("#modalCodeInfoBody")[0];
6632   - removeAllChildren(modalBody);
6633   - modalBody.innerHTML = "<code><pre>" + data + "</pre></code>";
6634   - $("#modalCodeInfo").modal("show");
6635   -
6636   -};
6637   -
6638   -UIShaderTab.prototype.showModalJSON = function() {
6639   - "use strict";
6640   - var info = this.getData();
6641   -
6642   - var hints = ""; // tbd
6643   -
6644   - var vertex = info.vertex.replace(/\n/g, "\\n");
6645   - var fragment = info.fragment.replace(/\n/g, "\\n");
6646   -
6647   - var data = "{\"shader-effects\": {\n" +
6648   - " \"" + "effect" + "\": {\n" +
6649   - " \"program\": {\n" +
6650   - " \"vertexPrefix\": \"\",\n" +
6651   - " \"vertex\": \"" + vertex + "\",\n" +
6652   - " \"fragmentPrefix\": \"\",\n" +
6653   - " \"fragment\": \"" + fragment + "\"\n" +
6654   - " },\n" +
6655   - " \"geometry-hints\": \"" + hints + "\",\n" +
6656   - " \"grid-density\": \"" + "0" + "\",\n" +
6657   - " \"image\": {\n" +
6658   - " \"filename\": \"\"\n" +
6659   - " }\n" +
6660   - " }\n" +
6661   - " }\n" +
6662   - "}\n";
6663   -
6664   - data = data.replace(/<([^ ]*)/g, "< $1"); // for loops are interpreted by browser as tags and dont print?
6665   -
6666   - uiApp.codeInformationBox( data );
6667   -
6668   -};
6669   -
6670   -document.getElementById("btnRewriteDatabase").addEventListener("click", function(// e
6671   -) {
6672   - "use strict";
6673   -
6674   - database.delete(
6675   - function() {
6676   - consoleLogSuccess("database.delete")();
6677   - window.setTimeout(function () {
6678   - window.location.reload(true); // forces a reload from the server
6679   - }, 500);
6680   - },
6681   - consoleLogErrorEvent, // fail
6682   - consoleLogErrorEvent // blocked
6683   - );
6684   -
6685   -});
6686   -
6687   -
6688   -window.setTimeout(initDB, 1000);
6689   -
6690   -
6691   -function updateStatistics(eventHandler){
6692   - "use strict";
6693   -
6694   - var elem = $("#statistics")[0];
6695   -
6696   - var actor = eventHandler.touchedActor;
6697   -
6698   - var usedRootLayer = false;
6699   -
6700   - if(!actor) {
6701   - usedRootLayer = true;
6702   - actor = dali.stage.getRootLayer();
6703   - }
6704   -
6705   - var rt = dali.stage.getRenderTaskList().getTask(0);
6706   -
6707   - var xy;
6708   - try {
6709   - xy = dali.screenToLocal(eventHandler.mouseX, eventHandler.mouseY,
6710   - actor, rt);
6711   - } catch(err) {
6712   - xy = [0, 0];
6713   - }
6714   -
6715   - var screenxy = dali.worldToScreen(actor.position, rt);
6716   -
6717   - var name = "Actor";
6718   -
6719   - if(usedRootLayer) {
6720   - name = "Root Actor";
6721   - }
6722   -
6723   - var prec = 3;
6724   - var px = "none";
6725   - var py = "none";
6726   - if(eventHandler.mouseDownPosition) {
6727   - px = eventHandler.mouseDownPosition[0].toFixed(prec);
6728   - py = eventHandler.mouseDownPosition[1].toFixed(prec);
6729   - }
6730   -
6731   - elem.innerHTML = name + " (" + actor.getId() + ") '" + actor.name + "'" + "<br>" +
6732   - "Screen:" + eventHandler.mouseX.toFixed(prec) + "," + eventHandler.mouseY.toFixed(prec) + "<br>" +
6733   - name + " Screen To Local:" + xy[0].toFixed(prec) + "," + xy[1].toFixed(prec) + "<br>" +
6734   - name + " To Screen:" + screenxy[0].toFixed(prec) + "," + screenxy[1].toFixed(prec) + "<br>" +
6735   - name + " Drag dx/dy:" + eventHandler.dragDx.toFixed(prec) + "," + eventHandler.dragDy.toFixed(prec) + "<br>" +
6736   - name + " pos:" + actor.position + "<br>"+
6737   - name + " pos:" + px + "," + py + "<br>";
6738   -
6739   - if(usedRootLayer) { // dont delete eventHandler object
6740   - actor.delete(); // wrapper
6741   - }
6742   -
6743   - rt.delete(); // wrapper
6744   -
6745   -}
6746   -
6747   -
6748   -$(".btn-toggle").click(function() {
6749   - "use strict";
6750   - $(this).find(".btn").toggleClass("active");
6751   -
6752   - if($(this).find(".btn-primary").size() > 0) {
6753   - $(this).find(".btn").toggleClass("btn-primary");
6754   - }
6755   -
6756   - $(this).find(".btn").toggleClass("btn-default");
6757   -
6758   - if(this.id === "loop") {
6759   - var looping = $(this).find("#loopOn").hasClass("active");
6760   - animationList[animationSelectionIndex].looping = looping;
6761   - animationList[animationSelectionIndex].dirtyData = true;
6762   - }
6763   -
6764   - if(this.id === "endAction") {
6765   - var bake = $(this).find("#endBake").hasClass("active");
6766   - if(bake) {
6767   - animationList[animationSelectionIndex].endAction = "Bake";
6768   - } else {
6769   - animationList[animationSelectionIndex].endAction = "Discard";
6770   - }
6771   - animationList[animationSelectionIndex].dirtyData = true;
6772   - }
6773   -
6774   -});
6775   -
6776   -//------------------------------------------------------------------------------
6777   -//
6778   -// Database; access to browser indexed db
6779   -//
6780   -//------------------------------------------------------------------------------
6781   -function Database() {
6782   - "use strict";
6783   - this.currentVersion = 1;
6784   - this.name = "dalitoy";
6785   - this.data = {};
6786   - var self = this;
6787   -
6788   - this.copyDBStore = function(db, dbStoreName, andClose) {
6789   - var tr = db.transaction([dbStoreName], "readonly");
6790   - var store = tr.objectStore(dbStoreName);
6791   - var cursor = store.openCursor();
6792   - self.data[dbStoreName] = {};
6793   - cursor.onsuccess = function(e) {
6794   - var res = e.target.result; // another cursor
6795   - if(res) {
6796   - self.data[dbStoreName][res.key] = res.value;
6797   - res.continue();
6798   - } else {
6799   - if(andClose) {
6800   - db.close();
6801   - }
6802   - }
6803   - };
6804   - cursor.onerror = consoleLogErrorEvent;
6805   - };
6806   -
6807   - this.initializeData = function(db) {
6808   - self.copyDBStore(db, "javascript");
6809   - self.copyDBStore(db, "images");
6810   - self.copyDBStore(db, "shaders", true); // true to close db (last copy)
6811   - };
6812   -
6813   - this.init();
6814   -}
6815   -
6816   -Database.prototype.open = function() {
6817   - "use strict";
6818   - return window.indexedDB.open(this.name, this.currentVersion);
6819   -};
6820   -
6821   -Database.prototype.delete = function(onsuccess, onerror, onblocked) {
6822   - "use strict";
6823   - var req = window.indexedDB.deleteDatabase(this.name);
6824   - req.onsuccess = onsuccess;
6825   - req.onerror = onerror;
6826   - req.onblocked = onblocked;
6827   -};
6828   -
6829   -
6830   -Database.prototype.upgrade = function(db, oldVersion) {
6831   - // force upgrade
6832   - "use strict";
6833   - if (oldVersion < 1) {
6834   - // Version 1 is the first version of the database.
6835   - var store = db.createObjectStore("shaders", {keyPath: "name"});
6836   - var i;
6837   - for(i = 0; i < shaderSources.length; i++) {
6838   - store.put( shaderSources[i] );
6839   - }
6840   -
6841   - store = db.createObjectStore("javascript", {keyPath: "name"});
6842   - for(i = 0; i < javascriptSources.length; i++) {
6843   - store.put( javascriptSources[i] );
6844   - }
6845   -
6846   - store = db.createObjectStore("images");
6847   -
6848   - // default images in html page
6849   - store.put( getStockImageData(1), "girl1" );
6850   - store.put( getStockImageData(2), "funnyface" );
6851   - store.put( getStockImageData(3), "ducks" );
6852   - store.put( getStockImageData(4), "field" );
6853   - }
6854   -};
6855   -
6856   -Database.prototype.init = function() {
6857   - "use strict";
6858   - var self = this;
6859   -
6860   - if("indexedDB" in window) {
6861   - var openRequest = this.open();
6862   -
6863   - openRequest.onupgradeneeded = function(event) {
6864   - var db = event.target.result;
6865   - database.upgrade(db, event.oldVersion);
6866   - //self.initializeData(db);
6867   - };
6868   -
6869   - openRequest.onsuccess = function(event) {
6870   - var db = event.target.result;
6871   - self.initializeData(db);
6872   - };
6873   -
6874   - openRequest.onerror = consoleLogErrorEvent;
6875   -
6876   - }
6877   -
6878   -};
6879   -
6880   -Database.prototype.initTabs = function(jstab, imagetab, shadertab) {
6881   - "use strict";
6882   - jstab.rebuildDropdown(this);
6883   - imagetab.rebuildDropdown(this);
6884   - shadertab.rebuildDropdown(this);
6885   -};
6886   -
6887   -Database.prototype.writeJavascript = function(data, callback) {
6888   - "use strict";
6889   -
6890   - this.data.javascript[data.name] = data;
6891   -
6892   - var openRequest = this.open();
6893   - var self = this;
6894   - openRequest.onsuccess = function(event) {
6895   - var db = event.target.result;
6896   - var tr = db.transaction(["javascript"], "readwrite");
6897   - var store = tr.objectStore("javascript");
6898   -
6899   - var ob = store.put(data);
6900   - self.data.javascript[data.name] = data;
6901   -
6902   - ob.onsuccess = callback;
6903   - // ob.onerror = errorCallback;
6904   - ob.onerror = consoleLogErrorEvent;
6905   -
6906   - db.close();
6907   - };
6908   -
6909   - openRequest.onerror = consoleLogErrorEvent;
6910   -
6911   -};
6912   -
6913   -Database.prototype.readJavascript = function(name) {
6914   - "use strict";
6915   - return this.data.javascript[name];
6916   -};
6917   -
6918   -Database.prototype.readJavascriptNames = function() {
6919   - "use strict";
6920   - return this.getKeys("javascript");
6921   -};
6922   -
6923   -Database.prototype.readKeys = function(dbStoreName, callback) {
6924   - "use strict";
6925   -
6926   - var openRequest = database.open();
6927   -
6928   - openRequest.onsuccess = function(event) {
6929   - var db = event.target.result;
6930   - var tr = db.transaction([dbStoreName], "readonly");
6931   - var store = tr.objectStore(dbStoreName);
6932   - var cursor = store.openCursor();
6933   - var keys = [];
6934   - cursor.onsuccess = function(e) {
6935   - var res = e.target.result; // another cursor
6936   - if(res) {
6937   - keys.push(res.key);
6938   - res.continue();
6939   - } else {
6940   - callback(keys);
6941   - }
6942   - };
6943   - cursor.onerror = consoleLogErrorEvent;
6944   - db.close();
6945   - };
6946   -
6947   -};
6948   -
6949   -Database.prototype.getKeys = function(dbStoreName) {
6950   - "use strict";
6951   - var l = [];
6952   - var o = this.data[dbStoreName];
6953   - for(var name in o) {
6954   - l.push(name);
6955   - }
6956   - return l;
6957   -};
6958   -
6959   -Database.prototype.writeShader = function(data) {
6960   - "use strict";
6961   - assert(data.name);
6962   -
6963   - this.data.shaders[data.name] = data;
6964   -
6965   - // write the indexDB too
6966   - var openRequest = this.open();
6967   -
6968   - openRequest.onsuccess = function(event) {
6969   - var db = event.target.result;
6970   - var tr = db.transaction(["shaders"], "readwrite");
6971   - var store = tr.objectStore("shaders");
6972   -
6973   - var ob = store.put(data);
6974   -
6975   - //ob.onsuccess = callback;
6976   - ob.onerror = consoleLogErrorEvent;
6977   -
6978   - db.close();
6979   - };
6980   -
6981   - openRequest.onerror = consoleLogErrorEvent;
6982   -
6983   -};
6984   -
6985   -Database.prototype.readShader = function(name) {
6986   - "use strict";
6987   - return this.data.shaders[name];
6988   -};
6989   -
6990   -Database.prototype.readShaderNames = function() {
6991   - "use strict";
6992   - return this.getKeys("shaders");
6993   -};
6994   -
6995   -Database.prototype.readObjectStore = function(objectStoreName, recordName, callback, errorCallback) {
6996   - "use strict";
6997   - var openRequest = window.indexedDB.open(this.name, this.currentVersion);
6998   -
6999   - openRequest.onsuccess = function(event) {
7000   - var db = event.target.result;
7001   -
7002   - var transaction = db.transaction([objectStoreName], "readonly");
7003   - var objectStore = transaction.objectStore(objectStoreName);
7004   -
7005   - //x is some value
7006   - var ob = objectStore.get(recordName);
7007   -
7008   - ob.onsuccess = function(e) {
7009   - // read with undefined is still a success (should probably do this with cursor?)
7010   - if(e.target.result) {
7011   - callback(e.target.result);
7012   - } else {
7013   - errorCallback();
7014   - }
7015   - };
7016   -
7017   - ob.onerror = errorCallback;
7018   -
7019   - db.close();
7020   - };
7021   -
7022   - openRequest.onerror = errorCallback;
7023   -
7024   -};
7025   -
7026   -Database.prototype.writeImage = function(name, data) {
7027   - "use strict";
7028   -
7029   - this.data.images[name] = data;
7030   -
7031   - var openRequest = this.open();
7032   -
7033   - openRequest.onsuccess = function(event) {
7034   - var db = event.target.result;
7035   - var tr = db.transaction(["images"], "readwrite");
7036   - var store = tr.objectStore("images");
7037   -
7038   - var ob = store.put(data, name);
7039   -
7040   - //ob.onsuccess = callback;
7041   - ob.onerror = consoleLogErrorEvent;
7042   -
7043   - db.close();
7044   - };
7045   -
7046   - openRequest.onerror = consoleLogErrorEvent;
7047   -
7048   -};
7049   -
7050   -Database.prototype.readImage = function(name) {
7051   - "use strict";
7052   - return this.data.images[name];
7053   -};
7054   -
7055   -Database.prototype.readImageNames = function() {
7056   - "use strict";
7057   - return this.getKeys("images");
7058   -};
7059   -
7060   -//------------------------------------------------------------------------------
7061   -//
7062   -// app init functions
7063   -//
7064   -//------------------------------------------------------------------------------
7065   -function initDB() {
7066   - "use strict";
7067   - database = new Database();
7068   - window.setTimeout(init, 500);
7069   -}
7070   -
7071   -function init() {
7072   - "use strict";
7073   -
7074   - // var root = dali.stage.getRootLayer();
7075   - // root.name = "*" + root.name; // * at start means non selectable by convention
7076   - // root.delete(); // wrapper
7077   -
7078   - // database = new Database();
7079   -
7080   - test = new Test();
7081   -
7082   - uiApp = new UIApp();
7083   -
7084   - uiJavascriptTab = new UIJavascriptTab();
7085   -
7086   - uiImageTab = new UIImageTab();
7087   -
7088   - uiShaderTab = new UIShaderTab();
7089   -
7090   - database.initTabs(uiJavascriptTab, uiImageTab, uiShaderTab);
7091   -
7092   - $("a[rel=popover]").tooltip();
7093   -
7094   - Object.defineProperty(dali, "shader", {
7095   - enumerable: true,
7096   - configurable: false,
7097   - get: function() {
7098   - return getShader();
7099   - }
7100   - });
7101   -
7102   - Object.defineProperty(dali, "actor", {
7103   - enumerable: true,
7104   - configurable: false,
7105   - get: function() {
7106   - return getActor();
7107   - }
7108   - });
7109   -
7110   - Object.defineProperty(dali, "animation", {
7111   - enumerable: true,
7112   - configurable: false,
7113   - get: function() {
7114   - return getAnimation();
7115   - }
7116   - });
7117   -
7118   - eventHandler.handlersMouseMove.push(updateStatistics);
7119   -
7120   -}
7121   -
7122   -////////////////////////////////////////////////////////////////////////////////////////////////////
7123   -
7124   -dali.postRenderFunction = undefined;
emscripten-examples/install.sh deleted
1   -#!/bin/bash
2   -
3   -INSTALL_PATH=$DESKTOP_PREFIX/share/emscripten/
4   -
5   -echo "Installing Emscripten examples to: $INSTALL_PATH"
6   -
7   -mkdir -p $INSTALL_PATH
8   -cp -v *.{js,html} $INSTALL_PATH/
9   -
examples/metaball-refrac/metaball-refrac-example.cpp
... ... @@ -139,7 +139,6 @@ const char*const FRAG_SHADER = DALI_COMPOSE_SHADER (
139 139  
140 140 struct MetaballInfo
141 141 {
142   - //ShaderEffect shader;
143 142 Actor actor;
144 143 Vector2 position;
145 144 float radius;
... ...
resources/scripts/clock.json
... ... @@ -104,7 +104,6 @@
104 104 }
105 105 },
106 106 "connections": [],
107   - "shader-effects": {},
108 107 "gui-builder-device-height": 600,
109 108 "gui-builder-device-width": 400,
110 109 "gui-builder-json-version": "781"
... ...