-/**
- *
+<!--
+/**-->
+
[TOC]
# DALi JSON Specification {#script-json-specification}
## Overview {#overview}
-This document describes the Dali JSON specification.
+This document describes the DALi JSON specification.
The format is not yet formally versioned within the JSON.
# General format {#format}
Concrete Actors and Controls can be created from types registered in the
-Dali Type Registry.
+DALi Type Registry.
Template, style and scene sections all configure Actors and Controls via
-the Dali property system.
+the DALi property system.
The JSON format deviates from the formal JSON specification and allows C style comments.
"stage": // Stage section
[ //
{ // Actors|Controls to create on JSON file load
- "type": "basic-text", // A Dali Control or a template name
+ "type": "basic-text", // A DALi Control or a template name
"styles":["base-theme","light-theme"] // Style list to apply to this instance
} //
] //
}, //
... //
{ //
- "type":"ImageActor" // An Dali type or a template name
+ "type":"ImageActor" // An DALi type or a template name
"image": //
{ //
"filename":"{IMAGES}b.jpg" // Image filename substring replacement
{ //
"basic-text": // The template name
{ //
- "type":"ImageActor", // Concrete Dali Type/Class to create
+ "type":"ImageActor", // Concrete DALi Type/Class to create
"styles":["base-style"], // Style list to apply
"name":"image", // }
"image": // } property name : value
{ // }
"filename":"{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", //
} //
] //
} //
~~~
A template has a special 'type' property which must contain a concrete
-Dali Actor or Control type name.
+DALi Actor or Control type name.
A template has a special 'styles' property which contains a list of
styles to apply when creating using the template.
When applied to an actor tree the actors are referenced by name. Names
are not unique in Dali.
-When a style is applied in code Dali will perform a depth first search
+When a style is applied in code DALi will perform a depth first search
stopping with the first matching name.
Typically an application developer will apply the style to the template
{ //
"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
~~~
{ //
- "shader-effects": // Shader Effect section
+ "shaderEffects": // Shader Effect section
{ //
"myshader1": // Shader instance name
{ //
"vertex":"", // Glsl vertex program
"fragmentPrefix": "",
"fragment": "", // Glsl fragment program.
- "geometry-type": "GEOMETRY_TYPE_IMAGE", // Geometry type(see DALi documentation)
+ "geometryType": "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)
+ "geometryHints": "HINT_NONE": // Geometry hints (see DALi documentation)
+ "gridDensity": 0, // Grid density(see DALi documentation)
"image":
{
"filename": "" // Effect image available as a second texture unit.
...
]
},
- "shader-effects":
+ "shaderEffects":
{
"myshader1":
{
{
"type": "TextView",
\\ The Type to create; this can be a
- ... \\ concrete Dali type (actor/control)
+ ... \\ concrete DALi type (actor/control)
\\ or a template name.
"styles": ["base-style"]
\\ A list of styles to apply to the