# 开发待办事项 ## 控件 - [ ] 子进程窗口 `SubProcessDlg` - [x] 将子进程的输出与状态显示至单独的对话框 - [x] 增加多功能按钮 - [ ] 优化多功能按钮代码、增加功能 - [x] 关闭窗口时中断子进程、清除输出 - [x] 处理不能正确显示子进程错误的问题(会被“打包完成”遮盖) - [ ] 增加「将输出导出到日志文件」功能 - [ ] 资源文件添加框 - [ ] Python 解释器选择器 - [ ] 文件浏览对话框选择解释器可执行文件 - [ ] 处理解释器验证器返回结果,异常时弹出对话框要求用户自行检查确认 - [ ] ComboBox 中列出各解释器 - [ ] 快捷显示已安装的 `PyInstaller` 版本 - [ ] 命令浏览器 - [x] 显示将传递给 PyInstaller 的选项列表 - [x] 高亮提示(待优化) - [ ] 优化参数传递接口 - [ ] "What is this" 提示 - [ ] `PyInstaller` 选项参数详解表格 - [x] 主窗口状态栏显示软件版本 - [ ] 「简洁模式」/「详尽模式」切换 ## 打包 - [x] 选项参数获取 - [x] 将参数拼接成完整调用命令 - [x] 参数预览器控件 - [x] 使用枚举值控制参数 - [x] 优化拼接代码 - [x] 调用 `PyInstaller` 子进程 - [x] 使用 `QProcess` 替代 `subprocess` 以解决界面卡死问题 - [x] 优化子进程相关代码,增强异常处理 - [ ] 打包任务 - [x] 创建打包任务,保存所有选项 - [ ] 创建 [`.spec` 文件](https://pyinstaller.org/en/stable/spec-files.html) - [ ] `spec` 编辑器 ## 界面 - [x] 实现跨平台功能 - [x] 获取当前运行平台 - [x] 以合理方式保存至某种全局变量中 - [x] 定制各平台特有功能 - [x] 使用 `qrc` 管理静态资源 - [ ] 翻译与国际化 ## 应用程序级 - [x] 解决相对引用与作为包运行问题 - [ ] `logging` 日志记录 - [ ] 支持命令行方式 - [ ] 将用户设置保存到文件中存储 ## 美化 - [ ] QSS 与美化 - [ ] 动画效果