示例#1
0
static MMI_BOOL vm_nmgr_global_popup_defer_callback(mmi_scenario_id scen_id, void *arg)
{
    vm_confirm_property_struct *p = (vm_confirm_property_struct *)arg;
	mmi_confirm_property_struct confirm_arg;
	
	mmi_frm_group_enter(p->parentID, MMI_FRM_NODE_SMART_CLOSE_FLAG);
			
	mmi_confirm_property_init(&confirm_arg, CNFM_TYPE_USER_DEFINE);
	confirm_arg.parent_id = p->parentID;
    if (p->gpType == VM_CONFIRM_ONE_BUTTON_STR)
    {
		confirm_arg.softkey[0].str = (WCHAR *)(get_string(0));
		confirm_arg.softkey[2].str = (WCHAR *)(p->btnText1);
	}
	else if (p->gpType == VM_CONFIRM_TWO_BUTTON_STR)
	{
		confirm_arg.softkey[0].str = (WCHAR *)(p->btnText1);	
		confirm_arg.softkey[2].str = (WCHAR *)(p->btnText2);			
	}
	confirm_arg.f_auto_map_empty_softkey = MMI_FALSE;
    confirm_arg.callback = (mmi_proc_func)(p->callBack);
	confirm_arg.user_tag = (void *)(p->userData);	
	
	mmi_confirm_display((WCHAR *)(p->text), p->evtType, &confirm_arg);
	
	mmi_frm_asm_free_anonymous(p->text);
	mmi_frm_asm_free_anonymous(p->btnText1);
    if (p->gpType == VM_CONFIRM_TWO_BUTTON_STR)
        mmi_frm_asm_free_anonymous(p->btnText2);

    return MMI_TRUE;
}
static void mmi_rmgr_format_popup_handler()
{
      mmi_id g_id;
	g_id = mmi_frm_group_create(GRP_ID_ROOT, GRP_ID_RMGR_MAIN, mmi_rmgr_main_evt_hdlr, NULL);
	mmi_frm_group_enter(g_id, MMI_FRM_NODE_SMART_CLOSE_FLAG);
	mmi_rmgr_list_ro_entry_delete();
}		
void avk_framework_entry_main()
{  
    g_avk_framework_ctx.auto_case_done_handle = avk_framework_auto_test_done;
    g_avk_framework_ctx.all_case_done_handle = avk_framework_test_done;

    g_avk_framework_fw_ctx.avk_framework_foreground = MMI_TRUE;
    mmi_frm_group_create(GRP_ID_ROOT, GRP_ID_AVK, avk_framework_group_proc, NULL);
    mmi_frm_group_enter(GRP_ID_AVK, MMI_FRM_NODE_SMART_CLOSE_FLAG);
    //if test all is running ,we will re in
    if (g_avk_framework_ctx.b_running)
    {
        avk_test_case* tmp_item[AVK_FRAMEWORK_MAX_ITEM_DEEP];
        avk_test_case* item;
        S32 i = 0;
        item = g_avk_framework_fw_ctx.avk_framework_re_in_item;
        ASSERT(g_avk_framework_fw_ctx.avk_framework_re_in_item);
        do
        {
            tmp_item[i++] = item;
            item = item->parent;
        }while (item && item != g_avk_framework_ctx.root);
        

        avk_framework_entry_scr((U32)g_avk_framework_ctx.root);
        for (;i>0;i--)
        {
            avk_framework_entry_scr((U32)tmp_item[i-1]);
        }
                
        if (AVK_FRAMEWORK_IS_AUTO_CASE(g_avk_framework_ctx.current_case))
        {
            //if auto cases is running
            avk_framework_entry_auto_cases_scr(tmp_item[0]);
        }
        else
        {
            //manual cases
            avk_framework_re_invoke_case();
        }
    }
    else
    {
        //disable touch feedback
        gui_touch_feedback_disable_tone_internal();
        gui_touch_feedback_disable_vibrate_internal();
        //
        if (1 == avk_framework_core_init(vak_framework_entry_main_asm_callback))
        {
            return;
        };
        avk_framework_log_init();
        
        avk_framework_entry_scr((U32)g_avk_framework_ctx.root);
    }
}
/*****************************************************************************
 * FUNCTION
 *  mmi_rmgr_list_ro_entry_option
 * DESCRIPTION
 *  Entry function of the list ro option screen
 * PARAMETERS
 *  void
 * RETURNS
 *  void
 *****************************************************************************/
