diff options
author | Sungtaek Hong <sth253.hong@samsung.com> | 2017-01-04 21:15:49 -0800 |
---|---|---|
committer | Gerrit Code Review <gerrit@review.vlan103.tizen.org> | 2017-01-04 21:15:49 -0800 |
commit | 9ba1d9adf41fb06488178286861d3c187ef47a6c (patch) | |
tree | 510c76161060c79d65f0b523f7941cc091800c5c | |
parent | 745e8995206524048c0a0dd4a193dc9eef03a5d0 (diff) | |
parent | 98bbad5d4d08851bfd3a58b5fd50ad1a4c24d2c4 (diff) | |
download | elm-sharp-9ba1d9adf41fb06488178286861d3c187ef47a6c.tar.gz elm-sharp-9ba1d9adf41fb06488178286861d3c187ef47a6c.tar.bz2 elm-sharp-9ba1d9adf41fb06488178286861d3c187ef47a6c.zip |
Merge "theme: add tv overlay theme from efl-theme-tizen-tv" into tizen
72 files changed, 13295 insertions, 3 deletions
diff --git a/ElmSharp/theme/tv/HD/images/User_Input_Elements/README b/ElmSharp/theme/tv/HD/images/User_Input_Elements/README new file mode 100644 index 0000000..8db8ed0 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/User_Input_Elements/README @@ -0,0 +1,2 @@ +This is reserved space for User Input Images. +Please erase this file when any image is added. diff --git a/ElmSharp/theme/tv/HD/images/bt_bases.png b/ElmSharp/theme/tv/HD/images/bt_bases.png Binary files differnew file mode 100644 index 0000000..7d77abe --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/bt_bases.png diff --git a/ElmSharp/theme/tv/HD/images/btn_text_foc.png b/ElmSharp/theme/tv/HD/images/btn_text_foc.png Binary files differnew file mode 100644 index 0000000..4a30fec --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/btn_text_foc.png diff --git a/ElmSharp/theme/tv/HD/images/btn_text_nor.png b/ElmSharp/theme/tv/HD/images/btn_text_nor.png Binary files differnew file mode 100644 index 0000000..4834090 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/btn_text_nor.png diff --git a/ElmSharp/theme/tv/HD/images/checkbox_check_foc.png b/ElmSharp/theme/tv/HD/images/checkbox_check_foc.png Binary files differnew file mode 100755 index 0000000..08ccc25 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/checkbox_check_foc.png diff --git a/ElmSharp/theme/tv/HD/images/checkbox_check_nor.png b/ElmSharp/theme/tv/HD/images/checkbox_check_nor.png Binary files differnew file mode 100755 index 0000000..543ad01 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/checkbox_check_nor.png diff --git a/ElmSharp/theme/tv/HD/images/checkbox_uncheck_foc.png b/ElmSharp/theme/tv/HD/images/checkbox_uncheck_foc.png Binary files differnew file mode 100755 index 0000000..b100b99 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/checkbox_uncheck_foc.png diff --git a/ElmSharp/theme/tv/HD/images/checkbox_uncheck_nor.png b/ElmSharp/theme/tv/HD/images/checkbox_uncheck_nor.png Binary files differnew file mode 100755 index 0000000..dc4469a --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/checkbox_uncheck_nor.png diff --git a/ElmSharp/theme/tv/HD/images/content_innershadow.png b/ElmSharp/theme/tv/HD/images/content_innershadow.png Binary files differnew file mode 100755 index 0000000..258105f --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/content_innershadow.png diff --git a/ElmSharp/theme/tv/HD/images/core_icon_picker_arrow_down.png b/ElmSharp/theme/tv/HD/images/core_icon_picker_arrow_down.png Binary files differnew file mode 100755 index 0000000..378f2e8 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/core_icon_picker_arrow_down.png diff --git a/ElmSharp/theme/tv/HD/images/core_icon_picker_arrow_up.png b/ElmSharp/theme/tv/HD/images/core_icon_picker_arrow_up.png Binary files differnew file mode 100755 index 0000000..dc17cad --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/core_icon_picker_arrow_up.png diff --git a/ElmSharp/theme/tv/HD/images/elipse_114.png b/ElmSharp/theme/tv/HD/images/elipse_114.png Binary files differnew file mode 100644 index 0000000..6a83b38 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/elipse_114.png diff --git a/ElmSharp/theme/tv/HD/images/ico_default_video_180.png b/ElmSharp/theme/tv/HD/images/ico_default_video_180.png Binary files differnew file mode 100755 index 0000000..9e32991 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/ico_default_video_180.png diff --git a/ElmSharp/theme/tv/HD/images/ico_dropdown_menu_check.png b/ElmSharp/theme/tv/HD/images/ico_dropdown_menu_check.png Binary files differnew file mode 100644 index 0000000..b896600 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/ico_dropdown_menu_check.png diff --git a/ElmSharp/theme/tv/HD/images/ico_dropdown_menu_open_arrow.png b/ElmSharp/theme/tv/HD/images/ico_dropdown_menu_open_arrow.png Binary files differnew file mode 100755 index 0000000..edb10fb --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/ico_dropdown_menu_open_arrow.png diff --git a/ElmSharp/theme/tv/HD/images/ico_folder.png b/ElmSharp/theme/tv/HD/images/ico_folder.png Binary files differnew file mode 100755 index 0000000..7b5fc69 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/ico_folder.png diff --git a/ElmSharp/theme/tv/HD/images/ico_search.png b/ElmSharp/theme/tv/HD/images/ico_search.png Binary files differnew file mode 100644 index 0000000..a276e93 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/ico_search.png diff --git a/ElmSharp/theme/tv/HD/images/modal_banner_type_shadow.png b/ElmSharp/theme/tv/HD/images/modal_banner_type_shadow.png Binary files differnew file mode 100644 index 0000000..fa00923 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/modal_banner_type_shadow.png diff --git a/ElmSharp/theme/tv/HD/images/modal_dialogs_banner_bg.png b/ElmSharp/theme/tv/HD/images/modal_dialogs_banner_bg.png Binary files differnew file mode 100644 index 0000000..c4a5fe5 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/modal_dialogs_banner_bg.png diff --git a/ElmSharp/theme/tv/HD/images/modal_dialogs_bg.png b/ElmSharp/theme/tv/HD/images/modal_dialogs_bg.png Binary files differnew file mode 100644 index 0000000..62e7ed0 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/modal_dialogs_bg.png diff --git a/ElmSharp/theme/tv/HD/images/popover_arrow.png b/ElmSharp/theme/tv/HD/images/popover_arrow.png Binary files differnew file mode 100755 index 0000000..8160bf9 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/popover_arrow.png diff --git a/ElmSharp/theme/tv/HD/images/progress_wheel.png b/ElmSharp/theme/tv/HD/images/progress_wheel.png Binary files differnew file mode 100644 index 0000000..c7e9099 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/progress_wheel.png diff --git a/ElmSharp/theme/tv/HD/images/progressbar_thumb_foc.png b/ElmSharp/theme/tv/HD/images/progressbar_thumb_foc.png Binary files differnew file mode 100755 index 0000000..9356150 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/progressbar_thumb_foc.png diff --git a/ElmSharp/theme/tv/HD/images/progressbar_thumb_nor.png b/ElmSharp/theme/tv/HD/images/progressbar_thumb_nor.png Binary files differnew file mode 100755 index 0000000..ea4b279 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/progressbar_thumb_nor.png diff --git a/ElmSharp/theme/tv/HD/images/progressbar_thumb_stroke_foc.png b/ElmSharp/theme/tv/HD/images/progressbar_thumb_stroke_foc.png Binary files differnew file mode 100755 index 0000000..dc54299 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/progressbar_thumb_stroke_foc.png diff --git a/ElmSharp/theme/tv/HD/images/radiobtn_off_foc.png b/ElmSharp/theme/tv/HD/images/radiobtn_off_foc.png Binary files differnew file mode 100755 index 0000000..38ecec9 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/radiobtn_off_foc.png diff --git a/ElmSharp/theme/tv/HD/images/radiobtn_off_nor.png b/ElmSharp/theme/tv/HD/images/radiobtn_off_nor.png Binary files differnew file mode 100755 index 0000000..6bd4c7e --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/radiobtn_off_nor.png diff --git a/ElmSharp/theme/tv/HD/images/radiobtn_on_foc.png b/ElmSharp/theme/tv/HD/images/radiobtn_on_foc.png Binary files differnew file mode 100755 index 0000000..e12dc05 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/radiobtn_on_foc.png diff --git a/ElmSharp/theme/tv/HD/images/radiobtn_on_nor.png b/ElmSharp/theme/tv/HD/images/radiobtn_on_nor.png Binary files differnew file mode 100755 index 0000000..f74c505 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/radiobtn_on_nor.png diff --git a/ElmSharp/theme/tv/HD/images/round_rectangle_4X4.png b/ElmSharp/theme/tv/HD/images/round_rectangle_4X4.png Binary files differnew file mode 100644 index 0000000..bd4edfe --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/round_rectangle_4X4.png diff --git a/ElmSharp/theme/tv/HD/images/round_rectangle_4X4_bottom.png b/ElmSharp/theme/tv/HD/images/round_rectangle_4X4_bottom.png Binary files differnew file mode 100755 index 0000000..50646a5 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/round_rectangle_4X4_bottom.png diff --git a/ElmSharp/theme/tv/HD/images/round_rectangle_4X4_top.png b/ElmSharp/theme/tv/HD/images/round_rectangle_4X4_top.png Binary files differnew file mode 100755 index 0000000..59d03cd --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/round_rectangle_4X4_top.png diff --git a/ElmSharp/theme/tv/HD/images/round_rectangle_8X8_top.png b/ElmSharp/theme/tv/HD/images/round_rectangle_8X8_top.png Binary files differnew file mode 100644 index 0000000..1403c54 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/round_rectangle_8X8_top.png diff --git a/ElmSharp/theme/tv/HD/images/scrollbar_horizontal.png b/ElmSharp/theme/tv/HD/images/scrollbar_horizontal.png Binary files differnew file mode 100755 index 0000000..b060a3d --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/scrollbar_horizontal.png diff --git a/ElmSharp/theme/tv/HD/images/scrollbar_mask_bottom.png b/ElmSharp/theme/tv/HD/images/scrollbar_mask_bottom.png Binary files differnew file mode 100755 index 0000000..7e28eda --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/scrollbar_mask_bottom.png diff --git a/ElmSharp/theme/tv/HD/images/scrollbar_mask_top.png b/ElmSharp/theme/tv/HD/images/scrollbar_mask_top.png Binary files differnew file mode 100755 index 0000000..d64edbc --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/scrollbar_mask_top.png diff --git a/ElmSharp/theme/tv/HD/images/scrollbar_vertical.png b/ElmSharp/theme/tv/HD/images/scrollbar_vertical.png Binary files differnew file mode 100755 index 0000000..447f940 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/scrollbar_vertical.png diff --git a/ElmSharp/theme/tv/HD/images/search_searchbar_bg_foc.png b/ElmSharp/theme/tv/HD/images/search_searchbar_bg_foc.png Binary files differnew file mode 100644 index 0000000..f065c44 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/search_searchbar_bg_foc.png diff --git a/ElmSharp/theme/tv/HD/images/search_searchbar_bg_nor.png b/ElmSharp/theme/tv/HD/images/search_searchbar_bg_nor.png Binary files differnew file mode 100644 index 0000000..34add3a --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/search_searchbar_bg_nor.png diff --git a/ElmSharp/theme/tv/HD/images/search_searchbar_small_bg_foc.png b/ElmSharp/theme/tv/HD/images/search_searchbar_small_bg_foc.png Binary files differnew file mode 100644 index 0000000..8c1c0c9 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/search_searchbar_small_bg_foc.png diff --git a/ElmSharp/theme/tv/HD/images/search_searchbar_small_bg_nor.png b/ElmSharp/theme/tv/HD/images/search_searchbar_small_bg_nor.png Binary files differnew file mode 100644 index 0000000..eb23c86 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/search_searchbar_small_bg_nor.png diff --git a/ElmSharp/theme/tv/HD/images/slider_thumb_fill.png b/ElmSharp/theme/tv/HD/images/slider_thumb_fill.png Binary files differnew file mode 100755 index 0000000..de2d559 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/slider_thumb_fill.png diff --git a/ElmSharp/theme/tv/HD/images/slider_thumb_stroke.png b/ElmSharp/theme/tv/HD/images/slider_thumb_stroke.png Binary files differnew file mode 100755 index 0000000..aa52dca --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/slider_thumb_stroke.png diff --git a/ElmSharp/theme/tv/HD/images/spincontrol_arrow_down.png b/ElmSharp/theme/tv/HD/images/spincontrol_arrow_down.png Binary files differnew file mode 100755 index 0000000..4d9d762 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/spincontrol_arrow_down.png diff --git a/ElmSharp/theme/tv/HD/images/spincontrol_arrow_up.png b/ElmSharp/theme/tv/HD/images/spincontrol_arrow_up.png Binary files differnew file mode 100755 index 0000000..3daf5e4 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/spincontrol_arrow_up.png diff --git a/ElmSharp/theme/tv/HD/images/tooltip-edge-bottom-tip.png b/ElmSharp/theme/tv/HD/images/tooltip-edge-bottom-tip.png Binary files differnew file mode 100755 index 0000000..2dd617c --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/tooltip-edge-bottom-tip.png diff --git a/ElmSharp/theme/tv/HD/images/tooltip-edge-top-tip.png b/ElmSharp/theme/tv/HD/images/tooltip-edge-top-tip.png Binary files differnew file mode 100755 index 0000000..661a255 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/tooltip-edge-top-tip.png diff --git a/ElmSharp/theme/tv/HD/images/tooltip_arrow.png b/ElmSharp/theme/tv/HD/images/tooltip_arrow.png Binary files differnew file mode 100755 index 0000000..2dd617c --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/tooltip_arrow.png diff --git a/ElmSharp/theme/tv/HD/images/tooltip_arrow_up.png b/ElmSharp/theme/tv/HD/images/tooltip_arrow_up.png Binary files differnew file mode 100755 index 0000000..661a255 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/tooltip_arrow_up.png diff --git a/ElmSharp/theme/tv/HD/images/tooltip_bg.png b/ElmSharp/theme/tv/HD/images/tooltip_bg.png Binary files differnew file mode 100755 index 0000000..6f5ba64 --- /dev/null +++ b/ElmSharp/theme/tv/HD/images/tooltip_bg.png diff --git a/ElmSharp/theme/tv/common.edc b/ElmSharp/theme/tv/common.edc new file mode 100644 index 0000000..83d1466 --- /dev/null +++ b/ElmSharp/theme/tv/common.edc @@ -0,0 +1,44 @@ +/***************** efl-theme-tizen-tv ************************* + * Example of use of color code:- + * + * color: [color_name] [alpha] ; + * + * +/****************** Color-Codes *******************************/ + +#define BLACK 0 0 0 +#define RED 255 0 0 +#define GREEN 0 255 0 +#define BLUE 0 0 255 +#define WHITE 255 255 255 +#define YELLOW 255 255 0 +#define GRAY 105 105 105 +#define AQUA 0 255 255 +#define MAGENTA 255 0 255 +#define SILVER 192 192 192 +#define MAROON 128 0 0 +#define OLIVE 128 128 0 +#define PURPLE 128 0 128 +#define TEAL 0 128 128 +#define NAVY 0 0 128 +#define PINK 255 192 203 +#define PLUM 221 160 221 +#define VOILET 238 130 238 +#define BROWN 165 42 42 +#define ORANGE 255 165 0 +#define GOLD 218 165 32 +#define LIME 50 205 50 + +//#define FONT_NAME "FONT_FILE_NAME.ttf" + +#define FONT_M "SVD_Medium" +#define FONT_L "SVD_Light" +#define FONT_S "SCD_Script" +#define FONT_R "XXXX" + +#define PART_RECT(COLOR) \ + part { type: RECT; \ + description { state: "default" 0.0; \ + color: COLOR; \ + } \ + } diff --git a/ElmSharp/theme/tv/elm-sharp-theme-tv.edc b/ElmSharp/theme/tv/elm-sharp-theme-tv.edc index 8233fbe..820f2c7 100644 --- a/ElmSharp/theme/tv/elm-sharp-theme-tv.edc +++ b/ElmSharp/theme/tv/elm-sharp-theme-tv.edc @@ -49,12 +49,32 @@ externals { data.item: "version" "110"; // +#include "common.edc" +#include "macros.edc" + +ADD_COLOR_CLASS + collections { base_scale: BASE_SCALE_INC; #include "color_classes.edc" - +#include "widgets/scroller.edc" +#include "widgets/button.edc" +#include "widgets/check.edc" +#include "widgets/ctxpopup.edc" +#include "widgets/datetime.edc" +#include "widgets/spinner.edc" +#include "widgets/entry.edc" +#include "widgets/gengrid.edc" +#include "widgets/genlist_common.edc" +#include "widgets/genlist.edc" +#include "widgets/hover.edc" +#include "widgets/hoversel.edc" #include "widgets/layout.edc" - +#include "widgets/list.edc" +#include "widgets/popup.edc" +#include "widgets/progressbar.edc" +#include "widgets/radio.edc" +#include "widgets/slider.edc" +#include "widgets/tooltip.edc" } - diff --git a/ElmSharp/theme/tv/macros.edc b/ElmSharp/theme/tv/macros.edc new file mode 100644 index 0000000..d2678b1 --- /dev/null +++ b/ElmSharp/theme/tv/macros.edc @@ -0,0 +1,35 @@ +#define ASPECT_FILL(_ASPECT) \ + aspect: _ASPECT _ASPECT; aspect_preference: NONE; +#define TILED_PATTERN(_WIDTH, _HEIGHT) \ + fill { size { relative: 0.0 0.0; offset: _WIDTH _HEIGHT; } } +#define TILED_HORIZ(_WIDTH) \ + fill { size { relative: 0.0 1.0; offset: _WIDTH 0; } } +#define FIXED_SIZE(_WIDTH, _HEIGHT) \ + min: _WIDTH _HEIGHT; max: _WIDTH _HEIGHT; fixed: 1 1; + +#define ADD_COLOR_CLASS color_classes { \ + color_class { \ + name: "open_ux_theme"; \ + color: 69 143 255 255; \ + color2: 69 143 255 255; \ + color3: 69 143 255 255; \ + } \ + color_class { \ + name: "open_ux_theme_alpha"; \ + color: 69 143 255 102; \ + color2: 69 143 255 102; \ + color3: 69 143 255 102; \ + } \ + color_class { \ + name: "open_ux_theme_alpha20"; \ + color: 69 143 255 50; \ + color2: 69 143 255 51; \ + color3: 69 143 255 51; \ + } \ + color_class { \ + name: "open_ux_theme_white"; \ + color: 255 255 255 255; \ + color2: 255 255 255 255; \ + color3: 255 255 255 255; \ + } \ + } diff --git a/ElmSharp/theme/tv/widgets/button.edc b/ElmSharp/theme/tv/widgets/button.edc new file mode 100644 index 0000000..d8387ea --- /dev/null +++ b/ElmSharp/theme/tv/widgets/button.edc @@ -0,0 +1,1593 @@ +/* + * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved + * + * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#define BUTTON_DEFAULT_PAD_SIZE 20 70 +#define BUTTON_DEFAULT_MIN_SIZE 196 70 +#define BUTTON_DEFAULT_FONT_SIZE 28 +#define BUTTON_TEXT_PAD_SIZE 20 45 +#define BUTTON_TEXT_MIN_SIZE 147 45 +#define BUTTON_TEXT_FONT_SIZE 20 +#define BUTTON_BORDER 4 4 4 4 + +/********************************************************************************* +Document: Tizen TV_General Guide_GUI Guideline_v1.0_140430.ppt +Button +Page No.: 72, Style Name: default +*********************************************************************************/ +group { name: "elm/button/base/default"; + images { + image: "round_rectangle_4X4.png" COMP; + } + data.item: "focus_highlight" "on"; + parts { + part { name: "base"; type: RECT; + scale: 1; + description { state: "default" 0.0; + color: 0 0 0 0; + } + } + part { name: "pad.left"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + align: 0.0 0.5; + rel1.to: "base"; + min: BUTTON_DEFAULT_PAD_SIZE; + max: BUTTON_DEFAULT_PAD_SIZE; + } + } + part { name: "pad.right"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + align: 1.0 0.5; + rel2.to: "base"; + min: BUTTON_DEFAULT_PAD_SIZE; + max: BUTTON_DEFAULT_PAD_SIZE; + } + } + part { name: "button_base"; + scale: 1; + description { state: "default" 0.0; + rel1.to: "base"; + rel2.to: "base"; + min: BUTTON_DEFAULT_MIN_SIZE; + color: 204 204 204 255; + image { + normal: "round_rectangle_4X4.png"; + border: BUTTON_BORDER; + border_scale: 1; + } + } + description { state: "focus" 0.0; + inherit: "default" 0.0; + color_class: "open_ux_theme"; + } + description { state: "dim" 0.0; + inherit: "default" 0.0; + color_class: "open_ux_theme_alpha"; + } + } + part { name: "elm.swallow.content"; type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + align: 0 0.5; + rel1.to: "pad.left"; + rel1.relative: 1 0; + rel2.to: "pad.left"; + rel2.relative: 1 1; + align: 0.0 0.5; + min: 0 0; + max: 37 37; + } + } + part { name: "elm.text"; type: TEXT; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1.to_x: "pad.left"; + rel1.relative: 1.0 0.0; + rel2.to_x: "pad.right"; + rel2.relative: 0.0 1.0; + color: 89 89 89 255; + text { + font: FONT_M;//TODO Tizen Sans regular + size: BUTTON_DEFAULT_FONT_SIZE; + min: 1 1; + max: 1 1; + ellipsis: -1; + text_class: "button"; + } + } + description { state: "focus" 0.0; + inherit: "default" 0.0; + color: WHITE 255; + text.min: 1 1; + } + description { state: "dim" 0.0; + inherit: "default" 0.0; + color: 89 89 89 102; + } + } + part { name: "event"; type: RECT; + description { state: "default" 0.0; + color: 0 0 0 0; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + } + programs { + program { name: "button_click"; + signal: "mouse,down,1"; source: "event"; + action: SIGNAL_EMIT "elm,action,press" ""; + } + program { name: "button_unclick"; + signal: "mouse,up,1"; source: "event"; + action: SIGNAL_EMIT "elm,action,unpress" ""; + } + program { name: "button_unclick_anim"; + action: STATE_SET "default" 0.0; + target: "button_base"; + target: "elm.text"; + } + program{ name: "mouse_unclick_after"; + signal: "mouse,clicked,1"; source: "event"; + action: SIGNAL_EMIT "elm,action,click" ""; + } + program { name: "key_press"; + signal: "elm,action,pressed"; source: "elm"; + } + program { name: "key_unpress"; + signal: "elm,action,unpressed"; source: "elm"; + } + program { name: "focused"; + signal: "elm,action,focus"; source: "elm"; + action: STATE_SET "focus" 0.0; + target: "button_base"; + target: "elm.text"; + } + program { name: "unfocused"; + signal: "elm,action,unfocus"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "button_base"; + target: "elm.text"; + } + program { name: "text_show"; + signal: "elm,state,text,visible"; source: "elm"; + script { + new st[31]; + new Float: vl; + get_state(PART:"elm.text", st, 30, vl); + if (!strcmp(st, "disabled") || (!strcmp(st, "disabled_visible"))) + set_state(PART:"elm.text", "disabled_visible", 0.0); + else + set_state(PART:"elm.text", "visible", 0.0); + } + } + program { name: "text_hide"; + signal: "elm,state,text,hidden"; source: "elm"; + script { + new st[31]; + new Float: vl; + set_state(PART:"elm.text", "default", 0.0); + get_state(PART:"elm.text", st, 30, vl); + if (!strcmp(st, "default") || (!strcmp(st, "visible"))) + set_state(PART:"elm.text", "default", 0.0); + else + set_state(PART:"elm.text", "disabled", 0.0); + } + } + program { name: "disable"; + signal: "elm,state,disabled"; source: "elm"; + script { + new st[31]; + new Float: vl; + set_state(PART:"button_base", "dim", 0.0); + set_state(PART:"event", "disabled", 0.0); + get_state(PART:"elm.text", st, 30, vl); + if (!strcmp(st, "visible") || !strcmp(st, "disabled_visible")) + set_state(PART:"elm.text", "disabled_visible", 0.0); + else + set_state(PART:"elm.text", "disabled", 0.0); + } + } + program { name: "enable"; + signal: "elm,state,enabled"; source: "elm"; + script { + new st[31]; + new Float: vl; + set_state(PART:"button_base", "visible", 0.0); + set_state(PART:"event", "visible", 0.0); + get_state(PART:"elm.text", st, 30, vl); + if (!strcmp(st, "visible") || !strcmp(st, "disabled_visible")) + set_state(PART:"elm.text", "visible", 0.0); + else + set_state(PART:"elm.text", "default", 0.0); + } + } + } +} + +/********************************************************************************* +Document: Tizen TV_General Guide_GUI Guideline_v1.0_140508.ppt +Button +Page No.: 89, Style Name: text +*********************************************************************************/ +group { name: "elm/button/base/text"; + inherit: "elm/button/base/default"; + images { + image: "btn_text_foc.png" COMP; + image: "btn_text_nor.png" COMP; + } + parts { + part { name: "base"; type: RECT; + description { state: "default" 0.0; + color: 0 0 0 0; + } + } + part { name: "pad.left"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + align: 0.0 0.5; + rel1.to: "base"; + min: BUTTON_TEXT_PAD_SIZE; + max: BUTTON_TEXT_PAD_SIZE; + } + } + part { name: "pad.right"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + align: 1.0 0.5; + rel2.to: "base"; + min: BUTTON_TEXT_PAD_SIZE; + max: BUTTON_TEXT_PAD_SIZE; + } + } + part { name: "button_base"; + description { state: "default" 0.0; + rel1.to: "base"; + rel2.to: "base"; + min: BUTTON_TEXT_MIN_SIZE; + image { + normal: "btn_text_nor.png"; + border:BUTTON_BORDER; + border_scale: 1; + } + } + description { state: "focus" 0.0; + inherit: "default" 0.0; + image { + normal: "btn_text_foc.png"; + border: BUTTON_BORDER; + border_scale: 1; + } + } + description { state: "dim" 0.0; + inherit: "default" 0.0; + color: 255 255 255 51; + image { + normal: "btn_text_nor.png"; + border: BUTTON_BORDER; + border_scale: 1; + } + } + } + part { name: "elm.text"; type: TEXT; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1.to_x: "pad.left"; + rel1.relative: 1.0 0.0; + rel2.to_x: "pad.right"; + rel2.relative: 0.0 1.0; + color: 164 164 174 255; + text { + font: FONT_M;//TODO Tizen Sans regular + size: BUTTON_TEXT_FONT_SIZE; + min: 1 1; + max: 1 1; + text_class: "button"; + } + } + description { state: "focus" 0.0; + inherit: "default" 0.0; + color: WHITE 255; + text.min: 1 1; + } + description { state: "dim" 0.0; + inherit: "default" 0.0; + color: 164 167 174 102; + } + } + part { name: "event"; type: RECT; + description { state: "default" 0.0; + color: 0 0 0 0; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + } + programs { + program { name: "focused"; + signal: "elm,action,focus"; source: "elm"; + action: STATE_SET "focus" 0.0; + target: "button_base"; + target: "elm.text"; + } + program { name: "unfocused"; + signal: "elm,action,unfocus"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "button_base"; + target: "elm.text"; + } + } +} + +group { name: "elm/button/base/popup"; + inherit: "elm/button/base/default"; + parts { + part { name: "elm.text"; + description { state: "default" 0.0; + text.min: 0 0; + text.ellipsis: 0.0; + } + description { state: "focus" 0.0; + inherit: "default" 0.0; + color: WHITE 255; + } + description { state: "dim" 0.0; + inherit: "default" 0.0; + color: 89 89 89 102; + } + } + } +} + +///////////////////////// +// Vertical ///////////// +///////////////////////// +#define GLIDE_EASE_OUT(duration) CUBIC_BEZIER (duration) 0.25 0.46 0.45 1.0 + + group { name: "elm/button/base/spinner/increase/vertical"; + alias: "elm/button/base/spinner/increase/vertical_time_picker"; + alias: "elm/button/base/spinner/increase/vertical_date_picker"; + alias: "elm/button/base/spinner/increase/datetime"; + data.item: "focus_highlight" "on"; + data.item: "vector_ux" "no_bg"; + data.item: "corner_radius" "10"; + images { + image: "core_icon_picker_arrow_up.png" COMP; + } + script { + public mouse_down = 0; + public multi_down = 0; + public disabled = 0; + public animate = 0; + } + parts { + part { name: "arrow.image.bg"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + align: 0.5 0.0; + min: 146 80; + max: 146 80; + } + } + part { name: "effect_spacer"; + type: SPACER; + description { state: "default" 0.0; + rel1.to: "arrow.image.bg"; + rel2.to: "arrow.image.bg"; + } + } + //Effect Shape Part + part { name: "tizen_vg_shape"; + type: SWALLOW; + clip_to: "tizen_vg_shape_clipper"; + scale: 1; + description { state: "default" 0.0; + fixed: 1 1; + rel1.to: "effect_spacer"; + rel2.to: "effect_spacer"; + rel1.relative: 0.5 0.5; + rel2.relative: 0.5 0.5; + } + description { state: "ready" 0.0; + inherit: "default" 0.0; + min: 112 34; + } + description { state: "pressed" 0.0; + inherit: "default" 0.0; + rel1.relative: 0.0 0.0; + rel2.relative: 1.0 1.0; + } + } + part { name: "tizen_vg_shape_clipper"; + type: RECT; + description { state: "default" 0.0; + color: 0 0 0 0; + visible: 0; + fixed: 1 1; + rel1.to: "tizen_vg_shape"; + rel2.to: "tizen_vg_shape"; + } + description { state: "ready" 0.0; + inherit: "default" 0.0; + visible: 1; + } + description { state: "pressed" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 0 0 0 77; + } + description { state: "disabled" 0.0; + color: 0 0 0 77; + fixed: 1 1; + rel1.to: "tizen_vg_shape"; + rel2.to: "tizen_vg_shape"; + } + } + part { name: "arrow.image"; + scale: 1; + description { state: "default" 0.0; + rel1.to: "arrow.image.bg"; + rel2.to: "arrow.image.bg"; + min: 146 80; + max: 146 80; + color: 204 204 204 255; + image.normal: "core_icon_picker_arrow_up.png"; + } + description { state: "pressed" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 204 204 204 127; + } + } + part { name: "focus_image"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + align: 0.5 0.0; + rel1.to: "arrow.image.bg"; + rel2.to: "arrow.image.bg"; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + } + } + part { name: "event"; + type: RECT; + repeat_events: 1; + description { state: "default" 0.0; + rel1.to: "arrow.image.bg"; + rel2.to: "arrow.image.bg"; + color: 0 0 0 0; + } + } + } + programs { + program { name: "pressed_effect"; + action: STATE_SET "ready" 0.0; + target: "tizen_vg_shape_clipper"; + target: "tizen_vg_shape"; + after: "pressed_effect2"; + } + program { name: "pressed_effect2"; + action: STATE_SET "pressed" 0.0; + target: "tizen_vg_shape_clipper"; + target: "tizen_vg_shape"; + target: "arrow.image"; + transition: GLIDE_EASE_OUT(0.15); + after: "pressed_effect3"; + } + program { name: "pressed_effect3"; + script { + set_int(animate, 0); + } + } + program { name: "delay_unpressed_effect"; + in: 0.1 0.0; + after: "unpressed_effect"; + } + program { name: "unpressed_effect"; + script { + if (get_int(disabled) == 0) { + run_program(PROGRAM:"unpressed_effect2"); + run_program(PROGRAM:"unpressed_effect3"); + } else { + run_program(PROGRAM:"disabled_effect"); + run_program(PROGRAM:"disabled_effect2"); + } + } + } + program { name: "unpressed_effect2"; + action: STATE_SET "default" 0.0; + target: "arrow.image"; + transition: GLIDE_EASE_OUT(0.45); + } + program { name: "unpressed_effect3"; + action: STATE_SET "ready" 0.0; + target: "tizen_vg_shape_clipper"; + transition: GLIDE_EASE_OUT(0.45); + after: "finished_animation"; + } + program { name: "disabled_effect"; + action: STATE_SET "disabled" 0.0; + target: "arrow.image"; + transition: GLIDE_EASE_OUT(0.45); + } + program { name: "disabled_effect2"; + action: STATE_SET "ready" 0.0; + target: "tizen_vg_shape_clipper"; + transition: GLIDE_EASE_OUT(0.45); + after: "finished_animation"; + } + program { name: "finished_animation"; + action: STATE_SET "default" 0.0; + target: "tizen_vg_shape_clipper"; + target: "tizen_vg_shape"; + } + program { name: "pressed"; + signal: "mouse,down,1*"; + source: "event"; + script { + if ((get_int(multi_down) == 0) && (get_int(mouse_down) == 0) && (get_int(disabled) == 0)) { + stop_program(PROGRAM:"delay_unpressed_effect"); + set_int(mouse_down, 1); + set_int(animate, 1); + emit("elm,action,press", ""); + run_program(PROGRAM:"pressed_effect"); + } + } + } + program { name: "unpressed"; + signal: "mouse,up,1"; + source: "event"; + script { + if (get_int(mouse_down) == 1) { + set_int(mouse_down, 0); + if (get_int(disabled) == 0) { + if (get_int(animate) == 0) { + run_program(PROGRAM:"unpressed_effect"); + } else { + set_state(PART:"tizen_vg_shape", "pressed", 0.0); + set_state(PART:"tizen_vg_shape_clipper", "pressed", 0.0); + set_state(PART:"arrow.image", "pressed", 0.0); + set_int(animate, 0); + run_program(PROGRAM:"delay_unpressed_effect"); + } + emit("elm,action,unpress", ""); + } + } + } + } + program { name: "button_click"; + signal: "mouse,clicked,1"; + source: "event"; + script { + if ((get_int(multi_down) == 0) && (get_int(disabled) == 0)) { + run_program(PROGRAM:"play_sound"); + run_program(PROGRAM:"button_click2"); + } + } + } + program { name: "play_sound"; + action: RUN_PLUGIN "touch_sound"; + } + program { name: "longpress_sound"; + signal: "elm,action,longpress"; + source: "elm"; + action: RUN_PLUGIN "touch_haptic"; + } + program { name: "button_click2"; + in: 0.001 0.0; + action: SIGNAL_EMIT "elm,action,click" ""; + } + program { name: "action_focus"; + signal: "elm,action,focus_highlight,show"; + source: "elm"; + action: STATE_SET "focused" 0.0; + target: "focus_image"; + } + program { name: "action_unfocus"; + signal: "elm,action,focus_highlight,hide"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "focus_image"; + } + program { name: "access_pressed"; + signal: "elm,action,anim,activate"; + source: "elm"; + after: "pressed_effect"; + } + program { name: "disable"; + signal: "elm,state,disabled"; + source: "elm"; + script { + set_int(disabled, 1); + if (get_int(animate) == 1) return; + set_state(PART:"arrow.image", "disabled", 0.0); + } + } + program { name: "enable"; + signal: "elm,state,enabled"; + source: "elm"; + script { + set_int(disabled, 0); + set_state(PART:"arrow.image", "default", 0.0); + } + } + program { + name: "multi_down"; + signal: "elm,action,multi,down"; + source: "elm"; + script { + set_int(multi_down, 1); + } + } + program { + name: "multi_up"; + signal: "elm,action,multi,up"; + source: "elm"; + script { + set_int(multi_down, 0); + } + } + program { name: "pass_event_enable"; + signal: "elm,event,pass,enabled"; + source: "elm"; + script { + set_mouse_events(PART:"event", 0); + } + } + program { name: "pass_event_disable"; + signal: "elm,event,pass,disabled"; + source:"elm"; + script { + set_mouse_events(PART:"event", 1); + } + } + program { name: "repeat_event_enable"; + signal: "elm,event,repeat,enabled"; + source: "elm"; + script { + set_repeat_events(PART:"event", 1); + } + } + program { name: "repeat_event_disable"; + signal: "elm,event,repeat,disabled"; + source:"elm"; + script { + set_repeat_events(PART:"event", 0); + } + } + } + } + + group { name: "elm/button/base/spinner/decrease/vertical"; + inherit: "elm/button/base/spinner/increase/vertical"; + alias: "elm/button/base/spinner/decrease/vertical_time_picker"; + alias: "elm/button/base/spinner/decrease/vertical_date_picker"; + alias: "elm/button/base/spinner/decrease/datetime"; + images { + image: "core_icon_picker_arrow_down.png" COMP; + } + parts { + part { name: "arrow.image"; + scale: 1; + description { state: "default" 0.0; + rel1.to: "arrow.image.bg"; + rel2.to: "arrow.image.bg"; + min: 146 80; + max: 146 80; + color: 204 204 204 255; + image.normal: "core_icon_picker_arrow_down.png"; + } + description { state: "pressed" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 204 204 204 127; + } + } + } + } + + group { name: "elm/button/base/spinner/vertical"; + alias: "elm/button/base/spinner/vertical_time_picker"; + alias: "elm/button/base/spinner/datetime"; + data.item: "focus_highlight" "on"; + script { + public mouse_down = 0; + public multi_down = 0; + } + parts { + part { name: "bg"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 146 188; + } + } + part { name: "elm.text"; + type: TEXT; + scale: 1; + description { state: "default" 0.0; + min: 0 146; + max: -1 146; + fixed: 1 1; + color: 0 0 0 255; + rel1.to: "bg"; + rel2.to: "bg"; + text { + font: "Tizen:style=Light"; + size: 106; + text_class: "tizen"; + ellipsis: -1.0; + } + } + description { state: "pressed" 0.0; + inherit: "default" 0.0 ; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0 ; + } + } + part { name: "focus_image"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + rel1.to: "bg"; + rel2.to: "bg"; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + } + } + part { name: "over"; + type: RECT; + repeat_events: 1; + description { state: "default" 0.0; + color: 0 0 0 0; + } + } + 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_press"; + signal: "mouse,down,1*"; + source: "over"; + script { + if ((get_int(multi_down) == 0) && + (get_int(mouse_down) == 0)) { + set_int(mouse_down, 1); + run_program(PROGRAM:"button_press2"); + } + } + } + program { name: "button_press2"; + action: SIGNAL_EMIT "elm,action,press" ""; + after: "action_pressed"; + } + program { name: "button_unpress"; + signal: "mouse,up,1*"; + source: "over"; + script { + if (get_int(mouse_down) == 1) { + set_int(mouse_down, 0); + run_program(PROGRAM:"button_unpress2"); + } + } + } + program { name: "button_unpress2"; + action: SIGNAL_EMIT "elm,action,unpress" ""; + after: "action_unpressed"; + } + program { name: "button_click"; + signal: "mouse,clicked,1"; + source: "over"; + script { + if (get_int(multi_down) == 0) { + run_program(PROGRAM:"play_sound"); + run_program(PROGRAM:"button_click2"); + } + } + } + program { name: "play_sound"; + action: RUN_PLUGIN "touch_sound"; + } + program { name: "button_click2"; + action: SIGNAL_EMIT "elm,action,click" ""; + } + program { name: "action_pressed"; + action: STATE_SET "pressed" 0.0; + target: "elm.text"; + } + program { name: "action_unpressed"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + } + program { name: "action_focus"; + signal: "elm,action,focus_highlight,show"; + source: "elm"; + action: STATE_SET "focused" 0.0; + target: "focus_image"; + } + program { name: "action_unfocus"; + signal: "elm,action,focus_highlight,hide"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "focus_image"; + } + program { name: "disable"; + signal: "elm,state,disabled"; + source: "elm"; + action: STATE_SET "disabled" 0.0; + target: "disabler"; + target: "elm.text"; + } + program { name: "enable"; + signal: "elm,state,enabled"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "disabler"; + target: "elm.text"; + } + program { + name: "multi_down"; + signal: "elm,action,multi,down"; + source: "elm"; + script { + set_int(multi_down, 1); + } + } + program { + name: "multi_up"; + signal: "elm,action,multi,up"; + source: "elm"; + script { + set_int(multi_down, 0); + } + } + program { name: "pass_event_enable"; + signal: "elm,event,pass,enabled"; + source: "elm"; + script { + set_mouse_events(PART:"over", 0); + set_mouse_events(PART:"disabler", 0); + } + } + program { name: "pass_event_disable"; + signal: "elm,event,pass,disabled"; + source:"elm"; + script { + set_mouse_events(PART:"over", 1); + set_mouse_events(PART:"disabler", 1); + } + } + program { name: "repeat_event_enable"; + signal: "elm,event,repeat,enabled"; + source: "elm"; + script { + set_repeat_events(PART:"over", 1); + set_repeat_events(PART:"disabler", 1); + } + } + program { name: "repeat_event_disable"; + signal: "elm,event,repeat,disabled"; + source:"elm"; + script { + set_repeat_events(PART:"over", 0); + set_repeat_events(PART:"disabler", 0); + } + } + } + } + +group { name: "elm/button/base/spinner/vertical_date_picker"; + inherit: "elm/button/base/spinner/vertical"; + parts { + part { name: "bg"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 206 188; + } + } + part { name: "elm.text"; + type: TEXT; + scale: 1; + description { state: "default" 0.0; + min: 0 146; + max: -1 146; + fixed: 1 1; + color: 0 0 0 255; + rel1.to: "bg"; + rel2.to: "bg"; + text { + font: "TizenSans:style=Light"; + size: 90; + ellipsis: 0.0; + } + } + description { state: "pressed" 0.0; + inherit: "default" 0.0; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + } + } + } +} + +// ************* button text ********** // +#define STYLE_TAGS \ + tag: "br" "\n";\ + tag: "ps" "ps";\ + tag: "tab" "\t";\ + tag: "b" "+ font_weight=Bold"; + +styles { + style { name: "button_ampm"; + base: "align=center color=#ffffffff font=Tizen:style=Light font_size=40 text_class=tizen"; + STYLE_TAGS + } + style { name: "button_ampm_dim"; + base: "align=center color=#ffffffff font=Tizen:style=Light font_size=40 text_class=tizen"; + STYLE_TAGS + } + style { name: "button_ampm_press"; + base: "align=center color=#ffffffff font=Tizen:style=Light font_size=40 text_class=tizen"; + STYLE_TAGS + } +} + + + group { name: "elm/button/base/datetime/default"; + data.item: "vector_ux" "default"; + data.item: "corner_radius" "39"; + script { + public mouse_down = 0; + public multi_down = 0; + public disabled = 0; + public text = 0; + public content = 0; + public animate = 0; + public selected = 0; + public minw = 0; + public minh = 0; + public get_effect_min_size(base_effect, Float:ratio, min_w, min_h) { + new x, y, w, h; + get_geometry(base_effect, x, y, w, h); + if (w > h) { + set_float(min_w, w - h * (1 - ratio)); + set_float(min_h, h * ratio); + } else { + set_float(min_w, w * ratio); + set_float(min_h, h - w * (1 - ratio)); + } + } + } + parts { + part { name: "base"; + scale: 1; + type: SPACER; + description { state: "default" 0.0; + min: 50 78; + } + } + //Base Shape Part + part { name: "tizen_vg_shape"; + type: SWALLOW; + clip_to: "tizen_vg_shape_clipper"; + scale: 1; + description { state: "default" 0.0; + min: 0 78; + rel1.relative: 0 0.0; + rel2.relative: 1 1.0; + } + } + part { name: "tizen_vg_shape_clipper"; + type: RECT; + scale: 1; + description { state: "default" 0.0; + color: 82 198 216 255; + } + description { state: "disabled" 0.0; + color: 138 195 204 255; + } + } + part { name: "effect_spacer"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + } + } + //Effect Shape Part + part { name: "tizen_vg_shape2"; + type: SWALLOW; + clip_to: "tizen_vg_shape_clipper2"; + scale: 1; + description { state: "default" 0.0; + fixed: 1 1; + rel1.relative: 0.5 0.5; + rel2.relative: 0.5 0.5; + } + description { state: "ready" 0.0; + rel1.to: "effect_spacer"; + rel2.to: "effect_spacer"; + } + description { state: "pressed" 0.0; + inherit: "ready" 0.0; + } + } + part { name: "tizen_vg_shape_clipper2"; + type: RECT; + description { state: "default" 0.0; + visible: 0; + color: 0 0 0 0; + } + description { state: "ready" 0.0; + inherit: "default" 0.0; + visible: 1; + } + description { state: "pressed" 0.0; + color: 0 0 0 77; + } + } + part { name: "padding_left_top"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + align: 0.0 0.0; + rel2.relative: 0.0 0.0; + min: 22 0; + fixed: 1 1; + } + } + part { name: "padding_right_bottom"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + rel1.to: "tizen_vg_shape"; + rel2.to: "tizen_vg_shape"; + align: 1.0 1.0; + rel1.relative: 1.0 1.0; + min: 22 4; + fixed: 1 1; + } + } + part { name: "icon_rect"; + type: SPACER; + scale: 1; + description { state: "default" 0.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"; + } + min: 0 60; + fixed: 1 1; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + min: 60 60; + max: 60 60; + fixed: 1 1; + } + description { state: "icon_only" 0.0; + inherit: "default" 0.0; + } + } + part { name: "icon_text_padding"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + align: 1.0 0.5; + min: 0 0; + rel1 { + relative: 0.0 0.0; + to: "elm.text"; + } + rel2 { + relative: 0.0 1.0; + to: "elm.text"; + } + fixed: 1 1; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + min: 14 0; + } + } + part { name: "elm.swallow.content"; + type: SWALLOW; + scale: 1; + clip_to: "clipper"; + description { state: "default" 0.0; + align: 0.0 1.0; + rel1 { + relative: 1.0 1.0; + to: "padding_left_top"; + } + rel2 { + relative: 1.0 1.0; + to_x: "padding_left_top"; + to_y: "padding_right_bottom"; + } + min: 0 60; + fixed: 1 0; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + align: 1.0 0.5; + rel1 { + relative: 0.0 1.0; + to_x: "icon_text_padding"; + to_y: "padding_left_top"; + } + rel2 { + relative: 0.0 0.0; + to_x: "icon_text_padding"; + to_y: "padding_right_bottom"; + } + min: 60 60; + fixed: 1 1; + } + description { state: "icon_only" 0.0; + rel1.to: "tizen_vg_shape"; + rel2.to: "tizen_vg_shape"; + min: 60 60; + max: 60 60; + align: 0.5 0.5; + fixed: 1 1; + } + } + part { name: "elm.text"; + type: TEXTBLOCK; + mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + fixed: 1 1; + rel1 { + relative: 1.0 1.0; + to_x: "icon_rect"; + to_y: "padding_left_top"; + } + rel2 { + relative: 0.0 0.0; + to: "padding_right_bottom"; + } + text { + style: "button_main"; + max: 1 0; + } + color: 250 250 250 255; + } + description { state: "pressed" 0.0; + inherit: "default" 0.0; + text.style: "button_main_press"; + color: 250 250 250 255; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + text.style: "button_main_dim"; + color: 250 250 250 163; + } + } + part { name: "clipper"; + type: RECT; + description { state: "default" 0.0; + } + description { state: "pressed" 0.0; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 255 255 255 163; + } + } + part { name: "event"; + type: RECT; + description { state: "default" 0.0; + rel1.to: "tizen_vg_shape"; + rel2.to: "tizen_vg_shape"; + color: 0 0 0 0; + } + } + } + programs { + program { name: "pressed_effect"; + action: STATE_SET "ready" 0.0; + target: "tizen_vg_shape_clipper2"; + action: STATE_SET "custom" 0.0; + target: "tizen_vg_shape2"; + after: "pressed_effect2"; + } + program { name: "pressed_effect2"; + action: STATE_SET "pressed" 0.0; + target: "elm.text"; + target: "clipper"; + target: "tizen_vg_shape2"; + target: "tizen_vg_shape_clipper2"; + transition: GLIDE_EASE_OUT(0.15); + after: "pressed_effect3"; + } + program { name: "pressed_effect3"; + script { + set_int(animate, 0); + } + } + program { name: "delay_unpressed_effect"; + in: 0.1 0.0; + after: "unpressed_effect"; + } + program { name: "unpressed_effect"; + script { + if (get_int(disabled) == 0) { + run_program(PROGRAM:"unpressed_effect2"); + run_program(PROGRAM:"unpressed_effect3"); + } else { + run_program(PROGRAM:"disabled_effect"); + run_program(PROGRAM:"disabled_effect2"); + run_program(PROGRAM:"disabled_effect3"); + } + } + } + program { name: "unpressed_effect2"; + action: STATE_SET "ready" 0.0; + target: "tizen_vg_shape2"; + target: "tizen_vg_shape_clipper2"; + transition: GLIDE_EASE_OUT(0.45); + } + program { name: "unpressed_effect3"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + transition: GLIDE_EASE_OUT(0.45); + after: "unpressed_effect4"; + } + program { name: "unpressed_effect4"; + action: STATE_SET "default" 0.0; + target: "clipper"; + after: "finished_animation"; + } + program { name: "disabled_effect"; + action: STATE_SET "ready" 0.0; + target: "tizen_vg_shape2"; + target: "tizen_vg_shape_clipper2"; + transition: GLIDE_EASE_OUT(0.45); + } + program { name: "disabled_effect2"; + action: STATE_SET "disabled" 0.0; + target: "elm.text"; + transition: GLIDE_EASE_OUT(0.45); + } + program { name: "disabled_effect3"; + action: STATE_SET "disabled" 0.0; + target: "clipper"; + target: "tizen_vg_shape_clipper"; + transition: GLIDE_EASE_OUT(0.45); + after: "finished_animation"; + } + program { name: "finished_animation"; + action: STATE_SET "default" 0.0; + target: "tizen_vg_shape2"; + target: "tizen_vg_shape_clipper2"; + } + program { name: "pressed"; + signal: "mouse,down,1*"; + source: "event"; + script { + if ((get_int(multi_down) == 0) && (get_int(mouse_down) == 0) && (get_int(disabled) == 0)) { + stop_program(PROGRAM:"delay_unpressed_effect"); + set_int(mouse_down, 1); + set_int(animate, 1); + custom_state(PART:"tizen_vg_shape2", "default", 0.0); + get_effect_min_size(PART:"effect_spacer", 0.7, minw, minh); + set_state_val(PART:"tizen_vg_shape2", STATE_MIN, get_int(minw), get_int(minh)); + emit("elm,action,press", ""); + run_program(PROGRAM:"pressed_effect"); + } + } + } + program { name: "unpressed"; + signal: "mouse,up,1"; + source: "event"; + script { + if (get_int(mouse_down) == 1) { + set_int(mouse_down, 0); + if (get_int(disabled) == 0) { + if (get_int(animate) == 0) { + run_program(PROGRAM:"unpressed_effect"); + } else { + set_state(PART:"elm.text", "pressed", 0.0); + set_state(PART:"clipper", "pressed", 0.0); + set_state(PART:"tizen_vg_shape2", "pressed", 0.0); + set_state(PART:"tizen_vg_shape_clipper2", "pressed", 0.0); + set_int(animate, 0); + run_program(PROGRAM:"delay_unpressed_effect"); + } + emit("elm,action,unpress", ""); + } + } + } + } + program { name: "touch_snd"; + signal: "mouse,clicked,1"; + source: "event"; + script { + if (get_int(multi_down) == 0) { + if (get_int(disabled) == 0) { + run_program(PROGRAM:"touch_sound"); + run_program(PROGRAM:"clicked_signal"); + } + } + } + } + program { name: "touch_sound"; + action: RUN_PLUGIN "touch_sound"; + } + program { name: "clicked_signal"; + in: 0.001 0.0; + action: SIGNAL_EMIT "elm,action,click" ""; + } + program { name: "icon_show"; + signal: "elm,state,icon,visible"; + source: "elm"; + script { + set_int(content, 1); + set_state(PART:"icon_text_padding", "visible", 0.0); + if (get_int(text) == 1) { + set_state(PART:"icon_rect", "visible", 0.0); + set_state(PART:"elm.swallow.content", "visible", 0.0); + } else { + set_state(PART:"icon_rect", "icon_only", 0.0); + set_state(PART:"elm.swallow.content", "icon_only", 0.0); + set_state(PART:"padding_left_top", "icon_only", 0.0); + } + } + } + program { name: "icon_hide"; + signal: "elm,state,icon,hidden"; + source: "elm"; + script { + set_int(content, 0); + set_state(PART:"icon_text_padding", "default", 0.0); + set_state(PART:"icon_rect", "default", 0.0); + set_state(PART:"elm.swallow.content", "default", 0.0); + } + } + program { name: "text_show"; + signal: "elm,state,text,visible"; + source: "elm"; + script { + set_int(text, 1); + if (get_int(content) == 1) { + set_state(PART:"icon_rect", "visible", 0.0); + set_state(PART:"elm.swallow.content", "visible", 0.0); + } + } + } + program { name: "text_hide"; + signal: "elm,state,text,hidden"; + source: "elm"; + script { + set_int(text, 0); + if (get_int(content) == 1) { + set_state(PART:"icon_rect", "icon_only", 0.0); + set_state(PART:"elm.swallow.content", "icon_only", 0.0); + } + } + } + program { name: "disable"; + signal: "elm,state,disabled"; + source: "elm"; + script { + set_int(disabled, 1); + if (get_int(animate) == 1) return; + set_state(PART:"clipper", "disabled", 0.0); + set_state(PART:"tizen_vg_shape_clipper", "disabled", 0.0); + set_state(PART:"elm.text", "disabled", 0.0); + } + } + program { name: "enable"; + signal: "elm,state,enabled"; + source: "elm"; + script { + set_int(disabled, 0); + set_state(PART:"clipper", "default", 0.0); + set_state(PART:"tizen_vg_shape_clipper", "default", 0.0); + set_state(PART:"elm.text", "default", 0.0); + } + } + program { name: "multi_down"; + signal: "elm,action,multi,down"; + source: "elm"; + script { + set_int(multi_down, 1); + } + } + program { name: "multi_up"; + signal: "elm,action,multi,up"; + source: "elm"; + script { + set_int(multi_down, 0); + } + } + program { name: "pass_event_enable"; + signal: "elm,event,pass,enabled"; + source: "elm"; + script { + set_mouse_events(PART:"event", 0); + } + } + program { name: "pass_event_disable"; + signal: "elm,event,pass,disabled"; + source:"elm"; + script { + set_mouse_events(PART:"event", 1); + } + } + program { name: "repeat_event_enable"; + signal: "elm,event,repeat,enabled"; + source: "elm"; + script { + set_repeat_events(PART:"event", 1); + } + } + program { name: "repeat_event_disable"; + signal: "elm,event,repeat,disabled"; + source:"elm"; + script { + set_repeat_events(PART:"event", 0); + } + } + } + } + + group { name: "elm/button/base/datetime/ampm"; + inherit: "elm/button/base/datetime/default"; + parts { + part { name: "base"; + description { state: "default" 0.0; + min: 160 78; + } + } + part { name: "tizen_vg_shape"; + description { state: "default" 0.0; + min: 0 78; + } + } + part { name: "tizen_vg_shape_clipper"; + description { state: "unselected" 0.0; + color: 204 204 204 255; + } + } + part { name: "padding_left_top"; + description { state: "default" 0.0; + min: 32 10; + } + } + part { name: "padding_right_bottom"; + description { state: "default" 0.0; + min: 32 14; + } + } + part { name: "elm.text"; + description { state: "default" 0.0; + text.style: "button_ampm"; + color: 250 250 250 255; + } + description { state: "pressed" 0.0; + text.style: "button_ampm_press"; + color: 250 250 250 255; + } + description { state: "unselected" 0.0; + inherit: "default" 0.0; + text.style: "button_ampm_dim"; + color: 250 250 250 163; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + text.style: "button_ampm_dim"; + color: 250 250 250 163; + } + } + } + program { name: "unselected"; + signal: "elm,action,button,unselected"; + source: "elm"; + script { + set_int(selected, 0); + set_state(PART:"tizen_vg_shape_clipper", "unselected", 0.0); + set_state(PART:"elm.text", "unselected", 0.0); + if (get_int(animate) == 1) + run_program(PROGRAM:"pressed_effect3"); + } + } + program { name: "selected"; + signal: "elm,action,button,selected"; + source: "elm"; + script { + set_int(selected, 1); + set_state(PART:"tizen_vg_shape_clipper", "default", 0.0); + if (get_int(animate) == 0) + set_state(PART:"elm.text", "default", 0.0); + } + } + program { name: "unselected_effect"; + action: STATE_SET "unselected" 0.0; + target: "elm.text"; + transition: GLIDE_EASE_OUT(0.45); + after: "unpressed_effect4"; + } + program { name: "unpressed_effect"; + script { + if (get_int(disabled) == 0) { + run_program(PROGRAM:"unpressed_effect2"); + if (get_int(selected) == 0) + run_program(PROGRAM:"unselected_effect"); + else + run_program(PROGRAM:"unpressed_effect3"); + } else { + run_program(PROGRAM:"disabled_effect"); + run_program(PROGRAM:"disabled_effect2"); + run_program(PROGRAM:"disabled_effect3"); + } + } + } + } + +/***********************SPINNER BUTTONS STYLES******************************/ + +#undef BUTTON_DEFAULT_PAD_SIZE +#undef BUTTON_DEFAULT_MIN_SIZE +#undef BUTTON_DEFAULT_FONT_SIZE +#undef BUTTON_TEXT_PAD_SIZE +#undef BUTTON_TEXT_MIN_SIZE +#undef BUTTON_TEXT_FONT_SIZE +#undef BUTTON_BORDER diff --git a/ElmSharp/theme/tv/widgets/check.edc b/ElmSharp/theme/tv/widgets/check.edc new file mode 100644 index 0000000..3b30023 --- /dev/null +++ b/ElmSharp/theme/tv/widgets/check.edc @@ -0,0 +1,358 @@ +/* + * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved + * + * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************** +Document: Tizen TV_General Guide_GUI Guideline_v1.0_140508_1.ppt, Page no. 76, +*****************************************************************************/ +#define CHECK_SIZE 38 38 +#define CHECK_FONT_SIZE 28 + +group { name: "elm/check/base/default"; + images { + image: "checkbox_check_foc.png" COMP; + image: "checkbox_check_nor.png" COMP; + image: "checkbox_uncheck_nor.png" COMP; + image: "checkbox_uncheck_foc.png" COMP; + } + data.item: "focus_highlight" "on"; + script { + public is_focus=0; + public set_focus() { + set_int(is_focus, 1); + } + public unset_focus() { + set_int(is_focus, 0); + } + public set_check_set() { + if (get_int(is_focus)) { + set_state(PART:"check", "highlight", 0.0); + set_state(PART:"bg", "highlight", 0.0); + } + else { + set_state(PART:"check", "visible", 0.0); + set_state(PART:"bg", "default", 0.0); + } + } + public set_check_unset() { + set_state(PART:"check", "default", 0.0); + if (get_int(is_focus)) { + set_state(PART:"bg", "highlight", 0.0); + } + else { + set_state(PART:"bg", "default", 0.0); + } + } + } + parts { + part { name: "bg"; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel2.relative: 0.0 1.0; + align: 0.0 0.5; + min: CHECK_SIZE; + max: CHECK_SIZE; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + image.normal: "checkbox_uncheck_nor.png"; + } + description { state: "highlight" 0.0; + inherit: "default" 0.0; + image.normal: "checkbox_uncheck_foc.png"; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 255 255 255 51; + } + } + part { name: "check"; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1 { + to: "bg"; + } + rel2 { + to: "bg"; + } + image.normal: "checkbox_check_nor.png"; + visible: 0; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + } + description { state: "highlight" 0.0; + inherit: "default" 0.0; + image.normal: "checkbox_check_foc.png"; + visible: 1; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + visible: 0; + } + description { state: "disabled_visible" 0.0; + inherit: "default" 0.0; + color: 255 255 255 51; + visible: 1; + } + } + part { name: "elm.swallow.content"; type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + visible: 0; + align: 0.0 0.5; + fixed: 1 0; + rel1.to_x: "bg"; + rel1.relative: 1.0 0.0; + rel2.to_x: "bg"; + rel2.relative: 1.0 1.0; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + fixed: 1 0; + visible: 1; + aspect: 1.0 1.0; + min: CHECK_SIZE; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 255 255 255 128; + } + description { state: "disabled_visible" 0.0; + inherit: "default" 0.0; + color: 255 255 255 128; + fixed: 1 0; + visible: 1; + aspect: 1.0 1.0; + } + } + part { name: "elm.text"; type: TEXT; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + visible: 0; + rel1.to_x: "elm.swallow.content"; + rel1.relative: 1.0 0.0; + rel2.to: "pad.elm.text"; + rel2.relative: 0.0 1.0; + color: 0 0 0 255; + text { + font: FONT_L; + size: CHECK_FONT_SIZE; + min: 0 1; + align: -1.0 0.5; + } + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + text.min: 1 1; + text.ellipsis: -1; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 0 0 0 128; + color3: 0 0 0 0; + } + description { state: "disabled_visible" 0.0; + inherit: "default" 0.0; + color: 0 0 0 128; + color3: 0 0 0 0; + visible: 1; + text.min: 1 1; + text.ellipsis: -1; + } + } + part { name: "pad.elm.text"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 1 0; + max: 1 0; + fixed: 1 0; + rel1.relative: 1.0 1.0; + align: 1.0 0.5; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + min: 12 0; + max: 12 0; + } + } + part { name: "events"; type: RECT; + ignore_flags: ON_HOLD; + description { state: "default" 0.0; + color: 0 0 0 0; + } + } + 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: "click"; + signal: "mouse,clicked,1"; source: "events"; + action: SIGNAL_EMIT "elm,action,check,toggle" ""; + } + program { name: "check_on"; + signal: "elm,state,check,on"; source: "elm"; + script{ + set_check_set(); + } + } + program { name: "check_off"; + signal: "elm,state,check,off"; source: "elm"; + script{ + set_check_unset(); + } + } + program { name: "text_show"; + signal: "elm,state,text,visible"; source: "elm"; + action: STATE_SET "visible" 0.0; + target: "elm.text"; + target: "pad.elm.text"; + } + program { name: "text_hide"; + signal: "elm,state,text,hidden"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + } + program { name: "icon_show"; + signal: "elm,state,icon,visible"; source: "elm"; + action: STATE_SET "visible" 0.0; + target: "elm.swallow.content"; + } + program { name: "icon_hide"; + signal: "elm,state,icon,hidden"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.swallow.content"; + } + program { name: "focus"; + signal: "elm,action,focus"; source: "elm"; + script { + set_focus(); + } + after: "enable_focus"; + } + program { name: "enable_focus"; + script { + new st[31]; + new Float:vl; + get_state(PART:"check", st, 30, vl); + if (!strcmp(st, "visible")) + set_state(PART:"check", "highlight", 0.0); + + get_state(PART:"bg", st, 30, vl); + if (!strcmp(st, "default")) + set_state(PART:"bg", "highlight", 0.0); + } + } + program { name: "unfocus"; + signal: "elm,action,unfocus"; source: "elm"; + script { + unset_focus(); + } + after: "disable_focus"; + } + program { name: "disable_focus"; + script { + new st[31]; + new Float:vl; + get_state(PART:"check", st, 30, vl); + if (!strcmp(st, "highlight")) + set_state(PART:"check", "visible", 0.0); + + get_state(PART:"bg", st, 30, vl); + if (!strcmp(st, "highlight")) + set_state(PART:"bg", "default", 0.0); + } + } + program { name: "disable"; + signal: "elm,state,disabled"; source: "elm"; + action: STATE_SET "disabled" 0.0; + target: "bg"; + 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); + + get_state(PART:"elm.swallow.content", st, 30, vl); + if (!strcmp(st, "visible")) + set_state(PART:"elm.swallow.content", "disabled_visible", 0.0); + else + set_state(PART:"elm.swallow.content", "disabled", 0.0); + + get_state(PART:"check", st, 30, vl); + if (!strcmp(st, "visible")) + set_state(PART:"check", "disabled_visible", 0.0); + else + set_state(PART:"check", "disabled", 0.0); + } + } + program { name: "enable"; + signal: "elm,state,enabled"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "bg"; + 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); + + get_state(PART:"elm.swallow.content", st, 30, vl); + if (!strcmp(st, "visible")) + set_state(PART:"elm.swallow.content", "visible", 0.0); + else + set_state(PART:"elm.swallow.content", "default", 0.0); + + get_state(PART:"check", st, 30, vl); + if (!strcmp(st, "disabled_visible")) + set_state(PART:"check", "visible", 0.0); + else + set_state(PART:"check", "default", 0.0); + } + } + } +} diff --git a/ElmSharp/theme/tv/widgets/ctxpopup.edc b/ElmSharp/theme/tv/widgets/ctxpopup.edc new file mode 100644 index 0000000..f23d5e1 --- /dev/null +++ b/ElmSharp/theme/tv/widgets/ctxpopup.edc @@ -0,0 +1,625 @@ +/* + * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved + * + * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/************************************************************************************* +Tizen TV_General Guide_GUI Guideline_v1.0_140508.ppt page 90 style 1text +Tizen TV_General Guide_GUI Guideline_v1.0_140508.ppt page 91 style 1text.1icon +***************************************************************************************/ + +group { name: "elm/ctxpopup/bg/default"; + parts { + part { name: "ctxpopup_bg"; type: RECT; mouse_events: 1; + description { state: "default" 0.0; + color: 0 0 0 0; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + color: 0 0 0 64; + } + } + } + programs { + program { name: "clicked_event"; + signal: "mouse,clicked,1"; + source: "ctxpopup_bg"; + action: SIGNAL_EMIT "elm,action,click" ""; + } + program { name: "show"; + signal: "elm,state,show"; + source: "elm"; + action: STATE_SET "visible" 0.0; + target: "ctxpopup_bg"; + transition: LINEAR 0.25; + } + program { name: "hide"; + signal: "elm,state,hide"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "ctxpopup_bg"; + transition: LINEAR 0.25; + } + } +} + +group { name: "elm/ctxpopup/base/default"; + parts { + part { name: "base"; type: RECT; + clip_to: "clip"; + description { state: "default" 0.0; + color: 0 0 0 0; + } + } + part { name: "elm.swallow.content"; type: SWALLOW; + clip_to: "clip"; + description { state: "default" 0.0; + rel1 { to:"base"; offset: 8 6; } + rel2 { to:"base"; offset: -7 -8; } + } + } + part { name: "event"; type: RECT; + description { state: "default" 0.0; + color: 0 0 0 0; + visible: 1; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "clip"; type: RECT; + description { state: "default" 0.0; + color: 255 255 255 0; + visible: 0; + rel1.offset: -20 -20; + rel2.offset: 19 19; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + visible: 1; + } + } + + // 17x10 + part { name: "arrow_area_left"; type: SPACER; + description { state: "default" 0.0; + min: 17 10; + fixed: 1 0; + align: 1.0 0.5; + rel1.to: "base"; + rel1.offset: 2 5; + rel2.to: "base"; + rel2.offset: 2 -6; + rel2.relative: 0.0 1.0; + } + } + part { name: "elm.swallow.arrow_left"; type: SWALLOW; mouse_events: 0; + clip_to: "clip"; + dragable.x: 1 1 0; + dragable.y: 1 1 0; + dragable.confine: "arrow_area_left"; + description { state: "default" 0.0; + min: 9 13; + fixed: 1 1; + } + } + + part { name: "arrow_area_right"; type: SPACER; + description { state: "default" 0.0; + min: 17 10; + fixed: 1 0; + align: 0.0 0.5; + rel1.to: "base"; + rel1.offset: -3 5; + rel1.relative: 1.0 0.0; + rel2.to: "base"; + rel2.offset: -3 -6; + } + } + part { name: "elm.swallow.arrow_right"; type: SWALLOW; mouse_events: 0; + clip_to: "clip"; + dragable.x: 1 1 0; + dragable.y: 1 1 0; + dragable.confine: "arrow_area_right"; + description { state: "default" 0.0; + min: 9 13; + fixed: 1 1; + } + } + + // 10x17 + part { name: "arrow_area_up"; type: SPACER; + description { state: "default" 0.0; + min: 10 17; + fixed: 1 1; + align: 0.5 1; + rel1.to: "base"; + rel1.offset: 5 3; + rel2.to: "base"; + rel2.offset: -6 3; + rel2.relative: 1.0 0.0; + } + } + part { name: "elm.swallow.arrow_up"; type: SWALLOW; mouse_events: 0; + clip_to: "clip"; + dragable.x: 1 1 0; + dragable.y: 1 1 0; + dragable.confine: "arrow_area_up"; + description { state: "default" 0.0; + min: 11 9; + fixed: 1 1; + } + } + + part { name: "arrow_area_down"; type: SPACER; + description { state: "default" 0.0; + min: 10 17; + fixed: 1 1; + align: 0.5 0.0; + rel1.to: "base"; + rel1.offset: 5 -4; + rel1.relative: 0.0 1.0; + rel2.to: "base"; + rel2.offset: -6 -4; + } + } + part { name: "elm.swallow.arrow_down"; type: SWALLOW; mouse_events: 0; + clip_to: "clip"; + dragable.x: 1 1 0; + dragable.y: 1 1 0; + dragable.confine: "arrow_area_down"; + description { state: "default" 0.0; + min: 11 9; + fixed: 1 1; + } + } + } + programs { + program { + signal: "elm,state,show"; source: "elm"; + action: STATE_SET "visible" 0.0; + transition: LINEAR 0.2; + target: "clip"; + target: "event"; + } + program { + signal: "elm,state,hide"; source: "elm"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.3; + target: "clip"; + target: "event"; + after: "hide2"; + } + program { name: "hide2"; + action: SIGNAL_EMIT "elm,action,hide,finished" "elm"; + } + + } +} + +group { name: "elm/ctxpopup/arrow/default"; + images { + image: "popover_arrow.png" COMP; + } + parts { + part { name: "ctxpopup_arrow"; + type: IMAGE; + scale: 1; + description { + state: "default" 0.0; + min: 17 10; + fixed: 1 1; + visible: 0; + align: 0.5 0.5; + image.normal: "popover_arrow.png"; + } + description { state: "left" 0.0; + inherit: "default" 0.0; + align: 0.0 0.5; + map.on: 1; + map.smooth: 1; + map.rotation.z: 270; + } + description { state: "right" 0.0; + inherit: "default" 0.0; + align: 1.0 0.5; + map.on: 1; + map.smooth: 1; + map.rotation.z: 90; + } + description { state: "top" 0.0; + inherit: "default" 0.0; + visible: 1; + align: 0.5 0.0; + } + description { state: "bottom" 0.0; + inherit: "default" 0.0; + align: 0.5 1.0; + map.on: 1; + map.smooth: 1; + map.rotation.z: 180; + } + } + } + programs { + program { name: "enable_left_arrow"; + signal: "elm,state,left"; + source: "elm"; + action: STATE_SET "left" 0.0; + target: "ctxpopup_arrow"; + } + program { name: "enable_right_arrow"; + signal: "elm,state,right"; + source: "elm"; + action: STATE_SET "right" 0.0; + target: "ctxpopup_arrow"; + } + program { name: "enable_top_arrow"; + signal: "elm,state,top"; + source: "elm"; + action: STATE_SET "top" 0.0; + target: "ctxpopup_arrow"; + } + program { name: "enable_bottom_arrow"; + signal: "elm,state,bottom"; + source: "elm"; + action: STATE_SET "bottom" 0.0; + target: "ctxpopup_arrow"; + } + } +} + +group { + name: "elm/ctxpopup/icon_text_style_item/default"; + alias: "elm/ctxpopup/text_style_item/default"; + alias: "elm/ctxpopup/icon_style_item/default"; + images { + image: "hoversel_entry_bg.png" COMP; + } + parts { + part { name: "base.pad"; type: SPACER; + mouse_events: 0; + description { state: "default" 0.0; + min: 12 70; + max: 12 70; + align: 0 1; + } + } + + part { name: "bg"; type: RECT; + mouse_events: 0; + description { state: "default" 0.0; + rel1.to: "base.pad"; + rel1.relative: 1 0; + min: 300 70; + max: 300 70; + color: 0 0 0 0; + } + description { state: "clicked" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + } + part { name: "elm.proxy1.icon"; + type: PROXY; + clip_to: "disclip"; + scale: 1; + description { state: "default" 0.0; + max: 20 20; + fixed : 1 1; + rel1.to: "elm.swallow.icon"; + rel2.to: "elm.swallow.icon"; + rel1.relative: 1.0 0.0; + rel2.relative: 2.0 1.0; + source: "elm.swallow.icon"; + visible: 0; + align: 0.0 0.5; + } + } + part { name: "elm.proxy2.icon"; type: PROXY; + clip_to: "disclip"; + scale: 1; + description { state: "default" 0.0; + min: 20 20; + fixed : 1 1; + rel1.to: "elm.proxy1.icon"; + rel2.to: "elm.proxy1.icon"; + rel1.relative: 0.0 0.0; + rel2.relative: 1.0 1.0; + max: 20 20; + source: "elm.proxy1.icon"; + visible: 0; + align: 1.0 0.5; + } + } + part { name: "elm.swallow.icon"; type: SWALLOW; + clip_to: "disclip"; + scale: 1; + description { state: "default" 0.0; + fixed: 1 1; + rel1.to: "base.pad"; + rel1.relative: 1.0 0.0; + rel2.to: "base.pad"; + rel2.relative: 1.0 1.0; + min: 0 0; + max: 37 37; + align: 0 0.5; + } + } + part { name: "elm.text"; type: TEXT; mouse_events: 0; + clip_to: "disclip"; + scale: 1; + description { state: "default" 0.0; + min: 1 40; + fixed: 1 1; + align: 0 0.5; + rel1.relative: 1.0 0.0; + rel1.to_x: "elm.swallow.icon"; + rel2.to_x: "elm.proxy2.icon"; + rel2.relative: 1.0 1.0; + color: 89 89 89 255; + text { + font: "FONT_M"; + size: 30; + align: 0.0 0.5; + min: 1 1; + ellipsis: -1; + } + } + description { state: "focus" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + description { state: "clicked" 0.0; + inherit: "default" 0.0; + color: 0 0 0 255; + } + } + part { name: "over1"; type: RECT; mouse_events: 1; + repeat_events: 1; + description { state: "default" 0.0; + color: 255 255 255 0; + } + description { state: "clicked" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + } + part { name: "bottom_line"; type: RECT; + mouse_events: 1; + repeat_events: 1; + description { state: "default" 0.0; + min: 0 2; + max: 9999 2; + fixed: 1 1; + rel1.to:"over1"; + rel1.relative: 0 1; + rel1.offset: -32 0; + rel2.to:"over1"; + color: 222 222 222 255; + } + + } + part { name: "over2"; type: RECT; mouse_events: 1; + repeat_events: 1; + description { state: "default" 0.0; + color: 255 255 0 0; + } + description { state: "clicked" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + description { state: "focus" 0.0; + inherit: "default" 0.0; + } + } + part { name: "disclip"; + type: RECT; + description { state: "default" 0.0; + color: 255 255 255 255; + } + description { state: "enabled" 0.0; + color: 127 127 127 127; + } + } + part { name: "blocker"; + type: RECT; + description { state: "default" 0.0; + visible: 0; + } + description { state: "enabled" 0.0; + visible: 1; + color: 0 0 0 0; + } + } + } + programs { + program { name: "focused"; + signal: "elm,action,focus"; source: "elm"; + action: STATE_SET "focus" 0.0; + target: "over2"; + } + program { name: "unfocused"; + signal: "elm,action,unfocus"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + } + program{ + name: "item_unclick"; + signal: "mouse,clicked,1"; + source: "over1"; + action: SIGNAL_EMIT "elm,action,click" ""; + } + program { name: "disable"; + signal: "elm,state,disabled"; + source: "elm"; + action: STATE_SET "enabled" 0.0; + target: "disclip"; + target: "blocker"; + } + program { name: "enable"; + signal: "elm,state,enabled"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "disclip"; + target: "blocker"; + } + program { name: "item_click2"; + signal: "mouse,down,1"; + source: "over2"; + script { + set_state(PART:"elm.text", "clicked", 0.0); + set_state(PART:"bg", "clicked", 0.0); + } + } + program { name: "item_unclick2"; + signal: "mouse,up,1"; + source: "over2"; + script { + set_state(PART:"elm.text", "default", 0.0); + set_state(PART:"bg", "default", 0.0); + } + } + } +} +group { + name: "elm/ctxpopup/item_compress/default"; + images { + image: "hoversel_entry_bg.png" COMP; + } + parts { + part { name: "bg"; type: RECT; + mouse_events: 0; + description { state: "default" 0.0; + color: 255 255 255 0; + } + description { state: "clicked" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + } + part { name: "elm.swallow.icon"; + type: SWALLOW; + clip_to: "disclip"; + scale: 1; + description { state: "default" 0.0; + min: 25 25; + max: 25 25; + align: 0 0.5; + aspect: 1.0 1.0; + } + } + part { name: "elm.text"; type: TEXT; mouse_events: 0; + clip_to: "disclip"; + scale: 1; + description { state: "default" 0.0; + min: 1 40; + fixed: 0 1; + align: 0.5 0.5; + rel1.relative: 1.0 0.0; + rel1.to: "elm.swallow.icon"; + rel2.relative: 1.0 1.0; + color: 255 255 255 255; + text { + font: "FONT_M"; + size: 30; + min: 0 1; + align: 0.0 0.5; + } + } + description { state: "clicked" 0.0; + inherit: "default" 0.0; + color: 0 0 0 255; + } + } + part { name: "over1"; type: RECT; mouse_events: 1; + repeat_events: 1; + description { state: "default" 0.0; + color: 255 255 255 0; + } + description { state: "clicked" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + } + part { name: "disclip"; + type: RECT; + description { state: "default" 0.0; + color: 255 255 255 255; + } + description { state: "enabled" 0.0; + color: 127 127 127 127; + } + } + part { name: "blocker"; + type: RECT; + description { state: "default" 0.0; + visible: 0; + } + description { state: "enabled" 0.0; + visible: 1; + color: 0 0 0 0; + } + } + } + programs { + program { name: "item_unclick"; + signal: "mouse,clicked,1"; + source: "over1"; + action: SIGNAL_EMIT "elm,action,click" ""; + } + program { name: "disable"; + signal: "elm,state,disabled"; + source: "elm"; + action: STATE_SET "enabled" 0.0; + target: "disclip"; + target: "blocker"; + } + program { name: "enable"; + signal: "elm,state,enabled"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "disclip"; + target: "blocker"; + } + program { name: "item_click2"; + signal: "mouse,down,1"; + source: "over2"; + script { + set_state(PART:"elm.text", "clicked", 0.0); + set_state(PART:"bg", "clicked", 0.0); + } + } + program { name: "item_unclick2"; + signal: "mouse,up,1"; + source: "over2"; + script { + set_state(PART:"elm.text", "default", 0.0); + set_state(PART:"bg", "default", 0.0); + } + } + } +} diff --git a/ElmSharp/theme/tv/widgets/datetime.edc b/ElmSharp/theme/tv/widgets/datetime.edc new file mode 100644 index 0000000..5421038 --- /dev/null +++ b/ElmSharp/theme/tv/widgets/datetime.edc @@ -0,0 +1,759 @@ +/* + * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved + * + * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/********************************************************************* +Doc: Tizen TV_General Guide_GUI Guideline_v1.0_140709.ppt page:93 +**********************************************************************/ + +group { name: "elm/datetime/base/default"; + alias: "elm/datetime/base/date_layout"; + parts { + part { name: "base_bg"; + type: RECT; + scale: 1; + description { state: "default" 0.0; + color: 250 250 250 255; + } + } + part { name: "base"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 646 406; + } + } + part { name: "bg.top.padding"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 0 0; + max: -1 0; + fixed: 0 1; + rel1 { + relative: 0.0 0.0; + to: "base"; + } + rel2 { + relative: 1.0 0.0; + to: "base"; + } + align: 0.5 0.0; + } + } + part { name: "bg.bottom.padding"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 0 0; + max: -1 0; + fixed: 0 1; + rel1 { + relative: 0.0 1.0; + to: "base"; + } + rel2 { + relative: 1.0 1.0; + to: "base"; + } + align: 0.5 1.0; + } + } + part { name: "bg"; + type: RECT; + scale: 1; + description { state: "default" 0.0; + min: 646 348; + max: 646 348; + rel1 { + relative: 0.0 1.0; + to: "bg.top.padding"; + } + rel2 { + relative: 1.0 0.0; + to: "bg.bottom.padding"; + } + color: 250 250 250 255; + } + } + part { name: "left.padding"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 0 0; + max: 0 -1; + fixed: 1 0; + rel1 { + relative: 0.0 0.0; + to: "bg"; + } + rel2 { + relative: 0.0 1.0; + to: "bg"; + } + align: 0.0 0.0; + } + } + part { name: "right.padding"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 0 0; + max: 0 -1; + fixed: 1 0; + rel2.to: "bg"; + rel1 { + relative: 1.0 0.0; + to: "bg"; + } + rel2 { + relative: 1.0 1.0; + to: "bg"; + } + align: 1.0 1.0; + } + } + part { name: "field0"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + fixed: 1 0; + min: 206 0; + rel1 { + relative: 1.0 0.0; + to: "left.padding"; + } + rel2.to: "left.padding"; + align: 0.0 0.5; + } + } + part { name: "center.padding1"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + fixed: 1 0; + min: 14 0; + max: 14 -1; + rel1 { + relative: 1.0 0.0; + to: "field0"; + } + rel2.to: "field0"; + align: 0.0 0.5; + } + } + part { name: "field1"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + fixed: 1 0; + min: 206 0; + rel1 { + relative: 1.0 0.0; + to: "center.padding1"; + } + rel2 { + relative: 0.0 1.0; + to_x: "center.padding2"; + to_y: "center.padding1"; + } + } + } + part { name: "center.padding2"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + fixed: 1 0; + min: 14 0; + max: 14 -1; + rel1.to: "field2"; + rel2 { + relative: 0.0 1.0; + to: "field2"; + } + align: 1.0 0.5; + } + } + part { name: "field2"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + fixed: 1 0; + min: 206 0; + rel1.to: "right.padding"; + rel2 { + relative: 0.0 1.0; + to: "right.padding"; + } + align: 1.0 0.5; + } + } + part { name: "field3"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + fixed: 1 1; + min: 0 0; + max: 0 0; + visible: 0; + } + } + part { name: "field4"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + fixed: 1 1; + min: 0 0; + max: 0 0; + visible: 0; + } + } + part { name: "field5"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + fixed: 1 1; + min: 0 0; + max: 0 0; + visible: 0; + } + } + part { + name: "event_area"; + type: RECT; + description { state: "default" 0.0; + color: 0 0 0 0; + visible: 0; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { name: "access"; + type: RECT; + repeat_events: 1; + description { state: "default" 0.0; + fixed: 1 1; + rel1.to: "bg"; + rel2.to: "bg"; + color: 0 0 0 0; + } + } + } +} + +group { name: "elm/datetime/base/time_layout"; + parts { + part { name: "base_bg"; + type: RECT; + scale: 1; + description { state: "default" 0.0; + color: 250 250 250 255; + } + } + part { name: "base"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 603 406; + } + } + part { name: "bg.top.padding"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 0 0; + max: -1 0; + fixed: 0 1; + rel1 { + relative: 0.0 0.0; + to: "base"; + } + rel2 { + relative: 1.0 0.0; + to: "base"; + } + align: 0.5 0.0; + } + } + part { name: "bg.bottom.padding"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 0 0; + max: -1 0; + fixed: 0 1; + rel1 { + relative: 0.0 1.0; + to: "base"; + } + rel2 { + relative: 1.0 1.0; + to: "base"; + } + align: 0.5 1.0; + } + } + part { name: "bg"; + type: RECT; + scale: 1; + description { state: "default" 0.0; + min: 603 348; + max: 603 348; + rel1 { + relative: 0.0 1.0; + to: "bg.top.padding"; + } + rel2 { + relative: 1.0 0.0; + to: "bg.bottom.padding"; + } + color: 250 250 250 255; + } + } + part { name: "left.padding"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 0 0; + max: 0 -1; + fixed: 1 0; + rel1 { + relative: 0.0 0.0; + to: "bg"; + } + rel2 { + relative: 0.0 1.0; + to: "bg"; + } + align: 0.0 0.0; + } + } + part { name: "right.padding"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 0 0; + max: 0 -1; + fixed: 1 0; + rel1 { + relative: 1.0 0.0; + to: "bg"; + } + rel2 { + relative: 1.0 1.0; + to: "bg"; + } + align: 1.0 1.0; + } + } + part { name: "field3"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + fixed: 1 0; + min: 146 0; + rel1 { + relative: 1.0 0.0; + to: "left.padding"; + } + rel2.to: "left.padding"; + align: 0.0 0.5; + } + } + part { name: "center.padding1"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + fixed: 1 0; + min: 39 0; + max: 39 -1; + rel1 { + relative: 1.0 0.0; + to: "field3"; + } + rel2.to: "field3"; + align: 0.0 0.5; + } + description { state: "invisible" 0.0; + inherit: default 0.0; + min: 55 0; + max: 55 -1; + } + } + part { name: "text_bg"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + rel1 { + relative: 1.0 0.0; + to: "center.padding1"; + } + rel2.to: "center.padding1"; + align: 0.0 0.5; + min: 18 0; + max: 18 -1; + fixed: 1 0; + } + description { state: "invisible" 0.0; + inherit: default 0.0; + min: 0 0; + max: 0 0; + } + } + part { name: "hour.minute.colon"; + type: TEXT; + scale: 1; + description { state: "default" 0.0; + rel1.to: "text_bg"; + rel2.to: "text_bg"; + color: 0 0 0 255; + fixed: 1 1; + text { + min: 1 0; + font: "TizenSans:style=Light"; + size: "106"; + text: ":"; + align: 0.5 0.44; + } + visible: 1; + } + description { state: "invisible" 0.0; + inherit: default 0.0; + visible: 0; + } + } + part { name: "center.padding2"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + fixed: 1 0; + min: 39 0; + max: 39 -1; + rel1 { + relative: 1.0 0.0; + to: "text_bg"; + } + rel2.to: "text_bg"; + align: 0.0 0.5; + } + description { state: "invisible" 0.0; + inherit: default 0.0; + min: 0 0; + max: 0 0; + } + } + part { name: "field4"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + fixed: 1 0; + min: 146 0; + rel1 { + relative: 1.0 0.0; + to: "center.padding2"; + } + rel2.to: "center.padding2"; + align: 0.0 0.5; + } + } + part { name: "center.padding3"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + fixed: 1 0; + min: 39 0; + max: 39 -1; + rel1 { + relative: 1.0 0.0; + to: "field4"; + } + rel2.to: "field4"; + align: 0.0 0.5; + } + description { state: "invisible" 0.0; + inherit: default 0.0; + min: 55 0; + max: 55 -1; + } + } + part { name: "text_bg2"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + rel1 { + relative: 1.0 0.0; + to: "center.padding3"; + } + rel2.to: "center.padding3"; + align: 0.0 0.5; + min: 18 0; + max: 18 -1; + fixed: 1 0; + } + description { state: "invisible" 0.0; + inherit: default 0.0; + min: 0 0; + max: 0 0; + } + } + part { name: "hour.minute.colon2"; + type: TEXT; + scale: 1; + description { state: "default" 0.0; + rel1.to: "text_bg2"; + rel2.to: "text_bg2"; + color: 0 0 0 255; + fixed: 1 1; + text { + min: 1 0; + font: "TizenSans:style=Light"; + size: "106"; + text: ":"; + align: 0.5 0.44; + } + visible: 1; + } + description { state: "invisible" 0.0; + inherit: default 0.0; + visible: 0; + } + } + part { name: "center.padding4"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + fixed: 1 0; + min: 39 0; + max: 39 -1; + rel1 { + relative: 1.0 0.0; + to: "text_bg2"; + } + rel2.to: "text_bg2"; + align: 0.0 0.5; + } + description { state: "invisible" 0.0; + inherit: default 0.0; + min: 0 0; + max: 0 0; + } + } + part { name: "field5"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + fixed: 1 0; + min: 160 0; + max: 160 -1; + rel1 { + relative: 1.0 0.0; + to: "center.padding4"; + } + rel2.to: "center.padding4"; + align: 0.0 0.5; + } + } + part { name: "field0"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + fixed: 1 1; + min: 0 0; + max: 0 0; + visible: 0; + } + } + part { name: "field1"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + fixed: 1 1; + min: 0 0; + max: 0 0; + visible: 0; + } + } + part { name: "field2"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + fixed: 1 1; + min: 0 0; + max: 0 0; + visible: 0; + } + } + part { + name: "event_area"; + type: RECT; + description { state: "default" 0.0; + color: 0 0 0 0; + visible: 0; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { name: "access"; + type: RECT; + repeat_events: 1; + description { state: "default" 0.0; + fixed: 1 1; + rel1.to: "bg"; + rel2.to: "bg"; + color: 0 0 0 0; + } + } + } + programs { + program { name: "colon_field3_visible"; + signal: "elm,state,colon,visible,field3"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "center.padding1"; + target: "hour.minute.colon"; + target: "text_bg"; + target: "center.padding2"; + } + program { name: "colon_field3_invisible"; + signal: "elm,state,colon,invisible,field3"; + source: "elm"; + action: STATE_SET "invisible" 0.0; + target: "center.padding1"; + target: "hour.minute.colon"; + target: "text_bg"; + target: "center.padding2"; + } + program { name: "colon_field4_visible"; + signal: "elm,state,colon,visible,field4"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "center.padding3"; + target: "hour.minute.colon2"; + target: "text_bg2"; + target: "center.padding4"; + } + program { name: "colon_field4_invisible"; + signal: "elm,state,colon,invisible,field4"; + source: "elm"; + action: STATE_SET "invisible" 0.0; + target: "center.padding3"; + target: "hour.minute.colon2"; + target: "text_bg2"; + target: "center.padding4"; + } + } +} + +group { name: "elm/datetime/base/time_layout_24hr"; + inherit: "elm/datetime/base/time_layout"; + + parts { + part { name: "base"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 388 406; + } + } + part { name: "left.padding"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 0 0; + max: 0 -1; + fixed: 1 0; + rel1 { + relative: 0.0 0.0; + to: "bg"; + } + rel2 { + relative: 0.0 1.0; + to: "bg"; + } + align: 0.0 0.0; + } + } + part { name: "right.padding"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 0 0; + max: 0 -1; + fixed: 1 0; + rel1 { + relative: 1.0 0.0; + to: "bg"; + } + rel2 { + relative: 1.0 1.0; + to: "bg"; + } + align: 1.0 1.0; + } + } + part { name: "bg"; + type: RECT; + scale: 1; + description { state: "default" 0.0; + min: 388 348; + max: 388 348; + rel1 { + relative: 0.0 1.0; + to: "bg.top.padding"; + } + rel2 { + relative: 1.0 0.0; + to: "bg.bottom.padding"; + } + color: 250 250 250 255; + } + } + part { name: "field5"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + min: 0 0; + max: 0 -1; + visible: 0; + rel1.to: "right.padding"; + rel2.to: "right.padding"; + } + } + part { name: "access"; + type: RECT; + repeat_events: 1; + description { state: "default" 0.0; + fixed: 1 1; + rel1.to: "bg"; + rel2.to: "bg"; + color: 0 0 0 0; + } + } + } +} diff --git a/ElmSharp/theme/tv/widgets/entry.edc b/ElmSharp/theme/tv/widgets/entry.edc new file mode 100644 index 0000000..e8fcd3f --- /dev/null +++ b/ElmSharp/theme/tv/widgets/entry.edc @@ -0,0 +1,1710 @@ +/* + * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved + * + * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#define ENTRY_TEXT_SIZE_INC 60 +#define ENTRY_PREEDIT_BACKGROUND_COLOR_INC "#FAFAFA" +#define ENTRY_PREEDIT_TEXT_COLOR_INC "#000000" +#define ENTRY_PREEDIT_UNDERLINE_COLOR_INC "#FAFAFA" +#define ENTRY_PREEDIT_SUB1_COLOR_INC "#2EA8E1" +#define ENTRY_PREEDIT_SUB2_COLOR_INC "#9962C3" +#define ENTRY_PREEDIT_SUB3_COLOR_INC "#76DE37" +#define ENTRY_PREEDIT_SUB4_COLOR_INC "#999999" +#define DEFAULT_COLOR 69 143 255 255 + +styles +{ + style { name: "entry_single_textblock_style"; + base: "font="FONT_M" font_size="32" align=left color=#cccccc wrap=none text_class=entry left_margin=0 right_margin=0"; + tag: "br" ""; + tag: "ps" ""; + tag: "em" "+ font_style=Oblique"; + tag: "link" "+ color=#800 underline=on underline_color=#8008"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color=#000"; + tag: "preedit_sel" "+ backing=on backing_color=#000 color=#FFFFFF"; + } + style { name: "entry_single_textblock_selected_style"; + base: "font="FONT_M" font_size="32" align=left color=#3d3d3d wrap=none text_class=entry left_margin=0 right_margin=0"; + tag: "br" ""; + tag: "ps" ""; + tag: "em" "+ font_style=Oblique"; + tag: "link" "+ color=#800 underline=on underline_color=#8008"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color=#000"; + tag: "preedit_sel" "+ backing=on backing_color=#000 color=#FFFFFF"; + } + style { name: "entry_single_textblock_disabled_style"; + base: "font="FONT_M" font_size="32" align=left color=#919191 wrap=none text_class=entry left_margin=0 right_margin=0"; + tag: "br" ""; + tag: "ps" ""; + tag: "em" "+ font_style=Oblique"; + tag: "link" "+ color=#00000080 underline=on underline_color=#00000080"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color=#000"; + tag: "preedit_sel" "+ backing=on backing_color=#000 color=#FFFFFF"; + } + style { name: "entry_single_textblock_guide_style"; + base: "font="FONT_M" font_size="32" align=left color=#7f7f7f wrap=none text_class=entry left_margin=0 right_margin=0 ellipsis=0.0"; + tag: "br" ""; + tag: "ps" ""; + tag: "em" "+ font_style=Oblique"; + tag: "hilight" "+ font_weight=Bold"; + } +} +styles +{ + style { name: "entry_textblock_style"; + base: "font="FONT_M" font_size="32" align=left color=#cccccc wrap=none text_class=entry left_margin=0 right_margin=0"; + tag: "em" "+ font_style=Oblique"; + tag: "link" "+ color=#800 underline=on underline_color=#8008"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color=#000"; + tag: "preedit_sel" "+ backing=on backing_color=#000 color=#000"; + } + style { name: "entry_textblock_selected_style"; + base: "font="FONT_M" font_size="32" align=left color=#3d3d3d wrap=none text_class=entry left_margin=0 right_margin=0"; + tag: "em" "+ font_style=Oblique"; + tag: "link" "+ color=#800 underline=on underline_color=#8008"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color=#000"; + tag: "preedit_sel" "+ backing=on backing_color=#000 color=#000"; + } + style { name: "entry_textblock_disabled_style"; + base: "font="FONT_M" font_size="32" align=left color=#3d3d3d wrap=none text_class=entry left_margin=0 right_margin=0"; + tag: "em" "+ font_style=Oblique"; + tag: "link" "+ color=#00000080 underline=on underline_color=#00000080"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color=#000"; + tag: "preedit_sel" "+ backing=on backing_color=#000 color=#000"; + } + style { name: "entry_textblock_guide_style"; + base: "font="FONT_M" font_size="32" align=left color=#7f7f7f wrap=none text_class=entry left_margin=0 right_margin=0 ellipsis=0.0"; + tag: "em" "+ font_style=Oblique"; + tag: "hilight" "+ font_weight=Bold"; + } +} +styles +{ + style { name: "entry_pin_textblock_style"; + base: "font="FONT_M" font_size="34" align=center color=#3d3d3d wrap=none text_class=entry left_margin=0 right_margin=0"; + tag: "br" ""; + tag: "ps" ""; + tag: "em" "+ font_style=Oblique"; + tag: "link" "+ color=#800 underline=on underline_color=#8008"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color=#000"; + tag: "preedit_sel" "+ backing=on backing_color=#000 color=#FFFFFF"; + } + style { name: "entry_pin_textblock_selected_style"; + base: "font="FONT_M" font_size="34" align=center color=#3d3d3d wrap=none text_class=entry left_margin=0 right_margin=0"; + tag: "br" ""; + tag: "ps" ""; + tag: "em" "+ font_style=Oblique"; + tag: "link" "+ color=#800 underline=on underline_color=#8008"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color=#000"; + tag: "preedit_sel" "+ backing=on backing_color=#000 color=#FFFFFF"; + } + style { name: "entry_pin_textblock_disabled_style"; + base: "font="FONT_M" font_size="34" align=center color=#3d3d3d wrap=none text_class=entry left_margin=0 right_margin=0"; + tag: "br" ""; + tag: "ps" ""; + tag: "em" "+ font_style=Oblique"; + tag: "link" "+ color=#00000080 underline=on underline_color=#00000080"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color=#000"; + tag: "preedit_sel" "+ backing=on backing_color=#000 color=#FFFFFF"; + } + style { name: "entry_pin_textblock_guide_style"; + base: "font="FONT_M" font_size="34" align=center color=#3d3d3d wrap=none text_class=entry left_margin=0 right_margin=0 ellipsis=0.0"; + tag: "br" ""; + tag: "ps" ""; + tag: "em" "+ font_style=Oblique"; + tag: "hilight" "+ font_weight=Bold"; + } +} +styles +{ + style { name: "entry_single_small_textblock_style"; + base: "font="FONT_M" font_size="24" align=left color=#3d3d3d wrap=none text_class=entry left_margin=0 right_margin=0"; + tag: "br" ""; + tag: "ps" ""; + tag: "em" "+ font_style=Oblique"; + tag: "link" "+ color=#800 underline=on underline_color=#8008"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color=#000"; + tag: "preedit_sel" "+ backing=on backing_color=#000 color=#FFFFFF"; + } + style { name: "entry_single_small_textblock_selected_style"; + base: "font="FONT_M" font_size="24" align=left color=#3d3d3d wrap=none text_class=entry left_margin=0 right_margin=0"; + tag: "br" ""; + tag: "ps" ""; + tag: "em" "+ font_style=Oblique"; + tag: "link" "+ color=#800 underline=on underline_color=#8008"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color=#000"; + tag: "preedit_sel" "+ backing=on backing_color=#000 color=#FFFFFF"; + } + style { name: "entry_single_small_textblock_disabled_style"; + base: "font="FONT_M" font_size="24" align=left color=#3d3d3d wrap=none text_class=entry left_margin=0 right_margin=0"; + tag: "br" ""; + tag: "ps" ""; + tag: "em" "+ font_style=Oblique"; + tag: "link" "+ color=#00000080 underline=on underline_color=#00000080"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color=#000"; + tag: "preedit_sel" "+ backing=on backing_color=#000 color=#FFFFFF"; + } + style { name: "entry_single_small_textblock_guide_style"; + base: "font="FONT_M" font_size="24" align=left color=#7f7f7f wrap=none text_class=entry left_margin=0 right_margin=0 ellipsis=0.0"; + tag: "br" ""; + tag: "ps" ""; + tag: "em" "+ font_style=Oblique"; + tag: "hilight" "+ font_weight=Bold"; + } +} +styles +{ + style { name: "entry_textblock_style_mixedwrap"; + base: "font="FONT_M" font_size="32" color=#000 wrap=mixed text_class=entry left_margin=2 right_margin=2"; + tag: "em" "+ font_style=Oblique"; + tag: "link" "+ color=#800 underline=on underline_color=#8008"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color=#000"; + tag: "preedit_sel" "+ backing=on backing_color=#000 color=#000"; + } + style { name: "entry_textblock_selected_style_mixedwrap"; + base: "font="FONT_M" font_size="32" color=#019cff wrap=word text_class=entry left_margin=2 right_margin=2"; + tag: "em" "+ font_style=Oblique"; + tag: "link" "+ color=#800 underline=on underline_color=#8008"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color=#000"; + tag: "preedit_sel" "+ backing=on backing_color=#000 color=#000"; + } + style { name: "entry_textblock_disabled_style_mixedwrap"; + base: "font="FONT_M" font_size="32" color=#919191 wrap=char text_class=entry left_margin=2 right_margin=2"; + tag: "em" "+ font_style=Oblique"; + tag: "link" "+ color=#00000080 underline=on underline_color=#00000080"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color=#000"; + tag: "preedit_sel" "+ backing=on backing_color=#000 color=#000"; + } + style { name: "entry_textblock_guide_style_mixedwrap"; + base: "font="FONT_M" font_size="32" color=#7f7f7f wrap=mixed text_class=entry left_margin=2 right_margin=2 ellipsis=0.0"; + tag: "em" "+ font_style=Oblique"; + tag: "hilight" "+ font_weight=Bold"; + } +} +styles +{ + style { name: "entry_textblock_style_charwrap"; + base: "font="FONT_M" font_size="32" color=#000 wrap=char text_class=entry left_margin=2 right_margin=2"; + tag: "em" "+ font_style=Oblique"; + tag: "link" "+ color=#800 underline=on underline_color=#8008"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color=#000"; + tag: "preedit_sel" "+ backing=on backing_color=#000 color=#000"; + } + style { name: "entry_textblock_selected_style_charwrap"; + base: "font="FONT_M" font_size="32" color=#019cff wrap=word text_class=entry left_margin=2 right_margin=2"; + tag: "em" "+ font_style=Oblique"; + tag: "link" "+ color=#800 underline=on underline_color=#8008"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color=#000"; + tag: "preedit_sel" "+ backing=on backing_color=#000 color=#000"; + } + style { name: "entry_textblock_disabled_style_charwrap"; + base: "font="FONT_M" font_size="32" color=#919191 wrap=char text_class=entry left_margin=2 right_margin=2"; + tag: "em" "+ font_style=Oblique"; + tag: "link" "+ color=#00000080 underline=on underline_color=#00000080"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color=#000"; + tag: "preedit_sel" "+ backing=on backing_color=#000 color=#000"; + } + style { name: "entry_textblock_guide_style_charwrap"; + base: "font="FONT_M" font_size="32" color=#7f7f7f wrap=char text_class=entry left_margin=2 right_margin=2 ellipsis=0.0"; + tag: "em" "+ font_style=Oblique"; + tag: "hilight" "+ font_weight=Bold"; + } +} + +images { + image: "search_searchbar_bg_foc.png" COMP; + image: "search_searchbar_bg_nor.png" COMP; + image: "search_searchbar_small_bg_foc.png" COMP; + image: "search_searchbar_small_bg_nor.png" COMP; +} + +/********************************************************************************* +Document: Tizen TV_General Guide_GUI Guideline_v1.1_140709.ppt +Page No. 103 +stlye: Text Input Field +**********************************************************************************/ +group { name: "elm/scroller/entry/input.field"; + inherit: "elm/scroller/base/default"; + alias: "elm/scroller/entry_single/input.field"; + parts { + part { name: "pad.left"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 28 5; + max: 28 5; + fixed: 1 1; + rel1.to: "bg"; + align: 0.0 0.0; + } + } + part { name: "pad.right"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 30 5; + max: 30 5; + fixed: 1 1; + rel2.to: "bg"; + align: 1.0 1.0; + } + } + part { name: "base_highlight"; + after: "bg"; + scale: 1; + description { state: "default" 0.0; + rel1.to: "bg"; + rel2.to: "bg"; + image { + normal: "search_searchbar_bg_nor.png"; + border: 5 5 5 5; + border_scale: 1; + } + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + image.normal: "search_searchbar_bg_foc.png"; + } + description { state: "over" 0.0; + inherit: "default" 0.0; + image.normal: "search_searchbar_bg_foc.png"; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + image.normal: "search_searchbar_bg_nor.png"; + } + description { state: "highlight" 0.0; + inherit: "default" 0.0; + image.normal: "search_searchbar_bg_foc.png"; + } + description { state: "normal" 0.0; + inherit: "default" 0.0; + image.normal: "search_searchbar_bg_nor.png"; + } + } + part { name: "clipper"; + description { state: "default" 0.0; + rel1.to: "pad.left"; + rel1.relative: 1.0 1.0; + rel2.to: "pad.right"; + rel2.relative: 0.0 0.0; + } + } + part { name: "elm.swallow.content"; + description { state: "default" 0.0; + rel1.to: "pad.left"; + rel1.relative: 1.0 1.0; + rel2.to: "pad.right"; + rel2.relative: 0.0 0.0; + } + } + } + programs { + program { name: "disable"; + signal: "elm,state,disabled"; source: "elm"; + action: STATE_SET "disabled" 0.0; + target: "base_highlight"; + } + program { name: "select"; + signal: "elm,state,selected"; source: "elm"; + action: STATE_SET "selected" 0.0; + target: "base_highlight"; + } + program { name: "over"; + signal: "elm,state,mouse,in"; source: "elm"; + action: STATE_SET "over" 0.0; + target: "base_highlight"; + } + program { name: "enable"; + signal: "elm,state,enabled"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "base_highlight"; + } + program { name: "go_active"; + signal: "elm,state,selected"; source: "elm"; + action: STATE_SET "selected" 0.0; + target: "base_highlight"; + } + program { name: "go_passive"; + signal: "elm,state,unselected"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "base_highlight"; + } + program { name: "highlight_show"; + signal: "elm,action,focus_highlight,show"; source: "elm"; + action: STATE_SET "selected" 0.0; + transition: ACCELERATE 0.01; + target: "base_highlight"; + } + program { name: "highlight_hide"; + signal: "elm,action,focus_highlight,hide"; source: "elm"; + action: STATE_SET "normal" 0.0; + transition: DECELERATE 0.01; + target: "base_highlight"; + } + } +} + +/********************************************************************************* +Document: Tizen TV_General Guide_GUI Guideline_v1.1_140709.ppt +Page No. 103 +stlye: Text Input Field with Icon +**********************************************************************************/ +group { name: "elm/scroller/entry/input.field.icon"; + inherit: "elm/scroller/entry/input.field"; + alias: "elm/scroller/entry_single/input.field.icon"; + parts { + part { name: "pad.left"; + description { state: "default" 0.0; + min: 15 5; + max: 15 5; + } + } + part { name: "pad.right"; + description { state: "default" 0.0; + min: 30 5; + max: 30 5; + } + } + part { name: "icon_base"; type: RECT; + scale: 1; + description { state: "default" 0.0; + color: 197 200 203 255; + } + } + part { name: "elm.swallow.icon"; type: SWALLOW; + scale: 1; + clip_to: "icon_base"; + description { state: "default" 0.0; + min: 60 60; + max: 60 60; + fixed: 1 1; + rel1.to: "pad.left"; + rel1.relative: 1.0 1.0; + rel2.to_x: "pad.left"; + rel2.to_y: "pad.right"; + rel2.relative: 1.0 0.0; + align: 0.0 0.5; + aspect_preference: BOTH; + } + } + part { name: "clipper"; + description { state: "default" 0.0; + rel1.to_x: "elm.swallow.icon"; + } + } + part { name: "elm.swallow.content"; + description { state: "default" 0.0; + rel1.to_x: "elm.swallow.icon"; + } + } + } +} + +/********************************************************************************* +Document: Tizen TV_General Guide_GUI Guideline_v1.1_140709.ppt +Page No. 105 +stlye: Text Input Field +**********************************************************************************/ +group { name: "elm/scroller/entry/input.field.small"; + inherit: "elm/scroller/entry/input.field"; + alias: "elm/scroller/entry_single/input.field.small"; + parts { + part { name: "pad.left"; + description { state: "default" 0.0; + min: 18 4; + max: 18 4; + } + } + part { name: "pad.right"; + description { state: "default" 0.0; + min: 18 4; + max: 18 4; + } + } + part { name: "base_highlight"; + description { state: "default" 0.0; + image { + normal: "search_searchbar_small_bg_nor.png"; + border: 4 4 4 4; + border_scale: 1; + } + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + image.normal: "search_searchbar_small_bg_foc.png"; + } + description { state: "over" 0.0; + inherit: "default" 0.0; + image.normal: "search_searchbar_small_bg_foc.png"; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + image.normal: "search_searchbar_small_bg_nor.png"; + } + description { state: "highlight" 0.0; + inherit: "default" 0.0; + image.normal: "search_searchbar_small_bg_foc.png"; + } + description { state: "normal" 0.0; + inherit: "default" 0.0; + image.normal: "search_searchbar_small_bg_nor.png"; + } + } + } +} + +/********************************************************************************* +Document: Tizen TV_General Guide_GUI Guideline_v1.1_140709.ppt +Page No. 105 +stlye: Text Input Field with Icon +**********************************************************************************/ +group { name: "elm/scroller/entry/input.field.small.icon"; + inherit: "elm/scroller/entry/input.field.small"; + alias: "elm/scroller/entry_single/input.field.small.icon"; + parts { + part { name: "pad.left"; type: SPACER; + description { state: "default" 0.0; + min: 14 5; + max: 14 5; + } + } + part { name: "pad.right"; + description { state: "default" 0.0; + min: 18 5; + max: 18 5; + } + } + part { name: "icon_base"; type: RECT; + scale: 1; + description { state: "default" 0.0; + color: 158 158 158 178; + } + } + part { name: "elm.swallow.icon"; type: SWALLOW; + scale: 1; + clip_to: "icon_base"; + description { state: "default" 0.0; + min: 60 60; + max: 60 60; + fixed: 1 1; + rel1.to: "pad.left"; + rel1.relative: 1.0 1.0; + rel2.to_x: "pad.left"; + rel2.to_y: "pad.right"; + rel2.relative: 1.0 0.0; + align: 0.0 0.5; + aspect_preference: BOTH; + } + } + + part { name: "clipper"; + description { state: "default" 0.0; + rel1.to_x: "pad.icon"; + } + } + part { name: "elm.swallow.content"; + description { state: "default" 0.0; + rel1.to_x: "pad.icon"; + } + } + part { name: "pad.icon"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 8 40; + max: 8 40; + fixed: 1 1; + rel1.to: "elm.swallow.icon"; + rel1.relative: 1.0 0.5; + align: 0.0 0.5; + } + } + } +} + +/********************************************************************************* +Document: Tizen TV_General Guide_GUI Guideline_v1.1_140709.ppt +Page No. 103 +stlye: Text Input Field +**********************************************************************************/ +group { name: "elm/entry/base/input.field"; + alias: "elm/entry/base/default"; + data { + item: "focus_highlight" "on"; + } + parts { + part { name: "elm.guide"; type: TEXTBLOCK; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1.to: "elm.text"; + rel2.to: "elm.text"; + text { + style: "entry_textblock_guide_style"; + min: 0 1; + } + } + description { state: "hidden" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "elm.text"; type: TEXTBLOCK; mouse_events: 1; + scale: 1; + entry_mode: EDITABLE; + select_mode: DEFAULT; + cursor_mode: BEFORE; + multiline: 1; + source: "elm/entry/selection/input.field"; + source4: "elm/entry/cursor/input.field"; + source5: "elm/entry/anchor/input.field"; + description { state: "default" 0.0; + text { + style: "entry_textblock_style"; + min: 0 1; + align: 0.0 0.5; + } + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + text { + style: "entry_textblock_disabled_style"; + min: 0 1; + } + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + text { + style: "entry_textblock_selected_style"; + min: 0 1; + } + } + description { state: "highlight" 0.0; + inherit: "default" 0.0; + text { + style: "entry_textblock_selected_style"; + min: 0 1; + } + } + description { state: "enabled" 0.0; + inherit: "default" 0.0; + text { + style: "entry_textblock_style"; + min: 0 1; + } + } + } + } + programs { + program { name: "focus"; + signal: "load"; source: ""; + action: FOCUS_SET; + target: "elm.text"; + } + program { name: "disable"; + signal: "elm,state,disabled"; source: "elm"; + action: STATE_SET "disabled" 0.0; + target: "elm.text"; + } + program { name: "select"; + signal: "elm,state,selected"; source: "elm"; + action: STATE_SET "selected" 0.0; + target: "elm.text"; + } + program { name: "over"; + signal: "elm,state,mouse,in"; source: "elm"; + action: STATE_SET "over" 0.0; + target: "elm.text"; + } + program { name: "enable"; + signal: "elm,state,enabled"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + target: "elm.guide"; + } + program { name: "go_active"; + signal: "elm,state,selected"; source: "elm"; + action: STATE_SET "selected" 0.0; + target: "elm.text"; + target: "elm.guide"; + } + program { name: "go_passive"; + signal: "elm,state,unselected"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + target: "elm.guide"; + } + program { name: "gdisable"; + signal: "elm,guide,disabled"; source: "elm"; + action: STATE_SET "hidden" 0.0; + target: "elm.guide"; + } + program { name: "genable"; + signal: "elm,guide,enabled"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.guide"; + } + program { name: "highlight_show"; + signal: "elm,action,focus_highlight,show"; source: "elm"; + action: STATE_SET "selected" 0.0; + transition: ACCELERATE 0.01; + target: "elm.text"; + } + program { name: "highlight_hide"; + signal: "elm,action,focus_highlight,hide"; source: "elm"; + action: STATE_SET "normal" 0.0; + transition: DECELERATE 0.01; + target: "elm.text"; + } + } +} + +/***************************************************************************************** +Document: Tizen TV_General Guide_GUI Guideline_v1.1_140709.ppt +Page No. 103 +style: Text Input Field +*******************************************************************************************/ +group { name: "elm/entry/base-single/input.field"; + inherit: "elm/entry/base/input.field"; + alias: "elm/entry/base-single/input.field.icon"; + parts { + part { name: "elm.guide"; type: TEXTBLOCK; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1.to: "elm.text"; + rel2.to: "elm.text"; + text { + style: "entry_single_textblock_guide_style"; + min: 0 1; + } + } + description { state: "hidden" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "elm.text"; type: TEXTBLOCK; mouse_events: 1; + scale: 1; + multiline: 0; + description { state: "default" 0.0; + text { + style: "entry_single_textblock_style"; + min: 1 1; + ellipsis: -1; + max: 0 0; + align: 0.0 0.5; + } + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + text { + style: "entry_single_textblock_disabled_style"; + } + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + text { + style: "entry_single_textblock_selected_style"; + min: 0 1; + } + } + description { state: "enabled" 0.0; + inherit: "default" 0.0; + text { + style: "entry_single_textblock_style"; + min: 0 1; + } + } + } + } +} + +/***************************************************************************************** +Document: Tizen TV_General Guide_GUI Guideline_v1.1_140709.ppt +Page No. 103 +style : Text Input Field +NO EDIT +**************************************************************************/ +group { name: "elm/entry/base-single-noedit/input.field"; + inherit: "elm/entry/base/input.field"; + parts { + part { name: "elm.guide"; type: TEXTBLOCK; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1.to: "elm.text"; + rel2.to: "elm.text"; + text { + style: "entry_single_textblock_guide_style"; + min: 0 1; + } + } + description { state: "hidden" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "elm.text"; + entry_mode: PLAIN; + multiline: 0; + scale: 1; + source: "elm/entry/selection/input.field"; + source4: ""; + source5: "elm/entry/anchor/input.field"; + description { state: "default" 0.0; + text { + style: "entry_single_textblock_style"; + min: 1 1; + ellipsis: -1; + max: 0 0; + align: 0.0 0.5; + } + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + text { + style: "entry_single_textblock_disabled_style"; + } + } + } + } +} + +/***************************************************************************************** +Document: Tizen TV_General Guide_GUI Guideline_v1.1_140709.ppt +Page No. 103 +style : Text Input Field +PASSWORD +********************************************************************************************/ +group { name: "elm/entry/base-password/input.field"; + inherit: "elm/entry/base/input.field"; + parts { + part { name: "elm.guide"; type: TEXTBLOCK; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1.to: "elm.text"; + rel2.to: "elm.text"; + text { + style: "entry_single_textblock_guide_style"; + min: 0 1; + align: 0.0 0.0; + } + } + description { state: "hidden" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "elm.text"; type: TEXTBLOCK; mouse_events: 1; + entry_mode: PASSWORD; + cursor_mode: BEFORE; + select_mode: EXPLICIT; + scale: 1; + multiline: 0; + source: "elm/entry/selection/input.field"; + source4: "elm/entry/cursor/input.field"; + source5: "elm/entry/anchor/input.field"; + description { state: "default" 0.0; + text { + style: "entry_single_textblock_style"; + repch: "*"; + min: 1 1; + ellipsis: -1; + max: 0 0; + align: 0.0 0.5; + } + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + text { + style: "entry_single_textblock_disabled_style"; + } + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + text { + style: "entry_textblock_selected_style"; + min: 0 1; + } + } + description { state: "enabled" 0.0; + inherit: "default" 0.0; + text { + style: "entry_textblock_style"; + min: 0 1; + } + } + } + } +} + +/***************************************************************************************** +Document: Tizen TV_General Guide_GUI Guideline_v1.1_140709.ppt +Page No. 104 +style : Text Input Field, pin style +Summmary: This style of entry is to get middle-aligned text. +***************************************************************************************/ +group { name: "elm/entry/base-single/input.field.pin"; + alias: "elm/entry/base/input.field.pin"; + inherit: "elm/entry/base-single/input.field"; + parts { + part { name: "pad.left"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 18 5; + max: 18 5; + fixed: 1 1; + align: 0.0 0.0; + } + } + part { name: "pad.right"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 18 5; + max: 18 5; + fixed: 1 1; + align: 1.0 1.0; + } + } + part { name: "base_highlight"; + before: "elm.text"; + scale: 1; + description { state: "default" 0.0; + image { + normal: "search_searchbar_bg_nor.png"; + border: 5 5 5 5; + border_scale: 1; + } + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + image.normal: "search_searchbar_bg_foc.png"; + } + description { state: "over" 0.0; + inherit: "default" 0.0; + image.normal: "search_searchbar_bg_foc.png"; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + image.normal: "search_searchbar_bg_nor.png"; + } + description { state: "highlight" 0.0; + inherit: "default" 0.0; + image.normal: "search_searchbar_bg_foc.png"; + } + description { state: "normal" 0.0; + inherit: "default" 0.0; + image.normal: "search_searchbar_bg_nor.png"; + } + } + part { name: "elm.text"; + entry_mode: EDITABLE; + select_mode: EXPLICIT; + cursor_mode: UNDER; + multiline: 0; + scale: 1; + description { state: "default" 0.0; + rel1.to: "pad.left"; + rel1.relative: 1.0 1.0; + rel2.to: "pad.right"; + rel2.relative: 0.0 0.0; + text { + style: "entry_pin_textblock_style"; + min: 1 1; + ellipsis: -1; + max: 0 0; + } + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + text { + style: "entry_pin_textblock_disabled_style"; + } + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + text { + style: "entry_pin_textblock_selected_style"; + min: 0 1; + } + } + description { state: "enabled" 0.0; + inherit: "default" 0.0; + text { + style: "entry_pin_textblock_style"; + min: 0 1; + } + } + } + } + programs { + program { name: "disable"; + target: "base_highlight"; + } + program { name: "select"; + target: "base_highlight"; + } + program { name: "over"; + signal: "elm,state,mouse,in"; source: "elm"; + action: STATE_SET "over" 0.0; + target: "base_highlight"; + } + program { name: "enable"; + target: "base_highlight"; + } + program { name: "go_active"; + target: "base_highlight"; + } + program { name: "go_passive"; + target: "base_highlight"; + } + program { name: "highlight_show"; + target: "base_highlight"; + } + program { name: "highlight_hide"; + target: "base_highlight"; + } + } +} + +/***************************************************************************************** +Document: Tizen TV_General Guide_GUI Guideline_v1.1_140709.ppt +Page No. 104 +style : Text Input Field, pin style, password mode +Summmary: This style of entry is to get middle-aligned text in password mode. +***************************************************************************************/ +group { name: "elm/entry/base-password/input.field.pin"; + inherit: "elm/entry/base-single/input.field.pin"; + parts { + part { name: "elm.text"; + entry_mode: PASSWORD; + select_mode: EXPLICIT; + cursor_mode: UNDER; + multiline: 0; + scale: 1; + source: "elm/entry/selection/input.field"; + source4: "elm/entry/cursor/input.field"; + source5: "elm/entry/anchor/input.field"; + description { state: "default" 0.0; + text { + style: "entry_pin_textblock_style"; + min: 1 1; + ellipsis: -1; + max: 0 0; + } + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + text { + style: "entry_pin_textblock_disabled_style"; + } + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + text { + style: "entry_pin_textblock_selected_style"; + min: 0 1; + } + } + description { state: "enabled" 0.0; + inherit: "default" 0.0; + text { + style: "entry_pin_textblock_style"; + min: 0 1; + } + } + } + } +} + +/***************************************************************************************** +Document: Tizen TV_General Guide_GUI Guideline_v1.1_140709.ppt +Page No. 105 +style: Text Input Field Small +*******************************************************************************************/ +group { name: "elm/entry/base-single/input.field.small"; + inherit: "elm/entry/base/input.field"; + alias: "elm/entry/base-single/input.field.small.icon"; + parts { + part { name: "elm.guide"; type: TEXTBLOCK; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1.to: "elm.text"; + rel2.to: "elm.text"; + text { + style: "entry_single_small_textblock_guide_style"; + min: 0 1; + } + } + description { state: "hidden" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "elm.text"; + scale: 1; + entry_mode: EDITABLE; + select_mode: DEFAULT; + cursor_mode: BEFORE; + multiline: 0; + source: "elm/entry/selection/input.field"; + source4: "elm/entry/cursor/input.field.small"; + source5: "elm/entry/anchor/input.field"; + description { state: "default" 0.0; + color: 61 61 61 127; + text { + style: "entry_single_small_textblock_style"; + min: 1 1; + max: 0 0; + align: 0.0 0.5; + ellipsis: -1; + } + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + text { + style: "entry_single_small_textblock_disabled_style"; + } + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + color: 61 61 61 255; + text { + style: "entry_single_small_textblock_selected_style"; + min: 0 1; + } + } + description { state: "enabled" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + text { + style: "entry_single_small_textblock_style"; + min: 0 1; + } + } + } + } +} + +/******************************************************************************************* +Document: Tizen TV_General Guide_GUI Guideline_v1.0_140430_1.ppt +Page No. 81, +style : text input field +PROMPT +********************************************************************************************/ +group { name: "elm/entry/cursor/input.field"; + parts { + part { name: "base"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + } + } + part { name: "cursor"; type: RECT; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + min: 2 36; + max: 2 36; + fixed: 1 1; + color: DEFAULT_COLOR; + visible: 0; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + } + programs { + program { name: "blink"; + action: STATE_SET "visible" 0.0; + in: 0.4 0.0; + target: "cursor"; + after: "blink2"; + } + program { name: "blink2"; + action: STATE_SET "default" 0.0; + in: 0.4 0.0; + target: "cursor"; + after: "blink"; + } + program { name: "focused"; + signal: "elm,action,focus"; source: "elm"; + after: "blink"; + } + program { name: "noblink"; + action: ACTION_STOP; + target: "blink"; + target: "blink2"; + after: "noblink2"; + } + program { name: "noblink2"; + action: STATE_SET "default" 0.0; + target: "cursor"; + } + program { name: "unfocused"; + signal: "elm,action,unfocus"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "cursor"; + after: "noblink"; + } + } +} + +/******************************************************************************************* +Document: Tizen TV_General Guide_GUI Guideline_v1.0_140430_1.ppt +Page No. 83, +style : text input field small +PROMPT +********************************************************************************************/ +group { name: "elm/entry/cursor/input.field.small"; + inherit: "elm/entry/cursor/input.field"; + parts { + part { name: "base"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + } + } + part { name: "cursor"; type: RECT; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + min: 2 26; + max: 2 26; + fixed: 1 1; + color: DEFAULT_COLOR; + visible: 0; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + } +} +//Selection default used as source. +group { name: "elm/entry/selection/input.field"; + parts { + part { name: "bg"; type: RECT; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + color: 128 128 128 128; + } + } + } +} + +//Anchor default used as source. +group { name: "elm/entry/anchor/input.field"; + parts { + part { name: "bg"; type: RECT; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + color: 128 0 0 64; + } + } + } +} +//Mixed wrap +group { name: "elm/entry/base-mixedwrap/input.field"; + inherit: "elm/entry/base/input.field"; + parts { + part { name: "elm.guide"; type: TEXTBLOCK; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1.to: "elm.text"; + rel2.to: "elm.text"; + text { + style: "entry_textblock_guide_style_mixedwrap"; + min: 0 1; + align: 0.0 0.5; + } + } + description { state: "hidden" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "elm.text"; + description { state: "default" 0.0; + fixed: 1 1; + text { + style: "entry_textblock_style_mixedwrap"; + min: 0 1; + align: 0.0 0.5; + } + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + text { + style: "entry_textblock_disabled_style_mixedwrap"; + min: 0 1; + } + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + text { + style: "entry_textblock_selected_style_mixedwrap"; + min: 0 1; + } + } + description { state: "enabled" 0.0; + inherit: "default" 0.0; + text { + style: "entry_textblock_style_mixedwrap"; + min: 0 1; + } + } + } + } +} +//Char wrap +group { name: "elm/entry/base-charwrap/input.field"; + inherit: "elm/entry/base/input.field"; + parts { + part { name: "elm.guide"; type: TEXTBLOCK; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1.to: "elm.text"; + rel2.to: "elm.text"; + text { + style: "entry_textblock_guide_style_charwrap"; + min: 0 1; + align: 0.0 0.5; + } + } + description { state: "hidden" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "elm.text"; + scale: 1; + description { state: "default" 0.0; + fixed: 1 1; + text { + style: "entry_textblock_style_charwrap"; + min: 0 1; + align: 0.0 0.5; + } + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + text { + style: "entry_textblock_disabled_style_charwrap"; + min: 0 1; + } + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + text { + style: "entry_textblock_selected_style_charwrap"; + min: 0 1; + } + } + description { state: "enabled" 0.0; + inherit: "default" 0.0; + text { + style: "entry_textblock_style_charwrap"; + min: 0 1; + } + } + } + } +} +//No wrap +group { name: "elm/entry/base-nowrap/input.field"; + inherit: "elm/entry/base/input.field"; + parts { + part { name: "elm.guide"; type: TEXTBLOCK; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1.to: "elm.text"; + rel2.to: "elm.text"; + text { + style: "entry_textblock_guide_style"; + min: 0 1; + align: 0.0 0.0; + } + } + description { state: "hidden" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "elm.text"; + scale: 1; + description { state: "default" 0.0; + text { + style: "entry_textblock_style"; + min: 1 1; + ellipsis: -1; + align: 0.0 0.0; + } + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + text { + style: "entry_textblock_disabled_style"; + min: 0 1; + } + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + text { + style: "entry_textblock_selected_style"; + min: 0 1; + } + } + description { state: "enabled" 0.0; + inherit: "default" 0.0; + text { + style: "entry_textblock_style"; + min: 0 1; + } + } + } + } +} + +/************************************************************************* +Doc: Tizen TV_General Guide_GUI Guideline_v1.0_140709.ppt page:93 +**************************************************************************/ + +#define ENTRY_SOUND_PROGRAM \ + program { name: "touch_snd"; \ + signal: "mouse,clicked,1"; \ + source: "elm.text"; \ + script { \ + new st[31]; \ + new Float:vl; \ + get_state(PART:"elm.text", st, 30, vl); \ + if (strcmp(st, "disabled")) \ + run_program(PROGRAM:"touch_sound"); \ + } \ + } \ + program { name: "touch_sound"; \ + action: RUN_PLUGIN "touch_sound"; \ + } + +group { name: "elm/entry/base-single/spinner/vertical"; + alias: "elm/entry/base-single/spinner/vertical_time_picker"; + alias: "elm/entry/base-single/spinner/datetime"; + data.item: "default_font_size" "106"; + styles { + style { name: "entry_single_spinner_vertical_textblock_style"; + base: "font=Tizen:style=Light font_size=106 color=#000000ff align=center"; + tag: "br" ""; + tag: "em" "+ font_style=Oblique"; + tag: "b" "+ font_weight=Bold"; + tag: "link" "+ color=#800 underline=on underline_color=#8008"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sel" "+ backing=on backing_color="ENTRY_PREEDIT_BACKGROUND_COLOR_INC" color="ENTRY_PREEDIT_TEXT_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_TEXT_COLOR_INC; + tag: "preedit_highlight" "+ backing=on backing_color="ENTRY_PREEDIT_HIGHLIGHT_BACKGROUND_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_TEXT_COLOR_INC; + tag: "preedit_sub1" "+ backing=on backing_color="ENTRY_PREEDIT_SUB1_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub2" "+ backing=on backing_color="ENTRY_PREEDIT_SUB2_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub3" "+ backing=on backing_color="ENTRY_PREEDIT_SUB3_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub4" "+ backing=on backing_color="ENTRY_PREEDIT_SUB4_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + } + style { name: "entry_single_spinner_vertical_textblock_focused_style"; + base: "font=Tizen:style=Light font_size=106 color=#000000ff align=center"; + tag: "br" ""; + tag: "em" "+ font_style=Oblique"; + tag: "b" "+ font_weight=Bold"; + tag: "link" "+ color=#800 underline=on underline_color=#8008"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sel" "+ backing=on backing_color="ENTRY_PREEDIT_BACKGROUND_COLOR_INC" color="ENTRY_PREEDIT_TEXT_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_TEXT_COLOR_INC; + tag: "preedit_highlight" "+ backing=on backing_color="ENTRY_PREEDIT_HIGHLIGHT_BACKGROUND_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_TEXT_COLOR_INC; + tag: "preedit_sub1" "+ backing=on backing_color="ENTRY_PREEDIT_SUB1_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub2" "+ backing=on backing_color="ENTRY_PREEDIT_SUB2_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub3" "+ backing=on backing_color="ENTRY_PREEDIT_SUB3_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub4" "+ backing=on backing_color="ENTRY_PREEDIT_SUB4_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + } + style { name: "entry_single_spinner_vertical_textblock_disabled_style"; + base: "font=Tizen:style=Light font_size=106 color=#000000a3 align=center"; + tag: "br" ""; + tag: "em" "+ font_style=Oblique"; + tag: "b" "+ font_weight=Bold"; + tag: "link" "+ color=#800 underline=on underline_color=#8008"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sel" "+ backing=on backing_color="ENTRY_PREEDIT_BACKGROUND_COLOR_INC" color="ENTRY_PREEDIT_TEXT_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_TEXT_COLOR_INC; + tag: "preedit_highlight" "+ backing=on backing_color="ENTRY_PREEDIT_HIGHLIGHT_BACKGROUND_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_TEXT_COLOR_INC; + tag: "preedit_sub1" "+ backing=on backing_color="ENTRY_PREEDIT_SUB1_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub2" "+ backing=on backing_color="ENTRY_PREEDIT_SUB2_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub3" "+ backing=on backing_color="ENTRY_PREEDIT_SUB3_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub4" "+ backing=on backing_color="ENTRY_PREEDIT_SUB4_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + } + style { name: "entry_single_spinner_vertical_textblock_guide_style"; + base: "font=Tizen:style=Light font_size=106 color=#000000a3 align=center"; + tag: "br" ""; + tag: "em" "+ font_style=Oblique"; + tag: "b" "+ font_weight=Bold"; + tag: "link" "+ color=#800 underline=on underline_color=#8008"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sel" "+ backing=on backing_color="ENTRY_PREEDIT_BACKGROUND_COLOR_INC" color="ENTRY_PREEDIT_TEXT_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_TEXT_COLOR_INC; + tag: "preedit_highlight" "+ backing=on backing_color="ENTRY_PREEDIT_HIGHLIGHT_BACKGROUND_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_TEXT_COLOR_INC; + tag: "preedit_sub1" "+ backing=on backing_color="ENTRY_PREEDIT_SUB1_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub2" "+ backing=on backing_color="ENTRY_PREEDIT_SUB2_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub3" "+ backing=on backing_color="ENTRY_PREEDIT_SUB3_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub4" "+ backing=on backing_color="ENTRY_PREEDIT_SUB4_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + } + } + data { + item: context_menu_orientation "horizontal"; + } + parts { + part { name: "elm.guide"; + type: TEXTBLOCK; + mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + fixed: 1 1; + rel1.to: "elm.text"; + rel2.to: "elm.text"; + text { + style: "entry_single_spinner_vertical_textblock_guide_style"; + min: 0 1; + max: 0 0; + align: 0.0 0.5; + } + } + description { state: "hidden" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "elm.text"; + type: TEXTBLOCK; + mouse_events: 1; + scale: 1; + entry_mode: EDITABLE; + select_mode: EXPLICIT; + cursor_mode: BEFORE; + multiline: 0; + source: "elm/entry/selection/input.field"; // selection under + source4: "elm/entry/cursor/input.field"; // cursorover + source5: "elm/entry/anchor/input.field"; // anchor under + description { state: "default" 0.0; + text { + style: "entry_single_spinner_vertical_textblock_style"; + min: 1 1; + max: 0 0; + align: 0.0 0.5; + } + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + text { + style: "entry_single_spinner_vertical_textblock_focused_style"; + } + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + text { + style: "entry_single_spinner_vertical_textblock_disabled_style"; + } + } + } + } + programs { + program { name: "action_focus"; + signal: "elm,action,focus"; + source: "elm"; + action: STATE_SET "focused" 0.0; + target: "elm.text"; + } + program { name: "action_unfocus"; + signal: "elm,action,unfocus"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + } + program { name: "focus"; + signal: "load"; + source: ""; + action: FOCUS_SET; + target: "elm.text"; + } + program { name: "disable"; + signal: "elm,state,disabled"; + source: "elm"; + action: STATE_SET "disabled" 0.0; + target: "elm.text"; + } + program { name: "enable"; + signal: "elm,state,enabled"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + } + program { name: "gdisable"; + signal: "elm,guide,disabled"; + source: "elm"; + action: STATE_SET "hidden" 0.0; + target: "elm.guide"; + } + program { name: "genable"; + signal: "elm,guide,enabled"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.guide"; + } + ENTRY_SOUND_PROGRAM + } +} + +group { name: "elm/entry/base-single/spinner/vertical_date_picker"; + inherit: "elm/entry/base-single/spinner/vertical"; + data.item: "default_font_size" "90"; + styles { + style { name: "entry_single_spinner_vertical_date_picker_textblock_style"; + base: "font=TizenSans:style=Light font_size=90 color=#000000ff align=center text_class=tizen"; + tag: "br" ""; + tag: "em" "+ font_style=Oblique"; + tag: "b" "+ font_weight=Bold"; + tag: "link" "+ color=#800 underline=on underline_color=#8008"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sel" "+ backing=on backing_color="ENTRY_PREEDIT_BACKGROUND_COLOR_INC" color="ENTRY_PREEDIT_TEXT_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_TEXT_COLOR_INC; + tag: "preedit_highlight" "+ backing=on backing_color="ENTRY_PREEDIT_HIGHLIGHT_BACKGROUND_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_TEXT_COLOR_INC; + tag: "preedit_sub1" "+ backing=on backing_color="ENTRY_PREEDIT_SUB1_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub2" "+ backing=on backing_color="ENTRY_PREEDIT_SUB2_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub3" "+ backing=on backing_color="ENTRY_PREEDIT_SUB3_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub4" "+ backing=on backing_color="ENTRY_PREEDIT_SUB4_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + } + style { name: "entry_single_spinner_vertical_date_picker_textblock_focused_style"; + base: "font=TizenSans:style=Light font_size=90 color=#000000ff align=center text_class=tizen"; + tag: "br" ""; + tag: "em" "+ font_style=Oblique"; + tag: "b" "+ font_weight=Bold"; + tag: "link" "+ color=#800 underline=on underline_color=#8008"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sel" "+ backing=on backing_color="ENTRY_PREEDIT_BACKGROUND_COLOR_INC" color="ENTRY_PREEDIT_TEXT_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_TEXT_COLOR_INC; + tag: "preedit_highlight" "+ backing=on backing_color="ENTRY_PREEDIT_HIGHLIGHT_BACKGROUND_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_TEXT_COLOR_INC; + tag: "preedit_sub1" "+ backing=on backing_color="ENTRY_PREEDIT_SUB1_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub2" "+ backing=on backing_color="ENTRY_PREEDIT_SUB2_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub3" "+ backing=on backing_color="ENTRY_PREEDIT_SUB3_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub4" "+ backing=on backing_color="ENTRY_PREEDIT_SUB4_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + } + style { name: "entry_single_spinner_vertical_date_picker_textblock_disabled_style"; + base: "font=TizenSans:style=Light font_size=90 color=#000000a3 align=center text_class=tizen"; + tag: "br" ""; + tag: "em" "+ font_style=Oblique"; + tag: "b" "+ font_weight=Bold"; + tag: "link" "+ color=#800 underline=on underline_color=#8008"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sel" "+ backing=on backing_color="ENTRY_PREEDIT_BACKGROUND_COLOR_INC" color="ENTRY_PREEDIT_TEXT_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_TEXT_COLOR_INC; + tag: "preedit_highlight" "+ backing=on backing_color="ENTRY_PREEDIT_HIGHLIGHT_BACKGROUND_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_TEXT_COLOR_INC; + tag: "preedit_sub1" "+ backing=on backing_color="ENTRY_PREEDIT_SUB1_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub2" "+ backing=on backing_color="ENTRY_PREEDIT_SUB2_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub3" "+ backing=on backing_color="ENTRY_PREEDIT_SUB3_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub4" "+ backing=on backing_color="ENTRY_PREEDIT_SUB4_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + } + style { name: "entry_single_spinner_vertical_date_picker_textblock_guide_style"; + base: "font=TizenSans:style=Light font_size=90 color=#000000a3 wrap=none align=center left_margin=1 right_margin=3 text_class=tizen ellipsis=1.0"; + tag: "br" ""; + tag: "em" "+ font_style=Oblique"; + tag: "b" "+ font_weight=Bold"; + tag: "link" "+ color=#800 underline=on underline_color=#8008"; + tag: "hilight" "+ font_weight=Bold"; + tag: "preedit" "+ underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sel" "+ backing=on backing_color="ENTRY_PREEDIT_BACKGROUND_COLOR_INC" color="ENTRY_PREEDIT_TEXT_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_TEXT_COLOR_INC; + tag: "preedit_highlight" "+ backing=on backing_color="ENTRY_PREEDIT_HIGHLIGHT_BACKGROUND_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_TEXT_COLOR_INC; + tag: "preedit_sub1" "+ backing=on backing_color="ENTRY_PREEDIT_SUB1_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub2" "+ backing=on backing_color="ENTRY_PREEDIT_SUB2_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub3" "+ backing=on backing_color="ENTRY_PREEDIT_SUB3_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + tag: "preedit_sub4" "+ backing=on backing_color="ENTRY_PREEDIT_SUB4_COLOR_INC" underline=on underline_color="ENTRY_PREEDIT_UNDERLINE_COLOR_INC; + } + } + parts { + part { name: "elm.guide"; + type: TEXTBLOCK; + mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + text { + style: "entry_single_spinner_vertical_date_picker_textblock_guide_style"; + min: 0 1; + max: 0 0; + align: 0.0 0.5; + } + } + description { state: "hidden" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "elm.text"; + type: TEXTBLOCK; + mouse_events: 1; + scale: 1; + entry_mode: EDITABLE; + select_mode: EXPLICIT; + cursor_mode: BEFORE; + multiline: 0; + source: "elm/entry/selection/input.field"; // selection under + source4: "elm/entry/cursor/input.field"; // cursorover + source5: "elm/entry/anchor/input.field"; // anchor under + description { state: "default" 0.0; + min: 206 188; + text { + style: "entry_single_spinner_vertical_date_picker_textblock_style"; + } + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + text { + style: "entry_single_spinner_vertical_date_picker_textblock_focused_style"; + } + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + text { + style: "entry_single_spinner_vertical_date_picker_textblock_disabled_style"; + } + } + } + } +} + +#undef DEFAULT_COLOR diff --git a/ElmSharp/theme/tv/widgets/gengrid.edc b/ElmSharp/theme/tv/widgets/gengrid.edc new file mode 100644 index 0000000..bb5cd53 --- /dev/null +++ b/ElmSharp/theme/tv/widgets/gengrid.edc @@ -0,0 +1,1144 @@ +/* + * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved + * + * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/***************************************************************************** +Tizen TV_General Guide_GUI Guideline_v1.1_140709.ppt 38 +******************************************************************************/ + +group { name: "elm/gengrid/item/default/default"; + data.item: "texts" "elm.text"; + data.item: "contents" "elm.swallow.icon"; + data.item: "focus_highlight" "on"; + images { + image: "content_innershadow.png" COMP; + } + parts { + part { name: "base"; type: RECT; + scale: 1; + description { state: "default" 0.0; + color: 0 0 0 179; + rel1 { + relative: 1.0 1.0; + to: "top.left.pad"; + } + rel2 { + relative: 0.0 0.0; + to: "bottom.right.pad"; + } + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + color: 147 170 0 255; + } + } + part { name: "top.left.pad"; type: SPACER; + scale:1 ; + description { state: "default" 0.0; + rel2.relative: 0.0 0.0; + align: 0.0 0.0; + min: 20 20; + } + } + part { name: "bottom.right.pad"; type: SPACER; + scale:1 ; + description { state: "default" 0.0; + rel1.relative: 1.0 1.0; + align: 1.0 1.0; + min: 20 20; + } + } + part { name: "top.pad"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + rel1.to: "base"; + rel2 { + relative: 0.0 0.0; + to: "base"; + } + align: 0.0 0.0; + min: 0 8; + } + } + part { name: "left.pad"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + rel1.to: "base"; + rel2 { + relative: 0.0 0.0; + to: "base"; + } + align: 0.0 0.0; + min: 8 0; + } + } + part { name: "right.pad"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + rel1 { + relative: 1.0 1.0; + to: "base"; + } + rel2.to: "base"; + align: 1.0 1.0; + min: 8 0; + } + } + part { name: "text.base"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 0 60; + rel1 { + relative: 0.0 1.0; + to: "base"; + } + rel2.to: "base"; + align: 0.5 1.0; + } + } + part { name: "elm.text"; type: TEXT; + scale: 1; + description { state: "default" 0.0; + color: 211 211 211 255; + text { + font: "Tizen Sans"; + size: 26; + min: 1 1; + ellipsis: -1; + } + rel1.to: "text.base"; + rel2.to: "text.base"; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + } + part { name: "elm.swallow.icon"; type: SWALLOW; + scale: 1; + clip_to: "clip"; + description { state: "default" 0.0; + rel1.to: "base"; + rel2 { + relative: 1.0 0.0; + to_x: "base"; + to_y: "text.base"; + } + } + } + part { name: "icon.shadow"; + scale: 1; + description { state: "default" 0.0; + rel1.to: "clip"; + rel2.to: "clip"; + image { + normal: "content_innershadow.png"; + border: 5 5 5 5; + } + visible: 0; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { name: "clip"; type: RECT; + scale: 1; + description { state: "default" 0.0; + rel1.to: "base"; + rel2.to: "base"; + } + description { state: "focused" 0.0; + rel1 { + relative: 1.0 1.0; + to_x: "left.pad"; + to_y: "top.pad"; + } + rel2 { + relative: 0.0 0.0; + to_x: "right.pad"; + to_y: "text.base"; + } + } + } + } + programs { + program { name: "focus"; + signal: "elm,state,focused"; + source: "elm"; + action: STATE_SET "focused" 0.0; + target: "clip"; + target: "elm.text"; + target: "base"; + target: "icon.shadow"; + transition: LINEAR 0.1; + } + program { name: "unfocus"; + signal: "elm,state,unfocused"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "clip"; + target: "elm.text"; + target: "base"; + target: "icon.shadow"; + transition: LINEAR 0.1; + } + } +} + +/***************************************************************************** +Tizen TV_General Guide_GUI Guideline_v1.1_140709.ppt 39 +******************************************************************************/ + +group { name: "elm/gengrid/item/video_preview/default"; + inherit: "elm/gengrid/item/default/default"; + data.item: "texts" "elm.text elm.text.time"; + data.item: "contents" "elm.swallow.icon"; + images { + image: "round_rectangle_4X4.png" COMP; + image: "ico_default_video_180.png" COMP; + } + parts { + part { name: "rect"; + scale: 1; + description { state: "default" 0.0; + min: 120 120; + rel1 { + relative: 0.5 0.5; + to: "elm.swallow.icon"; + } + rel2 { + relative: 0.5 0.5; + to: "elm.swallow.icon"; + } + color: 100 100 100 100; + image { + normal: "round_rectangle_4X4.png"; + border: 4 4 4 4; + } + } + } + part { name: "video.icon"; + scale: 1; + description { state: "default" 0.0; + rel1.to: "rect"; + rel2.to: "rect"; + image.normal: "ico_default_video_180.png"; + } + } + part { name: "time.pad"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + rel1 { + relative: 1.0 0.0; + to: "base"; + } + rel2 { + relative: 1.0 0.0; + to: "base"; + } + align: 1.0 0.0; + min: 21 21; + } + } + part { name: "time.bg"; type: RECT; + scale: 1; + clip_to: "clip"; + description { state: "default" 0.0; + rel1.to: "base"; + rel2 { + relative: 1.0 0.0; + to: "base"; + } + align: 0.5 0.0; + min: 0 54; + color: 127 127 127 127; + } + } + part { name: "elm.text.time"; type: TEXT; + scale: 1; + description { state: "default" 0.0; + text { + font: "Tizen Sans"; + size: 22; + min: 1 1; + ellipsis: -1; + } + rel1 { + relative: 0.0 1.0; + to: "time.pad"; + } + rel2 { + relative: 0.0 1.0; + to: "time.pad"; + } + align: 1.0 0.0; + color: 200 200 200 200; + } + } + } +} + +/***************************************************************************** +Tizen TV_General Guide_GUI Guideline_v1.1_140709.ppt 40 +******************************************************************************/ + +group { name: "elm/gengrid/item/folder/default"; + inherit: "elm/gengrid/item/default/default"; + data.item: "texts" "elm.text elm.text2"; + data.item: "contents" ""; + images { + image: "ico_folder.png" COMP; + } + parts { + part { name: "base"; type: RECT; + scale: 1; + description { state: "focused" 0.0; + color: 126 128 255 255; + } + } + part { name: "icon.bg"; type: RECT; + scale: 1; + clip_to: "clip"; + description { state: "default" 0.0; + color: 0 0 0 255; + rel1.to: "elm.swallow.icon"; + rel2.to: "elm.swallow.icon"; + } + } + part { name: "folder.icon"; + scale: 1; + description { state: "default" 0.0; + min: 200 200; + max: 200 200; + rel1 { + relative: 0.5 0.5; + to: "icon.bg"; + } + rel2 { + relative: 0.5 0.5; + to: "icon.bg"; + } + image { + normal: "ico_folder.png"; + } + } + } + part { name: "text.base"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 0 80; + } + } + part { name: "elm.text"; type: TEXT; + scale: 1; + description { state: "default" 0.0; + color: 211 211 211 255; + text { + font: "Tizen Sans"; + size: 26; + min: 1 1; + ellipsis: -1; + } + rel1 { + relative: 0.5 0.5; + to: "text.base"; + } + rel2 { + relative: 0.5 0.5; + to: "text.base"; + } + align: 0.5 1.0; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + } + part { name: "elm.text2"; type: TEXT; + scale: 1; + description { state: "default" 0.0; + color: 128 128 128 255; + text { + font: "Tizen Sans"; + size: 22; + min: 1 1; + ellipsis: -1; + } + rel1 { + relative: 0.5 0.5; + to: "text.base"; + } + rel2 { + relative: 0.5 0.5; + to: "text.base"; + } + align: 0.5 0.0; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + } + } + programs { + program { name: "focus2"; + signal: "elm,state,focused"; + source: "elm"; + action: STATE_SET "focused" 0.0; + target: "elm.text2"; + } + program { name: "unfocus2"; + signal: "elm,state,unfocused"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.text2"; + } + } +} + +/***************************************************************************** +Tizen TV_General Guide_GUI Guideline_v1.1_140709.ppt 41 +******************************************************************************/ + +group { name: "elm/gengrid/item/default_2text/default"; + inherit: "elm/gengrid/item/default/default"; + data.item: "texts" "elm.text elm.text2"; + data.item: "contents" "elm.swallow.icon"; + parts { + part { name: "base"; type: RECT; + scale: 1; + description { state: "focused" 0.0; + color: 255 168 0 255; + } + } + part { name: "text.base"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 0 100; + } + } + part { name: "elm.text"; type: TEXT; + scale: 1; + description { state: "default" 0.0; + color: 211 211 211 255; + text { + font: "Tizen Sans"; + size: 30; + min: 1 1; + ellipsis: -1; + } + rel1 { + relative: 0.5 0.5; + to: "text.base"; + } + rel2 { + relative: 0.5 0.5; + to: "text.base"; + } + align: 0.5 1.0; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + } + part { name: "elm.text2"; type: TEXT; + scale: 1; + description { state: "default" 0.0; + color: 128 128 128 255; + text { + font: "Tizen Sans"; + size: 22; + min: 1 1; + ellipsis: -1; + } + rel1 { + relative: 0.5 0.5; + to: "text.base"; + } + rel2 { + relative: 0.5 0.5; + to: "text.base"; + } + align: 0.5 0.0; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + } + } + programs { + program { name: "focus2"; + signal: "elm,state,focused"; + source: "elm"; + action: STATE_SET "focused" 0.0; + target: "elm.text2"; + } + program { name: "unfocus2"; + signal: "elm,state,unfocused"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.text2"; + } + } +} + +#define DEFAULT 1 +#define SELECTED 2 +#define FOCUSED 3 +#define DISABLED 4 +/***************************************************************************** +Document: Tizen TV_General Guide_GUI Guideline_v1.0_140508_1.ppt : 36 and 11 +Description: Gengrid for single line text +******************************************************************************/ +group { name: "elm/gengrid/item/1text.1icon.bg/default"; + data.item: "texts" "elm.text elm.text.1"; + data.item: "contents" "elm.swallow.icon elm.swallow.icon_foc elm.swallow.end"; + images { + image: "bt_bases.png" COMP; + image: "elipse_114.png" COMP; + } + script { + public is_selected, is_enabled, is_focused, is_init, cur_state; + + public init_values() { + if(get_int(is_init)==0) + { + set_int(is_enabled, 1); + set_int(is_focused, 1); + set_int(is_init, 1); + set_int(cur_state, -1); + } + } + public set_states() { + new enab; + new foc; + new sel; + new c_state; + enab = get_int(is_enabled); + foc = get_int(is_focused); + sel = get_int(is_selected); + c_state = get_int(cur_state); + if(enab == 0) + { + if(c_state!=DISABLED) + run_program(PROGRAM:"do_disable"); + } + else + { + if(foc == 1) + { + if(c_state!=FOCUSED) + run_program(PROGRAM:"do_focus"); + } + else if(sel == 1) + { + if(c_state!=SELECTED) + run_program(PROGRAM:"do_select"); + } + else + { + if(c_state!=DEFAULT) + run_program(PROGRAM:"do_default"); + } + } + } + } + parts { + part { name: "event"; type: RECT; + repeat_events: 1; + description { + state: "default" 0.0; + color: 0 0 0 0; + } + } + part { name: "reorder_bg"; mouse_events: 0; + description { state: "default" 0.0; + visible: 0; + color: 255 255 255 0; + image { + normal: "bt_bases.png"; + border: 6 6 6 6; + } + } + description { state: "enabled" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 255 255 255 255; + } + } + part { name: "base"; type: RECT; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + color: 0 0 0 77; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + visible: 0; + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + visible: 0; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 0 0 0 77; + } + } + part { name: "base_colored"; type: RECT; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + color: 0 0 0 0; + visible: 0; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + color_class: "open_ux_theme"; + visible: 1; + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + color_class: "open_ux_theme_alpha"; + visible: 1; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + } + } + part { name: "bg"; type: RECT; mouse_events: 0; + clip_to: "base"; + description { state: "default" 0.0; + } + } + part { name: "bg_color_clipped"; type: RECT; mouse_events: 0; + clip_to: "base_colored"; + description { state: "default" 0.0; + } + } + part { name: "elm.swallow.pad"; type: SWALLOW; + description { state: "default" 0.0; + fixed: 1 0; + min: 25 25; + align: 0.0 0.5; + rel1 { + relative: 0.0 1.0; + } + rel2 { + to_y: "elm.text"; + relative: 0.0 0.0; + } + } + } + part { name: "pad.top"; type: SPACER; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + min: 0 30; + max: 9999 30; + rel1.to: "bg"; + rel2.to: "bg"; + align: 0.5 0.0; + } + } + part { name: "pad.bottom"; type: SPACER; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + min: 0 25; + max: 9999 25; + rel1.to: "bg"; + rel2.to: "bg"; + align: 0.5 1.0; + } + } + part { name: "pad.left"; type: SPACER; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + min: 20 0; + max: 20 9999; + rel1.to: "bg"; + rel2.to: "bg"; + align: 0.0 0.5; + } + } + part { name: "pad.right"; type: SPACER; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + min: 20 0; + max: 20 9999; + rel1.to: "bg"; + rel2.to: "bg"; + align: 1.0 0.5; + } + } + part { name: "pad.middle"; type: SPACER; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + min: 0 3; + max: 9999 3; + rel1.to_x: "pad.left"; + rel1.to_y: "elm.text"; + rel1.relative: 1.0 0.0; + rel2.to_x: "pad.right"; + rel2.to_y: "elm.text"; + rel2.relative: 0.0 0.0; + align: 0.5 1.0; + } + } + part { name: "elm.shadow.icon.bg"; type: PROXY; + description { state: "default" 0.0; + source: "elm.swallow.icon"; + rel1.to: "elm.swallow.icon"; + rel1.offset: 0 3; + rel2.to: "elm.swallow.icon"; + rel2.offset: 0 3; + color: 0 0 0 64; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + source: "elm.swallow.icon_foc"; + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + source: "elm.swallow.icon_foc"; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + } + } + part { name: "elm.image.icon.bg"; type: IMAGE; + clip_to: "disclip"; + description { state: "default" 0.0; + fixed: 1 0; + aspect: 1.0 1.0; + aspect_preference: BOTH; + rel1.to: "elm.swallow.icon"; + rel2.to: "elm.swallow.icon"; + color_class: "open_ux_theme"; + image.normal: "elipse_114.png"; + visible: 0; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + color_class: "open_ux_theme_white"; + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + color_class: "open_ux_theme_white"; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color_class: "open_ux_theme_alpha20"; + } + } + part { name: "elm.swallow.icon"; type: SWALLOW; + clip_to: "disclip"; + description { state: "default" 0.0; + fixed: 1 0; + aspect: 1.0 1.0; + aspect_preference: BOTH; + rel1.to_x: "pad.left"; + rel1.to_y: "pad.top"; + rel1.relative: 1.0 1.0; + rel2.to_x: "pad.right"; + rel2.to_y: "pad.middle"; + rel2.relative: 0.0 0.0; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + visible: 0; + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + visible: 0; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color_class: "open_ux_theme_alpha20"; + } + } + part { name: "elm.swallow.icon_foc"; type: SWALLOW; + clip_to: "disclip"; + description { state: "default" 0.0; + fixed: 1 0; + aspect: 1.0 1.0; + aspect_preference: BOTH; + rel1.to: "elm.swallow.icon"; + rel2.to: "elm.swallow.icon"; + visible: 0; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + visible: 1; + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + visible: 1; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "elm.swallow.end"; + clip_to: "disclip"; type: SWALLOW; + description { state: "default" 0.0; + fixed: 1 0; + align: 1.0 0.0; + aspect: 1.0 1.0; + aspect_preference: HORIZONTAL; + rel1.relative: 1.0 0.0; + rel2.relative: 1.0 1.0; + } + } + part { name: "area_for_text"; type: RECT; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1.to_x: "pad.left"; + rel1.to_y: "pad.top"; + rel1.relative: 1.0 1.0; + rel2.to_x: "pad.right"; + rel2.to_y: "pad.bottom"; + rel2.relative: 0.0 0.0; + align: 0.5 0.5; + color: 255 255 255 0; + } + part { name: "elm.text"; type: TEXT; mouse_events: 0; + effect: SOFT_SHADOW; + scale: 1; + description { state: "default" 0.0; + color: 211 211 211 255; + rel1.relative: 0.0 1.0; + rel2.relative: 1.0 1.0; + align: 0.5 1.0; + text { + font: "Sans"; + size: 23; + min: 0 1; + text_class: "grid_item"; + } + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 255 255 255 51; + } + } + part { name: "elm.text.1"; type: TEXT; mouse_events: 0; + effect: SOFT_SHADOW; + scale: 1; + description { state: "default" 0.0; + color: 211 211 211 255; + rel1.relative: 0.0 1.0; + rel2.relative: 1.0 1.0; + align: 0.5 1.0; + text { + font: "Sans"; + size: 17; + min: 0 1; + text_class: "grid_item"; + } + visible: 0; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 255 255 255 51; + } + } + } + part { name: "disclip"; type: RECT; + description { state: "default" 0.0; + fixed: 1 1; + rel1.to: "base"; + rel2.to: "base"; + color_class: "open_ux_theme_white"; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color_class: "open_ux_theme_alpha20"; + visible: 1; + } + } + part { name: "event_blocker"; type: RECT; mouse_events: 1; + description { state: "default" 0.0; + fixed: 1 1; + color: 0 0 0 0; + visible: 0; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + } + programs { + program { name: "go_focused"; + signal: "elm,state,focused"; source: "elm"; + script { + init_values(); + set_int(is_focused, 1); + set_states(); + } + } + program { name: "go_unfocused"; + signal: "elm,state,unfocused"; source: "elm"; + script { + init_values(); + set_int(is_focused, 0); + set_states(); + } + } + + program { name: "go_active"; + signal: "elm,state,selected"; + source: "elm"; + script { + init_values(); + set_int(is_selected, 1); + set_states(); + } + } + program { name: "go_passive"; + signal: "elm,state,unselected"; + source: "elm"; + script { + init_values(); + set_int(is_selected, 0); + set_states(); + } + } + program { name: "go_disabled"; + signal: "elm,state,disabled"; + source: "elm"; + script { + init_values(); + set_int(is_enabled, 0); + set_states(); + } + } + program { name: "go_enabled"; + signal: "elm,state,enabled"; + source: "elm"; + script { + init_values(); + set_int(is_enabled, 1); + set_states(); + } + } + program { name: "go_reorder_disabled"; + signal: "elm,state,reorder,disabled"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "reorder_bg"; + transition: DECELERATE 0.5; + } + program { name: "go_reorder_enabled"; + signal: "elm,state,reorder,enabled"; + source: "elm"; + action: STATE_SET "enabled" 0.0; + target: "reorder_bg"; + transition: DECELERATE 0.5; + } + program { name: "do_default"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.1; + target: "base"; + target: "base_colored"; + target: "elm.text"; + target: "elm.text.1"; + target: "elm.shadow.icon.bg"; + target: "elm.image.icon.bg"; + target: "elm.swallow.icon"; + target: "elm.swallow.icon_foc"; + target: "disclip"; + target: "event_blocker"; + } + + program { name: "do_focus"; + action: STATE_SET "focused" 0.0; + target: "base"; + target: "base_colored"; + target: "elm.text"; + target: "elm.text.1"; + target: "elm.shadow.icon.bg"; + target: "elm.image.icon.bg"; + target: "elm.swallow.icon"; + target: "elm.swallow.icon_foc"; + target: "disclip"; + target: "event_blocker"; + } + + program { name: "do_select"; + action: STATE_SET "selected" 0.0; + target: "base"; + target: "base_colored"; + target: "elm.text"; + target: "elm.text.1"; + target: "elm.shadow.icon.bg"; + target: "elm.image.icon.bg"; + target: "elm.swallow.icon"; + target: "elm.swallow.icon_foc"; + target: "disclip"; + target: "event_blocker"; + } + + program { name: "do_disable"; + action: STATE_SET "disabled" 0.0; + target: "base"; + target: "base_colored"; + target: "elm.text"; + target: "elm.text.1"; + target: "elm.shadow.icon.bg"; + target: "elm.image.icon.bg"; + target: "elm.swallow.icon"; + target: "elm.swallow.icon_foc"; + target: "disclip"; + target: "event_blocker"; + } + } +} + +//Start +#define DEFAULT 1 +#define SELECTED 2 +#define FOCUSED 3 +#define DISABLED 4 +/***************************************************************************** +Document: Tizen TV_General Guide_GUI Guideline_v1.0_140508_1.ppt : 37 and 11 +Description: Gengrid for two line text +******************************************************************************/ +group { name: "elm/gengrid/item/2text.1icon.bg/default"; + inherit: "elm/gengrid/item/1text.1icon.bg/default"; + data.item: "texts" "elm.text elm.text.1"; + data.item: "contents" "elm.swallow.icon elm.swallow.icon_foc elm.swallow.end"; + parts { + part { name: "pad.top"; type: SPACER; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + min: 0 52; + max: 9999 52; + } + } + part { name: "pad.bottom"; type: SPACER; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + min: 0 43; + max: 9999 43; + } + } + part { name: "area_for_text"; type: RECT; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + } + part { name: "elm.text"; type: TEXT; mouse_events: 0; + effect: SOFT_SHADOW; + scale: 1; + description { state: "default" 0.0; + color: 211 211 211 255; + rel1.to: "elm.text.1"; + rel2.to: "elm.text.1"; + rel1.relative: 0.0 0.0; + rel2.relative: 1.0 0.0; + text { + font: "Sans"; + size: 23; + min: 0 1; + text_class: "grid_item"; + } + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 255 255 255 51; + } + } + part { name: "elm.text.1"; type: TEXT; + effect: SOFT_SHADOW; + mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + visible: 1; + color: 134 134 134 255; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + description { state: "selected" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 255 255 255 51; + } + } + } + } +} +#undef DEFAULT 1 +#undef SELECTED 2 +#undef FOCUSED 3 +#undef DISABLED 4 +#undef DEFAULT 1 +#undef SELECTED 2 +#undef FOCUSED 3 +#undef DISABLED 4 diff --git a/ElmSharp/theme/tv/widgets/genlist.edc b/ElmSharp/theme/tv/widgets/genlist.edc new file mode 100644 index 0000000..c40665e --- /dev/null +++ b/ElmSharp/theme/tv/widgets/genlist.edc @@ -0,0 +1,775 @@ +/* + * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved + * + * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/******************************************************************* +Tizen TV_General Guide_GUI Guideline_v1.0_140709.pptx 70 1text +********************************************************************/ +group { "elm/genlist/item/1text/default"; nomouse; program_source: "elm"; + alias: "elm/genlist/item/default/default"; + data.item: "texts" "elm.text"; + data.item: "focus_highlight" "on"; + target_group: "default" "base" "bottom_line" "elm.text"; + target_group: "disabled" "event" "elm.text"; + parts { + GENLIST_BASE(255 255 255 255, 69 143 255 255) + GENLIST_PAD(40, 40, 20, 20) + GENLIST_BOTTOM_LINE(222 222 222 222) + text { "elm.text"; scale; + desc { "default"; + rel1.to: "pad.top.left"; + rel1.relative: 1.0 1.0; + rel2.to: "pad.bottom.right"; + rel2.relative: 0.0 0.0; + color: 89 89 89 255; + text { font: FONT_M; size: 30; + min: 1 1; + ellipsis: -1; + align: 0.0 0.5; + } + } + desc { "focused"; inherit: "default"; + color: 255 255 255 255; + } + desc { "disabled"; inherit: "default"; + color: 255 0 0 255; + } + } + } + programs { + GENLIST_PROGRAMS("default", "disabled") + } +} + +/********************************************************************* +Tizen TV_General Guide_GUI Guideline_v1.0_140709.pptx 70 1text_1icon +**********************************************************************/ +group { "elm/genlist/item/1text_1icon/default"; nomouse; program_source: "elm"; + data.item: "texts" "elm.text"; + data.item: "contents" "elm.swallow.end"; + inherit: "elm/genlist/item/1text/default"; + parts { + text { "elm.text"; scale; + desc { "default"; + rel1.to: "pad.top.left"; + rel1.relative: 1.0 1.0; + rel2.to_x: "pad.center"; + rel2.to_y: "pad.bottom.right"; + rel2.relative: 0.0 0.0; + color: 89 89 89 255; + text { font: FONT_M; size: 30; + min: 1 1; + ellipsis: -1; + align: 0.0 0.5; + } + } + desc { "focused"; inherit: "default"; + color: 255 255 255 255; + } + desc { "disabled"; inherit: "default"; + color: 50 50 50 255; + } + } + swallow { "elm.swallow.end"; mouse; + desc { "default"; + rel1.to_x: "pad.bottom.right"; + rel1.relative: 0.0 0.5; + rel2.to_x: "pad.bottom.right"; + rel2.relative: 0.0 0.5; + min: 40 40; + fixed: 1 1; + align: 1.0 0.5; + } + } + // a padding between elm.text, elm.swallow.end + spacer { "pad.center"; scale; + desc { "default"; + rel1.to_x: "elm.swallow.end"; + rel1.relative: 0.0 0.5; + rel2.to_x: "elm.swallow.end"; + rel2.relative: 0.0 0.5; + fixed: 1 0; + align: 1.0 0.5; + min: 40 0; + } + } + } +} + +/************************************************************************** +Tizen TV_General Guide_GUI Guideline_v1.0_140709.pptx 69 1text_1icon_2 +***************************************************************************/ +group { "elm/genlist/item/1text_1icon_2/default"; nomouse; + data.item: "texts" "elm.text"; + data.item: "contents" "elm.swallow.end"; + inherit: "elm/genlist/item/1text_1icon/default"; + parts { + rect { "base"; scale; + desc { "default"; + color: 0 0 0 0; + hid; + } + desc { "focused"; inherit: "default"; + color: 69 143 255 255; + vis; + } + desc { "selected"; inherit: "default"; + color: 69 143 255 102; + vis; + } + } + GENLIST_PAD(70, 70, 20, 20) + GENLIST_BOTTOM_LINE(255 255 255 25) + + text { "elm.text"; scale; + desc { "default"; + rel1.to: "pad.top.left"; + rel1.relative: 1.0 1.0; + rel2.to_x: "pad.center"; + rel2.to_y: "pad.bottom.right"; + rel2.relative: 0.0 0.0; + color: 255 255 255 204; // 80% + text { font: FONT_M; size: 30; + min: 1 1; + ellipsis: -1; + align: 0.0 0.5; + } + } + desc { "focused"; inherit: "default"; + color: 255 255 255 255; + } + desc { "disabled"; inherit: "default"; + color: 50 50 50 255; + } + } + + // a padding between elm.text, elm.swallow.end + spacer { "pad.center"; scale; + desc { "default"; + rel1.to_x: "elm.swallow.end"; + rel1.relative: 0.0 0.5; + rel2.to_x: "elm.swallow.end"; + rel2.relative: 0.0 0.5; + fixed: 1 0; + align: 1.0 0.5; + min: 30 0; + } + } + } + programs { + GENLIST_PROGRAMS("default", "disabled") + } +} + +/*********************************************************************************************** +Tizen TV_General Guide_GUI Guideline_v1.0_140709.pptx 69 2text +************************************************************************************************/ +group { "elm/genlist/item/2text/default"; nomouse; program_source: "elm"; + data.item: "texts" "elm.text elm.text2"; + inherit: "elm/genlist/item/1text/default"; + target_group: "default2" "base" "bottom_line" "elm.text" "elm.text2"; + target_group: "disabled2" "event" "elm.text" "elm.text2"; + parts { + rect { "base"; scale; + desc { "default"; + color: 0 0 0 0; + hid; + } + desc { "focused"; inherit: "default"; + color: 69 143 255 255; + vis; + } + desc { "selected"; inherit: "default"; + color: 69 143 255 102; + vis; + } + } + GENLIST_PAD(70, 70, 20, 20) + GENLIST_BOTTOM_LINE(255 255 255 25) + + text { "elm.text"; scale; + desc { "default"; + rel1.to: "pad.top.left"; + rel1.relative: 1.0 1.0; + rel2.to_x: "pad.center"; + rel2.to_y: "pad.bottom.right"; + rel2.relative: 0.0 0.0; + color: 255 255 255 204; // 80% + text { font: FONT_M; size: 30; + min: 1 1; + ellipsis: -1; + align: 0.0 0.5; + } + } + desc { "focused"; inherit: "default"; + color: 255 255 255 255; + } + desc { "disabled"; inherit: "default"; + color: 50 50 50 255; + } + } + + text { "elm.text2"; scale; + desc { "default"; + rel1.to_x: "pad.bottom.right"; + rel1.relative: 0.0 0.5; + rel2.to_x: "pad.bottom.right"; + rel2.relative: 0.0 0.5; + align: 1.0 0.5; + color: 255 255 255 204; // 80% + fixed: 1 1; + text { font: FONT_M; size: 30; + min: 1 1; + ellipsis: -1; + align: 1.0 0.5; + } + } + desc { "focused"; inherit: "default"; + color: 255 255 255 255; + } + desc { "disabled"; inherit: "default"; + color: 50 50 50 255; + } + } + + // a padding between elm.text, elm.swallow.end + spacer { "pad.center"; scale; + desc { "default"; + rel1.to_x: "elm.text2"; + rel1.relative: 0.0 0.5; + rel2.to_x: "elm.text2"; + rel2.relative: 0.0 0.5; + fixed: 1 0; + align: 1.0 0.5; + min: 30 0; + } + } + } + programs { + GENLIST_PROGRAMS("default2", "disabled2") + } +} + +/******************************************************************* +Tizen TV_General Guide_GUI Guideline_v1.0_140709.pptx 45 2text_1icon +********************************************************************/ +group { "elm/genlist/item/2text_1icon/default"; nomouse; program_source: "elm"; + data.item: "texts" "elm.text elm.text2"; + data.item: "contents" "elm.swallow.icon"; + data.item: "focus_highlight" "on"; + target_group: "default" "base" "bottom_line" "elm.text" "elm.text2"; + target_group: "disabled" "event" "elm.text" "elm.text2"; + parts { + GENLIST_BASE(42 50 64 255, 69 143 255 255) + GENLIST_PAD(38, 32, 32, 37) + GENLIST_BOTTOM_LINE(222 222 222 222) + swallow { "elm.swallow.icon"; mouse; scale; + desc { "default"; + rel1.to_x: "pad.bottom.right"; + rel1.relative: 0.0 0.5; + rel2.to_x: "pad.bottom.right"; + rel2.relative: 0.0 0.5; + min: 80 80; + fixed: 1 1; + align: 1.0 0.5; + } + } + spacer { "pad.center"; scale; + desc { "default"; + rel1.to_x: "elm.swallow.icon"; + rel1.relative: 0.0 0.0; + rel2.to_x: "elm.swallow.icon"; + rel2.relative: 0.0 1.0; + min: 32 0; + fixed: 1 0; + align: 1.0 0.5; + } + } + text { "elm.text"; scale; + desc { "default"; + rel1.to: "pad.top.left"; + rel1.relative: 1.0 1.0; + rel2.to_x: "pad.center"; + rel2.to_y: "pad.top.left"; + rel2.relative: 0.0 1.0; + fixed: 0 1; + align: 0.5 0.0; + color: 165 167 175 255; + text { font: FONT_M; size: 32; + min: 1 1; + ellipsis: -1; + align: 0.0 0.5; + } + } + desc { "selected"; inherit: "default"; + color: 255 255 255 255; + } + desc { "focused"; inherit: "default"; + color: 255 255 255 255; + } + desc { "disabled"; inherit: "default"; + color: 50 50 50 255; + } + } + text { "elm.text2"; scale; + desc { "default"; + rel1.to: "elm.text"; + rel1.relative: 0.0 1.0; + rel2.to_x: "elm.text"; + rel2.to_y: "pad.bottom.right"; + rel2.relative: 1.0 0.0; + fixed: 0 0; + align: 0.5 0.5; + color: 164 167 174 255; + text { font: FONT_R; size: 22; + min: 1 1; + ellipsis: -1; + align: 0.0 0.5; + } + } + desc { "selected"; inherit: "default"; + color: 255 255 255 255; + } + desc { "focused"; inherit: "default"; + color: 255 255 255 255; + } + desc { "disabled"; inherit: "default"; + color: 50 50 50 255; + } + } + } + programs { + GENLIST_PROGRAMS("default", "disabled") + } +} + +/******************************************************************* +Tizen TV_General Guide_GUI Guideline_v1.0_140709.pptx 46 3text_1icon +********************************************************************/ +group { "elm/genlist/item/3text_1icon/default"; nomouse; program_source: "elm"; + inherit: "elm/genlist/item/2text_1icon/default"; + data.item: "texts" "elm.text elm.text2 elm.text3"; + data.item: "contents" "elm.swallow.icon"; + data.item: "focus_highlight" "on"; + target_group: "default2" "base" "bottom_line" "elm.text" "elm.text2" "elm.text3"; + target_group: "disabled2" "event" "elm.text" "elm.text2" "elm.text3"; + parts { + GENLIST_BASE(42 50 64 255, 69 143 255 255) + GENLIST_PAD(38, 32, 32, 37) + GENLIST_BOTTOM_LINE(222 222 222 222) + text { "elm.text2"; scale; + desc { "default"; + rel1.to: "elm.text"; + rel1.relative: 0.0 1.0; + rel2.to: "elm.text"; + rel2.relative: 1.0 1.0; + fixed: 0 1; + align: 0.5 0.0; + color: 164 167 174 255; + text { font: FONT_R; size: 22; + min: 1 1; + ellipsis: -1; + align: 0.0 0.5; + } + } + desc { "selected"; inherit: "default"; + color: 255 255 255 255; + } + desc { "focused"; inherit: "default"; + color: 255 255 255 255; + } + desc { "disabled"; inherit: "default"; + color: 50 50 50 255; + } + } + text { "elm.text3"; scale; + desc { "default"; + rel1.to: "elm.text2"; + rel1.relative: 0.0 1.0; + rel2.to_x: "elm.text2"; + rel2.to_y: "pad.bottom.right"; + rel2.relative: 1.0 0.0; + fixed: 0 0; + align: 0.5 0.5; + color: 164 167 174 255; + text { font: FONT_R; size: 22; + min: 1 1; + ellipsis: -1; + align: 0.0 0.5; + } + } + desc { "selected"; inherit: "default"; + color: 255 255 255 255; + } + desc { "focused"; inherit: "default"; + color: 255 255 255 255; + } + desc { "disabled"; inherit: "default"; + color: 50 50 50 255; + } + } + } + programs { + GENLIST_PROGRAMS("default2", "disabled2") + } +} + +/******************************************************************* +Tizen TV_General Guide_GUI Guideline_v1.0_140709.pptx 47 4text_1icon +********************************************************************/ +group { "elm/genlist/item/4text_1icon/default"; nomouse; program_source: "elm"; + inherit: "elm/genlist/item/3text_1icon/default"; + data.item: "texts" "elm.text elm.text2 elm.text3 elm.text4"; + data.item: "contents" "elm.swallow.icon"; + data.item: "focus_highlight" "on"; + target_group: "default3" "base" "bottom_line" "elm.text" "elm.text2" "elm.text3" "elm.text4"; + target_group: "disabled3" "event" "elm.text" "elm.text2" "elm.text3" "elm.text4"; + parts { + GENLIST_BASE(42 50 64 255, 69 143 255 255) + GENLIST_PAD(38, 32, 32, 37) + GENLIST_BOTTOM_LINE(222 222 222 222) + text { "elm.text3"; scale; + desc { "default"; + rel1.to: "elm.text2"; + rel1.relative: 0.0 1.0; + rel2.to: "elm.text2"; + rel2.relative: 1.0 1.0; + fixed: 0 1; + align: 0.5 0.0; + color: 164 167 174 255; + text { font: FONT_R; size: 22; + min: 1 1; + ellipsis: -1; + align: 0.0 0.5; + } + } + desc { "selected"; inherit: "default"; + color: 255 255 255 255; + color: 255 255 255 255; + } + desc { "focused"; inherit: "default"; + color: 255 255 255 255; + } + desc { "disabled"; inherit: "default"; + color: 50 50 50 255; + } + } + text { "elm.text4"; scale; + desc { "default"; + rel1.to: "elm.text3"; + rel1.relative: 0.0 1.0; + rel2.to_x: "elm.text3"; + rel2.to_y: "pad.bottom.right"; + rel2.relative: 1.0 0.0; + fixed: 0 0; + align: 0.5 0.5; + color: 164 167 174 255; + text { font: FONT_R; size: 22; + min: 1 1; + ellipsis: -1; + align: 0.0 0.5; + } + } + desc { "selected"; inherit: "default"; + color: 255 255 255 255; + } + desc { "focused"; inherit: "default"; + color: 255 255 255 255; + } + desc { "disabled"; inherit: "default"; + color: 50 50 50 255; + } + } + } + programs { + GENLIST_PROGRAMS("default3", "disabled3") + } +} + +/************************************************************************* +Tizen TV_General Guide_GUI Guideline_v1.0_140709.pptx 48 2text_1icon_2 +**************************************************************************/ +group { "elm/genlist/item/2text_1icon_2/default"; nomouse; program_source: "elm"; + inherit: "elm/genlist/item/2text_1icon/default"; + data.item: "texts" "elm.text elm.text2"; + data.item: "contents" "elm.swallow.icon"; + data.item: "focus_highlight" "on"; + parts { + swallow { "elm.swallow.icon"; mouse; scale; + desc { "default"; + rel1.relative: 1.0 0.0; + rel2.relative: 1.0 1.0; + fixed: 1 0; + align: 1.0 0.5; + } + } + } +} + +/******************************************************************* +Tizen TV_General Guide_GUI Guideline_v1.0_140709.pptx 49 progress +********************************************************************/ +group { "elm/genlist/item/progress/default"; nomouse; program_source: "elm"; + data.item: "texts" "elm.text elm.text2"; + data.item: "contents" "elm.swallow.icon elm.swallow.end"; + data.item: "focus_highlight" "on"; + target_group: "default" "base" "bottom_line" "elm.text" "elm.text2"; + target_group: "disabled" "event" "elm.text" "elm.text2"; + parts { + GENLIST_BASE(42 50 64 255, 69 143 255 255) + GENLIST_PAD(38, 32, 32, 47) + GENLIST_BOTTOM_LINE(222 222 222 222) + text { "elm.text"; scale; + desc { "default"; + rel1.to: "pad.top.left"; + rel1.relative: 1.0 1.0; + rel2.to: "pad.center"; + rel2.relative: 0.0 0.0; + color: 211 211 211 255; + align: 0.0 0.5; + fixed: 0 0; + text { font: FONT_M; size: 24; + min: 1 1; + ellipsis: -1; + align: 0.0 0.5; + } + } + desc { "focused"; inherit: "default" 0.0; + color: 255 255 255 255; + } + desc { "disabled"; inherit: "default" 0.0; + color: 50 50 50 255; + } + } + + ////// parts from right side + swallow { "elm.swallow.end"; mouse; scale; + desc { "default"; + rel1.to_x: "pad.bottom.right"; + rel1.relative: 0.0 0.5; + rel2.to_x: "pad.bottom.right"; + rel2.relative: 0.0 0.5; + min: 80 80; + fixed: 0 1; + align: 1.0 0.5; + } + } + spacer { "pad.center2"; scale; + desc { "default"; + rel1.to_x: "elm.swallow.end"; + rel1.relative: 0.0 0.0; + rel2.to_x: "elm.swallow.end"; + rel2.relative: 0.0 1.0; + min: 32 0; + fixed: 1 0; + align: 1.0 0.5; + } + } + text { "elm.text2"; scale; + desc { "default"; + rel1.to_x: "pad.center2"; + rel1.to_y: "pad.bottom2"; + rel1.relative: 0.0 0.0; + rel2.to_x: "pad.center2"; + rel2.to_y: "pad.bottom2"; + rel2.relative: 0.0 0.0; + align: 1.0 1.0; + min: 100 0; + fixed: 1 1; + color: 211 211 211 255; + text { font: FONT_M; size: 24; + min: 0 1; + } + } + desc { "focused"; inherit: "default" 0.0; + color: 255 255 255 255; + } + desc { "disabled"; inherit: "default" 0.0; + color: 50 50 50 255; + } + } + // a padding between elm.text, elm.text2, elm.swallow.icon + spacer { "pad.center"; scale; + desc { "default"; + rel1.to_x: "elm.text2"; + rel1.to_y: "elm.swallow.icon"; + rel1.relative: 0.0 0.0; + rel2.to_x: "elm.text2"; + rel2.to_y: "elm.swallow.icon"; + rel2.relative: 0.0 0.0; + min: 20 11; + fixed: 1 1; + align: 1.0 1.0; + } + } + swallow { "elm.swallow.icon"; mouse; scale; + desc { "default"; + rel1.to_x: "pad.top.left"; + rel1.to_y: "pad.bottom.right"; + rel1.relative: 1.0 0.0; + rel2.to_x: "pad.center2"; + rel2.to_y: "pad.bottom.right"; + rel2.relative: 0.0 0.0; + min: 0 20; + fixed: 0 1; + align: 0.5 1.0; + } + } + // a padding between elm.text2, elm.swallow.icon + spacer { "pad.bottom2"; scale; + desc { "default"; + rel1.to_y: "elm.swallow.icon"; + rel2.to_y: "elm.swallow.icon"; + rel2.relative: 1.0 0.0; + min: 0 4; + fixed: 0 1; + align: 0.5 1.0; + } + } + } + programs { + GENLIST_PROGRAMS("default", "disabled") + } +} + +/******************************************************************* +Tizen TV_General Guide_GUI Guideline_v1.0_140709.pptx 59 2text_2icon +********************************************************************/ +group { "elm/genlist/item/2text_2icon/default"; nomouse; program_source: "elm"; + data.item: "texts" "elm.text elm.text2"; + data.item: "contents" "elm.swallow.icon elm.swallow.end"; + data.item: "focus_highlight" "on"; + target_group: "default" "base" "bottom_line" "elm.text" "elm.text2"; + target_group: "disabled" "event" "elm.text" "elm.text2"; + parts { + GENLIST_BASE(42 50 64 255, 69 143 255 255) + GENLIST_PAD(32, 32, 29, 19) + GENLIST_BOTTOM_LINE(222 222 222 222) + swallow { "elm.swallow.icon"; mouse; scale; + desc { "default"; + rel1.to: "pad.top.left"; + rel1.relative: 1.0 1.0; + rel2.to: "pad.top.left"; + rel2.relative: 1.0 1.0; + min: 44 44; + fixed: 1 1; + align: 0.0 0.0; + } + } + spacer { "pad.left.center"; scale; + desc { "default"; + rel1.to: "elm.swallow.icon"; + rel1.relative: 0.0 1.0; + rel2.to: "elm.swallow.icon"; + min: 0 3; + fixed: 0 1; + align: 0.5 0.0; + } + } + text { "elm.text2"; scale; + desc { "default"; + rel1.to: "pad.left.center"; + rel1.relative: 0.0 1.0; + rel2.to_x: "pad.left.center"; + rel2.to_y: "pad.bottom.right"; + rel2.relative: 1.0 0.0; + color: 211 211 211 255; + min: 0 20; + text { font: FONT_M; size: 24; + min: 0 1; + } + } + desc { "focused"; inherit: "default" 0.0; + color: 255 255 255 255; + } + desc { "disabled"; inherit: "default" 0.0; + color: 50 50 50 255; + } + } + spacer { "pad.center"; scale; + desc { "default"; + rel1.to: "elm.swallow.icon"; + rel1.relative: 1.0 0.0; + rel2.to: "elm.swallow.icon"; + rel2.relative: 1.0 1.0; + min: 19 0; + fixed: 1 0; + align: 0.0 0.5; + } + } + text { "elm.text"; scale; + desc { "default"; + rel1.to_x: "pad.center"; + rel1.relative: 1.0 0.5; + rel2.to_x: "pad.center"; + rel2.relative: 1.0 0.5; + align: 0.0 0.5; + fixed: 1 1; + color: 211 211 211 255; + text { font: FONT_M; size: 24; + min: 1 1; + ellipsis: -1; + } + } + desc { "focused"; inherit: "default" 0.0; + color: 255 255 255 255; + } + desc { "disabled"; inherit: "default" 0.0; + color: 50 50 50 255; + } + } + spacer { "pad.center2"; scale; + desc { "default"; + rel1.to_x: "elm.text"; + rel1.relative: 1.0 0.0; + rel2.to_x: "elm.text"; + rel2.relative: 1.0 1.0; + min: 14 0; + fixed: 1 0; + align: 0.0 0.5; + } + } + //FIXME: with icon + swallow { "elm.swallow.end"; mouse; scale; + desc { "default"; + rel1.to_x: "pad.center2"; + rel1.relative: 1.0 0.0; + rel2.to_x: "pad.bottom.right"; + rel2.relative: 0.0 1.0; + min: 40 30; + max: 40 30; + fixed: 0 1; + align: 0.0 0.5; + } + } + } + programs { + GENLIST_PROGRAMS("default", "disabled") + } +} + +#undef TOPP +#undef IMGP +#undef TREEIMGS diff --git a/ElmSharp/theme/tv/widgets/genlist_common.edc b/ElmSharp/theme/tv/widgets/genlist_common.edc new file mode 100644 index 0000000..1b2b007 --- /dev/null +++ b/ElmSharp/theme/tv/widgets/genlist_common.edc @@ -0,0 +1,267 @@ +/* + * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved + * + * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#define GENLIST_TREEPAD 19 +#define IMGP() \ + images.image: "list_highlight.png" COMP; +#define BASEP(vert_align) \ + rect { "base"; mouse; \ + scale; \ + ignore_flags: ON_HOLD; \ + desc { "default"; \ + min: vert_align; \ + color: 0 0 0 0; \ + } \ + desc { "odd"; \ + min: vert_align; \ + color: 0 0 0 0; \ + } \ + } \ + program { \ + signal: "elm,state,odd"; source: "elm"; \ + action: STATE_SET "odd" 1.0; \ + target: "base"; \ + } \ + program { \ + signal: "elm,state,even"; source: "elm"; \ + action: STATE_SET "default" 0.0; \ + target: "base"; \ + } +#define TOPP() \ + rect { "event_block"; \ + desc { "default"; \ + color: 0 0 0 0; \ + hid; \ + } \ + desc { "disabled"; \ + inherit: "default" 0.0; \ + vis; \ + } \ + } \ + program { \ + signal: "elm,state,disabled"; source: "elm"; \ + action: STATE_SET "disabled" 0.0; \ + target: "event_block"; \ + } \ + program { \ + signal: "elm,state,enabled"; source: "elm"; \ + action: STATE_SET "default" 0.0; \ + target: "event_block"; \ + } + +#define GENLIST_BASE(COLOR, COLOR2) \ + rect { "event"; mouse; \ + desc { "default"; \ + color: 0 0 0 0; \ + } \ + desc { "disabled"; \ + inherit: "default"; \ + hid; \ + } \ + } \ + rect { "base"; \ + scale; \ + desc { "default"; \ + color: COLOR; \ + } \ + desc { "selected"; \ + inherit: "default"; \ + color: COLOR2; \ + } \ + desc { "focused"; \ + inherit: "default"; \ + color: COLOR2; \ + } \ + } + +#define GENLIST_PAD(LEFT, RIGHT, TOP, BOTTOM) \ + spacer { "pad.top.left"; \ + scale; \ + desc { "default"; \ + rel2.relative: 0.0 0.0; \ + min: LEFT TOP; \ + fixed: 1 1; \ + align: 0.0 0.0; \ + } \ + } \ + spacer { "pad.bottom.right"; \ + scale; \ + desc { "default"; \ + rel1.relative: 1.0 1.0; \ + min: RIGHT BOTTOM; \ + fixed: 1 1; \ + align: 1.0 1.0; \ + } \ + } + +#define GENLIST_BOTTOM_LINE(COLOR) \ + rect { "bottom_line"; \ + desc { "default"; \ + fixed: 0 1; \ + min: 0 1; \ + rel1.relative: 0.0 1.0; \ + align: 0.5 1.0; \ + color: COLOR; \ + } \ + desc { "focused"; \ + inherit: "default"; \ + hid; \ + } \ + } + +#define GENLIST_PROGRAMS(TARGET, TARGET_DISABLE) \ + program { name: "selected"; \ + signal: "elm,state,selected"; \ + action: STATE_SET "selected"; \ + target_groups: TARGET; \ + } \ + program { name: "unselected"; \ + signal: "elm,state,unselected"; \ + action: STATE_SET "default"; \ + target_groups: TARGET; \ + } \ + program { name: "focused"; \ + signal: "elm,state,focused"; \ + action: STATE_SET "focused"; \ + target_groups: TARGET; \ + } \ + program { name: "unfocused"; \ + signal: "elm,state,unfocused"; \ + action: STATE_SET "default"; \ + target_groups: TARGET; \ + } \ + program { name: "disabled"; \ + signal: "elm,state,disabled"; \ + action: STATE_SET "disabled"; \ + target_groups: TARGET_DISABLE; \ + } \ + program { name: "enabled"; \ + signal: "elm,state,enabled"; \ + action: STATE_SET "default"; \ + target_groups: TARGET_DISABLE; \ + } + +/* +group { "elm/genlist/item/no_icon/default"; + data.item: "selectraise" "on"; + data.item: "texts" "elm.text"; + data.item: "treesize" GENLIST_TREEPAD; + data.item: "flips" "elm.text.flip"; + IMGP() + parts { + BASEP(0 100) + + text { "elm.text"; mouse_events: 0; + effect: SHADOW BOTTOM; + scale; + desc { "default"; + rel1.offset: 2 3; + rel1.relative: 1.0 0.0; + rel1.to_x: "elm.padding.start"; + rel2.offset: -3 -3; + color: 255 255 255 255; + color3: 0 0 0 128; + color_class: "list_item"; + text { font: FN; size: GENLIST_FONT_SIZE_36; + min: 1 1; + align: 0.0 0.5; + text_class: "list_item"; + } + } + desc { "selected"; + inherit: "default" 0.0; + color: 51 153 255 255; + color2: 51 153 255 24; + color3: 51 153 255 18; + } + desc { "focused"; + inherit: "default" 0.0; + color: 51 153 255 255; + color2: 51 153 255 24; + color3: 51 153 255 18; + } + desc { "disabled"; + inherit: "default" 0.0; + color: 0 0 0 0; + } + desc { "flip_enabled"; + inherit: "default" 0.0; + hid; + } + } + swallow { "elm.text.flip"; + scale; + desc { "default"; + hid; + rel1.to_y: "elm.text"; + rel2.to_y: "elm.text"; + } + desc { "flip_enabled"; + inherit: "default" 0.0; + vis; + } + } + program { + signal: "elm,state,default"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + } + program { + signal: "elm,state,disabled"; source: "elm"; + action: STATE_SET "disabled" 0.0; + target: "elm.text"; + } + program { + signal: "elm,state,enabled"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + } + program { + signal: "elm,state,flip,enabled"; source: "elm"; + action: STATE_SET "flip_enabled" 0.0; + target: "elm.text"; + target: "elm.text.flip"; + } + program { + signal: "elm,state,flip,disabled"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + target: "elm.text.flip"; + } + spacer { "elm.padding.start"; + scale; + desc { "default"; + fixed: 1 1; + align: 0.0 0.5; + min: 10 10; + max: 10 10; + } + } + + TOPP() + } +} +*/ diff --git a/ElmSharp/theme/tv/widgets/hover.edc b/ElmSharp/theme/tv/widgets/hover.edc new file mode 100644 index 0000000..cf911d9 --- /dev/null +++ b/ElmSharp/theme/tv/widgets/hover.edc @@ -0,0 +1,587 @@ +/* + * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved + * + * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +group { name: "elm/hover/base/menu"; + parts { + part { name: "elm.swallow.offset"; type: SWALLOW; + description { state: "default" 0.0; + align: 0.0 0.0; + rel2.relative: 0.0 0.0; + } + } + part { name: "elm.swallow.size"; type: SWALLOW; + description { state: "default" 0.0; + align: 0.0 0.0; + rel1.to: "elm.swallow.offset"; + rel1.relative: 1.0 1.0; + rel2.to: "elm.swallow.offset"; + } + } + part { name: "base"; type: RECT; mouse_events: 1; + description { state: "default" 0.0; + color: 0 0 0 0; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + color: 0 0 0 64; + } + } + part { name: "elm.swallow.slot.left"; type: SWALLOW; + description { state: "default" 0.0; + } + } + part { name: "elm.swallow.slot.right"; type: SWALLOW; + description { state: "default" 0.0; + } + } + part { name: "elm.swallow.slot.top"; type: SWALLOW; + description { state: "default" 0.0; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + } + } + part { name: "bottomclip"; type: RECT; + description { state: "default" 0.0; + rel1.to_y: "pop"; + rel1.relative: 0.0 1.0; + } + } + part { name: "pad.left_top"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 1 2; + max: 1 2; + rel1.to: "elm.swallow.size"; + rel2.to: "elm.swallow.size"; + rel2.relative: 0.0 0.0; + } + } + part { name: "pad.right_bottom"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 1 24; + max: 1 24; + rel1.to: "elm.swallow.slot.bottom"; + rel1.relative: 1.0 1.0; + rel2.to: "elm.swallow.slot.bottom"; + } + } + part { name: "bottom"; type: SPACER; + clip_to: "bottomclip"; + scale: 1; + description { state: "default" 0.0; + //visible: 0; + rel1.to: "pad.left_top"; + rel1.relative: 0.0 1.0; + rel2.to: "pad.right_bottom"; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + //visible: 1; + } + } + part { name: "pad.top_left"; type: SPACER; + clip_to: "bottomclip"; + scale: 1; + description { state: "default" 0.0; + min: 4 6; + max: 4 6; + align: 0.0 0.0; + rel2.to: "elm.swallow.slot.middle"; + rel2.relative: 0.0 0.0; + } + } + part { name: "pad.slot.top"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + align: 0.5 0.0; + min: 0 16; + max: 9999 14; + rel1.to_y: "elm.swallow.size"; + rel1.to_x: "elm.swallow.size"; + rel2.to_x: "elm.swallow.size"; + rel2.relative: 1.0 0.0; + } + } + part { name: "elm.swallow.slot.bottom"; type: SWALLOW; + clip_to: "bottomclip"; + description { state: "default" 0.0; + align: 0.5 1.0; + rel1.to: "pad.slot.top"; + rel1.relative: 0.0 1.0; + rel2.to: "elm.swallow.slot.middle"; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + align: 0.5 0.0; + } + } + part { name: "pop"; type: SPACER; mouse_events: 1; repeat_events:1; + scale: 1; + description { state: "default" 0.0; + rel1.to: "elm.swallow.slot.middle"; + rel2.to: "elm.swallow.slot.middle"; + } + } + part { name: "elm.swallow.slot.middle"; type: SWALLOW; repeat_events:1; + description { state: "default" 0.0; + rel1.to: "elm.swallow.size"; + rel2.to: "elm.swallow.size"; + } + } + } + programs { + program { name: "end"; + signal: "mouse,up,1"; source: "base"; + action: SIGNAL_EMIT "elm,action,dismiss" ""; + } + program { name: "show"; + signal: "elm,action,show"; source: "elm"; + action: STATE_SET "visible" 0.0; + target: "base"; + } + program { name: "hide"; + signal: "elm,action,hide"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "base"; + } + program { name: "bottomshow"; + signal: "elm,action,slot,bottom,show"; source: "elm"; + action: STATE_SET "visible" 0.0; + transition: DECELERATE 0.3; + target: "bottom"; + target: "elm.swallow.slot.bottom"; + } + program { name: "bottomhide"; + signal: "elm,action,slot,bottom,hide"; source: "elm"; + action: STATE_SET "default" 0.0; + transition: DECELERATE 0.5; + target: "bottom"; + target: "elm.swallow.slot.bottom"; + } + } +} + +group { name: "elm/hover/base/submenu"; + parts { + part { name: "elm.swallow.offset"; type: SWALLOW; repeat_events:1; + description { state: "default" 0.0; + align: 0.0 0.0; + rel2.relative: 0.0 0.0; + } + } + part { name: "elm.swallow.size"; type: SWALLOW; + description { state: "default" 0.0; + align: 0.0 0.0; + rel1.to: "elm.swallow.offset"; + rel1.relative: 1.0 1.0; + rel2.to: "elm.swallow.offset"; + } + } + part { name: "base"; type: RECT; mouse_events: 1; + description { state: "default" 0.0; + color: 0 0 0 0; + visible: 0; + } + } + part { name: "elm.swallow.slot.left"; type: SWALLOW; + description { state: "default" 0.0; + } + } + part { name: "elm.swallow.slot.right"; type: SWALLOW; + description { state: "default" 0.0; + } + } + part { name: "elm.swallow.slot.top"; type: SWALLOW; + description { state: "default" 0.0; + } + } + part { name: "pad.pop_bottom_right"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 1 2; + max: 1 2; + align: 0.0 0.0; + rel1.to: "pop"; + } + } + part { name: "bottomclip"; type: RECT; + description { state: "default" 0.0; + rel1.to: "pad.pop_bottom_right"; + rel1.relative: 0.0 1.0; + } + } + part { name: "pad.left_top"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 1 2; + max: 1 2; + rel1.to: "elm.swallow.size"; + rel2.to: "elm.swallow.size"; + rel2.relative: 0.0 0.0; + } + } + part { name: "pad.right_bottom"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 1 14; + max: 1 14; + rel1.to: "elm.swallow.slot.bottom"; + rel1.relative: 1.0 1.0; + rel2.to: "elm.swallow.slot.bottom"; + } + } + part { name: "bottom"; type: SPACER; + clip_to: "bottomclip"; + scale: 1; + description { state: "default" 0.0; + rel1.to: "pad.left_top"; + rel1.relative: 0.0 1.0; + rel2.to: "pad.right_bottom"; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + } + } + part { name: "pad.top_left"; type: SPACER; + clip_to: "bottomclip"; + scale: 1; + description { state: "default" 0.0; + min: 4 7; + max: 4 7; + align: 0.0 0.0; + rel1.to: "elm.swallow.slot.middle"; + } + } + part { name: "pad.slot.top"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + align: 0.5 0.0; + min: 0 16; + max: 9999 14; + rel1.to_y: "elm.swallow.size"; + rel1.relative: 0.0 0.0; + rel1.to_x: "elm.swallow.size"; + rel1.relative: 0.0 0.0; + rel2.to_x: "elm.swallow.size"; + rel2.relative: 1.0 0.0; + } + } + part { name: "elm.swallow.slot.bottom"; type: SWALLOW; + clip_to: "bottomclip"; + description { state: "default" 0.0; + align: 0.5 1.0; + rel1.to: "pad.slot.top"; + rel1.relative: 0.0 1.0; + rel2.to: "elm.swallow.slot.middle"; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + rel1.to: "pad.top_left"; + rel1.relative: 0.0 1.0; + align: 0.5 0.0; + } + } + part { name: "pop"; type: SPACER; mouse_events: 1; repeat_events:1; + description { state: "default" 0.0; + rel1.to: "elm.swallow.slot.middle"; + rel2.to: "elm.swallow.slot.middle"; + } + } + part { name: "elm.swallow.slot.middle"; type: SWALLOW; repeat_events:1; + description { state: "default" 0.0; + rel1.to: "elm.swallow.size"; + rel2.to: "elm.swallow.size"; + } + } + } + programs { + program { name: "end"; + signal: "mouse,up,1"; source: "base"; + action: SIGNAL_EMIT "elm,action,dismiss" ""; + } + program { name: "show"; + signal: "elm,action,show"; source: "elm"; + action: STATE_SET "visible" 0.0; + target: "base"; + } + program { name: "hide"; + signal: "elm,action,hide"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "base"; + } + program { name: "bottomshow"; + signal: "elm,action,slot,bottom,show"; source: "elm"; + action: STATE_SET "visible" 0.0; + transition: DECELERATE 0.3; + target: "bottom"; + target: "elm.swallow.slot.bottom"; + } + program { name: "bottomhide"; + signal: "elm,action,slot,bottom,hide"; source: "elm"; + action: STATE_SET "default" 0.0; + transition: DECELERATE 0.5; + target: "bottom"; + target: "elm.swallow.slot.bottom"; + } + } +} + +group { name: "elm/hover/base/main_menu"; + parts { + part { name: "elm.swallow.offset"; type: SWALLOW; + description { state: "default" 0.0; + visible: 0; + fixed: 1 1; + } + } + part { name: "elm.swallow.size"; type: SWALLOW; + description { state: "default" 0.0; + align: 0.0 0.0; + rel2.relative: 0.0 0.0; + fixed: 1 1; + } + } + part { name: "pad.pop_bottom_right"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 1 2; + max: 1 2; + align: 0.0 0.0; + } + } + part { name: "bottomclip"; type: RECT; + description { state: "default" 0.0; + rel1.to: "pad.pop_bottom_right"; + rel1.relative: 1.0 1.0; + } + } + part { name: "pad.left_top"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 1 2; + max: 1 2; + rel1.to: "elm.swallow.size"; + rel2.to: "elm.swallow.size"; + rel2.relative: 0.0 0.0; + } + } + part { name: "pad.right_bottom"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 1 14; + max: 1 14; + rel1.to: "elm.swallow.slot.bottom"; + rel1.relative: 1.0 1.0; + rel2.to: "elm.swallow.slot.bottom"; + } + } + part { name: "bottom"; type: RECT; + clip_to: "bottomclip"; + scale: 1; + description { state: "default" 0.0; + visible: 0; + rel1.to: "pad.left_top"; + rel1.relative: 0.0 1.0; + rel2.to: "pad.right_bottom"; + } + } + part { name: "pad.slot.top"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + align: 0.5 0.0; + min: 0 16; + max: 9999 14; + rel1.to_y: "elm.swallow.size"; + rel1.to_x: "elm.swallow.size"; + rel2.to_x: "elm.swallow.size"; + rel2.relative: 1.0 0.0; + } + } + part { name: "elm.swallow.slot.bottom"; type: SWALLOW; + clip_to: "bottomclip"; + description { state: "default" 0.0; + align: 0.5 1.0; + rel1.to: "pad.slot.top"; + rel1.relative: 0.0 1.0; + rel2.to: "elm.swallow.size"; + fixed: 1 1; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + align: 0.5 0.0; + } + } + } + programs { + program { name: "bottomshow"; + signal: "elm,action,slot,bottom,show"; source: "elm"; + action: STATE_SET "visible" 0.0; + transition: DECELERATE 0.3; + target: "elm.swallow.slot.bottom"; + } + } +} + +group { name: "elm/hover/base/main_menu_submenu"; + parts { + part { name: "elm.swallow.offset"; type: SWALLOW; repeat_events:1; + description { state: "default" 0.0; + align: 0.0 0.0; + rel2.relative: 0.0 0.0; + } + } + part { name: "elm.swallow.size"; type: SWALLOW; + description { state: "default" 0.0; + align: 0.0 0.0; + rel1.to: "elm.swallow.offset"; + rel1.relative: 1.0 1.0; + rel2.to: "elm.swallow.offset"; + } + } + part { name: "base"; type: RECT; + mouse_events: 1; + description { state: "default" 0.0; + color: 0 0 0 0; + } + } + part { name: "pad.pop_bottom_right"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 1 2; + max: 1 2; + align: 0.0 0.0; + rel1.to: "pop"; + } + } + part { name: "bottomclip"; type: RECT; + description { state: "default" 0.0; + rel1.to_y: "pad.pop_bottom_right"; + rel1.relative: 0.0 1.0; + } + } + part { name: "pad.left_top"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 1 2; + max: 1 2; + rel1.to: "elm.swallow.size"; + rel2.to: "elm.swallow.size"; + rel2.relative: 0.0 0.0; + } + } + part { name: "pad.right_bottom"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 1 14; + max: 1 14; + rel1.to: "elm.swallow.slot.bottom"; + rel1.relative: 1.0 1.0; + rel2.to: "elm.swallow.slot.bottom"; + } + } + part { name: "bottom"; type: SPACER; + clip_to: "bottomclip"; + scale: 1; + description { state: "default" 0.0; + rel1.to: "pad.left_top"; + rel1.relative: 0.0 1.0; + rel2.to: "pad.right_bottom"; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + } + } + part { name: "pad.slot.top"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + align: 0.5 0.0; + min: 0 16; + max: 9999 14; + rel1.to_y: "elm.swallow.size"; + rel1.to_x: "elm.swallow.size"; + rel2.to_x: "elm.swallow.size"; + rel2.relative: 1.0 0.0; + } + } + part { name: "elm.swallow.slot.bottom"; type: SWALLOW; + clip_to: "bottomclip"; + description { state: "default" 0.0; + align: 0.5 1.0; + rel1.to: "pad.slot.top"; + rel1.relative: 0.0 1.0; + rel2.to: "elm.swallow.slot.middle"; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + align: 0.5 0.0; + } + } + part { name: "pop"; type: SPACER; mouse_events: 1; repeat_events:1; + description { state: "default" 0.0; + rel1.to: "elm.swallow.slot.middle"; + rel2.to: "elm.swallow.slot.middle"; + } + } + part { name: "elm.swallow.slot.middle"; type: SWALLOW; repeat_events:1; + description { state: "default" 0.0; + rel1.to: "elm.swallow.size"; + rel2.to: "elm.swallow.size"; + } + } + } + programs { + program { name: "end"; + signal: "mouse,up,1"; source: "base"; + action: SIGNAL_EMIT "elm,action,dismiss" ""; + } + program { name: "show"; + signal: "elm,action,show"; source: "elm"; + action: STATE_SET "visible" 0.0; + target: "base"; + } + program { name: "hide"; + signal: "elm,action,hide"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "base"; + } + program { name: "bottomshow"; + signal: "elm,action,slot,bottom,show"; source: "elm"; + action: STATE_SET "visible" 0.0; + transition: DECELERATE 0.3; + target: "bottom"; + target: "elm.swallow.slot.bottom"; + } + program { name: "bottomhide"; + signal: "elm,action,slot,bottom,hide"; source: "elm"; + action: STATE_SET "default" 0.0; + transition: DECELERATE 0.5; + target: "bottom"; + target: "elm.swallow.slot.bottom"; + } + } +} diff --git a/ElmSharp/theme/tv/widgets/hoversel.edc b/ElmSharp/theme/tv/widgets/hoversel.edc new file mode 100644 index 0000000..0db5b42 --- /dev/null +++ b/ElmSharp/theme/tv/widgets/hoversel.edc @@ -0,0 +1,999 @@ +/* + * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved + * + * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#define HOVERSEL_FONT_SIZE 30 + +/********************************************************************************* +Document: Tizen TV_General Guide_GUI Guideline_v1.1_140709.pdf +HOVERSEL +Page No.: 84~89 +*********************************************************************************/ +images { + image: "round_rectangle_4X4.png" COMP; + image: "ico_dropdown_menu_open_arrow.png" COMP; + image: "ico_dropdown_menu_check.png" COMP; +} + +group { name: "elm/button/base/hoversel_vertical/default"; + data.item: "focus_highlight" "on"; + parts { + part { name: "base"; type: RECT; + scale: 1; + description { state: "default" 0.0; + min: 0 70; + color: 193 193 193 204; + } + description { state: "focus" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 193 193 193 51; + } + } + part { name: "pad.left"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + align: 0.0 0.5; + min: 32 0; + max: 32 0; + } + } + part { name: "pad.icon"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + rel2.to: "down_icon"; + rel2.relative: 0.0 1.0; + align: 1 0.5; + fixed: 1 1; + min: 20 0; + max: 20 0; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + min: 56 0; + max: 56 0; + } + } + part { name: "pad.right"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + align: 1.0 0.5; + min: 24 0; + max: 24 0; + } + } + part { name: "button_base"; + scale: 1; + description { state: "default" 0.0; + rel1.to: "base"; + rel2.to: "base"; + color: 0 0 0 76; + image { + normal: "round_rectangle_4X4.png"; + border: 4 4 4 4; + border_scale: 1; + } + } + description { state: "focus" 0.0; + inherit: "default" 0.0; + color_class: "open_ux_theme"; + color: 255 255 255 255; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 0 0 0 25; + } + } + part { name: "down_icon"; + scale: 1; + clip_to: "base"; + description { state: "default" 0.0; + rel2.to_x: "pad.right"; + rel2.relative: 0.0 1.0; + align: 1.0 0.5; + fixed: 1 1; + min: 26 26; + max: 26 26; + image.normal: "ico_dropdown_menu_open_arrow.png"; + } + } + part { name: "elm.text"; type: TEXT; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1.to_x: "pad.left"; + rel1.relative: 1.0 0.0; + rel2.to_x: "pad.icon"; + rel2.relative: 0.0 1.0; + align: 0 0.5; + fixed: 1 1; + color: 175 175 175 255; + text { + size: HOVERSEL_FONT_SIZE; + max: 1 0; + text_class: "button"; + align: 0.0 0.5; + } + } + description { state: "focus" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 175 175 175 102; + } + description { state: "disabled_visible" 0.0; + inherit: "default" 0.0; + color: 158 158 158 102; + color3: 0 0 0 0; + } + } + part { name: "pad.text"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 10 0; + max: 10 0; + fixed: 1 1; + align: 0.0 0.5; + rel1.to_x: "elm.text"; + rel1.relative: 1.0 0.0; + rel2.to_x: "elm.text"; + rel2.relative: 1.0 1.0; + } + } + part { name: "elm.swallow.content"; type: SWALLOW; + scale: 1; + clip_to: "base"; + description { state: "default" 0.0; + min: 26 26; + max: 26 26; + fixed: 1 1; + align: 0.0 0.5; + rel1.to_x: "pad.text"; + rel1.relative: 1.0 0.5; + rel2.to_x: "pad.text"; + rel2.relative: 1.0 0.5; + } + } + part { name: "event"; type: RECT; + description { state: "default" 0.0; + color: 0 0 0 0; + fixed: 1 1; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + } + programs { + program { name: "button_click"; + signal: "mouse,down,1"; source: "event"; + action: SIGNAL_EMIT "elm,action,press" ""; + after: "button_click_anim"; + } + program { name: "button_click_anim"; + action: STATE_SET "focus" 0.0; + target: "button_base"; + target: "base"; + target: "elm.text"; + } + program { name: "button_unclick"; + signal: "mouse,up,1"; source: "event"; + action: SIGNAL_EMIT "elm,action,unpress" ""; + after: "button_unclick_anim"; + } + program { name: "button_unclick_anim"; + action: STATE_SET "focus" 0.0; + target: "elm.text"; + target: "button_base"; + target: "base"; + } + program { name: "mouse_unclick_after"; + signal: "mouse,clicked,1"; source: "event"; + action: SIGNAL_EMIT "elm,action,click" ""; + } + program { name: "key_press"; + signal: "elm,anim,activate"; source: "elm"; + action: STATE_SET "focus" 0.0; + target: "elm.text"; + target: "button_base"; + target: "base"; + after: "key_unpress"; + } + program { name: "key_unpress"; + action: STATE_SET "focus" 0.0; + transition: DECELERATE 0.2; + target: "button_base"; + target: "base"; + target: "elm.text"; + } + program { name: "focused"; + signal: "elm,action,focus"; source: "elm"; + action: STATE_SET "focus" 0.0; + target: "elm.text"; + target: "button_base"; + target: "base"; + } + program { name: "unfocused"; + signal: "elm,action,unfocus"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + target: "button_base"; + target: "base"; + } + program { name: "icon_show"; + signal: "elm,state,icon,visible"; source: "elm"; + action: STATE_SET "visible" 0.0; + target: "pad.icon"; + } + program { name: "icon_hide"; + signal: "elm,state,icon,hidden"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "pad.icon"; + } + program { name: "text_show"; + signal: "elm,state,text,visible"; source: "elm"; + script { + new st[31]; + new Float: vl; + get_state(PART:"elm.text", st, 30, vl); + if ((!strcmp(st, "disabled")) || (!strcmp(st, "disabled_visible"))) + set_state(PART:"elm.text", "disabled_visible", 0.0); + else + set_state(PART:"elm.text", "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.text", st, 30, vl); + if ((!strcmp(st, "default")) || (!strcmp(st, "visible"))) + set_state(PART:"elm.text", "default", 0.0); + else + set_state(PART:"elm.text", "disabled", 0.0); + } + } + program { name: "disable"; + signal: "elm,state,disabled"; source: "elm"; + script { + new st[31]; + new Float: vl; + set_state(PART:"button_base", "disabled", 0.0); + set_state(PART:"event", "disabled", 0.0); + set_state(PART:"down_icon", "disabled", 0.0); + get_state(PART:"elm.text", st, 30, vl); + if ((!strcmp(st, "visible")) || (!strcmp(st, "disabled_visible"))) + set_state(PART:"elm.text", "disabled_visible", 0.0); + else + set_state(PART:"elm.text", "disabled", 0.0); + } + } + program { name: "enable"; + signal: "elm,state,enabled"; source: "elm"; + script { + new st[31]; + new Float: vl; + set_state(PART:"button_base", "visible", 0.0); + set_state(PART:"event", "visible", 0.0); + get_state(PART:"elm.text", st, 30, vl); + if ((!strcmp(st, "visible")) || (!strcmp(st, "disabled_visible"))) + set_state(PART:"elm.text", "visible", 0.0); + else + set_state(PART:"elm.text", "default", 0.0); + } + } + } +} + +/****************************************************************************** +Document: Tizen TV_General Guide_GUI Guideline_v1.1_140709.pdf +HOVERSEL +Page No.: 84~89 +******************************************************************************/ +group { name: "elm/button/base/hoversel_vertical_entry/default"; + data.item: "focus_highlight" "on"; + script { + public is_selected = 0; + } + parts { + part { name: "base"; type: RECT; + description { state: "default" 0.0; + min: 0 70; + color: 98 98 98 255; + } + description { state: "focus" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + description { state: "highlight" 0.0; + inherit: "focus" 0.0; + color_class: "open_ux_theme"; + } + description { state: "highlight_focus" 0.0; + inherit: "focus" 0.0; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + } + } + part { name: "pad.left"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + align: 0 0.5; + fixed: 1 1; + min: 32 0; + max: 32 0; + } + } + part { name: "pad.right"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + align: 1.0 0.5; + min: 24 0; + max: 24 0; + } + } + part { name: "clipper.all_item"; type: RECT; + scale: 1; + description { state: "default" 0.0; + rel1.to: "base"; + rel2.to: "base"; + } + description { state: "last_item" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "clipper.last_item"; type: RECT; + scale: 1; + description { state: "default" 0.0; + rel1.to: "base"; + rel2.to: "base"; + visible: 0; + } + description { state: "last_item" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { name: "button_image"; type: RECT; + scale: 1; + clip_to: "clipper.all_item"; + description { state: "default" 0.0; + rel1.to: "base"; + rel2.to: "base"; + } + description { state: "focus" 0.0; + inherit: "default" 0.0; + color_class: "open_ux_theme"; + } + description { state: "highlight" 0.0; + inherit: "default" 0.0; + } + description { state: "highlight_focus" 0.0; + inherit: "default" 0.0; + color_class: "open_ux_theme"; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + } + } + part { name: "pad.last_item"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 0 4; + fixed: 1 1; + rel1.to: "base"; + rel1.relative: 0.0 0.0; + rel2.to: "base"; + rel2.relative: 1.0 0.0; + align: 0.5 1.0; + } + } + part { name: "button_image_last"; + scale: 1; + clip_to: "clipper.last_item"; + description + { state: "default" 0.0; + rel1.to: "pad.last_item"; + rel2.to: "base"; + image { + normal: "round_rectangle_4X4.png"; + border: 4 4 4 4; + border_scale: 1; + } + } + description { state: "focus" 0.0; + inherit: "default" 0.0; + color_class: "open_ux_theme"; + } + description { state: "highlight" 0.0; + inherit: "default" 0.0; + } + description { state: "highlight_focus" 0.0; + inherit: "default" 0.0; + color_class: "open_ux_theme"; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + } + } + part { name: "list_division"; type: RECT; + scale: 1; + description { state: "default" 0.0; + rel1.to: "base"; + rel2.to: "base"; + rel2.relative: 1 0; + fixed: 1 1; + color: 222 222 222 255; + min: 2 2; + max: 9999 2; + } + description { state: "focus" 0.0; + inherit: "default" 0.0; + visible: 0; + } + description { state: "highlight" 0.0; + inherit: "default" 0.0; + } + description { state: "highlight_focus" 0.0; + inherit: "default" 0.0; + visible: 0; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + } + } + part { name: "check"; + scale: 1; + clip_to:"base"; + description { state: "default" 0.0; + rel2.to_x: "pad.right"; + rel2.relative: 0.0 1.0; + align: 1 0.5; + fixed: 1 1; + min: 0 0; + max: 0 0; + image.normal: "ico_dropdown_menu_check.png"; + visible: 0; + } + description { state: "highlight" 0.0; + inherit: "default" 0.0; + min: 26 26; + max: 26 26; + visible: 1; + } + } + part { name: "pad.middle_right"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + rel1.to: "check"; + rel1.relative: 1 0; + rel2.to: "check"; + rel2.relative: 0 1; + fixed: 1 1; + align: 1 0.5; + min: 20 0; + max: 20 0; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + min: 56 0; + max: 56 0; + } + } + part { name: "elm.text"; type: TEXT; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1.to: "pad.left"; + rel1.relative: 1.0 0.0; + rel2.to: "pad.middle_right"; + rel2.relative: 0 1; + align: 0.0 0.5; + fixed: 1 1; + color: 89 89 89 255; + text.text_source: "elm.text"; + text { + size: 30; + max: 1 0; + align: 0 0.5; + text_class: "button"; + } + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + } + description { state: "focus" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + description { state: "highlight" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + color_class: "open_ux_theme"; + color3: 0 0 0 0; + } + description { state: "highlight_focus" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + color3: 0 0 0 0; + } + } + part { name: "pad.middle_left"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + rel1.to: "elm.text"; + rel1.relative: 1.0 0.0; + rel2.to: "elm.text"; + fixed: 1 1; + align: 0.0 0.5; + min: 10 0; + max: 10 0; + } + } + part { name: "elm.swallow.content"; type: SWALLOW; + scale: 1; + clip_to: "base"; + description { state: "default" 0.0; + rel1.to: "pad.middle_left"; + rel1.relative: 1.0 0.5; + rel2.to_x: "pad.middle_left"; + rel2.relative: 1.0 0.5; + align: 0.0 0.5; + fixed: 1 1; + min: 26 26; + max: 26 26; + } + } + part { name: "event"; type: RECT; + scale: 1; + description { state: "default" 0.0; + color: 0 0 0 0; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + } + programs { + program { name: "init"; + signal: "load"; + script { + new var = 0; + set_int(is_selected, var); + } + } + program { name: "button_click"; + signal: "mouse,down,1"; source: "event"; + action: SIGNAL_EMIT "elm,action,press" ""; + after: "button_click_anim"; + } + program { name: "button_click_anim"; + action: STATE_SET "highlight" 0.0; + target: "elm.text"; + target: "button_image"; + target: "button_image_last"; + target: "base"; + } + program { name: "button_unclick"; + signal: "mouse,up,1"; source: "event"; + action: SIGNAL_EMIT "elm,action,unpress" ""; + after: "button_unclick_anim"; + } + program { name: "mouse_unclick_after"; + signal: "mouse,clicked,1"; source: "event"; + action: SIGNAL_EMIT "elm,action,click" ""; + } + program { name: "button_pressed_anim"; + signal: "elm,anim,activate"; source: "elm"; + action: STATE_SET "highlight" 0.0; + target: "elm.text"; + target: "button_image"; + target: "button_image_last"; + target: "list_division"; + target: "base"; + } + program { name: "button_unclick_anim"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + target: "button_image"; + target: "button_image_last"; + target: "base"; + } + program { name: "focused"; + signal: "elm,action,focus"; source: "elm"; + action: STATE_SET "focus" 0.0; + target: "elm.text"; + target: "button_image"; + target: "button_image_last"; + target: "list_division"; + target: "base"; + } + program { name: "unfocused"; + signal: "elm,action,unfocus"; source: "elm"; + script { + set_state(PART:"button_image", "default", 0.0); + set_state(PART:"button_image_last", "default", 0.0); + set_state(PART:"list_division", "default", 0.0); + if(!get_int(is_selected)) + { + set_state(PART:"elm.text", "default", 0.0); + set_state(PART:"base", "default", 0.0); + } + else + { + set_state(PART:"elm.text", "highlight", 0.0); + set_state(PART:"base", "highlight", 0.0); + } + } + } + program { name: "button_highlight"; + signal: "elm,state,highlight"; source: "elm"; + script { + new var = 1; + set_int(is_selected, var); + set_state(PART:"elm.text", "highlight", 0.0); + set_state(PART:"base", "highlight", 0.0); + set_state(PART:"check", "highlight", 0.0); + } + } + program { name: "icon_show"; + signal: "elm,state,icon,visible"; source: "elm"; + action: STATE_SET "visible" 0.0; + target: "pad.middle_right"; + } + program { name: "icon_hide"; + signal: "elm,state,icon,hidden"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "pad.middle_right"; + } + program { name: "disable"; + signal: "elm,state,disabled"; source: "elm"; + script { + new st[31]; + new Float: vl; + set_state(PART:"base", "disabled", 0.0); + set_state(PART:"event", "disabled", 0.0); + get_state(PART:"elm.text", st, 30, vl); + if ((!strcmp(st, "visible")) || (!strcmp(st, "disabled_visible"))) + set_state(PART:"elm.text", "disabled_visible", 0.0); + else + set_state(PART:"elm.text", "disabled", 0.0); + } + } + program { name: "any_item"; + signal: "elm,state,any,item"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "clipper.all_item"; + target: "clipper.last_item"; + } + program { name: "last_item"; + signal: "elm,state,last,item"; source: "elm"; + action: STATE_SET "last_item" 0.0; + target: "clipper.all_item"; + target: "clipper.last_item"; + } + } +} + +/***************************************************************************************** +Document: Tizen TV_General Guide_GUI Guideline_v1.1_140613.pdf +HOVERSEL +Page No.: 86, Style Name: menu_text close +*****************************************************************************************/ +group { name: "elm/hover/base/hoversel_vertical/default"; + parts { + part { name: "elm.swallow.offset"; type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + rel1.relative: 0.0 0.0; + rel2.relative: 0.0 0.0; + align: 0.0 0.0; + } + } + part { name: "elm.swallow.size"; type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + rel1.to: "elm.swallow.offset"; + rel1.relative: 1.0 1.0; + rel2.to: "elm.swallow.offset"; + align: 0.0 0.0; + } + } + part { name: "button_image"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + rel1.to_x: "limit0"; + rel1.to_y: "pad.top.upper"; + rel1.relative: 1.0 0.5; + rel2.to_x: "limit1"; + rel2.to_y: "elm.swallow.slot.middle"; + rel2.relative: 0.0 0.0; + align: 0 0; + } + description { state: "bottom" 0.0; + rel1.to_x: "limit0"; + rel1.to_y: "elm.swallow.slot.middle"; + rel1.relative: 1.0 1.0; + rel2.to_x: "limit1"; + rel2.to_y: "pad.bottom.lower"; + rel2.relative: 0.0 0.5; + } + } + part { name: "limit0"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + rel1.to_x: "elm.swallow.slot.top"; + rel2.to_x: "elm.swallow.slot.middle"; + rel2.relative: 0.0 1.0; + align: 1 1; + min: 1 1; + max: 1 99999; + } + description { state: "bottom" 0.0; + inherit: "default" 0.0; + rel1.to_x: "elm.swallow.slot.bottom"; + } + } + part { name: "limit1"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + rel1.to_x: "elm.swallow.slot.middle"; + rel1.relative: 1.0 0.0; + rel2.to_x: "elm.swallow.slot.top"; + align: 0 0; + min: 1 1; + max: 1 99999; + } + description { state: "bottom" 0.0; + inherit: "default" 0.0; + rel2.to_x: "elm.swallow.slot.bottom"; + } + } + part { name: "base"; type: RECT; + scale: 1; + description { state: "default" 0.0; + color: 0 0 0 128; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + } + } + part { name: "topclip"; type: RECT; + scale: 1; + description { state: "default" 0.0; + rel2.to_y: "button_image"; + } + } + part { name: "pad.middle.left_top"; type: SPACER; + scale: 1; + clip_to: "topclip"; + description { state: "default" 0.0; + rel1.to: "elm.swallow.slot.middle"; + rel1.relative: 0.0 1.0; + rel2.to: "elm.swallow.slot.middle"; + align: 0.0 0.0; + min: 0 0; + max: 0 0; + } + } + part { name: "pad.middle.upper.right_bottom"; type: SPACER; + scale: 1; + clip_to: "topclip"; + description { state: "default" 0.0; + rel1.to: "pad.middle.upper"; + rel2.to: "pad.middle.upper"; + rel2.relative: 1.0 0.0; + align: 1.0 1.0; + min: 0 0; + max: 0 0; + } + } + part { name: "elm.swallow.slot.top"; type: SWALLOW; + clip_to: "topclip"; + scale: 1; + description { state: "default" 0.0; + rel1.to: "pad.middle.left_top"; + rel1.relative: 1.0 0.0; + rel2.to: "pad.middle.upper.right_bottom"; + rel2.relative: 0.0 0.0; + align: 0.5 0.0; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + align: 0.5 1.0; + } + } + part { name: "bottomclip"; type: RECT; + scale: 1; + description { state: "default" 0.0; + rel1.to_y: "button_image"; + } + } + part { name: "pad.middle.lower.left_top"; type: RECT; + clip_to: "topclip"; + scale: 1; + description { state: "default" 0.0; + rel1.to: "pad.middle.lower"; + rel1.relative: 0.0 1.0; + rel2.to: "pad.middle.lower"; + align: 0.0 0.0; + min: 0 0; + max: 0 0; + } + } + part { name: "pad.middle.right_bottom"; type: SPACER; + clip_to: "topclip"; + scale: 1; + description { state: "default" 0.0; + rel1.to: "elm.swallow.slot.middle"; + rel2.to: "elm.swallow.slot.middle"; + rel2.relative: 1.0 0.0; + align: 1.0 1.0; + min: 0 0; + max: 0 0; + } + } + part { name: "elm.swallow.slot.bottom"; type: SWALLOW; + clip_to: "bottomclip"; + scale: 1; + description { state: "default" 0.0; + rel1.to: "pad.middle.lower.left_top"; + rel1.relative: 1.0 1.0; + rel2.to: "pad.middle.right_bottom"; + rel2.relative: 0.0 1.0; + align: 0.5 1.0; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + align: 0.5 0.0; + } + } + part { name: "elm.swallow.slot.middle"; type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + rel1.to: "elm.swallow.size"; + rel2.to: "elm.swallow.size"; + } + } + part { name: "pad.top.upper"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + rel1.to_x: "limit0"; + rel2.to_x: "limit1"; + rel2.to_y: "elm.swallow.slot.top"; + rel1.relative: 1.0 1.0; + rel2.relative: 1.0 0.0; + align: 0.5 1.0; + min: 12 0; + max: 9999 0; + } + } + part { name: "pad.bottom.lower"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + rel1.to_x: "limit0"; + rel1.to_y: "elm.swallow.slot.bottom"; + rel1.relative: 1.0 1.0; + rel2.to_x: "limit1"; + rel2.relative: 0.0 1.0; + align: 0.5 0.0; + min: 1 0; + max: 9999 0; + } + } + part { name: "pad.middle.upper"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + rel1.to_x: "elm.swallow.size"; + rel1.relative: 0.0 1.0; + rel2.to_x: "elm.swallow.size"; + rel2.to_y: "elm.swallow.size"; + rel2.relative: 1.0 0.0; + align: 0.5 1.0; + min: 1 0; + max: 9999 0; + } + } + part { name: "pad.middle.lower"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + rel1.to_x: "elm.swallow.size"; + rel1.to_y: "elm.swallow.size"; + rel1.relative: 0.0 1.0; + rel2.to_x: "elm.swallow.size"; + align: 0.5 0.0; + min: 1 0; + max: 9999 0; + } + } + } + programs { + program { name: "end"; + signal: "mouse,up,1"; source: "base"; + action: SIGNAL_EMIT "elm,action,dismiss" ""; + } + program { name: "show"; + signal: "elm,action,show"; source: "elm"; + action: STATE_SET "visible" 0.0; + target: "base"; + } + program { name: "hide"; + signal: "elm,action,hide"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "base"; + } + program { name: "topshow"; + signal: "elm,action,slot,top,show"; source: "elm"; + action: STATE_SET "visible" 0.0; + transition: DECELERATE 0.5; + target: "elm.swallow.slot.top"; + } + program { name: "topshow3"; + signal: "elm,action,slot,top,show"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "button_image"; + target: "limit0"; + target: "limit1"; + } + program { name: "tophide"; + signal: "elm,action,slot,top,hide"; source: "elm"; + action: STATE_SET "default" 0.0; + transition: DECELERATE 0.5; + target: "elm.swallow.slot.top"; + } + program { name: "bottomshow"; + signal: "elm,action,slot,bottom,show"; source: "elm"; + action: STATE_SET "visible" 0.0; + transition: DECELERATE 0.5; + target: "elm.swallow.slot.bottom"; + } + program { name: "bottomshow3"; + signal: "elm,action,slot,bottom,show"; source: "elm"; + action: STATE_SET "bottom" 0.0; + target: "button_image"; + target: "limit0"; + target: "limit1"; + } + program { name: "bottomhide"; + signal: "elm,action,slot,bottom,hide"; source: "elm"; + action: STATE_SET "default" 0.0; + transition: DECELERATE 0.5; + target: "elm.swallow.slot.bottom"; + } + } +} + +#undef HOVERSEL_FONT_SIZE diff --git a/ElmSharp/theme/tv/widgets/layout.edc b/ElmSharp/theme/tv/widgets/layout.edc index 4268a9f..5d250fc 100644 --- a/ElmSharp/theme/tv/widgets/layout.edc +++ b/ElmSharp/theme/tv/widgets/layout.edc @@ -23,6 +23,131 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +/********************************************************************************************** +Document: "Tizen TV_General Guide_GUI Guideline_v1.0_140430.ppt" page no. 36 , name:"nocontent" +***********************************************************************************************/ +#define FONT_SIZE 35 +#define FONT_SIZE_SMALL 24 + +group { name: "elm/layout/application/default"; + parts { + part { name: "elm.swallow.bg"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + } + } + part { name: "elm.swallow.content"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + } + } + } +} + +group { name: "elm/layout/application/nocontent"; + parts { + part { name: "base"; type: RECT; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + color: 0 0 0 38; + } + } + part { name: "right.pad"; type: SPACER; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1.to: "base"; + rel2.to: "base"; + min: 50 50; + max: 50 -1; + align: 1.0 0.0; + } + } + part { name: "left.pad"; type: SPACER; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1.to: "base"; + rel2.to: "base"; + min: 50 50; + max: 50 -1; + align: 0.0 0.0; + } + } + part { name: "base.pad"; type: SPACER; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1.to: "left.pad"; + rel1.relative: 1.0 0.0; + rel2.to: "right.pad"; + rel2.relative: 0 1.0; + min: 0 70; + max: -1 70; + align: 0.0 0.5; + } + } + + part { name: "elm.text"; type: TEXT; mouse_events: 0; + scale: 1; + multiline: 1; + description { state: "default" 0.0; + rel1.to: "base.pad"; + rel2.to: "base.pad"; + color: 211 211 211 255; + align: 0 0; + min: 0 40; + max: -1 40; + text { + size: FONT_SIZE; + min: 0 0; + font: FONT_M; + } + } + } + part { name: "elm.text.1"; type: TEXT; mouse_events: 0; + scale: 1; + multiline: 1; + description { state: "default" 0.0; + rel1.to: "elm.text"; + rel1.relative: 0.0 1.0; + rel2.to: "right.pad"; + rel2.relative: 0.0 1.0; + color: 134 134 134 255; + min: 0 30; + max: -1 30; + align: 0 0; + text { + font: FONT_M; + size: FONT_SIZE_SMALL; + min: 0 0; + } + } + } + } +} + +/*********************************************************************************************** +Document: "Tizen TV_General Guide_GUI Guideline_v1.0_140430.ppt" page no. 48, name:"nocontent.1" +***********************************************************************************************/ +group { name: "elm/layout/application/nocontent.1"; + inherit:"elm/layout/application/nocontent"; + parts { + part { name: "right.pad"; type: SPACER; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + min: 30 30; + max: 30 -1; + } + } + part { name: "left.pad"; type: SPACER; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + min: 30 30; + max: 30 -1; + } + } + } +} group { "elm/layout/background/default"; parts { diff --git a/ElmSharp/theme/tv/widgets/list.edc b/ElmSharp/theme/tv/widgets/list.edc new file mode 100644 index 0000000..fb993d5 --- /dev/null +++ b/ElmSharp/theme/tv/widgets/list.edc @@ -0,0 +1,445 @@ +/* + * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved + * + * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +group { name: "elm/list/item/default"; + alias: "elm/list/item_odd/default"; + data.item: "texts" "elm.text"; + data.item: "focus_highlight" "on"; + parts { + part { name: "base"; type: RECT; + scale: 1; + ignore_flags: ON_HOLD; + description { state: "default" 0.0; + min: 0 96; + color: 0 0 0 0; + } + } + part { name: "border_down"; type: RECT; + description { state: "default" 0.0; + fixed: 0 1; + min: 64 2; + rel1.relative: 0.0 1.0; + color: 222 222 222 222; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "border_up"; type: RECT; + scale: 1; + description { state: "default" 0.0; + fixed: 0 1; + min: 64 2; + rel2.relative: 1.0 0.0; + color: 222 222 222 222; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "base_highlight_bg"; type: IMAGE; + mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + image { + normal: "round_rectangle_4X4.png"; + border: 4 4 4 4; + border_scale: 1; + } + color: 255 255 255 255; + } + } + part { name: "base_highlight"; type: RECT; + mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + color: 255 255 255 255; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + color_class: "open_ux_theme"; + } + } + part { name: "pad.text.1_right"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + fixed: 0 1; + align: 1.0 0.5; + min: 32 96; + max: 32 96; + } + } + part { name: "pad.text.1_left"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + fixed: 0 1; + align: 0.0 0.5; + min: 32 96; + max: 32 96; + } + } + part { name: "elm.text"; type: TEXT; mouse_events: 0; + effect: SHADOW BOTTOM; + ignore_flags: ON_HOLD; + scale: 1; + description { state: "default" 0.0; + align: 0.0 0.5; + min: 0 40; + rel1.to: "pad.text.1_left"; + rel1.relative: 1.0 0.0; + rel2.to: "pad.text.1_right"; + rel2.relative: 0.0 1.0; + color: 89 89 89 255; + text { font: FONT_M; size: 30; + min: 1 1; + max: 1 0; + ellipsis: -1; + } + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 89 89 89 51; + } + } + } + programs { + program { + signal: "elm,state,default"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + } + program { name: "select_text.1"; + signal: "elm,state,focused"; source: "elm"; + action: STATE_SET "focused" 0.0; + target: "elm.text"; + target: "base_highlight"; + target: "border_up"; + target: "border_down"; + } + program { name: "unselect_text.1"; + signal: "elm,state,unfocused"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + target: "base_highlight"; + target: "border_up"; + target: "border_down"; + } + program { + signal: "elm,state,disabled"; source: "elm"; + action: STATE_SET "disabled" 0.0; + target: "elm.text"; + } + program { + signal: "elm,state,enabled"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + } + } +} + +/****************************************************************** +Tizen TV_General Guide_GUI Guideline_v1.0_140508.ppt 90 1text +*******************************************************************/ + +group { name: "elm/list/item/1text"; + alias: "elm/list/item_odd/1text"; + data.item: "texts" "elm.text"; + data.item: "focus_highlight" "on"; + inherit: "elm/list/item/default"; + parts { + part { name: "border_down"; type: RECT; + description { state: "default" 0.0; + fixed: 0 1; + min: 64 2; + rel1.relative: 0.0 1.0; + color: 222 222 222 222; + } + description { state: "last" 0.0; + inherit: "default" 0.0; + visible: 0; + } + description { state: "single" 0.0; + inherit: "last" 0.0; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "border_up"; type: RECT; + scale: 1; + description { state: "default" 0.0; + fixed: 0 1; + min: 64 2; + rel2.relative: 1.0 0.0; + color: 222 222 222 222; + } + description { state: "first" 0.0; + inherit: "default" 0.0; + visible: 0; + } + description { state: "single" 0.0; + inherit: "first" 0.0; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "base_highlight_bg"; type: IMAGE; + mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + image { + normal: "round_rectangle_4X4.png"; + border: 4 4 4 4; + border_scale: 1; + } + color: 255 255 255 255; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + color_class: "open_ux_theme"; + } + } + part { name: "base_highlight"; type: RECT; + mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + color: 255 255 255 255; + } + description { state: "first" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 10; + } + description { state: "last" 0.0; + inherit: "default" 0.0; + rel2.offset: 0 -11; + } + description { state: "single" 0.0; + inherit: "default" 0.0; + rel1.offset: 0 10; + rel2.offset: 0 -11; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + color_class: "open_ux_theme"; + } + description { state: "first_focused" 0.0; + inherit: "first" 0.0; + color_class: "open_ux_theme"; + } + description { state: "last_focused" 0.0; + inherit: "last" 0.0; + color_class: "open_ux_theme"; + } + description { state: "single_focused" 0.0; + inherit: "single" 0.0; + color_class: "open_ux_theme"; + } + } + part { name: "pad.text.1_right"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + fixed: 0 1; + align: 1.0 0.5; + min: 32 96; + max: 32 96; + } + } + part { name: "pad.text.1_left"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + fixed: 0 1; + align: 0.0 0.5; + min: 32 96; + max: 32 96; + } + } + part { name: "elm.text"; type: TEXT; mouse_events: 0; + effect: SHADOW BOTTOM; + ignore_flags: ON_HOLD; + scale: 1; + description { state: "default" 0.0; + align: 0.0 0.5; + min: 0 40; + rel1.to: "pad.text.1_left"; + rel1.relative: 1.0 0.0; + rel2.to: "pad.text.1_right"; + rel2.relative: 0.0 1.0; + color: 89 89 89 255; + text { font: FONT_M; size: 30; + min: 1 1; + max: 1 0; + ellipsis: -1; + } + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 89 89 89 51; + } + } + } + programs { + program { + signal: "elm,state,default"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + } + program { name: "select_text.1"; + signal: "elm,state,focused"; source: "invalidation"; + } + program { + signal: "elm,state,focused"; source: "elm"; + script { + new st[31], Float:vl; + get_state(PART:"base_highlight", st, 30, vl); + if (!strncmp(st, "first", 5)) + set_state(PART:"base_highlight", "first_focused", 0.0); + else if (!strncmp(st, "last", 4)) + set_state(PART:"base_highlight", "last_focused", 0.0); + else if (!strncmp(st, "single", 6)) + set_state(PART:"base_highlight", "single_focused", 0.0); + else + set_state(PART:"base_highlight", "focused", 0.0); + set_state(PART:"elm.text", "focused", 0.0); + set_state(PART:"base_highlight_bg", "focused", 0.0); + } + } + program { name: "unselect_text.1"; + signal: "elm,state,unfocused"; source: "invalidation"; + } + program { + signal: "elm,state,unfocused"; source: "elm"; + script { + new st[31], Float:vl; + get_state(PART:"base_highlight", st, 30, vl); + if (!strncmp(st, "first", 5)) + set_state(PART:"base_highlight", "first", 0.0); + else if (!strncmp(st, "last", 4)) + set_state(PART:"base_highlight", "last", 0.0); + else if (!strncmp(st, "single", 6)) + set_state(PART:"base_highlight", "single", 0.0); + else + set_state(PART:"base_highlight", "default", 0.0); + set_state(PART:"elm.text", "default", 0.0); + set_state(PART:"base_highlight_bg", "default", 0.0); + } + } + program { + signal: "elm,state,disabled"; source: "elm"; + action: STATE_SET "disabled" 0.0; + target: "elm.text"; + } + program { + signal: "elm,state,enabled"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + } + program { + signal: "elm,state,list,first"; source: "elm"; + action: STATE_SET "first" 0.0; + target: "base_highlight"; + target: "border_up"; + } + program { + signal: "elm,state,list,last"; source: "elm"; + action: STATE_SET "last" 0.0; + target: "base_highlight"; + target: "border_down"; + } + program { + signal: "elm,state,list,single"; source: "elm"; + action: STATE_SET "single" 0.0; + target: "base_highlight"; + target: "border_up"; + target: "border_down"; + } + } +} + +/****************************************************************** +Tizen TV_General Guide_GUI Guideline_v1.0_140508.ppt 91 1text.1icon +*******************************************************************/ + +group { name: "elm/list/item/1text.1icon"; + alias: "elm/list/item_odd/1text.1icon"; + data.item: "texts" "elm.text"; + data.item: "contents" "elm.swallow.icon"; + inherit: "elm/list/item/1text"; + parts{ + part { name: "elm.swallow.icon"; type: SWALLOW; + description { state: "default" 0.0; + fixed: 1 1; + visible: 1; + align: 0.0 0.5; + rel1.to: "pad.text.1_left"; + rel1.relative: 1.0 0.0; + rel2.to: "pad.text.1_left"; + rel2.relative: 1.0 1.0; + } + } + part { name: "pad.text.1_middle"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + fixed: 0 1; + align: 0.0 0.5; + min: 20 96; + max: 20 96; + rel1.to: "elm.swallow.icon"; + rel1.relative: 1.0 0.0; + rel2.to: "elm.swallow.icon"; + rel2.relative: 1.0 1.0; + } + } + part { name: "elm.text"; + description { state: "default" 0.0; + rel1.to: "pad.text.1_middle"; + rel1.relative: 1.0 0.0; + rel2.to: "pad.text.1_right"; + rel2.relative: 0.0 1.0; + } + description { state: "focused" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + } + } + } +} + diff --git a/ElmSharp/theme/tv/widgets/popup.edc b/ElmSharp/theme/tv/widgets/popup.edc new file mode 100644 index 0000000..f568883 --- /dev/null +++ b/ElmSharp/theme/tv/widgets/popup.edc @@ -0,0 +1,533 @@ +/* + * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved + * + * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +// MACRO +#define POPUP_BASE_DEFAULT_TEXT_FONT_SIZE_INC 30 +#define POPUP_DESCRIPTION_DEFAULT_TEXT_FONT_SIZE_INC 28 + +#define POPUP_BASE_DEFAULT_BASE_DEFAULT_MIN_INC 688 378 +#define POPUP_BASE_DEFAULT_BASE_DEFAULT_MAX_INC 688 378 +#define POPUP_BASE_DEFAULT_BASE_LANDSCAPE_MIN_INC 720 0 +#define POPUP_BASE_DEFAULT_BASE_LANDSCAPE_MAX_INC 720 648 +#define POPUP_BASE_DEFAULT_TITLE_DEFAULT_MIN_INC 670 84 +#define POPUP_BASE_DEFAULT_BUTTON_BG_DEFAULT_MIN_INC 688 146 + +#define POPUP_BUTTON_DEFAULT_ACTION_AREA_HEIGHT "146" + +#define POPUP_BUTTON_MIN_SIZE 196 70 +#define POPUP_BUTTON_PADDING_SIZE 20 70 + + +// notify +group { name: "elm/notify/center/popup/default"; + alias: "elm/notify/bottom/popup/default"; + parts { + part { name: "base"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: POPUP_BASE_DEFAULT_BASE_DEFAULT_MIN_INC; + max: POPUP_BASE_DEFAULT_BASE_DEFAULT_MAX_INC; + } + description { state: "landscape" 0.0; + min: POPUP_BASE_DEFAULT_BASE_LANDSCAPE_MIN_INC; + max: POPUP_BASE_DEFAULT_BASE_LANDSCAPE_MAX_INC; + } + } + part { name: "elm.swallow.content"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + rel1.to: "base"; + rel2.to: "base"; + } + } + } +} + +// popup +group { name: "elm/popup/base/default"; + images { + image: "modal_dialogs_bg.png" COMP; + image: "round_rectangle_8X8_top.png" COMP; + } + data { + item: "focus_highlight" "on"; + item: "default_orient" "2"; //top, center:1 bottom:2 + } + styles { + style { name: "popup_title_style"; + base: "font=Tizen:style=Regular align=center font_size="POPUP_BASE_DEFAULT_TEXT_FONT_SIZE_INC" color=#FFFFFF wrap=mixed ellipsis=1.0"; + tag: "br" "\n"; + tag: "tab" "\t"; + } + } + parts { + part { name: "base"; + scale: 1; + type: SPACER; + description { state: "default" 0.0; + min: POPUP_BASE_DEFAULT_BASE_DEFAULT_MIN_INC; + max: POPUP_BASE_DEFAULT_BASE_DEFAULT_MAX_INC; + } + description { state: "landscape" 0.0; + inherit: "default" 0.0; + min: POPUP_BASE_DEFAULT_BASE_LANDSCAPE_MIN_INC; + max: POPUP_BASE_DEFAULT_BASE_LANDSCAPE_MAX_INC; + } + } + part { name: "bg"; + scale: 1; + type: IMAGE; + description { + rel1.to: "base"; + rel2.to: "base"; + image { + normal: "modal_dialogs_bg.png"; + border: 18 18 15 21; + } + } + } + part { name: "access.outline"; + type: RECT; + repeat_events: 1; + description { state: "default" 0.0; + fixed: 1 1; + rel1.to: "base"; + rel2.to: "base"; + color: 0 0 0 0; + } + } + part { name: "elm.bg.title"; + type: IMAGE; + scale: 1; + description { state: "default" 0.0; + fixed: 1 1; + color: 42 76 130 255; + align: 0.5 0.0; + min: 0 84; + rel1 { + relative: 0.0 0.0; + to: "base"; + offset: 9 6; + } + rel2 { + relative: 1.0 0.0; + to: "base"; + offset: -10 6; + } + image { + normal: "round_rectangle_8X8_top.png"; + border: 8 8 8 0; + } + visible: 0; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { name: "elm.text.title"; + type: TEXTBLOCK; + scale:1; + description { state: "default" 0.0; + fixed: 1 1; + text { + style: "popup_title_style"; + size: POPUP_BASE_DEFAULT_TEXT_FONT_SIZE_INC; + } + rel1.to: "elm.bg.title"; + rel2.to: "elm.bg.title"; + } + } + part { name: "access.title"; + type: RECT; + repeat_events: 1; + description { state: "default" 0.0; + rel1.to: "elm.bg.title"; + rel2.to: "elm.bg.title"; + color: 0 0 0 0; + } + } + part { name: "elm.swallow.content"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + fixed: 1 1; + rel1.to: "base"; + rel2.to: "base"; + } + description { state: "show_title_area" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.0 1.0; + to_x: "base"; + to_y: "elm.bg.title"; + } + rel2.to: "base"; + } + description { state: "show_action_area" 0.0; + inherit: "default" 0.0; + rel1.to: "base"; + rel2 { + relative: 1.0 0.0; + to_x: "base"; + to_y: "elm.swallow.action_area.bg"; + } + } + description { state: "show_action_title_area" 0.0; + inherit: "default" 0.0; + rel1 { + relative: 0.0 1.0; + to_x: "base"; + to_y: "elm.bg.title"; + } + rel2 { + relative: 1.0 0.0; + to_x: "base"; + to_y: "elm.swallow.action_area.bg"; + } + } + } + part { name: "access.body"; + type: RECT; + repeat_events: 1; + description { state: "default" 0.0; + rel1.to: "elm.swallow.content"; + rel2.to: "elm.swallow.content"; + color: 0 0 0 0; + } + } + part { name: "elm.swallow.action_area.bg"; + type: RECT; + scale : 1; + description { state: "default" 0.0; + fixed : 1 1; + align: 0.5 1.0; + visible: 0; + rel1 { + relative: 0.0 1.0; + to: "base"; + } + rel2.to: "base"; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + min: POPUP_BASE_DEFAULT_BUTTON_BG_DEFAULT_MIN_INC; + } + } + part { name: "elm.swallow.action_area"; + type: SWALLOW; + scale : 1; + description { state: "default" 0.0; + rel1.to: "elm.swallow.action_area.bg"; + rel2.to: "elm.swallow.action_area.bg"; + } + } + } + programs { + program { name: show_title_area; + signal: "elm,state,title_area,visible"; + source: "elm"; + script { + new st[31]; + new Float:vl; + get_state(PART:"elm.swallow.action_area.bg", st, 30, vl); + if (!strcmp(st, "visible")) + set_state(PART:"elm.swallow.content", "show_action_title_area", 0.0); + else + set_state(PART:"elm.swallow.content", "show_title_area", 0.0); + set_state(PART:"elm.bg.title", "visible", 0.0); + } + } + program { name: hide_title_area; + signal: "elm,state,title_area,hidden"; + source: "elm"; + action: STATE_SET "default" 0.0; + script { + new st[31]; + new Float:vl; + get_state(PART:"elm.swallow.action_area.bg", st, 30, vl); + if ((!strcmp(st, "visible")) || (!strcmp(st, "landscape_visible"))) + set_state(PART:"elm.swallow.content", "show_action_area", 0.0); + else + set_state(PART:"elm.swallow.content", "default", 0.0); + set_state(PART:"elm.bg.title", "default", 0.0); + } + } + program { name: show_action_area; + signal: "elm,state,action_area,visible"; + source: "elm"; + script { + new st[31]; + new Float:vl; + get_state(PART:"elm.bg.title", st, 30, vl); + if ((!strcmp(st, "visible"))) + set_state(PART:"elm.swallow.content", "show_action_title_area", 0.0); + else + set_state(PART:"elm.swallow.content", "show_action_area", 0.0); + set_state(PART:"elm.swallow.action_area.bg", "visible", 0.0); + } + } + program { name: hide_action_area; + signal: "elm,state,action_area,hidden"; + source: "elm"; + action: STATE_SET "default" 0.0; + script { + new st[31]; + new Float:vl; + get_state(PART:"elm.bg.title", st, 30, vl); + if ((!strcmp(st, "visible"))) + set_state(PART:"elm.swallow.content", "show_title_area", 0.0); + else + set_state(PART:"elm.swallow.content", "default", 0.0); + set_state(PART:"elm.swallow.action_area.bg", "default", 0.0); + } + } + program { name: "change_to_landscape"; + action: STATE_SET "landscape" 0.0; + target: "base"; + after: "orientation_change"; + } + program { name: "orientation_change"; + action: SIGNAL_EMIT "elm,state,orientation,changed" ""; + } + program { name: "change_to_portrait"; + action: STATE_SET "default" 0.0; + target: "base"; + after: "orientation_change"; + } + program { name: "landscape_mode"; + source: "elm"; + signal: "elm,state,orient,90"; + after: "change_to_landscape"; + } + program { name: "landscape_mode2"; + source: "elm"; + signal: "elm,state,orient,270"; + after: "change_to_landscape"; + } + program { name: "portrait_mode"; + source: "elm"; + signal: "elm,state,orient,0"; + after: "change_to_portrait"; + } + program { name: "portrait_mode2"; + source: "elm"; + signal: "elm,state,orient,180"; + after: "change_to_portrait"; + } + } +} + +// content +group { name: "elm/popup/content/default"; + parts{ + part { name:"elm.swallow.content"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + } + } + } +} + +// label +group { name: "elm/label/base/popup/default"; + styles { + style { name: "textblock_style"; + base: "font=Tizen:style=Regular font_size="POPUP_DESCRIPTION_DEFAULT_TEXT_FONT_SIZE_INC" align=center color=#000000 wrap=mixed"; + tag: "br" "\n"; + tag: "ps" "ps"; + tag: "hilight" "+ font_weight=Bold"; + tag: "b" "+ font_weight=Bold"; + tag: "tab" "\t"; + } + } + parts { + part { name: "elm.text"; + type: TEXTBLOCK; + scale: 1; + description { state: "default" 0.0; + text { + style: "textblock_style"; + min: 0 1; + } + } + } + } +} + +// button +group { name: "elm/popup/buttons1/popup/default"; + data.item: "action_area_height" POPUP_BUTTON_DEFAULT_ACTION_AREA_HEIGHT; + parts{ + part{ name:"elm.swallow.content.button1"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + fixed: 1 1; + rel1.relative: 0.5 0.5; + rel2.relative: 0.5 0.5; + min: POPUP_BUTTON_MIN_SIZE; + } + } + } +} + +group { name: "elm/popup/buttons2/popup/default"; + data.item: "action_area_height" POPUP_BUTTON_DEFAULT_ACTION_AREA_HEIGHT; + parts{ + part { name:"elm.swallow.content.button1"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + fixed: 0 1; + rel1 { + relative: 0.0 0.5; + to: "pad"; + } + rel2 { + relative: 0.0 0.5; + to: "pad"; + } + align: 1.0 0.5; + min: POPUP_BUTTON_MIN_SIZE; + } + } + part { name: "pad"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + fixed: 1 1; + rel1.relative: 0.5 0.5; + rel2.relative: 0.5 0.5; + min: POPUP_BUTTON_PADDING_SIZE; + } + } + part{ name:"elm.swallow.content.button2"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + fixed: 0 1; + rel1 { + relative: 1.0 0.5; + to: "pad"; + } + rel2 { + relative: 1.0 0.5; + to: "pad"; + } + align: 0.0 0.5; + min: POPUP_BUTTON_MIN_SIZE; + } + } + } +} + +group { name: "elm/popup/buttons3/popup/default"; + data.item: "action_area_height" POPUP_BUTTON_DEFAULT_ACTION_AREA_HEIGHT; + parts{ + part { name:"elm.swallow.content.button1"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + fixed: 1 1; + rel1 { + relative: 0.0 0.5; + to: "pad.left"; + } + rel2 { + relative: 0.0 0.5; + to: "pad.left"; + } + align: 1.0 0.5; + min: POPUP_BUTTON_MIN_SIZE; + } + } + part { name: "pad.left"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + fixed: 1 1; + rel1 { + relative: 0.0 0.5; + to: "elm.swallow.content.button2"; + } + rel2 { + relative: 0.0 0.5; + to: "elm.swallow.content.button2"; + } + align: 1.0 0.5; + min: POPUP_BUTTON_PADDING_SIZE; + } + } + part{ name:"elm.swallow.content.button2"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + fixed: 1 1; + rel1.relative: 0.5 0.5; + rel2.relative: 0.5 0.5; + min: POPUP_BUTTON_MIN_SIZE; + } + } + part { name: "pad.right"; + type: SPACER; + scale: 1; + description { state: "default" 0.0; + fixed: 1 1; + rel1 { + relative: 1.0 0.5; + to: "elm.swallow.content.button2"; + } + rel2 { + relative: 1.0 0.5; + to: "elm.swallow.content.button2"; + } + align: 0.0 0.5; + min: POPUP_BUTTON_PADDING_SIZE; + } + } + part{ name:"elm.swallow.content.button3"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + fixed: 1 1; + rel1 { + relative: 1.0 0.5; + to: "pad.right"; + } + rel2 { + relative: 1.0 0.5; + to: "pad.right"; + } + align: 0.0 0.5; + min: POPUP_BUTTON_MIN_SIZE; + } + } + } +} diff --git a/ElmSharp/theme/tv/widgets/progressbar.edc b/ElmSharp/theme/tv/widgets/progressbar.edc new file mode 100644 index 0000000..ff31bcf --- /dev/null +++ b/ElmSharp/theme/tv/widgets/progressbar.edc @@ -0,0 +1,767 @@ +/* + * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved + * + * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#define ADD_PULSE_PARTS PULSE_PART(1,0) PULSE_PART(2,1) \ +PULSE_PART(3,2) PULSE_PART(4,3) PULSE_PART(5,4) PULSE_PART(6,5) PULSE_PART(7,6) PULSE_PART(8,7) PULSE_PART(9,8) PULSE_PART(10,9) \ +PULSE_PART(11,10) PULSE_PART(12,11) PULSE_PART(13,12) PULSE_PART(14,13) PULSE_PART(15,14) PULSE_PART(16,15) PULSE_PART(17,16) PULSE_PART(18,17) \ +PULSE_PART(19,18) PULSE_PART(20,19) PULSE_PART(21,20) PULSE_PART(22,21) PULSE_PART(23,22) PULSE_PART(24,23) PULSE_PART(25,24) PULSE_PART(26,25) \ +PULSE_PART(27,26) PULSE_PART(28,27) PULSE_PART(29,28) PULSE_PART(30,29) PULSE_PART(31,30) PULSE_PART(32,31) PULSE_PART(33,32) PULSE_PART(34,33) \ +PULSE_PART(35,34) PULSE_PART(36,35) PULSE_PART(37,36) PULSE_PART(38,37) PULSE_PART(39,38) PULSE_PART(40,39) PULSE_PART(41,40) PULSE_PART(42,41) \ +PULSE_PART(43,42) PULSE_PART(44,43) PULSE_PART(45,44) PULSE_PART(46,45) PULSE_PART(47,46) PULSE_PART(48,47) PULSE_PART(49,48) PULSE_PART(50,49) \ +PULSE_PART(51,50) PULSE_PART(52,51) PULSE_PART(53,52) PULSE_PART(54,53) PULSE_PART(55,54) PULSE_PART(56,55) PULSE_PART(57,56) PULSE_PART(58,57) \ +PULSE_PART(59,58) PULSE_PART(60,59) PULSE_PART(61,60) PULSE_PART(62,61) PULSE_PART(63,62) PULSE_PART(64,63) PULSE_PART(65,64) PULSE_PART(66,65) \ +PULSE_PART(67,66) PULSE_PART(68,67) PULSE_PART(69,68) PULSE_PART(70,69) PULSE_PART(71,70) PULSE_PART(72,71) PULSE_PART(73,72) PULSE_PART(74,73) \ +PULSE_PART(75,74) PULSE_PART(76,75) PULSE_PART(77,76) PULSE_PART(78,77) PULSE_PART(79,78) PULSE_PART(80,79) PULSE_PART(81,80) PULSE_PART(82,81) \ +PULSE_PART(83,82) PULSE_PART(84,83) PULSE_PART(85,84) PULSE_PART(86,85) PULSE_PART(87,86) PULSE_PART(88,87) PULSE_PART(89,88) PULSE_PART(90,89) \ +PULSE_PART(91,90) PULSE_PART(92,91) PULSE_PART(93,92) PULSE_PART(94,93) PULSE_PART(95,94) PULSE_PART(96,95) PULSE_PART(97,96) PULSE_PART(98,97) \ +PULSE_PART(99,98) PULSE_PART(100,99) + +#define PULSE_PART(i,j) \ +part { name: "pulse_area_"i"_blank"; type: RECT; mouse_events: 0; \ + clip_to: "pulse_clipper"; \ + description { state: "default" 0.0; \ + min: 10 4; \ + max: 10 4; \ + fixed: 1 1; \ + rel1 { \ + to_x: "pulse_area_"j"_filled"; \ + to_y: "pulse_area_"j"_filled"; \ + relative: 1.0 0.0; \ + } \ + rel2 { \ + to_x: "pulse_area_"j"_filled"; \ + to_y: "pulse_area_"j"_filled"; \ + relative: 1.0 1.0; \ + } \ + align: 0.0 0.5; \ + color: 255 255 255 26; \ + } \ +} \ +part { name: "pulse_area_"i"_filled"; type: RECT; mouse_events: 0; \ + clip_to: "pulse_clipper"; \ + description { state: "default" 0.0; \ + min: 10 4; \ + max: 10 4; \ + fixed: 1 1; \ + rel1 { \ + to_x: "pulse_area_"i"_blank"; \ + to_y: "pulse_area_"i"_blank"; \ + relative: 1.0 0.0; \ + } \ + rel2 { \ + to_x: "pulse_area_"i"_blank"; \ + to_y: "pulse_area_"i"_blank"; \ + relative: 1.0 1.0; \ + } \ + align: 0.0 0.5; \ + color: 255 255 255 178; \ + } \ +} \ + + +/***************************************************************************** +Document: Tizen TV_General Guide_GUI Guideline_v1.0_140508_1.ppt, Page no. 95, +Progessbar filling style, single progress filling, +Gray color filling over a trasparent bg +******************************************************************************/ +group { name: "elm/progressbar/horizontal/default"; + parts { + part { name: "elm.background.progressbar"; type: RECT; mouse_events: 0; + description { state: "default" 0.0; + min: 4 4; + max: 9999 4; + } + } + part { name: "elm.swallow.bar"; mouse_events: 0; type: SWALLOW; + description { + min: 4 4; + max: 9999 4; + fixed: 1 1;state: "default" 0.0; + rel1 { + to_x: "elm.text"; + to_y: "elm.background.progressbar"; + } + rel2.to: "elm.background.progressbar"; + } + } + part { name: "elm.swallow.content"; type: SWALLOW; + description { state: "default" 0.0; + visible: 0; + align: 0.0 0.5; + rel1.to_y: "elm.background.progressbar"; + rel2 { + relative: 0.0 1.0; + to_y: "elm.background.progressbar"; + } + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + } + } + part { name: "elm.text"; type: TEXT; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + visible: 0; + fixed: 1 1; + align: 0.0 0.5; + rel1.to_x: "elm.swallow.content"; + rel1.relative: 1.0 0.0; + rel2.to_x: "elm.swallow.content"; + color: 0 0 0 0; + text { + font: "Sans,Edje-Vera"; + size: 10; + min: 0 0; + align: 0.0 0.5; + } + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + text.min: 1 1; + text.ellipsis: -1; + } + } + part { name: "background"; type: RECT; mouse_events: 0; + clip_to: "elm.background.progressbar"; + description { state: "default" 0.0; + rel1.to: "elm.swallow.bar"; + rel2.to: "elm.swallow.bar"; + color: 255 255 255 26; + } + } + part { name: "elm.text.status"; type: TEXT; mouse_events: 0; + description { state: "default" 0.0; + fixed: 1 1; + visible: 1; + rel1 { + to: "background"; + relative: 0.5 0.5; + } + rel2 { + to: "background"; + relative: 0.5 0.5; + } + text { + font: "Sans:style=Bold,Edje-Vera-Bold"; + size: 10; + min: 1 1; + ellipsis: -1; + align: 0.5 0.0; + } + color: 0 0 0 0; + } + description { state: "hidden" 0.0; + inherit: "default" 0.0; + visible: 0; + text.min: 0 0; + } + } + part { name: "elm.progress.progressbar"; type: RECT; mouse_events: 0; + clip_to: "elm.background.progressbar"; + description { state: "default" 0.0; + min: 10 4; + max: 9999 4; + fixed: 1 1; + rel1.to: "elm.swallow.bar"; + rel2 { + to_y: "elm.swallow.bar"; + to_x: "elm.cur.progressbar"; + } + color: 255 255 255 178; + } + description { state: "invert" 0.0; + inherit: "default" 0.0; + rel1 { + to_y: "elm.swallow.bar"; + to_x: "elm.cur.progressbar"; + } + rel2.to: "elm.swallow.bar"; + } + description { state: "state_begin" 0.0; //OK + inherit: "default" 0.0; + min: 10 4; + max: 10 4; + rel1.to: "elm.swallow.bar"; + rel2 { + to: "elm.swallow.bar"; + relative: 0.0 1.0; + } + align: 0.0 0.5; + } + description { state: "state_end" 0.0; + inherit: "default" 0.0; + min: 10 4; + max: 10 4; + rel1 { + to: "pulse_area0"; + relative: 1.0 0.0; + } + rel2 { + to: "pulse_area0"; + relative: 1.0 1.0; + } + align: 0.0 0.5; + } + description { state: "state_end1" 0.0; //OK + inherit: "state_begin" 0.0; + } + description { state: "state_begin1" 0.0; //OK + inherit: "state_end" 0.0; + } + } + part { name: "pulse_clipper"; type: RECT; mouse_events: 0; + clip_to: "elm.background.progressbar"; + description { state: "default" 0.0; + fixed: 1 1; + rel1.to: "elm.background.progressbar"; + rel2.to: "elm.background.progressbar"; + visible: 0; + }//tt + description { state: "state_pulse" 0.0; //OK + inherit: "default" 0.0; + visible: 1; + } + description { state: "state_begin" 0.0; //OK + inherit: "default" 0.0; + visible: 1; + } + } + part { name: "pulse_area0"; type: SPACER; mouse_events: 0; + description { state: "default" 0.0; + min: 20 4; + max: 20 4; + fixed: 1 1; + rel1.to: "elm.swallow.bar"; + rel2 { + to_y: "elm.swallow.bar"; + to_x: "elm.cur.progressbar"; + relative: 0.0 1.0; + } + align: 0.0 0.5; + } + } + part { name: "pulse_area_0_blank"; type: RECT; mouse_events: 0; + clip_to: "pulse_clipper"; + description { state: "default" 0.0; + min: 10 4; + max: 10 4; + fixed: 1 1; + rel1 { + to_x: "elm.progress.progressbar"; + to_y: "elm.progress.progressbar"; + relative: 1.0 0.0; + } + rel2 { + to_x: "elm.progress.progressbar"; + to_y: "elm.progress.progressbar"; + relative: 1.0 1.0; + } + align: 0.0 0.5; + color: 255 255 255 26; + } + } + part { name: "pulse_area_0_filled"; type: RECT; mouse_events: 0; + clip_to: "pulse_clipper"; + description { state: "default" 0.0; + min: 10 4; + max: 10 4; + fixed: 1 1; + rel1 { + to_x: "pulse_area_0_blank"; + to_y: "pulse_area_0_blank"; + relative: 1.0 0.0; + } + rel2 { + to_x: "pulse_area_0_blank"; + to_y: "pulse_area_0_blank"; + relative: 1.0 1.0; + } + align: 0.0 0.5; + color: 255 255 255 178; + } + } + ADD_PULSE_PARTS + part { name: "text-bar"; type: TEXT; mouse_events: 0; + clip_to: "progress-rect"; + effect: SOFT_SHADOW; + scale: 1; + description { state: "default" 0.0; + align: 0.0 0.0; + fixed: 1 1; + visible: 1; + rel1.to: "elm.text.status"; + rel2.to: "elm.text.status"; + text { + text_source: "elm.text.status"; + font: "Sans:style=Bold,Edje-Vera-Bold"; + size: 10; + min: 1 1; + ellipsis: -1; + align: 0.0 0.0; + } + color: 224 224 224 0; + color3: 0 0 0 64; + } + description { state: "hidden" 0.0; + inherit: "default" 0.0; + visible: 0; + text.min: 0 0; + } + } + part { name: "over1"; type: RECT; mouse_events: 0; + description { state: "default" 0.0; + rel1.to: "elm.progress.progressbar"; + rel2.to: "elm.progress.progressbar"; + rel2.relative: 1.0 0.5; + color: 0 0 0 0; + } + } + part { name: "over2"; type: RECT; mouse_events: 1; + repeat_events: 1; + description { state: "default" 0.0; + rel1.to: "elm.progress.progressbar"; + rel2.to: "elm.progress.progressbar"; + color: 0 0 0 0; + } + } + part { name: "elm.cur.progressbar"; mouse_events: 0; + dragable { + confine: "background"; + x: 1 1 1; + y: 0 0 0; + } + description { state: "default" 0.0; + min: 4 4; + max: 9999 4; + fixed: 1 1; + visible: 0; + rel1.to: "background"; + rel2.to: "background"; + } + } + part { name: "progress-rect"; type: RECT; mouse_events: 0; + description { state: "default" 0.0; + rel1.to: "elm.progress.progressbar"; + rel2.to: "elm.progress.progressbar"; + } + } + part { name: "tmp"; type: RECT; mouse_events: 0; + repeat_events: 1; + description { state: "default" 0.0; + rel1.to: "elm.swallow.bar"; + rel2.to: "elm.swallow.bar"; + color: 255 0 0 0; + } + } + } + programs { + program { name: "label_show"; + signal: "elm,state,text,visible"; + source: "elm"; + action: STATE_SET "visible" 0.0; + target: "elm.text"; + } + program { name: "label_hide"; + signal: "elm,state,text,hidden"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + } + program { name: "icon_show"; + signal: "elm,state,icon,visible"; + source: "elm"; + action: STATE_SET "visible" 0.0; + target: "elm.swallow.content"; + } + program { name: "icon_hide"; + signal: "elm,state,icon,hidden"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.swallow.content"; + } + program { name: "units_show"; + signal: "elm,state,units,visible"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "text-bar"; + target: "elm.text.status"; + } + program { name: "units_hide"; + signal: "elm,state,units,hidden"; + source: "elm"; + action: STATE_SET "hidden" 0.0; + target: "text-bar"; + target: "elm.text.status"; + } + program { name: "slide_to_end"; + action: STATE_SET "state_end" 0.0; + transition: LINEAR 0.5; + target: "elm.progress.progressbar"; + after: "slide_to_begin"; + } + program { name: "slide_to_begin"; + signal: "elm,state,slide,begin"; + action: STATE_SET "state_begin" 0.0; + target: "elm.progress.progressbar"; +// transition: LINEAR 0.5; + after: "slide_to_end"; + } + program { name: "start_pulse"; + signal: "elm,state,pulse,start"; + source: "elm"; + action: STATE_SET "state_pulse" 0.0; + target: "pulse_clipper"; + after: "slide_to_end"; + } + program { name: "stop_pulse"; + signal: "elm,state,pulse,stop"; + source: "elm"; + action: ACTION_STOP; + target: "slide_to_begin"; + target: "slide_to_end"; + target: "start_pulse"; + after: "state_pulse"; + } + program { name: "state_pulse"; + signal: "elm,state,pulse"; + source: "elm"; + action: STATE_SET "state_begin" 0.0; + target: "elm.progress.progressbar"; + target: "pulse_clipper"; + after: "units_hide"; + } + program { name: "state_fraction"; + signal: "elm,state,fraction"; + source: "elm"; + action: ACTION_STOP; + target: "slide_to_begin"; + target: "slide_to_end"; + target: "start_pulse"; + action: STATE_SET "default" 0.0; + target: "elm.progress.progressbar"; + } + program { name: "set_invert_on"; + signal: "elm,state,inverted,on"; + source: "elm"; + action: STATE_SET "invert" 0.0; + target: "elm.progress.progressbar"; + } + program { name: "set_invert_off"; + signal: "elm,state,inverted,off"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.progress.progressbar"; + } + } +} + +/***************************************************************************** +Document: Tizen TV_General Guide_GUI Guideline_v1.0_140508_1.ppt, Page no. 95, +Vertical Progessbar filling style, single progress filling, +Gray color filling over a trasparent bg +******************************************************************************/ +group { name: "elm/progressbar/vertical/default"; + parts { + part { name: "elm.background.progressbar"; type: RECT; mouse_events: 0; + description { state: "default" 0.0; + } + } + part { name: "elm.swallow.bar"; type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + min: 4 4; + max: 4 9999; + fixed: 1 1; + align: 0.5 1.0; + rel1 { + to_y: "elm.text"; + relative: 0.0 1.0; + } + rel2 { + to_y: "elm.text.box"; + relative: 1.0 0.0; + } + } + } + part { name: "elm.swallow.content"; type: SWALLOW; + description { state: "default" 0.0; + visible: 0; + align: 0.5 0.0; + rel1.to_x: "elm.swallow.bar"; + rel2 { + relative: 1.0 0.0; + to_x: "elm.swallow.bar"; + } + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + aspect: 1.0 1.0; + aspect_preference: HORIZONTAL; + } + } + part { name: "elm.text"; type: TEXT; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + visible: 0; + fixed: 1 1; + align: 0.5 0.0; + rel1.to_y: "elm.swallow.content"; + rel1.relative: 0.5 1.0; + rel2.to_y: "elm.swallow.content"; + rel2.relative: 0.5 1.0; + color: 0 0 0 0; + text { + font: "Sans,Edje-Vera"; + size: 10; + min: 0 0; + align: 0.5 0.0; + } + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + text.min: 1 1; + text.ellipsis: -1; + } + } + part { name: "background"; type: RECT; mouse_events: 0; + clip_to: "elm.background.progressbar"; + description { state: "default" 0.0; + rel1.to: "elm.swallow.bar"; + rel2.to: "elm.swallow.bar"; + color: 255 255 255 26; + } + } + part { name: "elm.progress.progressbar"; type: RECT; mouse_events: 0; + clip_to: "elm.background.progressbar"; + description { state: "default" 0.0; + min: 4 4; + max: 4 9999; + fixed: 1 1; + rel1.to: "elm.swallow.bar"; + rel2 { + to_x: "elm.swallow.bar"; + to_y: "elm.cur.progressbar"; + } + color: 255 255 255 178; + } + description { state: "invert" 0.0; + inherit: "default" 0.0; + rel1 { + to_x: "elm.swallow.bar"; + to_y: "elm.cur.progressbar"; + } + rel2.to: "elm.swallow.bar"; + } + description { state: "state_begin" 0.0; + inherit: "default" 0.0; + rel1.to: "elm.swallow.bar"; + rel2 { + to: "elm.swallow.bar"; + relative: 1.0 0.1; + } + } + description { state: "state_end" 0.0; + inherit: "default" 0.0; + rel1 { + to: "elm.swallow.bar"; + relative: 0.0 0.9; + } + rel2.to: "elm.swallow.bar"; + } + } + part { name: "over1"; type: RECT; mouse_events: 0; + description { state: "default" 0.0; + rel1.to: "elm.progress.progressbar"; + rel2.to: "elm.progress.progressbar"; + rel2.relative: 1.0 0.5; + color: 0 0 0 0; + } + } + part { name: "over2"; type: RECT; mouse_events: 1; + repeat_events: 1; + description { state: "default" 0.0; + rel1.to: "elm.progress.progressbar"; + rel2.to: "elm.progress.progressbar"; + color: 0 0 0 0; + } + } + part { name: "elm.cur.progressbar"; mouse_events: 0; + dragable { + confine: "background"; + x: 0 0 0; + y: 1 1 1; + } + description { state: "default" 0.0; + min: 4 4; + max: 9999 4; + fixed: 1 1; + visible: 0; + rel1.to: "background"; + rel2.to: "background"; + } + } + part { name: "elm.text.box"; mouse_events: 0; type: RECT; + description { state: "default" 0.0; + visible: 0; + rel1.to: "elm.text.status"; + rel2.to: "elm.text.status"; + color: 255 255 255 0; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { name: "elm.text.status"; type: TEXT; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + visible: 0; + fixed: 1 1; + align: 0.5 1.0; + rel1.relative: 0.0 1.0; + color: 0 0 0 0; + text { + font: "Sans:style=Bold,Edje-Vera-Bold"; + size: 10; + min: 0 0; + align: 0.5 0.0; + } + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + fixed: 1 1; + visible: 1; + text.min: 1 1; + text.ellipsis: -1; + } + } + } + programs { + program { name: "label_show"; + signal: "elm,state,text,visible"; + source: "elm"; + action: STATE_SET "visible" 0.0; + target: "elm.text"; + } + program { name: "label_hide"; + signal: "elm,state,text,hidden"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + } + program { name: "icon_show"; + signal: "elm,state,icon,visible"; + source: "elm"; + action: STATE_SET "visible" 0.0; + target: "elm.swallow.content"; + } + program { name: "icon_hide"; + signal: "elm,state,icon,hidden"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.swallow.content"; + } + program { name: "units_show"; + signal: "elm,state,units,visible"; + source: "elm"; + action: STATE_SET "visible" 0.0; + target: "elm.text.status"; + target: "elm.text.box"; + } + program { name: "units_hide"; + signal: "elm,state,units,hidden"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.text.status"; + target: "elm.text.box"; + } + program { name: "slide_to_end"; + action: STATE_SET "state_end" 0.0; + transition: LINEAR 0.5; + target: "elm.progress.progressbar"; + after: "slide_to_begin"; + } + program { name: "slide_to_begin"; + action: STATE_SET "state_begin" 0.0; + target: "elm.progress.progressbar"; + transition: LINEAR 0.5; + after: "slide_to_end"; + } + program { name: "start_pulse"; + signal: "elm,state,pulse,start"; + source: "elm"; + action: STATE_SET "state_begin" 0.0; + target: "elm.progress.progressbar"; + after: "slide_to_end"; + } + program { name: "stop_pulse"; + signal: "elm,state,pulse,stop"; + source: "elm"; + action: ACTION_STOP; + target: "slide_to_begin"; + target: "slide_to_end"; + target: "start_pulse"; + after: "state_pulse"; + } + program { name: "state_pulse"; + signal: "elm,state,pulse"; + source: "elm"; + action: STATE_SET "state_begin" 0.0; + target: "elm.progress.progressbar"; + after: "units_hide"; + } + program { name: "state_fraction"; + signal: "elm,state,fraction"; + source: "elm"; + action: ACTION_STOP; + target: "slide_to_begin"; + target: "slide_to_end"; + target: "start_pulse"; + action: STATE_SET "default" 0.0; + target: "elm.progress.progressbar"; + } + program { name: "set_invert_on"; + signal: "elm,state,inverted,on"; + source: "elm"; + action: STATE_SET "invert" 0.0; + target: "elm.progress.progressbar"; + target: "elm.cur.progressbar"; + } + program { name: "set_invert_off"; + signal: "elm,state,inverted,off"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.progress.progressbar"; + target: "elm.cur.progressbar"; + } + } +} diff --git a/ElmSharp/theme/tv/widgets/radio.edc b/ElmSharp/theme/tv/widgets/radio.edc new file mode 100644 index 0000000..b94c1bc --- /dev/null +++ b/ElmSharp/theme/tv/widgets/radio.edc @@ -0,0 +1,335 @@ +/* + * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved + * + * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/***************************************************************************** +Document: Tizen TV_General Guide_GUI Guideline_v1.0_140508_1.ppt, Page no. 77, +******************************************************************************/ +#define RADIO_SIZE 38 38 +#define RADIO_FONT_SIZE 24 + +group { name: "elm/radio/base/default"; + images { + image: "radiobtn_on_nor.png" COMP; + image: "radiobtn_off_nor.png" COMP; + image: "radiobtn_off_foc.png" COMP; + image: "radiobtn_on_foc.png" COMP; + } + data.item: "focus_highlight" "on"; + script { + public is_focus = 0; + public is_checkd = 0; + public set_focus() { + set_int(is_focus, 1); + } + public unset_focus() { + set_int(is_focus, 0); + } + public set_check_set() { + set_state(PART:"bg", "invisible", 0.0); + if (get_int(is_focus)) { + set_state(PART:"radio", "highlight", 0.0); + } + else { + set_state(PART:"radio", "visible", 0.0); + } + } + public set_check_unset() { + set_state(PART:"radio", "default", 0.0); + if (get_int(is_focus)) { + set_state(PART:"bg", "highlight", 0.0); + } + else { + set_state(PART:"bg", "default", 0.0); + } + } + } + parts { + part { name: "bg"; + mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel2.relative: 0.0 1.0; + align: 0.0 0.5; + min: RADIO_SIZE; + max: RADIO_SIZE; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + image.normal: "radiobtn_off_nor.png"; + } + description { state: "invisible" 0.0; + inherit: "default" 0.0; + visible: 0; + } + description { state: "highlight" 0.0; + inherit: "default" 0.0; + image.normal: "radiobtn_off_foc.png"; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 255 255 255 51; + } + } + part { name: "radio"; + mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1.to: "bg"; + rel2.to: "bg"; + image.normal: "radiobtn_on_nor.png"; + visible: 0; + } + description { state: "highlight" 0.0; + inherit: "default" 0.0; + image.normal: "radiobtn_on_foc.png"; + visible: 1; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { name: "elm.swallow.content"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + fixed: 1 0; + visible: 0; + align: 0.0 0.5; + max: 0 0; + rel1.to_x: "bg"; + rel1.relative: 1.0 0.0; + rel1.offset: 1 1; + rel2.to_x: "bg"; + rel2.offset: 1 -2; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + aspect: 1.0 1.0; + min: RADIO_SIZE; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 255 255 255 128; + } + description { state: "disabled_visible" 0.0; + inherit: "default" 0.0; + color: 255 255 255 128; + visible: 1; + aspect: 1.0 1.0; + } + } + part { name: "elm.text"; + type: TEXT; + mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + visible: 0; + rel1.to_x: "elm.swallow.content"; + rel1.relative: 1.0 0.0; + rel1.offset: 1 1; + rel2.offset: -2 -2; + color: 0 0 0 255; + text { font: FONT_M; + size: RADIO_FONT_SIZE; + min: 0 0; + align: -1.0 0.5; + } + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + text.min: 1 1; + text.ellipsis: -1; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 0 0 0 128; + color3: 0 0 0 0; + } + description { state: "disabled_visible" 0.0; + inherit: "default" 0.0; + color: 0 0 0 128; + color3: 0 0 0 0; + visible: 1; + text.min: 1 1; + text.ellipsis: -1; + } + } + part { name: "events"; + type: RECT; + description { state: "default" 0.0; + color: 0 0 0 0; + } + } + 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: "click"; + signal: "mouse,clicked,1"; + source: "events"; + action: SIGNAL_EMIT "elm,action,radio,toggle" ""; + } + program { name: "radio_on"; + signal: "elm,state,radio,on"; + source: "elm"; + script{ + set_check_set(); + } + } + program { name: "radio_off"; + signal: "elm,state,radio,off"; + source: "elm"; + script{ + set_check_unset(); + } + } + program { name: "text_show"; + signal: "elm,state,text,visible"; + source: "elm"; + action: STATE_SET "visible" 0.0; + target: "elm.text"; + } + program { name: "text_hide"; + signal: "elm,state,text,hidden"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + } + program { name: "icon_show"; + signal: "elm,state,icon,visible"; + source: "elm"; + action: STATE_SET "visible" 0.0; + target: "elm.swallow.content"; + } + program { name: "icon_hide"; + signal: "elm,state,icon,hidden"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.swallow.content"; + } + program { name: "disable"; + signal: "elm,state,disabled"; + source: "elm"; + action: STATE_SET "disabled" 0.0; + target: "bg"; + target: "bg"; + 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); + get_state(PART:"elm.swallow.content", st, 30, vl); + if (!strcmp(st, "visible")) + set_state(PART:"elm.swallow.content", "disabled_visible", 0.0); + else + set_state(PART:"elm.swallow.content", "disabled", 0.0); + } + } + program { name: "enable"; + signal: "elm,state,enabled"; + source: "elm"; + action: STATE_SET "default" 0.0; + 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); + get_state(PART:"elm.swallow.content", st, 30, vl); + if (!strcmp(st, "visible")) + set_state(PART:"elm.swallow.content", "visible", 0.0); + else + set_state(PART:"elm.swallow.content", "default", 0.0); + } + } + program { name: "focused"; + signal: "elm,action,focus"; source: "elm"; + script { + set_focus(); + } + after: "enable_focus"; + } + program { name: "enable_focus"; + script { + new st[31]; + new Float:vl; + get_state(PART:"bg", st, 30, vl); + if (!strcmp(st, "default")) + set_state(PART:"bg", "highlight", 0.0); + + get_state(PART:"radio", st, 30, vl); + if (!strcmp(st, "visible")) { + set_state(PART:"radio", "highlight", 0.0); + set_state(PART:"bg", "invisible", 0.0); + } + } + } + program { name: "unfocused"; + signal: "elm,action,unfocus"; source: "elm"; + script { + unset_focus(); + } + after: "disable_focus"; + } + program { name: "disable_focus"; + script { + new st[31]; + new Float:vl; + get_state(PART:"bg", st, 30, vl); + if (!strcmp(st, "highlight")) + set_state(PART:"bg", "default", 0.0); + + get_state(PART:"radio", st, 30, vl); + if (!strcmp(st, "highlight")) + set_state(PART:"radio", "visible", 0.0); + } + } + } +} diff --git a/ElmSharp/theme/tv/widgets/scroller.edc b/ElmSharp/theme/tv/widgets/scroller.edc new file mode 100644 index 0000000..178a43d --- /dev/null +++ b/ElmSharp/theme/tv/widgets/scroller.edc @@ -0,0 +1,613 @@ +/* + * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved + * + * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/**************************************************************************** +DOC: Tizen TV_General Guide_GUI Guideline_v1.0_140430.ppt page : 61 style: black +****************************************************************************/ +group { name: "elm/scroller/base/default"; + alias: "elm/list/base/default"; + alias: "elm/genlist/base/default"; + alias: "elm/gengrid/base/default"; + alias: "elm/scroller/base/map_bubble"; + alias: "elm/genscroller/base/default"; + + data { + item: "focus_highlight" "on"; + } + + script { + public sbvis_v, sbvis_h, sbalways_v, sbalways_h, sbvis_timer; + public timer0(val) { + new v; + v = get_int(sbvis_v); + if (v) { + v = get_int(sbalways_v); + if (!v) { + emit("do-hide-vbar", ""); + set_int(sbvis_v, 0); + } + } + v = get_int(sbvis_h); + if (v) { + v = get_int(sbalways_h); + if (!v) { + emit("do-hide-hbar", ""); + set_int(sbvis_h, 0); + } + } + set_int(sbvis_timer, 0); + return 0; + } + public visible_scroll() { + new v; + v = get_int(sbvis_v); + v |= get_int(sbalways_v); + if (!v) { + emit("do-show-vbar", ""); + set_int(sbvis_v, 1); + } + v = get_int(sbvis_h); + v |= get_int(sbalways_h); + if (!v) { + emit("do-show-hbar", ""); + set_int(sbvis_h, 1); + } + v = get_int(sbvis_timer); + if (v > 0) cancel_timer(v); + v = timer(5.0, "timer0", 0); + set_int(sbvis_timer, v); + } + public mask(val) { + new x, y , w, h, x1, y1 , w1, h1; + get_geometry(PART:"pad.drag_up", x,y,w, h); + get_geometry(PART:"pad.vbar_up", x1,y1,w1, h1); + + if( y >= y1 && y <=(y1+h1) ) + { + set_state(PART:"mask.top", "default", 0.0); + } + else + { + set_state(PART:"mask.top", "show", 0.0); + } + get_geometry(PART:"pad.drag_down", x,y,w, h); + get_geometry(PART:"pad.vbar_down", x1,y1,w1, h1); + + if( (y+h) >= y1 && (y+h) <= (y1+h1) ) + { + set_state(PART:"mask.bottom", "hidden", 0.0); + } + else + { + set_state(PART:"mask.bottom", "default", 0.0); + } + if(val < 100) + timer(0.01,"mask",val+1); + } + + } + + images { + image: "scrollbar_vertical.png" COMP; + image: "scrollbar_horizontal.png" COMP; + image: "scrollbar_mask_top.png" COMP; + image: "scrollbar_mask_bottom.png" COMP; + } + parts { + part { name: "bg"; type: RECT; + description { state: "default" 0.0; + color: 255 255 255 0; + } + } + part { name: "clipper"; type: RECT; mouse_events: 0; + description { state: "default" 0.0; + rel1.to: "bg"; + rel2.to: "bg"; + } + } + part { name: "elm.swallow.content"; type: SWALLOW; + clip_to: "clipper"; + description { state: "default" 0.0; + rel1.to: "bg"; + rel2.to: "bg"; + } + } + part { name: "mask.top"; mouse_events: 1; + repeat_events: 1; + clip_to: "clipper"; + description { state: "default" 0.0; + rel1.to: "elm.swallow.content"; + align: 0 0; + min: 0 36; + max: -1 36; + fixed: 1 1; + image.normal: "scrollbar_mask_top.png"; + visible: 0; + } + description { state: "show" 0.0; + inherit: "default"; + visible: 0; + } + } + part { name: "mask.bottom"; mouse_events: 1; + repeat_events: 1; + clip_to: "clipper"; + description { state: "default" 0.0; + rel2.to: "elm.swallow.content"; + align: 1 1; + min: 0 36; + max: -1 36; + fixed: 1 1; + image.normal: "scrollbar_mask_bottom.png"; + visible: 0; + } + description { state: "hidden" 0.0; + inherit: "default"; + visible: 0; + } + } + part { name: "pad.vbar_up"; type: SPACER; + repeat_events: 1; + description { state: "default" 0.0; + min: 4 18; + max: 4 18; + fixed: 1 1; + align: 0.0 0.0; + rel1.to: "sb_vbar"; + rel2.to: "sb_vbar"; + } + } + part { name: "pad.drag_up"; type: SPACER; + repeat_events: 1; + description { state: "default" 0.0; + min: 4 4; + max: 4 4; + fixed: 1 1; + align: 0.0 0.0; + rel1.to: "elm.dragable.vbar"; + rel2.to: "elm.dragable.vbar"; + } + } + part { name: "pad.vbar_down"; type: SPACER; + repeat_events: 1; + description { state: "default" 0.0; + min: 4 18; + max: 4 18; + fixed: 1 1; + align: 0.0 1.0; + rel1.to: "sb_vbar"; + rel2.to: "sb_vbar"; + } + } + part { name: "pad.drag_down"; type: SPACER; + repeat_events: 1; + description { state: "default" 0.0; + min: 4 4; + max: 4 4; + fixed: 1 1; + align: 0.0 1.0; + rel1.to: "elm.dragable.vbar"; + rel2.to: "elm.dragable.vbar"; + } + } + + part { name: "conf_over"; type: RECT; mouse_events: 0; + description { state: "default" 0.0; + rel1.to: "bg"; + rel2.to: "bg"; + color: 255 255 0 0; + } + description { state: "enabled" 0.0; + inherit: "default" 0.0; + color: 200 155 0 0; + } + } + part { name: "focus_highlight"; type: RECT; mouse_events: 0; + description { state: "default" 0.0; + color: 200 155 0 0; + } + description { state: "enabled" 0.0; + inherit: "default" 0.0; + color: 200 155 0 0; + } + } + part { name: "sb_vbar_clip_master"; type: RECT; mouse_events: 0; + description { state: "default" 0.0; + } + description { state: "hidden" 0.0; + visible: 0; + } + } + part { name: "sb_vbar_clip"; type: RECT; mouse_events: 0; + clip_to: "sb_vbar_clip_master"; + description { state: "default" 0.0; + } + description { state: "hidden" 0.0; + visible: 0; + } + } + part { name: "sb_vbar"; type: RECT; mouse_events: 1; + description { state: "default" 0.0; + fixed: 1 1; + visible: 0; + min: 10 17; + align: 1.0 0.0; + rel1 { + relative: 1.0 0.0; + to_y: "elm.swallow.content"; + to_x: "elm.swallow.content"; + } + rel2 { + relative: 1.0 0.0; + to_y: "sb_hbar"; + to_x: "elm.swallow.content"; + } + } + } + part { name: "elm.dragable.vbar"; mouse_events: 0; + clip_to: "sb_vbar_clip"; + dragable { + x: 0 0 0; + y: 1 1 0; + confine: "sb_vbar"; + } + description { state: "default" 0.0; + fixed: 1 1; + min: 8 9; + max: 8 -1; + rel1 { + relative: 0.5 0.5; + to: "sb_vbar"; + } + rel2 { + relative: 0.5 0.5; + to: "sb_vbar"; + } + color: 0 0 0 64; + image { + normal: "scrollbar_vertical.png"; + border: 4 4 4 4; + middle: SOLID; + } + } + } + part { name: "sb_hbar_clip_master"; type: RECT; mouse_events: 0; + description { state: "default" 0.0; + } + description { state: "hidden" 0.0; + visible: 0; + } + } + part { name: "sb_hbar_clip"; type: RECT; mouse_events: 0; + clip_to: "sb_hbar_clip_master"; + description { state: "default" 0.0; + } + description { state: "hidden" 0.0; + visible: 0; + } + } + part { name: "sb_hbar"; type: RECT; mouse_events: 1; + description { state: "default" 0.0; + fixed: 1 1; + visible: 0; + min: 17 10; + align: 0.0 1.0; + rel1 { + relative: 0.0 1.0; + to_x: "elm.swallow.content"; + to_y: "elm.swallow.content"; + } + rel2 { + relative: 0.0 1.0; + to_x: "sb_vbar"; + to_y: "elm.swallow.content"; + } + } + } + part { name: "elm.dragable.hbar"; mouse_events: 0; + clip_to: "sb_hbar_clip"; + dragable { + x: 1 1 0; + y: 0 0 0; + confine: "sb_hbar"; + } + description { state: "default" 0.0; + fixed: 1 1; + min: 9 8 ; + max: -1 8 ; + rel1 { + relative: 0.5 0.5; + to: "sb_hbar"; + } + rel2 { + relative: 0.5 0.5; + to: "sb_hbar"; + } + color: 0 0 0 64; + image { + normal: "scrollbar_horizontal.png"; + border: 4 4 4 4; + middle: SOLID; + } + } + } + part { name: "disabler"; type: RECT; + description { state: "default" 0.0; + rel1.to: "clipper"; + rel2.to: "clipper"; + visible: 0; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + visible: 1; + color: 128 128 128 128; + } + } + } + programs { + program { name: "load"; + signal: "load"; + source: ""; + script { + mask(0); + set_state(PART:"sb_hbar_clip", "hidden", 0.0); + set_state(PART:"sb_vbar_clip", "hidden", 0.0); + set_int(sbvis_h, 0); + set_int(sbvis_v, 0); + set_int(sbalways_v, 0); + set_int(sbalways_h, 0); + set_int(sbvis_timer, 0); + } + } + program { name: "vbar_show"; + signal: "elm,action,show,vbar"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "sb_vbar_clip_master"; + } + program { name: "vbar_hide"; + signal: "elm,action,hide,vbar"; + source: "elm"; + action: STATE_SET "hidden" 0.0; + target: "sb_vbar_clip_master"; + } + program { name: "vbar_show_always"; + signal: "elm,action,show_always,vbar"; + source: "elm"; + script { + new v; + v = get_int(sbvis_v); + v |= get_int(sbalways_v); + if (!v) { + set_int(sbalways_v, 1); + emit("do-show-vbar", ""); + set_int(sbvis_v, 1); + } + } + } + program { name: "vbar_show_notalways"; + signal: "elm,action,show_notalways,vbar"; + source: "elm"; + script { + new v; + v = get_int(sbalways_v); + if (v) { + set_int(sbalways_v, 0); + v = get_int(sbvis_v); + if (!v) { + emit("do-hide-vbar", ""); + set_int(sbvis_v, 0); + } + } + } + } + program { name: "sb_vbar_show"; + signal: "do-show-vbar"; + source: ""; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.5; + target: "sb_vbar_clip"; + } + program { name: "sb_vbar_hide"; + signal: "do-hide-vbar"; + source: ""; + action: STATE_SET "hidden" 0.0; + transition: LINEAR 0.5; + target: "sb_vbar_clip"; + } + + program { name: "hbar_show"; + signal: "elm,action,show,hbar"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "sb_hbar_clip_master"; + } + program { name: "hbar_hide"; + signal: "elm,action,hide,hbar"; + source: "elm"; + action: STATE_SET "hidden" 0.0; + target: "sb_hbar_clip_master"; + } + program { name: "hbar_show_always"; + signal: "elm,action,show_always,hbar"; + source: "elm"; + script { + new v; + v = get_int(sbvis_h); + v |= get_int(sbalways_h); + if (!v) { + set_int(sbalways_h, 1); + emit("do-show-hbar", ""); + set_int(sbvis_h, 1); + } + } + } + program { name: "hbar_show_notalways"; + signal: "elm,action,show_notalways,hbar"; + source: "elm"; + script { + new v; + v = get_int(sbalways_h); + if (v) { + set_int(sbalways_h, 0); + v = get_int(sbvis_h); + if (!v) { + emit("do-hide-hbar", ""); + set_int(sbvis_h, 0); + } + } + } + } + program { name: "sb_hbar_show"; + signal: "do-show-hbar"; + source: ""; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.5; + target: "sb_hbar_clip"; + } + program { name: "sb_hbar_hide"; + signal: "do-hide-hbar"; + source: ""; + action: STATE_SET "hidden" 0.0; + transition: LINEAR 0.5; + target: "sb_hbar_clip"; + } + program { name: "scroll"; + signal: "elm,action,scroll"; + source: "elm"; + script { + mask(100); + visible_scroll(); + } + } + program { name: "mouseoverv"; + signal: "mouse,in"; + source: "sb_vbar"; + script { + visible_scroll(); + } + + } + program { name: "mouseoverh"; + signal: "mouse,in"; + source: "sb_hbar"; + script { + visible_scroll(); + } + } + program { name: "focus"; + signal: "elm,action,focus"; + source: "elm"; + script { + mask(100); + visible_scroll(); + } + } + program { name: "highlight_show"; + signal: "elm,action,focus_highlight,show"; + source: "elm"; + action: STATE_SET "enabled" 0.0; + transition: ACCELERATE 0.3; + target: "focus_highlight"; + target: "conf_over"; + } + program { name: "highlight_hide"; + signal: "elm,action,focus_highlight,hide"; + source: "elm"; + action: STATE_SET "default" 0.0; + transition: DECELERATE 0.3; + target: "focus_highlight"; + target: "conf_over"; + } + program { name: "disable"; + signal: "elm,state,disabled"; + source: "elm"; + action: STATE_SET "disabled" 0.0; + target: "disabler"; + } + program { name: "enable"; + signal: "elm,state,enabled"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "disabler"; + } + program { + signal: "elm,scroller,arrow_up,hide"; + source: "elm"; + action: STATE_SET "invisible" 0.0; + target: "mask.top"; + } + } +} +/******************************************************************************** +DOC: Tizen TV_General Guide_GUI Guideline_v1.0_140430.ppt page : 61 style: white +* ******************************************************************************/ +group { name: "elm/scroller/base/white"; + inherit: "elm/scroller/base/default"; + alias: "elm/list/base/white"; + alias: "elm/genlist/base/white"; + alias: "elm/gengrid/base/white"; + alias: "elm/scroller/base/map_bubble"; + alias: "elm/genscroller/base/white"; + + parts { + part { name: "elm.dragable.vbar"; + description { state: "default" 0.0; + color: 255 255 255 25; + } + } + part { name: "elm.dragable.hbar"; + description { state: "default" 0.0; + color: 255 255 255 25; + } + } + } +} + +/******************************************************************************** +DOC: Tizen TV_General Guide_GUI Guideline_v1.0_140430.ppt page : 70 style: white +********************************************************************************/ +group { name: "elm/scroller/base/no_bar"; + inherit: "elm/scroller/base/default"; + alias: "elm/list/base/no_bar"; + alias: "elm/genlist/base/no_bar"; + alias: "elm/gengrid/base/no_bar"; + alias: "elm/scroller/base/map_bubble"; + alias: "elm/genscroller/base/no_bar"; + + parts { + part { name: "elm.dragable.vbar"; + description { state: "default" 0.0; + visible: 0; + } + } + part { name: "elm.dragable.hbar"; + description { state: "default" 0.0; + visible: 0; + } + } + } +} diff --git a/ElmSharp/theme/tv/widgets/slider.edc b/ElmSharp/theme/tv/widgets/slider.edc new file mode 100644 index 0000000..bedd884 --- /dev/null +++ b/ElmSharp/theme/tv/widgets/slider.edc @@ -0,0 +1,939 @@ +/* + * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved + * + * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/********************************************************************************* +Document: Tizen TV_General Guide_GUI Guideline_v1.0_140508_1.ppt, Page no.94, +style name: default +*********************************************************************************/ + +//ADD_COLOR_CLASS + +#define SLIDER_FONT_SIZE 26 + +group { name: "elm/slider/horizontal/default"; + data.item: "focus_highlight" "on"; + styles { + style { name: "slider_style"; + base: "font="FONT_M" font_size="26" align=centre color=#458fff left_margin=21 right_margin=21"; + tag: "hilight" "+ font_weight=Bold"; + tag: "em" "+ font_style=Bold"; + } + } + parts { + alias: "default" "elm.text"; + part { name: "base"; type: RECT; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + max: -1 8; + min: 0 8; + rel1 { to_y: "bg"; + to_x: "pad.level.left"; + relative: 1 0; + } + rel2 { to: "bg"; + to_x: "pad.level.right"; + relative: 0 1; + } + } + } + part { name: "pad.level.left"; type: SPACER; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1 { to: "elm.swallow.bar"; + relative: 0 1; + } + rel2 { to: "elm.swallow.bar"; + relative: 0 1; + } + min: 12 0; + max: 12 0; + fixed: 1 0; + align: 0 0; + } + } + part { name: "pad.level.right"; type: SPACER; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1 { to: "elm.swallow.bar"; + relative: 0 1; + } + rel2.to: "elm.swallow.bar"; + min: 12 0; + max: 12 0; + align: 1 0; + fixed: 1 0; + } + } + part { name: "level"; type: RECT; mouse_events: 0; + description { state: "default" 0.0; + fixed: 1 1; + rel1.to: "base"; + rel2 { to_y: "base"; + to_x: "elm.dragable.slider"; + relative: 0.5 1.0; + } + color: 255 255 255 255; + } + description { state: "inverted" 0.0; + inherit: "default" 0.0; + visible: 0; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 255 0 0 100; + } + description { state: "disabled_inverted" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "over"; type: RECT; mouse_events: 0; + description { state: "default" 0.0; + fixed: 1 1; + rel1 { to_y: "base"; + to_x: "elm.dragable.slider"; + relative: 0.5 0.0; + } + rel2.to: "base"; + color: 0 0 0 65; + } + } + part { name: "level2"; type: RECT; mouse_events: 0; + description { state: "default" 0.0; + fixed: 1 1; + visible: 1; + rel1 { to_y: "base"; + to_x: "elm.dragable.slider"; + relative: 0.5 0.0; + } + rel2.to: "base"; + color: 255 255 255 65; + } + description { state: "inverted" 0.0; + inherit: "default" 0.0; + visible: 1; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + } + description { state: "disabled_inverted" 0.0; + inherit: "default" 0.0; + color: 255 0 0 100; + visible: 1; + } + } + part { name: "pad.bg"; type: SPACER; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1.to: "elm.swallow.bar"; + rel2.to: "elm.swallow.bar"; + min: 12 0; + max: 12 0; + align: 0 0; + } + } + part { name: "pad.bg.right"; type: SPACER; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + rel1.to: "elm.swallow.bar"; + rel2.to: "elm.swallow.bar"; + min: 12 2; + max: 12 2; + align: 1 1; + } + } + part { name: "bg"; type: RECT; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + visible: 0; + align: 0.5 0.5; + rel1.to: "pad.bg"; + rel1.relative: 1 0; + rel2.to: "pad.bg.right"; + rel2.relative: 0 1; + color: 255 0 0 255; + } + } + part { name: "pad.swallow.left"; type: SPACER; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + align: 0 0; + min: 20 0; + max: 20 0; + rel1 { + to_x: "elm.text"; + relative: 1.0 0.0; + } + } + } + part { name: "pad.swallow.right"; type: SPACER; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + min: 20 0; + max: 20 0; + fixed: 1 1; + align: 1 1; + rel2 { + to_x: "elm.units"; + relative: 0.0 1.0; + } + } + } + part { name: "elm.swallow.bar"; type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + min: 48 24; + max: -1 24; + align: 1.0 0.5; + rel1 { + to: "pad.swallow.left"; + relative: 1.0 0.0; + } + rel2 { + to_x: "pad.swallow.right"; + relative: 0.0 1.0; + } + } + } + part { name: "elm.swallow.icon"; type: SWALLOW; + description { state: "default" 0.0; + visible: 0; + align: 0.0 0.5; + rel1 { + to_y: "elm.swallow.bar"; + } + rel2 { + relative: 0.0 1.0; + to_y: "elm.swallow.bar"; + } + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + } + } + part { name: "elm.text"; type: TEXT; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + visible: 0; + fixed: 1 1; + align: 1.0 0.5; + rel1.to_x: "elm.swallow.icon"; + rel1.relative: 1.0 0.0; + rel2.to_x: "elm.swallow.icon"; + rel2.relative: 1.0 1.0; + text { + font: "FONT_M"; + size: SLIDER_FONT_SIZE; + min: 0 0; + align: 0.0 0.5; + } + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + text.min: 1 1; + text.ellipsis: -1; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 255 128 128 128; + visible: 0; + } + description { state: "disabled_visible" 0.0; + inherit: "default" 0.0; + visible: 1; + text.min: 1 1; + text.ellipsis: -1; + } + } + part { name: "elm.swallow.end"; type: SWALLOW; + description { state: "default" 0.0; + visible: 0; + align: 1.0 0.5; + rel1 { + relative: 1.0 0.0; + to_y: "elm.swallow.bar"; + } + rel2 { + to_y: "elm.swallow.bar"; + } + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + aspect: 1.0 1.0; + aspect_preference: VERTICAL; + } + } + part { name: "elm.units"; type: TEXT; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + visible: 0; + fixed: 1 1; + rel1.to_x: "elm.swallow.end"; + rel2.to_x: "elm.swallow.end"; + color: 255 255 255 255; + align: 0 0.5; + text { + font: FONT_M; + size: SLIDER_FONT_SIZE; + min: 0 0; + align: 0.0 0.5; + } + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + visible: 1; + text.min: 1 1; + text.ellipsis: -1; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + color: 255 128 128 128; + visible: 0; + } + description { state: "disabled_visible" 0.0; + inherit: "default" 0.0; + visible: 1; + text.min: 1 1; + text.ellipsis: -1; + } + } + part { name: "button"; type: GROUP; mouse_events: 0; + source:"elm/slider/horizontal/indicator/default"; + description { state: "default" 0.0; + fixed: 1 1; + rel1.to: "elm.dragable.slider"; + rel2.to: "elm.dragable.slider"; + } + description { state: "hidden" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "elm.dragable.slider"; type: RECT; + scale: 1; + dragable { + x: 1 1 0; + y: 0 0 0; + confine: "bg"; + } + description { state: "default" 0.0; + min: 0 0; + max: 0 0; + fixed: 1 1; + rel1 { + relative: 0.5 0.0; + to_x: "bg"; + } + rel2 { + relative: 0.5 1.0; + to_x: "bg"; + } + color: 0 0 0 0; + } + } + part { name: "slideevent"; type: RECT; mouse_events: 0; + scale: 1; + dragable.events: "elm.dragable.slider"; + description { state: "default" 0.0; + fixed: 1 1; + min: 24 24; + max: 24 24; + rel1.to: "elm.dragable.slider"; + rel2.to: "elm.dragable.slider"; + color: 0 0 0 0; + } + } + part { name: "elm.track.slider"; type: SWALLOW; mouse_events: 0; + description { state: "default" 0.0; + max: 0 0; + rel1.to: "elm.dragable.slider"; + rel2.to: "elm.dragable.slider"; + } + } + 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: "mouse_down_bar"; + signal: "mouse,down,*"; source:"elm.swallow.bar"; + action: SIGNAL_EMIT "popup,show" "elm"; + } + program { name: "mouse_up_bar"; + signal: "mouse,up,*"; source:"elm.swallow.bar"; + action: SIGNAL_EMIT "popup,hide" "elm"; + } + + program { name: "indicator_show"; + signal: "elm,state,indicator,show"; source:"elm"; + action: SIGNAL_EMIT "popup,show" "elm"; + } + program { name: "indicator_hide"; + signal: "elm,state,indicator,hide"; source:"elm"; + action: SIGNAL_EMIT "highlight,hide" "elm"; + } + program { name: "popup_show"; + signal: "mouse,down,1"; source:"slideevent"; + action: SIGNAL_EMIT "popup,show" "elm"; + } + program { name: "popup_hide"; + signal: "mouse,up,1"; source:"slideevent"; + action: SIGNAL_EMIT "highlight,hide" "elm"; + } + program { name: "text_show"; + signal: "elm,state,text,visible"; source:"elm"; + action: STATE_SET "visible" 0.0; + target: "elm.text"; + } + program { name: "text_hide"; + signal: "elm,state,text,hidden"; source:"elm"; + action: STATE_SET "default" 0.0; + target: "elm.text"; + } + program { name: "icon_show"; + signal: "elm,state,icon,visible"; source:"elm"; + action: STATE_SET "visible" 0.0; + target: "elm.swallow.icon"; + } + program { name: "icon_hide"; + signal: "elm,state,icon,hidden"; source:"elm"; + action: STATE_SET "default" 0.0; + target: "elm.swallow.icon"; + } + program { name: "end_show"; + signal: "elm,state,end,visible"; source:"elm"; + action: STATE_SET "visible" 0.0; + target: "elm.swallow.end"; + } + program { name: "end_hide"; + signal: "elm,state,end,hidden"; source:"elm"; + action: STATE_SET "default" 0.0; + target: "elm.swallow.end"; + } + program { name: "units_show"; + signal: "elm,state,units,visible"; source:"elm"; + action: STATE_SET "visible" 0.0; + target: "elm.units"; + after: "limits,children,visible"; + } + program { name: "limits,children,visible"; + action: SIGNAL_EMIT "limits:limits,visible" "elm"; + } + program { name: "units_hide"; + signal: "elm,state,units,hidden"; source:"elm"; + action: STATE_SET "default" 0.0; + target: "elm.units"; + after: "limits,children,hide"; + } + program { name: "limits,children,hide"; + action: SIGNAL_EMIT "limits:limits,hide" "elm"; + } + program { name: "invert_on"; + signal: "elm,state,inverted,on"; source:"elm"; + action: STATE_SET "inverted" 0.0; + target: "level"; + target: "level2"; + } + program { name: "invert_off"; + signal: "elm,state,inverted,off"; source:"elm"; + action: STATE_SET "default" 0.0; + target: "level"; + target: "level2"; + } + program { + name: "go_disabled"; + signal: "elm,state,disabled"; source:"elm"; + action: STATE_SET "disabled" 0.0; + target: "disabler"; + after: "disable_text"; + after: "disable_ind"; + } + program { name: "disable_ind"; + action: SIGNAL_EMIT "elm.dragable.slider:elm,state,disabled" "elm"; + } + 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); + + get_state(PART:"elm.units", st, 30, vl); + if (!strcmp(st, "visible")) + set_state(PART:"elm.units", "disabled_visible", 0.0); + else + set_state(PART:"elm.units", "disabled", 0.0); + + get_state(PART:"level2", st, 30, vl); + if (!strcmp(st, "inverted")) + { + set_state(PART:"level", "disabled_inverted", 0.0); + set_state(PART:"level2", "disabled_inverted", 0.0); + } + else + { + set_state(PART:"level", "disabled", 0.0); + set_state(PART:"level2", "disabled", 0.0); + } + } + } + program { name: "enable"; + signal: "elm,state,enabled"; source:"elm"; + action: STATE_SET "default" 0.0; + target: "disabler"; + after: "enable_text"; + after: "enable_ind"; + } + program { name: "enable_ind"; + action: SIGNAL_EMIT "elm.dragable.slider:elm,state,enabled" "elm"; + } + 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); + + get_state(PART:"elm.units", st, 30, vl); + if (!strcmp(st, "disabled_visible")) + set_state(PART:"elm.units", "visible", 0.0); + else + set_state(PART:"elm.units", "default", 0.0); + + get_state(PART:"level2", st, 30, vl); + if (!strcmp(st, "disabled_inverted")) + { + set_state(PART:"level", "inverted", 0.0); + set_state(PART:"level2", "inverted", 0.0); + } + else + { + set_state(PART:"level", "default", 0.0); + set_state(PART:"level2", "default", 0.0); + } + } + } + } +} + +group { name: "elm/slider/horizontal/indicator/default"; + alias: "elm/slider/horizontal/popup/default"; + images{ + image: "tooltip_bg.png" COMP; + image: "tooltip_arrow.png" COMP; + image: "slider_thumb_stroke.png" COMP; + image: "slider_thumb_fill.png" COMP; + } + script { + public popup_show = 0; + public is_in_focuse = 0; + public is_mouse_in = 0; + public is_focus = 0; + public setcol; + + public set_value_show() { + set_int(popup_show, 0); + } + + public set_value_hide() { + set_int(popup_show, 1); + } + + public mouse_down() + { + if (get_int(popup_show) == 0) + { + set_state(PART:"progress_balloon", "clicked", 0.0); + set_state(PART:"progress_balloon_arrow", "clicked", 0.0); + set_state(PART:"elm.indicator", "clicked", 0.0); + set_state(PART:"knob_fill", "clicked", 0.0); + set_state(PART:"knob", "clicked", 0.0); + } + set_int(is_in_focuse, 1); + } + public mouse_up() + { + set_state(PART:"progress_balloon", "default", 0.0); + set_state(PART:"progress_balloon_arrow", "default", 0.0); + set_state(PART:"elm.indicator", "default", 0.0); + set_state(PART:"knob_fill", "default", 0.0); + set_state(PART:"knob", "clicked", 0.0); + } + public mouse_in_knob() + { + set_state(PART:"knob", "over", 0.0); + set_int(is_mouse_in, 1); + } + public mouse_out_knob() + { + set_int(is_mouse_in, 0); + if (get_int(is_in_focuse)) + { + set_state(PART:"knob", "clicked", 0.0); + } + else + set_state(PART:"knob", "default", 0.0); + } + } + parts{ + part { name: "knob_fill"; + repeat_events: 1; + scale: 1; + description { state: "default" 0.0; + image.normal: "slider_thumb_fill.png"; + min: 38 38; + max: 38 38; + align:0.5 0.5; + fixed: 1 1; + color_class: "open_ux_theme"; + } + description { state: "clicked" 0.0; + inherit: "default" 0.0; + color_class: "open_ux_theme"; + } + } + part { name: "knob"; + repeat_events: 1; + scale: 1; + description { state: "default" 0.0; + image.normal: "slider_thumb_stroke.png"; + min: 38 38; + max: 38 38; + fixed: 1 1; + color: 255 255 255 255; + } + description { state: "clicked" 0.0; + inherit: "default" 0.0; + } + description { state: "over" 0.0; + inherit: "clicked" 0.0; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + } + } + part { name: "progress_balloon"; + scale: 1; + description { state: "default" 0.0; + visible: 0; + align: 0.5 1; + rel1.to: "pad.text_top.left"; + rel2.to: "pad.text_bottom.right"; + fixed: 1 1; + image.normal: "tooltip_bg.png"; + image.border: 6 6 7 7; + image.border_scale: 1; + } + description { state: "clicked" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + part { name: "pad.baloon_arrow_align"; type:SPACER; + scale: 1; + description { state: "default" 0.0; + rel1.to: "knob"; + rel2{ + to: "knob"; + relative: 1 0; + } + min: 0 2; + max: 0 2; + fixed: 1 1; + align: 0.5 0; + } + } + part { name: "progress_balloon_arrow"; + scale: 1; + description { state: "default" 0.0; + visible: 0; + rel1 { to: "pad.baloon_arrow_align"; + relative: 0 1; + } + rel2.to: "pad.baloon_arrow_align"; + min: 12 10; + max: 12 10; + align: 0.5 1; + fixed: 1 1; + image.normal: "tooltip_arrow.png"; + image.border: 6 6 7 7; + image.border_scale: 1; + } + description { state: "clicked" 0.0; + inherit: "default" 0.0; + image.normal: "tooltip_arrow.png"; + visible: 1; + } + } + part { name: "pad.text_top.left"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 11 11; + max: 11 11; + fixed: 1 1; + align: 1 0; + rel1.to: "elm.indicator"; + rel2 { to: "elm.indicator"; + relative: 0 0; + } + } + } + part { name: "pad.text_bottom.right"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 11 11; + max: 11 11; + fixed: 1 1; + align: 0 0; + rel1 { to: "elm.indicator"; + relative: 1 1; + } + rel2.to: "elm.indicator"; + } + } + part { name: "pad.text_align"; type: SPACER; + scale: 1; + description { state: "default" 0.0; + min: 0 6; + max: 0 6; + fixed: 1 1; + align: 0.5 1; + rel1 { to: "progress_balloon_arrow"; + relative: 0.5 0; + } + rel2 { to: "progress_balloon_arrow"; + relative: 0.5 0; + } + } + } + part { name: "elm.indicator"; type: TEXTBLOCK; mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + visible: 0; + fixed: 1 1; + rel1.to: "pad.text_align"; + rel2 { to: "pad.text_align"; + relative: 0 0; + } + align: 0.5 1; + text { + style: "slider_style"; + min: 1 1; + ellipsis: -1; + } + } + description { state: "clicked" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + } + + programs { + program { name: "mouse_down_bar"; + signal: "mouse,down,*"; source:"knob"; + script { + mouse_down(); + } + } + program { name: "mouse_up_bar"; + signal: "mouse,up,*"; source:"knob"; + script { + mouse_up(); + } + } + program { name: "popup_show"; + signal: "popup,show"; source:"elm"; + script { + mouse_down(); + } + } + program { name: "popup_hide"; + signal: "popup,hide"; source:"elm"; + action: SIGNAL_EMIT "popup,hide,done" "elm"; + } + program { name: "popup_hide2"; + signal: "popup,hide"; source:"elm"; + script { + mouse_up(); + } + } + program { name: "set_val_show"; + signal: "elm,state,val,show"; source:"elm"; + script { + set_value_show(); + } + } + program { name: "set_val_hide"; + signal: "elm,state,val,hide"; source:"elm"; + script { + set_value_hide(); + } + } + program { name: "val_show"; + signal: "mouse,down,*"; source:"knob"; + script { + mouse_down(); + } + } + program { name: "val_hide"; + signal: "mouse,up,*"; source:"knob"; + script { + mouse_up(); + } + } + + + } +} + +/********************************************************************************* +Document: Tizen TV_General Guide_GUI Guideline_v1.0_140508_1.ppt, Page no.96, +style name: default +*********************************************************************************/ +group { name: "elm/slider/horizontal/progress"; + inherit: "elm/slider/horizontal/default"; + parts{ + part { name: "level"; type: RECT; mouse_events: 0; + description { state: "default" 0.0; + fixed: 1 1; + rel1.to: "base"; + rel2 { + to_y: "base"; + to_x: "elm.dragable.slider"; + relative: 0.5 1.0; + } + color_class: "open_ux_theme"; + } + description { state: "focus" 0.0; + inherit: "default" 0.0; + color_class: "open_ux_theme"; + } + } + part { name: "button"; type: GROUP; mouse_events: 0; + source:"elm/slider/horizontal/indicator/progress"; + description { state: "default" 0.0; + fixed: 1 1; + rel1.to: "elm.dragable.slider"; + rel2.to: "elm.dragable.slider"; + } + description { state: "hidden" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + } + programs { + program { name: "Focus"; + signal: "elm,action,focus"; source: "elm"; + action: STATE_SET "focus" 0.0; + target: "level"; + } + program { name: "Unfocus"; + signal: "elm,action,unfocus"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "level"; + } + } +} + +group { name: "elm/slider/horizontal/indicator/progress"; + inherit: "elm/slider/horizontal/indicator/default"; + alias: "elm/slider/horizontal/popup/progress"; + parts { + part { name: "knob_fill"; + repeat_events: 1; + scale: 1; + description { state: "default" 0.0; + image.normal: "slider_thumb_fill.png"; + min: 38 38; + max: 38 38; + align:0.5 0.5; + fixed: 1 1; + color: 0 0 0 255; + } + description { state: "clicked" 0.0; + inherit: "default" 0.0; + } + } + part { name: "knob"; + repeat_events: 1; + scale: 1; + description { state: "default" 0.0; + image.normal: "slider_thumb_stroke.png"; + min: 38 38; + max: 38 38; + fixed: 1 1; + color: 255 255 255 255; + } + description { state: "over" 0.0; + inherit: "clicked" 0.0; + } + description { state: "disabled" 0.0; + inherit: "default" 0.0; + } + description { state: "focus" 0.0; + inherit: "default" 0.0; + color_class: "open_ux_theme"; + } + description { state: "clicked" 0.0; + inherit: "focus" 0.0; + color_class: "open_ux_theme"; + } + } + + } + programs { + program { name: "Focus"; + signal: "elm,action,focus"; source: "elm"; + action: STATE_SET "focus" 0.0; + target: "knob"; + } + program { name: "Unfocus"; + signal: "elm,action,unfocus"; source: "elm"; + action: STATE_SET "default" 0.0; + target: "knob"; + } + } +} diff --git a/ElmSharp/theme/tv/widgets/spinner.edc b/ElmSharp/theme/tv/widgets/spinner.edc new file mode 100644 index 0000000..72a897a --- /dev/null +++ b/ElmSharp/theme/tv/widgets/spinner.edc @@ -0,0 +1,325 @@ +/* + * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved + * + * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/************************************************************************* +Doc: Tizen TV_General Guide_GUI Guideline_v1.0_140709.ppt page:93 +**************************************************************************/ + +group { name: "elm/spinner/base/default"; + alias: "elm/spinner/base/horizontal"; + parts { + part { name: "bg"; + type: RECT; + scale: 1; + description { state: "default" 0.0; + color: 255 255 255 255; + } + } + part { name: "access"; + type: RECT; + repeat_events: 1; + description { state: "default" 0.0; + fixed: 1 1; + color: 0 0 0 0; + rel1.to: "bg"; + rel2.to: "bg"; + visible: 1; + } + description { state: "active" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "elm.swallow.inc_button"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + align: 1.0 0.5; + min: 64 90; + max: 64 90; + } + } + part { name: "elm.swallow.dec_button"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + align: 0.0 0.5; + min: 64 90; + max: 64 90; + } + } + part { name: "elm.swallow.text_button"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + visible: 1; + min: 0 146; + max: -1 146; + rel1 { + to_x: "elm.swallow.dec_button"; + relative: 1.0 0.0; + } + rel2 { + to_x: "elm.swallow.inc_button"; + relative: 0.0 1.0; + } + } + description { state: "active" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "elm.swallow.entry"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + visible: 0; + rel1.to: "elm.swallow.text_button"; + rel2.to: "elm.swallow.text_button"; + min: 0 146; + max: -1 146; + fixed: 1 1; + } + description { state: "active" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + 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: "entry_active"; + signal: "elm,state,entry,active"; + source: "elm"; + action: STATE_SET "active" 0.0; + //target: "elm.swallow.text_button"; + target: "elm.swallow.entry"; + } + program { name: "entry_inactive"; + signal: "elm,state,entry,inactive"; + source: "elm"; + action: STATE_SET "default" 0.0; + //target: "elm.swallow.text_button"; + target: "elm.swallow.entry"; + } + program { name: "text_button_active"; + signal: "elm,state,button,active"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.swallow.text_button"; + } + program { name: "text_button_inactive"; + signal: "elm,state,button,inactive"; + source: "elm"; + action: STATE_SET "inactive" 0.0; + target: "elm.swallow.text_button"; + } + program { name: "access_activate"; + signal: "elm,state,access,active"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "access"; + } + program { name: "access_inactivate"; + signal: "elm,state,access,inactive"; + source: "elm"; + action: STATE_SET "active" 0.0; + target: "access"; + } + program { name: "disable"; + signal: "elm,state,disabled"; + source: "elm"; + action: STATE_SET "disabled" 0.0; + target: "disabler"; + } + program { name: "enable"; + signal: "elm,state,enabled"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "disabler"; + } + } +} + +group { name: "elm/spinner/base/vertical"; + parts { + part { name: "bg"; + type: RECT; + scale: 1; + description { state: "default" 0.0; + min: 146 348; + color: 250 250 250 255; + } + } + part { name: "access"; + type: RECT; + repeat_events: 1; + description { state: "default" 0.0; + fixed: 1 1; + color: 0 0 0 0; + rel1.to: "bg"; + rel2.to: "bg"; + visible: 1; + } + description { state: "active" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "elm.swallow.inc_button"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + align: 0.5 0.0; + min: 146 80; + max: 146 80; + } + } + part { name: "elm.swallow.dec_button"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + align: 0.5 1.0; + min: 146 80; + max: 146 80; + } + } + part { name: "elm.swallow.text_button"; + type: SWALLOW; + scale: 1; + description { state: "default" 0.0; + visible: 1; + min: 0 146; + max: -1 146; + } + description { state: "inactive" 0.0; + inherit: "default" 0.0; + visible: 0; + } + } + part { name: "elm.swallow.entry"; + type: SWALLOW; + description { state: "default" 0.0; + visible: 0; + rel1.to: "elm.swallow.text_button"; + rel2.to: "elm.swallow.text_button"; + min: 0 146; + max: -1 146; + fixed: 1 1; + } + description { state: "active" 0.0; + inherit: "default" 0.0; + visible: 1; + } + } + 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: "entry_active"; + signal: "elm,state,entry,active"; + source: "elm"; + action: STATE_SET "active" 0.0; + target: "elm.swallow.entry"; + } + program { name: "entry_inactive"; + signal: "elm,state,entry,inactive"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.swallow.entry"; + } + program { name: "text_button_active"; + signal: "elm,state,button,active"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "elm.swallow.text_button"; + } + program { name: "text_button_inactive"; + signal: "elm,state,button,inactive"; + source: "elm"; + action: STATE_SET "inactive" 0.0; + target: "elm.swallow.text_button"; + } + program { name: "access_activate"; + signal: "elm,state,access,active"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "access"; + } + program { name: "access_inactivate"; + signal: "elm,state,access,inactive"; + source: "elm"; + action: STATE_SET "active" 0.0; + target: "access"; + } + program { name: "disable"; + signal: "elm,state,disabled"; + source: "elm"; + action: STATE_SET "disabled" 0.0; + target: "disabler"; + } + program { name: "enable"; + signal: "elm,state,enabled"; + source: "elm"; + action: STATE_SET "default" 0.0; + target: "disabler"; + } + } +} + +group { name: "elm/spinner/base/vertical_date_picker"; + inherit: "elm/spinner/base/vertical"; + parts { + part { name: "bg"; + type: RECT; + scale: 1; + description { state: "default" 0.0; + min: 158 262; + color: 250 250 250 255; + } + } + } +} + diff --git a/ElmSharp/theme/tv/widgets/tooltip.edc b/ElmSharp/theme/tv/widgets/tooltip.edc new file mode 100644 index 0000000..3a30e64 --- /dev/null +++ b/ElmSharp/theme/tv/widgets/tooltip.edc @@ -0,0 +1,292 @@ +/* + * Copyright (c) 2010 Samsung Electronics Co., Ltd All Rights Reserved + * + * BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright notice, + * this list of conditions and the following disclaimer in the documentation + * and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +group { name: "elm/label/base/tooltip"; + styles { + style { name: "tooltip_style"; + base: "font=Sans font_size=22 align=left color=#1d1d1d left_margin=21 right_margin=21 wrap=word"; + tag: "br" "\n"; + tag: "hilight" "+ font_weight=Bold"; + tag: "b" "+ font_weight=Bold"; + tag: "tab" "\t"; + } + } + parts { + part { name: "elm.text"; + type: TEXTBLOCK; + mouse_events: 0; + scale: 1; + description { state: "default" 0.0; + text { + style: "tooltip_style"; + min: 1 1; + ellipsis: -1; + } + } + } + } +} + +group { name: "elm/tooltip/base/default"; + min: 40 40; + data { + item: "pad_x" "20"; + item: "pad_y" "20"; + item: "pad_border_x" "10"; + item: "pad_border_y" "10"; + item: "hide_timeout" "0.35"; /**< tooltip is hidden after this amount, keep in sync with hide animations */ + } + images { + image: "tooltip_bg.png" COMP; + image: "tooltip-edge-bottom-tip.png" COMP; + image: "tooltip-edge-top-tip.png" COMP; + } + script { + show_edge_top(Float:val) { + set_state(PART:"clipper-edge-top", "visible", 0.0); + set_drag(PART:"edge-drag-top", val, 0.0); + } + show_edge_bottom(Float:val) { + set_state(PART:"clipper-edge-bottom", "visible", 0.0); + set_drag(PART:"edge-drag-bottom", val, 0.0); + } + + public message(Msg_Type:type, id, ...) { + if ((type == MSG_FLOAT_SET) && (id == 1)) { + new Float:x, Float:y; + + x = getfarg(2); + y = getfarg(3); + + if (y < 0.0) show_edge_top(x); + else if (y > 1.0) show_edge_bottom(x); + } + } + } + parts { + part { name: "clipper"; type: RECT; + description { state: "default" 0.0; + color: 255 255 255 0; + rel1 { to: "pop"; offset: -15 -15; } + rel2 { to: "pop"; offset: 15 15; } + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + } + part { name: "pop"; mouse_events: 0; + clip_to: "clipper"; + scale: 1; + description { state: "default" 0.0; + min: 60 60; + rel1 { + to: "elm.swallow.content"; + offset: -5 -4; + } + rel2 { + to: "elm.swallow.content"; + offset: 4 5; + } + color: 255 255 255 230; + image { + normal: "tooltip_bg.png"; + border: 5 6 6 7; + } + } + } + + #define TT_EDGE_HORIZ(name_, ry, ay, oy) \ + part { name: "clipper-edge-"name_; \ + type: RECT; \ + clip_to: "clipper"; \ + description { state: "default" 0.0; \ + color: 255 255 255 0; \ + visible: 0; \ + min: 14 14; \ + align: 0.5 ay; \ + fixed: 1 1; \ + rel1 { \ + relative: 0.0 ry; \ + offset: 0 oy; \ + to: "elm.swallow.content"; \ + } \ + rel2 { \ + relative: 1.0 ry; \ + offset: 0 oy; \ + to: "elm.swallow.content"; \ + } \ + } \ + description { state: "visible" 0.0; \ + inherit: "default" 0.0; \ + color: 255 255 255 255; \ + visible: 1; \ + } \ + } \ + part { name: "edge-area-"name_; \ + type: RECT; \ + mouse_events: 0; \ + clip_to: "clipper-edge-"name_; \ + description { state: "default" 0.0; \ + color: 0 0 0 0; \ + min: 14 14; \ + align: 0.5 ay; \ + fixed: 1 1; \ + rel1 { \ + relative: 0.0 ry; \ + offset: 0 oy; \ + to: "elm.swallow.content"; \ + } \ + rel2 { \ + relative: 1.0 ry; \ + offset: 0 oy; \ + to: "elm.swallow.content"; \ + } \ + } \ + } \ + part { name: "edge-drag-"name_; \ + type: RECT; \ + mouse_events: 0; \ + clip_to: "clipper-edge-"name_; \ + dragable { \ + x: 1 1 0; \ + y: 0 0 0; \ + confine: "edge-area-"name_; \ + } \ + description { state: "default" 0.0; \ + color: 0 0 0 0; \ + min: 14 14; \ + rel1.to: "edge-area-"name_; \ + rel2.to: "edge-area-"name_; \ + } \ + } \ + part { name: "edge-img-"name_; \ + type: IMAGE; \ + mouse_events: 0; \ + clip_to: "clipper-edge-"name_; \ + description { state: "default" 0.0; \ + min: 14 14; \ + max: 14 14; \ + align: 0.5 ay; \ + fixed: 1 1; \ + rel1.to: "edge-drag-"name_; \ + rel2.to: "edge-drag-"name_; \ + image.normal: "tooltip-edge-"name_"-tip.png"; \ + } \ + } + TT_EDGE_HORIZ("top", 0, 1, -5); + TT_EDGE_HORIZ("bottom", 1, 0, 2); + #undef TT_EDGE_HORIZ + + part { name: "clipper_content"; + type: RECT; + description { state: "default" 0.0; + color: 255 255 255 0; + rel1.to: "elm.swallow.content"; + rel1.offset: -64 -64; + rel2.to: "elm.swallow.content"; + rel2.offset: 63 63; + } + description { state: "visible" 0.0; + inherit: "default" 0.0; + color: 255 255 255 255; + } + } + part { name: "elm.swallow.content"; type: SWALLOW;//this bring the tooltip up and down. + clip_to: "clipper_content"; + description { state: "default" 0.0; + rel1.offset: 10 20; + rel2.offset: -10 -20; + } + } + programs { + program { + name: "show0"; + signal: "elm,action,show"; + source: "elm"; + action: ACTION_STOP; + target: "hide0"; + target: "hide2"; + target: "hide3"; + after: "show1"; + after: "show2"; + } + program { + name: "show1"; + action: STATE_SET "visible" 0.0; + transition: LINEAR 0.15; + target: "clipper"; + } + program { + name: "show2"; + in: 0.1 0.0; + action: STATE_SET "visible" 0.0; + transition: LINEAR 0.15; + target: "clipper_content"; + } + + program { + name: "hide0"; + signal: "elm,action,hide"; + source: "elm"; + action: ACTION_STOP; + target: "show0"; + target: "show1"; + target: "show2"; + after: "hide2"; + after: "hide3"; + } + program { + name: "hide2"; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.1; + target: "clipper_content"; + } + program { + name: "hide3"; + in: 0.1 0.0; + action: STATE_SET "default" 0.0; + transition: LINEAR 0.1; + target: "clipper"; + } + } + } +} +group { name: "elm/tooltip/base/transparent"; + data { + item: "pad_x" "10"; + item: "pad_y" "10"; + item: "transparent" "enabled"; + } + parts { + part { name: "elm.swallow.content"; + type: SWALLOW; + mouse_events: 0; + scale: 1; + description { state: "default" 0.0; } + } + } +} |