/* * meow_ui.h — MeowOS 应用框架 SDK 公共 API(B1)。 * * 蓝本:MEOW_APP_SDK.md §3-§8。应用只调本头声明的 API;绝不 open/mmap/ioctl * /dev/fb0、绝不 open /dev/input/event* —— 屏幕与输入由 meow_ui 接管。 * * 约定: * - 坐标 0,0 = 左上;所有颜色为 24-bit RGB(0xRRGGBB),内部转 RGB565。 * - 所有绘制先进离屏 back_buf,调用 meow_ui_flush()/flush_region() 才上屏。 * - 文本字号:28(标题/状态栏)、20(正文/按钮)。 * * 与设计文档的偏差(实现期定案,见 MEOW_APP_SDK.md §12 更新): * [D1] meow_ui_opts 由实现补充(宽/高覆写,0=自动读 /dev/fb0);文档只引用未定义。 * [D2] meow_list_create 的数据源回调签名由实现定案(文档留占位注释)。 * [D3] meow_img_blend 内部实现补充(见 meow_ui_internal.h),非公共 API 增量。 * [D4] 增加 meow_theme_defaults()/meow_theme_current() 便于脱机(无 settings 文件)使用。 * * ------------------------------------------------------------------ * 公共头模块索引(按模块拆分,本头为**伞头**:只做 #include 聚合,不定义新 API): * * include/meow_ui_types.h 核心类型/常量(物理键 keycode、滑动方向、meow_widget/meow_img 句柄) * include/meow_ui_draw.h 绘制层(§3)+ 时间(§7)+ 刷新率调度(§7.1) * include/meow_ui_image.h 图片层(§4) * include/meow_ui_theme.h 主题/配置(§8:meow_theme、MD3 色板、风格族) * include/meow_ui_ime.h 输入法(§5.1:ASCII/NUM/PINYIN 软键盘) * include/meow_ui_widgets.h 控件层(§5 + §5.8 基座 + §5.8.6 MD3 组件 + §5.5 W_LISTVIEW) * include/meow_ui_input.h 输入层/生命周期(§6)+ 通用长按(§6.3) * include/meow_ui_activity.h Activity 栈 + 三层控件模型(§6.1) * include/meow_ui_zorder.h 绘制物注册表 / z 序 / 区域重画(§6.2) * include/meow_ui_statusbar.h 全局状态栏 / 全屏(§3.1) * include/meow_ui_dialog.h 模态 Dialog / BottomSheet(§5.8.6) * include/meow_ui_log.h 应用日志(§9) * include/meow_ui_notify.h 应用通知(§9.1) * include/meow_ui_config.h 应用配置读写(§9.2) * include/meow_ui_font.h 字体列表(§5.7)+ 字体分层(§10) * include/meow_ui_audio.h 独占音频客户端(§11) * * 其余模块头(非伞头、App 按需显式 include,均保持不动): * meow_ui_view.h / meow_ui_nav.h / meow_ui_media.h / meow_ui_sys.h / meow_ui_vol.h * ------------------------------------------------------------------ * * 拆分不改变任何 API 名称/类型/宏(-Wall -Wextra 0 warning,既有 App 零改动)。 */ #ifndef MEOW_UI_H #define MEOW_UI_H #include #include #include "include/meow_ui_types.h" #include "include/meow_ui_draw.h" #include "include/meow_ui_image.h" #include "include/meow_ui_ime.h" #include "include/meow_ui_input.h" #include "include/meow_ui_activity.h" #include "include/meow_ui_zorder.h" #include "include/meow_ui_statusbar.h" #include "include/meow_ui_theme.h" #include "include/meow_ui_widgets.h" #include "include/meow_ui_dialog.h" #include "include/meow_ui_log.h" #include "include/meow_ui_notify.h" #include "include/meow_ui_config.h" #include "include/meow_ui_font.h" #include "include/meow_ui_audio.h" #endif /* MEOW_UI_H */