static void mmi_rmgr_list_ro_entry_option(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    U16 g_id;
    U16 menu_cui_id;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    g_id = mmi_frm_group_create(GRP_ID_RMGR_MAIN, GRP_ID_RMGR_RO_OPTIONS, mmi_rmgr_ro_options_evt_hdlr, NULL);
    mmi_frm_group_enter(g_id, MMI_FRM_NODE_SMART_CLOSE_FLAG);

	menu_cui_id = cui_menu_create(
             g_id, 
             CUI_MENU_SRC_TYPE_RESOURCE, 
             CUI_MENU_TYPE_OPTION, 
             MENU_ID_RMGR_RO_OPTIONS, 
             MMI_FALSE, 
             NULL);

    cui_menu_set_default_title_image(menu_cui_id,(UI_image_type)GetImage(mmi_rmgr_get_root_icon()));
    cui_menu_run(menu_cui_id);
    
#if 0
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
/* under construction !*/
	#endif /*0*/
}
示例#5
0
VMINT vm_frm_entry_app_screen(VM_P_HANDLE pHandle)
{
	mmi_id group_id = 0;
	mmi_scenario_state_enum state;

	if (!vm_pmng_is_support_screen(pHandle))
	{
	    return -1;
	}

	group_id = vm_frm_gen_group_id(pHandle);

    MMI_TRACE(MMI_MRE_TRC_G8_FRM,TRC_MRE_FRM_ENTRY_APP_SCREEN,pHandle,group_id);
    
	if (0 == group_id)
	{
//		vm_log_fatal("[MRE]vm_frm_entry_app_screen get group id fail!");
		return -1;
	}

	vm_frm_scenario_lock(pHandle);
	if (mmi_frm_group_is_present(group_id))
	{
		state = mmi_frm_group_get_state(group_id);
		if (MMI_SCENARIO_STATE_HIDE & state)
		{
			mmi_frm_group_unhide(group_id);
		}
		else if (MMI_SCENARIO_STATE_INACTIVE &  state)
		{
			mmi_frm_set_active_group(group_id);
		}			
	}
	else
	{
		mmi_frm_group_create(GRP_ID_ROOT, group_id, vm_frm_group_proc, (void*)pHandle);
	    mmi_frm_group_enter(group_id, MMI_FRM_NODE_SMART_CLOSE_FLAG);

	    mmi_frm_scrn_first_enter(group_id, MRE_SCREEN_ID0, 
                    (FuncPtr)vm_frm_entry_func, (void*)pHandle);
	}
    vm_frm_scenario_unlock();
	
	/* 
	 * resolve bugs about MRE Editor :
	 * 1. 在vm_editor_create中disable softkey,但是softkey区域显示蓝色(异常)。
	 * 2. 隐藏VK后,App收到的rect坐标错误。
	 */
	MMI_content_y = 0;
	MMI_content_height = UI_DEVICE_HEIGHT;
	
   	return 0;
}
示例#6
0
/*模块入口*/
void mmi_HelloWorld_entry(void)
{
#ifdef	__MMI_HELLOWORLD_ENABLED__
	/* 强制退出当前屏幕,之后进入到我们的模块了 */
	/* 上电缺省是idle屏幕,现进入MAIN_MENU_SCREENID屏 */
	/* 注意看第二个参数,这个是当我们模块被强制退出时执行的一些操作 */


#if 1

	//EntryNewScreen(MAIN_MENU_SCREENID, mmi_HelloWorld_exit, NULL, NULL);
    g_main_menu_group_id = mmi_frm_group_create(GRP_ID_ROOT, GRP_ID_AUTO_GEN, NULL, NULL);
    mmi_frm_group_enter(g_main_menu_group_id, 1);
    if(mmi_frm_scrn_enter(g_main_menu_group_id, MAIN_MENU_SCREENID, NULL, NULL, 2) == MMI_FALSE)
    {
        return;
    }


	/* 关掉屏幕顶部的状态条,我们要用整个屏幕 */
	entry_full_screen();

	/* 擦除当前背景 */
	clear_screen();

	/* 移动文本输出光标 */
	gui_move_text_cursor(50, 100);

	/* 设置字体颜色 */
	gui_set_text_color(UI_COLOR_RED);

	/* 输出文本到显示缓冲, 注意是Unicode编码 */
	gui_print_text(L"Hello, moring");

	/* 刷新屏幕显示,MMI用的是双缓冲绘图方式,而且需要显式刷新 */
	gui_BLT_double_buffer(0, 0, UI_device_width - 1, UI_device_height - 1);

	/* 注册一个按键处理,右软键弹起时返回到之前被我们强制退出的模块 */
	SetKeyHandler(GoBackHistory, KEY_RSK, KEY_EVENT_UP);
#endif
#endif
}
/*****************************************************************************
 * FUNCTION
 * DESCRIPTION
 * PARAMETERS
 * RETURNS
 *****************************************************************************/
