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

📄 jvm_event_adaptor.c

📁 java 1.1 gemini 08_16
💻 C
📖 第 1 页 / 共 5 页
字号:
        rsk_pressed = KAL_FALSE;
        return;
    }
    if (jui_widget_is_in_menu())
    {
        mmi_pen_point_struct p;
        kal_bool is_selected;

        j2me_lcd_mutex_lock();
        p.x = pos.x;
        if (jui_widget_is_in_fullscreen())
        {
            p.y = pos.y;
        }
        else
        {
            if (pos.y >= MMI_status_bar_height)
            {
                p.y = (S16) (pos.y - MMI_status_bar_height);
            }
            else
            {
                p.y = 0;
            }
        }
        jui_widget_set_current_menu_index(j2me_get_category_index_by_position(MMI_PEN_EVENT_UP, p, &is_selected));
        j2me_lcd_mutex_unlock();
        if (is_selected)
        {
            jvm_insert_select();
        }
        return;
    }
#if defined (__MMI_MAINLCD_128X128__) || defined (__MMI_MAINLCD_128X160__) || defined (MMI_SHOW_STATUS_ICON_IN_TITLE)
    jvm_tp_insert(pos.x, pos.y, MMI_PEN_EVENT_UP);
#else /* defined (__MMI_MAINLCD_128X128__) || defined (__MMI_MAINLCD_128X160__) || defined (MMI_SHOW_STATUS_ICON_IN_TITLE) */ 
    if (!jui_widget_is_in_fullscreen()) /* normal mode, no status icons */
    {
        if (pos.y < MMI_status_bar_height)
        {
            jvm_tp_insert(pos.x, 0, MMI_PEN_EVENT_UP);
        }
        else
        {
            jvm_tp_insert(pos.x, (S16) (pos.y - MMI_status_bar_height), MMI_PEN_EVENT_UP);
        }
    }
    else
    {
        jvm_tp_insert(pos.x, pos.y, MMI_PEN_EVENT_UP);
    }
#endif /* defined (__MMI_MAINLCD_128X128__) || defined (__MMI_MAINLCD_128X160__) || defined (MMI_SHOW_STATUS_ICON_IN_TITLE) */ 
}


/*****************************************************************************
 * FUNCTION
 *  jvm_pen_move_hdlr
 * DESCRIPTION
 *  
 * PARAMETERS
 *  pos     [IN]        
 * RETURNS
 *  void
 *****************************************************************************/
static void jvm_pen_move_hdlr(mmi_pen_point_struct pos)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    kal_trace(TRACE_GROUP_9, FUNC_JVM_PEN_MOVE_HDLR, jui_widget_is_in_menu());
    if (lsk_pressed || rsk_pressed)
    {
        return;
    }
    if (jui_widget_is_in_menu())
    {
        mmi_pen_point_struct p;
        kal_bool is_selected;

        j2me_lcd_mutex_lock();
        p.x = pos.x;
        if (jui_widget_is_in_fullscreen())
        {
            p.y = pos.y;
        }
        else
        {
            if (pos.y >= MMI_status_bar_height)
            {
                p.y = (S16) (pos.y - MMI_status_bar_height);
            }
            else
            {
                p.y = 0;
            }
        }
        jui_widget_set_current_menu_index(j2me_get_category_index_by_position(MMI_PEN_EVENT_MOVE, p, &is_selected));
        j2me_lcd_mutex_unlock();
        return;
    }
#if defined (__MMI_MAINLCD_128X128__) || defined (__MMI_MAINLCD_128X160__) || defined (MMI_SHOW_STATUS_ICON_IN_TITLE)
    jvm_tp_insert(pos.x, pos.y, MMI_PEN_EVENT_MOVE);
