Implement the 'Create' connection function
authorKairong Yin <kairong78.yin@samsung.com>
Wed, 26 Sep 2012 01:11:47 +0000 (18:11 -0700)
committerMyoungJune Park <mj2004.park@samsung.com>
Fri, 5 Oct 2012 02:13:37 +0000 (11:13 +0900)
Change-Id: I47d3ae130aee79a77fba251f2c67503d926ee202

setting-common/include/setting-common-resource.h
setting-common/src/setting-common-resource.c
setting-network/include/setting-network-con.h
setting-network/include/setting-network-connection-create.h
setting-network/include/setting-network.h
setting-network/src/setting-network-con.c
setting-network/src/setting-network-connection-create.c
setting-network/src/setting-network-main.c

index 2d576b6..f29a7f9 100755 (executable)
@@ -293,6 +293,7 @@ extern const char *STR_SETTING_OPERATION_FAILED;
 
 /*  network*/
 extern const char *STR_SETTING_MMS_CONNECTIONS;
+extern const char *STR_SETTING_NEW_CONNECTIONS;
 extern const char *STR_SETTING_GSM_900_1800;
 extern const char *STR_SETTING_GSM_850_1900;
 extern const char *STR_SETTING_UMTS;
index fe46a51..c270cff 100755 (executable)
@@ -4,7 +4,7 @@
  * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd.
  *
  * Contact: MyoungJune Park <mj2004.park@samsung.com>
- * 
+ *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
@@ -26,6 +26,8 @@ const char *STR_SETTING_OPERATION_FAILED = "IDS_COM_BODY_OPERATION_FAILED";
 
 /* network*/
 const char *STR_SETTING_MMS_CONNECTIONS = "IDS_ST_BODY_MMS_CONNECTIONS";
+const char *STR_SETTING_NEW_CONNECTIONS = "Create connections";
+
 const char *STR_SETTING_GSM_900_1800 = "GSM 900/1800";
 const char *STR_SETTING_GSM_850_1900 = "GSM 850/1900";
 const char *STR_SETTING_UMTS = "UMTS";
index 9417a5a..a489bb1 100755 (executable)
@@ -22,7 +22,7 @@
 #define __SETTING_NETWORK_CON_CREATE_H__
 
 #include <setting-network.h>
-static void setting_network_con_click_softkey_set_cb(void *data, Evas_Object *obj, void *event_info);
+static void setting_network_con_click_softkey_create_cb(void *data, Evas_Object *obj, void *event_info);
 static void setting_network_con_click_softkey_reset_cb(void *data, Evas_Object *obj, void *event_info);
 
 static void setting_network_con_click_softkey_cancel_cb(void *data, Evas_Object *obj, void *event_info);
index eb69726..2b75f06 100755 (executable)
@@ -46,8 +46,5 @@ static void setting_network_edit_connection_click_softkey_back_cb(void *data,
 static void setting_network_edit_connection_click_softkey_eidt_cb(void *data,
                                                      Evas_Object *obj,
                                                      void *event_info);
-static void setting_network_edit_connection_click_softkey_reset_cb(void *data,
-                                                     Evas_Object *obj,
-                                                     void *event_info);
 static void setting_network_connection_hide_input_pannel(void *data);
 #endif                         /* __SETTING_NETWORK_CONNECTION_CREATE_H__ */
index 4f68eb3..6af9ac8 100755 (executable)
@@ -169,7 +169,8 @@ struct _SettingNetworkUG {
        TelNetworkPlmnList_t plmn_info;
 
        int is_show_user;
-       net_service_type_t con_type;
+       //net_service_type_t con_type;
+       char *con_name;
        net_profile_info_t *prof_list;
        int prof_count;
        int prof_sel_idx;
index 4d0a4a1..3879e66 100755 (executable)
@@ -58,7 +58,7 @@ static int setting_network_con_create(void *cb)
                                     _("Create"),
                                     setting_network_con_click_softkey_cancel_cb,
                                     setting_network_con_click_softkey_reset_cb,
-                                    setting_network_con_click_softkey_set_cb,
+                                    setting_network_con_click_softkey_create_cb,
                                     ad, scroller, ad->navi_bar, &controlbar);
        Elm_Object_Item *item = NULL;
 #ifndef SUPPORT_CON_RESET
@@ -80,6 +80,7 @@ static int setting_network_con_create(void *cb)
                                         ad, SWALLOW_Type_INVALID, NULL, NULL,
                                         0, STR_SETTING_MMS_CONNECTIONS, NULL,
                                         NULL);