void mmi_rmgr_list_ro_entry_main(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    kal_uint8 serial;
    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    /* 1. redraw by small screen
       2. gobackhistory and no need refresh screen */
    if(!mmi_frm_group_is_present(GRP_ID_RMGR_MAIN))
    {     
         mmi_id g_id;
         g_id = mmi_frm_group_create(GRP_ID_ROOT, GRP_ID_RMGR_MAIN, mmi_rmgr_main_evt_hdlr, NULL);
	 mmi_frm_group_enter(g_id, MMI_FRM_NODE_SMART_CLOSE_FLAG);
    }
    if (mmi_is_redrawing_bk_screens() || rmgr_list_ro_cntx.refresh == MMI_FALSE)
    {
        /* do not reget the data, just use old data */
        //mmi_rmgr_list_ro_entry_real_main();
		DRM_get_ro_num(&serial, mmi_rmgr_list_ro_get_num_callback_copy,DRM_DB_GET_VALID) ;
    }
    else
    {
        /* reserve the highlight information in guibuffer */
        /*if (mmi_frm_scrn_is_present (GRP_ID_RMGR_MAIN, SCR_ID_RMGR_LIST_RO_MAIN, MMI_FRM_NODE_ALL_FLAG))//IsScreenPresent(SCR_ID_RMGR_LIST_RO_MAIN))
        {
            mmi_frm_hold_history_buffer(SCR_ID_RMGR_LIST_RO_MAIN);
        }*/

        rmgr_list_ro_cntx.refresh = MMI_FALSE;
        DRM_get_ro_num(&serial, mmi_rmgr_list_ro_get_num_callback,DRM_DB_GET_VALID);
        mmi_rmgr_entry_db_progressing(STR_ID_RMGR_PROCESSING, serial, MMI_TRUE, MMI_FALSE);
    }
}
/*****************************************************************************
 * FUNCTION
 *  widget_show_view_handler
 * DESCRIPTION
 *  Phonebook launch proc function
 * PARAMETERS
 *  evt
 * RETURNS
 *  void
 *****************************************************************************/
