⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mmi_atc_wintab.c

📁 嵌入式展讯mmi层kernel的c 源代码
💻 C
字号:
/*****************************************************************************
** File Name:      mmidc_wintab.c                                                   *
** Author:         lin.lin                                                 *
** Date:           24/05/2004                                                *
** Copyright:      2003 Spreatrum, Incoporated. All Rights Reserved.         *
** Description:    This file is used to describe atc win                *
/*****************************************************************************
**                         Important Edit History                            *
** --------------------------------------------------------------------------*
** DATE           NAME             DESCRIPTION                               *
** 11/2004        lin.lin	       Create
******************************************************************************/

#ifndef _ATC_WIN_TAB_C_
#define _ATC_WIN_TAB_C_

/**--------------------------------------------------------------------------*
 **                         Include Files                                    *
 **--------------------------------------------------------------------------*/
#include "mmi_atc.h"
#include "mmk_type.h"
#include "window_parse.h"
#include "mmi_default.h"
#include "guicommon.h"
#include "mmidisplay_data.h"
#include "mainapp.h"
#include "mmi_image.h"
#include "guianimate.h"
#include "mmi_pubwin.h"
#include "mmi_common.h"
#include "mmk_ex.h"
#include "mmi_sysinfo.h"

/**--------------------------------------------------------------------------*
 **                         MACRO DEFINITION                                 *
 **--------------------------------------------------------------------------*/
#define ANIM_TIME_INTERVAL 500
#define WINPAINT_TIMER_OUT 500

/**--------------------------------------------------------------------------*
 **                         STATIC DEFINITION                                *
 **--------------------------------------------------------------------------*/
LOCAL uint8 s_atcwin_timer_id = 0;

 /**-------------------------------------------------------------------------*
 **                         GLOBAL DEFINITION                                *
 **--------------------------------------------------------------------------*/
BOOLEAN g_atc_is_run = FALSE;

/*---------------------------------------------------------------------------*/
/*                          LOCAL FUNCTION DECLARE                           */
/*---------------------------------------------------------------------------*/

/*****************************************************************************/
// 	Description : handle the message of ATC window
//	Global resource dependence : none
//  Author: lin.lin
//	Note:
/*****************************************************************************/
LOCAL MMI_RESULT_E HandleATCWinMsg(
									 MMI_WINDOW_ID_E	win_id, 
									 MMI_MESSAGE_ID_E	msg_id, 
									 DPARAM				param
									 );
/*****************************************************************************/
// 	Description : handle the message of full paint
//	Global resource dependence : none
//  Author: lin.lin
//	Note:
/*****************************************************************************/
LOCAL void HandleFullPaintMsg();


/**--------------------------------------------------------------------------*
 **                         WINDOW  DEFINITION                               *
 **--------------------------------------------------------------------------*/
//the window for atc
WINDOW_TABLE(MMIATC_WIN_TAB) = 
{
    CLEAR_LCD,
    WIN_PRIO(WIN_ONE_LEVEL),
    WIN_FUNC((uint32)HandleATCWinMsg),        
    CREATE_ANIMATION(MMI_CLIENT_LEFT(0), MMI_CLIENT_TOP(0), MMI_CLIENT_RIGHT(0), MMI_DEFAULT_LINE_HEIGHT(1),
                        MMI_IMAGE_BMP, 0, ATCWIN_ANIMATEBOX_CTRL_ID),
    WIN_ID(MMIATC_WIN_ID),
    END_WIN
};

/**--------------------------------------------------------------------------*
 **                         FUNCTION DEFINITION                              *
 **--------------------------------------------------------------------------*/
/*****************************************************************************/
// 	Description : This functions judge if atc is run
//	Global resource dependence : none
//  Author:      lin.lin
//	Note:
/*****************************************************************************/
BOOLEAN MMIATC_IsAtcRun()
{
    return g_atc_is_run;
}