+
 #ifdef ENABLED_PREFERRED_NETWORKS
        setting_create_Gendial_field_def(scroller, &itc_1text,
                                         setting_network_con_item_Gendial_mouse_up_cb,
@@ -94,9 +95,48 @@ static int setting_network_con_create(void *cb)
                                         ad, SWALLOW_Type_INVALID, NULL, NULL,
                                         0, "2G/3G Connection", NULL, NULL);
 
-       /* add blank rectangle */
 #endif
+       if (NULL == ad->prof_list)
+       {
+               int err = net_get_profile_list(NET_DEVICE_CELLULAR, &(ad->prof_list), &(ad->prof_count));
+               if (err != NET_ERR_NONE) {
+                       SETTING_TRACE_DEBUG
+                           ("%s*** [ERR] Internet net_get_app_profile_id. err=%d ***%s",
+                            SETTING_FONT_RED, err, SETTING_FONT_BLACK);
+               }
+
+       }
+       if (ad->prof_list)
+       {
+               int ci = 0;
+               for(ci = 0;ci < ad->prof_count;ci++){
+                       SETTING_TRACE_DEBUG("profList[%d].ProfileName:%s", ci,ad->prof_list[ci].ProfileName);
+                       SETTING_TRACE_DEBUG("profList[%d].ProfileInfo.Pdp.ServiceType:%d", ci, ad->prof_list[ci].ProfileInfo.Pdp.ServiceType);
+                       SETTING_TRACE_DEBUG("profList[%d].ProfileInfo.Pdp.Apn:%s", ci, ad->prof_list[ci].ProfileInfo.Pdp.Apn);
+               }
+               for(ci = ad->prof_count -1;ci >= 0;ci--){ //revert the sequence of profiles
+
+                       if(NET_DEVICE_CELLULAR == ad->prof_list[ci].profile_type) {
+                               if (NET_SERVICE_INTERNET != ad->prof_list[ci].ProfileInfo.Pdp.ServiceType
+                                   && NET_SERVICE_MMS != ad->prof_list[ci].ProfileInfo.Pdp.ServiceType) //unknow, match with ad->con_name
+                               {
+                                       SETTING_TRACE("ad->prof_list[ci].ProfileInfo.Pdp.Apn:%s", ad->prof_list[ci].ProfileInfo.Pdp.Apn);
+                                       setting_create_Gendial_field_def(scroller, &itc_1text,
+                                                                        setting_network_con_item_Gendial_mouse_up_cb,
+                                                                        ad, SWALLOW_Type_INVALID, NULL, NULL,
+                                                                        0, ad->prof_list[ci].ProfileInfo.Pdp.Apn, NULL,
+                                                                        NULL);
+                               }
+                       }
+               }
+       }
+
 
+       /*  add separator */
+       item = elm_genlist_item_append(scroller, &itc_bottom_seperator,
+                                      NULL, NULL,
+                                      ELM_GENLIST_ITEM_NONE, NULL, NULL);
+       elm_genlist_item_select_mode_set(item, ELM_OBJECT_SELECT_MODE_DISPLAY_ONLY);
        setting_view_network_con.is_create = 1;
 
        return SETTING_RETURN_SUCCESS;
@@ -109,7 +149,7 @@ static int setting_network_con_destroy(void *cb)
        retv_if(cb == NULL, SETTING_GENERAL_ERR_NULL_DATA_PARAMETER);
 
        SettingNetworkUG *ad = (SettingNetworkUG *) cb;
-
+       FREE(ad->con_name);
        elm_naviframe_item_pop(ad->navi_bar);
        setting_view_network_con.is_create = 0;
 
@@ -118,6 +158,8 @@ static int setting_network_con_destroy(void *cb)
 
 static int setting_network_con_update(void *cb)
 {
+       setting_network_con_destroy(cb);
+       setting_network_con_create(cb);
        return SETTING_RETURN_SUCCESS;
 }
 
