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

📄 pim_main.c

📁 java 1.1 gemini 08_16
💻 C
📖 第 1 页 / 共 3 页
字号:
/*****************************************************************************
*  Copyright Statement:
*  --------------------
*  This software is protected by Copyright and the information contained
*  herein is confidential. The software may not be copied and the information
*  contained herein may not be used or disclosed except with the written
*  permission of MediaTek Inc. (C) 2005
*
*  BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
*  THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
*  RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
*  AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
*  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
*  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
*  NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
*  SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
*  SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
*  THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
*  NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
*  SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
*
*  BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
*  LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
*  AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
*  OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
*  MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
*
*  THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
*  WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
*  LAWS PRINCIPLES.  ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
*  RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
*  THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
*
*****************************************************************************/
/*****************************************************************************
*
* Filename:
* ---------
*
*
* Project:
* --------
*  MAUI
 *
* Description:
* ------------
*
*
* Author:
* -------
*   Eric Chen (mtk01254)
*
*============================================================================
*             HISTORY
 * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
*------------------------------------------------------------------------------
* $Log$
 *
 * removed!
 * removed!
 * 
 *
 * removed!
 * removed!
 * 
 *
 * removed!
 * removed!
 * 
 *
 * removed!
 * removed!
 * 
 *
 * removed!
 * removed!
 * 
 *
 * removed!
 * removed!
 * 
 *
 * removed!
 * removed!
 * 
 *
 * removed!
 * removed!
 * 
 *
 * removed!
 * removed!
 * 
 *
 * removed!
 * removed!
 *
 *
 * removed!
 * removed!
 *
 *
 * removed!
 * removed!
 *
 *
 * removed!
 * removed!
 *
 *
 * removed!
 * removed!
 *
 *
 * removed!
 * removed!
 *
 *
 * removed!
 * removed!
 *
 *
 * removed!
 * removed!
 *
 *
 * removed!
 * removed!
 *
*
*------------------------------------------------------------------------------
* Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
*============================================================================
****************************************************************************/
#include "j2me_custom_option.h"
#if defined(SUPPORT_JSR_75_PIM)
#include <kni.h>
#include <global.h>
#include <defaultLCDUI.h>
#include <nativeGUI.h>

#include "kal_release.h"
#include "stack_common.h"
#include "stack_msgs.h"
#include "task_main_func.h"
#include "app_ltlcom.h"

#include "Conversions.h"
#include "j2me_trace.h"
#include "jpim_interface.h"

#include "pim.h"
#include "app_qp.h"

pim_context_struct pim_cntx;

#define MAX_SUPPORT_FIELD_N 8

static kal_int32 cdbh = -1, edbh = -1, nContact= -1, nEvent= -1, nTodo= -1;
kal_int32 contactFields[MAX_SUPPORT_FIELD_N];
kal_int32 eventFields[MAX_SUPPORT_FIELD_N];
kal_int32 todoFields[MAX_SUPPORT_FIELD_N];


static kal_int32 cadbh = -1, caf = -1, nContactAttr = -1;
kal_int32 contactAttrs[MAX_SUPPORT_FIELD_N];

static kal_int32 _detail_error_code = GENERAL_ERROR;



/*****************************************************************************
 * FUNCTION
 *
 * DESCRIPTION
 *
 * PARAMETERS
 *
 * RETURNS
 *  void
 *****************************************************************************/
kal_int32 pim_getContactAttr(kal_int32 dbhandle, kal_int32 field)
{

    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    kal_int32 i, result;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/

    if( cadbh != dbhandle || caf != field)
    {

        JPIM_DEBUG_1(TRACE_FUNC, FUNC_J2ME_PIM_GETCONTACTFIELD,cdbh, caf, dbhandle, field);

        cadbh = dbhandle;
        caf = field;

        /* TODO: transfer field */

        nContactAttr = MAX_SUPPORT_FIELD_N;

        result = pim_tsfErrCode(CONTACT_LIST, getContactAttr(dbhandle, field, &nContactAttr, contactAttrs));

        if(result != SUCCESS)
        {
            cadbh = caf = nContactAttr = -1;
            return result;
        }

        JPIM_DEBUG_1(TRACE_FUNC, JPIM_LOG_INTEGER,nContactAttr);

        for( i = 0 ; i < nContactAttr; i++)
        {
            JPIM_DEBUG_1(TRACE_FUNC, JPIM_LOG_INTEGER,contactAttrs[i]);
            contactAttrs[i] = pim_tsfFieldCode(CONTACT_ATTR, contactAttrs[i]);
        }
    }

    return SUCCESS;
}

