#include "vcui-application.h"
#include "vcui-view-dialing.h"
#include "vcui-view-elements.h"
+#include "vcui-view-common.h"
+#include "vcui-app-window.h"
+#include "vcui-view-keypad.h"
+
+#define VIEW_DIALING_LAYOUT_ID "DIALVIEW"
+typedef struct {
+ Evas_Object *contents;
+ Evas_Object *caller_info;
+ Evas_Object *btn_ly;
+ Evas_Object *ic;
+} vcui_view_dialing_priv_t;
static int __vcui_view_dialing_oncreate(voice_call_view_data_t *view_data, int param1, void *param2, void *param3);
static int __vcui_view_dialing_onupdate(voice_call_view_data_t *view_data, void *update_data1, void *update_data2);
}
vcui_view_dialing_priv_t *priv = (vcui_view_dialing_priv_t *)vd->priv;
+ vcui_app_call_data_t *ad = _vcui_get_app_data();
int valid = 0;
- valid = _vcui_check_valid_eo(priv->contents, "DIALVIEW");
+ valid = _vcui_check_valid_eo(priv->contents, VIEW_DIALING_LAYOUT_ID);
if (valid == -1) {
CALL_UI_DEBUG("[========== DIALVIEW : Invalid Evas Object, priv->contents : %p ==========]", priv->contents);
} else {
char data[VC_DATA_LENGTH_MAX] = { 0, };
- edje_object_part_text_set(_EDJ(priv->contents), "txt_mo_status", _(_vcui_get_endcause_string(end_type, data)));
+ edje_object_part_text_set(_EDJ(priv->caller_info), "txt_status", _(_vcui_get_endcause_string(end_type, data)));
+ ad->quickpanel_text = data;
}
/* ============ Check valid Evas Object ============= */
}
-void _vcui_view_dialing_draw_txt_connecting(voice_call_view_data_t *vd)
-{
- /* ============ Check valid Evas Object ============= */
- if (vd == NULL) {
- CALL_UI_DEBUG("View Data is NULL");
- return;
- }
-
- vcui_view_dialing_priv_t *priv = (vcui_view_dialing_priv_t *)vd->priv;
-
- int valid = 0;
- valid = _vcui_check_valid_eo(priv->contents, "DIALVIEW");
- if (valid == -1) {
- CALL_UI_DEBUG("[========== DIALVIEW : Invalid Evas Object, priv->contents : %p ==========]", priv->contents);
- } else {
- edje_object_part_text_set(_EDJ(priv->contents), "txt_mo_status", _("IDS_CALL_POP_CONNECTING"));
- }
- /* ============ Check valid Evas Object ============= */
-}
-
-void _vcui_view_dialing_draw_txt_dialing(voice_call_view_data_t *vd)
-{
- /* ============ Check valid Evas Object ============= */
- if (vd == NULL) {
- CALL_UI_DEBUG("View Data is NULL");
- return;
- }
-
- vcui_view_dialing_priv_t *priv = (vcui_view_dialing_priv_t *)vd->priv;
-
- int valid = 0;
- valid = _vcui_check_valid_eo(priv->contents, "DIALVIEW");
- if (valid == -1) {
- CALL_UI_DEBUG("[========== DIALVIEW : Invalid Evas Object, priv->contents : %p ==========]", priv->contents);
- } else {
- edje_object_part_text_set(_EDJ(priv->contents), "txt_mo_status", _("IDS_CALL_POP_DIALLING"));
- }
- /* ============ Check valid Evas Object ============= */
-}
-
-static void __vcui_view_dialing_update_screen(Evas_Object *eo, void *data)
-{
- CALL_UI_DEBUG("..");
-
- voice_call_view_data_t *vd = (voice_call_view_data_t *)data;
- vcui_view_dialing_priv_t *priv = (vcui_view_dialing_priv_t *)vd->priv;
-
- call_data_t *now_call_data = _vcui_doc_get_recent_mo();
-
- /* ============ Check valid Evas Object ============= */
- int valid = 0;
- valid = _vcui_check_valid_eo(priv->contents, "DIALVIEW");
- if (valid == -1) {
- CALL_UI_DEBUG("[========== DIALVIEW : Invalid Evas Object, priv->contents : %p ==========]", priv->contents);
- return;
- }
- /* ============ Check valid Evas Object ============= */
-
- if (now_call_data == NULL) {
- CALL_UI_DEBUG("Now Data is NULL");
- return;
- }
-
- /* call image */
- if (strcmp((char *)priv->now_data->call_file_path, NOIMG_ICON) == 0) {
- _vcui_show_wallpaper_image(priv->contents);
- } else {
- CALL_UI_DEBUG("there is caller image.");
-
- _vcui_show_wallpaper_image(priv->contents);
- priv->ic = _vcui_show_contact_image(priv->contents, vd->app_data->win_main, priv->now_data->call_file_path);
- }
-
- /* call name (if nothing, call number) */
- if (strlen((char *)priv->now_data->call_display) == 0) {
- edje_object_part_text_set(_EDJ(eo), "txt_call_name", (char *)priv->now_data->call_num);
- } else {
- edje_object_part_text_set(_EDJ(eo), "txt_call_name", (char *)priv->now_data->call_display);
- edje_object_part_text_set(_EDJ(eo), "txt_contact_phone_type", (char *)priv->now_data->call_num);
- }
-
- _vcui_create_top_left_button_disabled(vd);
- _vcui_create_top_middle_button_disabled(vd);
- _vcui_create_top_right_button_disabled(vd);
- _vcui_create_bottom_left_button(vd);
- _vcui_create_bottom_middle_button_disabled(vd);
- _vcui_create_bottom_right_button_disabled(vd);
-
- _vcui_create_button_bigend(vd);
-
- evas_object_show(eo);
-}
-
static void __vcui_view_dialing_draw_screen(Evas_Object *eo, void *data)
{
CALL_UI_DEBUG("..");
voice_call_view_data_t *vd = (voice_call_view_data_t *)data;
vcui_view_dialing_priv_t *priv = (vcui_view_dialing_priv_t *)vd->priv;
- call_data_t *now_call_data = _vcui_doc_get_recent_mo();
+ call_data_t *now_call_data = _vcui_doc_get_recent_mo_call_data();
+ Eina_Bool bshift_alert = EINA_FALSE;
/* ============ Check valid Evas Object ============= */
int valid = 0;
- valid = _vcui_check_valid_eo(priv->contents, "DIALVIEW");
+ valid = _vcui_check_valid_eo(priv->contents, VIEW_DIALING_LAYOUT_ID);
if (valid == -1) {
CALL_UI_DEBUG("[========== DIALVIEW : Invalid Evas Object, priv->contents : %p ==========]", priv->contents);
return;
return;
}
+ char *file_path = _vcui_doc_get_caller_id_file_path(now_call_data);
+ CALL_UI_DEBUG("file_path: %s", file_path);
+
/* call image */
- if (strcmp((char *)priv->now_data->call_file_path, NOIMG_ICON) == 0) {
- _vcui_show_wallpaper_image(priv->contents);
+ _vcui_delete_contact_image(priv->contents);
+ if (strcmp(file_path, NOIMG_ICON) == 0) {
+ _vcui_view_common_show_noid_image(priv->contents);
+ bshift_alert = EINA_TRUE;
} else {
- CALL_UI_DEBUG("there is caller image.");
-
- _vcui_show_wallpaper_image(priv->contents);
- priv->ic = _vcui_show_contact_image(priv->contents, vd->app_data->win_main, priv->now_data->call_file_path);
+ {
+ _vcui_show_wallpaper_image(priv->contents);
+ priv->ic = _vcui_show_contact_image(priv->contents, vd->app_data->win_main, file_path);
+ }
}
+ _vcui_show_call_bg_img(priv->contents);
+
+ char *call_number = _vcui_doc_get_call_number(now_call_data);
+ char *call_name = _vcui_doc_get_call_display_name(now_call_data);
/* call name (if nothing, call number) */
- if (strlen((char *)priv->now_data->call_display) == 0) {
- edje_object_part_text_set(_EDJ(eo), "txt_call_name", (char *)priv->now_data->call_num);
+ if (strlen(call_name) == 0) {
+ _vcui_show_caller_info_name(vd, call_number, EINA_FALSE);
} else {
- edje_object_part_text_set(_EDJ(eo), "txt_call_name", (char *)priv->now_data->call_display);
- edje_object_part_text_set(_EDJ(eo), "txt_contact_phone_type", (char *)priv->now_data->call_num);
+ _vcui_show_caller_info_name(vd, call_name, EINA_FALSE);
+ _vcui_show_caller_info_number(vd, call_number, EINA_FALSE);
}
- edje_object_part_text_set(_EDJ(priv->contents), "txt_mo_status", _("IDS_CALL_POP_DIALLING"));
+ _vcui_show_caller_info_icon(vd, EINA_FALSE);
+ _vcui_show_caller_info_status(vd, _("IDS_CALL_POP_CALLING"), EINA_FALSE);
_vcui_create_top_left_button_disabled(vd);
- _vcui_create_top_middle_button_disabled(vd);
- _vcui_create_top_right_button_disabled(vd);
+ _vcui_create_top_middle_button(vd);
+ _vcui_create_top_right_button(vd);
_vcui_create_bottom_left_button(vd);
_vcui_create_bottom_middle_button_disabled(vd);
- _vcui_create_bottom_right_button_disabled(vd);
- _vcui_create_button_bigend(vd);
+ _vcui_create_bottom_right_button(vd);
+
+ _vcui_elements_check_keypad_n_hide(vd);
evas_object_show(eo);
}
-static Evas_Object *__vcui_view_dialing_create_contents(void *data)
+static Evas_Object *__vcui_view_dialing_create_contents(void *data, char *grpname)
{
CALL_UI_KPI("__vcui_view_dialing_create_contents start");
voice_call_view_data_t *vd = (voice_call_view_data_t *)data;
Evas_Object *eo = NULL;
/* load edje */
- eo = _vcui_load_edj(vd->app_data->win_main, EDJ_NAME, GRP_MOVIEW);
+ eo = _vcui_load_edj(vd->app_data->win_main, EDJ_NAME, grpname);
if (eo == NULL)
return NULL;
CALL_UI_KPI("__vcui_view_dialing_create_contents done");
vcui_app_call_data_t *ad = view_data->app_data;
vcui_view_dialing_priv_t *priv = view_data->priv;
+ Evas_Object *sep_ly = NULL;
if (!view_data->layout) {
return VC_ERROR;
}
/* Create Contents */
- priv->contents = __vcui_view_dialing_create_contents(view_data);
+ priv->contents = __vcui_view_dialing_create_contents(view_data, GRP_MOVIEW);
elm_object_part_content_set(view_data->layout, "elm.swallow.content", priv->contents);
- evas_object_name_set(priv->contents, "DIALVIEW");
+ priv->caller_info = __vcui_view_dialing_create_contents(view_data, GRP_CALLER_INFO);
+ elm_object_part_content_set(priv->contents, "caller_info", priv->caller_info);
+
+ sep_ly = __vcui_view_dialing_create_contents(view_data, GRP_SEPARATOR_LAYOUT);
+ elm_object_part_content_set(priv->contents, "btn_bg", sep_ly);
+
+ priv->btn_ly = __vcui_view_dialing_create_contents(view_data, GRP_BUTTON_LAYOUT);
+ elm_object_part_content_set(priv->contents, "btn_region", priv->btn_ly);
+
+ evas_object_name_set(priv->contents, VIEW_DIALING_LAYOUT_ID);
CALL_UI_DEBUG("[========== DIALVIEW: priv->contents Addr : [%p] ==========]", priv->contents);
}
CALL_UI_DEBUG("dialling view update");
vcui_view_dialing_priv_t *priv = view_data->priv;
- __vcui_view_dialing_update_screen(priv->contents, view_data);
+ __vcui_view_dialing_draw_screen(priv->contents, view_data);
return VC_NO_ERROR;
}
int valid = 0;
vcui_view_dialing_priv_t *priv = (vcui_view_dialing_priv_t *)view_data->priv;
- valid = _vcui_check_valid_eo(priv->contents, "DIALVIEW");
+ valid = _vcui_check_valid_eo(priv->contents, VIEW_DIALING_LAYOUT_ID);
if (valid == -1) {
CALL_UI_DEBUG("[========== DIALVIEW : Invalid Evas Object, priv->contents : %p ==========]", priv->contents);
CALL_UI_DEBUG("dialling view show");
vcui_view_dialing_priv_t *priv = view_data->priv;
- priv->now_data = _vcui_doc_get_recent_mo();
- if (priv->now_data == NULL) {
- CALL_UI_DEBUG("call data is null");
- return VC_ERROR;
- }
__vcui_view_dialing_draw_screen(priv->contents, view_data);
vcui_view_dialing_priv_t *priv = (vcui_view_dialing_priv_t *)vd->priv;
if (priv != NULL) {
+ if (priv->btn_ly) {
+ evas_object_del(priv->btn_ly);
+ priv->btn_ly = NULL;
+ }
+
+ if (priv->caller_info) {
+ evas_object_del(priv->caller_info);
+ priv->caller_info = NULL;
+ }
+
+ /*Delete keypad layout*/
+ _vcui_keypad_delete_layout(priv->contents);
+
if (priv->contents) {
evas_object_del(priv->contents);
priv->contents = NULL;
_vcui_cache_flush();
return VC_NO_ERROR;
}
+
+int _vc_ui_view_dialing_check_valid_eo(voice_call_view_data_t *vd)
+{
+ CALL_UI_DEBUG("..");
+
+ vcui_view_dialing_priv_t *priv = NULL;
+ int valid = -1;
+
+ VCUI_RETURN_VALUE_IF_FAIL(vd , -1);
+ priv = (vcui_view_dialing_priv_t *) vd->priv;
+
+ valid = _vcui_check_valid_eo(priv->contents, VIEW_DIALING_LAYOUT_ID);
+
+ return valid;
+}
+
+Evas_Object *_vc_ui_view_dialing_get_layout(voice_call_view_data_t *vd)
+{
+ CALL_UI_DEBUG("..");
+ vcui_view_dialing_priv_t *priv = NULL;
+
+ VCUI_RETURN_NULL_IF_FAIL(vd);
+ priv = (vcui_view_dialing_priv_t *) vd->priv;
+
+ VCUI_RETURN_NULL_IF_FAIL(priv);
+ return priv->contents;
+}
+
+Evas_Object *_vc_ui_view_dialing_get_button_layout(voice_call_view_data_t *vd)
+{
+ CALL_UI_DEBUG("..");
+ vcui_view_dialing_priv_t *priv = NULL;
+
+ VCUI_RETURN_NULL_IF_FAIL(vd);
+ priv = (vcui_view_dialing_priv_t *) vd->priv;
+
+ VCUI_RETURN_NULL_IF_FAIL(priv);
+ return priv->btn_ly;
+}
+
+Evas_Object *_vc_ui_view_dialing_get_caller_info(voice_call_view_data_t *vd)
+{
+ CALL_UI_DEBUG("..");
+ vcui_view_dialing_priv_t *priv = NULL;
+
+ VCUI_RETURN_NULL_IF_FAIL(vd);
+ priv = (vcui_view_dialing_priv_t *) vd->priv;
+
+ VCUI_RETURN_NULL_IF_FAIL(priv);
+ return priv->caller_info;
+}
+