#include <Elementary.h>
enum EAddType;
-struct view_mgr;
-char *_get_timestr_from_milseconds(int mseconds);
-void _set_object_text(Evas_Object *lbl, char *text, int size,
- const char *style);
-Evas_Object *_add_box(Evas_Object *base);
-Evas_Object *_add_base(Evas_Object *win, const char *layout);
-void _object_mouse_moved(void *dt, Evas *e, Evas_Object *obj, void *ei);
-void _genlist_mouse_moved(void *dt, Evas *e, Evas_Object *obj, void *ei);
-void _gengrid_mouse_moved(void *dt, Evas *e,
- Evas_Object *obj, void *event_info);
-void _update_playback_view(enum EAddType type,
+class CCommonUI {
+private:
+ static Eina_Bool sm_CbMsgBoxTimer(void *dt);
+
+public:
+ static char *TimeStrFromMilSeconds(int mseconds);
+ static void SetObjectText(Evas_Object *lbl, char *txt, int size, const char *style);
+ static Evas_Object *AddBox(Evas_Object *base);
+ static Evas_Object *AddBase(Evas_Object *win, const char *layout);
+ static void CreateMsgBox(Evas_Object *base, const char *msg);
+ static void UpdatePlaybackView(EAddType type,
Evas_Object *layout, Elm_Object_Item *focused_item);
-void _create_message_box(Evas_Object *base, const char *msg);
-Evas_Object *_create_remove_popup(Evas_Object *base, const char *msg,
- Evas_Object_Event_Cb _close_cb, Evas_Smart_Cb _remove_cb,
- Evas_Smart_Cb _cancel_cb, void *dt);
+};
+
#endif /*__COMMON_UI_H__*/
_CREATE_BEGIN{
_CHECK(m = new SHandleVolume)
- _CHECK(m->eoVolLayout = _add_base(eoBase, MUSIC_VOLUME_LAYOUT))
+ _CHECK(m->eoVolLayout = CCommonUI::AddBase(eoBase, MUSIC_VOLUME_LAYOUT))
_COMMAND{ evas_object_hide(m->eoVolLayout); }
_CHECK(m->eoVolBar = elm_progressbar_add(m->eoVolLayout))
if (!m->mhandle->MediaAddsongsPlaylist(lid, list))
_ERR(" Adding songs to playlist failed ");
else
- _create_message_box(m->base, MUSIC_TEXT_ADDTO_MSG);
+ CCommonUI::CreateMsgBox(m->base, MUSIC_TEXT_ADDTO_MSG);
return;
}
m->mhandle->SetCurrentSong(sinfo->Id());
}
- _update_playback_view((EAddType)type, Layout(), m->focused_item);
+ CCommonUI::UpdatePlaybackView((EAddType)type, Layout(), m->focused_item);
}
return false;
}
- layout = _add_base(base, MUSIC_ALBUM_LAYOUT);
+ layout = CCommonUI::AddBase(base, MUSIC_ALBUM_LAYOUT);
if (!layout) {
_ERR(" get layout failed ");
delete m;
snprintf(buf, sizeof(buf), "%s", sinfo->Artist());
else if (!strcmp(part, "elm.text3")) {
duration = sinfo->Duration();
- timestr = _get_timestr_from_milseconds(duration);
+ timestr = CCommonUI::TimeStrFromMilSeconds(duration);
if (timestr) {
snprintf(buf, sizeof(buf), "%s", timestr);
free(timestr);
if (!m->mhandle->MediaAddsongsPlaylist(lid, list))
_ERR(" Adding songs to playlist failed ");
else
- _create_message_box(m->base, MUSIC_TEXT_ADDTO_MSG);
+ CCommonUI::CreateMsgBox(m->base, MUSIC_TEXT_ADDTO_MSG);
return;
}
m->mhandle->SetCurrentSong(((CSongInfo *)m->ctxtinfo->context)->Id());
}
- _update_playback_view((EAddType)type, Layout(), m->focused_item);
+ CCommonUI::UpdatePlaybackView((EAddType)type, Layout(), m->focused_item);
}
void CAlbumSongsLayout::sm_CbCtxtClose(void *dt)
m->mhandle->SetCurrentSong(id);
}
- _update_playback_view((EAddType)mode, Layout(), NULL);
+ CCommonUI::UpdatePlaybackView((EAddType)mode, Layout(), NULL);
}
return false;
}
- layout = _add_base(base, MUSIC_ALBUM_SONGS_LAYOUT);
+ layout = CCommonUI::AddBase(base, MUSIC_ALBUM_SONGS_LAYOUT);
if (!layout) {
_ERR(" get layout failed ");
delete m;
snprintf(buf, sizeof(buf), "%s - %s", sinfo->Name(), sinfo->Artist());
- _set_object_text(m->plsonglbl, buf, PLAYSONG_FONT_SIZE,
+ CCommonUI::SetObjectText(m->plsonglbl, buf, PLAYSONG_FONT_SIZE,
FONT_STYLE_REGULAR);
elm_label_slide_go(m->plsonglbl);
}
else {
- _set_object_text(m->plsonglbl, (char *)MUSIC_STR_EMPTY,
+ CCommonUI::SetObjectText(m->plsonglbl, (char *)MUSIC_STR_EMPTY,
PLAYSONG_FONT_SIZE, (const char *)FONT_STYLE_REGULAR);
}
}
btninfo[GROUP_BTN_PLAYLIST].icon_path = MUSIC_IMAGE_GRPBTN_PLAYLISTS;
btninfo[GROUP_BTN_PLAYLIST].type = BASE_VIEW_GROUP_PLAYLIST;
- box = _add_box(m->base);
+ box = CCommonUI::AddBox(m->base);
if (!box)
return;
return false;
}
- m->base = _add_base(win, MUSIC_BASE_VIEW);
+ m->base = CCommonUI::AddBase(win, MUSIC_BASE_VIEW);
if (!m->base) {
_ERR(" add base failed ");
delete m;
t.epopup->Destroy();
if (!strcmp(str, MUSIC_STR_EMPTY)) {
- _create_message_box(Layout(), MUSIC_TEXT_EMPTY_NAME);
+ CCommonUI::CreateMsgBox(Layout(), MUSIC_TEXT_EMPTY_NAME);
free(str);
return;
}
if (m->pMusicController->MediaExistPlaylist(str)) {
- _create_message_box(Layout(), MUSIC_TEXT_INUSE_MSG);
+ CCommonUI::CreateMsgBox(Layout(), MUSIC_TEXT_INUSE_MSG);
free(str);
return;
}
if (!m->pMusicController->MediaAddsongsPlaylist(lid, list))
_ERR(" Adding songs to playlist failed ");
else
- _create_message_box(t.base, MUSIC_TEXT_ADDTO_MSG);
+ CCommonUI::CreateMsgBox(t.base, MUSIC_TEXT_ADDTO_MSG);
if (t.depth == E_DEPTH_CATEGORY) {
EINA_LIST_FREE(list, obj) {
eina_list_free(list);
}
- _update_playback_view((EAddType)type, Layout(), t.focused_item);
+ CCommonUI::UpdatePlaybackView((EAddType)type, Layout(), t.focused_item);
}
void CCategoryLayout::m_GotoPlayback(int mode, char *id)
{
if (!m->it_infolist || eina_list_count(m->it_infolist) == 0) {
- _create_message_box(Layout(), MUSIC_TEXT_NO_SONGS);
+ CCommonUI::CreateMsgBox(Layout(), MUSIC_TEXT_NO_SONGS);
_ERR(" No songs for playback ");
return;
}
m->pMusicController->SetCurrentSong(id);
}
- _update_playback_view((EAddType)mode, Layout(), NULL);
+ CCommonUI::UpdatePlaybackView((EAddType)mode, Layout(), NULL);
}
snprintf(buf, sizeof(buf), "%s", sinfo->Artist());
else if (!strcmp(part, "elm.text3")) {
duration = sinfo->Duration();
- timestr = _get_timestr_from_milseconds(duration);
+ timestr = CCommonUI::TimeStrFromMilSeconds(duration);
if (timestr) {
snprintf(buf, sizeof(buf), "%s", timestr);
free(timestr);
if (!m->mhandle->MediaAddsongsPlaylist(lid, list))
_ERR(" Adding songs to playlist failed ");
else
- _create_message_box(m->base, MUSIC_TEXT_ADDTO_MSG);
+ CCommonUI::CreateMsgBox(m->base, MUSIC_TEXT_ADDTO_MSG);
return;
}
m->mhandle->SetCurrentSong(((CSongInfo *)m->ctxtinfo->context)->Id());
}
- _update_playback_view((EAddType)type, Layout(), m->focused_item);
+ CCommonUI::UpdatePlaybackView((EAddType)type, Layout(), m->focused_item);
}
m->mhandle->SetCurrentSong(id);
}
- _update_playback_view((EAddType)mode, Layout(), NULL);
+ CCommonUI::UpdatePlaybackView((EAddType)mode, Layout(), NULL);
}
return false;
}
- layout = _add_base(base, MUSIC_CATEGORY_SONGS_LAYOUT);
+ layout = CCommonUI::AddBase(base, MUSIC_CATEGORY_SONGS_LAYOUT);
if (!layout) {
_ERR(" get layout failed ");
delete m;
#include "BaseView.h"
#include "ViewMgr.h"
#include "song_info.h"
-//#include "playback-view.h"
+
#define MESSAGE_SHOW_TIME 2
-struct msg_box {
+struct SMsgBox {
Evas_Object *ly;
Ecore_Timer *timer;
};
-char *_get_timestr_from_milseconds(int mseconds)
+
+Eina_Bool CCommonUI::sm_CbMsgBoxTimer(void *dt)
+{
+ SMsgBox *mbox;
+
+ if (!dt)
+ return ECORE_CALLBACK_CANCEL;
+
+ mbox = (SMsgBox *)dt;
+
+ mbox->timer = NULL;
+ evas_object_del(mbox->ly);
+ delete mbox;
+
+ return ECORE_CALLBACK_CANCEL;
+}
+
+
+char *CCommonUI::TimeStrFromMilSeconds(int mseconds)
{
int sec;
char buf[MAX_LENGTH];
return strdup(buf);
}
-void _set_object_text(Evas_Object *lbl, char *text, int size, const char *style)
+void CCommonUI::SetObjectText(Evas_Object *lbl, char *text, int size, const char *style)
{
char buf[MAX_LENGTH];
elm_object_text_set(lbl, buf);
}
-Evas_Object *_add_box(Evas_Object *base)
+Evas_Object *CCommonUI::AddBox(Evas_Object *base)
{
Evas_Object *box;
if (!base)
return box;
}
-Evas_Object *_add_base(Evas_Object *win, const char *layout)
+Evas_Object *CCommonUI::AddBase(Evas_Object *win, const char *layout)
{
Evas_Object *base;
if (!win)
return base;
}
-void _object_mouse_moved(void *dt, Evas *e, Evas_Object *obj, void *ei)
-{
- if (!obj)
- return;
-
- if (!elm_object_focus_get(obj))
- elm_object_focus_set(obj, EINA_TRUE);
-}
-
-void _genlist_mouse_moved(void *dt, Evas *e, Evas_Object *obj, void *ei)
-{
- Elm_Object_Item *item;
- Evas_Event_Mouse_Move *ev;
-
- if (!obj || !ei)
- return;
-
- ev = (Evas_Event_Mouse_Move *)ei;
-
- item = elm_genlist_at_xy_item_get(obj, ev->cur.canvas.x,
- ev->cur.canvas.y, NULL);
-
- if (!elm_object_item_focus_get(item))
- elm_object_item_focus_set(item, EINA_TRUE);
-}
-
-void _gengrid_mouse_moved(void *dt, Evas *e,
- Evas_Object *obj, void *ei)
-{
- Elm_Object_Item *item;
- Evas_Event_Mouse_Move *ev;
-
- if (!obj || !ei)
- return;
-
- ev = (Evas_Event_Mouse_Move *)ei;
-
- item = elm_gengrid_at_xy_item_get(obj, ev->cur.canvas.x,
- ev->cur.canvas.y, NULL, NULL);
- if (!item)
- return;
-
- if (!elm_object_item_focus_get(item))
- elm_object_item_focus_set(item, EINA_TRUE);
-}
-
-static Eina_Bool _timer_cb(void *dt)
-{
- struct msg_box *mbox;
-
- if (!dt)
- return ECORE_CALLBACK_CANCEL;
-
- mbox = (msg_box *)dt;
- mbox->timer = NULL;
- evas_object_del(mbox->ly);
- free(mbox);
-
- return ECORE_CALLBACK_CANCEL;
-}
-
-void _create_message_box(Evas_Object *base, const char *msg)
+void CCommonUI::CreateMsgBox(Evas_Object *base, const char *msg)
{
Evas_Object *ly;
- struct msg_box *mbox;
+ SMsgBox *mbox;
if (!base || !msg)
return;
- mbox = (msg_box *)calloc(1, sizeof(*mbox));
+ mbox = new SMsgBox;
if (!mbox)
return;
- ly = _add_base(base, MUSIC_MESSAGE_LAYOUT);
+ ly = AddBase(base, MUSIC_MESSAGE_LAYOUT);
if (!ly) {
_ERR(" Failed to add layout ");
- free(mbox);
+ delete mbox;
return;
}
evas_object_show(ly);
mbox->ly = ly;
- mbox->timer = ecore_timer_add(MESSAGE_SHOW_TIME, _timer_cb, mbox);
+ mbox->timer = ecore_timer_add(MESSAGE_SHOW_TIME, sm_CbMsgBoxTimer, mbox);
}
-Evas_Object *_create_remove_popup(Evas_Object *base, const char *msg,
- Evas_Object_Event_Cb _close_cb, Evas_Smart_Cb _remove_cb,
- Evas_Smart_Cb _cancel_cb, void *dt)
-{
- Evas_Object *popup, *yesbtn, *nobtn, *lbl;
-
- if (!base || !_remove_cb || !_cancel_cb || !dt) {
- _ERR("Invalid argument.");
- return NULL;
- }
-
- popup = elm_popup_add(base);
- if (!popup) {
- _ERR("elm_popup_add failed.");
- return NULL;
- }
-
- elm_object_style_set(popup, MUSIC_STYLE_REMOVE_POPUP);
- elm_object_part_text_set(popup, MUSIC_PART_RPOPUP_TITLE,
- _(MUSIC_TEXT_REMOVE));
- elm_popup_orient_set(popup, ELM_POPUP_ORIENT_CENTER);
- evas_object_event_callback_add(popup, EVAS_CALLBACK_KEY_DOWN,
- _close_cb, dt);
- evas_object_show(popup);
-
- lbl = elm_label_add(popup);
- if (!lbl)
- goto err;
-
- elm_object_style_set(lbl, MUSIC_STYLE_REMOVE_LABEL);
- elm_object_text_set(lbl, _(msg));
- elm_object_content_set(popup, lbl);
-
- yesbtn = elm_button_add(popup);
- if (!yesbtn)
- goto err;
-
- elm_object_text_set(yesbtn, _(MUSIC_TEXT_REMOVE));
- elm_object_part_content_set(popup, MUSIC_PART_RPOPUP_BTN1, yesbtn);
- evas_object_smart_callback_add(yesbtn, MUSIC_SIGNAL_CLICKED,
- _remove_cb, dt);
-
- nobtn = elm_button_add(popup);
- if (!nobtn)
- goto err;
-
- elm_object_text_set(nobtn, _(MUSIC_TEXT_CANCEL));
- elm_object_part_content_set(popup, MUSIC_PART_RPOPUP_BTN2, nobtn);
- evas_object_smart_callback_add(nobtn, MUSIC_SIGNAL_CLICKED,
- _cancel_cb, dt);
- elm_object_focus_set(nobtn, EINA_TRUE);
-
- return popup;
-
-err:
- _ERR("Add Evas_Object failed.");
- evas_object_del(popup);
-
- return NULL;
-}
-void _update_playback_view(enum EAddType type,
+void CCommonUI::UpdatePlaybackView(EAddType type,
Evas_Object *layout, Elm_Object_Item *focused_item)
{
Evas_Object *obj;
}
if (type == ADD_TYPE_NEXT)
- _create_message_box(layout, MUSIC_TEXT_NEXT_MSG);
+ CreateMsgBox(layout, MUSIC_TEXT_NEXT_MSG);
else
- _create_message_box(layout, MUSIC_TEXT_LAST_MSG);
+ CreateMsgBox(layout, MUSIC_TEXT_LAST_MSG);
}
case CONTEXT_VIEW_BUTTON_ADDTO:
m->ctxpopup = (CPlayListCtxPopup *)m_CreatePlaylistPopup();
if (!m->ctxpopup)
- _create_message_box(m->base, MUSIC_TEXT_NOLIST_MSG);
+ CCommonUI::CreateMsgBox(m->base, MUSIC_TEXT_NOLIST_MSG);
break;
case CONTEXT_VIEW_BUTTON_DEL:
return false;
}
- base = _add_base(win, MUSIC_CONTEXT_VIEW);
+ base = CCommonUI::AddBase(win, MUSIC_CONTEXT_VIEW);
if (!base) {
_ERR(" add base failed ");
delete m;
if (!m->mhandle->MediaAddsongsPlaylist(lid, list))
_ERR(" Adding songs to playlist failed ");
else
- _create_message_box(m->base, MUSIC_TEXT_ADDTO_MSG);
+ CCommonUI::CreateMsgBox(m->base, MUSIC_TEXT_ADDTO_MSG);
return;
}
m->mhandle->SetCurrentSong(sinfo->Id());
}
- _update_playback_view((EAddType)type, Layout(), m->focused_item);
+ CCommonUI::UpdatePlaybackView((EAddType)type, Layout(), m->focused_item);
}
void CFolderLayout::sm_CbCtxtClose(void *dt)
m->mhandle->SetCurrentSong(id);
}
- _update_playback_view((EAddType)mode, Layout(), NULL);
+ CCommonUI::UpdatePlaybackView((EAddType)mode, Layout(), NULL);
}
return false;
}
- layout = _add_base(base, MUSIC_FOLDER_LAYOUT);
+ layout = CCommonUI::AddBase(base, MUSIC_FOLDER_LAYOUT);
if (!layout) {
_ERR(" get layout failed ");
delete m;
}
elm_slider_value_set(m->eoSlider, value);
- timestr = _get_timestr_from_milseconds(value);
+ timestr = CCommonUI::TimeStrFromMilSeconds(value);
if (timestr) {
elm_object_part_text_set(m->eoBase, MUSIC_PART_PROGRESSTIME,
timestr);
sm_CbUpdateSlider, m);
elm_slider_min_max_set(m->eoSlider, 0, duration);
- timestr = _get_timestr_from_milseconds(duration);
+ timestr = CCommonUI::TimeStrFromMilSeconds(duration);
if (timestr) {
elm_object_part_text_set(m->eoBase,
MUSIC_PART_FULLTIME, timestr);
m->hMusicController->SetPosition(value);
elm_slider_value_set(m->eoSlider, value);
- timestr = _get_timestr_from_milseconds(value);
+ timestr = CCommonUI::TimeStrFromMilSeconds(value);
if (timestr) {
elm_object_part_text_set(m->eoBase, MUSIC_PART_PROGRESSTIME,
timestr);
btninfo[BTN_DELETE].txt = MUSIC_TEXT_DELETE;
btninfo[BTN_DELETE].type = EO_DELETE;
- box = _add_box(m->eoBase);
+ box = CCommonUI::AddBox(m->eoBase);
if (!box)
return;
sinfo->Album());
else if (!strcmp(part, "elm.text3")) {
duration = sinfo->Duration();
- timestr = _get_timestr_from_milseconds(duration);
+ timestr = CCommonUI::TimeStrFromMilSeconds(duration);
if (timestr) {
snprintf(buf, sizeof(buf), "%s", timestr);
free(timestr);
_CHECK(m->mgr = CViewMgr::GetInstance())
_CHECK(m->eoWin = m->mgr->Window())
_CHECK(m->hMusicController = CMusicController::GetInstance())
- _CHECK(m->eoBase = _add_base(m->eoWin, MUSIC_PLAYBACK_VIEW))
+ _CHECK(m->eoBase = CCommonUI::AddBase(m->eoWin, MUSIC_PLAYBACK_VIEW))
_CHECK(CBaseView::Create(data))
_WHEN_SUCCESS{}
_CHECK_FAIL{ CBaseView::Destroy(); }
value = elm_slider_value_get(obj);
m->hMusicController->SetPosition(value);
- timestr = _get_timestr_from_milseconds(value);
+ timestr = CCommonUI::TimeStrFromMilSeconds(value);
if (timestr) {
elm_object_part_text_set(m->eoBase, MUSIC_PART_PROGRESSTIME,
timestr);
t.epopup->Destroy();
if (CMusicController::GetInstance()->MediaExistPlaylist(str)) {
- _create_message_box(Layout(), MUSIC_TEXT_INUSE_MSG);
+ CCommonUI::CreateMsgBox(Layout(), MUSIC_TEXT_INUSE_MSG);
elm_object_item_focus_set(t.focused_item, EINA_TRUE);
free(str);
return;
else if (type == ACTION_TYPE_REMOVESONG) {
if (catinfo->SongCount() == 0) {
elm_object_item_focus_set(t.focused_item, EINA_TRUE);
- _create_message_box(Layout(), MUSIC_TEXT_NO_SONGS);
+ CCommonUI::CreateMsgBox(Layout(), MUSIC_TEXT_NO_SONGS);
return;
}
t.depth = E_DEPTH_SELECT_LIST;
snprintf(buf, sizeof(buf), "%s", sinfo->Album());
else if (!strcmp(part, "elm.text3")) {
duration = sinfo->Duration();
- timestr = _get_timestr_from_milseconds(duration);
+ timestr = CCommonUI::TimeStrFromMilSeconds(duration);
if (timestr) {
snprintf(buf, sizeof(buf), "%s", timestr);
free(timestr);
if (!m->mhandle->MediaAddsongsPlaylist(lid, list))
_ERR(" Adding songs to playlist failed ");
else
- _create_message_box(m->base, MUSIC_TEXT_ADDTO_MSG);
+ CCommonUI::CreateMsgBox(m->base, MUSIC_TEXT_ADDTO_MSG);
return;
}
m->mhandle->SetCurrentSong(((CSongInfo *)m->ctxtinfo->context)->Id());
}
- _update_playback_view((EAddType)type, Layout(), m->focused_item);
+ CCommonUI::UpdatePlaybackView((EAddType)type, Layout(), m->focused_item);
}
return false;
}
- layout = _add_base(base, MUSIC_SONG_LAYOUT);
+ layout = CCommonUI::AddBase(base, MUSIC_SONG_LAYOUT);
if (!layout) {
_ERR(" get layout failed ");
delete m;