/* * 模块名称:UI Page Password (用户密钥密码页) * 模块功能:3 位密码输入页(表单/操作页首个实例)——3 个数字框 + 反显光标, * ↑↓调值(9↔0 环绕)、←→移光标(首↔末环绕)、ENTER 确认、ESC 返回菜单; * 确认一致时按所输密码授予权限(查看密码→只读 / 修改密码→可修改), * 由逻辑层预装的完成回调(携权限)接管"关页 + 转目标"; * 向框架 ui_content_page 提供页面描述符(零 LVGL 对象) * 适用平台:STM32F407ZGTx / PC 模拟器(两端共用) * 作者:王建锋 * 创建日期:2026-09-09 * 修改记录: * 2026-09-09 王建锋 创建:表单/操作页首个实例(内容页架构.md §4.1; * 实机参考 mockups/密码页面实际机器的示例图片.jpg) */ #ifndef UI_PAGE_PASSWORD_H #define UI_PAGE_PASSWORD_H #include "ui_content_page.h" /* * 页面描述符(Flash const):用户密钥页 = CONTENT_PAGE_PASSWORD; * 接入框架描述符表 s_defs[](定义于 ui_page_password.c) */ extern const content_page_def_t ui_page_password_desc; /* * 函数功能:装载完成回调(须在开页前调用) * 入口参数:on_ok - 完成回调(ENTER 确认一致后调用,实参为授予的权限: * UI_PERM_MODIFY = 输了修改密码 / UI_PERM_VIEW = 输了查看密码; * 由逻辑层实现"关页 + 按权限续进入"; * NULL = 一致时仅关页) * 返回值:无 * 限定条件:由逻辑层在 uiTask 上下文、ui_content_page_open(CONTENT_PAGE_PASSWORD) * 之前调用 * 函数说明:页面比对 ui_pwd_def.h 的两个编译期密码(先查修改:两值同设时授高权); * 每次进入重置为初始态(全 0、光标首框,与实机一致);页面模块不感知菜单 */ void ui_page_password_arm(void (*on_ok)(uint8_t perm)); #endif /* UI_PAGE_PASSWORD_H */