#define BORDER(NAME, INDEX1, MIN, MAX, REL1, OFF1, REL2, OFF2, IMG1, INDEX2, IMG2) \ part \ { \ name: NAME; \ mouse_events: 0; \ description \ { \ state: "default" INDEX1; \ min: MIN; \ max: MAX; \ rel1 \ { \ relative: REL1; \ offset: OFF1; \ } \ rel2 \ { \ relative: REL2; \ offset: OFF2; \ } \ image \ { \ normal: IMG1; \ } \ } \ description \ { \ state: "default" INDEX2; \ inherit: "default" 0.0; \ image \ { \ normal: IMG2; \ } \ } \ } #define BORDER2(NAME, MIN, MAX, TO1, REL1, OFF1, TO2, REL2, OFF2, IMG1) \ part \ { \ name: NAME; \ description \ { \ state: "default" 0.0; \ min: MIN; \ max: MAX; \ rel1 \ { \ to: TO1; \ relative: REL1; \ offset: OFF1; \ } \ rel2 \ { \ to: TO2; \ relative: REL2; \ offset: OFF2; \ } \ image \ { \ normal: IMG1; \ } \ } \ } #define BORDER3(NAME, INDEX1, MIN, MAX, TO1, REL1, OFF1, TO2, REL2, OFF2, IMG1, INDEX2, IMG2) \ part \ { \ name: NAME; \ mouse_events: 0; \ description \ { \ state: "default" INDEX1; \ min: MIN; \ max: MAX; \ rel1 \ { \ to: TO1; \ relative: REL1; \ offset: OFF1; \ } \ rel2 \ { \ to: TO2; \ relative: REL2; \ offset: OFF2; \ } \ image \ { \ normal: IMG1; \ } \ } \ description \ { \ state: "default" INDEX2; \ inherit: "default" 0.0; \ image \ { \ normal: IMG2; \ } \ } \ } #define E_SWALLOW_CLIENT(NAME, TO1, REL1, OFF1, TO2, REL2, OFF2, COLOR) \ part \ { \ name: NAME; \ type: SWALLOW; \ mouse_events: 0; \ description \ { \ state: "default" 0.0; \ rel1 \ { \ to_y: TO1; \ relative: REL1; \ offset: OFF1; \ } \ rel2 \ { \ to_x: TO2; \ relative: REL2; \ offset: OFF2; \ } \ color: COLOR; \ } \ } #define TITLE_CLIP(NAME, MIN, TO1, REL1, OFF1, TO2, REL2, OFF2, COLOR) \ part \ { \ name: NAME; \ type: RECT; \ mouse_events: 0; \ description \ { \ state: "default" 0.0; \ min: MIN; \ rel1 \ { \ to: TO1; \ relative: REL1; \ offset: OFF1; \ } \ rel2 \ { \ to: TO2; \ relative: REL2; \ offset: OFF2; \ } \ color: COLOR; \ } \ } #define E_SWALLOW_ICON(NAME, CLIP, MIN, MAX, FIX, ASPECT, TO1, REL1, OFF1, TO2, REL2, OFF2) \ part \ { \ name: NAME; \ type: SWALLOW; \ mouse_events: 0; \ clip_to: CLIP; \ description \ { \ state: "default" 0.0; \ min: MIN; \ max: MAX; \ fixed: FIX; \ aspect: ASPECT; \ rel1 \ { \ to: TO1; \ relative: REL1; \ offset: OFF1; \ } \ rel2 \ { \ to: TO2; \ relative: REL2; \ offset: OFF2; \ } \ } \ } #define TITLE(NAME, CLIP, INDEX1, TO1, REL1, OFF1, TO2, REL2, OFF2, COLOR, COLOR3, INDEX2, COLOR1, COLOR4) \ part \ { \ name: NAME; \ type: TEXT; \ effect: SHADOW; \ mouse_events: 0; \ clip_to: CLIP; \ description \ { \ state: "default" INDEX1; \ rel1 \ { \ to: TO1; \ relative: REL1; \ offset: OFF1; \ } \ rel2 \ { \ to: TO2; \ relative: REL2; \ offset: OFF2; \ } \ color: COLOR; \ color3: COLOR3; \ text \ { \ text: ""; \ font: "Edje-Vera-Bold"; \ size: 10; \ min: 0 1; \ align: 0.0 0.5; \ } \ } \ description \ { \ state: "default" INDEX2; \ inherit: "default" INDEX1; \ color: COLOR1; \ color3: COLOR4; \ } \ } #define MOVE_WINDOW(NAME, MIN, MAX, TO1, REL1, OFF1, TO2, REL2, OFF2, COLOR) \ part \ { \ name: NAME; \ type: RECT; \ mouse_events: 0; \ description \ { \ state: "default" 0.0; \ min: MIN; \ max: MAX; \ rel1 \ { \ to: TO1; \ relative: REL1; \ offset: OFF1; \ } \ rel2 \ { \ to: TO2; \ relative: REL2; \ offset: OFF2; \ } \ color: COLOR; \ } \ } #define E_EVENT_ICON(NAME, CLIP, TO1, TO2, COLOR) \ part \ { \ name: NAME; \ type: RECT; \ clip_to: CLIP; \ mouse_events: 1; \ description \ { \ state: "default" 0.0; \ rel1 \ { \ to: TO1; \ } \ rel2 \ { \ to: TO2; \ } \ color: COLOR; \ } \ } #define CLIPS(NAME, MIN, MAX, TO, REL1, OFF1, REL2, OFF2) \ part \ { \ name: NAME; \ type: RECT; \ mouse_events: 0; \ description \ { \ state: "default" 0.0; \ min: MIN; \ max: MAX; \ aspect: 1 1; \ rel1 \ { \ to: TO; \ relative: REL1; \ offset: OFF1; \ } \ rel2 \ { \ to: TO; \ relative: REL2; \ offset: OFF2; \ } \ color: 255 255 255 255; \ } \ description \ { \ state: "clicked" 0.0; \ inherit: "default" 0.0; \ color: 215 215 215 255; \ } \ } #define BUTTONS(NAME, CLIP, SIZE, TO, IMG, IMG2) \ part \ { \ name: NAME; \ mouse_events: 1; \ clip_to: CLIP; \ description \ { \ state: "default" 0.0; \ min: SIZE; \ max: SIZE; \ rel1 \ { \ to: TO; \ } \ rel2 \ { \ to: TO; \ } \ image \ { \ normal: IMG; \ } \ } \ description \ { \ state: "default" 0.1; \ inherit: "default" 0.0; \ image \ { \ normal: IMG2; \ } \ } \ } #define RESIZE_TOP(NAME, MIN, MAX, TO1, REL1, OFF1, TO2, REL2, OFF2, COLOR) \ part \ { \ name: NAME; \ type: RECT; \ mouse_events: 0; \ description \ { \ state: "default" 0.0; \ min: MIN; \ max: MAX; \ rel1 \ { \ to: TO1; \ relative: REL1; \ offset: OFF1; \ } \ rel2 \ { \ to: TO2; \ relative: REL2; \ offset: OFF2; \ } \ color: COLOR; \ } \ } #define BORDER_BUTTON_ADV(NAME, TYPE, REL1X, REL1Y, OFF1X, OFF1Y, TO1X, TO1Y, REL2X, REL2Y, OFF2X, OFF2Y, TO2X, TO2Y) \ part \ { \ name: NAME"_base"; \ mouse_events: 0; \ description \ { \ state: "default" 0.0; \ min: 20 18; \ max: 20 18; \ fixed: 1 1; \ rel1 \ { \ to: NAME"_bg"; \ relative: 0.0 0.0; \ offset: 0 0; \ } \ rel2 \ { \ to: NAME"_bg"; \ offset: -1 -1; \ } \ image \ { \ normal: "bt.png"; \ border: 6 6 6 6; \ } \ } \ } \ part \ { \ name: NAME"_bg"; \ mouse_events: 0; \ description \ { \ state: "default" 0.0; \ min: 17 17; \ max: 17 17; \ fixed: 1 1; \ rel1 \ { \ to: NAME; \ relative: 0.0 0.0; \ offset: 0 0; \ } \ rel2 \ { \ to: NAME; \ relative: 1.0 1.0; \ offset: -1 -1; \ } \ image \ { \ normal: "button_wm0.png"; \ border: 7 6 7 6; \ } \ } \ } \ part \ { \ name: NAME"_detail"; \ mouse_events: 0; \ description \ { \ state: "default" 0.0; \ min: 17 17; \ max: 17 17; \ fixed: 1 1; \ rel1 \ { \ to: NAME"_bg"; \ relative: 0.0 0.0; \ offset: 0 0; \ } \ rel2 \ { \ to: NAME"_bg"; \ relative: 1.0 1.0; \ offset: 0 -1; \ } \ image \ { \ normal: "button_detail_"TYPE".png"; \ } \ } \ } \ part \ { \ name: NAME; \ type: RECT; \ description \ { \ state: "default" 0.0; \ align: 1.0 0.0; \ aspect: 1.0 1.0; \ aspect_preference: VERTICAL; \ rel1 \ { \ to_x: TO1X; \ to_y: TO1Y; \ relative: REL1X REL1Y; \ offset: OFF1X OFF1Y; \ } \ rel2 \ { \ to_x: TO2X; \ to_y: TO2Y; \ relative: REL2X REL2Y; \ offset: OFF2X OFF2Y; \ } \ color: 0 0 0 0; \ } \ } \ part \ { \ name: "e.event."NAME; \ type: RECT; \ repeat_events: 1; \ description \ { \ state: "default" 0.0; \ color: 0 0 0 0; \ rel1 \ { \ to: NAME; \ } \ rel2 \ { \ to: NAME; \ } \ } \ } #define BORDER_BUTTON(NAME, TYPE, REL1X, REL1Y, OFF1X, OFF1Y, TO1, REL2X, REL2Y, OFF2X, OFF2Y, TO2) \ BORDER_BUTTON_ADV(NAME,TYPE,REL1X,REL1Y,OFF1X,OFF1Y,TO1,TO1,REL2X,REL2Y,OFF2X,OFF2Y,TO2,TO2) #define FULL_SIZE_BORDER_BUTTON(TYPE) \ group \ { \ name: "e/widgets/border/default/"TYPE; \ parts \ { \ part \ { \ name: "whole"; \ type: RECT; \ description \ { \ state: "default" 0.0; \ rel1 { \ relative: 0.0 0.0; \ offset: 0 0; \ } \ rel2 \ { \ relative: 1.0 1.0; \ offset: -1 -1; \ } \ color: 255 0 0 0; \ } \ } \ BORDER_BUTTON("button",TYPE,0.0,0.0,-3,-3,"whole",1.0,1.0,2,2,"whole") \ } \ } #define PART_EVENT_MAP(NAME, REPEAT, PART_NAME) \ part \ { \ name: NAME; \ type: RECT; \ repeat_events: REPEAT; \ description \ { \ state: "default" 0.0; \ color: 0 0 0 0; \ rel1 \ { \ to: PART_NAME; \ } \ rel2 \ { \ to: PART_NAME; \ } \ } \ } group { name: "e/widgets/border/default/border"; data { item: "shaped" "1"; } parts { BORDER("top-left", 0.0, 7 24, 7 24, 0.0 0.0, 5 22, 0.0 0.0, 0 0, "tl-shaped.png", 0.1, "tl-shaped2.png") BORDER("top-right", 0.0, 7 24, 7 24, 1.0 0.0, 0 24, 1.0 0.0, -7 0, "tr-shaped.png", 0.1, "tr-shaped2.png") BORDER("bottom-left", 0.0, 5 5, 5 5, 0.0 1.0, 5 -5, 0.0 1.0, 0 -3, "bl.png", 0.1, "bl.png") BORDER("bottom-right", 0.0, 5 5, 5 5, 1.0 1.0, 0 -5, 1.0 1.0, -6 -3, "br.png", 0.1, "br.png") BORDER2("left-border", 5 1, 5 9999, "top-left", 0.0 1.0, 1 0, "bottom-left", 0.0 0.0, 2 0, "lb.png") BORDER2("right-border", 5 1, 5 9999, "top-right", 1.0 0.0, 0 24, "bottom-right", 1.0 0.0, -5 0, "rb.png") BORDER3("top-center", 0.0, 7 24, 9999 24, "top-left", 1.0 0.5, 0 0, "top-right", 0.0 0.5, -1 -2, "tb.png", 0.1, "tb2.png") BORDER3("bottom-center", 0.0, 6 6, 9999 6, "bottom-left", 1.0 1.0, 0 -2, "bottom-right", 0.0 1.0, -1 -2, "bb.png", 0.1, "bb.png") E_SWALLOW_CLIENT("e.swallow.client", "top-left", 0.0 1.0, 5 0, "bottom-right", 0.0 1.0, -1 -7, 0 0 0 255) TITLE_CLIP("title.area.clip", 1 19, "top-left", 0.0 0.5, 5 0, "button-min", 0.0 0.5, -5 0, 255 255 255 255) E_SWALLOW_ICON("e.swallow.icon", "title.area.clip", 19 19, 19 19, 1 1, 1.0 1.0, "title.area.clip", 0.0 0.5, 19 0, "title.area.clip", 0.0 0.5, 0 0) TITLE("e.text.title", "title.area.clip", 0.0, "title.area.clip", 0.0 0.5, 23 3, "title.area.clip", 1.0 0.5, -5 0, 255 255 255 255, 7 7 7 128, 0.1, 0 0 0 255, 170 168 169 0) MOVE_WINDOW("move-window", 1 22, 9999 22, "top-left", 0.0 0.0, 5 2, "top-right", 1.0 1.0, -7 -1, 255 0 0 0) PART_EVENT_MAP("e.event.resize.t", 1, "resize_t") PART_EVENT_MAP("e.event.titlebar", 1, "move-window") PART_EVENT_MAP("e.event.resize.r", 1, "right-border") PART_EVENT_MAP("e.event.resize.l", 1, "left-border") PART_EVENT_MAP("e.event.resize.br", 1, "bottom-right") PART_EVENT_MAP("e.event.resize.bl", 1, "bottom-left") PART_EVENT_MAP("e.event.resize.b", 1, "bottom-center") PART_EVENT_MAP("e.event.resize.tr", 1, "top-right") PART_EVENT_MAP("e.event.resize.tl", 1, "top-left") E_EVENT_ICON("e.event.icon", "title.area.clip", "e.swallow.icon", "e.swallow.icon", 255 255 255 0) CLIPS("close-clip", 28 18, 28 18, "top-right", 0.0 0.0, 0 0, 0.0 1.0, -18 0) CLIPS("max-clip", 28 18, 28 18, "close-clip", 0.0 0.0, 0 0, 0.0 1.0, -21 0) CLIPS("min-clip", 28 18, 28 18, "max-clip", 0.0 0.0, 0 0, 0.0 1.0, -21 0) BUTTONS("button-close", "close-clip", 28 18, "close-clip", "bt-close.png", "bt-close2.png") BUTTONS("button-max", "max-clip", 28 18, "max-clip", "bt-max.png", "bt-max2.png") BUTTONS("button-min", "min-clip", 28 18, "min-clip", "bt-min.png", "bt-min2.png") PART_EVENT_MAP("e.event.close", 1, "button-close") PART_EVENT_MAP("e.event.maximize", 1, "button-max") PART_EVENT_MAP("e.event.minimize", 1, "button-min") RESIZE_TOP("resize_t", 1 2, 9999 2, "top-left", 0.0 0.0, 0 0, "top-right", 0.0 0.0, -1 0, 255 0 0 0) } programs { program { name: "active"; signal: "e,state,focused"; source: "e"; action: STATE_SET "default" 0.0; target: "top-left"; target: "top-center"; target: "top-right"; target: "button-close"; target: "button-max"; target: "button-min"; } program { name: "inactive"; signal: "e,state,unfocused"; source: "e"; action: STATE_SET "default" 0.1; target: "top-left"; target: "top-center"; target: "top-right"; target: "button-close"; target: "button-max"; target: "button-min"; } program { name: "active.text"; signal: "e,state,focused"; source: "e"; action: STATE_SET "default" 0.0; target: "e.text.title"; } program { name: "inactive.text"; signal: "e,state,unfocused"; source: "e"; action: STATE_SET "default" 0.1; target: "e.text.title"; } program { name: "close_click"; signal: "mouse,down,1"; source: "button-close"; action: STATE_SET "clicked" 0.0; transition: DECELERATE 0.15; target: "close-clip"; } program { name: "close_unclick"; signal: "mouse,up,1"; source: "button-close"; action: STATE_SET "default" 0.0; transition: DECELERATE 0.5; target: "close-clip"; } program { name: "max_click"; signal: "mouse,down,1"; source: "button-max"; action: STATE_SET "clicked" 0.0; transition: DECELERATE 0.15; target: "max-clip"; } program { name: "max_unclick"; signal: "mouse,up,1"; source: "button-max"; action: STATE_SET "default" 0.0; transition: DECELERATE 0.5; target: "max-clip"; } program { name: "min_click"; signal: "mouse,down,1"; source: "button-min"; action: STATE_SET "clicked" 0.0; transition: DECELERATE 0.15; target: "min-clip"; } program { name: "min_unclick"; signal: "mouse,up,1"; source: "button-min"; action: STATE_SET "default" 0.0; transition: DECELERATE 0.5; target: "min-clip"; } } } group { name: "e/widgets/border/shaped/border"; data { item: "shaped" "1"; } parts { BORDER("top-left", 0.0, 7 24, 7 24, 0.0 0.0, 5 22, 0.0 0.0, 0 0, "tl-shaped.png", 0.1, "tl-shaped2.png") BORDER("top-right", 0.0, 7 24, 7 24, 1.0 0.0, 0 24, 1.0 0.0, -7 0, "tr-shaped.png", 0.1, "tr-shaped2.png") BORDER("bottom-left", 0.0, 5 5, 5 5, 0.0 1.0, 5 -5, 0.0 1.0, 0 -3, "bl.png", 0.1, "bl.png") BORDER("bottom-right", 0.0, 5 5, 5 5, 1.0 1.0, 0 -5, 1.0 1.0, -6 -3, "br.png", 0.1, "br.png") BORDER2("left-border", 5 1, 5 9999, "top-left", 0.0 1.0, 1 0, "bottom-left", 0.0 0.0, 2 0, "lb.png") BORDER2("right-border", 5 1, 5 9999, "top-right", 1.0 0.0, 0 24, "bottom-right", 1.0 0.0, -5 0, "rb.png") BORDER3("top-center", 0.0, 7 24, 9999 24, "top-left", 1.0 0.5, 0 0, "top-right", 0.0 0.5, -1 -2, "tb.png", 0.1, "tb2.png") BORDER3("bottom-center", 0.0, 6 6, 9999 6, "bottom-left", 1.0 1.0, 0 -2, "bottom-right", 0.0 1.0, -1 -2, "bb.png", 0.1, "bb.png") E_SWALLOW_CLIENT("e.swallow.client", "top-left", 0.0 1.0, 5 0, "bottom-right", 0.0 1.0, -1 -7, 0 0 0 255) TITLE_CLIP("title.area.clip", 1 19, "top-left", 0.0 0.5, 5 0, "button-min", 0.0 0.5, -5 0, 255 255 255 255) E_SWALLOW_ICON("e.swallow.icon", "title.area.clip", 19 19, 19 19, 1 1, 1.0 1.0, "title.area.clip", 0.0 0.5, 19 0, "title.area.clip", 0.0 0.5, 0 0) TITLE("e.text.title", "title.area.clip", 0.0, "title.area.clip", 0.0 0.5, 23 3, "title.area.clip", 1.0 0.5, -5 0, 255 255 255 255, 7 7 7 128, 0.1, 0 0 0 255, 170 168 169 0) MOVE_WINDOW("move-window", 1 22, 9999 22, "top-left", 0.0 0.0, 5 2, "top-right", 1.0 1.0, -7 -1, 255 0 0 0) PART_EVENT_MAP("e.event.resize.t", 1, "resize_t") PART_EVENT_MAP("e.event.titlebar", 1, "move-window") PART_EVENT_MAP("e.event.resize.r", 1, "right-border") PART_EVENT_MAP("e.event.resize.l", 1, "left-border") PART_EVENT_MAP("e.event.resize.br", 1, "bottom-right") PART_EVENT_MAP("e.event.resize.bl", 1, "bottom-left") PART_EVENT_MAP("e.event.resize.b", 1, "bottom-center") PART_EVENT_MAP("e.event.resize.tr", 1, "top-right") PART_EVENT_MAP("e.event.resize.tl", 1, "top-left") E_EVENT_ICON("e.event.icon", "title.area.clip", "e.swallow.icon", "e.swallow.icon", 255 255 255 0) CLIPS("close-clip", 28 18, 28 18, "top-right", 0.0 0.0, 0 0, 0.0 1.0, -18 0) CLIPS("max-clip", 28 18, 28 18, "close-clip", 0.0 0.0, 0 0, 0.0 1.0, -21 0) CLIPS("min-clip", 28 18, 28 18, "max-clip", 0.0 0.0, 0 0, 0.0 1.0, -21 0) BUTTONS("button-close", "close-clip", 28 18, "close-clip", "bt-close.png", "bt-close2.png") BUTTONS("button-max", "max-clip", 28 18, "max-clip", "bt-max.png", "bt-max2.png") BUTTONS("button-min", "min-clip", 28 18, "min-clip", "bt-min.png", "bt-min2.png") PART_EVENT_MAP("e.event.close", 1, "button-close") PART_EVENT_MAP("e.event.maximize", 1, "button-max") PART_EVENT_MAP("e.event.minimize", 1, "button-min") RESIZE_TOP("resize_t", 1 2, 9999 2, "top-left", 0.0 0.0, 0 0, "top-right", 0.0 0.0, -1 0, 255 0 0 0) } programs { program { name: "active"; signal: "e,state,focused"; source: "e"; action: STATE_SET "default" 0.0; target: "top-left"; target: "top-center"; target: "top-right"; target: "button-close"; target: "button-max"; target: "button-min"; } program { name: "inactive"; signal: "e,state,unfocused"; source: "e"; action: STATE_SET "default" 0.1; target: "top-left"; target: "top-center"; target: "top-right"; target: "button-close"; target: "button-max"; target: "button-min"; } program { name: "active.text"; signal: "e,state,focused"; source: "e"; action: STATE_SET "default" 0.0; target: "e.text.title"; } program { name: "inactive.text"; signal: "e,state,unfocused"; source: "e"; action: STATE_SET "default" 0.1; target: "e.text.title"; } program { name: "close_click"; signal: "mouse,down,1"; source: "button-close"; action: STATE_SET "clicked" 0.0; transition: DECELERATE 0.15; target: "close-clip"; } program { name: "close_unclick"; signal: "mouse,up,1"; source: "button-close"; action: STATE_SET "default" 0.0; transition: DECELERATE 0.5; target: "close-clip"; } program { name: "max_click"; signal: "mouse,down,1"; source: "button-max"; action: STATE_SET "clicked" 0.0; transition: DECELERATE 0.15; target: "max-clip"; } program { name: "max_unclick"; signal: "mouse,up,1"; source: "button-max"; action: STATE_SET "default" 0.0; transition: DECELERATE 0.5; target: "max-clip"; } program { name: "min_click"; signal: "mouse,down,1"; source: "button-min"; action: STATE_SET "clicked" 0.0; transition: DECELERATE 0.15; target: "min-clip"; } program { name: "min_unclick"; signal: "mouse,up,1"; source: "button-min"; action: STATE_SET "default" 0.0; transition: DECELERATE 0.5; target: "min-clip"; } } } group { name: "e/widgets/border/dialog/border"; data { item: "shaped" "1"; } parts { BORDER("bottom-left", 0.0, 5 5, 5 5, 0.0 1.0, 5 -5, 0.0 1.0, 0 -3, "bl.png", 0.1, "bl.png") BORDER("bottom-right", 0.0, 5 5, 5 5, 1.0 1.0, 0 -5, 1.0 1.0, -6 -3, "br.png", 0.1, "br.png") BORDER("top-left", 0.0, 7 24, 7 24, 0.0 0.0, 5 22, 0.0 0.0, 0 0, "tl-shaped.png", 0.1, "tl-shaped2.png") BORDER("top-right", 0.0, 7 24, 7 24, 1.0 0.0, 0 24, 1.0 0.0, -7 0, "tr-shaped.png", 0.1, "tr-shaped2.png") BORDER2("left-border", 5 1, 5 9999, "top-left", 0.0 1.0, 1 0, "bottom-left", 0.0 0.0, 2 0, "lb.png") BORDER2("right-border", 5 1, 5 9999, "top-right", 1.0 0.0, 0 24, "bottom-right", 1.0 0.0, -5 0, "rb.png") BORDER3("top-center", 0.0, 7 24, 9999 24, "top-left", 1.0 0.5, 0 0, "top-right", 0.0 0.5, -1 -2, "tb.png", 0.1, "tb2.png") BORDER3("bottom-center", 0.0, 6 6, 9999 6, "bottom-left", 1.0 1.0, 0 -2, "bottom-right", 0.0 1.0, -1 -2, "bb.png", 0.1, "bb.png") E_SWALLOW_CLIENT("e.swallow.client", "top-left", 0.0 1.0, 5 0, "bottom-right", 0.0 1.0, -1 -7, 0 0 0 255) TITLE_CLIP("title.area.clip", 1 19, "top-left", 0.0 0.5, 5 0, "button-close", 0.0 0.5, -5 0, 255 255 255 255) E_SWALLOW_ICON("e.swallow.icon", "title.area.clip", 19 19, 19 19, 1 1, 1.0 1.0, "title.area.clip", 0.0 0.5, 19 0, "title.area.clip", 0.0 0.5, 0 0) TITLE("e.text.title", "title.area.clip", 0.0, "title.area.clip", 0.0 0.5, 23 3, "title.area.clip", 1.0 0.5, -5 0, 255 255 255 255, 7 7 7 128, 0.1, 0 0 0 255, 170 168 169 0) MOVE_WINDOW("move-window", 1 22, 9999 22, "top-left", 0.0 0.0, 5 2, "top-right", 1.0 1.0, -7 -1, 255 0 0 0) PART_EVENT_MAP("e.event.resize.t", 1, "resize_t") PART_EVENT_MAP("e.event.titlebar", 1, "move-window") PART_EVENT_MAP("e.event.resize.r", 1, "right-border") PART_EVENT_MAP("e.event.resize.l", 1, "left-border") PART_EVENT_MAP("e.event.resize.br", 1, "bottom-right") PART_EVENT_MAP("e.event.resize.bl", 1, "bottom-left") PART_EVENT_MAP("e.event.resize.b", 1, "bottom-center") PART_EVENT_MAP("e.event.resize.tr", 1, "top-right") PART_EVENT_MAP("e.event.resize.tl", 1, "top-left") E_EVENT_ICON("e.event.icon", "title.area.clip", "e.swallow.icon", "e.swallow.icon", 255 255 255 0) CLIPS("close-clip", 28 18, 28 18, "top-right", 0.0 0.0, 0 0, 0.0 1.0, -18 0) BUTTONS("button-close", "close-clip", 28 18, "close-clip", "bt-close.png", "bt-close2.png") PART_EVENT_MAP("e.event.close", 1, "button-close") RESIZE_TOP("resize_t", 1 2, 9999 2, "top-left", 0.0 0.0, 0 0, "top-right", 0.0 0.0, -1 0, 255 0 0 0) } programs { program { name: "active"; signal: "e,state,focused"; source: "e"; action: STATE_SET "default" 0.0; target: "top-left"; target: "top-center"; target: "top-right"; target: "button-close"; } program { name: "inactive"; signal: "e,state,unfocused"; source: "e"; action: STATE_SET "default" 0.1; target: "top-left"; target: "top-center"; target: "top-right"; target: "button-close"; } program { name: "active.text"; signal: "e,state,focused"; source: "e"; action: STATE_SET "default" 0.0; target: "e.text.title"; } program { name: "inactive.text"; signal: "e,state,unfocused"; source: "e"; action: STATE_SET "default" 0.1; target: "e.text.title"; } program { name: "close_click"; signal: "mouse,down,1"; source: "button-close"; action: STATE_SET "clicked" 0.0; transition: DECELERATE 0.15; target: "close-clip"; } program { name: "close_unclick"; signal: "mouse,up,1"; source: "button-close"; action: STATE_SET "default" 0.0; transition: DECELERATE 0.5; target: "close-clip"; } } } group { name: "e/widgets/border/noresize_dialog/border"; data { item: "shaped" "1"; } parts { BORDER("bottom-left", 0.0, 5 5, 5 5, 0.0 1.0, 5 -5, 0.0 1.0, 0 -3, "bl.png", 0.1, "bl.png") BORDER("bottom-right", 0.0, 5 5, 5 5, 1.0 1.0, 0 -5, 1.0 1.0, -6 -3, "br.png", 0.1, "br.png") BORDER("top-left", 0.0, 7 24, 7 24, 0.0 0.0, 5 22, 0.0 0.0, 0 0, "tl-shaped.png", 0.1, "tl-shaped2.png") BORDER("top-right", 0.0, 7 24, 7 24, 1.0 0.0, 0 24, 1.0 0.0, -7 0, "tr-shaped.png", 0.1, "tr-shaped2.png") BORDER2("left-border", 5 1, 5 9999, "top-left", 0.0 1.0, 1 0, "bottom-left", 0.0 0.0, 2 0, "lb.png") BORDER2("right-border", 5 1, 5 9999, "top-right", 1.0 0.0, 0 24, "bottom-right", 1.0 0.0, -5 0, "rb.png") BORDER3("top-center", 0.0, 7 24, 9999 24, "top-left", 1.0 0.5, 0 0, "top-right", 0.0 0.5, -1 -2, "tb.png", 0.1, "tb2.png") BORDER3("bottom-center", 0.0, 6 6, 9999 6, "bottom-left", 1.0 1.0, 0 -2, "bottom-right", 0.0 1.0, -1 -2, "bb.png", 0.1, "bb.png") E_SWALLOW_CLIENT("e.swallow.client", "top-left", 0.0 1.0, 5 0, "bottom-right", 0.0 1.0, -1 -7, 0 0 0 255) TITLE_CLIP("title.area.clip", 1 19, "top-left", 0.0 0.5, 5 0, "button-close", 0.0 0.5, -5 0, 255 255 255 255) E_SWALLOW_ICON("e.swallow.icon", "title.area.clip", 19 19, 19 19, 1 1, 1.0 1.0, "title.area.clip", 0.0 0.5, 19 0, "title.area.clip", 0.0 0.5, 0 0) TITLE("e.text.title", "title.area.clip", 0.0, "title.area.clip", 0.0 0.5, 23 3, "title.area.clip", 1.0 0.5, -5 0, 255 255 255 255, 7 7 7 128, 0.1, 0 0 0 255, 170 168 169 0) MOVE_WINDOW("move-window", 1 22, 9999 22, "top-left", 0.0 0.0, 5 2, "top-right", 1.0 1.0, -7 -1, 255 0 0 0) PART_EVENT_MAP("e.event.resize.t", 1, "resize_t") PART_EVENT_MAP("e.event.titlebar", 1, "move-window") PART_EVENT_MAP("e.event.resize.r", 1, "right-border") PART_EVENT_MAP("e.event.resize.l", 1, "left-border") PART_EVENT_MAP("e.event.resize.br", 1, "bottom-right") PART_EVENT_MAP("e.event.resize.bl", 1, "bottom-left") PART_EVENT_MAP("e.event.resize.b", 1, "bottom-center") PART_EVENT_MAP("e.event.resize.tr", 1, "top-right") PART_EVENT_MAP("e.event.resize.tl", 1, "top-left") E_EVENT_ICON("e.event.icon", "title.area.clip", "e.swallow.icon", "e.swallow.icon", 255 255 255 0) CLIPS("close-clip", 28 18, 28 18, "top-right", 0.0 0.0, 0 0, 0.0 1.0, -18 0) BUTTONS("button-close", "close-clip", 28 18, "close-clip", "bt-close.png", "bt-close2.png") PART_EVENT_MAP("e.event.close", 1, "button-close") RESIZE_TOP("resize_t", 1 2, 9999 2, "top-left", 0.0 0.0, 0 0, "top-right", 0.0 0.0, -1 0, 255 0 0 0) } programs { { program { name: "active"; signal: "e,state,focused"; source: "e"; action: STATE_SET "default" 0.0; target: "top-left"; target: "top-center"; target: "top-right"; target: "button-close"; } program { name: "inactive"; signal: "e,state,unfocused"; source: "e"; action: STATE_SET "default" 0.1; target: "top-left"; target: "top-center"; target: "top-right"; target: "button-close"; } program { name: "active.text"; signal: "e,state,focused"; source: "e"; action: STATE_SET "default" 0.0; target: "e.text.title"; } program { name: "inactive.text"; signal: "e,state,unfocused"; source: "e"; action: STATE_SET "default" 0.1; target: "e.text.title"; } program { name: "close_click"; signal: "mouse,down,1"; source: "button-close"; action: STATE_SET "clicked" 0.0; transition: DECELERATE 0.15; target: "close-clip"; } program { name: "close_unclick"; signal: "mouse,up,1"; source: "button-close"; action: STATE_SET "default" 0.0; transition: DECELERATE 0.5; target: "close-clip"; } } } group { name: "e/widgets/border/pixel/border"; parts { part { name: "pixel"; type: RECT; description { state: "default" 0.0; visible: 1; rel1 { relative: 0.0 0.0; offset: 0 0; } rel2 { relative: 1.0 1.0; offset: -1 -1; } color: 32 36 40 255; } } part { name: "whole"; type: RECT; description { state: "default" 0.0; rel1 { relative: 0.0 0.0; offset: 0 0; } rel2 { relative: 1.0 1.0; offset: -1 -1; } color: 104 108 111 255; } } E_SWALLOW_CLIENT("e.swallow.client", "pixel", 0.0 0.0, 1 1, "pixel", 1.0 1.0, -2 -2, 0 0 0 255) PART_EVENT_MAP("e.event.titlebar", 1, "pixel") } } FULL_SIZE_BORDER_BUTTON("close") FULL_SIZE_BORDER_BUTTON("minimize") FULL_SIZE_BORDER_BUTTON("maximize") FULL_SIZE_BORDER_BUTTON("shade") FULL_SIZE_BORDER_BUTTON("stick") FULL_SIZE_BORDER_BUTTON("kill") FULL_SIZE_BORDER_BUTTON("locks") FULL_SIZE_BORDER_BUTTON("borderless") FULL_SIZE_BORDER_BUTTON("fullscreen") FULL_SIZE_BORDER_BUTTON("remember") FULL_SIZE_BORDER_BUTTON("skip_winlist") FULL_SIZE_BORDER_BUTTON("sendto") FULL_SIZE_BORDER_BUTTON("stacking") FULL_SIZE_BORDER_BUTTON("stack_on_top") FULL_SIZE_BORDER_BUTTON("stack_normal") FULL_SIZE_BORDER_BUTTON("stack_below") FULL_SIZE_BORDER_BUTTON("properties")