@@ -160,21 +202,6 @@ setting_network_con_item_Gendial_mouse_up_cb(void *data, Evas_Object *obj,
                    setting_view_change(&setting_view_network_main,
                                        &setting_view_network_select_network,
                                        ad);
-       } else if (!safeStrCmp
-               ("IDS_ST_BODY_INTERNET_CONNECTION", list_item->keyStr)) {
-
-               ad->con_type = NET_SERVICE_INTERNET;
-               ret =
-                   setting_view_change(&setting_view_network_main,
-                                       &setting_view_network_connection_create,
-                                       ad);
-       } else if (!safeStrCmp(STR_SETTING_MMS_CONNECTIONS, list_item->keyStr)) {
-               ad->con_type = NET_SERVICE_MMS;
-
-               ret =
-                   setting_view_change(&setting_view_network_main,
-                                       &setting_view_network_connection_create,
-                                       ad);
        }
 #ifdef ENABLED_PREFERRED_NETWORKS
        else if (!safeStrCmp("IDS_ST_BODY_PREFERRED_NETWORKS",
@@ -233,6 +260,12 @@ setting_network_con_item_Gendial_mouse_up_cb(void *data, Evas_Object *obj,
                                        &setting_view_network_3gcon, ad);
        }
 #endif
+       else {//connections..
+               ad->con_name = strdup(list_item->keyStr);
+               ret = setting_view_change(&setting_view_network_main,
+                                       &setting_view_network_connection_create,
+                                       ad);
+       }
 }
 
 static void
@@ -249,7 +282,7 @@ setting_network_con_click_softkey_reset_cb(void *data, Evas_Object *obj, void *e
 }
 
 static void