void widget_show_view_handler(void *param)
{
    widget_show_view_ind_struct *p = (widget_show_view_ind_struct *)param;

    send_message(NULL, NULL, MSG_ID_WIDGET_SHOW_VIEW_CNF, MOD_GADGET);

    if (!g_widget_view_lock)
    {
        g_widget_view_lock = kal_create_mutex("widget_view_lock");
    }

    if (g_widget_view_cntx)
    {
        ASSERT(mmi_frm_group_is_present(GRP_ID_WIDGET_VIEW));

        mmi_frm_group_close(GRP_ID_WIDGET_VIEW);
    }

    g_widget_view_cntx = OslMalloc(sizeof(widget_view_context_struct));

    ASSERT(g_widget_view_cntx);

    memset(g_widget_view_cntx, 0, sizeof(widget_view_context_struct));

    g_widget_view_cntx->widget_id = p->instance_id;
    g_widget_view_cntx->view_handle = p->view_handle;
    g_widget_view_cntx->view_width = p->width;
    g_widget_view_cntx->view_height = p->height;
    g_widget_view_cntx->view_type = p->type;
    g_widget_view_cntx->view_flags = p->flags;

    if (p->caption[0])
    {
        mmi_chset_utf8_to_ucs2_string(
            (U8*) g_widget_view_cntx->view_caption,
            sizeof(g_widget_view_cntx->view_caption),
            (U8*) p->caption);
    }

    gdi_lcd_get_dimension(&g_widget_view_cntx->lcd_width, &g_widget_view_cntx->lcd_height);

    if (g_confirm_dialog_gid)
    {
        mmi_frm_node_struct group_info;

        group_info.id = GRP_ID_WIDGET_VIEW;
        group_info.entry_proc = mmi_widget_view_event_handler_proc;

        mmi_frm_group_insert(mmi_idle_get_group_id(), g_confirm_dialog_gid, &group_info, MMI_FRM_NODE_BEFORE_FLAG);
        //mmi_frm_group_insert(GRP_ID_ROOT, g_confirm_dialog_gid, &group_info, MMI_FRM_NODE_BEFORE_FLAG);
        mmi_frm_group_set_attribute (GRP_ID_WIDGET_VIEW, MMI_FRM_NODE_SMART_CLOSE_FLAG);
    }
    else
    {
        /*mmi_frm_group_create(
            mmi_idle_get_group_id(),
            GRP_ID_WIDGET_VIEW,
            mmi_widget_view_event_handler_proc,
            g_widget_view_cntx);*/

		mmi_frm_node_struct group_info;

        group_info.id = GRP_ID_WIDGET_VIEW;
        group_info.entry_proc = mmi_widget_view_event_handler_proc;
		group_info.user_data = g_widget_view_cntx;
		
        mmi_frm_group_insert(GRP_ID_ROOT, mmi_idle_get_group_id(), &group_info, MMI_FRM_NODE_AFTER_FLAG);
        mmi_frm_group_enter(GRP_ID_WIDGET_VIEW, MMI_FRM_NODE_SMART_CLOSE_FLAG);
    }

    mmi_widget_entry_view();
}
示例#9
0
文件: i51Port.c 项目: magicjva/i51
static void i51EntryScreen(void)
{
	//	author : Miki
	//	since : 2011.12.2
	// 	(C) PKIG Tech. Co., Ltd.
    

	#if( I51_MTK_VS >= VS_11B_1212 )
	MMI_ID parent_id;  

   // parent_id=mmi_frm_group_get_active_id();

    parent_id = mmi_frm_group_get_top_parent_group_id(mmi_frm_group_get_active_id());

	mmi_frm_group_create(parent_id, 

                          I51_GROUP_ID, 

                          NULL,

                          NULL);
    mmi_frm_group_enter(I51_GROUP_ID, MMI_FRM_NODE_SMART_CLOSE_FLAG);
	
    if (!mmi_frm_scrn_enter(

            I51_GROUP_ID,//group id

            I51_SCREEN_ID,//screnn id 

            i51ExitSreen,

            (FuncPtr)i51PortCreateFrontEnd,

            MMI_FRM_FULL_SCRN))

    {
        return;
    }
	#else
	EntryNewScreen (I51_SCREEN_ID, i51ExitSreen, (FuncPtr)i51PortCreateFrontEnd, NULL);
	#endif	

    i51AdeOsLog( i51_LOG_SC, "PORT : EntrySreen , S , Front app run = %d", l_InI51 );
    gdi_layer_set_source_key(0,0);
    
    #ifdef __MTK_TARGET__
    #ifdef __MMI_AUDIO_PLAYER__
    mdi_audio_suspend_background_play();       
    #endif 
    #endif 
   
    i51AdeMmiMediaPlayerSetVolume( i51AdeMmiMediaPlayerGetVolume(0) );

    {
        stFontAttribute f={0};
        f.size = MEDIUM_FONT;
        gui_set_font(&f);
    }
#ifdef __MMI_TOUCH_SCREEN__
    mmi_pen_config_sampling_period(MMI_PEN_SAMPLING_PERIOD_2, MMI_PEN_SAMPLING_PERIOD_2);
#endif
}
示例#10
0
/*****************************************************************************
 * FUNCTION
 *  cui_pict_run
 * DESCRIPTION
 *  Pictbridge CUI run function. 
 * PARAMETERS
 *  g_pict_gid        [IN]        Pictbridge CUI Group ID
 * RETURNS
 *  void
 *****************************************************************************/