#else /* defined (__MMI_MAINLCD_128X128__) || defined (__MMI_MAINLCD_128X160__) || defined (MMI_SHOW_STATUS_ICON_IN_TITLE) */ 
    if (!jui_widget_is_in_fullscreen()) /* normal mode, no status icons */
    {
        if (pos.y < MMI_status_bar_height)
        {
            jvm_tp_insert(pos.x, 0, MMI_PEN_EVENT_MOVE);
        }
        else
        {
            jvm_tp_insert(pos.x, (S16) (pos.y - MMI_status_bar_height), MMI_PEN_EVENT_MOVE);
        }
    }
    else
    {
        jvm_tp_insert(pos.x, pos.y, MMI_PEN_EVENT_MOVE);
    }
#endif /* defined (__MMI_MAINLCD_128X128__) || defined (__MMI_MAINLCD_128X160__) || defined (MMI_SHOW_STATUS_ICON_IN_TITLE) */ 

}


/*****************************************************************************
 * FUNCTION
 *  jvm_pen_abort_hdlr
 * DESCRIPTION
 *  
 * PARAMETERS
 *  pos     [IN]        
 * RETURNS
 *  void
 *****************************************************************************/
static void jvm_pen_abort_hdlr(mmi_pen_point_struct pos)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
#if defined (__MMI_MAINLCD_128X128__) || defined (__MMI_MAINLCD_128X160__) || defined (MMI_SHOW_STATUS_ICON_IN_TITLE)
    jvm_tp_insert(pos.x, pos.y, MMI_PEN_EVENT_ABORT);
#else /* defined (__MMI_MAINLCD_128X128__) || defined (__MMI_MAINLCD_128X160__) || defined (MMI_SHOW_STATUS_ICON_IN_TITLE) */ 
    if (!jui_widget_is_in_fullscreen()) /* normal mode, no status icons */
    {
        if (pos.y < MMI_status_bar_height)
        {
            jvm_tp_insert(pos.x, 0, MMI_PEN_EVENT_ABORT);
        }
        else
        {
            jvm_tp_insert(pos.x, (S16) (pos.y - MMI_status_bar_height), MMI_PEN_EVENT_ABORT);
        }
    }
    else
    {
        jvm_tp_insert(pos.x, pos.y, MMI_PEN_EVENT_ABORT);
    }
#endif /* defined (__MMI_MAINLCD_128X128__) || defined (__MMI_MAINLCD_128X160__) || defined (MMI_SHOW_STATUS_ICON_IN_TITLE) */ 
}


/*****************************************************************************
 * FUNCTION
 *  jvm_pen_repeat_hdlr
 * DESCRIPTION
 *  
 * PARAMETERS
 *  pos     [IN]        
 * RETURNS
 *  void
 *****************************************************************************/
static void jvm_pen_repeat_hdlr(mmi_pen_point_struct pos)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
#if defined (__MMI_MAINLCD_128X128__) || defined (__MMI_MAINLCD_128X160__) || defined (MMI_SHOW_STATUS_ICON_IN_TITLE)
    jvm_tp_insert(pos.x, pos.y, MMI_PEN_EVENT_REPEAT);
#else /* defined (__MMI_MAINLCD_128X128__) || defined (__MMI_MAINLCD_128X160__) || defined (MMI_SHOW_STATUS_ICON_IN_TITLE) */ 
    if (!jui_widget_is_in_fullscreen()) /* normal mode, no status icons */
    {
        if (pos.y < MMI_status_bar_height)
        {
            jvm_tp_insert(pos.x, 0, MMI_PEN_EVENT_REPEAT);
        }
        else
        {
            jvm_tp_insert(pos.x, (S16) (pos.y - MMI_status_bar_height), MMI_PEN_EVENT_REPEAT);
        }
    }
    else
    {
        jvm_tp_insert(pos.x, pos.y, MMI_PEN_EVENT_REPEAT);
    }
#endif /* defined (__MMI_MAINLCD_128X128__) || defined (__MMI_MAINLCD_128X160__) || defined (MMI_SHOW_STATUS_ICON_IN_TITLE) */ 
}


