亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? touchscreen.c

?? MTK6225
?? C
?? 第 1 頁 / 共 5 頁
字號:
/*****************************************************************************
*  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:
 * ---------
 *   TouchScreen.c
 *
 * Project:
 * --------
 *   MAUI
 *
 * Description:
 * ------------
 *   Low-level Touch Screen API - interface between driver or PC simulator
 *
 * Author:
 * -------
 * -------
 *
 *============================================================================
 *             HISTORY
 * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
 *------------------------------------------------------------------------------
 * 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!
 * 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!
 * 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 "MMI_features.h"

/* Save stroke data in filesystem for analysis of recognition rate */
#undef MMI_PEN_SAVE_STROKE_IN_FILE

/*****************************************************************************
 * In case that handwriting area is overlapped with an editor, we need to 
 * define a way to move cursor inside the editor.
 *
 * Three approaches are supported:
 *
 * 1. !defined(MMI_PEN_SUPPORT_STROKE_LONGTAP) and single-block --> (MMI_PEN_STROKE_MIN_OFFSET > 0)
 *
 * In the first stroke (after mmi_pen_begin_strokes_of_character()), 
 * stroke down in handwriting area is translated to Pen Down event first until pen is 
 * moved across predefined distance MMI_PEN_STROKE_MIN_OFFSET.
 *
 * For example, driver events are converted to MMI events in the first stroke like:
 *
 * STROKE_DOWN, STROKE_UP --> MMI_PEN_EVENT_DOWN, MMI_PEN_EVENT_UP
 *       (stroke buffer is empty, handwriting area is reset to default)
 *
 * STROKE_DOWN, STROKE_MOVE (< MMI_PEN_STROKE_MIN_OFFSET), STROKE_UP --> 
 *       MMI_PEN_EVENT_DOWN, MMI_PEN_EVENT_UP
 *       (the STROKE_MOVE before STROKE_UP is dropped, 
 *        stroke buffer is empty, handwriting area is reset to default)
 *
 * STROKE_DOWN, STROKE_MOVE (> MMI_PEN_STROKE_MIN_OFFSET), STROKE_UP -->
 *       MMI_PEN_EVENT_DOWN, MMI_PEN_EVENT_ABORT, MMI_PEN_STROKE_DOWN, 
 *                           MMI_PEN_STROKE_MOVE, MMI_PEN_STROKE_UP
 *       (The original Pen Down event is aborted, and the first stroke is created)
 *
 * 2. !defined(MMI_PEN_SUPPORT_STROKE_LONGTAP) and multi-block --> 
 * 
 * Handwriting area and non-handwriting area are not overlapped. This is the simplest case.
 *
 * Unnecessary to translate driver pen events.
 *
 * 3. defined(MMI_PEN_SUPPORT_STROKE_LONGTAP) --> (MMI_PEN_STROKE_MIN_OFFSET == 0)
 *
 * In the first stroke (after mmi_pen_begin_strokes_of_character()), 
 * stroke down are translated to Stroke Down event directly. However, when pen stays at the 
 * pen down position within MMI_PEN_SKIP_STROKE_LONGTAP_OFFSET after MMI_PEN_STROKE_LONGTAP_TIME,
 * Stroke LongTap event is generated. Editor will interpret the subsequent 
 * Stroke Move events as editor cursor control commands.
 *
 * For example, driver events are converted to MMI events in the first stroke like:
 *
 * STROKE_DOWN, STROKE_UP --> MMI_PEN_STROKE_DOWN, MMI_PEN_STROKE_UP
 *       (The first stroke is created, and stroke buffer is not empty.)
 *
 * STROKE_DOWN, STROKE_MOVE, STROKE_UP --> 
 *       MMI_PEN_STROKE_DOWN, MMI_PEN_STROKE_MOVE, MMI_PEN_STROKE_UP
 *       (The first stroke is created, and stroke buffer is not empty.)
 *
 * STROKE_DOWN, STROKE_MOVE (1st), STROKE_LONGTAP, STROKE_MOVE (2nd), STROKE_UP -->
 *       MMI_PEN_STROKE_DOWN, MMI_PEN_STROKE_MOVE (1st), MMI_PEN_STROKE_LONGTAP, 
 *       MMI_PEN_STROKE_MOVE (2nd), MMI_PEN_STROKE_UP
 *       (The first stroke is aborted, handwriting area is reset to default, 
 *        Stroke buffer is cleared.)
 *       (NOTE: after STROKE_LONGTAP, we decrease the sampling rate to MMI_PEN_SAMPLING_PERIOD_1)
 *
 * Note that after the first stroke is created, STROKE_LONGTAP events generated by driver are ignored.
 *
 ****************************************************************************/

