+////////////////////////////////////////////////////////////////////////////////
+CHECK_STYLE_FAVORITE("favorite", CHECK_STYLE_FAVORITE_DEFAULT_BG_IMAGE_MIN_WIDTH_INC, CHECK_STYLE_FAVORITE_DEFAULT_BG_IMAGE_MIN_HEIGHT_INC)
+////////////////////////////////////////////////////////////////////////////////
+CHECK_STYLE_FAVORITE("favorite/extended", CHECK_STYLE_FAVORITE_EXTENDED_BG_IMAGE_MIN_WIDTH_INC, CHECK_STYLE_FAVORITE_EXTENDED_BG_IMAGE_MIN_HEIGHT_INC)
+////////////////////////////////////////////////////////////////////////////////
+
+ group { name: "elm/check/base/grid";
+ images.image: "00_grid_select_check.png" COMP;
+ images.image: "00_grid_select_check_bg.png" COMP;
+ images.image: "00_grid_select_check_bg_press.png" COMP;
+ script {
+ public check_state = CHECK_STATE_DEFAULT;
+ public check_visible = CHECK_HIDE;
+ }
+ parts {
+ part { name: "bg";
+ type: RECT;
+ scale: 1;
+ description { state: "default" 0.0;
+ visible: 0;
+ }
+ }
+ part { name: "top_right_padding";
+ type: RECT;
+ mouse_events: 0;
+ scale: 1;
+ description { state: "default" 0.0;
+ visible: 0;
+ min: GENGRID_ITEM_CHECK_TOP_RIGHT_PADDING_INC;
+ align: 1.0 0.0;
+ fixed: 1 1;
+ rel1 {
+ relative: 1.0 0.0;
+ to: "bg";
+ }
+ rel2 {
+ relative: 1.0 0.0;
+ to: "bg";
+ }
+ }
+ }
+ part { name: "selected_bg";
+ scale: 1;
+ type: RECT;
+ description { state: "default" 0.0;
+ visible: 0;
+ rel1.to: "bg";
+ rel2.to: "bg";
+ }
+ description { state: "visible" 0.0;
+ inherit: "default" 0.0;
+ visible: 1;
+ color: GENGRID_EDIT_MODE_CHECK_BG_COLOR_INC;
+ }
+ }
+ part { name: "bg2";
+ mouse_events: 0;
+ scale: 1;
+ description { state: "default" 0.0;
+ min: GENGRID_EDIT_MODE_CHECK_SIZE_INC;
+ align: 1.0 0.0;
+ fixed: 1 1;
+ rel1 {
+ relative: 0.0 1.0;
+ to: "top_right_padding";
+ }
+ rel2 {
+ relative: 0.0 1.0;
+ to: "top_right_padding";
+ }
+ image.normal: "00_grid_select_check_bg.png";
+ }
+ description { state: "visible" 0.0;
+ inherit: "default" 0.0;
+ image.normal: "00_grid_select_check_bg_press.png";
+ }
+ description { state: "disabled" 0.0;
+ inherit: "default" 0.0;
+ }
+ }
+ part { name: "check";
+ mouse_events: 0;
+ clip_to: "sequence_clip";
+ scale: 1;
+ description { state: "default" 0.0;
+ visible: 0;
+ rel1.to: "bg2";
+ rel2.to: "bg2";
+ image.normal: "00_grid_select_check.png";
+ color: 255 255 255 0;
+ }
+ description { state: "visible" 0.0;
+ inherit: "default" 0.0;
+ visible: 1;
+ color: 255 255 255 255;
+ }
+ description { state: "pressed" 0.0;
+ inherit: "visible" 0.0;
+ }
+ description { state: "disabled_visible" 0.0;
+ inherit: "default" 0.0;
+ visible: 1;
+ }
+ }
+ part { name: "sequence_clip";
+ type: RECT;
+ mouse_events: 0;
+ description { state: "default" 0.0;
+ rel1.to: "bg2";
+ rel2.to: "bg2";
+ rel2.relative: 0.0 1.0;
+ color: 255 255 255 255;
+ }
+ description { state: "visible" 0.0;
+ inherit: "default" 0.0;
+ rel2.relative: 1.0 1.0;
+ }
+ }
+ part { name: "elm.swallow.content";
+ type: SWALLOW;
+ description {
+ state: "default" 0.0;
+ fixed: 1 0;
+ visible: 0;
+ color: 255 255 255 255;
+ align: 0.0 0.5;
+ rel1 {
+ to_x: "bg2";
+ relative: 1.0 0.0;
+ offset: 1 1;
+ }
+ rel2 {
+ to_x: "bg2";
+ relative: 1.0 1.0;
+ offset: 2 -2;
+ }
+ }
+ description { state: "visible" 0.0;
+ inherit: "default" 0.0;
+ fixed: 1 1;
+ visible: 1;
+ aspect: 1.0 1.0;
+ aspect_preference: VERTICAL;
+ }
+ description { state: "disabled" 0.0;
+ inherit: "default" 0.0;
+ color: 128 128 128 128;
+ }
+ description { state: "disabled_visible" 0.0;
+ inherit: "default" 0.0;
+ color: 128 128 128 128;
+ fixed: 1 1;
+ visible: 1;
+ aspect: 1.0 1.0;
+ }
+ }
+ part { name: "elm.text";
+ type: TEXTBLOCK;
+ mouse_events: 0;
+ scale: 1;
+ description { state: "default" 0.0;
+ visible: 0;
+ fixed: 0 1;
+ rel1 {
+ relative: 1.0 0.5;
+ offset: 1 1;
+ to_x: "elm.swallow.content";
+ }
+ rel2 {
+ relative: 1.0 0.5;
+ offset: -2 -2;
+ }
+ color: 255 255 255 255;
+ align: 0.0 0.5;
+ text {
+ style: "check_label_textblock_style";
+ min: 0 0;
+ }
+ color: CHECK_DEFAULT_TEXT_NORMAL_COLOR_INC;
+ }
+ description { state: "visible" 0.0;
+ inherit: "default" 0.0;
+ visible: 1;
+ text.min: 1 1;
+ }
+ description { state: "disabled" 0.0;
+ inherit: "default" 0.0;
+ }
+ description { state: "disabled_visible" 0.0;
+ inherit: "default" 0.0;
+ visible: 1;
+ text.min: 1 1;
+ color: CHECK_DEFAULT_TEXT_DISABLED_COLOR_INC;
+ }
+ }
+ 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: "show";
+ signal: "show";
+ script {
+ set_int(check_visible, CHECK_SHOW);
+ }
+ }
+ program { name: "hide";
+ signal: "hide";
+ script {
+ set_int(check_visible, CHECK_HIDE);
+ }
+ }
+ program { name: "click";
+ signal: "mouse,clicked,1";
+ source: "events";
+ action: SIGNAL_EMIT "elm,action,check,toggle" "";
+ after: "touch_sound";
+ }
+ program { name: "touch_sound";
+ action: PLAY_SAMPLE "touch_sound" 1.0;
+ after: "bg_normal";
+ }
+ program { name: "bg_normal";
+ script {
+ set_state(PART:"bg2", "default", 0.0);
+ }
+ }
+ program { name: "pressed";
+ signal: "mouse,down,1";
+ source: "events";
+ script {
+ new st[31];
+ new Float:vl;
+ get_state(PART:"check", st, 30, vl);
+ if (!strcmp(st, "visible"))
+ {
+ set_state(PART:"check", "pressed", 0.0);
+ set_state(PART:"bg2", "visible", 0.0);
+ }
+ }
+ }
+ program { name: "mouse,out";
+ signal: "mouse,out";
+ source: "events";
+ script {
+ if (get_int(check_state) == CHECK_STATE_VISIBLE)
+ {
+ set_state(PART:"check", "visible", 0.0);
+ set_state(PART:"sequence_clip", "visible", 0.0);
+ set_state(PART:"bg2", "visible", 0.0);
+ }
+ else
+ {
+ set_state(PART:"check", "default", 0.0);
+ set_state(PART:"sequence_clip", "default", 0.0);
+ set_state(PART:"bg2", "default", 0.0);
+ }
+ }
+ }
+ program { name: "check_on";
+ signal: "elm,state,check,on";
+ source: "elm";
+ script {
+ set_int(check_state, CHECK_STATE_VISIBLE);
+ if (get_int(check_visible) == CHECK_SHOW)
+ {
+ run_program(PROGRAM:"check_show_effect");
+ run_program(PROGRAM:"check_draw_effect");
+ }
+ else
+ {
+ set_state(PART:"check", "visible", 0.0);
+ set_state(PART:"sequence_clip", "visible", 0.0);
+ }
+ set_state(PART:"bg2", "visible", 0.0);
+ set_state(PART:"selected_bg", "visible", 0.0);
+ }
+ }
+ program { name: "check_off";
+ signal: "elm,state,check,off";
+ source: "elm";
+ action: STATE_SET "default" 0.0;
+ target: "check";
+ script {
+ if (get_int(check_state) == CHECK_STATE_VISIBLE)
+ {
+ set_int(check_state, CHECK_STATE_DEFAULT);
+ set_state(PART:"check", "default", 0.0);
+ set_state(PART:"sequence_clip", "default", 0.0);
+ }
+ set_state(PART:"bg2", "default", 0.0);
+ set_state(PART:"selected_bg", "default", 0.0);
+ }
+ }
+ program { name: "check_show_effect";
+ action: STATE_SET "visible" 0.0;
+ transition: LINEAR 0.233;
+ target: "check";
+ }
+ program { name: "check_draw_effect";
+ action: STATE_SET "visible" 0.0;
+ transition: LINEAR 0.267;
+ target: "sequence_clip";
+ }
+ 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: "disabler";
+ target: "bg2";
+ 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);
+ set_int(check_state, CHECK_STATE_DISABLED_VISIBLE);
+ }
+ }
+ }
+ program { name: "enable";
+ signal: "elm,state,enabled";
+ source: "elm";
+ action: STATE_SET "default" 0.0;
+ target: "disabler";
+ target: "bg2";
+ 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);
+ set_state(PART:"sequence_clip", "visible", 0.0);
+ set_int(check_state, CHECK_STATE_VISIBLE);
+ }
+ else
+ set_int(check_state, CHECK_STATE_DEFAULT);
+ }
+ }
+ }
+ }