Evas_Object *genlist;
+ Setting_GenGroupItem_Data *lte_wcdma_gsm;
+ Setting_GenGroupItem_Data *wcdma_gsm;
+ Setting_GenGroupItem_Data *wcdma_only;
+ Setting_GenGroupItem_Data *gsm_only;
+
} s_info = {0,};
setting_view setting_view_network_mode = {
Elm_Object_Item *subitem = (Elm_Object_Item *)event_info;
elm_genlist_item_selected_set(subitem, 0);
- Setting_GenGroupItem_Data *data_subItem = elm_object_item_data_get(
- subitem);
+ Setting_GenGroupItem_Data *data_subItem = elm_object_item_data_get(subitem);
SETTING_TRACE("ad->net_mode=%d", ad->net_mode);
- SETTING_TRACE("elm_radio_value_get(ad->data_net_mode->rgd):%d",
- elm_radio_value_get(ad->data_net_mode->rgd));
+ SETTING_TRACE("elm_radio_value_get(ad->data_net_mode->rgd):%d", elm_radio_value_get(ad->data_net_mode->rgd));
SETTING_TRACE("data_subItem->chk_status=%d", data_subItem->chk_status);
if (ad->net_mode == data_subItem->chk_status) {
ad->timer = NULL;
}
- SETTING_TRACE("tel_set_network_mode(data_subItem->chk_status=%d) run",
- data_subItem->chk_status);
- int tapi_ret = tel_set_network_mode(ad->handle,
- data_subItem->chk_status, setting_tapi_set_band_cb, ad);
+ SETTING_TRACE("tel_set_network_mode(data_subItem->chk_status=%d) run", data_subItem->chk_status);
+ int tapi_ret = tel_set_network_mode(ad->handle, data_subItem->chk_status, setting_tapi_set_band_cb, ad);
if (tapi_ret != TAPI_API_SUCCESS) {
- SETTING_TRACE_DEBUG(
- "%s*** [ERR] tel_set_network_mode. tapi_ret=%d ***%s",
- SETTING_FONT_RED, tapi_ret, SETTING_FONT_BLACK);
- setting_create_popup(ad, ad->md.window, NULL,
- Invok_API_Failed_Desc, NULL, POPUP_INTERVAL,
- FALSE, FALSE, 0);
+ SETTING_TRACE_DEBUG("%s*** [ERR] tel_set_network_mode. tapi_ret=%d ***%s", SETTING_FONT_RED, tapi_ret, SETTING_FONT_BLACK);
+ setting_create_popup(ad, ad->md.window, NULL, Invok_API_Failed_Desc, NULL, POPUP_INTERVAL, FALSE, FALSE, 0);
/*rollback */
int err = 0;
- int ret = setting_get_int_slp_key(
- ad->data_net_mode->int_slp_setting_binded,
- &(ad->net_mode), &err);
+ int ret = setting_get_int_slp_key(ad->data_net_mode->int_slp_setting_binded, &(ad->net_mode), &err);
if (ret == SETTING_RETURN_FAIL)
SETTING_TRACE_ERROR("failed to get vconf");
} else {
retm_if(data == NULL, "Data parameter is NULL");
}
-static void _fill_list(void)
+static inline Setting_GenGroupItem_Data *_add_mode(Evas_Object *rdg, char *pszStrId, int status)
+{
+ SETTING_TRACE_BEGIN;
+
+ Setting_GenGroupItem_Data *ret = setting_create_Gendial_field_1radio(
+ s_info.genlist, &itc_multiline_1text_1icon,
+ __network_sub_list_sel_cb, s_info.ad,
+ SWALLOW_Type_1RADIO_RIGHT, rdg,
+ status,
+ _(pszStrId), __network_default_rd_change);
+
+ SETTING_TRACE_END;
+ return ret;
+}
+
+static inline void _set_mode(Setting_GenGroupItem_Data *item_data)
+{
+ SETTING_TRACE_BEGIN;
+ if (!item_data) {
+ dlog_print(DLOG_ERROR, LOG_TAG, "[%s:%d] item_data == NULL", __FILE__, __LINE__);
+ }
+
+ elm_radio_value_set(s_info.ad->data_net_mode->rgd, item_data->chk_status);
+ SETTING_TRACE("item_data->chk_status=%d checked", item_data->chk_status);
+
+ SETTING_TRACE_END;
+}
+
+static inline Evas_Object *_prepare_radio_group(int value)
{
SETTING_TRACE_BEGIN;
+ Evas_Object *rdg = elm_radio_add(s_info.genlist);
+
+ SETTING_TRACE("value: %d", value);
+ elm_radio_value_set(rdg, value);
- SettingNetwork *ad = s_info.ad;
+ SETTING_TRACE_END;
+ return rdg;
+}
+static void _fill_list(void)
+{
+ SETTING_TRACE_BEGIN;
+ int value = 0;
+ int err = 0;
cm_call_status_e call_status = CM_CALL_STATUS_IDLE;
cm_client_h cm_handle = NULL;
cm_init(&cm_handle);
cm_get_call_status(cm_handle, &call_status);
cm_deinit(cm_handle);
if (CM_CALL_STATUS_IDLE != call_status) {
- setting_create_popup(ad, ad->md.window, NULL, _("IDS_CST_POP_OPERATION_NOT_ALLOWED_DURING_CALLS"), NULL, 0, false, false, 0);
+ setting_create_popup(s_info.ad, s_info.ad->md.window, NULL, _("IDS_CST_POP_OPERATION_NOT_ALLOWED_DURING_CALLS"), NULL, 0, false, false, 0);
return;
}
- int value = 0;
- int err = 0;
- Evas_Object *rdg;
-
- rdg = elm_radio_add(s_info.genlist);
- elm_radio_value_set(rdg, -1);
-
- char *pszStrId = NULL;
+ setting_get_int_slp_key(INT_SLP_SETTING_NETWORK_MODE, &value, &err);
+ Evas_Object *rdg = _prepare_radio_group(value);
/* LTE/WCDMA/GSM */
- if (is_lte_on_feature(ad)) {
- pszStrId = _("IDS_ST_OPT_4G_3G_2G_HAUTO_CONNECT");
-
- ad->lte_wcdma_gsm = setting_create_Gendial_field_1radio(
- s_info.genlist, &itc_multiline_1text_1icon,
- __network_sub_list_sel_cb, ad,
- SWALLOW_Type_1RADIO_RIGHT, rdg,
- TAPI_NETWORK_MODE_LTE | TAPI_NETWORK_MODE_WCDMA | TAPI_NETWORK_MODE_GSM/* chk_status */,
- pszStrId, __network_default_rd_change);
+ if (is_lte_on_feature(s_info.ad)) {
+ s_info.lte_wcdma_gsm = _add_mode(rdg, "IDS_ST_OPT_4G_3G_2G_HAUTO_CONNECT", TAPI_NETWORK_MODE_LTE | TAPI_NETWORK_MODE_WCDMA | TAPI_NETWORK_MODE_GSM);
}
- /* WCDMA/GSM */
- pszStrId = _("IDS_ST_OPT_3G_2G_HAUTO_CONNECT");
-
- ad->wcdma_gsm = setting_create_Gendial_field_1radio(s_info.genlist,
- &itc_multiline_1text_1icon, __network_sub_list_sel_cb,
- ad, SWALLOW_Type_1RADIO_RIGHT, rdg,
- /* chk_status */
- TAPI_NETWORK_MODE_WCDMA | TAPI_NETWORK_MODE_GSM,
- pszStrId, __network_default_rd_change);
-
- /* WCDMA */
- pszStrId = _("IDS_ST_BODY_3G_ONLY");
-
- ad->wcdma_only = setting_create_Gendial_field_1radio(s_info.genlist,
- &itc_multiline_1text_1icon, __network_sub_list_sel_cb,
- ad, SWALLOW_Type_1RADIO_RIGHT, rdg,
- TAPI_NETWORK_MODE_WCDMA, /* chk_status */
- pszStrId, __network_default_rd_change);
-
- /* GSM */
- pszStrId = _("IDS_ST_OPT_2G_ONLY");
-
- ad->gsm_only = setting_create_Gendial_field_1radio(s_info.genlist,
- &itc_multiline_1text_1icon, __network_sub_list_sel_cb,
- ad, SWALLOW_Type_1RADIO_RIGHT, rdg,
- TAPI_NETWORK_MODE_GSM, /* chk_status */
- pszStrId, __network_default_rd_change);
-
- setting_get_int_slp_key(INT_SLP_SETTING_NETWORK_MODE, &value, &err);
- SETTING_TRACE("value: %d, err: %d", value, err);
- elm_radio_value_set(rdg, value);
+ s_info.wcdma_gsm = _add_mode(rdg, "IDS_ST_OPT_3G_2G_HAUTO_CONNECT", TAPI_NETWORK_MODE_WCDMA | TAPI_NETWORK_MODE_GSM);
+ s_info.wcdma_only = _add_mode(rdg, "IDS_ST_BODY_3G_ONLY", TAPI_NETWORK_MODE_WCDMA);
+ s_info.gsm_only = _add_mode(rdg, "IDS_ST_OPT_2G_ONLY", TAPI_NETWORK_MODE_GSM);
/* Selection */
- if (is_lte_on_feature(ad)) {
- if ((value & TAPI_NETWORK_MODE_LTE)
- && (value & TAPI_NETWORK_MODE_WCDMA)
- && (value & TAPI_NETWORK_MODE_GSM)) {
- SETTING_TRACE("TAPI_NETWORK_MODE_LTE|TAPI_NETWORK_MODE_WCDMA|TAPI_NETWORK_MODE_GSM selected");
-
- if (ad->lte_wcdma_gsm) {
- elm_radio_value_set(
- ad->data_net_mode->rgd,
- ad->lte_wcdma_gsm->chk_status);
- SETTING_TRACE("ad->lte_wcdma_gsm->chk_status=%d checked",
- ad->lte_wcdma_gsm->chk_status);
- return;
- } else
- SETTING_TRACE_ERROR(
- "ad->lte_wcdma_gsm is NULL");
- }
- }
-
- if ((value & TAPI_NETWORK_MODE_WCDMA)
- && (value & TAPI_NETWORK_MODE_GSM)) {
+ if (is_lte_on_feature(s_info.ad) && (value & TAPI_NETWORK_MODE_LTE) && (value & TAPI_NETWORK_MODE_WCDMA) && (value & TAPI_NETWORK_MODE_GSM)) {
+ SETTING_TRACE("TAPI_NETWORK_MODE_LTE|TAPI_NETWORK_MODE_WCDMA|TAPI_NETWORK_MODE_GSM selected");
+ _set_mode(s_info.lte_wcdma_gsm);
+ } else if ((value & TAPI_NETWORK_MODE_WCDMA) && (value & TAPI_NETWORK_MODE_GSM)) {
SETTING_TRACE("TAPI_NETWORK_MODE_WCDMA|TAPI_NETWORK_MODE_GSM selected");
-
- if (ad->wcdma_gsm) {
- elm_radio_value_set(ad->data_net_mode->rgd,
- ad->wcdma_gsm->chk_status);
- SETTING_TRACE("ad->wcdma_gsm->chk_status=%d checked",
- ad->wcdma_gsm->chk_status);
- } else
- SETTING_TRACE_ERROR("ad->wcdma_gsm is NULL");
+ _set_mode(s_info.wcdma_gsm);
} else if (value & TAPI_NETWORK_MODE_WCDMA) {
SETTING_TRACE("TAPI_NETWORK_MODE_WCDMA selected");
-
- if (ad->wcdma_only) {
- elm_radio_value_set(ad->data_net_mode->rgd,
- ad->wcdma_only->chk_status);
- SETTING_TRACE("ad->wcdma_only->chk_status=%d checked",
- ad->wcdma_only->chk_status);
- } else
- SETTING_TRACE_ERROR("ad->wcdma_only is NULL");
+ _set_mode(s_info.wcdma_only);
} else if (value & TAPI_NETWORK_MODE_GSM) {
SETTING_TRACE("TAPI_NETWORK_MODE_GSM selected");
-
- if (ad->gsm_only) {
- elm_radio_value_set(ad->data_net_mode->rgd,
- ad->gsm_only->chk_status);
- SETTING_TRACE("ad->gsm_only->chk_status=%d checked",
- ad->gsm_only->chk_status);
- } else
- SETTING_TRACE_ERROR("ad->gsm_only is NULL");
- } else
+ _set_mode(s_info.gsm_only);
+ } else {
SETTING_TRACE_ERROR("TAPI_NETWORK(%d) unknown", value);
+ }
SETTING_TRACE("after value set -- value: %d, err: %d", value, err);
+ SETTING_TRACE_END;
}
static int _view_create(void *cb)
_("IDS_ST_BUTTON_BACK"), __naviframe_item_pop_cb, NULL,
&s_info.genlist, s_info.ad->md.naviframe);
-
_fill_list();
setting_view_network_mode.is_create = TRUE;