ui网络开关功能的实现

来源:互联网 发布:ip地址mac绑定的目的 编辑:程序博客网 时间:2024/04/29 03:56

第一步:在common_def.h文件中定义一个标记量(此文件在不同的位置有同样的两个文件都需要定义)

#define MAGICKEY_NETWORK_ENABLE_FLAG 13  (仿照first_user)

第二步:在App_common.c中定义一个MAGICKEY_NETWORK_ENABLE_VALUE 111   (密码)

#ifdef NETWORK_UI_ENABLE
#define MAGICKEY_NETWORK_ENABLE_VALUE 111(仿照first_user)
#endif

第三步:编写相应的函数(仿照first_user)

#ifdef NETWORK_UI_ENABLE
case MAGICKEY_NETWORK_ENABLE_VALUE://NETWORK UI ENABLE
is_network_ui_set_status();
magickey = 0;
ret = MAGICKEY_NETWORK_ENABLE_FLAG;
break;
#endif

第四步:在App_common.c中定义属性函数;

在system_data.h中定义一个UINT8 network_enable_flag;;变量

Bool is_network_ui_get_status(void)

{

SYSTEM_DATA *NETWORK_UI_STATUS = sys_data_get();

return NETWORK_UI_STATUS->network_enable_flag;

}

Bool is_network_ui_set_status(void)

{

SYSTEM_DATA *NETWORK_UI_STATUS = sys_data_get();

if(var_network_support == FALSE)

{

var_network_support = TRUE;
NETWORK_UI_STATUS->network_enable_flag = var_network_support;
sys_data_save();

}

else 

{

var_network_support = FALSE;
NETWORK_UI_STATUS->network_enable_flag = var_network_support;
sys_data_save();

}

}

第五步:在global_var.h

extern BOOL var_network_support;

第六:在 sys_config_3606.h

//add for network ui
#define NETWORK_UI_ENABLE   // network ui       

在se_var_id.h添加id   

#define SE_VAR_NETWORK_SUPPORT   820                             

在se_bar_id.nsp中添加映射

#map SE_VAR_NETWORK_SUPPORT"IS_NETWORK_SUPPORT"

在global_var.c中分别添加3部分

 /****************************************************
 * Name: var_network_support
 * Usage:  get nic status->flase:faild, true-ok
 * meaning:
 ****************************************************/
1、BOOL var_network_support

2、se_var[SE_VAR_NETWORK_SUPPORT] = (UINT32)&var_network_support;// network enable

3、#ifdef NETWORK_UI_ENABLE

var_network_support = is_network_ui_get_status();//network
#else
var_network_support = TRUE;
#endif


在UI界面中添加

ELSE_IF(FORMULA(magic_key_proc_ret==MAGICKEY_NETWORK_ENABLE_FLAG),act_exec_magic_key_networkenable)//Network enable 
S_ACTION_LIST act_exec_magic_key_networkenable
mm_internet_item_vis = FORMULA(((IS_ETH_SUPPORT==TRUE)||(wifi_support==TRUE)) &&(IS_NETWORK_SUPPORT == TRUE) );
UPDATE_OBJECT(MAIN_MENU_WIN);
E_ACTION

IF (FORMULA ((IS_ETH_SUPPORT==TRUE || wifi_support==TRUE) &&mm_internet_item_vis == TRUE),act_focus_in_channel_normal)