-setting_network_con_click_softkey_set_cb(void *data, Evas_Object *obj,
+setting_network_con_click_softkey_create_cb(void *data, Evas_Object *obj,
                                           void *event_info)
 {
        /* error check */
@@ -257,11 +290,12 @@ setting_network_con_click_softkey_set_cb(void *data, Evas_Object *obj,
 
        SettingNetworkUG *ad = (SettingNetworkUG *) data;
 
-       setting_create_simple_popup(ad, ad->win_get, NULL, _("UX Undefined"));
-       return;
+       //setting_create_simple_popup(ad, ad->win_get, NULL, _("UX Undefined"));
+       //return;
 
        //to add a new connection
-       ad->con_type = NET_SERVICE_UNKNOWN;
+       //ad->con_type = -1;
+       ad->con_name = strdup(STR_SETTING_NEW_CONNECTIONS);
        setting_view_change(&setting_view_network_main, &setting_view_network_connection_create, ad);
 }
 
index 3d08096..ea87885 100755 (executable)
@@ -173,7 +173,7 @@ static void __genlist_disable_set(Evas_Object *genlist, bool disabled)
 
                Setting_GenGroupItem_Data *item_data = (Setting_GenGroupItem_Data *)elm_object_item_data_get(item);
                if (item_data == NULL) {
-                       SETTING_TRACE("item_data is null");
+                       //SETTING_TRACE("item_data is null");
                        continue;
                }
                if (item_data->swallow_type == SWALLOW_Type_LAYOUT_ENTRY) {
@@ -217,7 +217,9 @@ void __get_connection_info(void *cb)
 
        if (NULL == ad->prof_list)
        {
+
                int err = net_get_profile_list(NET_DEVICE_CELLULAR, &(ad->prof_list), &(ad->prof_count));
+               //int err = connection_profile_create(CONNECTION_PROFILE_TYPE_CELLULAR, &(ad->prof_list)));
                if (err != NET_ERR_NONE) {
                        SETTING_TRACE_DEBUG
                            ("%s*** [ERR] Internet net_get_app_profile_id. err=%d ***%s",
@@ -230,18 +232,50 @@ void __get_connection_info(void *cb)
        ad->prof_sel_idx = SETTING_ADD_PROFILE_INDEX;//need add new configuration
        if (ad->prof_list)
        {
+               SETTING_TRACE("ad->con_name:%s", ad->con_name);
+               int ServiceType = NET_SERVICE_APPLICATION;
+               if (0 == safeStrCmp(ad->con_name,"IDS_ST_BODY_INTERNET_CONNECTION"))
+               {
+                       ServiceType = NET_SERVICE_INTERNET;
+               }
+               else if (0 == safeStrCmp(ad->con_name,STR_SETTING_MMS_CONNECTIONS))
+               {
+                       ServiceType = NET_SERVICE_MMS;
+               }
+
                int ci = 0;
+               #if 0
                for(ci = 0;ci < ad->prof_count;ci++){
                        SETTING_TRACE_DEBUG("profList[%d].ProfileName:%s", ci,ad->prof_list[ci].ProfileName);
-                       SETTING_TRACE_DEBUG("profList[%d].profile_type:%d", ci, ad->prof_list[ci].profile_type);
+                       SETTING_TRACE_DEBUG("profList[%d].ProfileInfo.Pdp.ServiceType:%d", ci, ad->prof_list[ci].ProfileInfo.Pdp.ServiceType);
+                       SETTING_TRACE_DEBUG("profList[%d].ProfileInfo.Pdp.Apn:%s", ci, ad->prof_list[ci].ProfileInfo.Pdp.Apn);
+               }
+               #endif
+               const char *con_name_utf8 = elm_entry_markup_to_utf8(ad->con_name);
+               for(ci = 0;ci < ad->prof_count;ci++){
+
                        if(NET_DEVICE_CELLULAR == ad->prof_list[ci].profile_type) {
-                               if (ad->con_type == ad->prof_list[ci].ProfileInfo.Pdp.ServiceType)
+                               if (NET_SERVICE_APPLICATION == ServiceType) //unknow, match with ad->con_name
+                               {
+                                       SETTING_TRACE("ad->prof_list[ci].ProfileInfo.Pdp.Apn:%s", ad->prof_list[ci].ProfileInfo.Pdp.Apn);
+                                       if (0 == safeStrCmp(con_name_utf8,ad->prof_list[ci].ProfileInfo.Pdp.Apn))
+                                       {
+                                               ad->prof_sel_idx = ci;
+                                               break;
+                                       }
+                               }
+                               else
                                {
-                                       ad->prof_sel_idx = ci;
-                                       break;
+                                       //match with ServiceType
+                                       if (ServiceType == ad->prof_list[ci].ProfileInfo.Pdp.ServiceType)
+                                       {
+                                               ad->prof_sel_idx = ci;
+                                               break;
+                                       }
                                }
                        }
                }
+               FREE(con_name_utf8);
        }
        SETTING_TRACE("ad->prof_sel_idx:%d", ad->prof_sel_idx);
        char ProxyAddr[NET_PROXY_LEN_MAX+1] = {0,};
@@ -300,8 +334,8 @@ void __get_connection_info(void *cb)
 
                ad->ed_pxy_addr_desc = g_strdup(addr);
                ad->ed_pxy_port_desc = g_strdup(port);
-
-               if (ad->con_type == NET_SERVICE_MMS) {  /* Message Connection */
+               //if (ad->con_type == NET_SERVICE_MMS) {        /* Message Connection */
+               if (!safeStrCmp(ad->con_name, STR_SETTING_MMS_CONNECTIONS)) {   /* Message Connection */
                        ad->ed_hm_url_desc =
                            ad->prof_list[ad->prof_sel_idx].ProfileInfo.Pdp.HomeURL;
                }
@@ -362,19 +396,7 @@ static int setting_network_connection_create(void *cb)
 
        SettingNetworkUG *ad = (SettingNetworkUG *) cb;
 
-       setting_retvm_if(NET_SERVICE_MMS != ad->con_type && NET_SERVICE_INTERNET != ad->con_type,
-                       SETTING_GENERAL_ERR_WRONG_PARAMETER,
-                       "Invalid connection type[%d]", ad->con_type)
-
-       const char *title = NULL;
-       if (ad->con_type == NET_SERVICE_INTERNET)
-       {       /*  Internet Connection & MMS Connection Head Title should be different. */
-               title = _("IDS_ST_BODY_INTERNET_CONNECTION");
-       }
-       else
-       {
-               title = _(STR_SETTING_MMS_CONNECTIONS);
-       }
+       setting_retvm_if(!ad->con_name, SETTING_GENERAL_ERR_NULL_DATA_PARAMETER, "!ad->con_name")
 
        Evas_Object *scroller = elm_genlist_add(ad->win_main_layout);
        elm_object_style_set(scroller, "dialogue");
@@ -397,13 +419,13 @@ static int setting_network_connection_create(void *cb)
        ad->data_acs_name = NULL;
        ad->data_auth_type = NULL;
 
-       ad->navi_it = setting_push_layout_navi_bar((char *)title,
+       ad->navi_it = setting_push_layout_navi_bar(_(ad->con_name),
                                     _("IDS_COM_BODY_BACK"),
                                     _(KeyStr_Edit),
                                     NULL,//_(KeyStr_Reset_Def),
                                     setting_network_edit_connection_click_softkey_back_cb,
                                     setting_network_edit_connection_click_softkey_eidt_cb,
-                                    setting_network_edit_connection_click_softkey_reset_cb,
+                                    NULL,
                                     ad, conformant, ad->navi_bar, &ad->controlbar);
 
        retv_if(!ad->navi_it, SETTING_RETURN_FAIL);
@@ -548,7 +570,7 @@ static int setting_network_connection_create(void *cb)
                SETTING_TRACE_ERROR("ad->data_pxy_port is NULL");
        }
 
-       if (ad->con_type == NET_SERVICE_MMS) {  /*  mms Connection */
+       if (!safeStrCmp(ad->con_name, STR_SETTING_MMS_CONNECTIONS)) {   /*  mms Connection */
                ad->data_hm_url =
                    setting_create_Gendial_field_def(scroller,
                                                     &itc_1icon,
@@ -609,6 +631,12 @@ static int setting_network_connection_destroy(void *cb)
                evas_object_del(ad->r_button);
                ad->r_button = NULL;
        }
+       FREE(ad->con_name);
+       //if (ad->prof_list)
+       //{
+       //      connection_profile_destroy(ad->prof_list);
+       //      ad->prof_list = NULL;
+       //}
 
        elm_naviframe_item_pop(ad->navi_bar);
        setting_view_network_connection_create.is_create = 0;
@@ -787,7 +815,7 @@ static int setting_network_edit_connection_save_connection(void *data)
                    NET_PROXY_LEN_MAX);
 
        /* save home url(message connection only) */
-       if (ad->con_type == NET_SERVICE_MMS) {  /* Message Connection */
+       if (!safeStrCmp(ad->con_name, STR_SETTING_MMS_CONNECTIONS)) {   /* Message Connection */
                home = elm_entry_markup_to_utf8(ad->data_hm_url->sub_desc);
                if (home == (char *)NULL) {
                        safeCopyStr(con_info->ProfileInfo.Pdp.HomeURL,
@@ -802,35 +830,40 @@ static int setting_network_edit_connection_save_connection(void *data)
                                    NET_HOME_URL_LEN_MAX);
                }
        }
-       FREE(acs_name);
        FREE(usr_name);
        FREE(pwd);
        FREE(addr);
        FREE(port);
        FREE(home);
-       SETTING_TRACE("ad->con_type:%d", ad->con_type);
+       //SETTING_TRACE("ad->con_type:%d", ad->con_type);
        /* save connection */
        if (ad->prof_sel_idx == SETTING_ADD_PROFILE_INDEX) {
-               /* add connection */
-               if (ad->con_type == NET_SERVICE_INTERNET) {     /* Internet Connection */
-                       safeCopyStr(con_info->ProfileName,
-                                   "IDS_ST_BODY_INTERNET_CONNECTION",
-                                   strlen("IDS_ST_BODY_INTERNET_CONNECTION"));
-                       //con_info->ProfileInfo.Pdp.ServiceCategoryId = 1;
-               } else {
-                       safeCopyStr(con_info->ProfileName, STR_SETTING_MMS_CONNECTIONS,
-                                   strlen(STR_SETTING_MMS_CONNECTIONS));
-                       //con_info->ProfileInfo.Pdp.ServiceCategoryId = 2;
+               SETTING_TRACE("ad->con_name:%s", ad->con_name);
+               if(!safeStrCmp(ad->con_name, STR_SETTING_MMS_CONNECTIONS))
+               {
+                       safeCopyStr(con_info->ProfileName, ad->con_name, strlen(ad->con_name));
+                       con_info->ProfileInfo.Pdp.ServiceType = NET_SERVICE_MMS;
                }
-               /** Specifies a protocol type */
-
-               /** network information */
-               con_info->ProfileInfo.Pdp.ServiceType = ad->con_type;
+               else if(!safeStrCmp(ad->con_name, "IDS_ST_BODY_INTERNET_CONNECTION"))
+               {
+                       safeCopyStr(con_info->ProfileName, ad->con_name, strlen(ad->con_name));
+                       con_info->ProfileInfo.Pdp.ServiceType = NET_SERVICE_INTERNET;
+               }
+               else
+               {
+                       //need to change con_name
+                       FREE(ad->con_name);
+                       ad->con_name = strdup(acs_name);
+                       safeCopyStr(con_info->ProfileName, ad->con_name, strlen(acs_name));
+                       con_info->ProfileInfo.Pdp.ServiceType = NET_SERVICE_APPLICATION;
+               }
+               FREE(acs_name);
+               SETTING_TRACE("ad->con_name:%s", ad->con_name);
 
                con_info->profile_type = NET_DEVICE_CELLULAR;
                con_info->ProfileState = NET_STATE_TYPE_UNKNOWN;
                con_info->ProfileInfo.Pdp.ProtocolType = NET_PDP_TYPE_GPRS;
-               err = net_add_profile(ad->con_type, con_info);
+               err = net_add_profile(con_info->ProfileInfo.Pdp.ServiceType, con_info);
                if (err != NET_ERR_NONE) {
                        SETTING_TRACE_ERROR
                            ("%s*** [ERR] net_add_profile. err=%d ***%s",
@@ -842,6 +875,16 @@ static int setting_network_edit_connection_save_connection(void *data)
                }
                FREE(con_info);
        } else {
+               if(0 != safeStrCmp(ad->con_name, STR_SETTING_MMS_CONNECTIONS)
+                  && 0 != safeStrCmp(ad->con_name, "IDS_ST_BODY_INTERNET_CONNECTION"))
+               {
+                       //need to change con_name
+                       FREE(ad->con_name);
+                       ad->con_name = strdup(acs_name);
+               }
+               FREE(acs_name);
+               SETTING_TRACE("ad->con_name:%s", ad->con_name);
+
                err = net_modify_profile(con_info->ProfileName, con_info);
                if (err != NET_ERR_NONE) {
                        SETTING_TRACE_ERROR
@@ -920,103 +963,7 @@ setting_network_edit_connection_click_softkey_eidt_cb(void *data,
        elm_object_item_part_content_set(ad->navi_it, NAVI_CONTROLBAR_PART, NULL);
        evas_object_hide(ad->controlbar);
 }
-static void
-setting_network_edit_connection_click_softkey_reset_cb(void *data,
-                                                     Evas_Object *obj,
-                                                     void *event_info)
-{
-       SETTING_TRACE_BEGIN;
-       /* error check */
-       retm_if(data == NULL, "Data parameter is NULL");
-
-       SettingNetworkUG *ad = (SettingNetworkUG *) data;
-       net_profile_info_t *con_info = NULL;
-       int err = -1;
-       if (ad->prof_sel_idx != SETTING_ADD_PROFILE_INDEX) {
-               con_info = &(ad->prof_list[ad->prof_sel_idx]);
-       } else {
-               con_info = (net_profile_info_t *)calloc(1, sizeof(net_profile_info_t));
-               setting_retm_if(!con_info, "Failed to alloc for net_profile_info_t");
-       }
-
-       const char *access_name = _("Connection");
-       int auth_type = NET_PDP_AUTH_NONE;
-       safeCopyStr(con_info->ProfileInfo.Pdp.Apn, access_name, NET_PDP_APN_LEN_MAX);
-       con_info->ProfileInfo.Pdp.AuthInfo.AuthType = auth_type;
-
-       safeCopyStr(con_info->ProfileInfo.Pdp.net_info.ProxyAddr, "0.0.0.0:80",
-                   NET_PROXY_LEN_MAX);
-       safeCopyStr(con_info->ProfileInfo.Pdp.HomeURL,
-                   URL_HEAD, NET_HOME_URL_LEN_MAX);
-
-       SETTING_TRACE("ad->con_type:%d", ad->con_type);
-       /* save connection */
-       if (ad->prof_sel_idx == SETTING_ADD_PROFILE_INDEX)
-       {
-               /* add connection */
-               if (ad->con_type == NET_SERVICE_INTERNET)
-               {       /* Internet Connection */
-                       safeCopyStr(con_info->ProfileName,
-                                   "IDS_ST_BODY_INTERNET_CONNECTION",
-                                   strlen("IDS_ST_BODY_INTERNET_CONNECTION"));
-                       //con_info->ProfileInfo.Pdp.ServiceCategoryId = 1;
-               }
-               else
-               {
-                       safeCopyStr(con_info->ProfileName, STR_SETTING_MMS_CONNECTIONS,
-                                   strlen(STR_SETTING_MMS_CONNECTIONS));
-                       //con_info->ProfileInfo.Pdp.ServiceCategoryId = 2;
-               }
-               /** Specifies a protocol type */
-
-               /** network information */
-               con_info->ProfileInfo.Pdp.ServiceType = ad->con_type;
-
-               con_info->profile_type = NET_DEVICE_CELLULAR;
-               con_info->ProfileState = NET_STATE_TYPE_UNKNOWN;
-               con_info->ProfileInfo.Pdp.ProtocolType = NET_PDP_TYPE_GPRS;
-
-               err = net_add_profile(ad->con_type, con_info);
-               if (err != NET_ERR_NONE)
-               {
-                       SETTING_TRACE_DEBUG
-                           ("%s*** [ERR] net_add_profile. err=%d ***%s",
-                            SETTING_FONT_RED, err, SETTING_FONT_BLACK);
-                       setting_create_simple_popup(ad, ad->win_get,
-                                                   NULL, _(Invok_API_Failed_Desc));
-               }
-               FREE(con_info);
-       }
-       else
-       {
-               err = net_modify_profile(con_info->ProfileName, con_info);
-               if (err != NET_ERR_NONE)
-               {
-                       SETTING_TRACE_DEBUG
-                           ("%s*** [ERR] net_modify_profile. err=%d ***%s",
-                            SETTING_FONT_RED, err, SETTING_FONT_BLACK);
-               }
-       }
 
-       if (err == NET_ERR_NONE) //update genlist when it operaters sucessfully
-       {
-               if (!ad->prof_list) __get_connection_info(ad);//maybe new added
-               ad->ed_acs_name_desc = access_name;
-               ad->ed_user_name_desc = NULL;
-               ad->ed_pwd_desc = NULL;
-               ad->ed_pxy_addr_desc = g_strdup("0.0.0.0");
-               ad->ed_pxy_port_desc = g_strdup("80");
-               ad->ed_hm_url_desc = URL_HEAD;
-               ad->chkType = NET_PDP_AUTH_NONE;
-               ad->ed_auth_type_desc = _("IDS_COM_BODY_NONE");
-               __update_genlist_info(ad);
-       }
-       else
-       {
-               elm_genlist_realized_items_update(ad->scl_edit);//refresh genlist
-       }
-       ecore_idler_add(__connection_idler, ad);
-}
 
 static void
 setting_network_edit_connection_click_softkey_save_cb(void *data,
@@ -1051,6 +998,8 @@ setting_network_edit_connection_click_softkey_save_cb(void *data,
        FREE(ad->prof_list);
        __get_connection_info(ad);
 
+       //UI update
+       elm_object_item_text_set(ad->navi_it, _(ad->con_name));
        setting_network_edit_connection_click_softkey_cancel_cb(ad, ad->r_button, NULL);
 }
 
@@ -1067,7 +1016,7 @@ setting_network_edit_connection_click_softkey_back_cb(void *data,
        /* elm_box_unpack_all(ad->bx_blk); */
        /* elm_dialoguegroup_remove_all(ad->dg_blk); */
        setting_view_change(&setting_view_network_connection_create,
-                           &setting_view_network_main, ad);
+                           &setting_view_network_con, ad);
 }
 static void
 setting_network_edit_connection_click_softkey_cancel_cb(void *data,
@@ -1285,6 +1234,7 @@ setting_network_connection_entry_changed_cb(void *data, Evas_Object *obj,
        SettingNetworkUG *ad = list_item->userdata;
        const char *entry_str = elm_entry_entry_get(obj);
        list_item->sub_desc = (char *)g_strdup(entry_str);
+       //SETTING_TRACE("list_item->sub_desc:%s", list_item->sub_desc);
        ad->has_form_changed  = TRUE;
        setting_network_connection_check_entry_empty(ad);
 }
index 2d53d1d..a02e365 100755 (executable)
@@ -438,34 +438,6 @@ static int setting_network_main_create(void *cb)
                                         ad, SWALLOW_Type_INVALID, NULL, NULL,
                                         0, CONNECTION_DSC,
                                         NULL, NULL);
-#if DISABLED_CODE
-       setting_create_Gendial_field_def(scroller, &itc_1text,
-                                        setting_network_main_item_Gendial_mouse_up_cb,
-                                        ad, SWALLOW_Type_INVALID, NULL, NULL,
-                                        0, "IDS_ST_BODY_INTERNET_CONNECTION",
-                                        NULL, NULL);
-       setting_create_Gendial_field_def(scroller, &itc_1text,
-                                        setting_network_main_item_Gendial_mouse_up_cb,
-                                        ad, SWALLOW_Type_INVALID, NULL, NULL,
-                                        0, STR_SETTING_MMS_CONNECTIONS, NULL,
-                                        NULL);
-#ifdef ENABLED_PREFERRED_NETWORKS
-       setting_create_Gendial_field_def(scroller, &itc_1text,
-                                        setting_network_main_item_Gendial_mouse_up_cb,
-                                        ad, SWALLOW_Type_INVALID, NULL, NULL,
-                                        0, "IDS_ST_BODY_PREFERRED_NETWORKS",
-                                        NULL, NULL);
-#endif
-#ifdef ENABLED_2G3G_NETWORK
-       /*  create 3g connection option */
-       setting_create_Gendial_field_def(scroller, &itc_1text,
-                                        setting_network_main_item_Gendial_mouse_up_cb,
-                                        ad, SWALLOW_Type_INVALID, NULL, NULL,
-                                        0, "2G/3G Connection", NULL, NULL);
-
-       /* add blank rectangle */
-#endif
-#endif
 
        item = elm_genlist_item_append(scroller, &itc_bottom_seperator, NULL, NULL,
                                    ELM_GENLIST_ITEM_NONE, NULL, NULL);
@@ -584,80 +556,7 @@ setting_network_main_item_Gendial_mouse_up_cb(void *data, Evas_Object *obj,
                    setting_view_change(&setting_view_network_main,
                                        &setting_view_network_select_network,
                                        ad);
-       } else
-           if (!safeStrCmp
-               ("IDS_ST_BODY_INTERNET_CONNECTION", list_item->keyStr)) {
-
-               ad->con_type = NET_SERVICE_INTERNET;
-               ret =
-                   setting_view_change(&setting_view_network_main,
-                                       &setting_view_network_connection_create,
-                                       ad);
-       } else if (!safeStrCmp(STR_SETTING_MMS_CONNECTIONS, list_item->keyStr)) {
-               ad->con_type = NET_SERVICE_MMS;
-
-               ret =
-                   setting_view_change(&setting_view_network_main,
-                                       &setting_view_network_connection_create,
-                                       ad);
-       }
-#ifdef ENABLED_PREFERRED_NETWORKS
-       else if (!safeStrCmp("IDS_ST_BODY_PREFERRED_NETWORKS",
-                               list_item->keyStr)) {
-
-               int value = -1;
-               int err = -1;
-               ret =
-                   setting_get_int_slp_key(INT_SLP_SETTING_SIM_SLOT, &value,
-                                           &err);
-                       /** @todo check 'err' variable for exception handling */
-               SETTING_TRACE("INT_SLP_SETTING_SIM_SLOT value:%d", value);
-               switch (value) {
-               case VCONFKEY_TELEPHONY_SIM_INSERTED:
-                       /* To Recreate the view in order to search the perferred network again. */
-                       /* ret = setting_view_destroy(&setting_view_network_preferred_network, ad); */
-                       ret =
-                           setting_view_change(&setting_view_network_main,
-                                               &setting_view_network_preferred_network,
-                                               ad);
-
-                       break;
-
-               case VCONFKEY_TELEPHONY_SIM_NOT_PRESENT:
-
-                       setting_create_simple_popup(NULL, ad->win_get,
-                                                   NULL, _("IDS_ST_SECURITY_BODY_NOIMSI"));
-                       SETTING_TRACE_DEBUG
-                           ("%s*** [ERR] INCORRECTED SIM. sim_slot_type=%d ***%s",
-                            SETTING_FONT_RED, value, SETTING_FONT_BLACK);
-                       return;
-
-                       break;
-
-               case VCONFKEY_TELEPHONY_SIM_CARD_ERROR:
-               case VCONFKEY_TELEPHONY_SIM_UNKNOWN:
-
-                       setting_create_simple_popup(NULL, ad->win_get,
-                                                   NULL, _("IDS_COM_BODY_INVALID_SIM_CARD"));
-                       SETTING_TRACE_DEBUG
-                           ("%s*** [ERR] INCORRECTED SIM. sim_slot_type=%d ***%s",
-                            SETTING_FONT_RED, value, SETTING_FONT_BLACK);
-                       return;
-
-                       break;
-               default:
-                       SETTING_TRACE("Unknown SIM information from vconf");
-                       break;
-               }
-       }
-#endif
-#ifdef ENABLED_2G3G_NETWORK
-       else if (!safeStrCmp("2G/3G Connection", list_item->keyStr)) {
-               ret =
-                   setting_view_change(&setting_view_network_main,
-                                       &setting_view_network_3gcon, ad);
        }
-#endif
        else if (!safeStrCmp(KeyStr_UsePacketData, list_item->keyStr)) {
                int old_status = elm_check_state_get(list_item->eo_check);
                /* new status */