group { "efl/progressbar/horizontal"; images.image: "inset_bar_horiz_base.png" COMP; images.image: "inset_bar_horiz_light.png" COMP; images.image: "inset_bar_horiz_inside_base.png" COMP; images.image: "inset_bar_horiz_inside_light.png" COMP; images.image: "inset_bar_horiz_glow_base.png" COMP; images.image: "inset_bar_horiz_glow_light.png" COMP; images.image: "inset_bar_horiz_glow_inv_base.png" COMP; images.image: "inset_bar_horiz_glow_inv_light.png" COMP; images.image: "inset_bar_horiz_glow_mid_base.png" COMP; images.image: "inset_bar_horiz_glow_mid_light.png" COMP; #define ICON 1 #define LABEL 2 #define DISABLE 4 script { public slmode; public eval_mode(m) { new ic = m & ICON; new l = m & LABEL; new d = m & DISABLE; if (l) { if (!d) { set_state(PART:"elm.text", "visible", 0.0); } else { set_state(PART:"elm.text", "disabled_visible", 0.0); } } else { set_state(PART:"elm.text", "default", 0.0); } if (ic) { set_state(PART:"elm.swallow.content", "visible", 0.0); set_state(PART:"sizer.content", "visible", 0.0); } else { set_state(PART:"elm.swallow.content", "default", 0.0); set_state(PART:"sizer.content", "default", 0.0); } if (!d) { set_state(PART:"dis_clip", "default", 0.0); } else { set_state(PART:"dis_clip", "disabled", 0.0); } } } parts { part { name: "dis_clip"; type: RECT; description { state: "default" 0.0; rel1.to: "elm.swallow.content"; rel2.to: "elm.swallow.content"; } description { state: "disabled" 0.0; inherit: "default" 0.0; color: 255 255 255 64; } } part { name: "pulse_clip"; type: RECT; description { state: "default" 0.0; rel1.relative: -2.0 -2.0; rel2.relative: 3.0 3.0; visible: 0; } description { state: "pulse" 0.0; inherit: "default" 0.0; visible: 1; } } part { name: "fract_clip"; type: RECT; description { state: "default" 0.0; rel1.relative: -2.0 -2.0; rel2.relative: 3.0 3.0; } description { state: "pulse" 0.0; inherit: "default" 0.0; visible: 0; } } part { name: "elm.swallow.content"; type: SWALLOW; clip_to: "dis_clip"; required; description { state: "default" 0.0; visible: 0; align: 0.0 0.5; fixed: 1 0; rel1.offset: 0 2; rel2.offset: -1 -3; rel2.relative: 0.0 1.0; } description { state: "visible" 0.0; inherit: "default" 0.0; visible: 1; aspect: 1.0 1.0; aspect_preference: VERTICAL; rel1.offset: 2 2; rel2.offset: 2 -3; } } part { name: "sizer.content"; type: TEXT; mouse_events: 0; scale: 1; description { state: "default" 0.0; fixed: 1 1; visible: 0; text { font: FN; size: 10; min: 0 0; text_class: "progressbar_text"; } } description { state: "visible" 0.0; inherit: "default" 0.0; rel1.to: "elm.swallow.content"; rel2.to: "elm.swallow.content"; text { min: 1 1; ellipsis: -1; text: "M"; } } } part { name: "elm.text"; type: TEXT; mouse_events: 0; effect: SHADOW BOTTOM; scale: 1; required; description { state: "default" 0.0; fixed: 1 1; align: 0.0 0.5; rel1.to_x: "elm.swallow.content"; rel1.relative: 1.0 0.0; rel1.offset: -1 2; rel2.to_x: "elm.swallow.content"; rel2.relative: 1.0 1.0; rel2.offset: -1 -3; color: FN_COL_DEFAULT; color_class: "progressbar_text"; text { font: FN; size: 10; text_class: "progressbar"; min: 0 0; align: 0.0 0.5; } visible: 0; } description { state: "visible" 0.0; inherit: "default" 0.0; fixed: 1 0; visible: 1; rel1.offset: 2 2; rel2.offset: 2 -3; text.min: 1 1; text.ellipsis: -1; } description { state: "disabled_visible" 0.0; inherit: "visible" 0.0; color_class: "progressbar_text_disabled"; color: FN_COL_DISABLE_LIGHTER_SHADOW; } } part { name: "bg-hi"; description { state: "default" 0.0; rel1.to: "bg"; rel1.offset: 0 1; rel2.to: "bg"; rel2.offset: -1 0; image.normal: "inset_bar_horiz_light.png"; image.border: 32 32 0 0; image.border_scale_by: 0.25; image.border_scale: 1; } } part { name: "bg"; scale: 1; description { state: "default" 0.0; min: 16 16; max: -1 16; rel1.to_x: "elm.text"; rel1.relative: 1.0 0.0; rel1.offset: 3 3; rel2.offset: -4 -4; image.normal: "inset_bar_horiz_base.png"; image.border: 32 32 0 0; image.border_scale_by: 0.25; image.border_scale: 1; } } part { name: "ins0"; type: SPACER; scale: 1; description { state: "default" 0.0; fixed: 1 0; rel1.to: "bg"; rel2.to: "bg"; rel2.relative: 0.0 1.0; min: 5 16; align: 0.0 0.5; } } part { name: "ins1"; type: SPACER; scale: 1; description { state: "default" 0.0; fixed: 1 0; rel1.to: "bg"; rel1.relative: 1.0 0.0; rel2.to: "bg"; min: 5 16; align: 1.0 0.5; } } part { name: "inside-hi"; scale: 1; description { state: "default" 0.0; rel1.to: "inside"; rel1.offset: 0 1; rel2.to: "inside"; rel2.offset: -1 0; image.normal: "inset_bar_horiz_inside_light.png"; image.border: 8 8 0 0; image.border_scale_by: 0.25; image.border_scale: 1; } } part { name: "inside"; scale: 1; description { state: "default" 0.0; min: 4 4; rel1.to: "ins0"; rel1.relative: 1.0 (6/16); rel2.to: "ins1"; rel2.relative: 0.0 (10/16); image.normal: "inset_bar_horiz_inside_base.png"; image.border: 8 8 0 0; image.border_scale_by: 0.25; image.border_scale: 1; } } part { name: "elm.swallow.bar"; type: SWALLOW; mouse_events: 0; description { state: "default" 0.0; rel1.to: "inside"; rel2.to: "inside"; } } part { name: "elm.cur.progressbar"; mouse_events: 0; type: SPACER; scale: 1; dragable.confine: "inside"; dragable.x: 1 1 1; dragable.y: 0 0 0; description { state: "default" 0.0; fixed: 1 1; min: 8 4; max: 8 4; rel1.to: "inside"; rel2.to: "inside"; } } part { name: "barend"; type: SPACER; scale: 1; description { state: "default" 0.0; fixed: 1 0; min: 14 16; rel1.to_x: "elm.cur.progressbar"; rel1.relative: 1.0 0.0; rel2.to_x: "elm.cur.progressbar"; rel2.relative: 1.0 1.0; align: 0.0 0.5; } description { state: "inv" 0.0; inherit: "default" 0.0; rel1.relative: 0.0 0.0; rel2.relative: 0.0 1.0; align: 1.0 0.5; } } part { name: "bar"; clip_to: "fract_clip"; scale: 1; description { state: "default" 0.0; rel1.to_x: "ins0"; rel1.to_y: "bg"; rel1.relative: (12/16) -0.25; rel2.to_x: "barend"; rel2.to_y: "bg"; rel2.relative: 1.0 1.25; image.normal: "inset_bar_horiz_glow_base.png"; image.border: 0 72 0 0; image.border_scale_by: 0.25; image.border_scale: 1; } description { state: "inv" 0.0; inherit: "default" 0.0; rel1.to_x: "barend"; rel1.relative: 0.0 -0.25; rel2.to_x: "ins1"; rel2.relative: (4/16) 1.25; image.normal: "inset_bar_horiz_glow_inv_base.png"; image.border: 72 0 0 0; } } part { name: "insidep0"; type: SPACER; scale: 1; description { state: "default" 0.0; fixed: 1 0; min: 20 16; rel1.to_x: "inside"; rel1.relative: 0.0 0.0; rel2.to_x: "inside"; rel2.relative: 0.0 1.0; align: 1.0 0.5; } } part { name: "insidep1"; type: SPACER; scale: 1; description { state: "default" 0.0; fixed: 1 0; min: 20 16; rel1.to_x: "inside"; rel1.relative: 1.0 0.0; rel2.to_x: "inside"; rel2.relative: 1.0 1.0; align: 0.0 0.5; } } part { name: "pulse"; clip_to: "pulse_clip"; scale: 1; description { state: "default" 0.0; fixed: 1 1; min: 64 24; max: 64 24; rel1.to_x: "insidep0"; rel1.to_y: "bar"; rel1.relative: 0.0 0.0; rel2.to_x: "insidep1"; rel2.to_y: "bar"; rel2.relative: 1.0 1.0; image.normal: "inset_bar_horiz_glow_mid_base.png"; align: 0.0 0.5; } description { state: "end" 0.0; inherit: "default" 0.0; align: 1.0 0.5; } } part { name: "elm.text.status"; type: TEXT; mouse_events: 0; scale: 1; effect: GLOW; description { state: "default" 0.0; fixed: 1 1; rel1.to: "inside"; rel2.to: "inside"; color_class: "progress_status"; align: 1.0 0.5; text { font: FN; size: 10; min: 0 1; text_class: "progress_status"; align: 1.0 0.5; } color: FN_COL_HIGHLIGHT_CLICKED; visible: 1; } description { state: "hidden" 0.0; inherit: "default" 0.0; visible: 0; } } part { name: "pulse2"; clip_to: "pulse_clip"; scale: 1; description { state: "default" 0.0; fixed: 1 1; min: 36 14; max: 36 14; rel1.to: "pulse"; rel2.to: "pulse"; image.normal: "inset_bar_horiz_glow_mid_light.png"; color: 255 255 255 0; } description { state: "glow" 0.0; inherit: "default" 0.0; color: 255 255 255 255; } } part { name: "light"; clip_to: "fract_clip"; scale: 1; description { state: "default" 0.0; max: 36 11; rel1.to_x: "bar"; rel1.to_y: "bar"; rel1.relative: 0.0 (26/96); rel2.to_x: "barend"; rel2.to_y: "bar"; rel2.relative: 0.2 ((26+44)/96); align: 1.0 0.0; image.normal: "inset_bar_horiz_glow_light.png"; image.border: 0 20 0 0; image.border_scale_by: 0.25; image.border_scale: 1; color: 255 255 255 0; } description { state: "inv" 0.0; inherit: "default" 0.0; rel1.to_x: "barend"; rel1.to_y: "bar"; rel1.relative: 0.8 (26/96); rel2.to_x: "bar"; rel2.to_y: "bar"; rel2.relative: 1.0 ((26+44)/96); align: 0.0 0.0; image.normal: "inset_bar_horiz_glow_inv_light.png"; image.border: 20 0 0 0; } } } programs { program { name: "inverted-on"; signal: "state,inverted,on"; source: "efl"; action: STATE_SET "inv" 0.0; target: "bar"; target: "barend"; target: "light"; } program { name: "inverted-off"; signal: "state,inverted,off"; source: "efl"; action: STATE_SET "default" 0.0; target: "bar"; target: "barend"; target: "light"; } program { name: "drag-set"; signal: "drag,set"; source: "elm.cur.progressbar"; script { new a, Float:dx, Float:dy, Float:vl, st[20]; get_drag(PART:"elm.cur.progressbar", dx, dy); get_state(PART:"bar", st, 19, vl); if (!strcmp(st, "inv")) { a = round(((1.0 - dx) * 255) / 0.2); custom_state(PART:"light", "inv", 0.0); } else { a = round((dx * 255) / 0.2); custom_state(PART:"light", "default", 0.0); } if (a > 255) { a = 255; } set_state_val(PART:"light", STATE_COLOR, 255, 255, 255, a); set_state(PART:"light", "custom", 0.0); } } program { name: "pulse-mode0"; signal: "state,pulse"; source: "efl"; action: STATE_SET "hidden" 0.0; target: "elm.text.status"; after: "pulse-mode1"; } program { name: "pulse-mode1"; signal: "state,pulse,start"; source: "efl"; action: STATE_SET "pulse" 0.0; target: "fract_clip"; } program { name: "pulse-start"; signal: "state,pulse,start"; source: "efl"; action: STATE_SET "pulse" 0.0; target: "pulse_clip"; target: "fract_clip"; after: "pulse0"; after: "pulse0.1"; } program { name: "pulse0.1"; action: STATE_SET "glow" 0.0; transition: ACCELERATE 0.4; target: "pulse2"; after: "pulse0.2"; } program { name: "pulse0.2"; action: STATE_SET "default" 0.0; transition: DECELERATE 0.4; target: "pulse2"; } program { name: "pulse0"; action: STATE_SET "end" 0.0; transition: SINUSOIDAL 0.8; target: "pulse"; after: "pulse1"; after: "pulse0.1"; } program { name: "pulse1"; action: STATE_SET "default" 0.0; transition: SINUSOIDAL 0.8; target: "pulse"; after: "pulse0"; after: "pulse0.1"; } program { name: "fraction"; signal: "state,fraction"; source: "efl"; action: STATE_SET "default" 0.0; target: "elm.text.status"; after: "pulse-stop"; } program { name: "elmpulse-stop"; signal: "state,pulse,stop"; source: "efl"; action: ACTION_STOP; target: "pulse0"; target: "pulse1"; after: "pulse-stop"; } program { name: "pulse-stop"; action: STATE_SET "default" 0.0; target: "pulse_clip"; } program { name: "units-visible"; signal: "state,units,visible"; source: "efl"; action: STATE_SET "default" 0.0; target: "elm.text.status"; } program { name: "units-hidden"; signal: "state,units,hidden"; source: "efl"; action: STATE_SET "hidden" 0.0; target: "elm.text.status"; } program { name: "text-visible"; signal: "state,elm.text,set"; source: "efl"; script { new m = get_int(slmode); m |= LABEL; set_int(slmode, m); eval_mode(m); } } program { name: "text-hidden"; signal: "state,elm.text,unset"; source: "efl"; script { new m = get_int(slmode); m &= ~LABEL; set_int(slmode, m); eval_mode(m); } } program { name: "icon-visible"; signal: "state,content,set"; source: "efl"; script { new m = get_int(slmode); m |= ICON; set_int(slmode, m); eval_mode(m); } } program { name: "icon-hidden"; signal: "state,content,unset"; source: "efl"; script { new m = get_int(slmode); m &= ~ICON; set_int(slmode, m); eval_mode(m); } } program { name: "state-disabled"; signal: "state,disabled"; source: "efl"; script { new m = get_int(slmode); m |= DISABLE; set_int(slmode, m); eval_mode(m); } } program { name: "state-enabled"; signal: "state,enabled"; source: "efl"; script { new m = get_int(slmode); m &= ~DISABLE; set_int(slmode, m); eval_mode(m); } } } #undef ICON #undef LABEL #undef UNITS #undef DISABLE } group { "efl/progressbar/vertical"; images.image: "inset_bar_vert_base.png" COMP; images.image: "inset_bar_vert_light.png" COMP; images.image: "inset_bar_vert_inside_base.png" COMP; images.image: "inset_bar_vert_inside_light.png" COMP; images.image: "inset_bar_vert_glow_base.png" COMP; images.image: "inset_bar_vert_glow_light.png" COMP; images.image: "inset_bar_vert_glow_inv_base.png" COMP; images.image: "inset_bar_vert_glow_inv_light.png" COMP; images.image: "inset_bar_vert_glow_mid_base.png" COMP; images.image: "inset_bar_vert_glow_mid_light.png" COMP; #define ICON 1 #define LABEL 2 #define DISABLE 4 script { public slmode; public eval_mode(m) { new ic = m & ICON; new l = m & LABEL; new d = m & DISABLE; if (l) { if (!d) { set_state(PART:"elm.text", "visible", 0.0); } else { set_state(PART:"elm.text", "disabled_visible", 0.0); } } else { set_state(PART:"elm.text", "default", 0.0); } if (ic) { set_state(PART:"elm.swallow.content", "visible", 0.0); set_state(PART:"sizer.content", "visible", 0.0); } else { set_state(PART:"elm.swallow.content", "default", 0.0); set_state(PART:"sizer.content", "default", 0.0); } if (!d) { set_state(PART:"dis_clip", "default", 0.0); } else { set_state(PART:"dis_clip", "disabled", 0.0); } } } parts { part { name: "dis_clip"; type: RECT; description { state: "default" 0.0; rel1.to: "elm.swallow.content"; rel2.to: "elm.swallow.content"; } description { state: "disabled" 0.0; inherit: "default" 0.0; color: 255 255 255 64; } } part { name: "pulse_clip"; type: RECT; description { state: "default" 0.0; rel1.relative: -2.0 -2.0; rel2.relative: 3.0 3.0; visible: 0; } description { state: "pulse" 0.0; inherit: "default" 0.0; visible: 1; } } part { name: "fract_clip"; type: RECT; description { state: "default" 0.0; rel1.relative: -2.0 -2.0; rel2.relative: 3.0 3.0; } description { state: "pulse" 0.0; inherit: "default" 0.0; visible: 0; } } part { name: "elm.swallow.content"; type: SWALLOW; clip_to: "dis_clip"; required; description { state: "default" 0.0; visible: 0; align: 0.5 0.0; fixed: 0 1; rel1.offset: 2 0; rel2.offset: -3 -1; rel2.relative: 1.0 0.0; } description { state: "visible" 0.0; inherit: "default" 0.0; visible: 1; aspect: 1.0 1.0; aspect_preference: HORIZONTAL; rel1.offset: 2 2; rel2.offset: -3 2; } } part { name: "sizer.content"; type: TEXT; mouse_events: 0; scale: 1; description { state: "default" 0.0; fixed: 1 1; visible: 0; text { font: FN; size: 10; min: 0 0; text_class: "progressbar_text"; } } description { state: "visible" 0.0; inherit: "default" 0.0; rel1.to: "elm.swallow.content"; rel2.to: "elm.swallow.content"; text { min: 1 1; ellipsis: -1; text: "M"; } } } part { name: "elm.text"; type: TEXT; mouse_events: 0; effect: SHADOW BOTTOM; scale: 1; required; description { state: "default" 0.0; fixed: 1 1; align: 0.5 0.0; rel1.to_y: "elm.swallow.content"; rel1.relative: 0.0 1.0; rel1.offset: 2 -1; rel2.to_y: "elm.swallow.content"; rel2.relative: 1.0 1.0; rel2.offset: -3 -1; color: FN_COL_DEFAULT; color_class: "progressbar_text"; text { font: FN; size: 10; text_class: "progressbar"; min: 0 0; align: 0.5 0.0; } visible: 0; } description { state: "visible" 0.0; inherit: "default" 0.0; fixed: 0 1; visible: 1; rel1.offset: 2 2; rel2.offset: -3 2; text.min: 1 1; text.ellipsis: -1; } description { state: "disabled_visible" 0.0; inherit: "visible" 0.0; color_class: "progressbar_text_disabled"; color: FN_COL_DISABLE_LIGHTER_SHADOW; } } part { name: "bg-hi"; description { state: "default" 0.0; rel1.to: "bg"; rel1.offset: 0 1; rel2.to: "bg"; rel2.offset: -1 0; image.normal: "inset_bar_vert_light.png"; image.border: 0 0 32 32; image.border_scale_by: 0.25; image.border_scale: 1; } } part { name: "bg"; scale: 1; description { state: "default" 0.0; min: 16 16; max: 16 -1; rel1.to_y: "elm.text"; rel1.relative: 0.0 1.0; rel1.offset: 3 3; rel2.offset: -4 -4; image.normal: "inset_bar_vert_base.png"; image.border: 0 0 32 32; image.border_scale_by: 0.25; image.border_scale: 1; } } part { name: "ins0"; type: SPACER; scale: 1; description { state: "default" 0.0; fixed: 0 1; rel1.to: "bg"; rel2.to: "bg"; rel2.relative: 1.0 0.0; min: 16 5; align: 0.5 0.0; } } part { name: "ins1"; type: SPACER; scale: 1; description { state: "default" 0.0; fixed: 0 1; rel1.to: "bg"; rel1.relative: 0.0 1.0; rel2.to: "bg"; min: 16 5; align: 0.5 1.0; } } part { name: "inside-hi"; scale: 1; description { state: "default" 0.0; rel1.to: "inside"; rel1.offset: 0 1; rel2.to: "inside"; rel2.offset: -1 0; image.normal: "inset_bar_vert_inside_light.png"; image.border: 0 0 8 8; image.border_scale_by: 0.25; image.border_scale: 1; } } part { name: "inside"; scale: 1; description { state: "default" 0.0; min: 4 4; rel1.to: "ins0"; rel1.relative: (6/16) 1.0; rel2.to: "ins1"; rel2.relative: (10/16) 0.0; image.normal: "inset_bar_vert_inside_base.png"; image.border: 0 0 8 8; image.border_scale_by: 0.25; image.border_scale: 1; } } part { name: "elm.swallow.bar"; type: SWALLOW; mouse_events: 0; description { state: "default" 0.0; rel1.to: "inside"; rel2.to: "inside"; } } part { name: "elm.cur.progressbar"; mouse_events: 0; type: SPACER; scale: 1; dragable.confine: "inside"; dragable.x: 0 0 0; dragable.y: 1 1 1; description { state: "default" 0.0; fixed: 1 1; min: 4 8; max: 4 8; rel1.to: "inside"; rel2.to: "inside"; } } part { name: "barend"; type: SPACER; scale: 1; description { state: "default" 0.0; fixed: 0 1; min: 16 14; rel1.to_y: "elm.cur.progressbar"; rel1.relative: 0.0 1.0; rel2.to_y: "elm.cur.progressbar"; rel2.relative: 1.0 1.0; align: 0.5 0.0; } description { state: "inv" 0.0; inherit: "default" 0.0; rel1.relative: 0.0 0.0; rel2.relative: 1.0 0.0; align: 0.5 1.0; } } part { name: "bar"; clip_to: "fract_clip"; scale: 1; description { state: "default" 0.0; rel1.to_y: "ins0"; rel1.to_x: "bg"; rel1.relative: -0.25 (12/16); rel2.to_y: "barend"; rel2.to_x: "bg"; rel2.relative: 1.25 1.0; image.normal: "inset_bar_vert_glow_base.png"; image.border: 0 0 0 72; image.border_scale_by: 0.25; image.border_scale: 1; } description { state: "inv" 0.0; inherit: "default" 0.0; rel1.to_y: "barend"; rel1.relative: -0.25 0.0; rel2.to_y: "ins1"; rel2.relative: 1.25 (4/16); image.normal: "inset_bar_vert_glow_inv_base.png"; image.border: 0 0 72 0; } } part { name: "insidep0"; type: SPACER; scale: 1; description { state: "default" 0.0; fixed: 0 1; min: 16 20; rel1.to_y: "inside"; rel1.relative: 0.0 0.0; rel2.to_y: "inside"; rel2.relative: 1.0 0.0; align: 0.5 1.0; } } part { name: "insidep1"; type: SPACER; scale: 1; description { state: "default" 0.0; fixed: 0 1; min: 16 20; rel1.to_y: "inside"; rel1.relative: 0.0 1.0; rel2.to_y: "inside"; rel2.relative: 1.0 1.0; align: 0.5 0.0; } } part { name: "pulse"; clip_to: "pulse_clip"; scale: 1; description { state: "default" 0.0; fixed: 1 1; min: 24 64; max: 24 64; rel1.to_y: "insidep0"; rel1.to_x: "bar"; rel1.relative: 0.0 0.0; rel2.to_y: "insidep1"; rel2.to_x: "bar"; rel2.relative: 1.0 1.0; image.normal: "inset_bar_vert_glow_mid_base.png"; align: 0.5 0.0; } description { state: "end" 0.0; inherit: "default" 0.0; align: 0.5 1.0; } } part { name: "statbox"; type: SPACER; scale: 1; description { state: "default" 0.0; fixed: 1 1; rel1.to: "inside"; rel2.to: "inside"; aspect: 1.0 1.0; aspect_preference: NONE; } } part { name: "elm.text.status"; type: TEXT; mouse_events: 0; scale: 1; effect: GLOW; description { state: "default" 0.0; fixed: 1 1; rel1.to: "statbox"; rel2.to: "statbox"; color_class: "progress_status"; align: 1.0 0.5; text { font: FN; size: 10; min: 0 1; text_class: "progress_status"; align: 1.0 0.5; } color: FN_COL_HIGHLIGHT_CLICKED; visible: 1; map.on: 1; map.smooth: 0; map.rotation.center: "statbox"; map.rotation.z: 90; } description { state: "hidden" 0.0; inherit: "default" 0.0; visible: 0; } } part { name: "pulse2"; clip_to: "pulse_clip"; scale: 1; description { state: "default" 0.0; fixed: 1 1; min: 14 36; max: 14 36; rel1.to: "pulse"; rel2.to: "pulse"; image.normal: "inset_bar_vert_glow_mid_light.png"; color: 255 255 255 0; } description { state: "glow" 0.0; inherit: "default" 0.0; color: 255 255 255 255; } } part { name: "light"; clip_to: "fract_clip"; scale: 1; description { state: "default" 0.0; max: 11 36; rel1.to_y: "bar"; rel1.to_x: "bar"; rel1.relative: (26/96) 0.0; rel2.to_y: "barend"; rel2.to_x: "bar"; rel2.relative: ((26+44)/96) 0.2; align: 0.0 1.0; image.normal: "inset_bar_vert_glow_light.png"; image.border: 0 0 0 20; image.border_scale_by: 0.25; image.border_scale: 1; color: 255 255 255 0; } description { state: "inv" 0.0; inherit: "default" 0.0; rel1.to_y: "barend"; rel1.to_x: "bar"; rel1.relative: (26/96) 0.8; rel2.to_y: "bar"; rel2.to_x: "bar"; rel2.relative: ((26+44)/96) 1.0; align: 0.0 0.0; image.normal: "inset_bar_vert_glow_inv_light.png"; image.border: 0 0 20 0; } } } programs { program { name: "inverted-on"; signal: "state,inverted,on"; source: "efl"; action: STATE_SET "inv" 0.0; target: "bar"; target: "barend"; target: "light"; } program { name: "inverted-off"; signal: "state,inverted,off"; source: "efl"; action: STATE_SET "default" 0.0; target: "bar"; target: "barend"; target: "light"; } program { name: "drag-set"; signal: "drag,set"; source: "elm.cur.progressbar"; script { new a, Float:dx, Float:dy, Float:vl, st[20]; get_drag(PART:"elm.cur.progressbar", dx, dy); get_state(PART:"bar", st, 19, vl); if (!strcmp(st, "inv")) { a = round(((1.0 - dy) * 255) / 0.2); custom_state(PART:"light", "inv", 0.0); } else { a = round((dy * 255) / 0.2); custom_state(PART:"light", "default", 0.0); } if (a > 255) { a = 255; } set_state_val(PART:"light", STATE_COLOR, 255, 255, 255, a); set_state(PART:"light", "custom", 0.0); } } program { name: "pulse-mode0"; signal: "state,pulse"; source: "efl"; action: STATE_SET "hidden" 0.0; target: "elm.text.status"; after: "pulse-mode1"; } program { name: "pulse-mode1"; signal: "state,pulse,start"; source: "efl"; action: STATE_SET "pulse" 0.0; target: "fract_clip"; } program { name: "pulse-start"; signal: "state,pulse,start"; source: "efl"; action: STATE_SET "pulse" 0.0; target: "pulse_clip"; target: "fract_clip"; after: "pulse0"; after: "pulse0.1"; } program { name: "pulse0.1"; action: STATE_SET "glow" 0.0; transition: ACCELERATE 0.4; target: "pulse2"; after: "pulse0.2"; } program { name: "pulse0.2"; action: STATE_SET "default" 0.0; transition: DECELERATE 0.4; target: "pulse2"; } program { name: "pulse0"; action: STATE_SET "end" 0.0; transition: SINUSOIDAL 0.8; target: "pulse"; after: "pulse1"; after: "pulse0.1"; } program { name: "pulse1"; action: STATE_SET "default" 0.0; transition: SINUSOIDAL 0.8; target: "pulse"; after: "pulse0"; after: "pulse0.1"; } program { name: "fraction"; signal: "state,fraction"; source: "efl"; action: STATE_SET "default" 0.0; target: "elm.text.status"; after: "pulse-stop"; } program { name: "elmpulsestop"; signal: "state,pulse,stop"; source: "efl"; action: ACTION_STOP; target: "pulse0"; target: "pulse1"; after: "pulse-stop"; } program { name: "pulse-stop"; action: STATE_SET "default" 0.0; target: "pulse_clip"; } program { name: "unit-visible"; signal: "state,units,visible"; source: "efl"; action: STATE_SET "default" 0.0; target: "elm.text.status"; } program { name: "unit-hidden"; signal: "state,units,hidden"; source: "efl"; action: STATE_SET "hidden" 0.0; target: "elm.text.status"; } program { name: "text-visible"; signal: "state,elm.text,set"; source: "efl"; script { new m = get_int(slmode); m |= LABEL; set_int(slmode, m); eval_mode(m); } } program { name: "text-hidden"; signal: "state,elm.text,unset"; source: "efl"; script { new m = get_int(slmode); m &= ~LABEL; set_int(slmode, m); eval_mode(m); } } program { name: "icon-visible"; signal: "state,content,set"; source: "efl"; script { new m = get_int(slmode); m |= ICON; set_int(slmode, m); eval_mode(m); } } program { name: "icon-hidden"; signal: "state,content,unset"; source: "efl"; script { new m = get_int(slmode); m &= ~ICON; set_int(slmode, m); eval_mode(m); } } program { name: "elmdisabled"; signal: "state,disabled"; source: "efl"; script { new m = get_int(slmode); m |= DISABLE; set_int(slmode, m); eval_mode(m); } } program { name: "elmenabled"; signal: "state,enabled"; source: "efl"; script { new m = get_int(slmode); m &= ~DISABLE; set_int(slmode, m); eval_mode(m); } } } #undef ICON #undef LABEL #undef UNITS #undef DISABLE } group { "efl/progressbar/horizontal:wheel"; alias: "efl/progressbar/vertical:wheel"; images.image: "knob_round_busy.png" COMP; images.image: "glow_round_corners.png" COMP; parts { part { name: "elm.swallow.bar" ; type: SWALLOW; mouse_events: 0; description { state: "default" 0.0; min: 0 0; max: 0 0; visible: 0; } } part { name: "elm.swallow.content"; type: SWALLOW; description { state: "default" 0.0; min: 0 0; max: 0 0; visible: 0; } } part { name: "busy_clip"; type: RECT; description { state: "default" 0.0; visible: 0; color: 255 255 255 0; } description { state: "active" 0.0; visible: 1; color: 255 255 255 255; } } part { name: "knob"; mouse_events: 0; scale: 1; description { state: "default" 0.0; image.normal: "knob_round_busy.png"; min: 40 40; max: 40 40; } } part { name: "knob_spinner"; mouse_events: 0; clip_to: "busy_clip"; description { state: "default" 0.0; fixed: 1 1; rel1.to: "knob"; rel2.to: "knob"; image.normal: "glow_round_corners.png"; map.on: 1; map.smooth: 1; map.rotation.center: "knob"; } description { state: "spin" 0.0; inherit: "default" 0.0; map.rotation.z: 360; } } } programs { program { name: "spin"; signal: "state,pulse,start"; source: "efl"; action: STATE_SET "spin" 0.0; transition: LINEAR 1.0; target: "knob_spinner"; after: "spin2"; } program { name: "spin2"; action: STATE_SET "default" 0.0; target: "knob_spinner"; after: "spin"; } program { signal: "state,pulse,start"; source: "efl"; action: STATE_SET "active" 0.0; transition: SINUSOIDAL 0.25; target: "busy_clip"; } program { signal: "state,pulse,stop"; source: "efl"; action: STATE_SET "default" 0.0; transition: SINUSOIDAL 1.0; target: "busy_clip"; after: "spin3"; } program { name: "spin3"; action: ACTION_STOP; target: "spin"; target: "spin2"; after: "spin4"; } program { name: "spin4"; action: STATE_SET "default" 0.0; target: "knob_spinner"; } } } group { "efl/progressbar/horizontal:double"; inherit: "efl/progressbar/horizontal"; images { image: "inset_bar_horiz_glow_base_double.png" COMP; image: "inset_bar_horiz_glow_inv_base_double.png" COMP; } parts { part { name: "elm.cur.progressbar1"; mouse_events: 0; type: SPACER; insert_after: "inside"; scale: 1; dragable.confine: "inside"; dragable.x: 1 1 1; dragable.y: 0 0 0; description { state: "default" 0.0; fixed: 1 1; min: 8 4; max: 8 4; rel1.to: "inside"; rel2.to: "inside"; } } part { name: "barend1"; type: SPACER; scale: 1; description { state: "default" 0.0; fixed: 1 0; min: 14 16; rel1.to_x: "elm.cur.progressbar1"; rel1.relative: 1.0 0.0; rel2.to_x: "elm.cur.progressbar1"; rel2.relative: 1.0 1.0; align: 0.0 0.5; } description { state: "inv" 0.0; inherit: "default" 0.0; rel1.relative: 0.0 0.0; rel2.relative: 0.0 1.0; align: 1.0 0.5; } } part { name: "bar1"; insert_after: "barend"; clip_to: "fract_clip"; scale: 1; description { state: "default" 0.0; rel1.to_x: "ins0"; rel1.to_y: "bg"; rel1.relative: (12/16) -0.25; rel2.to_x: "barend1"; rel2.to_y: "bg"; rel2.relative: 1.0 1.25; image.normal: "inset_bar_horiz_glow_base_double.png"; image.border: 0 72 0 0; image.border_scale_by: 0.25; image.border_scale: 1; color: 51 153 255 128; } description { state: "inv" 0.0; inherit: "default" 0.0; rel1.to_x: "barend"; rel1.relative: 0.0 -0.25; rel2.to_x: "ins1"; rel2.relative: (4/16) 1.25; image.normal: "inset_bar_horiz_glow_inv_base_double.png"; image.border: 72 0 0 0; } } } programs { program { name: "inverted-on"; signal: "state,inverted,on"; source: "efl"; action: STATE_SET "inv" 0.0; target: "bar"; target: "bar1"; target: "barend"; target: "barend1"; target: "light"; } program { name: "inverted-off"; signal: "state,inverted,off"; source: "efl"; action: STATE_SET "default" 0.0; target: "bar"; target: "bar1"; target: "barend"; target: "barend1"; target: "light"; } } } group { "efl/progressbar/vertical:double"; inherit: "efl/progressbar/vertical"; images { image: "inset_bar_vert_glow_base_double.png" COMP; image: "inset_bar_vert_glow_inv_base_double.png" COMP; } parts { part { name: "elm.cur.progressbar1"; mouse_events: 0; type: SPACER; insert_after: "inside"; scale: 1; dragable.confine: "inside"; dragable.x: 0 0 0; dragable.y: 1 1 1; description { state: "default" 0.0; fixed: 1 1; min: 4 8; max: 4 8; rel1.to: "inside"; rel2.to: "inside"; } } part { name: "barend1"; type: SPACER; scale: 1; description { state: "default" 0.0; fixed: 0 1; min: 16 14; rel1.to_y: "elm.cur.progressbar1"; rel1.relative: 0.0 1.0; rel2.to_y: "elm.cur.progressbar1"; rel2.relative: 1.0 1.0; align: 0.5 0.0; } description { state: "inv" 0.0; inherit: "default" 0.0; rel1.relative: 0.0 0.0; rel2.relative: 1.0 0.0; align: 0.5 1.0; } } part { name: "bar1"; insert_after: "barend"; clip_to: "fract_clip"; scale: 1; description { state: "default" 0.0; rel1.to_y: "ins0"; rel1.to_x: "bg"; rel1.relative: -0.25 (12/16); rel2.to_y: "barend1"; rel2.to_x: "bg"; rel2.relative: 1.25 1.0; image.normal: "inset_bar_vert_glow_base_double.png"; image.border: 0 0 0 72; image.border_scale_by: 0.25; image.border_scale: 1; color: 51 153 255 128; } description { state: "inv" 0.0; inherit: "default" 0.0; rel1.to_y: "barend1"; rel1.relative: -0.25 0.0; rel2.to_y: "ins1"; rel2.relative: 1.25 (4/16); image.normal: "inset_bar_vert_glow_inv_base_double.png"; image.border: 0 0 72 0; } } } programs { program { name: "inverted-on"; signal: "state,inverted,on"; source: "efl"; action: STATE_SET "inv" 0.0; target: "bar"; target: "barend"; target: "light"; target: "bar1"; target: "barend1"; } program { name: "inverted-off"; signal: "state,inverted,off"; source: "efl"; action: STATE_SET "default" 0.0; target: "bar"; target: "barend"; target: "light"; target: "bar1"; target: "barend1"; } } }