diff --git a/include/HUIPageManage.h b/include/HUIPageManage.h index e15e507..8fe6e27 100644 --- a/include/HUIPageManage.h +++ b/include/HUIPageManage.h @@ -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)