static void cui_pict_run(mmi_id gid, MMI_BOOL is_multi_sel, const cui_pict_file_info_struct *info)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    /* use 0 not SMART_CLOSE_FLAG, otherwise group will automatically close and can't send 
       print result to parent, such as press RSK "back" in setting screen" */

    mmi_frm_group_enter(g_pict_gid, MMI_FRM_NODE_NONE_FLAG);

    /* printer is not present */
    if (!mmi_pict_is_dps_device_present())
    {        
        cui_pict_disp_popup(CUI_PICT_RESULT_NOT_READY, STR_ID_PICT_PRINTER_REMOVED, MMI_EVENT_FAILURE);        
        return;
    }

    if (!mmi_pict_is_configure_ready())
    {    
        /* waiting for initialization with the printer */        
        cui_pict_disp_popup(CUI_PICT_RESULT_NOT_READY, STR_ID_PICT_CONFIGURATION, MMI_EVENT_FAILURE);        
        return;
    }

    if (g_pict_bridge_context.printing != PICT_PRINTING_NONE)
    {
        cui_pict_disp_popup(CUI_PICT_RESULT_BUSY, STR_GLOBAL_BUSY_TRY_LATER, MMI_EVENT_FAILURE);
        return;
    }
    
#ifdef __MMI_FMGR_MULTI_SELECT_SUPPORT__    
    if (is_multi_sel)
    {
        mmi_pict_reset_files_info();        
        mmi_pict_entry_file_processing_screen();
        
        if (info != NULL)
        {
			mmi_pict_record_file_info(info->full_path, info->info);                
        }        

        if (g_pict_total_count == 1)
        {
            mmi_pict_prepare_file_done();
        }
        else
        {
            cui_pict_post_evt_to_parent();
        }
    }
    else
#endif
    {
        if (info != NULL)
        {            
            mmi_ucs2cpy((S8*) g_pict_bridge_context.printing_filepath, (S8*) info->full_path);
        
            if (!mmi_pict_jpg_format_validation((S8*) g_pict_bridge_context.printing_filepath))
            {
                /* invalid file */                    
                cui_pict_disp_popup(CUI_PICT_RESULT_ERROR, STR_ID_PICT_INVALID_JPG_FILE, MMI_EVENT_FAILURE);                    
                return;
            }
#ifdef __DRM_SUPPORT__
            if (!mmi_pict_drm_jpg_file_check(g_pict_bridge_context.printing_filepath))
            {
                cui_pict_disp_popup(CUI_PICT_RESULT_ERROR, STR_GLOBAL_DRM_PROHIBITED, MMI_EVENT_FAILURE);                    
                return;
            }
#endif /* __DRM_SUPPORT__ */
#ifdef __MMI_FMGR_MULTI_SELECT_SUPPORT__
            mmi_pict_prepare_single_file_data(); //prepare data for multiple file buffer
#else
            mmi_pict_get_file_date();
#endif
            mmi_pict_entry_print_settings();
        }
    }    
}