viewer: use signal to showing/hiding favorite icon 21/44521/1
authorMinkyu Kang <mk7.kang@samsung.com>
Thu, 23 Jul 2015 02:40:38 +0000 (11:40 +0900)
committerMinkyu Kang <mk7.kang@samsung.com>
Thu, 23 Jul 2015 02:40:38 +0000 (11:40 +0900)
Change-Id: I2ac14ea49e80387543ee6325159deb424984a04c
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
include/view/viewer.h
res/edc/images/ic_title_favorite.png [moved from res/images/ic_title_favorite.png with 100% similarity]
res/edc/view/viewer.edc
src/view/viewer.c

index d3d494e..bfc9c8c 100644 (file)
@@ -44,6 +44,8 @@
 #define SIG_HIDE_BAR "hide,bar"
 #define SIG_SHOW_BAR "show,bar"
 #define SIG_SHOWED_BAR "showed,bar"
+#define SIG_VIEWER_SHOW_FAV "show,favorite"
+#define SIG_VIEWER_HIDE_FAV "hide,favorite"
 
 /* source */
 #define SRC_BTN_PREV "prev"
@@ -55,8 +57,7 @@
 #define SRC_BTN_PHOTO_NEXT "next_photo"
 
 /* images */
-#define IMAGE_VIEWER_FAVORITE IMAGEDIR"/ic_title_favorite.png"
-
+#define IMAGE_VIEWER_FAVORITE "ic_title_favorite.png"
 #define IMAGE_VIEWER_PREV_FOCUS "btn_view_contr_previous_foc.png"
 #define IMAGE_VIEWER_PREV_NORMAL "btn_view_contr_previous_nor.png"
 #define IMAGE_VIEWER_REW_FOCUS "btn_view_contr_rewind_foc.png"
index bf7bb02..7bd52c4 100644 (file)
@@ -18,6 +18,9 @@
 
 group {
        name: GRP_VIEWER_VIEW;
+       images {
+               image: IMAGE_VIEWER_FAVORITE COMP;
+       }
        parts {
                part {
                        name: "bg";
@@ -202,7 +205,8 @@ group {
                }
                part {
                        name: PART_VIEWER_FAVORITE;
-                       type: SWALLOW;
+                       type: IMAGE;
+                       clip_to: "toparea";
                        scale: 1;
                        description {
                                state: "default" 0.0;
@@ -217,6 +221,13 @@ group {
                                }
                                fixed: 1 1;
                                align: 1.0 0.5;
+                               visible: 0;
+                       }
+                       description {
+                               state: "show" 0.0;
+                               inherit: "default" 0.0;
+                               image.normal: IMAGE_VIEWER_FAVORITE;
+                               visible: 1;
                        }
                }
 
@@ -495,5 +506,19 @@ group {
                        name: SIG_SHOWED_BAR;
                        action: SIGNAL_EMIT SIG_SHOWED_BAR "";
                }
+               program {
+                       name: SIG_VIEWER_SHOW_FAV;
+                       signal: SIG_VIEWER_SHOW_FAV;
+                       source: "";
+                       action: STATE_SET "show" 0.0;
+                       target: PART_VIEWER_FAVORITE;
+               }
+               program {
+                       name: SIG_VIEWER_HIDE_FAV;
+                       signal: SIG_VIEWER_HIDE_FAV;
+                       source: "";
+                       action: STATE_SET "default" 0.0;
+                       target: PART_VIEWER_FAVORITE;
+               }
        }
 }
index c9f736c..0d128d8 100644 (file)
@@ -70,7 +70,6 @@ struct _priv {
        Evas_Object *base;
        Evas_Object *photo;
        Evas_Object *photo_pre;
-       Evas_Object *favorite;
 
        struct _viewer viewer;
        struct _playlist playlist;
@@ -370,11 +369,10 @@ static void _draw_progressbar(struct _priv *priv, int id, app_media_info *mi)
 
 static void _draw_favorite_icon(struct _priv *priv, int id, app_media_info *mi)
 {
-       if (!mi->favorite)
-               return;
-
-       elm_object_part_content_set(priv->base,
-                       PART_VIEWER_FAVORITE, priv->favorite);
+       if (mi->favorite)
+               elm_object_signal_emit(priv->base, SIG_VIEWER_SHOW_FAV, "");
+       else
+               elm_object_signal_emit(priv->base, SIG_VIEWER_HIDE_FAV, "");
 }
 
 static app_media_info *_get_current_media_info(struct _priv *priv)
@@ -498,7 +496,7 @@ static void _viewer_hide(struct _priv *priv)
        ctl = priv->viewer.ctl[priv->viewer.cur];
        ctl->ops->hide(ctl->handle);
 
-       elm_object_part_content_unset(priv->base, PART_VIEWER_FAVORITE);
+       elm_object_signal_emit(priv->base, SIG_VIEWER_HIDE_FAV, "");
 }
 
 static bool _viewer_add(struct _priv *priv, int id)
@@ -821,7 +819,6 @@ static void _callback_video(void *data, const char *ev)
 
 static bool _ui_init(struct _priv *priv)
 {
-       Evas_Object *obj;
        struct progressbar *prog;
        bool r;
        int i;
@@ -845,15 +842,6 @@ static bool _ui_init(struct _priv *priv)
 
        priv->progress = prog;
 
-       obj = elm_image_add(priv->base);
-       if (!obj) {
-               _ERR("failed to adding image");
-               goto err;
-       }
-
-       elm_image_file_set(obj, IMAGE_VIEWER_FAVORITE, NULL);
-       priv->favorite = obj;
-
        priv->timeout = timeout_handler_init(VIEWER_TIMEOUT,
                        _timeout_cb, priv,
                        _event_cb, priv);