- 数据模型: ToolItem 新增 IsGroup(bool) + SubToolIds(List<string>) 字段
- 执行逻辑: ProcessExecutionService 改为 ExecuteAsync, 组合卡片遍历子工具逐一启动(500ms延迟), 孤儿ID跳过并打印警告
- 组合编辑: GroupEditViewModel + GroupEditWindow, 复选框列表勾选非组合工具
- 主界面: 标题栏新增 '+添加组合' 按钮(蓝色), 组合卡片右下角显示 📦 角标
- 右键菜单: 区分 '编辑工具' (普通) 和 '编辑组合' (IsGroup=true)
- 快捷键: HotKeyManager 适配 ExecuteAsync 异步调用
- 测试: 82 tests total (ProcessExecution 4->6, GroupEdit 5 new)
15 lines
340 B
C#
15 lines
340 B
C#
using PersonalToolBox.Models;
|
|
|
|
namespace PersonalToolBox.Services;
|
|
|
|
/// <summary>
|
|
/// 进程执行服务接口,负责启动外部工具进程
|
|
/// </summary>
|
|
public interface IProcessExecutionService
|
|
{
|
|
/// <summary>
|
|
/// 执行指定的工具项(含组合批量启动)
|
|
/// </summary>
|
|
Task ExecuteAsync(ToolItem tool);
|
|
}
|