?? touch_panel_custom.c
字號:
/*
* control area:
* The points of the region need to be successive and end at {-1,-1}
*
* TP_SCREEN_COL_0
* | TP_SCREEN_COL_1
* | | TP_SCREEN_COL_2
* | | | TP_SCREEN_COL_3
* v v v v
* +-----+-----+-----+ <-- TP_SCREEN_ROW_0
* | LSK | ^ | RSK |
* +-----+-----+-----+ <-- TP_SCREEN_ROW_1
* | <-- | v | --> |
* +-----+-----+-----+ <-- TP_SCREEN_ROW_2
* |Send | C | End |
* +-----+-----+-----+ <-- TP_SCREEN_ROW_3
* | 1 | 2 | 3 |
* +-----+-----+-----+ <-- TP_SCREEN_ROW_4
* | 4 | 5 | 6 |
* +-----+-----+-----+ <-- TP_SCREEN_ROW_5
* | 7 | 8 | 9 |
* +-----+-----+-----+ <-- TP_SCREEN_ROW_6
* | * | 0 | # |
* +-----+-----+-----+ <-- TP_SCREEN_ROW_7
*
* handwriting area:
* The region must be the rectangle and the points should be successive and end at {-1,-1}
*/
const mmi_pen_point_struct tp_lsk_region[]= {
{TP_SCREEN_COL_0, TP_SCREEN_ROW_0},
{TP_SCREEN_COL_1-1, TP_SCREEN_ROW_0},
{TP_SCREEN_COL_1-1, TP_SCREEN_ROW_1-1},
{TP_SCREEN_COL_0, TP_SCREEN_ROW_1-1},
{-1,-1}
};
const mmi_pen_point_struct tp_up_arrow_region[]={
{TP_SCREEN_COL_1, TP_SCREEN_ROW_0},
{TP_SCREEN_COL_2-1, TP_SCREEN_ROW_0},
{TP_SCREEN_COL_2-1, TP_SCREEN_ROW_1-1},
{TP_SCREEN_COL_1, TP_SCREEN_ROW_1-1},
{-1,-1}
};
const mmi_pen_point_struct tp_rsk_region[]={
{TP_SCREEN_COL_2, TP_SCREEN_ROW_0},
{TP_SCREEN_COL_3-1, TP_SCREEN_ROW_0},
{TP_SCREEN_COL_3-1, TP_SCREEN_ROW_1-1},
{TP_SCREEN_COL_2, TP_SCREEN_ROW_1-1},
{-1,-1}
};
const mmi_pen_point_struct tp_left_arrow_region[]= {
{TP_SCREEN_COL_0, TP_SCREEN_ROW_1},
{TP_SCREEN_COL_1-1, TP_SCREEN_ROW_1},
{TP_SCREEN_COL_1-1, TP_SCREEN_ROW_2-1},
{TP_SCREEN_COL_0, TP_SCREEN_ROW_2-1},
{-1,-1}
};
const mmi_pen_point_struct tp_down_arrow_region[]={
{TP_SCREEN_COL_1, TP_SCREEN_ROW_1},
{TP_SCREEN_COL_2-1, TP_SCREEN_ROW_1},
{TP_SCREEN_COL_2-1, TP_SCREEN_ROW_2-1},
{TP_SCREEN_COL_1, TP_SCREEN_ROW_2-1},
{-1,-1}
};
const mmi_pen_point_struct tp_right_arrow_region[]={
{TP_SCREEN_COL_2, TP_SCREEN_ROW_1},
{TP_SCREEN_COL_3-1, TP_SCREEN_ROW_1},
{TP_SCREEN_COL_3-1, TP_SCREEN_ROW_2-1},
{TP_SCREEN_COL_2, TP_SCREEN_ROW_2-1},
{-1,-1}
};
const mmi_pen_point_struct tp_send_region[]= {
{TP_SCREEN_COL_0, TP_SCREEN_ROW_2},
{TP_SCREEN_COL_1-1, TP_SCREEN_ROW_2},
{TP_SCREEN_COL_1-1, TP_SCREEN_ROW_3-1},
{TP_SCREEN_COL_0, TP_SCREEN_ROW_3-1},
{-1,-1}
};
const mmi_pen_point_struct tp_clean_region[]={
{TP_SCREEN_COL_1, TP_SCREEN_ROW_2},
{TP_SCREEN_COL_2-1, TP_SCREEN_ROW_2},
{TP_SCREEN_COL_2-1, TP_SCREEN_ROW_3-1},
{TP_SCREEN_COL_1, TP_SCREEN_ROW_3-1},
{-1,-1}
};
const mmi_pen_point_struct tp_end_region[]={
{TP_SCREEN_COL_2, TP_SCREEN_ROW_2},
{TP_SCREEN_COL_3-1, TP_SCREEN_ROW_2},
{TP_SCREEN_COL_3-1, TP_SCREEN_ROW_3-1},
{TP_SCREEN_COL_2, TP_SCREEN_ROW_3-1},
{-1,-1}
};
const mmi_pen_point_struct tp_1_region[]= {
{TP_SCREEN_COL_0, TP_SCREEN_ROW_3},
{TP_SCREEN_COL_1-1, TP_SCREEN_ROW_3},
{TP_SCREEN_COL_1-1, TP_SCREEN_ROW_4-1},
{TP_SCREEN_COL_0, TP_SCREEN_ROW_4-1},
{-1,-1}
};
const mmi_pen_point_struct tp_2_region[]={
{TP_SCREEN_COL_1, TP_SCREEN_ROW_3},
{TP_SCREEN_COL_2-1, TP_SCREEN_ROW_3},
{TP_SCREEN_COL_2-1, TP_SCREEN_ROW_4-1},
{TP_SCREEN_COL_1, TP_SCREEN_ROW_4-1},
{-1,-1}
};
const mmi_pen_point_struct tp_3_region[]={
{TP_SCREEN_COL_2, TP_SCREEN_ROW_3},
{TP_SCREEN_COL_3-1, TP_SCREEN_ROW_3},
{TP_SCREEN_COL_3-1, TP_SCREEN_ROW_4-1},
{TP_SCREEN_COL_2, TP_SCREEN_ROW_4-1},
{-1,-1}
};
const mmi_pen_point_struct tp_4_region[]= {
{TP_SCREEN_COL_0, TP_SCREEN_ROW_4},
{TP_SCREEN_COL_1-1, TP_SCREEN_ROW_4},
{TP_SCREEN_COL_1-1, TP_SCREEN_ROW_5-1},
{TP_SCREEN_COL_0, TP_SCREEN_ROW_5-1},
{-1,-1}
};
const mmi_pen_point_struct tp_5_region[]={
{TP_SCREEN_COL_1, TP_SCREEN_ROW_4},
{TP_SCREEN_COL_2-1, TP_SCREEN_ROW_4},
{TP_SCREEN_COL_2-1, TP_SCREEN_ROW_5-1},
{TP_SCREEN_COL_1, TP_SCREEN_ROW_5-1},
{-1,-1}
};
const mmi_pen_point_struct tp_6_region[]={
{TP_SCREEN_COL_2, TP_SCREEN_ROW_4},
{TP_SCREEN_COL_3-1, TP_SCREEN_ROW_4},
{TP_SCREEN_COL_3-1, TP_SCREEN_ROW_5-1},
{TP_SCREEN_COL_2, TP_SCREEN_ROW_5-1},
{-1,-1}
};
const mmi_pen_point_struct tp_7_region[]= {
{TP_SCREEN_COL_0, TP_SCREEN_ROW_5},
{TP_SCREEN_COL_1-1, TP_SCREEN_ROW_5},
{TP_SCREEN_COL_1-1, TP_SCREEN_ROW_6-1},
{TP_SCREEN_COL_0, TP_SCREEN_ROW_6-1},
{-1,-1}
};
const mmi_pen_point_struct tp_8_region[]={
{TP_SCREEN_COL_1, TP_SCREEN_ROW_5},
{TP_SCREEN_COL_2-1, TP_SCREEN_ROW_5},
{TP_SCREEN_COL_2-1, TP_SCREEN_ROW_6-1},
{TP_SCREEN_COL_1, TP_SCREEN_ROW_6-1},
{-1,-1}
};
const mmi_pen_point_struct tp_9_region[]={
{TP_SCREEN_COL_2, TP_SCREEN_ROW_5},
{TP_SCREEN_COL_3-1, TP_SCREEN_ROW_5},
{TP_SCREEN_COL_3-1, TP_SCREEN_ROW_6-1},
{TP_SCREEN_COL_2, TP_SCREEN_ROW_6-1},
{-1,-1}
};
const mmi_pen_point_struct tp_star_region[]= {
{TP_SCREEN_COL_0, TP_SCREEN_ROW_6},
{TP_SCREEN_COL_1-1, TP_SCREEN_ROW_6},
{TP_SCREEN_COL_1-1, TP_SCREEN_ROW_7-1},
{TP_SCREEN_COL_0, TP_SCREEN_ROW_7-1},
{-1,-1}
};
const mmi_pen_point_struct tp_0_region[]={
{TP_SCREEN_COL_1, TP_SCREEN_ROW_6},
{TP_SCREEN_COL_2-1, TP_SCREEN_ROW_6},
{TP_SCREEN_COL_2-1, TP_SCREEN_ROW_7-1},
{TP_SCREEN_COL_1, TP_SCREEN_ROW_7-1},
{-1,-1}
};
const mmi_pen_point_struct tp_hash_region[]={
{TP_SCREEN_COL_2, TP_SCREEN_ROW_6},
{TP_SCREEN_COL_3-1, TP_SCREEN_ROW_6},
{TP_SCREEN_COL_3-1, TP_SCREEN_ROW_7-1},
{TP_SCREEN_COL_2, TP_SCREEN_ROW_7-1},
{-1,-1}
};
const mmi_pen_point_struct tp_extra_func_region[]={
{TP_SCREEN_COL_0, TP_SCREEN_ROW_7},
{TP_SCREEN_COL_0+TP_SCREEN_COL_3/4, TP_SCREEN_ROW_7+TP_SCREEN_ROW_H/2},
{TP_SCREEN_COL_0+TP_SCREEN_COL_3/2, TP_SCREEN_ROW_7+TP_SCREEN_ROW_H},
{TP_SCREEN_COL_0+TP_SCREEN_COL_3*3/4, TP_SCREEN_ROW_7+TP_SCREEN_ROW_H/2},
{TP_SCREEN_COL_3-1, TP_SCREEN_ROW_7},
{-1,-1}
};
const mmi_pen_point_struct tp_handwriting_region[]={
{TP_SCREEN_COL_0, TP_SCREEN_ROW_2},
{TP_SCREEN_COL_1-1, TP_SCREEN_ROW_2},
{TP_SCREEN_COL_1-1, TP_SCREEN_ROW_8-1},
{TP_SCREEN_COL_0, TP_SCREEN_ROW_8-1},
{-1,-1}
};
/*
* The area table information...
* 1. tp_area_id_enum
*
* 2. flag
* TP_HANDWRITING_AREA - it is the handwriting area
* TP_CONTROL_AREA - it is the control area
* TP_MAPPING_KEY - for control area only; Translate the pen event to
* the key event
* TP_CUSTOM_HANDLE - the custom want to handler pen event by themselves.
* TP_HANDWRITING_SUPPORTS_FULL_AREA - extend handwriting area to full touch
* pad area when the first stroke down.
*
* 3. region
* control area:
* The points of the region need to be successive and end at {-1,-1}
*
* handwriting area:
* The region must be the rectangle and the points should be in clock wise order
*
* 4. pen_handler_table
* NULL - use the default handler
* Others - the customers provide the special handlers
*/
const tp_area_struct tp_area_table[TP_AREA_MAX_NUM] = {
/* Handwriting Area */
{
TP_AREA_HANDWRITING,
TP_HANDWRITING_AREA|TP_HANDWRITING_SUPPORTS_FULL_AREA,
tp_handwriting_region,
NULL
},
/* Control Area */
{
TP_CONTROL_AREA_LSK,
TP_CONTROL_AREA|TP_MAPPING_KEY|DEVICE_KEY_SK_LEFT,
tp_lsk_region,
NULL
},
{
TP_CONTROL_AREA_UP_ARROW,
TP_CONTROL_AREA|TP_MAPPING_KEY|DEVICE_KEY_UP,
tp_up_arrow_region,
NULL
},
{
TP_CONTROL_AREA_RSK,
TP_CONTROL_AREA|TP_MAPPING_KEY|DEVICE_KEY_SK_RIGHT,
tp_rsk_region,
NULL
},
{
TP_CONTROL_AREA_LEFT_ARROW,
TP_CONTROL_AREA|TP_MAPPING_KEY|DEVICE_KEY_LEFT,
tp_left_arrow_region,
NULL
},
{
TP_CONTROL_AREA_DOWN_ARROW,
TP_CONTROL_AREA|TP_MAPPING_KEY|DEVICE_KEY_DOWN,
tp_down_arrow_region,
NULL
},
{
TP_CONTROL_AREA_RIGHT_ARROW,
TP_CONTROL_AREA|TP_MAPPING_KEY|DEVICE_KEY_RIGHT,
tp_right_arrow_region,
NULL
},
{
TP_CONTROL_AREA_SEND,
TP_CONTROL_AREA|TP_MAPPING_KEY|DEVICE_KEY_SEND,
tp_send_region,
NULL
},
{
TP_CONTROL_AREA_CLEAN,
TP_CONTROL_AREA|TP_MAPPING_KEY|DEVICE_KEY_CLEAR,
tp_clean_region,
NULL
},
{
TP_CONTROL_AREA_END,
TP_CONTROL_AREA|TP_MAPPING_KEY|DEVICE_KEY_END,
tp_end_region,
NULL
},
{
TP_CONTROL_AREA_1,
TP_CONTROL_AREA|TP_MAPPING_KEY|DEVICE_KEY_1,
tp_1_region,
NULL
},
{
TP_CONTROL_AREA_2,
TP_CONTROL_AREA|TP_MAPPING_KEY|DEVICE_KEY_2,
tp_2_region,
NULL
},
{
TP_CONTROL_AREA_3,
TP_CONTROL_AREA|TP_MAPPING_KEY|DEVICE_KEY_3,
tp_3_region,
NULL
},
{
TP_CONTROL_AREA_4,
TP_CONTROL_AREA|TP_MAPPING_KEY|DEVICE_KEY_4,
tp_4_region,
NULL
},
{
TP_CONTROL_AREA_5,
TP_CONTROL_AREA|TP_MAPPING_KEY|DEVICE_KEY_5,
tp_5_region,
NULL
},
{
TP_CONTROL_AREA_6,
TP_CONTROL_AREA|TP_MAPPING_KEY|DEVICE_KEY_6,
tp_6_region,
NULL
},
{
TP_CONTROL_AREA_7,
TP_CONTROL_AREA|TP_MAPPING_KEY|DEVICE_KEY_7,
tp_7_region,
NULL
},
{
TP_CONTROL_AREA_8,
TP_CONTROL_AREA|TP_MAPPING_KEY|DEVICE_KEY_8,
tp_8_region,
NULL
},
{
TP_CONTROL_AREA_9,
TP_CONTROL_AREA|TP_MAPPING_KEY|DEVICE_KEY_9,
tp_9_region,
NULL
},
{
TP_CONTROL_AREA_STAR,
TP_CONTROL_AREA|TP_MAPPING_KEY|DEVICE_KEY_STAR,
tp_star_region,
NULL
},
{
TP_CONTROL_AREA_0,
TP_CONTROL_AREA|TP_MAPPING_KEY|DEVICE_KEY_0,
tp_0_region,
NULL
},
{
TP_CONTROL_AREA_HASH,
TP_CONTROL_AREA|TP_MAPPING_KEY|DEVICE_KEY_HASH,
tp_hash_region,
NULL
},
{
TP_CONTROL_AREA_EXTRA_FUNC,
TP_CONTROL_AREA|TP_CUSTOM_HANDLE,
tp_extra_func_region,
custom_extra_func_hdlr
},
};
#endif /* __MMI_HANDWRITING_PAD__ */
#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -