From 7c70300e1e13348b0478b6a1eed70f02f13c3f5b Mon Sep 17 00:00:00 2001 From: Thiep Ha Date: Tue, 21 May 2013 09:16:15 +0900 Subject: [PATCH] Add selection handlers to entry --- legacy/elementary/ChangeLog | 4 + legacy/elementary/NEWS | 1 + legacy/elementary/data/themes/Makefile.am | 2 + .../data/themes/images/handler_end.png | Bin 0 -> 3843 bytes .../data/themes/images/handler_start.png | Bin 0 -> 3775 bytes .../elementary/data/themes/widgets/entry.edc | 128 +++++++++++++++++- 6 files changed, 134 insertions(+), 1 deletion(-) create mode 100644 legacy/elementary/data/themes/images/handler_end.png create mode 100644 legacy/elementary/data/themes/images/handler_start.png diff --git a/legacy/elementary/ChangeLog b/legacy/elementary/ChangeLog index 3fb06bc0aa..7175dae57d 100644 --- a/legacy/elementary/ChangeLog +++ b/legacy/elementary/ChangeLog @@ -1352,3 +1352,7 @@ 2013-05-16 Ryuan Choi (ryuan) * Fix single line enty got multiple line when pasted multiple line. + +2013-05-17 Thiep Ha + + * Add selection handlers to entry. diff --git a/legacy/elementary/NEWS b/legacy/elementary/NEWS index fd677732a7..7b115c0d54 100644 --- a/legacy/elementary/NEWS +++ b/legacy/elementary/NEWS @@ -68,6 +68,7 @@ Additions: * Add elm_layout smart callback - "language,changed". * The momentum animation time is changed as the amount of flick. * Add elm_entry smart callback - "text,set,done". + * Add selection handlers to entry. Improvements: diff --git a/legacy/elementary/data/themes/Makefile.am b/legacy/elementary/data/themes/Makefile.am index 47af396db8..5575508aaa 100644 --- a/legacy/elementary/data/themes/Makefile.am +++ b/legacy/elementary/data/themes/Makefile.am @@ -172,6 +172,8 @@ images/cur_hi.png \ images/cur_shad.png \ images/cur_shine.png \ images/cur_glow.png \ +images/handler_start.png \ +images/handler_end.png \ images/bubble.png \ images/bubble_3.png \ images/bubble_shine3.png \ diff --git a/legacy/elementary/data/themes/images/handler_end.png b/legacy/elementary/data/themes/images/handler_end.png new file mode 100644 index 0000000000000000000000000000000000000000..07778a0f93a73213ed7d77245c907388084b395f GIT binary patch literal 3843 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 literal 0 HcmV?d00001 diff --git a/legacy/elementary/data/themes/widgets/entry.edc b/legacy/elementary/data/themes/widgets/entry.edc index bc51121825..238978e9e7 100644 --- a/legacy/elementary/data/themes/widgets/entry.edc +++ b/legacy/elementary/data/themes/widgets/entry.edc @@ -751,7 +751,7 @@ group { name: "elm/entry/base/default"; mouse_events: 1; scale: 1; entry_mode: EDITABLE; - select_mode: EXPLICIT; + select_mode: BLOCK_HANDLE; multiline: 1; source: "elm/entry/selection/default"; // selection under // source2: "X"; // selection over @@ -759,6 +759,8 @@ group { name: "elm/entry/base/default"; source4: "elm/entry/cursor/default"; // cursorover source5: "elm/entry/anchor/default"; // anchor under // source6: "X"; // anchor over + source7: "elm/entry/handler/start/default"; + source8: "elm/entry/handler/end/default"; description { state: "default" 0.0; /* we gotta use 0 0 here, because of scrolled entries */ fixed: 0 0; @@ -1414,4 +1416,128 @@ group { name: "elm/entry/anchor/default"; } } } +group { name: "elm/entry/handler/start/default"; + images { + image: "handler_start.png" COMP; + } + parts { + part { name: "bg"; + type: RECT; + mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + visible: 0; + color: 0 0 0 0; + } + description { state: "show" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { name: "handler"; + mouse_events: 1; + repeat_events: 0; + scale: 1; + description { state: "default" 0.0; + visible: 0; + align: 1 0; + fixed: 1 1; + min: 36 50; + image { + normal: "handler_start.png"; + } + rel1 { + to: "bg"; + relative: 0 1; + } + rel2 { + to: "bg"; + relative: 0 1; + } + } + description { state: "show" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + } + programs { + program { name: "show"; + signal: "edje,handler,show"; + source: "edje"; + action: STATE_SET "show" 0.0; + target: "bg"; + target: "handler"; + } + program { name: "hide"; + signal: "edje,handler,hide"; + source: "edje"; + action: STATE_SET "default" 0.0; + target: "bg"; + target: "handler"; + } + } +} +group { name: "elm/entry/handler/end/default"; + images { + image: "handler_end.png" COMP; + } + parts { + part { name: "bg"; + type: RECT; + mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + visible: 0; + color: 0 0 0 0; + } + description { state: "show" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { name: "handler"; + mouse_events: 1; + repeat_events: 0; + scale: 1; + description { state: "default" 0.0; + visible: 0; + align: 0 0; + fixed: 1 1; + min: 36 50; + image { + normal: "handler_end.png"; + } + rel1 { + to: "bg"; + relative: 1 1; + } + rel2 { + to: "bg"; + relative: 1 1; + } + } + description { state: "show" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + } + programs { + program { name: "show"; + signal: "edje,handler,show"; + source: "edje"; + action: STATE_SET "show" 0.0; + target: "bg"; + target: "handler"; + } + program { name: "hide"; + signal: "edje,handler,hide"; + source: "edje"; + action: STATE_SET "default" 0.0; + target: "bg"; + target: "handler"; + } + } +}