summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHyojung Jo <hj903.jo@samsung.com>2015-07-28 17:25:06 +0900
committerHyojung Jo <hj903.jo@samsung.com>2015-07-28 17:25:06 +0900
commit6332812f68d5b75a6cfe9d4e1beefd02957406c9 (patch)
treeeceb49c0ffc1b81fd4f40405f33da9c8c7d0fb2e
parent34d05cbbf11e5755912f2fa4fee5fe59bfd4c914 (diff)
downloadair_favorite-6332812f68d5b75a6cfe9d4e1beefd02957406c9.tar.gz
air_favorite-6332812f68d5b75a6cfe9d4e1beefd02957406c9.tar.bz2
air_favorite-6332812f68d5b75a6cfe9d4e1beefd02957406c9.zip
Movie grid: Fixed the edc for animation of grid item
Change-Id: I7b205a41c284741a489bf76c12f46a8f6ce44f53 Signed-off-by: Hyojung Jo <hj903.jo@samsung.com>
-rw-r--r--include/define.h9
-rw-r--r--res/widgets/gengrid_movie.edc275
-rw-r--r--src/grid/grid_movie.c79
3 files changed, 267 insertions, 96 deletions
diff --git a/include/define.h b/include/define.h
index 5806bc8..d05dc7c 100644
--- a/include/define.h
+++ b/include/define.h
@@ -55,6 +55,10 @@
/* Source */
#define SRC_EDC "edc"
+/* Transition */
+#define TRANSITION_FOCUS DECELERATE 0.20
+#define TRANSITION_CLICK DECELERATE 0.20
+
/* Text */
#define STR_FAVORITE "Favorite"
#define STR_NULL "(NULL)"
@@ -75,6 +79,11 @@
#define FONT_TIZENSANS_REGULAR "TizenSans"
#define FONT_TIZENSANS_LIGHT "TizenSans:style=Light"
+/* Color */
+#define COLOR_TEXT_BG 113 128 147 255
+#define COLOR_ITEM_FOCUS 0 119 246 255
+#define COLOR_ITEM_FOCUS_0 0 119 246 0
+
/* Size */
#define SIZE_BOX_PAD_H (40 + 40)
#define SIZE_BOX_PAD_V 0
diff --git a/res/widgets/gengrid_movie.edc b/res/widgets/gengrid_movie.edc
index b01bf0a..ed9fd21 100644
--- a/res/widgets/gengrid_movie.edc
+++ b/res/widgets/gengrid_movie.edc
@@ -18,22 +18,100 @@ group {
name, "elm/gengrid/item/style.movie/default";
data.item, "focus_highlight" "on";
data.item, "texts" "part.thumb.text";
- data.item, "contents" "part.thumb.icon part.thumb.text.bg";
+ data.item, "contents" "part.thumb.icon";
images {
image, PLAY_ICON_PNG COMP;
}
parts {
part {
+ name, "padding.bottom.right";
+ type, SPACER;
+ scale, 1;
+ description {
+ state, "default" 0.0;
+ rel1.relative, 1.0 1.0;
+ min, 26 26;
+ align, 1.0 1.0;
+ fixed, 1 1;
+ }
+ }
+
+ part {
+ name, "map";
+ type, RECT;
+ scale, 1;
+ description {
+ state, "default" 0.0;
+ perspective {
+ zplane, 0;
+ focal, 1000;
+ }
+ visible, 0;
+ }
+ description {
+ state, "selected" 0.0;
+ inherit, "default" 0.0;
+ perspective.zplane, -100;
+ }
+ }
+
+ part {
+ name, "part.bg";
+ type, RECT;
+ scale, 1;
+ description {
+ state, "default" 0.0;
+ rel2 {
+ to, "padding.bottom.right";
+ relative, 0.0 0.0;
+ }
+ fixed, 1 1;
+ visible, 0;
+ }
+ }
+
+ part {
+ name, "part.default.bg";
+ type, RECT;
+ scale, 1;
+ description {
+ state, "default" 0.0;
+ rel1.to, "part.bg";
+ rel2 {
+ to, "part.thumb.text.bg";
+ relative, 1.0 1.0;
+ }
+ color, 0 0 0 115;
+ map {
+ perspective_on, 1;
+ perspective, "map";
+ }
+ }
+ description {
+ state, "focused" 0.0;
+ inherit, "default" 0.0;
+ map.on, 1;
+ }
+ }
+
+ part {
name, PART_THUMB_ICON;
type, SWALLOW;
scale, 1;
description {
state, "default" 0.0;
- min, 378 212;
- rel2.relative, 0.0 0.0;
- align, 0.0 0.0;
- fixed, 1 1;
+ rel1.to, "part.default.bg";
+ rel2.to, "part.default.bg";
+ map {
+ perspective_on, 1;
+ perspective, "map";
+ }
+ }
+ description {
+ state, "focused" 0.0;
+ inherit, "default" 0.0;
+ map.on, 1;
}
}
@@ -68,53 +146,72 @@ group {
}
align, 0.0 0.0;
fixed, 1 1;
+ map {
+ perspective_on, 1;
+ perspective, "map";
+ }
+ }
+ description {
+ state, "focused" 0.0;
+ inherit, "default" 0.0;
+ map.on, 1;
}
}
part {
- name, PART_THUMB_TEXT_BG;
- type, SWALLOW;
+ name, "part.default.text.bg";
+ type, RECT;
+ mouse_events, 0;
scale, 1;
description {
state, "default" 0.0;
- min, 378 82;
rel1 {
- to, PART_THUMB_ICON;
+ to, "part.bg";
relative, 0.0 1.0;
}
- rel2 {
- to, PART_THUMB_ICON;
- relative, 0.0 1.0;
+ rel2.to, "part.bg";
+ min, 0 82;
+ align, 0.5 1.0;
+ color, COLOR_TEXT_BG;
+ fixed, 0 1;
+ map {
+ perspective_on, 1;
+ perspective, "map";
}
- align, 0.0 0.0;
- fixed, 1 1;
+ }
+ description {
+ state, "focused" 0.0;
+ inherit, "default" 0.0;
+ color, COLOR_ITEM_FOCUS;
+ map.on, 1;
}
}
part {
- name, "part.focus.down";
+ name, "part.thumb.text.bg";
type, RECT;
+ mouse_events, 0;
scale, 1;
description {
state, "default" 0.0;
- color, 0 119 246 255;
- min, 378 82;
- rel1 {
- to, PART_THUMB_ICON;
- relative, 0.0 1.0;
+ color, COLOR_TEXT_BG;
+ rel1.to, "part.default.text.bg";
+ rel2.to, "part.default.text.bg";
+ map {
+ perspective_on, 1;
+ perspective, "map";
}
- rel2 {
- to, PART_THUMB_ICON;
- relative, 0.0 1.0;
- }
- align, 0.0 0.0;
- fixed, 1 1;
- visible, 0;
}
description {
state, "focused" 0.0;
inherit, "default" 0.0;
- visible, 1;
+ color, COLOR_ITEM_FOCUS;
+ map.on, 1;
+ }
+ description {
+ state, "focused_0" 0.0;
+ inherit, "default" 0.0;
+ color, COLOR_ITEM_FOCUS_0;
}
}
@@ -125,9 +222,9 @@ group {
description {
state, "default" 0.0;
min, 18 0;
- rel1.to, PART_THUMB_TEXT_BG;
+ rel1.to, "part.thumb.text.bg";
rel2 {
- to, PART_THUMB_TEXT_BG;
+ to, "part.thumb.text.bg";
relative, 0.0 1.0;
}
align, 0.0 0.5;
@@ -158,57 +255,95 @@ group {
size, 28;
align, 0.0 0.5;
}
+ map {
+ perspective_on, 1;
+ perspective, "map";
+ }
+ }
+ description {
+ state, "focused" 0.0;
+ inherit, "default" 0.0;
+ map.on, 1;
+ }
+ description {
+ state, "focused_0" 0.0;
+ inherit, "focused" 0.0;
}
}
part {
name, "part.focus.up";
type, RECT;
+ mouse_events, 0;
scale, 1;
description {
state, "default" 0.0;
- color, 0 119 246 255;
+ color, COLOR_ITEM_FOCUS;
min, 378 6;
rel2.relative, 0.0 0.0;
align, 0.0 0.0;
fixed, 1 1;
visible, 0;
+ map {
+ perspective_on, 1;
+ perspective, "map";
+ }
}
description {
state, "focused" 0.0;
inherit, "default" 0.0;
visible, 1;
+ map.on, 1;
+ }
+ description {
+ state, "focused_0" 0.0;
+ inherit, "default" 0.0;
+ visible, 1;
+ color, COLOR_ITEM_FOCUS_0;
}
}
part {
name, "part.focus.left";
type, RECT;
+ mouse_events, 0;
scale, 1;
description {
state, "default" 0.0;
- color, 0 119 246 255;
- min, 6 294;
+ color, COLOR_ITEM_FOCUS;
+ min, 6 212;
rel2.relative, 0.0 0.0;
align, 0.0 0.0;
fixed, 1 1;
visible, 0;
+ map {
+ perspective_on, 1;
+ perspective, "map";
+ }
}
description {
state, "focused" 0.0;
inherit, "default" 0.0;
visible, 1;
+ map.on, 1;
+ }
+ description {
+ state, "focused_0" 0.0;
+ inherit, "default" 0.0;
+ visible, 1;
+ color, COLOR_ITEM_FOCUS_0;
}
}
part {
name, "part.focus.right";
type, RECT;
+ mouse_events, 0;
scale, 1;
description {
state, "default" 0.0;
- color, 0 119 246 255;
- min, 6 294;
+ color, COLOR_ITEM_FOCUS;
+ min, 6 212;
rel1 {
to, "part.focus.up";
relative, 1.0 0.0;
@@ -220,11 +355,22 @@ group {
align, 1.0 0.0;
fixed, 1 1;
visible, 0;
+ map {
+ perspective_on, 1;
+ perspective, "map";
+ }
}
description {
state, "focused" 0.0;
inherit, "default" 0.0;
visible, 1;
+ map.on, 1;
+ }
+ description {
+ state, "focused_0" 0.0;
+ inherit, "default" 0.0;
+ visible, 1;
+ color, COLOR_ITEM_FOCUS_0;
}
}
}
@@ -234,11 +380,33 @@ group {
name, SIG_FOCUSED;
signal, "elm,state,focused";
source, "elm";
+ action, STATE_SET "focused_0" 0.0;
+ target, "part.thumb.text.bg";
+ target, "part.focus.up";
+ target, "part.focus.left";
+ target, "part.focus.right";
+ target, PART_THUMB_TEXT;
+ after, "focus.in.anim";
+ }
+
+ program {
+ name, "focus.in.anim";
action, STATE_SET "focused" 0.0;
+ target, "part.default.bg";
+ target, PART_THUMB_ICON;
+ target, "part.play.icon";
+ target, "part.thumb.text.bg";
target, "part.focus.up";
target, "part.focus.left";
- target, "part.focus.down";
target, "part.focus.right";
+ transition, TRANSITION_FOCUS;
+ after, "focus.in.anim.2";
+ }
+
+ program {
+ name, "focus.in.anim.2";
+ action, STATE_SET "focused" 0.0;
+ target, "part.default.text.bg";
}
program {
@@ -246,9 +414,31 @@ group {
signal, "elm,state,unfocused";
source, "elm";
action, STATE_SET "default" 0.0;
+ target, PART_THUMB_TEXT;
+ target, "part.default.text.bg";
+ after, "focus.out.anim";
+ }
+
+ program {
+ name, "focus.out.anim";
+ action, STATE_SET "selected_0" 0.0;
+ target, "part.thumb.text.bg";
+ target, "part.focus.up";
+ target, "part.focus.left";
+ target, "part.focus.right";
+ transition, TRANSITION_FOCUS;
+ after, "focus.out.anim.2";
+ }
+
+ program {
+ name, "focus.out.anim.2";
+ action, STATE_SET "default" 0.0;
+ target, PART_THUMB_ICON;
+ target, "part.play.icon";
+ target, "part.default.bg";
+ target, "part.default.text.bg";
target, "part.focus.up";
target, "part.focus.left";
- target, "part.focus.down";
target, "part.focus.right";
}
@@ -256,6 +446,17 @@ group {
name, SIG_SELECTED;
signal, "elm,state,selected";
source, "elm";
+ action, STATE_SET "selected" 0.0;
+ target, "map";
+ transition, TRANSITION_CLICK;
+ after, "after_selected";
+ }
+
+ program {
+ name, "after_selected";
+ action, STATE_SET "default" 0.0;
+ target, "map";
+ transition, TRANSITION_CLICK;
after, "item_selected";
}
diff --git a/src/grid/grid_movie.c b/src/grid/grid_movie.c
index 90c2c6d..80e5713 100644
--- a/src/grid/grid_movie.c
+++ b/src/grid/grid_movie.c
@@ -27,25 +27,6 @@
#define ITEM_MOVIE_X (378 + 26)
#define ITEM_MOVIE_Y (294 + 26)
-/* It is temporarily used. */
-#define COUNT_COLOR 5
-
-struct color {
- int r;
- int g;
- int b;
- int a;
-};
-
-static struct color colors[] =
-{
- {73, 68, 62, 255},
- {55, 74, 97, 255},
- {75, 102, 163, 255},
- {55, 143, 162, 255},
- {86, 98, 113, 255}
-};
-
static char *_text_get(void *data, Evas_Object *obj, const char *part)
{
struct datamgr *dmgr;
@@ -70,9 +51,8 @@ static char *_text_get(void *data, Evas_Object *obj, const char *part)
static Evas_Object *_content_get(void *data, Evas_Object *obj, const char *part)
{
struct datamgr *dmgr;
- Evas_Object *icon, *img, *text_bg;
+ Evas_Object *icon, *img;
char *thumbnail;
- int idx;
if (!data || !obj) {
_ERR("Invalid argument.");
@@ -83,52 +63,33 @@ static Evas_Object *_content_get(void *data, Evas_Object *obj, const char *part)
if (!dmgr || !dmgr->get_data)
return NULL;
- if (!strcmp(part, PART_THUMB_ICON)) {
- thumbnail = dmgr->get_data(data, DATA_THUMBNAIL);
-
- if (!thumbnail) {
- icon = elm_icon_add(obj);
- if (!icon) {
- _ERR("elm_icon_add failed.");
- return NULL;
- }
-
- elm_icon_thumb_set(icon,
- dmgr->get_data(data, DATA_PATH), NULL);
- elm_image_aspect_fixed_set(icon, EINA_FALSE);
-
- return icon;
- }
+ thumbnail = dmgr->get_data(data, DATA_THUMBNAIL);
- img = elm_image_add(obj);
- if (!img) {
- _ERR("elm_image_add failed.");
+ if (!thumbnail) {
+ icon = elm_icon_add(obj);
+ if (!icon) {
+ _ERR("elm_icon_add failed.");
return NULL;
}
- elm_image_file_set(img, thumbnail, NULL);
- elm_image_aspect_fixed_set(img, EINA_FALSE);
- evas_object_show(img);
+ elm_icon_thumb_set(icon,
+ dmgr->get_data(data, DATA_PATH), NULL);
+ elm_image_aspect_fixed_set(icon, EINA_FALSE);
- return img;
- } else if (!strcmp(part, PART_THUMB_TEXT_BG)) {
- text_bg = evas_object_rectangle_add(obj);
- if (!text_bg) {
- _ERR("evas_object_rectangle_add failed.");
- return NULL;
- }
-
- idx = rand() % COUNT_COLOR;
-
- evas_object_color_set(text_bg, colors[idx].r, colors[idx].g,
- colors[idx].b, colors[idx].a);
-
- evas_object_show(text_bg);
+ return icon;
+ }
- return text_bg;
+ img = elm_image_add(obj);
+ if (!img) {
+ _ERR("elm_image_add failed.");
+ return NULL;
}
- return NULL;
+ elm_image_file_set(img, thumbnail, NULL);
+ elm_image_aspect_fixed_set(img, EINA_FALSE);
+ evas_object_show(img);
+
+ return img;
}
static struct grid_class _gclass = {