## Includes {#includes}
-The "includes" section is an array of filenames to be merged in order to
+The "includes" section is an array of file names to be merged in order to
create a final in memory JSON tree.
The merge process will walk key, value attributes from the root JSON
}, //
... //
{ //
- "type":"ImageActor" // An DALi type or a template name
+ "type":"ImageView" // An DALi type or a template name
"image": //
{ //
- "filename":"{IMAGES}b.jpg" // Image filename substring replacement
+ "url":"{IMAGES}b.jpg" // Image filename substring replacement
}, //
"size": "{SIZE}" //
} // Property replacement
{ //
"basic-text": // The template name
{ //
- "type":"ImageActor", // Concrete DALi Type/Class to create
+ "type":"ImageView", // Concrete DALi Type/Class to create
"styles":["base-style"], // Style list to apply
"name":"image", // }
"image": // } property name : value
{ // }
- "filename":"{IMAGES}/b.jpg" //
+ "url":"{IMAGES}/b.jpg" //
}, //
- "parent-origin": "CENTER" //
+ "parentOrigin": "CENTER" //
... //
"actors": // A tree of sub actors
[ //
"type":"TextView" //
"name":"text", //
"text":"Hello World", //
- "parent-origin": "CENTER", //
+ "parentOrigin": "CENTER", //
} //
] //
} //
~~~
When applied to an actor tree the actors are referenced by name. Names
-are not unique in Dali.
+are not unique in DALi.
When a style is applied in code DALi will perform a depth first search
stopping with the first matching name.
{ //
"duration": 10, // Duration in seconds
"loop": false, // Whether to loop.
- "end-action": "Bake", // Whether to set final value(bake) or
+ "endAction": "Bake", // Whether to set final value(bake) or
// reset
- "disconnect-aciton": "Discard", // Whether 'Bake' or 'Discard' when disconnected
+ "disconnectAction": "Discard", // Whether 'Bake' or 'Discard' when disconnected
"properties":
[
// Properties changed in this animation
"actor":"image", // Actor found by name from the stage
"property":"rotation", // Property to change
"value":[0, 0.1, 0, 0], // Value to set
- "alpha-function": "EASE\_IN\_OUT", // Interpolation function
+ "alphaFunction": "EASE\_IN\_OUT", // Interpolation function
//
- "time-period": // Time period for change
+ "timePeriod": // Time period for change
{"delay": 0,
"duration": 3
}
[190.0,-150.0,0.0]
],
// curvature automatically creates
- "curvature":0.35, // control-points
+ "curvature":0.35, // controlPoints
//
- "control-points": [...] // Otherwise control-points can be
+ "controlPoints": [...] // Otherwise controlPoints can be
// directly specified.
} //
}, //
"animations": //
{ //
- "path-animation":
+ "pathAnimation":
{
"duration": 3.0,
"properties":
"path":"path0", // animation.
"forward":[1,0,0], // Forward vector specifies orientation
// whilst travelling along the path
- "alpha-function": "EASE\_IN\_OUT", // (optional)
- "time-period":
+ "alphaFunction": "EASE\_IN\_OUT", // (optional)
+ "timePeriod":
{
"delay": 0,
"duration": 3
} //
~~~
-## Shaders {#shaders}
-
-The shader section of the JSON file defines a library of shader effect
-instances that are created on demand.
-
-The shaders are referred to by name from the template, style, stage or
-animation sections.
-
-Multiple actors can set the same shader as the name refers to a single
-instance.
-
-Similarly one named shader instance can be set to several actors and can
-be animated by one animation.
-
-~~~
- { //
- "shader-effects": // Shader Effect section
- { //
- "myshader1": // Shader instance name
- { //
- "program": //
- { // Prefixs are placed before DALi uniforms.
- "vertexPrefix": "", // (Useful for \#defines.)
- "vertex":"", // Glsl vertex program
- "fragmentPrefix": "",
- "fragment": "", // Glsl fragment program.
- "geometry-type": "GEOMETRY_TYPE_IMAGE", // Geometry type(see DALi documentation)
- },
- "geometry-hints": "HINT_NONE": // Geometry hints (see DALi documentation)
- "grid-density": 0, // Grid density(see DALi documentation)
- "image":
- {
- "filename": "" // Effect image available as a second texture unit.
- }
- },
- ...
- },
- "stage":
- [{
- "type": "ImageActor",
- "effect": "myshader1",
- ...
- }]
- }
-~~~
-
At least one of the vertex or fragment fields is mandatory. All
other fields are optional will use internal defaults.
When the animation is created from code (or from a signal) the property
name search begins on the actor, if it isn't found the search continues
-on the attached shader object.
+on the attached renderer, and then on the attached shader object.
The actor property names and shader uniform names must not clash for the
uniform to animate correctly. The convention in DALi is to prepend
...
]
},
- "shader-effects":
+ "shaderEffects":
{
"myshader1":
{
The stage section supports the immediate creation of actors at the time
the JSON is loaded.
-The stage is a tree of actors that can be added to Dali's stage object.
+The stage is a tree of actors that can be added to DALi's stage object.
~~~
// C++
"stage": \\ Stage Section Number
[ \\ An array of actors
{
- "type": "ImageActor",
+ "type": "ImageView",
...
"actors": \\ Each actor can have children
\\ creating a tree
# Actor and Control Properties {#actorprop}
-Each control has a set of supported properties documented in the "Dali
+Each control has a set of supported properties documented in the "DALi
UI Control Specification".
Please refer to the above document for further information about specific