#if ( defined(__MMI_TOUCH_SCREEN__) || defined(__MMI_HANDWRITING_PAD__)) && !defined(__MTK_TARGET__)

/*****************************************************************************
 *
 * WIN32 integration 
 * PC Simulator & MODIS
 *
 ****************************************************************************/

#include "stdC.h"
#include "PixtelDataTypes.h"
#include "TimerEvents.h"
#include "KeyBrd.h"
#include "FrameworkStruct.h"
#include "EventsGprot.h"
#include "EventsDcl.h"
#include "EventsDef.h"
#include "gui_data_types.h"
#include "gui.h"
#include "IdleAppProt.h"

#include "kal_non_specific_general_types.h"
#include "TouchScreenGprot.h"
#include "DebugInitDef.h"

#include "lcd_sw_rnd.h" /* LCD width/height */
#include "time.h"       /* time() */

#include "gdi_include.h"
#include "ScreenRotationGprot.h"

#include "touch_panel_custom.h" /* get handwriting pad setting */

#if !defined(MMI_ON_WIN32)
static void mmi_pen_MODIS_start_timer(void);
static void mmi_pen_MODIS_flush_queue(void);
#endif /* !defined(MMI_ON_WIN32) */ 

/***************************************************************************** 
* Define
*****************************************************************************/

#define MMI_PEN_MAX_HANDWRITING_REGION (3)

#undef MMI_PEN_UNIT_TEST

/***************************************************************************** 
* Typedef 
*****************************************************************************/

typedef struct
{
    /* mmi_pen_block() & mmi_pen_unblock() */
    U32 is_blocked:1;

    /* mmi_pen_enable() & mmi_pen_disable() */
    U32 is_enabled:1;

    /* mmi_pen_reset() set 'is_pen_down' to 0 */
    U32 is_pen_down:1;

    /* The current pen down/move/up is a stroke */
    U32 is_stroke_event:1;

    /* Checking offset with g_pen_stroke_min_offset */
    U32 is_pending_stroke_event:1;

    /* A first stroke is created. This flag is cleared in mmi_pen_begin_strokes_of_character() */
    U32 is_stroke_created:1;

    /* Stroke LongTap event is generated. */
    U32 is_stroke_longtap_event_generated:1;

    /* Set in mmi_pen_end_strokes_of_character(), 
       do not enqueue incoming strokes until mmi_pen_begin_strokes_of_character() is invoked again */
    U32 is_all_stroke_finished:1;

    /* wait for 1: pen long-tap 0: pen repeat (event-based) */
    U32 is_waiting_long_tap_event:1;

    /* 
     * Set by mmi_pen_change_handwriting_area() and mmi_pen_stop_capture_strokes().
     * Close stroke and reset touch screen when pen is up. 
     */
    U32 reset_stroke_on_pen_up:1;

    /* The position where pen is tapped down */
    mmi_pen_point_struct pen_down_pos;

    /* Block index of handwriting area */
    S32 stroke_down_block_index;

    /* The current pen position */
    mmi_pen_point_struct pen_current_pos;

    /* For Pen Repeat */
    mmi_pen_point_struct pen_repeat_origin_pos;

    /* For stroke */
    S32 num_points_queued;
} mmi_pen_context_struct;

/***************************************************************************** 
* Local Variable
*****************************************************************************/

static mmi_pen_context_struct g_pen_cntx;