/*****************************************************************************
 * FUNCTION
 *  jvm_pen_long_tap_hdlr
 * DESCRIPTION
 *  
 * PARAMETERS
 *  pos     [IN]        
 * RETURNS
 *  void
 *****************************************************************************/
static void jvm_pen_long_tap_hdlr(mmi_pen_point_struct pos)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
#if defined (__MMI_MAINLCD_128X128__) || defined (__MMI_MAINLCD_128X160__) || defined (MMI_SHOW_STATUS_ICON_IN_TITLE)
    jvm_tp_insert(pos.x, pos.y, MMI_PEN_EVENT_LONG_TAP);
#else /* defined (__MMI_MAINLCD_128X128__) || defined (__MMI_MAINLCD_128X160__) || defined (MMI_SHOW_STATUS_ICON_IN_TITLE) */ 
    if (!jui_widget_is_in_fullscreen()) /* normal mode, no status icons */
    {
        if (pos.y < MMI_status_bar_height)
        {
            jvm_tp_insert(pos.x, 0, MMI_PEN_EVENT_LONG_TAP);
        }
        else
        {
            jvm_tp_insert(pos.x, (S16) (pos.y - MMI_status_bar_height), MMI_PEN_EVENT_LONG_TAP);
        }
    }
    else
    {
        jvm_tp_insert(pos.x, pos.y, MMI_PEN_EVENT_LONG_TAP);
    }
#endif /* defined (__MMI_MAINLCD_128X128__) || defined (__MMI_MAINLCD_128X160__) || defined (MMI_SHOW_STATUS_ICON_IN_TITLE) */ 
}

/*
 * 
 * static void jvm_pen_stroke_down_hdlr(mmi_pen_point_struct pos){
 * // TODO:
 * }
 * static void jvm_pen_stroke_move_hdlr(mmi_pen_point_struct pos){
 * // TODO:
 * }
 * 
 * static void jvm_pen_stroke_up_hdlr(mmi_pen_point_struct pos){
 * // TODO:
 * }
 */


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

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    jvm_tp_flush();
    wgui_register_pen_down_handler(jvm_pen_down_hdlr);
    wgui_register_pen_up_handler(jvm_pen_up_hdlr);
    wgui_register_pen_move_handler(jvm_pen_move_hdlr);
    wgui_register_pen_long_tap_handler(jvm_pen_long_tap_hdlr);
    wgui_register_pen_repeat_handler(jvm_pen_repeat_hdlr);
    wgui_register_pen_abort_handler(jvm_pen_abort_hdlr);
    //mmi_pen_register_stroke_down_handler(jvm_pen_stroke_down_hdlr);
    //mmi_pen_register_stroke_move_handler(jvm_pen_stroke_move_hdlr);
    //mmi_pen_register_stroke_up_handler(jvm_pen_stroke_up_hdlr);
}


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

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    wgui_register_general_pen_handler();
    /* wgui_register_general_pen_stroke_handler(); */
}

#else /* __MMI_TOUCH_SCREEN__ */ 


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

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


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

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
}
#endif /* __MMI_TOUCH_SCREEN__ */ 


/*****************************************************************************
 * FUNCTION
 *  jvm_send_keypad_notify_ind
 * DESCRIPTION
 *  
 * PARAMETERS
 *  void
 * RETURNS
 *  void
 *****************************************************************************/
void jvm_send_keypad_notify_ind(void)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/
    ilm_struct *send_ilm;

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/
    send_ilm = (ilm_struct*) allocate_ilm(MOD_MMI);
    send_ilm->local_para_ptr = NULL;
    send_ilm->peer_buff_ptr = NULL;
    send_ilm->msg_id = MSG_ID_JAVA_KEYPAD_NOTIFY_IND;
    SEND_ILM(MOD_MMI, MOD_J2ME, MMI_J2ME_SAP, send_ilm);
}

⌨️ 快捷键说明

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