feat: implement image list panel UI for garment and print assets
Implement ImageListPanel with two _AssetPanel sub-widgets (garment/print) separated by a vertical QSplitter: - _AssetItemWidget: checkbox (batch select) + 52px thumbnail + subfolder label + filename; WA_StyledBackground enables preview highlight (#cce4f7) - _AssetPanel: open-folder button → scan_image_folder(); stats row with tristate 全选 checkbox + "含子文件夹·共N 已选M" label + sort selector (文件夹+名称 / 名称); QListWidget with NoSelection mode so preview highlight and batch checkbox are visually distinct - ImageListPanel: exposes garment_preview_changed, print_preview_changed, garments_changed, prints_changed signals for downstream panels File scanning delegates to services/file_service.scan_image_folder(); no scanning logic duplicated in UI layer. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -290,22 +290,22 @@
|
||||
|
||||
任务:
|
||||
|
||||
- [ ] 先读取 `src/app/widgets/image_list_panel.py` 现有内容
|
||||
- [ ] 实现衣服图片列表
|
||||
- [ ] 实现印花图片列表
|
||||
- [ ] 实现打开文件夹按钮
|
||||
- [ ] 实现全选和取消全选
|
||||
- [ ] 实现单张勾选和取消勾选
|
||||
- [ ] 显示已选数量和总数量(例如:`含子文件夹 · 共 12`)
|
||||
- [ ] 显示来源子文件夹标签和文件名
|
||||
- [ ] 实现排序选择器(默认按文件夹+名称排序)
|
||||
- [ ] 点击素材后更新当前预览选择
|
||||
- [x] 先读取 `src/app/widgets/image_list_panel.py` 现有内容
|
||||
- [x] 实现衣服图片列表
|
||||
- [x] 实现印花图片列表
|
||||
- [x] 实现打开文件夹按钮
|
||||
- [x] 实现全选和取消全选
|
||||
- [x] 实现单张勾选和取消勾选
|
||||
- [x] 显示已选数量和总数量(例如:`含子文件夹 · 共 12`)
|
||||
- [x] 显示来源子文件夹标签和文件名
|
||||
- [x] 实现排序选择器(默认按文件夹+名称排序)
|
||||
- [x] 点击素材后更新当前预览选择
|
||||
|
||||
验收:
|
||||
|
||||
- [ ] 支持递归导入素材
|
||||
- [ ] 当前预览选中态和批量勾选态可区分
|
||||
- [ ] 不在 UI 层重复实现文件扫描规则
|
||||
- [x] 支持递归导入素材
|
||||
- [x] 当前预览选中态和批量勾选态可区分
|
||||
- [x] 不在 UI 层重复实现文件扫描规则
|
||||
|
||||
## 9. 图像预览编辑器
|
||||
|
||||
|
||||
Reference in New Issue
Block a user