static mmi_pen_hdlr g_pen_event_table[MMI_PEN_EVENT_TYPE_MAX];
static mmi_pen_hdlr g_pen_stroke_table[MMI_PEN_STROKE_TYPE_MAX];
static void (*g_pen_stroke_pre_move) (void);
static void (*g_pen_stroke_post_move) (void);

static int g_pen_num_stroke_area;   /* 0 if stroke area is not enabled */
static mmi_pen_handwriting_area_struct g_pen_stroke_areas[MMI_PEN_MAX_HANDWRITING_REGION];
static mmi_pen_handwriting_area_struct g_pen_ext_stroke_area;
static int g_pen_stroke_min_offset;
static S32 g_pen_stroke_max_points;
static mmi_pen_point_struct *g_pen_stroke_points;

/***************************************************************************** 
* Local Function
*****************************************************************************/

static void mmi_pen_MODIS_tp_ind(void *);

/*****************************************************************************
 * FUNCTION
 *  mmi_pen_simulator_fix_point_bound
 * DESCRIPTION
 *  
 * PARAMETERS
 *  x       [IN/OUT]     
 *  y       [INT/OUT]     
 * RETURNS
 *  void
 *****************************************************************************/
static void mmi_pen_simulator_fix_point_bound(S16 *x, S16 *y, MMI_BOOL check_multi_block)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
婷婷国产v国产偷v亚洲高清| eeuss鲁一区二区三区| 国产麻豆精品在线观看| 91麻豆产精品久久久久久| 91精品中文字幕一区二区三区| 国产精品久久久久久久久免费桃花| 麻豆精品视频在线| 欧美日韩在线亚洲一区蜜芽| 国产精品久久久久三级| 精品一区二区免费在线观看| 欧美精品国产精品| 依依成人综合视频| 色哟哟日韩精品| 国产精品三级久久久久三级| 国产夫妻精品视频| 337p粉嫩大胆色噜噜噜噜亚洲| 日韩高清国产一区在线| 欧美日韩中文精品| 亚洲精品视频在线| 97精品电影院| 日韩一区中文字幕| 91亚洲国产成人精品一区二三| 中文在线资源观看网站视频免费不卡 | 日韩你懂的电影在线观看| 亚洲国产精品视频| 欧美日韩国产大片| 午夜在线电影亚洲一区| 欧美日本视频在线| 天天射综合影视| 欧美电影在线免费观看| 午夜影院久久久| 日韩一卡二卡三卡国产欧美| 日韩av一区二区在线影视| 欧美精品一卡二卡| 亚洲一级二级在线| 日韩一区二区视频| 精品一区二区综合| 国产欧美综合在线| 色哟哟日韩精品| 日韩一区精品视频| 精品久久久久久久久久久久久久久| 美女在线视频一区| 欧美高清在线精品一区| 高清成人在线观看| 玉足女爽爽91| 欧美一区二区私人影院日本| 久久国产生活片100| 国产视频一区二区在线观看| www.成人网.com| 亚洲午夜三级在线| 精品国产一区二区三区久久影院 | 国产三级欧美三级| 懂色中文一区二区在线播放| 亚洲免费在线观看视频| 欧美视频一区二| 久草在线在线精品观看| 国产精品国产三级国产三级人妇| 欧美中文一区二区三区| 蜜臀精品一区二区三区在线观看| 日本一区二区免费在线观看视频| 色先锋资源久久综合| 美女性感视频久久| 欧美国产日本韩| 欧美区一区二区三区| 国产一区二区三区久久悠悠色av| 日韩一区在线播放| 欧美成人激情免费网| 99re成人精品视频| 美日韩黄色大片| 伊人性伊人情综合网| 精品日韩在线观看| 欧美性色黄大片| 国产成人一区二区精品非洲| 婷婷夜色潮精品综合在线| 中文字幕免费一区| 日韩精品专区在线影院观看 | 在线综合亚洲欧美在线视频| 高清在线不卡av| 日本视频中文字幕一区二区三区| 亚洲国产精品高清| 欧美一级高清片在线观看| 色欧美乱欧美15图片| 国产精品一区二区在线播放| 婷婷成人激情在线网| 中文字幕中文字幕中文字幕亚洲无线| 制服丝袜亚洲播放| 日本精品视频一区二区| 国产成人午夜高潮毛片| 蜜桃一区二区三区在线观看| 亚洲综合清纯丝袜自拍| 国产精品久久久久久久久免费丝袜 | 欧美成人在线直播| 欧美日韩另类一区| 91极品美女在线| www.亚洲人| 国产91在线|亚洲| 黄色日韩三级电影| 麻豆精品蜜桃视频网站| 日韩成人精品在线| 日韩激情视频在线观看| 天天影视网天天综合色在线播放| 亚洲欧美激情插| 最新欧美精品一区二区三区| 国产拍揄自揄精品视频麻豆| 久久嫩草精品久久久精品| 2021中文字幕一区亚洲| 日韩免费一区二区| 欧美sm极限捆绑bd| 精品久久久影院| 精品久久久久久无| 91精品国产高清一区二区三区蜜臀| 91片在线免费观看| 欧美一级视频精品观看| 欧美一二三四区在线| 欧美一级高清大全免费观看| 日韩一区二区三区在线观看 | 在线亚洲一区观看| 一本色道久久加勒比精品| 一本到高清视频免费精品| 99精品视频在线观看| 97se亚洲国产综合在线| 色一情一乱一乱一91av| 欧美日韩一区二区三区视频| 91精品国产91久久久久久一区二区 | 91香蕉视频污在线| 日本福利一区二区| 欧美精三区欧美精三区| 91精品国产一区二区人妖| 日韩精品一区二区三区swag | 国产成人av一区二区三区在线观看| 国产一区二区伦理| www.综合网.com| 色88888久久久久久影院野外| 在线免费视频一区二区| 日韩欧美一级二级三级久久久| 精品国产网站在线观看| 国产亚洲精久久久久久| 中文字幕日韩精品一区| 视频在线观看一区二区三区| 精品一区二区在线播放| 国产伦精品一区二区三区在线观看 | 欧美伊人久久久久久久久影院| 欧美撒尿777hd撒尿| 久久综合久色欧美综合狠狠| 国产欧美一区二区精品秋霞影院 | 色婷婷精品大视频在线蜜桃视频| 欧美日本在线一区| 中文乱码免费一区二区| 亚洲国产裸拍裸体视频在线观看乱了| 男男视频亚洲欧美| 99re视频精品| 精品成人一区二区三区四区| 亚洲视频在线观看三级| 蜜臂av日日欢夜夜爽一区| 99久久综合精品| 欧美一区二区三区视频在线观看| 国产日韩欧美a| 日韩av电影一区| 色一情一乱一乱一91av| 久久精品亚洲国产奇米99| 亚洲国产精品久久一线不卡| 成人免费看视频| 欧美va亚洲va| 丝袜美腿亚洲一区| 91论坛在线播放| 久久综合色鬼综合色| 日本午夜一区二区| 色综合婷婷久久| 国产欧美精品一区二区色综合 | 精品国产91亚洲一区二区三区婷婷 | 2欧美一区二区三区在线观看视频| 亚洲人吸女人奶水| 粉嫩aⅴ一区二区三区四区五区| 欧美日韩国产bt| 亚洲欧美日韩一区二区三区在线观看| 国产专区综合网| 91精品国产91久久久久久最新毛片 | 中文字幕乱码久久午夜不卡| 日本成人在线电影网| 欧美婷婷六月丁香综合色| 久久久久久久久岛国免费| 午夜影院久久久| 欧洲国内综合视频| 亚洲日本在线a| 成人av网在线| 国产日韩精品一区二区浪潮av| 免费的成人av| 日韩一级免费观看| 麻豆精品精品国产自在97香蕉| 欧美日韩免费电影| 五月激情综合色| 69p69国产精品| 视频一区中文字幕| 欧美精品久久天天躁| 亚洲成人你懂的| 欧美主播一区二区三区美女| 一区二区欧美精品| 欧美日韩国产片| 奇米精品一区二区三区在线观看| 91精品国产丝袜白色高跟鞋|