Dzbj_C3_Key/main/ui/screens/ui_ScreenSet.h
Rdzleo f9dc7d4861 feat: 触屏版迁移到按键版,两键实现全部交互功能
1. 按键驱动重构:GPIO中断+手动去抖 → iot_button组件(单击/双击/长按)
2. 新增key_nav按键导航管理器:上下文状态机 + Set界面焦点蓝色边框高亮
3. 移除所有触摸手势/点击事件(ScreenHome/ScreenImg/ScreenSet)
4. 应援灯颜色切换优化:DISPOFF→直接写GRAM→DISPON,消除分band刷新
5. 亮度调节按键化:BOOT +10% / KEY -10% / KEY长按退出
6. 休眠管理适配:按键唤醒统一由key_nav处理
7. 新增迁移总结文档 docs/touch-to-button-migration.md

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 14:57:14 +08:00

45 lines
1.4 KiB
C

// This file was generated by SquareLine Studio
// SquareLine Studio version: SquareLine Studio 1.6.0
// LVGL version: 8.3.11
// Project name: Lcd_Pro
#ifndef UI_SCREENSET_H
#define UI_SCREENSET_H
#ifdef __cplusplus
extern "C" {
#endif
// SCREEN: ui_ScreenSet
extern void ui_ScreenSet_screen_init(void);
extern void ui_ScreenSet_screen_destroy(void);
extern void ui_ScreenSet_set_previous(lv_obj_t **screen, void (*init_func)(void)); // 设置返回的界面
extern lv_obj_t *ui_ScreenSet;
extern lv_obj_t *ui_GlobalContainer;
extern lv_obj_t *ui_ContainerTop;
extern lv_obj_t *ui_ImgLowPower;
extern lv_obj_t *ui_ImgFlashlight;
extern lv_obj_t *ui_ImgDelete;
extern lv_obj_t *ui_ContainerCentral;
extern lv_obj_t *ui_SliderBrightness;
extern lv_obj_t *ui_ImgSun;
extern lv_obj_t *ui_LabelBrightness;
extern lv_obj_t *ui_ArcPowerLevel;
extern lv_obj_t *ui_ImgLightning;
extern lv_obj_t *ui_LabelPowerLevel;
// CUSTOM VARIABLES
// 手电筒功能
extern void flashlight_exit(void); // 退出手电筒模式(不恢复亮度)
extern bool flashlight_is_active(void); // 查询手电筒是否激活
extern uint8_t flashlight_get_saved_brightness(void); // 获取手电筒模式前保存的亮度值
extern void flashlight_switch_color(void); // 按键版颜色切换(停定时器+黑屏+换色)
extern void flashlight_restart_blink(void); // 重启闪烁定时器
#ifdef __cplusplus
} /*extern "C"*/
#endif
#endif