From 8272b8ed00ea4af085d3937815dc61c55359eb24 Mon Sep 17 00:00:00 2001 From: Rajeev Ranjan Date: Fri, 20 Jan 2012 16:45:44 +0530 Subject: [PATCH] [Button] Fixed CQ Nabi/S1-849 Cancel Button in Search bar is changed,added new style to support searchbar and hence addded corresponding macro's. Change-Id: I1a2f472184fdf3f828974517c887a80274ea3747 --- themes/inc/tizen-black-hd-inc.edc | 9 + themes/inc/tizen-black-inc.edc | 9 + themes/inc/tizen-hd-inc.edc | 9 + themes/inc/tizen-inc.edc | 9 + themes/widgets/button.edc | 417 +++++++++++++++++++++++++++++++++++++- 5 files changed, 452 insertions(+), 1 deletion(-) diff --git a/themes/inc/tizen-black-hd-inc.edc b/themes/inc/tizen-black-hd-inc.edc index 1d2c5d9..c279784 100644 --- a/themes/inc/tizen-black-hd-inc.edc +++ b/themes/inc/tizen-black-hd-inc.edc @@ -571,6 +571,15 @@ #define BUTTON_SWEEP_TEXT_MIN_INC 90 28 #define BUTTON_SWEEP_FONT_SIZE_INC 32 +#define BUTTON_SEARCHBAR_BG_NORMAL_MIN_INC 12 74 +#define BUTTON_SEARCHBAR_BG_BORDER_INC 6 6 6 6 +#define BUTTON_SEARCHBAR_PADDING_MIN_INC 5 5 +#define BUTTON_SEARCHBAR_ICON_RECT_MIN_INC 0 28 +#define BUTTON_SEARCHBAR_PADDING_ICON_TEXT_VISIBLE_MIN_INC 5 0 +#define BUTTON_SEARCHBAR_ICONONLY_ICON_MIN_INC 28 28 +#define BUTTON_SEARCHBAR_TEXT_MIN_INC 90 28 +#define BUTTON_SEARCHBAR_FONT_SIZE_INC 32 + #define BUTTON_HIDDEN_BG_NORMAL_MIN_INC 12 60 #define BUTTON_HIDDEN_BG_BORDER_INC 5 5 5 5 #define BUTTON_HIDDEN_PADDING_MIN_INC 5 5 diff --git a/themes/inc/tizen-black-inc.edc b/themes/inc/tizen-black-inc.edc index bf71b05..8ca9a17 100644 --- a/themes/inc/tizen-black-inc.edc +++ b/themes/inc/tizen-black-inc.edc @@ -556,6 +556,15 @@ #define BUTTON_SWEEP_TEXT_MIN_INC 90 28 #define BUTTON_SWEEP_FONT_SIZE_INC 20 +#define BUTTON_SEARCHBAR_BG_NORMAL_MIN_INC 10 38 +#define BUTTON_SEARCHBAR_BG_BORDER_INC 3 3 3 3 +#define BUTTON_SEARCHBAR_PADDING_MIN_INC 5 5 +#define BUTTON_SEARCHBAR_ICON_RECT_MIN_INC 0 28 +#define BUTTON_SEARCHBAR_PADDING_ICON_TEXT_VISIBLE_MIN_INC 5 0 +#define BUTTON_SEARCHBAR_ICONONLY_ICON_MIN_INC 28 28 +#define BUTTON_SEARCHBAR_TEXT_MIN_INC 90 28 +#define BUTTON_SEARCHBAR_FONT_SIZE_INC 20 + #define BUTTON_HIDDEN_BG_NORMAL_MIN_INC 10 38 #define BUTTON_HIDDEN_BG_BORDER_INC 4 4 3 3 #define BUTTON_HIDDEN_PADDING_MIN_INC 5 5 diff --git a/themes/inc/tizen-hd-inc.edc b/themes/inc/tizen-hd-inc.edc index ba84b5a..26b9fd5 100644 --- a/themes/inc/tizen-hd-inc.edc +++ b/themes/inc/tizen-hd-inc.edc @@ -576,6 +576,15 @@ #define BUTTON_SWEEP_TEXT_MIN_INC 90 28 #define BUTTON_SWEEP_FONT_SIZE_INC 32 +#define BUTTON_SEARCHBAR_BG_NORMAL_MIN_INC 12 74 +#define BUTTON_SEARCHBAR_BG_BORDER_INC 6 6 6 6 +#define BUTTON_SEARCHBAR_PADDING_MIN_INC 5 5 +#define BUTTON_SEARCHBAR_ICON_RECT_MIN_INC 0 28 +#define BUTTON_SEARCHBAR_PADDING_ICON_TEXT_VISIBLE_MIN_INC 5 0 +#define BUTTON_SEARCHBAR_ICONONLY_ICON_MIN_INC 28 28 +#define BUTTON_SEARCHBAR_TEXT_MIN_INC 90 28 +#define BUTTON_SEARCHBAR_FONT_SIZE_INC 32 + #define BUTTON_HIDDEN_BG_NORMAL_MIN_INC 12 60 #define BUTTON_HIDDEN_BG_BORDER_INC 5 5 5 5 #define BUTTON_HIDDEN_PADDING_MIN_INC 5 5 diff --git a/themes/inc/tizen-inc.edc b/themes/inc/tizen-inc.edc index 9a2e2f9..1926e3b 100644 --- a/themes/inc/tizen-inc.edc +++ b/themes/inc/tizen-inc.edc @@ -568,6 +568,15 @@ #define BUTTON_SWEEP_TEXT_MIN_INC 90 28 #define BUTTON_SWEEP_FONT_SIZE_INC 20 +#define BUTTON_SEARCHBAR_BG_NORMAL_MIN_INC 10 38 +#define BUTTON_SEARCHBAR_BG_BORDER_INC 3 3 3 3 +#define BUTTON_SEARCHBAR_PADDING_MIN_INC 5 5 +#define BUTTON_SEARCHBAR_ICON_RECT_MIN_INC 0 28 +#define BUTTON_SEARCHBAR_PADDING_ICON_TEXT_VISIBLE_MIN_INC 5 0 +#define BUTTON_SEARCHBAR_ICONONLY_ICON_MIN_INC 28 28 +#define BUTTON_SEARCHBAR_TEXT_MIN_INC 90 28 +#define BUTTON_SEARCHBAR_FONT_SIZE_INC 20 + #define BUTTON_HIDDEN_BG_NORMAL_MIN_INC 10 38 #define BUTTON_HIDDEN_BG_BORDER_INC 4 4 3 3 #define BUTTON_HIDDEN_PADDING_MIN_INC 5 5 diff --git a/themes/widgets/button.edc b/themes/widgets/button.edc index 8ccba24..0d2152c 100644 --- a/themes/widgets/button.edc +++ b/themes/widgets/button.edc @@ -947,7 +947,6 @@ /////////////////////////////////////////////////////////////////////////////////////// group { name: "elm/button/base/sweep"; alias: "elm/button/base/text_only/sweep"; - alias: "elm/button/base/searchbar/default"; images { image: "00_button_sweep.png" COMP; image: "00_button_sweep_press.png" COMP;//focus image is missing, so using press @@ -1350,6 +1349,422 @@ } } } +/////////////////////////////////////////////////////////////////////////////////////// +group { name: "elm/button/base/searchbar/default"; + images { + image: "00_search_input_field_bg.png" COMP; + image: "00_button_sweep_press.png" COMP;//focus image is missing, so using press + image: "00_button_sweep_dim.png" COMP; + } + script { + public button_state = BUTTON_STATE_ENABLED; + } + parts { + part { name: "button_image"; + scale: 1; + description { state: "default" 0.0; + min: BUTTON_SEARCHBAR_BG_NORMAL_MIN_INC; + image { + normal: "00_search_input_field_bg.png"; + border: BUTTON_SEARCHBAR_BG_BORDER_INC; + border_scale: 1; + } + } + description { state: "clicked" 0.0; + inherit: "default" 0.0; + image { + normal: "00_button_sweep_press.png"; + border: BUTTON_SWEEP_BG_BORDER_INC; + border_scale: 1; + } + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + image { + normal: "00_button_sweep_dim.png"; + border: BUTTON_SWEEP_BG_BORDER_INC; + border_scale: 1; + } + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + image { + normal: "00_button_sweep_press.png"; + border: BUTTON_SWEEP_BG_BORDER_INC; + border_scale: 1; + } + } + } + part { name: "padding_left_top"; + type: RECT; + scale: 1; + mouse_events: 0; + description { state: "default" 0.0; + align: 0.0 0.0; + rel2.relative: 0.0 0.0; + min: BUTTON_SEARCHBAR_PADDING_MIN_INC; + fixed: 1 1; + visible: 0; + } + } + part { name: "padding_right_bottom"; + type: RECT; + scale: 1; + mouse_events: 0; + description { state: "default" 0.0; + align: 1.0 1.0; + rel1.relative: 1.0 1.0; + min: BUTTON_SEARCHBAR_PADDING_MIN_INC; + fixed: 1 1; + visible: 0; + } + } + part { name: "icon_rect"; + type: RECT; + scale: 1; + mouse_events: 0; + description { state: "default" 0.0; + min: BUTTON_SEARCHBAR_ICON_RECT_MIN_INC; + fixed: 1 0; + rel1 { + relative: 0.0 1.0; + to_x: "elm.swallow.content"; + to_y: "padding_left_top"; + } + rel2 { + relative: 1.0 0.0; + to_x: "elm.swallow.content"; + to_y: "padding_right_bottom"; + } + align: 0.0 0.5; + color: 0 0 0 0; + } + } + part { name: "padding_icon_text"; + type: RECT; + scale: 1; + mouse_events: 0; + description { state: "default" 0.0; //when only icon or no icon is there + align: 0.0 0.0; + rel1 { + relative: 1.0 0.0; + to: "icon_rect"; + } + rel2.to: "icon_rect"; + fixed: 1 0; + min: 0 0; + color: 0 0 0 0; + } + description { state: "icononly" 0.0; + inherit: "default" 0.0; + } + description { state: "visible" 0.0; //when icon is visible + align: 0.0 0.0; + rel1 { + relative: 1.0 0.0; + to: "icon_rect"; + } + rel2.to: "icon_rect"; + fixed: 1 0; + min: BUTTON_SEARCHBAR_PADDING_ICON_TEXT_VISIBLE_MIN_INC; + color: 0 0 0 0; + } + } + part { name: "elm.swallow.content"; + type: SWALLOW; + scale: 1; + clip_to: "clipper"; + description { state: "default" 0.0; + visible: 0; + align: 0.0 0.5; + rel1 { + relative: 1.0 1.0; + to: "padding_left_top"; + } + rel2 { + relative: 1.0 0.0; + to_x: "padding_left_top"; + to_y: "padding_right_bottom"; + } + fixed: 1 0; + } + description { state: "visible" 0.0; + fixed: 1 0; + align: 0.0 0.5; + rel1 { + relative: 1.0 1.0; + to: "padding_left_top"; + } + rel2 { + relative: 1.0 0.0; + to_x: "padding_left_top"; + to_y: "padding_right_bottom"; + } + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + } + description { state: "icononly" 0.0; + min: BUTTON_SEARCHBAR_ICONONLY_ICON_MIN_INC; + rel1 { + relative: 1.0 1.0; + to: "padding_left_top"; + } + rel2 { + relative: 1.0 0.0; + to_x: "padding_left_top"; + to_y: "padding_right_bottom"; + } + } + } + part { name: "elm.text"; + type: TEXT; + mouse_events: 0; + scale: 1; + clip_to: "clipper"; + description { state: "default" 0.0; + visible: 0; + rel1 { + relative: 1.0 1.0; + to_x: "padding_icon_text"; + to_y: "padding_left_top"; + } + rel2 { + relative: 0.0 0.0; + to: "padding_right_bottom"; + } + color: BUTTON_SWEEP_BUTTON_TEXT_NORMAL_COLOR_INC; + text { + font: "SLP:style=Medium"; + size: BUTTON_SEARCHBAR_FONT_SIZE_INC; + min: 0 0; + } + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + min: BUTTON_SEARCHBAR_TEXT_MIN_INC; + } + description { state: "clicked" 0.0; + inherit: "default" 0.0; + visible: 1; + min: 0 0; + color: BUTTON_SWEEP_BUTTON_TEXT_PRESSED_COLOR_INC; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 0 0 0 128; + } + description { state: "disabled_visible" 0.0; + inherit: "default" 0.0; + color: BUTTON_SWEEP_BUTTON_TEXT_DISABLED_COLOR_INC; + visible: 1; + min: BUTTON_SWEEP_TEXT_MIN_INC; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + min: 0 0; + color: BUTTON_SWEEP_BUTTON_TEXT_FOCUSED_COLOR_INC; + } + } + part { name: "over2"; + type: RECT; + repeat_events: 1; + ignore_flags: ON_HOLD; + description { state: "default" 0.0; + color: 0 0 0 0; + } + } + part { name: "over3"; + type: RECT; + repeat_events: 1; + description { state: "default" 0.0; + color: 0 0 0 0; + } + } + part { name: "clipper"; + type: RECT; + description { state: "default" 0.0; + color: 255 255 255 255; + } + } + part { name: "disabler"; + type: RECT; + description { state: "default" 0.0; + color: 0 0 0 0; + visible: 0; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + } + programs { + program { name: "button_click"; + signal: "mouse,down,1"; + source: "over2"; + action: SIGNAL_EMIT "elm,action,press" ""; + after: "button_click_anim"; + } + program { name: "button_click_anim"; + action: STATE_SET "clicked" 0.0; + target: "button_image"; + after: "text_clicked"; + } + program { name: "text_clicked"; + script { + new st[31]; + new Float:vl; + get_state(PART:"elm.text", st, 30, vl); + if (!strcmp(st, "visible")) + set_state(PART:"elm.text", "clicked", 0.0); + } + } + program { name: "button_unpress"; + action: SIGNAL_EMIT "elm,action,unpress" ""; + } + program { name: "button_mouseout_clicked"; + signal: "mouse,up,1"; + source: "over3"; + script { + new st[31]; + new Float:vl; + get_state(PART:"elm.swallow.content", st, 30, vl); + if (strcmp(st, "icononly")) + { + emit("elm,action,default,text,set", ""); + set_state(PART:"elm.text", "visible", 0.0); + } + if (get_int(button_state) != BUTTON_STATE_DISABLED) + set_state(PART:"button_image", "default", 0.0); + } + after: button_unpress; + } + program { name: "button_unclick3"; + signal: "mouse,clicked,1"; + source: "over2"; + action: SIGNAL_EMIT "elm,action,click" ""; + } + program { name: "text_show"; + signal: "elm,state,text,visible"; + source: "elm"; + script { + new st[31]; + new Float:vl; + get_state(PART:"elm.swallow.content", st, 30, vl); + if (!strcmp(st, "icononly")) + { + set_state(PART:"elm.swallow.content", "visible", 0.0); + set_state(PART:"padding_icon_text", "visible", 0.0); + } + if (get_int(button_state) != BUTTON_STATE_DISABLED) + set_state(PART:"elm.text", "visible", 0.0); + else + set_state(PART:"elm.text", "disabled_visible", 0.0); + } + } + program { name: "text_hide"; + signal: "elm,state,text,hidden"; + source: "elm"; + script { + new st[31]; + new Float:vl; + get_state(PART:"elm.swallow.content", st, 30, vl); + if (!strcmp(st, "visible")) + { + set_state(PART:"elm.swallow.content", "icononly", 0.0); + set_state(PART:"padding_icon_text", "icononly", 0.0); + } + set_state(PART:"elm.text", "default", 0.0); + } + } + program { name: "icon_show"; + signal: "elm,state,icon,visible"; + source: "elm"; + script { + new st[31]; + new Float:vl; + get_state(PART:"elm.text", st, 30, vl); + if (!strcmp(st, "visible")) + { + set_state(PART:"elm.swallow.content", "visible", 0.0); + set_state(PART:"padding_icon_text", "visible", 0.0); + } + else + { + set_state(PART:"elm.swallow.content", "icononly", 0.0); + set_state(PART:"padding_icon_text", "icononly", 0.0); + } + } + } + program { name: "icon_hide"; + signal: "elm,state,icon,hidden"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.swallow.content"; + target: "padding_icon_text"; + } + program { name: "disable"; + signal: "elm,state,disabled"; + source: "elm"; + action: STATE_SET "disabled" 0.0; + target: "button_image"; + target: "disabler"; + after: "disable_text"; + } + program { name: "disable_text"; + script { + new st[31]; + new Float:vl; + get_state(PART:"elm.text", st, 30, vl); + if (!strcmp(st, "visible")) + set_state(PART:"elm.text", "disabled_visible", 0.0); + else + set_state(PART:"elm.text", "disabled", 0.0); + set_int(button_state, BUTTON_STATE_DISABLED); + } + } + program { name: "enable"; + signal: "elm,state,enabled"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "button_image"; + target: "disabler"; + after: "enable_text"; + } + program { name: "enable_text"; + script { + new st[31]; + new Float:vl; + get_state(PART:"elm.text", st, 30, vl); + if (!strcmp(st, "disabled_visible")) + set_state(PART:"elm.text", "visible", 0.0); + else + set_state(PART:"elm.text", "default", 0.0); + set_int(button_state, BUTTON_STATE_ENABLED); + } + } + program { name: "focused"; + //signal: "elm,action,focus"; + //source: "elm"; + action: STATE_SET "focused" 0.0; + target: "button_image"; + target: "elm.text"; + } + program { name: "unfocused"; + //signal: "elm,action,unfocus"; + //source: "elm"; + action: STATE_SET "default" 0.0; + target: "button_image"; + after: "unfocus_text"; + } + program { name: "unfocus_text"; + action: STATE_SET "visible" 0.0; + target: "elm.text"; + } + } + } /////////////////////////////////////////////////////////////////////////////////////// group { name: "elm/button/base/sweep/delete"; -- 2.7.4