#define GROUP_DEFAULTS \ description { \ state: "default" 0.0; \ min: 240 150; \ max: 240 150; \ fixed: 1 1; \ rel1 { \ to: "background"; \ relative: 0.0 0.0; \ offset: 0 50; \ }\ }\ description { \ state: "hidden" 0.0; \ inherit: "default" 0.0; \ visible: 0; \ } \ group { name: "main"; min: 240 200; parts { part { name: "background"; type: IMAGE; mouse_events: 0; description { state: "default" 0.0; min: 240 240; max: 240 240; rel1 { relative: 1.0 1.0; offset: -240 -240; } rel2 { relative: 1.0 1.0; } image { normal: "ilist_1.png"; } } } part { name: "field_bg"; mouse_events: 0; type: RECT; description { state: "default" 0.0; color: 0 0 0 5; rel1 { relative: 0.0 1.0; offset: 4 -240; } rel2 { relative: 1.0 1.0; offset: -4 -182; } } } part { name: "field"; mouse_events: 0; type: TEXTBLOCK; description { state: "default" 0.0; color: 30 30 30 255; rel1 { to: "field_bg"; relative: 0 0; offset: 4 4; } rel2 { to: "field_bg"; relative: 1 1; offset: -5 -5; } text { text: ""; style: "field_style"; } } } part { name: "alpha"; type: GROUP; source: "alpha"; mouse_events: 1; repeat_events: 1; GROUP_DEFAULTS } part { name: "special-1"; type: GROUP; source: "special-1"; mouse_events: 1; repeat_events: 1; GROUP_DEFAULTS } part { name: "special-2"; type: GROUP; source: "special-2"; mouse_events: 1; repeat_events: 1; GROUP_DEFAULTS } } programs { program { name: "show-alpha"; signal: "show-alpha"; action: STATE_SET "default" 0.0; target: "alpha"; } program { name: "hide-alpha"; signal: "hide-alpha"; action: STATE_SET "hidden" 0.0; target: "alpha"; } program { name: "hide-special-1"; signal: "hide-special-1"; action: STATE_SET "hidden" 0.0; target: "special-1"; } program { name: "show-special-1"; signal: "show-special-1"; action: STATE_SET "default" 0.0; target: "special-1"; } program { name: "hide-special-2"; signal: "hide-special-2"; action: STATE_SET "hidden" 0.0; target: "special-2"; } program { name: "show-special-2"; signal: "show-special-2"; action: STATE_SET "default" 0.0; target: "special-2"; } program { name: "hide-signal"; signal: "kbd-hide"; action: SIGNAL_EMIT "kbd" "hide"; } program { name: "toggle-alpha"; signal: "toggle-alpha"; after: "hide-special-1"; after: "hide-special-2"; after: "show-alpha"; } program { name: "toggle-special-1"; signal: "toggle-special-1"; after: "hide-alpha"; after: "hide-special-2"; after: "show-special-1"; } program { name: "toggle-special-2"; signal: "toggle-special-2"; after: "hide-alpha"; after: "hide-special-1"; after: "show-special-2"; } program { name: ".@123_clicked"; signal: "mouse,clicked,1"; source: "*:key-bg-.@123"; after: "toggle-special-1"; } program { name: "ABC_clicked"; signal: "mouse,clicked,1"; source: "*:key-bg-ABC"; after: "toggle-alpha"; } program { name: "symb_clicked"; signal: "mouse,clicked,1"; source: "special-1:key-bg-symb"; after: "toggle-special-2"; } program { name: "hide_clicked"; signal: "mouse,clicked,1"; source: "*:key-bg-hide"; after: "hide-signal"; } program { name: "init"; signal: "show"; after: "toggle-alpha"; } } }