#include "tjc_screen_event.h" #include #include /*********************************************************************************************************************** * 事件处理变量 * ***********************************************************************************************************************/ static tjc_screen_event_t event; static tjc_processe_event_t m_cb; static uint8_t packetType; static void callback_event_process(tjc_screen_event_t* event); /** * @description: 事件发生判断 * @param {uint8_t*} packet * @return {*} */ void event_process(uint8_t* packet) { packetType = packet[0]; if (kpt_button_event == packetType) { printf("event Button\n"); event.eventId = packet[0]; event.pid = packet[1]; event.bid = packet[2]; callback_event_process(&event); } else if (kpt_sys_event_page_id == packetType || kpt_inputfield_content_change_event1) { printf("event page\n"); event.eventId = packet[0]; event.pid = packet[1]; event.bid = packet[2]; memcpy(event.d.inputfield_content.text, &packet[3], sizeof(event.d.inputfield_content.text)); callback_event_process(&event); } } /** * @description: 执行页面回调函数 * @param {tjc_screen_event_t*} event * @return {*} */ void callback_event_process(tjc_screen_event_t* event) { if (m_cb) m_cb(event); } /** * @description: 注册页面回调函数 * @param {onpagefunc_t} cb * @return {*} */ void regCallBack(onpagefunc_t cb) { m_cb = cb; }