feat: auto-preview, timestamped/grouped output, folder memory; fix batch format
- Auto-preview the first image after a folder loads (both panels), so the canvas isn't empty (§17.8). - Group exports as <output_dir>/<timestamp>/<print_stem>/<garment_stem>.<ext>; one timestamp per export run, shared across the batch (§17.9). - Remember the last garment/print folders and reopen the picker there; persisted via config, wired through main_window (§17.10). - Shrink the 3 box templates further and lower them (chest placement). - Fix: batch export ignored the chosen format/quality/output dir because the queue never received ExportOptions. Export panel now emits export_options_changed → queue.set_export_options (+ initial sync) (§17.11). Docs: PRD 6.1/6.8/9, architecture 4.12, UI design 5.1, tasks.md 17.8–17.11. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -686,6 +686,84 @@
|
||||
- [x] 系统窗口标题仍显示 `APP_NAME` 与 `APP_VERSION`
|
||||
- [x] 工作区因移除标题栏而获得更多纵向空间
|
||||
|
||||
### 17.8 加载文件夹后默认预览第一张
|
||||
|
||||
前置阅读:
|
||||
|
||||
- `docs/07-ui-design.md`(5.1 衣服图片面板)
|
||||
|
||||
任务:
|
||||
|
||||
- [x] 衣服、印花面板加载文件夹后,自动选中并预览第一张(按当前排序)
|
||||
- [x] 空文件夹不选;把选中逻辑抽成按行选择以复用
|
||||
- [x] 与现有「模板粘性」衔接:自动选印花后按当前模板落位
|
||||
|
||||
验收:
|
||||
|
||||
- [x] 加载文件夹后画布不再为空、无需手动点选
|
||||
- [x] 两个文件夹加载顺序无关,最终都能得到合成预览
|
||||
|
||||
### 17.9 输出按「时间戳 → 印花」分组到子文件夹
|
||||
|
||||
前置阅读:
|
||||
|
||||
- `docs/02-prd.md`(6.8 单张合成导出、9 数据与文件结构)
|
||||
|
||||
任务:
|
||||
|
||||
- [x] `make_safe_output_path` 输出到 `<输出目录>/<印花文件名>/<衣服文件名>.<扩展名>`
|
||||
- [x] 新增 `timestamped_run_dir(base)`,每次导出运行在输出目录下新建时间戳文件夹
|
||||
- [x] 一次导出运行(批量/单张)共用同一个时间戳;批量在开始时计算一次
|
||||
- [x] 单张导出、队列导出、`core.batch.run_batch` 均接入时间戳层
|
||||
- [x] 子文件夹由 `composer.compose` 保存时自动创建;重名仍追加 `_1`/`_2`
|
||||
|
||||
验收:
|
||||
|
||||
- [x] 路径形如 `输出目录/<时间戳>/<印花文件名>/<衣服文件名>.<扩展名>`
|
||||
- [x] 重复运行落在不同时间戳文件夹,互不覆盖
|
||||
- [x] 一次批量运行内所有图片共用同一个时间戳文件夹
|
||||
|
||||
### 17.10 记住上次的衣服/印花文件夹
|
||||
|
||||
前置阅读:
|
||||
|
||||
- `docs/02-prd.md`(6.1 图片加载、9 数据与文件结构)
|
||||
- `docs/05-project-architecture.md`(4.12 config_service)
|
||||
|
||||
任务:
|
||||
|
||||
- [x] `_AssetPanel` 打开对话框时定位到上次目录(`set_start_dir`),并在选中后发 `folder_opened` 信号
|
||||
- [x] `ImageListPanel` 暴露 `set_garment_start_dir` / `set_print_start_dir` 与 `garment_folder_opened` / `print_folder_opened`
|
||||
- [x] `main_window` 启动恢复 `last_garment_dir` / `last_print_dir`,并在打开文件夹时「改一次存一次」回写
|
||||
- [x] UI 不直接读写配置,统一经主窗口
|
||||
|
||||
验收:
|
||||
|
||||
- [x] 重启后打开「打开文件夹」对话框定位到上次的衣服/印花目录
|
||||
- [x] 目录已不存在时安全回退,不报错
|
||||
|
||||
### 17.11 修复:批量导出忽略所选输出格式/质量/目录
|
||||
|
||||
前置阅读:
|
||||
|
||||
- `docs/07-ui-design.md`(7.5 输出设置区域、8 底部合成队列)
|
||||
|
||||
问题:
|
||||
|
||||
- `queue_panel.set_export_options()` 从未被调用,导出面板也无「选项变化」信号,导致队列始终使用默认 `ExportOptions`(PNG、默认目录),批量导出无视 UI 所选格式/质量/目录。
|
||||
|
||||
任务:
|
||||
|
||||
- [x] 导出面板新增 `export_options_changed` 信号与公开 `current_options()`
|
||||
- [x] 格式/质量/输出目录任一变化即发出当前 `ExportOptions`
|
||||
- [x] `main_window` 接到 `queue_panel.set_export_options`,并在启动时同步一次
|
||||
- [x] 单张导出 `_do_export` 改用同一 `current_options()` 来源
|
||||
|
||||
验收:
|
||||
|
||||
- [x] 选 JPG 后批量导出的文件为 `.jpg` 且按 JPEG 保存
|
||||
- [x] 批量导出跟随所选输出目录与质量
|
||||
|
||||
## 18. 后续暂缓任务
|
||||
|
||||
以下任务第一阶段暂不做,后续需要时再新增设计文档:
|
||||
|
||||
Reference in New Issue
Block a user