/* * Copyright 2012 Samsung Electronics Co., Ltd * * Licensed under the Flora License, Version 1.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.tizenopensource.org/license * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #define PADDING(title, w, h, fixed_w, fixed_h, align_w, align_h, l, t, r, b, rel1_to, rel2_to) \ part { name: title; \ type: RECT; \ scale: 1; \ description { \ state: "default" 0.0; \ visible: 1; \ min: w h; \ max: w h; \ fixed: fixed_w fixed_h; \ align: align_w align_h; \ rel1 { relative: l t; to: rel1_to; } \ rel2 { relative: r b; to: rel2_to; } \ color: 255 5 5 255; \ } \ } #define BEAT_GENLIST_PART_BASE( param_item_height ) \ part { name: "base"; \ type: RECT; \ repeat_events: 1; \ scale: 1; \ description { state: "default" 0.0; \ min: 0 param_item_height; \ color: 0 0 0 0; \ } \ } #define BEAT_GENLIST_PART_BG_IMAGE \ part { name: "bg_image"; \ type: RECT; \ clip_to: "disclip"; \ mouse_events: 0; \ description { state: "default" 0.0; \ visible: 0; \ } \ description { state: "selected" 0.0; \ inherit: "default" 0.0; \ visible: 1; \ color: 180 180 180 255; \ } \ } #define BEAT_GENLIST_PART_BOTTOM_LINE \ part { name: "bottom_line"; \ type: RECT; \ clip_to: "disclip"; \ mouse_events: 0; \ description { state: "default" 0.0; \ min: 0 1; \ fixed: 0 1; \ visible: 1; \ color: 202 202 202 255; \ rel1 { \ relative: 0.0 1.0; \ offset: 0 -1; \ } \ } \ } #define BEAT_GENLIST_PART_PADDING_LEFT( param_padding_size ) \ part { name: "elm.padding.left"; \ type: RECT; \ scale: 1; \ description { state: "default" 0.0; \ min: param_padding_size 0; \ fixed: 1 0; \ visible: 0; \ rel2.relative: 0.0 1.0; \ align: 0.0 0.0; \ } \ } #define BEAT_GENLIST_PART_PADDING_RIGHT( param_padding_size ) \ part { name: "elm.padding.right"; \ type: RECT; \ scale: 1; \ description { state: "default" 0.0; \ min: param_padding_size 0; \ fixed: 1 0; \ visible: 0; \ rel1.relative: 1.0 0.0; \ align: 1.0 0.0; \ } \ } #define BEAT_GENLIST_PART_DISCLIP \ part { name: "disclip"; \ type: RECT; \ description { state: "default" 0.0; \ } \ description { state: "disabled" 0.0; \ inherit: "default" 0.0; \ color: 255 255 255 64; \ } \ } #define BUTTON(button_name, normal_image, press_image, l, r, t, b) \ group { name: "elm/button/base/combo_box_picker/"#button_name; \ images { \ image: normal_image COMP; \ image: press_image COMP; \ } \ styles { \ style { name: #button_name"btn_textblock_style"; \ base: "font=FONT_CONTENT font_size=33 align=center color=#000000 wrap=char"; \ tag: "br" "\n"; \ tag: "hilight" "+ font=FONT_CONTENT:style=Bold"; \ tag: "b" "+ font=FONT_CONTENT:style=Bold"; \ tag: "tab" "\t"; \ } \ } \ parts { \ part { name: "button_image"; \ mouse_events: 1; \ effect: SOFT_SHADOW; \ description { state: "default" 0.0; \ image { \ normal: normal_image; \ border: l r t b; \ } \ } \ description { state: "clicked" 0.0; \ inherit: "default" 0.0; \ image.normal: press_image; \ } \ description { state: "disabled" 0.0; \ inherit: "default" 0.0; \ image.normal: normal_image; \ } \ } \ part { name: "elm.text"; \ type: TEXTBLOCK; \ effect: SHADOW; \ mouse_events: 0; \ scale: 1; \ description { state: "default" 0.0; \ visible: 0; \ fixed: 1 1; \ align: 0.5 0.5; \ rel1 { relative: 0.1 0; to: "button_image"; } \ rel2 { relative: 0.9 1; to: "button_image"; } \ color: 0 0 0 255; \ text { \ style: #button_name"btn_textblock_style"; \ min: 0 0; \ max: 0 1; \ } \ } \ description { state: "visible" 0.0; \ inherit: "default" 0.0; \ visible: 1; \ min: 1 1; \ } \ description { state: "clicked" 0.0; \ inherit: "default" 0.0; \ visible: 1; \ min: 1 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; \ min: 1 1; \ } \ } \ part { name: "over1"; \ mouse_events: 0; \ description { state: "default" 0.0; \ rel2.relative: 1.0 0.5; \ } \ description { state: "disabled" 0.0; \ inherit: "default" 0.0; \ } \ } \ part { name: "over2"; \ mouse_events: 1; \ repeat_events: 1; \ ignore_flags: ON_HOLD; \ description { state: "default" 0.0; \ } \ description { state: "disabled" 0.0; \ inherit: "default" 0.0; \ visible: 0; \ } \ } \ part { name: "over3"; \ 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; \ visible: 1; \ color: 255 255 255 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_click"; \ signal: "mouse,down,1"; \ source: "over2"; \ action: SIGNAL_EMIT "elm,action,press" ""; \ after: "button_click_anim"; \ } \ program { name: "button_click_anim"; \ action: STATE_SET "clicked" 0.0; \ target: "button_image"; \ target: "elm.text"; \ } \ program { name: "button_unclick"; \ signal: "mouse,up,1"; \ source: "over2"; \ action: SIGNAL_EMIT "elm,action,unpress" ""; \ after: "button_unclick_anim"; \ } \ program { name: "button_unclick_anim"; \ action: STATE_SET "default" 0.0; \ target: "button_image"; \ action: STATE_SET "visible" 0.0; \ target: "elm.text"; \ } \ program { name: "button_mouseout_clicked"; \ signal: "mouse,out"; \ source: "over2"; \ script { \ new st[31]; \ new Float:vl; \ get_state(PART:"elm.text", st, 30, vl); \ if (!strcmp(st, "clicked")) \ { \ set_state(PART:"elm.text", "visible", 0.0); \ set_state(PART:"button_image", "visible", 0.0); \ } \ } \ } \ program { name: "button_click2"; \ signal: "mouse,down,1"; \ source: "over3"; \ action: STATE_SET "clicked" 0.0; \ target: "over3"; \ } \ program { name: "button_unclick2"; \ signal: "mouse,clicked,1"; \ source: "over3"; \ action: STATE_SET "default" 0.0; \ target: "over3"; \ } \ program { name: "button_unclick3"; \ signal: "mouse,clicked,1"; \ source: "over2"; \ action: SIGNAL_EMIT "elm,action,click" ""; \ } \ program { name: "text_show"; \ signal: "elm,state,text,visible"; \ source: "elm"; \ 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: "disable"; \ signal: "elm,state,disabled"; \ source: "elm"; \ action: STATE_SET "disabled" 0.0; \ target: "button_image"; \ target: "over1"; \ target: "over2"; \ 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); \ } \ } \ program { name: "enable"; \ signal: "elm,state,enabled"; \ source: "elm"; \ action: STATE_SET "default" 0.0; \ target: "button_image"; \ target: "over1"; \ target: "over2"; \ 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); \ } \ } \ } \ }