17 Commits

Author SHA1 Message Date
waynebian01
232fa91aa2 Add SpellFieldKey class for managing spell and aura keys
- Introduced a new class `SpellFieldKey` to encapsulate constants and methods related to spell and aura identifiers.
- Added methods for generating keys for spells and auras, including parsing functionality for spell and aura strings.
- Implemented utility methods for stripping prefixes and canonicalizing aura IDs.
2026-08-30 10:22:51 +08:00
waynebian01
48593d5729 添加默认模块选择 2026-08-29 16:40:20 +08:00
waynebian01
ab4a5b25b3 Refactor ComboBox to UiDropDown and enhance styling
- Replaced instances of ComboBox with a custom UiDropDown control in UnitEditorForm.
- Updated the StyleComboBox method to accept UiDropDown instead of ComboBox.
- Introduced UiDropDown class to provide a unified dark-themed dropdown control.
- Implemented custom drawing for dropdown items and buttons to improve UI consistency.
- Added functionality for handling dropdown item selection and display.
2026-08-28 17:57:50 +08:00
waynebian01
b549a56edd feat: 添加启动提示功能,显示版本更新信息并缓存上次显示版本 2026-08-25 00:45:55 +08:00
waynebian01
6ebfde8f97 实现单实例运行,添加主界面布局切换功能,更新版本号至 1.2.1.5 2026-08-17 15:53:09 +08:00
liantian-cn
4179af4f4d feat: 模块目录迁移至我的文档目录
模块存储位置从 {UserProfile}/.config/{AppName}/module 迁移至
Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)/{AppName}/module
(Windows 下跟随用户已知文件夹重定向,本机为 E:\Documents\Shigure\module)。

- ModuleStore.ResolveModuleDirectory() 返回表达式改为 MyDocuments 版本,三个无参调用点自动跟随
- Program.cs 迁移提示文案「用户配置目录」改为「我的文档目录」,检测逻辑不变(仅检测 exe 旁 module/)
- 7 个文档同步更新(README/CLAUDE/打包说明/Obsidian 00/01/10/11),路径统一写 {MyDocuments}/Shigure/module
- 旧目录(含 .config 版本)不自动迁移、不删除,由提示引导手动移动
2026-08-15 13:09:52 +08:00
liantian-cn
fd5b04463a feat: 模块目录迁移至用户配置目录
模块存储位置从 exe 旁 baseDirectory/module 迁移到 {UserProfile}/.config/{AppName}/module
(AppName 动态取程序集名,Windows 下为 C:\Users\<用户名>\.config\Shigure\module)。

- ModuleStore.ResolveModuleDirectory 改为无参静态方法,删除 Shigure.csproj 检测死代码
- AppInfo 新增 AppName(程序集名单一来源,与 Version 惯例一致)
- Program.cs 新增启动迁移提示:旧目录有内容且新目录无模块文件时弹纯文案提示
- StatusForm 关于页在路径位于 exe 目录外时显示完整路径;编辑器打开文件夹跟随新路径
- csproj 删除 module 复制项;仓库根 module/ 示例目录保留
- 文档同步更新(README/CLAUDE/打包说明/Obsidian 01/11/00/10)
- 旧模块不自动迁移,由提示引导用户手动移动
2026-08-15 11:21:10 +08:00
waynebian01
99300fb702 feat: Implement module dependency management and unsaved changes tracking
- Added `HasUnsavedChanges` property to `ClassConfigEditorControl` and `ClassMacrosEditorControl` to track unsaved changes.
- Introduced `ModuleDependencyService` for handling module dependencies, including capturing and importing configurations and macros.
- Implemented atomic file writing in `AtomicFile` to ensure safe file operations.
- Enhanced `MainForm` to check for unsaved changes before importing module dependencies and added feedback mechanisms for users.
- Updated `ModuleEditorControl` to support dependency capturing and module reloading.
- Created data structures for module dependency snapshots, configurations, and macros.
- Improved error handling and user notifications during module import processes.
2026-08-14 17:36:45 +08:00
waynebian01
1b4fca88a8 Enhance renaming functionality in packaging script: support multiple name replacements, improve file and directory renaming, and update documentation for clarity. 2026-08-10 14:34:25 +08:00
waynebian01
19569a5abd feat: 引入 WowProcessLocator 以支持动态进程窗口查找,移除窗口标题参数,更新相关逻辑 2026-08-09 21:43:14 +08:00
waynebian01
5a00da85d5 Refactor and implement runtime session management
- Removed the UnitSelector class from UI and added a new UnitSelector class in Modules.
- Introduced RuntimeSessionCoordinator to manage runtime sessions, ensuring safe concurrent operations.
- Created ShigureRuntimeFactory to handle the creation of ShigureRuntime instances.
- Added WindowsTriggerKeyState and WindowsVirtualKeyMap for handling key states and virtual key mappings.
- Implemented IKeymapResolver interface for key mapping resolution.
- Established runtime dependencies with interfaces for screen scanning, state building, logic evaluation, and key output.
2026-08-06 01:17:28 +08:00
waynebian01
789058de52 删除了光环识别 2026-07-25 14:34:00 +08:00
waynebian01
8a6fe417a9 添加了一键打包.py 2026-06-21 20:35:20 +08:00
waynebian01
ada5252a44 现在 tmp 会创建在 %TEMP%\随机目录名称\tmp\, 目录删除不会被 OneDrive 的文件句柄阻塞。 2026-06-17 00:47:14 +08:00
waynebian01
49bbe8315c 改进9 2026-06-14 23:21:35 +08:00
waynebian01
5f9443308a 随机名称, 随机哈希值 2026-06-14 20:58:00 +08:00
waynebian01
82333279a8 整合文件夹 2026-06-14 01:13:58 +08:00