/*****************************************************************************/
// 	Description : handle the message of full paint
//	Global resource dependence : none
//  Author: lin.lin
//	Note:
/*****************************************************************************/
LOCAL void HandleFullPaintMsg()
{
    GUI_RECT_T rect =  MMI_GetClientRect();// MMI_CLIENT_RECT;
    GUI_RECT_T sk_rect =  MMI_GetSoftKeyRect();// MMI_SOFTKEY_RECT;
    GUI_POINT_T point = {5, 50};
    uint8 text[] = "Atc Sync is Running";
    MAINAPP_UpdateForwardContent(MAIN_LCD_ID,UPDATE_FORWARD_TITLESOFTICON,FALSE);
    GUISOFTKEY_Draw(sk_rect, TXT_NULL, TXT_NULL, STXT_RETURN);
}

/*****************************************************************************/
// 	Description : handle the message of ATC window
//	Global resource dependence : none
//  Author: lin.lin
//	Note:
/*****************************************************************************/
LOCAL MMI_RESULT_E HandleATCWinMsg(
									 MMI_WINDOW_ID_E	win_id, 
									 MMI_MESSAGE_ID_E	msg_id, 
									 DPARAM				param
									 )
{
	MMI_RESULT_E	recode			= MMI_RESULT_TRUE;
    const uint8* anim_ptr = PNULL;
	uint16       title_height = MMI_GetTitleHeight();

	SCI_TRACE_LOW("mmi_atc.c: HandleATCWinMsg(), msg_id = %X", msg_id);

	switch(msg_id)
    {
    case MSG_OPEN_WINDOW:
        if(MMISMS_IsOrderOk() && MMIPB_IsPbReady(FALSE))
        {
            g_atc_is_run = TRUE;
            anim_ptr = MMI_GetLabelImage(IMAGE_IDLE_ANIM_CONNECT);
            GUIANIMATE_SetAnimData(
                ATCWIN_ANIMATEBOX_CTRL_ID,
                0,
                title_height - 6,
                anim_ptr,
                ANIM_ANIM,
                0,
                ANIM_TIME_INTERVAL,
                FALSE//TRUE
                );
            MMIDEFAULT_SetDeepSleep(FALSE);

//            #ifndef  WIN32
         //   SIO_TempChangeMode(0);  //uart0 is used for AT commnd
//            #endif


            s_atcwin_timer_id = MMK_CreateTimer(WINPAINT_TIMER_OUT, TRUE);
        }
        else
        {
//            MMK_CloseWin(win_id);
		    PUBWIN_OpenPromptAlertWin(
                				PUBWIN_SOFTKEY_ONE, 
                				TXT_COM_WAITING,
                				IMAGE_COM_PROMPT_WAIT,
                				MMI_3SECONDS, 
                				PNULL
                				); 
            MMK_CloseWin(win_id);

        }
        break;

    case MSG_FULL_PAINT:
        HandleFullPaintMsg();
        MAINAPP_UpdateForwardContent(MAIN_LCD_ID,UPDATE_FORWARD_TITLESOFTICON,FALSE);
        break;

    case MSG_APP_CANCEL:
        MMK_CloseWin(win_id);
        break;

    case MSG_APP_FLIP:
        MMIDEFAULT_HandleFlipKey(MMIDEFAULT_GetFlipStatus());
        break;

    case MSG_CLOSE_WINDOW:
        g_atc_is_run = FALSE;
        MMIDEFAULT_SetDeepSleep(TRUE);

//        #ifndef  WIN32
     //   SIO_TempChangeMode(1);   //uart0 is used for log/dial
//        #endif

        MMK_StopTimer(s_atcwin_timer_id);
        break;

    case MSG_TIMER:
        if (*(uint8*)param == s_atcwin_timer_id)
        {
            if (MMK_IsFocusWin(win_id))
            {
               MAINAPP_UpdateForwardContent(MAIN_LCD_ID,UPDATE_FORWARD_TITLESOFTICON,FALSE);
            }
            MAIN_SetChargingPicID();
        }
        else
        {
            recode = MMI_RESULT_FALSE;
        }
        break;

    default:
        recode = MMI_RESULT_FALSE;
    }
    return recode;  

}

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -