fix the usage of base object 41/39041/3
authorMinkyu Kang <mk7.kang@samsung.com>
Thu, 7 May 2015 11:17:28 +0000 (20:17 +0900)
committerMinkyu Kang <mk7.kang@samsung.com>
Thu, 7 May 2015 11:38:11 +0000 (20:38 +0900)
Change-Id: Ibcefc7d8c6a5f3dfeb34083bf300be1cd1662023
Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
include/view_player.h
src/view_player.cpp

index faf70a3..2db4f3a 100644 (file)
@@ -39,12 +39,12 @@ private:
 
 private:
        bool m_ControlInit(SPlayerParam *param);
-       bool m_UiInit(Evas_Object *base);
-       bool m_AddControls(void);
-       void m_UpdateInfoBar(void);
-       bool m_PlayerInit(void);
-       void m_ShowBar(void);
-       void m_HideBar(void);
+       bool m_UiInit(void);
+       bool m_AddControls(Evas_Object *base);
+       void m_UpdateInfoBar(Evas_Object *base);
+       bool m_PlayerInit(Evas_Object *base);
+       void m_ShowBar(Evas_Object *base);
+       void m_HideBar(Evas_Object *base);
        void m_Fini(void);
 
 private:
@@ -75,7 +75,7 @@ public:
        CPlayerView(const char *szViewId) : CBaseView(szViewId), m(0) {}
        virtual ~CPlayerView(void) {}
 
-       virtual bool Create(void *data);
+       virtual bool Create(void *data, Evas_Object *eoBase);
        virtual void Destroy(void);
 };
 
index 9ff8206..2b25aae 100644 (file)
@@ -82,7 +82,7 @@ enum _repeat_option {
        E_REPEAT_NONE
 };
 
-void CPlayerView::m_UpdateInfoBar(void)
+void CPlayerView::m_UpdateInfoBar(Evas_Object *base)
 {
        const char *name;
        const char *source;
@@ -90,11 +90,17 @@ void CPlayerView::m_UpdateInfoBar(void)
        char buf[32];
        time_t video_time;
        struct tm tm;
+       bool r;
+
+       path = m->player->GetPath();
+       r = m->mediadata->Create(path);
+       if (!r)
+               return;
 
        /* Title */
        name = m->mediadata->GetName();
        if (name)
-               elm_object_part_text_set(Base(), PART_TITLETEXT, name);
+               elm_object_part_text_set(base, PART_TITLETEXT, name);
 
        /* Created Time */
        video_time = m->mediadata->GetTime();
@@ -106,7 +112,7 @@ void CPlayerView::m_UpdateInfoBar(void)
                snprintf(buf, sizeof(buf), "%s", _(TEXT_NODATE));
        }
 
-       elm_object_part_text_set(Base(), PART_DATETEXT, buf);
+       elm_object_part_text_set(base, PART_DATETEXT, buf);
 
        /* Source */
        /* FIXME: when usb path is decided, this logic should be changed */
@@ -115,12 +121,12 @@ void CPlayerView::m_UpdateInfoBar(void)
                source = SOURCE_TV;
        else
                source = SOURCE_USB;
-       elm_object_part_text_set(Base(), PART_SOURCETEXT, _(source));
+       elm_object_part_text_set(base, PART_SOURCETEXT, _(source));
 
        /* Playlist Count */
        snprintf(buf, sizeof(buf), "%d/%d",
                        m->player->GetCurrent() + 1, m->player->GetTotal());
-       elm_object_part_text_set(Base(), PART_CURRENTTEXT, buf);
+       elm_object_part_text_set(base, PART_CURRENTTEXT, buf);
 
        /* Resolution */
        snprintf(buf, sizeof(buf), "%dx%d", m->mediadata->GetWidth(),
@@ -129,29 +135,24 @@ void CPlayerView::m_UpdateInfoBar(void)
        m->duration = m->mediadata->GetDuration();
        m->position = m->mediadata->GetPosition();
 
-       elm_object_part_text_set(Base(), PART_RESOLUTIONTEXT, buf);
+       elm_object_part_text_set(base, PART_RESOLUTIONTEXT, buf);
+
+       m->mediadata->Destroy();
 }
 
-bool CPlayerView::m_PlayerInit(void)
+bool CPlayerView::m_PlayerInit(Evas_Object *base)
 {
-       const char *path;
        bool r;
 
        r = m->player->Play();
 
-       path = m->player->GetPath();
-
-       r = m->mediadata->Create(path);
-       if (r) {
-               m_UpdateInfoBar();
-               m->mediadata->Destroy();
-       }
+       m_UpdateInfoBar(base);
 
        m->slider->Reset(m->duration, m->position);
        m->control->Signal(E_PLAYPAUSE_BTN, SIG_SET_PAUSE, "");
 
        if (m->bar_hidden) {
-               m_ShowBar();
+               m_ShowBar(base);
                timeout_handler_reset(m->timeout_handle);
        }
 
@@ -350,20 +351,20 @@ void CPlayerView::sm_CbShowViewFinish(void *dt, Evas_Object *obj,
        data->control->Show();
 }
 
-void CPlayerView::m_ShowBar(void)
+void CPlayerView::m_ShowBar(Evas_Object *base)
 {
        m->volume->Hide();
 
        if (m->bar_hidden) {
-               elm_object_signal_emit(Base(), SIG_SHOW_VIEW, "");
+               elm_object_signal_emit(base, SIG_SHOW_VIEW, "");
                m->bar_hidden = false;
                m->slider->Resume();
        }
 }
 
-void CPlayerView::m_HideBar(void)
+void CPlayerView::m_HideBar(Evas_Object *base)
 {
-       elm_object_signal_emit(Base(), SIG_HIDE_VIEW, "");
+       elm_object_signal_emit(base, SIG_HIDE_VIEW, "");
        m->bar_hidden = true;
 
        m->slider->Pause();
@@ -456,16 +457,16 @@ void CPlayerView::sm_CbEcoreEvent(void *dt, int type, void *ei)
        }
 }
 