/*****************************************************************************
 * FUNCTION
 *
 * DESCRIPTION
 *
 * PARAMETERS
 *
 * RETURNS
 *  void
 *****************************************************************************/
kal_int32 pim_getContactField(kal_int32 dbhandle)
{

    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    kal_int32 i, result;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/

    if( cdbh != dbhandle)
    {
        JPIM_DEBUG_1(TRACE_FUNC, FUNC_J2ME_PIM_GETCONTACTFIELD,cdbh, dbhandle);

        cdbh = dbhandle;

        nContact = MAX_SUPPORT_FIELD_N;

        result = pim_tsfErrCode(CONTACT_LIST, getContactField(dbhandle, &nContact, contactFields));

        if(result != SUCCESS)
        {
            cdbh = nContact = -1;
            return result;
        }

        JPIM_DEBUG_1(TRACE_FUNC, JPIM_LOG_INTEGER,nContact);

        for( i = 0 ; i < nContact; i++)
        {
            JPIM_DEBUG_1(TRACE_FUNC, JPIM_LOG_INTEGER,contactFields[i]);
            contactFields[i] = pim_tsfFieldCode(CONTACT_LIST, contactFields[i]);
        }
    }

    return SUCCESS;

}

/*****************************************************************************
 * FUNCTION
 *
 * DESCRIPTION
 *
 * PARAMETERS
 *
 * RETURNS
 *  void
 *****************************************************************************/
kal_int32 pim_getEventField(kal_int32 dbhandle)
{

    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    kal_int32 i, j, result;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/

    if( edbh != dbhandle)
    {
        JPIM_DEBUG_1(TRACE_FUNC, FUNC_J2ME_PIM_GETEVENTFIELD,edbh, dbhandle);

        edbh = dbhandle;

        nEvent = MAX_SUPPORT_FIELD_N;

        result = pim_tsfErrCode(EVENT_LIST, getEventField(dbhandle, &nEvent, eventFields));

        if(result != SUCCESS)
        {
            edbh = nEvent = -1;
            return result;
        }

        JPIM_DEBUG_1(TRACE_FUNC, JPIM_LOG_INTEGER,nEvent);

        for( i = 0, j = 0 ; i < nEvent; i++)
        {
            JPIM_DEBUG_1(TRACE_FUNC, JPIM_LOG_INTEGER, eventFields[i]);
            eventFields[j] = pim_tsfFieldCode(EVENT_LIST, eventFields[i]);
            if( eventFields[j] != -1 )
            {
                j++;
            }
        }
        nEvent = j;
    }

    return SUCCESS;

}

/*****************************************************************************
 * FUNCTION
 *
 * DESCRIPTION
 *
 * PARAMETERS
 *
 * RETURNS
 *  void
 *****************************************************************************/
kal_int32 pim_getNContact(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/

    return nContact;
}
/*****************************************************************************
 * FUNCTION
 *
 * DESCRIPTION
 *
 * PARAMETERS
 *
 * RETURNS
 *  void
 *****************************************************************************/

kal_int32 pim_getNEvent(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    return nEvent;
}
/*****************************************************************************
 * FUNCTION
 *
 * DESCRIPTION
 *
 * PARAMETERS
 *
 * RETURNS
 *  void
 *****************************************************************************/

kal_int32 pim_getNTodo(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    return nTodo;
}
/*****************************************************************************
 * FUNCTION
 *
 * DESCRIPTION
 *
 * PARAMETERS
 *
 * RETURNS
 *  void
 *****************************************************************************/

kal_int32 pim_getNContactAttr(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    return nContactAttr;
}

/*****************************************************************************
 * FUNCTION
 *  pim_setDetailError
 * DESCRIPTION
 *
 * PARAMETERS
 *  error       [IN]
 * RETURNS
 *  void
 *****************************************************************************/
void pim_setDetailError(kal_int32 error)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    _detail_error_code = error;
}


/*****************************************************************************
 * FUNCTION
 *  pim_getDetailError
 * DESCRIPTION
 *
 * PARAMETERS
 *  void
 * RETURNS
 *
 *****************************************************************************/
kal_int32 pim_getDetailError(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    kal_int32 old = _detail_error_code;

⌨️ 快捷键说明

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