diff options
author | Daniel Hirt <daniel.hirt@samsung.com> | 2016-03-15 18:06:59 +0200 |
---|---|---|
committer | Daniel Hirt <daniel.hirt@samsung.com> | 2016-04-04 17:33:23 +0300 |
commit | 1f18e76ba8e822d8a97c167d8d8583982c88abbe (patch) | |
tree | 8684719cb7d4d9bdc13be3b6a2b3241e62630de0 | |
parent | 3481b65c223173e10c334166209f6ac40d90b0b6 (diff) | |
download | efl-1f18e76ba8e822d8a97c167d8d8583982c88abbe.tar.gz |
Label: merge slide groups into Entry's theme
This should make sliding somewhat usable. Still need to see what might
be broken.
-rw-r--r-- | data/elementary/themes/edc/elm/entry.edc | 357 |
1 files changed, 357 insertions, 0 deletions
diff --git a/data/elementary/themes/edc/elm/entry.edc b/data/elementary/themes/edc/elm/entry.edc index fcccb0cfd5..9489e67104 100644 --- a/data/elementary/themes/edc/elm/entry.edc +++ b/data/elementary/themes/edc/elm/entry.edc @@ -1179,6 +1179,363 @@ group { name: "elm/entry/handler/end/default"; } } +group { name: "elm/entry/base/slide_long"; + inherit: "elm/entry/base-noedit/default"; + script { + public g_duration, g_stopslide, g_timer_id, g_anim_id; + + public message(Msg_Type:type, id, ...) { + if ((type == MSG_FLOAT_SET) && (id == 0)) { + new Float:duration; + duration = getfarg(2); + set_float(g_duration, duration); + } + } + public slide_to_end_anim(val, Float:pos) { + new stopflag; + new id; + stopflag = get_int(g_stopslide); + if (stopflag == 1) return; + set_tween_state(PART:"elm.text", pos, "slide_begin", 0.0, "slide_end", 0.0); + if (pos >= 1.0) { + id = timer(0.5, "slide_to_begin", 1); + set_int(g_timer_id, id); + emit("elm,state,slide,end","elm"); + } + } + public slide_to_end() { + new stopflag; + new id; + new Float:duration; + stopflag = get_int(g_stopslide); + if (stopflag == 1) return; + duration = get_float(g_duration); + id = anim(duration, "slide_to_end_anim", 1); + set_int(g_anim_id, id); + } + public slide_to_begin() { + new stopflag; + new id; + stopflag = get_int(g_stopslide); + if (stopflag == 1) return; + set_state(PART:"elm.text", "slide_begin", 0.0); + id = timer(0.5, "slide_to_end", 1); + set_int(g_timer_id, id); + } + public start_slide() { + set_int(g_stopslide, 0); + set_state(PART:"elm.text", "slide_begin", 0.0); + slide_to_end(); + } + public stop_slide() { + new id; + set_int(g_stopslide, 1); + id = get_int(g_anim_id); + cancel_anim(id); + id = get_int(g_timer_id); + cancel_timer(id); + set_state(PART:"elm.text", "default", 0.0); + } + } + parts { + part { name: "entry.text.clip"; type: RECT; + description { state: "default" 0.0; + } + } + part { name: "elm.text"; type: TEXTBLOCK; + scale: 1; + clip_to: "entry.text.clip"; + description { state: "default" 0.0; + rel1.relative: 0.0 0.0; + rel2.relative: 1.0 1.0; + align: 0.0 0.0; + text { + style: "entry_style"; + min: 0 1; + } + } + description { state: "slide_end" 0.0; + inherit: "default" 0.0; + rel1.relative: 0.0 0.0; + rel2.relative: 0.0 1.0; + align: 1.0 0.0; + text { + style: "entry_style"; + min: 1 1; + ellipsis: -1; + } + fixed: 1 0; + } + description { state: "slide_begin" 0.0; + inherit: "default" 0.0; + rel1.relative: 1.0 0.0; + rel2.relative: 1.0 1.0; + align: 0.0 0.0; + text { + style: "entry_style"; + min: 1 1; + ellipsis: -1; + } + fixed: 1 0; + } + } + } + programs { + program { name: "start_slide"; + signal: "elm,state,slide,start"; source: "elm"; + script { + start_slide(); + } + } + program { name: "stop_slide"; + signal: "elm,state,slide,stop"; source: "elm"; + script { + stop_slide(); + } + } + } +} + +group { name: "elm/entry/base/slide_short"; + inherit: "elm/entry/base-noedit/default"; + script { + public g_duration, g_stopslide, g_timer_id, g_anim_id; + + public message(Msg_Type:type, id, ...) { + if ((type == MSG_FLOAT_SET) && (id == 0)) { + new Float:duration; + duration = getfarg(2); + set_float(g_duration, duration); + } + } + public slide_to_end_anim(val, Float:pos) { + new stopflag; + new id; + stopflag = get_int(g_stopslide); + if (stopflag == 1) return; + set_tween_state(PART:"elm.text", pos, "slide_begin", 0.0, "slide_end", 0.0); + if (pos >= 1.0) { + id = timer(0.5, "slide_to_begin", 1); + set_int(g_timer_id, id); + emit("elm,state,slide,end","elm"); + } + } + public slide_to_end() { + new stopflag; + new id; + new Float:duration; + stopflag = get_int(g_stopslide); + if (stopflag == 1) return; + duration = get_float(g_duration); + id = anim(duration, "slide_to_end_anim", 1); + set_int(g_anim_id, id); + } + public slide_to_begin() { + new stopflag; + new id; + stopflag = get_int(g_stopslide); + if (stopflag == 1) return; + set_state(PART:"elm.text", "slide_begin", 0.0); + id = timer(0.5, "slide_to_end", 1); + set_int(g_timer_id, id); + } + public start_slide() { + set_int(g_stopslide, 0); + set_state(PART:"elm.text", "slide_begin", 0.0); + slide_to_end(); + } + public stop_slide() { + new id; + set_int(g_stopslide, 1); + id = get_int(g_anim_id); + cancel_anim(id); + id = get_int(g_timer_id); + cancel_timer(id); + set_state(PART:"elm.text", "default", 0.0); + } + } + parts { + part { name: "entry.text.clip"; type: RECT; + description { state: "default" 0.0; + } + } + part { name: "elm.text"; type: TEXTBLOCK; + scale: 1; + clip_to: "entry.text.clip"; + description { state: "default" 0.0; + rel1.relative: 0.0 0.0; + rel2.relative: 1.0 1.0; + align: 0.0 0.0; + text { style: "entry_style"; + min: 0 1; + } + } + description { state: "slide_end" 0.0; + inherit: "default" 0.0; + rel1.relative: 1.0 0.0; + rel2.relative: 1.0 1.0; + align: 1.0 0.0; + text { style: "entry_style"; + min: 1 1; + ellipsis: -1; + } + fixed: 1 0; + } + description { state: "slide_begin" 0.0; + inherit: "default" 0.0; + rel1.relative: 0.0 0.0; + rel2.relative: 0.0 1.0; + align: 0.0 0.0; + text { style: "entry_style"; + min: 1 1; + ellipsis: -1; + } + fixed: 1 0; + } + } + } + programs { + program { name: "start_slide"; + signal: "elm,state,slide,start"; source: "elm"; + script { + start_slide(); + } + } + program { name: "stop_slide"; + signal: "elm,state,slide,stop"; source: "elm"; + script { + stop_slide(); + } + } + } +} + +group { name: "elm/entry/base/slide_bounce"; + inherit: "elm/entry/base-noedit/default"; + script { + public g_duration, g_stopslide, g_timer_id, g_anim_id; + + public message(Msg_Type:type, id, ...) { + if ((type == MSG_FLOAT_SET) && (id == 0)) { + new Float:duration; + duration = getfarg(2); + set_float(g_duration, duration); + } + } + public slide_to_end_anim(val, Float:pos) { + new stopflag; + new id; + stopflag = get_int(g_stopslide); + if (stopflag == 1) return; + set_tween_state(PART:"elm.text", pos, "slide_begin", 0.0, "slide_end", 0.0); + if (pos >= 1.0) { + id = timer(0.5, "slide_to_begin", 1); + set_int(g_timer_id, id); + } + } + public slide_to_end() { + new stopflag; + new id; + new Float:duration; + stopflag = get_int(g_stopslide); + if (stopflag == 1) return; + duration = get_float(g_duration); + id = anim(duration, "slide_to_end_anim", 1); + set_int(g_anim_id, id); + } + public slide_to_begin_anim(val, Float:pos) { + new stopflag; + new id; + stopflag = get_int(g_stopslide); + if (stopflag == 1) return; + set_tween_state(PART:"elm.text", pos, "slide_end", 0.0, "slide_begin", 0.0); + if (pos >= 1.0) { + id = timer(0.5, "slide_to_end", 1); + set_int(g_timer_id, id); + emit("elm,state,slide,end","elm"); + } + } + public slide_to_begin() { + new stopflag; + new id; + new Float:duration; + stopflag = get_int(g_stopslide); + if (stopflag == 1) return; + duration = get_float(g_duration); + id = anim(duration, "slide_to_begin_anim", 1); + set_int(g_anim_id, id); + } + public start_slide() { + set_int(g_stopslide, 0); + set_state(PART:"elm.text", "slide_begin", 0.0); + slide_to_end(); + } + public stop_slide() { + new id; + set_int(g_stopslide, 1); + id = get_int(g_anim_id); + cancel_anim(id); + id = get_int(g_timer_id); + cancel_timer(id); + set_state(PART:"elm.text", "default", 0.0); + } + } + parts { + part { name: "entry.text.clip"; type: RECT; + description { state: "default" 0.0; + } + } + part { name: "elm.text"; type: TEXTBLOCK; + scale: 1; + clip_to: "entry.text.clip"; + description { state: "default" 0.0; + rel1.relative: 0.0 0.0; + rel2.relative: 1.0 1.0; + align: 0.0 0.0; + text { style: "entry_style"; + min: 0 1; + } + } + description { state: "slide_end" 0.0; + inherit: "default" 0.0; + rel1.relative: 1.0 0.0; + rel2.relative: 1.0 1.0; + align: 1.0 0.0; + text { style: "entry_style"; + min: 1 1; + ellipsis: -1; + } + fixed: 1 0; + } + description { state: "slide_begin" 0.0; + inherit: "default" 0.0; + rel1.relative: 0.0 0.0; + rel2.relative: 0.0 1.0; + align: 0.0 0.0; + text { style: "entry_style"; + min: 1 1; + ellipsis: -1; + } + fixed: 1 0; + } + } + } + programs { + program { name: "start_slide"; + signal: "elm,state,slide,start"; source: "elm"; + script { + start_slide(); + } + } + program { name: "stop_slide"; + signal: "elm,state,slide,stop"; source: "elm"; + script { + stop_slide(); + } + } + } +} + /////////////////////////////////////////////////////////////////////////////// // emoticon images from: // Tanya - Latvia |