-bool CPlayerView::m_AddControls(void)
+bool CPlayerView::m_AddControls(Evas_Object *base)
 {
-       if (!m->control->Create(Base(), _control_name, CONTROL_BTNS))
+       if (!m->control->Create(base, _control_name, CONTROL_BTNS))
                return false;
 
        m->repeat = E_REPEAT_ALL;
 
        m->control->AddHandler(sm_EvtControlBtn, m);
 
-       if (!m->slider->Create(Base(), m->player)) {
+       if (!m->slider->Create(base, m->player)) {
                m->control->Destroy();
                return false;
        }
@@ -485,7 +486,7 @@ bool CPlayerView::m_AddControls(void)
                return false;
        }
 
-       eext_object_event_callback_add(Base(),
+       eext_object_event_callback_add(base,
                        EEXT_CALLBACK_BACK, sm_EvtBack, m);
 
        return true;
@@ -546,45 +547,42 @@ bool CPlayerView::m_ControlInit(SPlayerParam *param)
        return true;
 }
 
-bool CPlayerView::m_UiInit(Evas_Object *base)
+bool CPlayerView::m_UiInit(void)
 {
-       base = elm_layout_add(m->win);
-       if (!base) {
+       m->base = elm_layout_add(m->win);
+       if (!m->base) {
                _ERR("failed to add layout");
                return false;
        }
 
-       m->base = base;
-
-       if (!elm_layout_file_set(base, EDJEFILE, GRP_VIDEO_PLAYER)) {
+       if (!elm_layout_file_set(m->base, EDJEFILE, GRP_VIDEO_PLAYER)) {
                _ERR("failed to layout file set");
                return false;
        }
 
-       if (!m_AddControls()) {
+       if (!m_AddControls(m->base)) {
                _ERR("failed to add controls");
                return false;
        }
 
-       evas_object_size_hint_weight_set(base,
+       evas_object_size_hint_weight_set(m->base,
                        EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
 
-       elm_win_resize_object_add(m->win, base);
+       elm_win_resize_object_add(m->win, m->base);
 
-       evas_object_show(base);
+       evas_object_show(m->base);
 
-       elm_object_focus_allow_set(base, EINA_FALSE);
+       elm_object_focus_allow_set(m->base, EINA_FALSE);
 
        return true;
 }
 
-bool CPlayerView::Create(void *data)
+bool CPlayerView::Create(void *data, Evas_Object *eoBase)
 {
        ASSERT(!m);
        ASSERT(data);
 
        Evas_Object *win;
-       Evas_Object *base;
        SPlayerParam *param;
        bool r;
 
@@ -614,8 +612,7 @@ bool CPlayerView::Create(void *data)
                goto err;
        }
 
-       base = NULL;
-       r = m_UiInit(base);
+       r = m_UiInit();
        if (!r) {
                _ERR("failed to init UI");
                goto err_control;
@@ -627,7 +624,7 @@ bool CPlayerView::Create(void *data)
                goto err_control;
        }
 
-       r = m_PlayerInit();
+       r = m_PlayerInit(m->base);
        if (!r) {
                _ERR("failed to play video");
                goto err_player;
@@ -635,7 +632,7 @@ bool CPlayerView::Create(void *data)
 
        m->player->SetCompletedCb(sm_CbPlayComplete, m);
 
-       elm_object_signal_callback_add(Base(), "show,view,finish", "",
+       elm_object_signal_callback_add(m->base, "show,view,finish", "",
                        sm_CbShowViewFinish, m);
 
        m->drawanim_timer = ecore_timer_add(0.8, sm_CbDrawAnimation, m);
@@ -644,7 +641,7 @@ bool CPlayerView::Create(void *data)
                goto err;
        }
 
-       CBaseView::Create(NULL, base);
+       CBaseView::Create(NULL, m->base);
 
        return true;
 
@@ -696,7 +693,7 @@ void CPlayerView::t_OnShow(void)
 {
        ASSERT(m);
 
-       evas_object_show(Base());
+       evas_object_show(m->base);
 }
 
 void CPlayerView::t_OnPause(void)
@@ -715,10 +712,10 @@ void CPlayerView::t_OnUpdate(void *dt)
 
        switch (*action) {
        case ACTION_HIDE:
-               m_HideBar();
+               m_HideBar(m->base);
                break;
        case ACTION_SHOW:
-               m_ShowBar();
+               m_ShowBar(m->base);
                break;
        case ACTION_RESUME:
                m->player->Resume();
@@ -733,7 +730,7 @@ void CPlayerView::t_OnUpdate(void *dt)
                timeout_handler_reset(m->timeout_handle);
                break;
        case ACTION_INIT:
-               m_PlayerInit();
+               m_PlayerInit(m->base);
                break;
        }
 }