1. 页面管理切换事件支持参数

This commit is contained in:
coffee 2025-08-08 20:23:29 +08:00
parent 93e3d54f84
commit a2510a8378

View File

@ -32,20 +32,20 @@
#define UIPAGE_CMD cmd
#if 1
#define UIPAGE_CASE(page, func) case page: { LogD("current page[%d], event[%s]", page, #page); func(); LogD("event End"); } break
#define UIPAGE_CASE_RET(page, func) case page: { LogD("current page[%d], event[%s]", page, #page); return func(); LogD("event End"); } break
#define UIPAGE_CASE(page, func, ...) case page: { LogD("current page[%d], event[%s]", page, #page); func(__VA_ARGS__); LogD("event End"); } break
#define UIPAGE_CASE_RET(page, func, ...) case page: { LogD("current page[%d], event[%s]", page, #page); return func(__VA_ARGS__); LogD("event End"); } break
#else
#define UIPAGE_CASE(page, func) case page: { func(); } break
#define UIPAGE_CASE_RET(page, func) case page: { return func(); } break
#define UIPAGE_CASE(page, func, ...) case page: { func(__VA_ARGS__); } break
#define UIPAGE_CASE_RET(page, func, ...) case page: { return func(__VA_ARGS__); } break
#endif
#define UIPAGE_INIT_FUNC(func) UIPAGE_CASE(kCallInitPage, func)
#define UIPAGE_FREE_FUNC(func) UIPAGE_CASE(kCallFreePage, func)
#define UIPAGE_SHOW_FUNC(func) UIPAGE_CASE(kCallShowPage, func)
#define UIPAGE_HIDE_FUNC(func) UIPAGE_CASE(kCallHidePage, func)
#define UIPAGE_INIT_FUNC(func, ...) UIPAGE_CASE(kCallInitPage, func, __VA_ARGS__)
#define UIPAGE_FREE_FUNC(func, ...) UIPAGE_CASE(kCallFreePage, func, __VA_ARGS__)
#define UIPAGE_SHOW_FUNC(func, ...) UIPAGE_CASE(kCallShowPage, func, __VA_ARGS__)
#define UIPAGE_HIDE_FUNC(func, ...) UIPAGE_CASE(kCallHidePage, func, __VA_ARGS__)
#define UIPAGE_SWITCH_FUNC(func) UIPAGE_CASE_RET(kCallSwitchPage, func)
#define UIPAGE_INDEX_FUNC(func) UIPAGE_CASE(kCallIndexSave, func)
#define UIPAGE_SWITCH_FUNC(func, ...) UIPAGE_CASE_RET(kCallSwitchPage, func, __VA_ARGS__)
#define UIPAGE_INDEX_FUNC(func, ...) UIPAGE_CASE(kCallIndexSave, func, __VA_ARGS__)
#define UIPAGE_INIT_SHOW_FUNC(init, show) UIPAGE_INIT_FUNC(init); UIPAGE_SHOW_FUNC(show)
#define UIPAGE_DEINIT_HIDE_FUNC(deinit, hide) UIPAGE_FREE_FUNC(deinit); UIPAGE_HIDE_FUNC(hide)