summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSungtaek Hong <sth253.hong@samsung.com>2017-01-04 21:15:49 -0800
committerGerrit Code Review <gerrit@review.vlan103.tizen.org>2017-01-04 21:15:49 -0800
commit9ba1d9adf41fb06488178286861d3c187ef47a6c (patch)
tree510c76161060c79d65f0b523f7941cc091800c5c
parent745e8995206524048c0a0dd4a193dc9eef03a5d0 (diff)
parent98bbad5d4d08851bfd3a58b5fd50ad1a4c24d2c4 (diff)
downloadelm-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
-rw-r--r--ElmSharp/theme/tv/HD/images/User_Input_Elements/README2
-rw-r--r--ElmSharp/theme/tv/HD/images/bt_bases.pngbin0 -> 587 bytes
-rw-r--r--ElmSharp/theme/tv/HD/images/btn_text_foc.pngbin0 -> 248 bytes
-rw-r--r--ElmSharp/theme/tv/HD/images/btn_text_nor.pngbin0 -> 248 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/checkbox_check_foc.pngbin0 -> 365 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/checkbox_check_nor.pngbin0 -> 373 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/checkbox_uncheck_foc.pngbin0 -> 212 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/checkbox_uncheck_nor.pngbin0 -> 249 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/content_innershadow.pngbin0 -> 162 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/core_icon_picker_arrow_down.pngbin0 -> 1340 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/core_icon_picker_arrow_up.pngbin0 -> 1358 bytes
-rw-r--r--ElmSharp/theme/tv/HD/images/elipse_114.pngbin0 -> 1553 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/ico_default_video_180.pngbin0 -> 1031 bytes
-rw-r--r--ElmSharp/theme/tv/HD/images/ico_dropdown_menu_check.pngbin0 -> 228 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/ico_dropdown_menu_open_arrow.pngbin0 -> 167 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/ico_folder.pngbin0 -> 1367 bytes
-rw-r--r--ElmSharp/theme/tv/HD/images/ico_search.pngbin0 -> 667 bytes
-rw-r--r--ElmSharp/theme/tv/HD/images/modal_banner_type_shadow.pngbin0 -> 124 bytes
-rw-r--r--ElmSharp/theme/tv/HD/images/modal_dialogs_banner_bg.pngbin0 -> 863 bytes
-rw-r--r--ElmSharp/theme/tv/HD/images/modal_dialogs_bg.pngbin0 -> 863 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/popover_arrow.pngbin0 -> 167 bytes
-rw-r--r--ElmSharp/theme/tv/HD/images/progress_wheel.pngbin0 -> 1182 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/progressbar_thumb_foc.pngbin0 -> 434 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/progressbar_thumb_nor.pngbin0 -> 876 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/progressbar_thumb_stroke_foc.pngbin0 -> 602 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/radiobtn_off_foc.pngbin0 -> 466 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/radiobtn_off_nor.pngbin0 -> 577 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/radiobtn_on_foc.pngbin0 -> 750 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/radiobtn_on_nor.pngbin0 -> 750 bytes
-rw-r--r--ElmSharp/theme/tv/HD/images/round_rectangle_4X4.pngbin0 -> 130 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/round_rectangle_4X4_bottom.pngbin0 -> 107 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/round_rectangle_4X4_top.pngbin0 -> 106 bytes
-rw-r--r--ElmSharp/theme/tv/HD/images/round_rectangle_8X8_top.pngbin0 -> 150 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/scrollbar_horizontal.pngbin0 -> 127 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/scrollbar_mask_bottom.pngbin0 -> 111 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/scrollbar_mask_top.pngbin0 -> 112 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/scrollbar_vertical.pngbin0 -> 134 bytes
-rw-r--r--ElmSharp/theme/tv/HD/images/search_searchbar_bg_foc.pngbin0 -> 173 bytes
-rw-r--r--ElmSharp/theme/tv/HD/images/search_searchbar_bg_nor.pngbin0 -> 133 bytes
-rw-r--r--ElmSharp/theme/tv/HD/images/search_searchbar_small_bg_foc.pngbin0 -> 90 bytes
-rw-r--r--ElmSharp/theme/tv/HD/images/search_searchbar_small_bg_nor.pngbin0 -> 78 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/slider_thumb_fill.pngbin0 -> 347 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/slider_thumb_stroke.pngbin0 -> 881 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/spincontrol_arrow_down.pngbin0 -> 263 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/spincontrol_arrow_up.pngbin0 -> 248 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/tooltip-edge-bottom-tip.pngbin0 -> 203 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/tooltip-edge-top-tip.pngbin0 -> 154 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/tooltip_arrow.pngbin0 -> 203 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/tooltip_arrow_up.pngbin0 -> 154 bytes
-rwxr-xr-xElmSharp/theme/tv/HD/images/tooltip_bg.pngbin0 -> 259 bytes
-rw-r--r--ElmSharp/theme/tv/common.edc44
-rw-r--r--ElmSharp/theme/tv/elm-sharp-theme-tv.edc26
-rw-r--r--ElmSharp/theme/tv/macros.edc35
-rw-r--r--ElmSharp/theme/tv/widgets/button.edc1593
-rw-r--r--ElmSharp/theme/tv/widgets/check.edc358
-rw-r--r--ElmSharp/theme/tv/widgets/ctxpopup.edc625
-rw-r--r--ElmSharp/theme/tv/widgets/datetime.edc759
-rw-r--r--ElmSharp/theme/tv/widgets/entry.edc1710
-rw-r--r--ElmSharp/theme/tv/widgets/gengrid.edc1144
-rw-r--r--ElmSharp/theme/tv/widgets/genlist.edc775
-rw-r--r--ElmSharp/theme/tv/widgets/genlist_common.edc267
-rw-r--r--ElmSharp/theme/tv/widgets/hover.edc587
-rw-r--r--ElmSharp/theme/tv/widgets/hoversel.edc999
-rw-r--r--ElmSharp/theme/tv/widgets/layout.edc125
-rw-r--r--ElmSharp/theme/tv/widgets/list.edc445
-rw-r--r--ElmSharp/theme/tv/widgets/popup.edc533
-rw-r--r--ElmSharp/theme/tv/widgets/progressbar.edc767
-rw-r--r--ElmSharp/theme/tv/widgets/radio.edc335
-rw-r--r--ElmSharp/theme/tv/widgets/scroller.edc613
-rw-r--r--ElmSharp/theme/tv/widgets/slider.edc939
-rw-r--r--ElmSharp/theme/tv/widgets/spinner.edc325
-rw-r--r--ElmSharp/theme/tv/widgets/tooltip.edc292
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
new file mode 100644
index 0000000..7d77abe
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/bt_bases.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/btn_text_foc.png b/ElmSharp/theme/tv/HD/images/btn_text_foc.png
new file mode 100644
index 0000000..4a30fec
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/btn_text_foc.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/btn_text_nor.png b/ElmSharp/theme/tv/HD/images/btn_text_nor.png
new file mode 100644
index 0000000..4834090
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/btn_text_nor.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/checkbox_check_foc.png b/ElmSharp/theme/tv/HD/images/checkbox_check_foc.png
new file mode 100755
index 0000000..08ccc25
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/checkbox_check_foc.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/checkbox_check_nor.png b/ElmSharp/theme/tv/HD/images/checkbox_check_nor.png
new file mode 100755
index 0000000..543ad01
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/checkbox_check_nor.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/checkbox_uncheck_foc.png b/ElmSharp/theme/tv/HD/images/checkbox_uncheck_foc.png
new file mode 100755
index 0000000..b100b99
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/checkbox_uncheck_foc.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/checkbox_uncheck_nor.png b/ElmSharp/theme/tv/HD/images/checkbox_uncheck_nor.png
new file mode 100755
index 0000000..dc4469a
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/checkbox_uncheck_nor.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/content_innershadow.png b/ElmSharp/theme/tv/HD/images/content_innershadow.png
new file mode 100755
index 0000000..258105f
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/content_innershadow.png
Binary files differ
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
new file mode 100755
index 0000000..378f2e8
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/core_icon_picker_arrow_down.png
Binary files differ
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
new file mode 100755
index 0000000..dc17cad
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/core_icon_picker_arrow_up.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/elipse_114.png b/ElmSharp/theme/tv/HD/images/elipse_114.png
new file mode 100644
index 0000000..6a83b38
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/elipse_114.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/ico_default_video_180.png b/ElmSharp/theme/tv/HD/images/ico_default_video_180.png
new file mode 100755
index 0000000..9e32991
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/ico_default_video_180.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/ico_dropdown_menu_check.png b/ElmSharp/theme/tv/HD/images/ico_dropdown_menu_check.png
new file mode 100644
index 0000000..b896600
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/ico_dropdown_menu_check.png
Binary files differ
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
new file mode 100755
index 0000000..edb10fb
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/ico_dropdown_menu_open_arrow.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/ico_folder.png b/ElmSharp/theme/tv/HD/images/ico_folder.png
new file mode 100755
index 0000000..7b5fc69
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/ico_folder.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/ico_search.png b/ElmSharp/theme/tv/HD/images/ico_search.png
new file mode 100644
index 0000000..a276e93
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/ico_search.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/modal_banner_type_shadow.png b/ElmSharp/theme/tv/HD/images/modal_banner_type_shadow.png
new file mode 100644
index 0000000..fa00923
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/modal_banner_type_shadow.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/modal_dialogs_banner_bg.png b/ElmSharp/theme/tv/HD/images/modal_dialogs_banner_bg.png
new file mode 100644
index 0000000..c4a5fe5
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/modal_dialogs_banner_bg.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/modal_dialogs_bg.png b/ElmSharp/theme/tv/HD/images/modal_dialogs_bg.png
new file mode 100644
index 0000000..62e7ed0
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/modal_dialogs_bg.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/popover_arrow.png b/ElmSharp/theme/tv/HD/images/popover_arrow.png
new file mode 100755
index 0000000..8160bf9
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/popover_arrow.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/progress_wheel.png b/ElmSharp/theme/tv/HD/images/progress_wheel.png
new file mode 100644
index 0000000..c7e9099
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/progress_wheel.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/progressbar_thumb_foc.png b/ElmSharp/theme/tv/HD/images/progressbar_thumb_foc.png
new file mode 100755
index 0000000..9356150
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/progressbar_thumb_foc.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/progressbar_thumb_nor.png b/ElmSharp/theme/tv/HD/images/progressbar_thumb_nor.png
new file mode 100755
index 0000000..ea4b279
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/progressbar_thumb_nor.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/progressbar_thumb_stroke_foc.png b/ElmSharp/theme/tv/HD/images/progressbar_thumb_stroke_foc.png
new file mode 100755
index 0000000..dc54299
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/progressbar_thumb_stroke_foc.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/radiobtn_off_foc.png b/ElmSharp/theme/tv/HD/images/radiobtn_off_foc.png
new file mode 100755
index 0000000..38ecec9
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/radiobtn_off_foc.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/radiobtn_off_nor.png b/ElmSharp/theme/tv/HD/images/radiobtn_off_nor.png
new file mode 100755
index 0000000..6bd4c7e
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/radiobtn_off_nor.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/radiobtn_on_foc.png b/ElmSharp/theme/tv/HD/images/radiobtn_on_foc.png
new file mode 100755
index 0000000..e12dc05
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/radiobtn_on_foc.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/radiobtn_on_nor.png b/ElmSharp/theme/tv/HD/images/radiobtn_on_nor.png
new file mode 100755
index 0000000..f74c505
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/radiobtn_on_nor.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/round_rectangle_4X4.png b/ElmSharp/theme/tv/HD/images/round_rectangle_4X4.png
new file mode 100644
index 0000000..bd4edfe
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/round_rectangle_4X4.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/round_rectangle_4X4_bottom.png b/ElmSharp/theme/tv/HD/images/round_rectangle_4X4_bottom.png
new file mode 100755
index 0000000..50646a5
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/round_rectangle_4X4_bottom.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/round_rectangle_4X4_top.png b/ElmSharp/theme/tv/HD/images/round_rectangle_4X4_top.png
new file mode 100755
index 0000000..59d03cd
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/round_rectangle_4X4_top.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/round_rectangle_8X8_top.png b/ElmSharp/theme/tv/HD/images/round_rectangle_8X8_top.png
new file mode 100644
index 0000000..1403c54
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/round_rectangle_8X8_top.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/scrollbar_horizontal.png b/ElmSharp/theme/tv/HD/images/scrollbar_horizontal.png
new file mode 100755
index 0000000..b060a3d
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/scrollbar_horizontal.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/scrollbar_mask_bottom.png b/ElmSharp/theme/tv/HD/images/scrollbar_mask_bottom.png
new file mode 100755
index 0000000..7e28eda
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/scrollbar_mask_bottom.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/scrollbar_mask_top.png b/ElmSharp/theme/tv/HD/images/scrollbar_mask_top.png
new file mode 100755
index 0000000..d64edbc
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/scrollbar_mask_top.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/scrollbar_vertical.png b/ElmSharp/theme/tv/HD/images/scrollbar_vertical.png
new file mode 100755
index 0000000..447f940
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/scrollbar_vertical.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/search_searchbar_bg_foc.png b/ElmSharp/theme/tv/HD/images/search_searchbar_bg_foc.png
new file mode 100644
index 0000000..f065c44
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/search_searchbar_bg_foc.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/search_searchbar_bg_nor.png b/ElmSharp/theme/tv/HD/images/search_searchbar_bg_nor.png
new file mode 100644
index 0000000..34add3a
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/search_searchbar_bg_nor.png
Binary files differ
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
new file mode 100644
index 0000000..8c1c0c9
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/search_searchbar_small_bg_foc.png
Binary files differ
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
new file mode 100644
index 0000000..eb23c86
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/search_searchbar_small_bg_nor.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/slider_thumb_fill.png b/ElmSharp/theme/tv/HD/images/slider_thumb_fill.png
new file mode 100755
index 0000000..de2d559
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/slider_thumb_fill.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/slider_thumb_stroke.png b/ElmSharp/theme/tv/HD/images/slider_thumb_stroke.png
new file mode 100755
index 0000000..aa52dca
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/slider_thumb_stroke.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/spincontrol_arrow_down.png b/ElmSharp/theme/tv/HD/images/spincontrol_arrow_down.png
new file mode 100755
index 0000000..4d9d762
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/spincontrol_arrow_down.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/spincontrol_arrow_up.png b/ElmSharp/theme/tv/HD/images/spincontrol_arrow_up.png
new file mode 100755
index 0000000..3daf5e4
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/spincontrol_arrow_up.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/tooltip-edge-bottom-tip.png b/ElmSharp/theme/tv/HD/images/tooltip-edge-bottom-tip.png
new file mode 100755
index 0000000..2dd617c
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/tooltip-edge-bottom-tip.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/tooltip-edge-top-tip.png b/ElmSharp/theme/tv/HD/images/tooltip-edge-top-tip.png
new file mode 100755
index 0000000..661a255
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/tooltip-edge-top-tip.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/tooltip_arrow.png b/ElmSharp/theme/tv/HD/images/tooltip_arrow.png
new file mode 100755
index 0000000..2dd617c
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/tooltip_arrow.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/tooltip_arrow_up.png b/ElmSharp/theme/tv/HD/images/tooltip_arrow_up.png
new file mode 100755
index 0000000..661a255
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/tooltip_arrow_up.png
Binary files differ
diff --git a/ElmSharp/theme/tv/HD/images/tooltip_bg.png b/ElmSharp/theme/tv/HD/images/tooltip_bg.png
new file mode 100755
index 0000000..6f5ba64
--- /dev/null
+++ b/ElmSharp/theme/tv/HD/images/tooltip_bg.png
Binary files differ
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; }
+ }
+ }
+}