Page MenuHomePhabricator

Edje Template
Updated 1,257 Days AgoPublic

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 { ... }
}
Last Author
rimmed
Last Edited
Aug 12 2015, 2:17 AM
Projects
None
Subscribers
NikaWhite, rimmed