Files
StellarX-kaifa/开发记录/功能变更/Feature-20251220-0001-Table运行期重置表头与数据API.md

71 lines
3.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 功能变更 ID: Feature-20251220-0001
> 适用场景:记录小到中等规模的功能、接口、行为、默认值或配置变化。
> 不适用场景:新增核心模块、重大模块重构、架构级设计,请使用“新增功能模块”模板。
## 基本信息
- ID: Feature-20251220-0001
- 标题: Table 运行期重置表头与数据 API
- 状态:已完成(历史记录;本次仅归档,未重新验证)
- 类型:新增
- 级别:L2 中等
- 模块: Table
- 版本 / 分支: v2.3.2 / master
- 环境: Windows / Visual Studio 2022 / Debug、Release / EasyX
- 负责人: Ysm-04(历史实现)
## 变更背景
- 背景: 原有 Table 可以设置表头和数据,但缺少明确的运行期清空与整体重置入口。
- 目标: 允许同一个 Table 实例在运行过程中切换不同的数据集合,并在重置后重新计算单元格尺寸、分页信息和绘制状态。
- 不做什么:[可选]
- 不改变原有 `setHeaders()`、`setData()` 的调用方式。
- 不引入新的表格数据模型或外部依赖。
## 变更内容
- 变更摘要: 新增清空表头、清空数据以及同时清空二者的公共 API。
- 新增项:[可选]
- `void Table::clearHeaders()`
- `void Table::clearData()`
- `void Table::resetTable()`
- 修改项:[可选]
- 清空表头后,重新标记单元格尺寸、表头以及分页按钮/页码信息需要计算或绘制。
- 清空数据后,将 `currentPage`、`totalPages` 重置为 1,并重新标记尺寸和分页信息。
- `resetTable()` 依次复用 `clearHeaders()` 与 `clearData()`。
- 删除 / 废弃项:[可选]
- 无。
- 受影响的文件 / 类 / 函数:
- 历史路径:`include/StellarX/table.h`
- 历史路径:`src/table.cpp`
- `Table::clearHeaders()`、`Table::clearData()`、`Table::resetTable()`
- 对外 API / 属性变化:[可选]
- 新增上述三个公共方法;旧 API 保持不变。
## 行为对照
- 变更前: Table 创建后缺少专用的清空接口,调用方难以明确地复用同一对象展示另一组表头和数据。
- 变更后:
- `clearHeaders()` 清空表头并触发后续尺寸、表头和分页布局更新。
- `clearData()` 清空数据、复位页码状态并触发后续重算。
- `resetTable()` 同时清空表头与数据,调用方随后可重新设置内容。
- 兼容性说明:兼容
- 迁移说明:[可选]
- 无需迁移旧代码;需要复用 Table 时可在重新调用 `setHeaders()` / `setData()` 前使用新增接口。
## 验证与落地
- 验证方式:
- 历史记录使用按钮回调分别执行“清空并重设表头”“清空并重设数据”“同时清空并重设表头与数据”。
- 观察表头、数据、表格尺寸和分页区域是否同步更新。
- 验证结果:
- PDF 历史记录将上述三个手工场景记为通过。
- 本次归档未构建 v2.3.2,也未重新运行 GUI 用例;历史运行结果未在本次复验。
- 关联 BUG / Fix:[可选]
- Commit: `0c1cf2938f0d6c5684eeb318f17a8443e0c8cf5a`
- PR:[可选]
- 发布版本:[可选] v2.3.2
- 备注:[可选]
- 资料来源:`StellarX功能_模块变更.pdf` 第 19-21 页,并以对应提交和历史 `CHANGELOG.md` 交叉核对。