Edje Template
Edje Template
IMPORTANT: Not finished
Terms:
Theme - collection (union) of styles in the one object. Usually it's a Elm_Theme.
Style (group) - combining parts in one layout, which define widget face or custom layout for use in the user application. This layout can handle the mouse events and user signals from application. Also, part animation here too.
.est - edje source template file
.ebt - edje binary template file
Now, to make a new theme for Elementary or any EFL applications need to know a lot of internal structure of the widget, in the Elementary case, or application. Need to know how to interact with each style (edje object with loaded group) and logic (C code). This is a very strong constraint and not everyone can to make new theme.
syntax
template { edje: "edje_version"; version: "application" "version"; [depend: "group_name";] color_classes { // the required color_classes for given theme; "name"; ["name";] } group { name: "group_name"; [alias: "alias_name1";] [data.item: "key1";] parts { part { name: "part_name"; [alias: "aliased_name";] // actually for swallow type: TYPE1[/TYPE2]...; [priority: MANDATORY | RECOMMENDED;] [entry_mode: NONE | PLAIN | EDITABLE | PASSWORD;] //available only for TEXTBLOCK [dragable: 1 | 0;] [source: "another_group_name";] //available only for GROUP } part { ... } } signals { global: "mouse,move", "mouse,clicked,1", etc; in: "sig_name1" "source"; out: "sig_name2" "source"; } } group { ... } }