rimmed pushed a commit to branch master. http://git.enlightenment.org/tools/eflete.git/commit/?id=7e9b280f7f14f76da529ad4c93ebdfde342f3870
commit 7e9b280f7f14f76da529ad4c93ebdfde342f3870 Author: Tetiana Naumenko <t.naume...@samsung.com> Date: Fri Mar 17 18:10:14 2017 +0200 entry_script: add scrollbars for entry with script code 1. Change style of elm/scroller/entry/default in Tizen version 2. Add auto adding scrollbars for entry with script code in property and script manager. @fix Change-Id: I78c1cb37101c833f71a5fbca4b49bd568de836d8 --- data/themes/tizen/widgets/entry.edc | 1400 ++++++++++++++++++++++++++++++---- src/bin/ui/property/property_group.c | 1 + src/bin/ui/script_manager.c | 1 + 3 files changed, 1236 insertions(+), 166 deletions(-) diff --git a/data/themes/tizen/widgets/entry.edc b/data/themes/tizen/widgets/entry.edc index f6becd7..d0f58c8 100644 --- a/data/themes/tizen/widgets/entry.edc +++ b/data/themes/tizen/widgets/entry.edc @@ -106,6 +106,103 @@ group { name: "elm/scroller/entry/default"; data { item: "focus_highlight" "on"; } + images { + image: "Scroll/scroll_up_icon_nor.png" COMP; + image: "Scroll/scroll_up_icon_sel.png" COMP; + image: "Scroll/scroll_up_icon_dim.png" COMP; + image: "Scroll/scroll_up_icon_mv.png" COMP; + image: "Scroll/scroll_down_icon_nor.png" COMP; + image: "Scroll/scroll_down_icon_sel.png" COMP; + image: "Scroll/scroll_down_icon_dim.png" COMP; + image: "Scroll/scroll_left_icon_nor.png" COMP; + image: "Scroll/scroll_left_icon_sel.png" COMP; + image: "Scroll/scroll_left_icon_dim.png" COMP; + image: "Scroll/scroll_left_icon_mv.png" COMP; + image: "Scroll/scroll_right_icon_nor.png" COMP; + image: "Scroll/scroll_right_icon_sel.png" COMP; + image: "Scroll/scroll_right_icon_dim.png" COMP; + image: "Scroll/scroll_right_icon_mv.png" COMP; + } + script { + public loop_x, loop_y; + public action_on_pos_vbar(val) { + new x, y , w, h, x1, y1 , w1, h1; + + get_geometry(PART:"y_vbar_up", x,y,w, h); + get_geometry(PART:"y_vbar_up_mapper", x1,y1,w1, h1); + + if(((y1 <= y) && (y <= (y1 + h1))) && (0 == get_int(loop_y))) + { + set_state(PART:"arrow1_vbar", "disabled", 0.0); + set_state(PART:"sb_vbar_a1_border", "disabled", 0.0); + set_state(PART:"sb_vbar_a1", "hidden", 0.0); + } + else + { + set_state(PART:"arrow1_vbar", "default", 0.0); + set_state(PART:"sb_vbar_a1", "default", 0.0); + set_state(PART:"sb_vbar_a1_border", "default", 0.0); + } + + get_geometry(PART:"y_vbar_down", x,y,w, h); + get_geometry(PART:"y_vbar_down_mapper", x1,y1,w1, h1); + + if(((y1 <= (y + h)) && ((y+ h) <= (y1 + h1))) && (0 == get_int(loop_y))) + { + set_state(PART:"sb_vbar_a2", "hidden", 0.0); + set_state(PART:"arrow2_vbar", "disabled", 0.0); + set_state(PART:"sb_vbar_a2_border", "disabled", 0.0); + } + else + { + set_state(PART:"arrow2_vbar", "default", 0.0); + set_state(PART:"sb_vbar_a2", "default", 0.0); + set_state(PART:"sb_vbar_a2_border", "default", 0.0); + } + + if(val < 10) + timer(0.1,"action_on_pos_vbar", val+1); + } + + public action_on_pos_hbar(val) { + new x, y , w, h, x1, y1 , w1, h1; + + get_geometry(PART:"x_hbar_left", x,y,w, h); + get_geometry(PART:"x_hbar_left_mapper", x1,y1,w1, h1); + + if(((x1 <= x) && (x <= (x1 + w1))) && (0 == get_int(loop_x))) + { + set_state(PART:"arrow1_hbar", "disabled", 0.0); + set_state(PART:"sb_hbar_a1", "hidden", 0.0); + set_state(PART:"sb_hbar_a1_border", "disabled", 0.0); + } + else + { + set_state(PART:"arrow1_hbar", "default", 0.0); + set_state(PART:"sb_hbar_a1", "default", 0.0); + set_state(PART:"sb_hbar_a1_border", "default", 0.0); + } + + get_geometry(PART:"x_hbar_right", x,y,w, h); + get_geometry(PART:"x_hbar_right_mapper", x1,y1,w1, h1); + + if(((x1 <= (x + w)) && ((x + w) <= (x1 + w1))) && (0 == get_int(loop_x))) + { + set_state(PART:"arrow2_hbar", "disabled", 0.0); + set_state(PART:"sb_hbar_a2", "hidden", 0.0); + set_state(PART:"sb_hbar_a2_border", "disabled", 0.0); + } + else + { + set_state(PART:"arrow2_hbar", "default", 0.0); + set_state(PART:"sb_hbar_a2", "default", 0.0); + set_state(PART:"sb_hbar_a2_border", "default", 0.0); + } + + if(val < 10) + timer(0.1,"action_on_pos_hbar", val+1); + } + } parts { part { name: "border"; type: RECT; @@ -124,61 +221,68 @@ group { name: "elm/scroller/entry/default"; inherit: "default" 0.0; } } - part { name: "bg"; + part { name: "sb_vbar_show"; type: RECT; - description { state: "default" 0.0; - color_class: "entry_bg"; - rel1 { - to: "border"; - offset: 1 1; - } - rel2 { - to: "border"; - offset: -2 -2; - } + description { state: "default" 0.00; + rel1.to: "sb_vbar"; + rel2.to: "sb_vbar"; } - description { state: "disabled" 0.0; + description { state: "hidden" 0.00; + inherit: "default" 0.00; + color: 0 0 0 0; } } part { name: "sb_vbar"; type: RECT; scale: 1; description { state: "default" 0.0; - align: 1.0 0.5; - min: 6 0; - max: 6 -1; + align: 1.0 0.0; + fixed: 1 1; + min: 15 1; rel1 { - to: "bg"; - offset: 0 1; + relative: 1.00 0.00; + offset: -1 0; } rel2 { - relative: 1.0 0.0; - to_x: "bg"; + relative: 1.00 0.00; to_y: "sb_hbar"; offset: -2 -1; } } - description { state: "hidden" 0.0; - align: 1.0 0.0; - fixed: 1 0; - max: 0 -1; + description { state: "hidden" 0.00; + inherit: "default" 0.00; + min: 0 0; + max: 0 99999; + } + } + part { name: "sb_vbar_base"; + type: RECT; + clip_to: "sb_vbar"; + description { state: "default" 0.00; + fixed: 1 1; + min: 15 0; + max: 15 -1; + color_class: "scrollbar_bg"; rel1 { + relative: 0.00 1.00; offset: 0 1; - to_y: "bg"; + to: "sb_vbar_a1"; } rel2 { - relative: 1.0 0.0; - offset: -2 -1; - to_x: "bg"; - to_y: "sb_hbar"; + relative: 1.00 0.00; + to: "sb_vbar_a2"; } } } part { name: "sb_vbar_p1"; - type: SPACER; + type: RECT; + clip_to: "sb_vbar"; description { state: "default" 0.0; + fixed: 1 1; + color: 0 0 0 0; rel1 { - to: "sb_vbar"; + relative: 0.0 1.0; + to: "sb_vbar_a1"; } rel2 { relative: 1.0 0.0; @@ -187,38 +291,232 @@ group { name: "elm/scroller/entry/default"; } } part { name: "sb_vbar_p2"; - type: SPACER; + type: RECT; + clip_to: "sb_vbar"; description { state: "default" 0.0; + fixed: 1 1; + color: 0 0 0 0; rel1 { relative: 0.0 1.0; to: "elm.dragable.vbar"; } rel2 { - to: "sb_vbar"; + relative: 1.0 0.0; + to: "sb_vbar_a2"; } } } part { name: "elm.dragable.vbar"; type: RECT; scale: 1; + clip_to: "sb_vbar"; dragable { x: 0 0 0; y: 1 1 0; - confine: "sb_vbar"; + confine: "sb_vbar_base"; } description { state: "default" 0.0; fixed: 1 1; - min: 6 24; - max: 6 -1; + min: 15 13; color: 0 0 0 0; rel1 { relative: 0.5 0.5; - to: "sb_vbar"; + to: "sb_vbar_base"; } rel2 { relative: 0.5 0.5; + to: "sb_vbar_base"; + } + } + description { state: "hidden" 0.00; + inherit: "default" 0.00; + min: 0 0; + } + description { state: "clicked" 0.00; + inherit: "default" 0.00; + } + } + part { name: "sb_vbar_a1_border"; + type: RECT; + clip_to: "sb_vbar"; + description { state: "default" 0.00; + align: 0.50 0.00; + min: 0 15; + max: -1 15; + color_class: "scrollbar_line_nor"; + rel1{ + to: "sb_vbar"; + offset: 0 1; + } + rel2{ + to: "sb_vbar"; + offset: -2 -1; + } + } + description { state: "clicked" 0.00; + inherit: "default" 0.00; + color_class: "scrollbar_line_sel"; + } + description { state: "disabled" 0.00; + inherit: "default" 0.00; + color_class: "scrollbar_line_dim"; + } + description { state: "hovered" 0.00; + inherit: "default" 0.00; + color_class: "scrollbar_line_over"; + } + } + part { name: "y_vbar_up_mapper"; + type: SPACER; + repeat_events: 1; + scale: 1; + description { state: "default" 0.00; + align: 0.00 0.00; + fixed: 1 1; + min: 4 2; + max: 4 2; + rel1.to: "sb_vbar_base"; + rel2.to: "sb_vbar_base"; + } + description { state: "hidden" 0.00; + inherit: "default" 0.00; + min: 0 0; + max: 0 0; + } + } + part { name: "y_vbar_up"; + type: SPACER; + repeat_events: 1; + scale: 1; + description { state: "default" 0.00; + align: 0.00 0.00; + fixed: 1 1; + min: 4 2; + max: 4 2; + rel1.to: "elm.dragable.vbar"; + rel2.to: "elm.dragable.vbar"; + } + description { state: "hidden" 0.00; + inherit: "default" 0.00; + min: 0 0; + max: 0 0; + } + } + part { name: "y_vbar_down_mapper"; + type: SPACER; + repeat_events: 1; + scale: 1; + description { state: "default" 0.00; + align: 0.00 1.00; + fixed: 1 1; + min: 4 2; + max: 4 2; + rel1.to: "sb_vbar_base"; + rel2.to: "sb_vbar_base"; + } + description { state: "hidden" 0.00; + inherit: "default" 0.00; + min: 0 0; + max: 0 0; + } + } + part { name: "y_vbar_down"; + type: SPACER; + repeat_events: 1; + scale: 1; + description { state: "default" 0.00; + align: 0.00 1.00; + fixed: 1 1; + min: 4 2; + max: 4 2; + rel1.to: "elm.dragable.vbar"; + rel2.to: "elm.dragable.vbar"; + } + description { state: "hidden" 0.00; + inherit: "default" 0.00; + min: 0 0; + max: 0 0; + } + } + part { name: "sb_vbar_a1"; + type: RECT; + clip_to: "sb_vbar"; + description { state: "default" 0.00; + align: 0.50 0.00; + fixed: 1 1; + min: 13 13; + aspect: 1.00 1.00; + aspect_preference: HORIZONTAL; + rel1 { + offset: 1 2; to: "sb_vbar"; } + rel2 { + relative: 1.00 0.00; + offset: -2 -2; + to: "sb_vbar"; + } + } + description { state: "hidden" 0.00; + inherit: "default" 0.00; + } + } + part { name: "sb_vbar_a2_border"; + type: RECT; + clip_to: "sb_vbar"; + description { state: "default" 0.00; + align: 0.50 1.00; + min: 0 15; + max: -1 15; + color_class: "scrollbar_line_nor"; + rel1.to: "sb_vbar"; + rel2.to: "sb_vbar"; + } + description { state: "clicked" 0.00; + inherit: "default" 0.00; + color_class: "scrollbar_line_sel"; + } + description { state: "disabled" 0.00; + inherit: "default" 0.00; + color_class: "scrollbar_line_dim"; + } + description { state: "hovered" 0.00; + inherit: "default" 0.00; + color_class: "scrollbar_line_over"; + } + } + part { name: "sb_vbar_a2"; + type: RECT; + clip_to: "sb_vbar"; + description { state: "default" 0.00; + align: 0.50 1.00; + fixed: 1 1; + min: 13 13; + aspect: 1.00 1.00; + aspect_preference: HORIZONTAL; + rel1 { + relative: 0.00 1.00; + offset: 1 -1; + to: "sb_vbar"; + } + rel2 { + to: "sb_vbar"; + offset: -2 -2; + } + } + description { state: "hidden" 0.00; + inherit: "default" 0.00; + } + } + part { name: "sb_hbar_show"; + type: RECT; + description { state: "default" 0.00; + rel1.to: "sb_hbar"; + rel2.to: "sb_hbar"; + } + description { state: "hidden" 0.00; + inherit: "default" 0.00; + visible: 0; } } part { name: "sb_hbar"; @@ -227,56 +525,71 @@ group { name: "elm/scroller/entry/default"; scale: 1; description { state: "default" 0.0; align: 0.0 1.0; - fixed: 0 1; - max: -1 6; + fixed: 1 1; + min: 1 15; rel1 { - to_x: "bg"; - offset: 1 0; + relative: 0.0 1.0; + offset: 0 -1; } rel2 { relative: 0.0 1.0; - offset: -1 -3; to_x: "sb_vbar"; - to_y: "bg"; + offset: -1 -2; } } description { state: "hidden" 0.0; - align: 0.0 1.0; - fixed: 0 1; - max: -1 0; + inherit: "default" 0.00; + min: 0 0; + max: 99999 0; + } + } + part { name: "sb_hbar_base"; + type: RECT; + clip_to: "sb_hbar"; + description { state: "default" 0.00; + fixed: 1 1; + color_class: "scrollbar_bg"; rel1 { - to: "bg"; + relative: 1.00 0.00; + offset: 1 -1; + to: "sb_hbar_a1"; } rel2 { - relative: 0.0 1.0; - offset: -1 -3; - to_x: "sb_vbar"; - to_y: "bg"; + relative: 0.00 1.00; + offset: -2 0; + to: "sb_hbar_a2"; } } } part { name: "sb_hbar_p1"; - type: SPACER; - description { state: "default" 0.0; + type: RECT; + clip_to: "sb_hbar"; + description { state: "default" 0.00; fixed: 1 1; + color: 0 0 0 0; rel1 { - to: "sb_hbar"; + relative: 1.00 0.00; + to: "sb_hbar_a1"; } rel2 { - relative: 0.0 1.0; + relative: 0.00 1.00; to: "elm.dragable.hbar"; } } } part { name: "sb_hbar_p2"; - type: SPACER; - description { state: "default" 0.0; + type: RECT; + clip_to: "sb_hbar"; + description { state: "default" 0.00; + fixed: 1 1; + color: 0 0 0 0; rel1 { - relative: 1.0 0.0; + relative: 1.00 0.00; to: "elm.dragable.hbar"; } rel2 { - to: "sb_hbar"; + relative: 0.00 1.00; + to: "sb_hbar_a2"; } } } @@ -287,75 +600,479 @@ group { name: "elm/scroller/entry/default"; dragable { x: 1 1 0; y: 0 0 0; - confine: "sb_hbar"; + confine: "sb_hbar_base"; } - description { state: "default" 0.0; + description { state: "default" 0.00; fixed: 1 1; - min: 24 6; - max: -1 6; + min: 15 15; color: 0 0 0 0; rel1 { - relative: 0.5 0.5; + relative: 0.50 0.50; + to: "sb_hbar_base"; + } + rel2 { + relative: 0.50 0.50; + to: "sb_hbar_base"; + } + } + description { state: "hidden" 0.00; + inherit: "default" 0.00; + min: 0 0; + } + description { state: "clicked" 0.00; + inherit: "default" 0.00; + } + } + part { name: "x_hbar_left_mapper"; + type: SPACER; + repeat_events: 1; + scale: 1; + description { state: "default" 0.00; + align: 0.00 1.00; + fixed: 1 1; + min: 2 4; + max: 2 4; + rel1.to: "sb_hbar_base"; + rel2.to: "sb_hbar_base"; + } + description { state: "hidden" 0.00; + inherit: "default" 0.00; + min: 0 0; + max: 0 0; + } + } + part { name: "x_hbar_left"; + type: SPACER; + repeat_events: 1; + scale: 1; + description { state: "default" 0.00; + align: 0.00 1.00; + fixed: 1 1; + min: 2 4; + max: 2 4; + rel1.to: "elm.dragable.hbar"; + rel2.to: "elm.dragable.hbar"; + } + description { state: "hidden" 0.00; + inherit: "default" 0.00; + min: 0 0; + max: 0 0; + } + } + part { name: "x_hbar_right_mapper"; + type: SPACER; + repeat_events: 1; + scale: 1; + description { state: "default" 0.00; + align: 1.00 1.00; + fixed: 1 1; + min: 2 4; + max: 2 4; + rel1.to: "sb_hbar_base"; + rel2.to: "sb_hbar_base"; + } + description { state: "hidden" 0.00; + inherit: "default" 0.00; + min: 0 0; + max: 0 0; + } + } + part { name: "x_hbar_right"; + type: SPACER; + repeat_events: 1; + scale: 1; + description { state: "default" 0.00; + align: 1.00 1.00; + fixed: 1 1; + min: 2 4; + max: 2 4; + rel1.to: "elm.dragable.hbar"; + rel2.to: "elm.dragable.hbar"; + } + description { state: "hidden" 0.00; + inherit: "default" 0.00; + min: 0 0; + max: 0 0; + } + } + part { name: "sb_hbar_a1_border"; + type: RECT; + clip_to: "sb_hbar"; + description { state: "default" 0.00; + align: 0.00 0.50; + min: 15 0; + max: 15 -1; + color_class: "scrollbar_line_nor"; + rel1{ + to: "sb_hbar"; + offset: 1 0; + } + rel2.to: "sb_hbar"; + } + description { state: "clicked" 0.00; + inherit: "default" 0.00; + color_class: "scrollbar_line_sel"; + } + description { state: "disabled" 0.00; + inherit: "default" 0.00; + color_class: "scrollbar_line_dim"; + } + description { state: "hovered" 0.00; + inherit: "default" 0.00; + color_class: "scrollbar_line_over"; + } + } + part { name: "sb_hbar_a1"; + type: RECT; + clip_to: "sb_hbar"; + description { state: "default" 0.00; + align: 0.00 0.50; + fixed: 1 1; + min: 13 13; + aspect: 1.00 1.00; + aspect_preference: VERTICAL; + rel1 { + offset: 2 1; to: "sb_hbar"; } rel2 { - relative: 0.5 0.5; + relative: 0.00 1.00; + offset: -2 -2; to: "sb_hbar"; } } + description { state: "hidden" 0.00; + inherit: "default" 0.00; + } + } + part { name: "sb_hbar_a2_border"; + type: RECT; + clip_to: "sb_hbar"; + description { state: "default" 0.00; + align: 1.00 0.50; + min: 15 0; + max: 15 -1; + color_class: "scrollbar_line_nor"; + rel1.to: "sb_hbar"; + rel2.to: "sb_hbar"; + } + description { state: "clicked" 0.00; + inherit: "default" 0.00; + color_class: "scrollbar_line_sel"; + } + description { state: "disabled" 0.00; + inherit: "default" 0.00; + color_class: "scrollbar_line_dim"; + } + description { state: "hovered" 0.00; + inherit: "default" 0.00; + color_class: "scrollbar_line_over"; + } + } + part { name: "sb_hbar_a2"; + type: RECT; + clip_to: "sb_hbar"; + description { state: "default" 0.00; + align: 1.00 0.50; + fixed: 1 1; + min: 13 13; + aspect: 1.00 1.00; + aspect_preference: VERTICAL; + rel1 { + relative: 1.00 0.00; + offset: -1 1; + to: "sb_hbar"; + } + rel2 { + offset: -2 -2; + to: "sb_hbar"; + } + } + description { state: "hidden" 0.00; + inherit: "default" 0.00; + } + } + part { name: "bg"; + type: RECT; + description { state: "default" 0.0; + color_class: "entry_bg"; + rel1 { + to: "elm.swallow.background"; + offset: 1 1; + } + rel2 { + to: "elm.swallow.background"; + } + } } part { name: "clipper"; type: RECT; description { state: "default" 0.0; rel1 { - to: "elm.swallow.content"; + to: "elm.swallow.background"; } rel2 { - to: "elm.swallow.content"; + to: "elm.swallow.background"; + } + } + } + part { name: "elm.swallow.background"; + type: SWALLOW; + clip_to: "clipper"; + description { state: "default" 0.0; + rel2 { + relative: 0.0 0.0; + to_x: "sb_vbar"; + to_y: "sb_hbar"; } } } - part { name: "elm.swallow.background"; - type: SWALLOW; - clip_to: "clipper"; - description { state: "default" 0.0; + part { name: "elm.swallow.content"; + type: SWALLOW; + clip_to: "clipper"; + description { state: "default" 0.0; + rel1 { + offset: 1 1; + to: "elm.swallow.background"; + } + rel2 { + relative: 0.0 0.0; + to_x: "sb_vbar"; + to_y: "sb_hbar"; + } + } + } + part { name: "elm.swallow.overlay"; + type: SWALLOW; + repeat_events: 1; + clip_to: "clipper"; + description { state: "default" 0.0; + rel1 { + to: "elm.swallow.background"; + } + rel2 { + to: "elm.swallow.background"; + } + } + } + part { name: "arrow1_vbar"; + type: IMAGE; + mouse_events: 0; + clip_to: "sb_vbar_show"; + description { state: "default" 0.00; + fixed: 1 1; + min: 13 13; + max: 13 15; + image.normal: "Scroll/scroll_up_icon_nor.png"; + fill.smooth: 0; + rel1.to: "sb_vbar_a1"; + rel2.to: "sb_vbar_a1"; + } + description { state: "clicked" 0.00; + inherit: "default" 0.00; + max: 13 13; + image.normal: "Scroll/scroll_up_icon_sel.png"; + } + description { state: "hidden" 0.00; + inherit: "default" 0.00; + image.normal: "Scroll/scroll_up_icon_dim.png"; + } + description { state: "disabled" 0.00; + inherit: "default" 0.00; + max: 13 13; + image.normal: "Scroll/scroll_up_icon_dim.png"; + } + description { state: "hovered" 0.00; + inherit: "default" 0.00; + max: 13 13; + image.normal: "Scroll/scroll_up_icon_mv.png"; + } + } + part { name: "arrow2_vbar"; + type: IMAGE; + mouse_events: 0; + clip_to: "sb_vbar_show"; + description { state: "default" 0.00; + fixed: 1 1; + min: 13 13; + max: 13 13; + image.normal: "Scroll/scroll_down_icon_nor.png"; + fill.smooth: 0; + rel1.to: "sb_vbar_a2"; + rel2.to: "sb_vbar_a2"; + } + description { state: "clicked" 0.00; + inherit: "default" 0.00; + image.normal: "Scroll/scroll_down_icon_sel.png"; + } + description { state: "hidden" 0.00; + inherit: "default" 0.00; + image.normal: "Scroll/scroll_down_icon_dim.png"; + } + description { state: "disabled" 0.00; + inherit: "default" 0.00; + image.normal: "Scroll/scroll_down_icon_dim.png"; + } + description { state: "hovered" 0.00; + inherit: "default" 0.00; + } + } + part { name: "base_vbar_border"; + type: RECT; + mouse_events: 0; + clip_to: "sb_vbar_show"; + description { state: "default" 0.00; + fixed: 1 1; + color_class: "scrollbar_line_nor"; + rel1 { + offset: 0 -1; + to_x: "elm.dragable.vbar"; + to_y: "base_vbar"; + } + rel2 { + offset: -1 0; + to_x: "elm.dragable.vbar"; + to_y: "base_vbar"; + } + } + description { state: "clicked" 0.00; + inherit: "default" 0.00; + color_class: "scrollbar_line_sel"; + } + description { state: "hovered" 0.00; + inherit: "default" 0.00; + color_class: "scrollbar_line_over"; + } + } + part { name: "base_vbar"; + type: RECT; + mouse_events: 0; + clip_to: "sb_vbar_show"; + description { state: "default" 0.00; + fixed: 1 1; + rel1 { + offset: 1 1; + to: "elm.dragable.vbar"; + } + rel2 { + offset: -2 -2; + to: "elm.dragable.vbar"; + } + } + } + part { name: "arrow1_hbar"; + type: IMAGE; + mouse_events: 0; + clip_to: "sb_hbar_show"; + description { state: "default" 0.00; + fixed: 1 1; + min: 13 13; + max: 13 13; + image.normal: "Scroll/scroll_left_icon_nor.png"; + fill.smooth: 0; + rel1.to: "sb_hbar_a1"; + rel2.to: "sb_hbar_a1"; + } + description { state: "clicked" 0.00; + inherit: "default" 0.00; + image.normal: "Scroll/scroll_left_icon_sel.png"; + } + description { state: "hidden" 0.00; + inherit: "default" 0.00; + image.normal: "Scroll/scroll_left_icon_dim.png"; + } + description { state: "disabled" 0.00; + inherit: "default" 0.00; + image.normal: "Scroll/scroll_left_icon_dim.png"; + } + description { state: "hovered" 0.00; + inherit: "default" 0.00; + image.normal: "Scroll/scroll_left_icon_mv.png"; + } + } + part { name: "arrow2_hbar"; + type: IMAGE; + mouse_events: 0; + clip_to: "sb_hbar_show"; + description { state: "default" 0.00; + fixed: 1 1; + min: 13 13; + max: 13 13; + image.normal: "Scroll/scroll_right_icon_nor.png"; + fill.smooth: 0; + rel1.to: "sb_hbar_a2"; + rel2.to: "sb_hbar_a2"; + } + description { state: "clicked" 0.00; + inherit: "default" 0.00; + max: 13 15; + image.normal: "Scroll/scroll_right_icon_sel.png"; + } + description { state: "hidden" 0.00; + inherit: "default" 0.00; + image.normal: "Scroll/scroll_right_icon_dim.png"; + } + description { state: "disabled" 0.00; + inherit: "default" 0.00; + image.normal: "Scroll/scroll_right_icon_dim.png"; + } + description { state: "hovered" 0.00; + inherit: "default" 0.00; + image.normal: "Scroll/scroll_right_icon_mv.png"; + } + } + part { name: "base_hbar_border"; + type: RECT; + mouse_events: 0; + clip_to: "sb_hbar_show"; + description { state: "default" 0.00; + fixed: 1 1; + color_class: "scrollbar_line_nor"; rel1 { - offset: 1 1; - to: "bg"; + offset: 0 -1; + to_x: "elm.dragable.hbar"; + to_y: "base_hbar"; } rel2 { - offset: -2 -2; - to: "bg"; + offset: -1 0; + to_x: "elm.dragable.hbar"; + to_y: "base_hbar"; } } + description { state: "clicked" 0.00; + inherit: "default" 0.00; + color_class: "scrollbar_line_sel"; + } + description { state: "hovered" 0.00; + inherit: "default" 0.00; + color_class: "scrollbar_line_over"; + } } - part { name: "elm.swallow.content"; - type: SWALLOW; - clip_to: "clipper"; - description { state: "default" 0.0; + part { name: "base_hbar"; + type: RECT; + mouse_events: 0; + clip_to: "sb_hbar_show"; + description { state: "default" 0.00; + fixed: 1 1; rel1 { offset: 1 1; - to: "elm.swallow.background"; + to: "elm.dragable.hbar"; } rel2 { - relative: 0.0 0.0; - offset: -6 -6; - to_x: "sb_vbar"; - to_y: "sb_hbar"; + offset: -2 -2; + to: "elm.dragable.hbar"; } } } - part { name: "elm.swallow.overlay"; - type: SWALLOW; - repeat_events: 1; - clip_to: "clipper"; - description { state: "default" 0.0; - rel1 { - to: "elm.swallow.background"; - } - rel2 { - to: "elm.swallow.background"; - } + part { name: "dim_effect"; + type: RECT; + mouse_events: 0; + description { state: "default" 0.00; + color: 0 0 0 0; + } + description { state: "effect" 0.00; + inherit: "default" 0.00; + color: 50 50 50 255; } } part { name: "elm.swallow.icon"; @@ -460,136 +1177,487 @@ group { name: "elm/scroller/entry/default"; } } programs { - program { name: "v_mouse_down"; + program { name: "program_0x5602666fc910"; signal: "mouse,down,1*"; - source: "elm.dragable.vbar"; + source: "sb_vbar_a1"; + filter: "sb_vbar_a1" "default"; + action: STATE_SET "clicked" 0.00; + target: "arrow1_vbar"; + target: "sb_vbar_a1_border"; + } + program { name: "program_0x5602666fd340"; + signal: "mouse,down,1*"; + source: "sb_vbar_a2"; + filter: "sb_vbar_a2" "default"; action: STATE_SET "clicked" 0.00; + target: "arrow2_vbar"; + target: "sb_vbar_a2_border"; + } + program { name: "program_0x5602666ffd40"; + signal: "mouse,down,1*"; + source: "sb_vbar_p1"; + action: DRAG_VAL_PAGE 0.0000 -1.0000; target: "elm.dragable.vbar"; } - program { name: "h_mouse_down"; + program { name: "program_0x560266700070"; signal: "mouse,down,1*"; - source: "elm.dragable.hbar"; + source: "sb_vbar_p2"; + action: DRAG_VAL_PAGE 0.0000 1.0000; + target: "elm.dragable.vbar"; + } + program { name: "program_0x560266710290"; + signal: "mouse,down,1*"; + source: "sb_hbar_a1"; + filter: "sb_hbar_a1" "default"; action: STATE_SET "clicked" 0.00; - target: "elm.dragable.hbar"; + target: "arrow1_hbar"; + target: "sb_hbar_a1_border"; + } + program { name: "program_0x560266710cc0"; + signal: "mouse,down,1*"; + source: "sb_hbar_a2"; + filter: "sb_hbar_a2" "default"; + action: STATE_SET "clicked" 0.00; + target: "arrow2_hbar"; + target: "sb_hbar_a2_border"; } - program { name: "horizontal_scroll_down"; + program { name: "program_0x560266711710"; signal: "mouse,down,1*"; source: "sb_hbar_p1"; action: DRAG_VAL_PAGE -1.0000 0.0000; - target: "elm.dragable.vbar"; + target: "elm.dragable.hbar"; + after: "check_pos_hbar"; } - program { name: "horizontal_scroll_up"; + program { name: "program_0x560266713b20"; signal: "mouse,down,1*"; source: "sb_hbar_p2"; action: DRAG_VAL_PAGE 1.0000 0.0000; - target: "elm.dragable.vbar"; + target: "elm.dragable.hbar"; + after: "check_pos_hbar"; } - program { name: "vertical_scroll_down"; + program { name: "program_0x560266739d70"; signal: "mouse,down,1*"; - source: "sb_vbar_p1"; - action: DRAG_VAL_PAGE 0.0000 -1.0000; - target: "elm.dragable.hbar"; + source: "elm.dragable.vbar"; + action: STATE_SET "clicked" 0.00; + target: "elm.dragable.vbar"; + target: "base_vbar_border"; + } + program { name: "program_0x56026673a500"; + signal: "mouse,down,*"; + source: "elm.dragable.vbar"; + action: SIGNAL_EMIT "elm,vbar,press" "elm"; } - program { name: "vertical_scroll_up"; + program { name: "program_0x56026673af70"; + signal: "mouse,up,*"; + source: "elm.dragable.vbar"; + action: SIGNAL_EMIT "elm,vbar,unpress" "elm"; + } + program { name: "program_0x56026673b160"; signal: "mouse,down,1*"; - source: "sb_vbar_p2"; - action: DRAG_VAL_PAGE 0.0000 1.0000; + source: "elm.dragable.hbar"; + action: STATE_SET "clicked" 0.00; target: "elm.dragable.hbar"; + target: "base_hbar_border"; } - program { name: "reload_on_load"; + program { name: "program_0x56026673b980"; + signal: "mouse,down,*"; + source: "elm.dragable.hbar"; + action: SIGNAL_EMIT "elm,hbar,press" "elm"; + } + program { name: "program_0x56026673c400"; + signal: "mouse,up,*"; + source: "elm.dragable.hbar"; + action: SIGNAL_EMIT "elm,hbar,unpress" "elm"; + } + program { name: "program_0x5602666ee0d0"; signal: "load"; - source: ""; - action: SIGNAL_EMIT "reload" "elm"; + script { + + + emit("reload", "elm"); + action_on_pos_vbar(0); + action_on_pos_hbar(0); + } } - program { name: "v_mouse_up"; - signal: "mouse,up,1"; - source: "elm.dragable.vbar"; + program { name: "hbar_a1_mouse_up"; + signal: "mouse,up,1*"; + source: "sb_hbar_a1"; + filter: "sb_hbar_a1" "default"; action: STATE_SET "default" 0.00; - target: "elm.dragable.vbar"; + target: "arrow1_hbar"; + target: "sb_hbar_a1_border"; + after: "drag_left"; + } + program { name: "hbar_a2_mouse_up"; + signal: "mouse,up,1*"; + source: "sb_hbar_a2"; + filter: "sb_hbar_a2" "default"; + action: STATE_SET "default" 0.00; + target: "arrow2_hbar"; + target: "sb_hbar_a2_border"; + after: "drag_right"; } - program { name: "h_mouse_up"; - signal: "mouse,up,1"; - source: "elm.dragable.hbar"; + program { name: "program_0x5602666fa1e0"; + signal: "elm,action,show,vbar"; + source: "elm"; action: STATE_SET "default" 0.00; - target: "elm.dragable.hbar"; + target: "sb_vbar"; + target: "sb_vbar_show"; + target: "elm.dragable.vbar"; + target: "sb_vbar_a1"; + target: "sb_vbar_a2"; + target: "y_vbar_up_mapper"; + target: "y_vbar_up"; + target: "y_vbar_down_mapper"; + target: "y_vbar_down"; + after: "check_pos_vbar"; + } + program { name: "program_0x5602666fb580"; + signal: "elm,action,hide,vbar"; + source: "elm"; + action: STATE_SET "hidden" 0.00; + target: "sb_vbar"; + target: "sb_vbar_show"; + target: "elm.dragable.vbar"; + target: "sb_vbar_a1"; + target: "sb_vbar_a2"; + target: "y_vbar_up_mapper"; + target: "y_vbar_up"; + target: "y_vbar_down_mapper"; + target: "y_vbar_down"; + } + program { name: "program_0x5602667003b0"; + signal: "elm,action,scroll"; + source: "elm"; + script { + + + action_on_pos_vbar(10); + } + } + program { name: "loop_set_vbar"; + signal: "elm,loop_y,set"; + source: "elm"; + script { + + + set_int(loop_y, 1); + action_on_pos_vbar(10); + } + } + program { name: "loop_unset_vbar"; + signal: "elm,loop_y,unset"; + source: "elm"; + script { + + + set_int(loop_y, 0); + action_on_pos_vbar(10); + } } - program { name: "show_horizontal_scroll"; + program { name: "program_0x56026670db50"; signal: "elm,action,show,hbar"; source: "elm"; action: STATE_SET "default" 0.00; target: "sb_hbar"; - } - program { name: "hide_horizontal_scroll"; + target: "sb_hbar_show"; + target: "elm.dragable.hbar"; + target: "sb_hbar_a1"; + target: "sb_hbar_a2"; + target: "x_hbar_left_mapper"; + target: "x_hbar_left"; + target: "x_hbar_right_mapper"; + target: "x_hbar_right"; + after: "check_pos_hbar"; + } + program { name: "program_0x56026670eef0"; signal: "elm,action,hide,hbar"; source: "elm"; action: STATE_SET "hidden" 0.00; target: "sb_hbar"; - } - program { name: "show_vertical_scroll"; - signal: "elm,action,show,vbar"; + target: "sb_hbar_show"; + target: "elm.dragable.hbar"; + target: "sb_hbar_a1"; + target: "sb_hbar_a2"; + target: "x_hbar_left_mapper"; + target: "x_hbar_left"; + target: "x_hbar_right_mapper"; + target: "x_hbar_right"; + } + program { name: "program_0x560266713e90"; + signal: "elm,action,scroll"; source: "elm"; - action: STATE_SET "default" 0.00; - target: "sb_vbar"; + script { + + + action_on_pos_hbar(10); + } } - program { name: "hide_vertical_scroll"; - signal: "elm,action,hide,vbar"; + program { name: "loop_set_hbar"; + signal: "elm,loop_x,set"; source: "elm"; - action: STATE_SET "hidden" 0.00; - target: "sb_vbar"; + script { + + + set_int(loop_x, 1); + action_on_pos_hbar(10); + } } - program { name: "icon_show"; - signal: "elm,action,show,icon"; + program { name: "loop_unset_hbar"; + signal: "elm,loop_x,unset"; source: "elm"; - action: STATE_SET "visible" 0.00; - target: "elm.swallow.icon"; + script { + + + set_int(loop_x, 0); + action_on_pos_hbar(10); + } } - program { name: "icon_hide"; - signal: "elm,action,hide,icon"; - source: "elm"; + program { name: "program_0x56026673a750"; + signal: "mouse,up,1"; + source: "elm.dragable.vbar"; action: STATE_SET "default" 0.00; - target: "elm.swallow.icon"; + target: "elm.dragable.vbar"; + target: "base_vbar_border"; } - program { name: "end_show"; - signal: "elm,action,show,end"; + program { name: "program_0x56026673bb70"; + signal: "mouse,up,1"; + source: "elm.dragable.hbar"; + action: STATE_SET "default" 0.00; + target: "elm.dragable.hbar"; + target: "base_hbar_border"; + } + program { name: "program_0x56026673c5f0"; + signal: "elm,action,looping,left"; source: "elm"; - action: STATE_SET "visible" 0.00; - target: "elm.swallow.end"; + action: STATE_SET "effect" 0.00; + transition: LINEAR 0.30000; + target: "dim_effect"; + after: "looping,left,done"; } - program { name: "end_hide"; - signal: "elm,action,hide,end"; + program { name: "program_0x56026673cbc0"; + signal: "elm,action,looping,left,end"; source: "elm"; action: STATE_SET "default" 0.00; - target: "elm.swallow.end"; + transition: LINEAR 0.30000; + target: "dim_effect"; } - program { name: "enable"; - signal: "elm,state,enabled"; + program { name: "program_0x56026673cea0"; + signal: "elm,action,looping,right"; + source: "elm"; + action: STATE_SET "effect" 0.00; + transition: LINEAR 0.30000; + target: "dim_effect"; + after: "looping,right,done"; + } + program { name: "program_0x56026673d4c0"; + signal: "elm,action,looping,right,end"; source: "elm"; action: STATE_SET "default" 0.00; - target: "bg"; + transition: LINEAR 0.30000; + target: "dim_effect"; } - program { name: "disable"; - signal: "elm,state,disabled"; + program { name: "program_0x56026673d7f0"; + signal: "elm,action,looping,up"; source: "elm"; - action: STATE_SET "disabled" 0.00; - target: "bg"; + action: STATE_SET "effect" 0.00; + transition: LINEAR 0.30000; + target: "dim_effect"; + after: "looping,up,done"; } - program { name: "validation_pass"; - signal: "validation,default,pass"; + program { name: "program_0x56026673dd80"; + signal: "elm,action,looping,up,end"; source: "elm"; - action: STATE_SET "pass" 0.00; - target: "focus"; + action: STATE_SET "default" 0.00; + transition: LINEAR 0.30000; + target: "dim_effect"; } - program { name: "validation_fail"; - signal: "validation,default,fail"; + program { name: "program_0x56026673e0c0"; + signal: "elm,action,looping,down"; source: "elm"; - action: STATE_SET "fail" 0.00; - target: "focus"; + action: STATE_SET "effect" 0.00; + transition: LINEAR 0.30000; + target: "dim_effect"; + after: "looping,down,done"; } - program { name: "validation_off"; - signal: "validation,default"; + program { name: "program_0x56026673e640"; + signal: "elm,action,looping,down,end"; source: "elm"; action: STATE_SET "default" 0.00; - target: "focus"; + transition: LINEAR 0.30000; + target: "dim_effect"; + } + program { name: "mouse_in_hbar"; + signal: "mouse,in"; + source: "elm.dragable.hbar"; + action: STATE_SET "hovered" 0.00; + target: "base_hbar_border"; + } + program { name: "mouse_out_hbar"; + signal: "mouse,out"; + source: "elm.dragable.hbar"; + action: STATE_SET "default" 0.00; + target: "base_hbar_border"; + } + program { name: "hbar_a1_mouse_in"; + signal: "mouse,in"; + source: "sb_hbar_a1"; + filter: "sb_hbar_a1" "default"; + action: STATE_SET "hovered" 0.00; + target: "arrow1_hbar"; + target: "sb_hbar_a1_border"; + } + program { name: "hbar_a1_mouse_out"; + signal: "mouse,out"; + source: "sb_hbar_a1"; + filter: "sb_hbar_a1" "default"; + action: STATE_SET "default" 0.00; + target: "sb_hbar_a1_border"; + target: "arrow1_hbar"; + } + program { name: "hbar_a2_mouse_in"; + signal: "mouse,in"; + source: "sb_hbar_a2"; + filter: "sb_hbar_a2" "default"; + action: STATE_SET "hovered" 0.00; + target: "sb_hbar_a2_border"; + target: "arrow2_hbar"; + } + program { name: "hbar_a2_mouse_out"; + signal: "mouse,out"; + source: "sb_hbar_a2"; + filter: "sb_hbar_a2" "default"; + action: STATE_SET "default" 0.00; + target: "sb_hbar_a2_border"; + target: "arrow2_hbar"; + } + program { name: "anim1_up"; + action: STATE_SET "default" 0.00; + transition: LINEAR 0.10000; + target: "arrow1_vbar"; + after: "drag_up"; + } + program { name: "drag_up"; + action: DRAG_VAL_STEP 0.0000 -1.0000; + target: "elm.dragable.vbar"; + } + program { name: "anim1_down"; + action: STATE_SET "default" 0.00; + transition: LINEAR 0.10000; + target: "arrow2_vbar"; + after: "drag_down"; + } + program { name: "drag_down"; + action: DRAG_VAL_STEP 0.0000 1.0000; + target: "elm.dragable.vbar"; + } + program { name: "check_pos_vbar"; + script { + + + action_on_pos_vbar(10); + } + } + program { name: "anim1_left"; + action: STATE_SET "default" 0.00; + transition: LINEAR 0.10000; + target: "arrow1_hbar"; + after: "drag_left"; + } + program { name: "drag_left"; + action: DRAG_VAL_STEP -1.0000 0.0000; + target: "elm.dragable.hbar"; + } + program { name: "anim2_left"; + action: STATE_SET "default" 0.00; + transition: LINEAR 0.10000; + target: "arrow2_hbar"; + after: "drag_right"; + } + program { name: "drag_right"; + action: DRAG_VAL_STEP 1.0000 0.0000; + target: "elm.dragable.hbar"; + } + program { name: "check_pos_hbar"; + script { + + + action_on_pos_hbar(10); + } + } + program { name: "looping,left,done"; + action: SIGNAL_EMIT "elm,looping,left,done" "elm"; + } + program { name: "looping,right,done"; + action: SIGNAL_EMIT "elm,looping,right,done" "elm"; + } + program { name: "looping,up,done"; + action: SIGNAL_EMIT "elm,looping,up,done" "elm"; + } + program { name: "looping,down,done"; + action: SIGNAL_EMIT "elm,looping,down,done" "elm"; + } + program { name: "vbar_a1_mouse_up"; + signal: "mouse,up,1*"; + source: "sb_vbar_a1"; + filter: "sb_vbar_a1" "default"; + action: STATE_SET "default" 0.00; + target: "sb_vbar_a1_border"; + target: "arrow1_vbar"; + after: "drag_up"; + } + program { name: "vbar_a1_mouse_in"; + signal: "mouse,in"; + source: "sb_vbar_a1"; + filter: "sb_vbar_a1" "default"; + action: STATE_SET "hovered" 0.00; + target: "sb_vbar_a1_border"; + target: "arrow1_vbar"; + } + program { name: "vbar_a1_mouse_out"; + signal: "mouse,out"; + source: "sb_vbar_a1"; + filter: "sb_vbar_a1" "default"; + action: STATE_SET "default" 0.00; + target: "sb_vbar_a1_border"; + target: "arrow1_vbar"; + } + program { name: "vbar_a2_mouse_up"; + signal: "mouse,up,1*"; + source: "sb_vbar_a2"; + filter: "sb_vbar_a2" "default"; + action: STATE_SET "default" 0.00; + target: "sb_vbar_a2_border"; + target: "arrow2_vbar"; + after: "drag_down"; + } + program { name: "vbar_a2_mouse_in"; + signal: "mouse,in"; + source: "sb_vbar_a2"; + filter: "sb_vbar_a2" "default"; + action: STATE_SET "hovered" 0.00; + target: "sb_vbar_a2_border"; + target: "arrow2_vbar"; + } + program { name: "vbar_a2_mouse_out"; + signal: "mouse,out"; + source: "sb_vbar_a2"; + filter: "sb_vbar_a2" "default"; + action: STATE_SET "default" 0.00; + target: "sb_vbar_a2_border"; + target: "arrow2_vbar"; + } + program { name: "mouse_in_vbar"; + signal: "mouse,in"; + source: "elm.dragable.vbar"; + action: STATE_SET "hovered" 0.00; + target: "base_vbar_border"; + } + program { name: "mouse_out_vbar"; + signal: "mouse,out"; + source: "elm.dragable.vbar"; + action: STATE_SET "default" 0.00; + target: "base_vbar_border"; } } } diff --git a/src/bin/ui/property/property_group.c b/src/bin/ui/property/property_group.c index 4a69c7d..fb83ef3 100644 --- a/src/bin/ui/property/property_group.c +++ b/src/bin/ui/property/property_group.c @@ -867,6 +867,7 @@ _init_cb(Property_Attribute *pa, Property_Action *action) elm_entry_single_line_set(action->control, false); elm_entry_editable_set(action->control, false); evas_object_size_hint_min_set(action->control, 0, 400); + elm_scroller_policy_set(action->control, ELM_SCROLLER_POLICY_AUTO, ELM_SCROLLER_POLICY_AUTO); evas_object_smart_callback_add(action->control, signals.eflete.property.script_control.clicked, _btn_script_manager_cb, NULL); break; case ATTRIBUTE_PART_NAME: diff --git a/src/bin/ui/script_manager.c b/src/bin/ui/script_manager.c index 70e6f22..ab9040e 100644 --- a/src/bin/ui/script_manager.c +++ b/src/bin/ui/script_manager.c @@ -175,6 +175,7 @@ script_manager_add(Resource2 *res) ENTRY_ADD(mng.script_layout, mng.script_entry, true); elm_entry_single_line_set(mng.script_entry, false); + elm_scroller_policy_set(mng.script_entry, ELM_SCROLLER_POLICY_AUTO, ELM_SCROLLER_POLICY_AUTO); elm_object_content_set(mng.script_layout, mng.script_entry); elm_layout_content_set(mng.script_layout, "elm.swallow.list", mng.script_entry); --