Files
GhostEngine/GhostEngine.sln
Misaki ff14c0f49a Refactor application structure and add unit tests
Added:
- New `ProgressService` class for managing progress indicators.
- New `AssetDatabase`, `AssetOpenHandlerAttribute`, and `AsyncAssetOpenHandlerAttribute` classes for asset handling.
- `Ghost.UnitTest` project for unit testing with associated files and configurations.

Changed:
- `ActivationHandler` class to ensure correct handling of `LaunchActivatedEventArgs`.
- `App.xaml.cs` to register `INotificationService` and `IProgressService`, replacing `StackedNotificationService`.
- `OnLaunched` method in `App.xaml.cs` to correctly call `ActivationHandler.Handle(args)` and start the host.
- `INavigationAware` interface from internal to public for broader access.
- `EditorState.cs` to activate `EditorApplication` with the current service provider.
- Property names in `AssetItem` and `ExplorerItem` structs to `Name` and `FullName`.
- `NotificationService` class to implement `INotificationService` and refactor notification handling.
- `AssetPathToGlyphConverter` to handle file extensions consistently.
- Bindings in `ProjectPage.xaml` and `ProjectPage.xaml.cs` to use `FullName` instead of `Path`.
- `EngineEditorWindow` and `LandingWindow` classes to utilize new notification and progress services.
- `Logger` class to include a new method for logging errors with exceptions.

Updated:
- Manifest files and project files to reflect new structure and dependencies.
- Solution file `GhostEngine.sln` to include the new unit test project.
- Added several new test classes and methods in `UnitTests.cs`.
2025-06-10 16:32:32 +09:00

148 lines
10 KiB
Plaintext

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.14.35906.104
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ghost.App", "Ghost.App\Ghost.App.csproj", "{15AFE3A1-0CAF-4B36-8835-121C4D683BBF}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ghost.Engine", "Ghost.Engine\Ghost.Engine.csproj", "{1ED62E09-8F36-4671-896B-16C1C1530202}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ghost.Data", "Ghost.Data\Ghost.Data.csproj", "{0D626DAF-EF18-435C-A85C-EEA1B141E8B5}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ghost.Entities", "Ghost.Entities\Ghost.Entities.csproj", "{8A1C494B-2888-4D0D-8325-9F5C8D1D1955}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ghost.Graphics", "Ghost.Graphics\Ghost.Graphics.csproj", "{9B0B2CA8-B200-4F19-9D09-A7B99F98BB44}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ghost.Generator", "Ghost.Generator\Ghost.Generator.csproj", "{996ABECC-1C5A-4F07-B8AC-D063F91962CB}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ghost.Editor", "Ghost.Editor\Ghost.Editor.csproj", "{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ghost.UnitTest", "Ghost.UnitTest\Ghost.UnitTest.csproj", "{4179873E-8174-4D17-9584-8C223BA71366}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|ARM64 = Debug|ARM64
Debug|x64 = Debug|x64
Debug|x86 = Debug|x86
Release|ARM64 = Release|ARM64
Release|x64 = Release|x64
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{15AFE3A1-0CAF-4B36-8835-121C4D683BBF}.Debug|ARM64.ActiveCfg = Debug|ARM64
{15AFE3A1-0CAF-4B36-8835-121C4D683BBF}.Debug|ARM64.Build.0 = Debug|ARM64
{15AFE3A1-0CAF-4B36-8835-121C4D683BBF}.Debug|ARM64.Deploy.0 = Debug|ARM64
{15AFE3A1-0CAF-4B36-8835-121C4D683BBF}.Debug|x64.ActiveCfg = Debug|x64
{15AFE3A1-0CAF-4B36-8835-121C4D683BBF}.Debug|x64.Build.0 = Debug|x64
{15AFE3A1-0CAF-4B36-8835-121C4D683BBF}.Debug|x64.Deploy.0 = Debug|x64
{15AFE3A1-0CAF-4B36-8835-121C4D683BBF}.Debug|x86.ActiveCfg = Debug|x86
{15AFE3A1-0CAF-4B36-8835-121C4D683BBF}.Debug|x86.Build.0 = Debug|x86
{15AFE3A1-0CAF-4B36-8835-121C4D683BBF}.Debug|x86.Deploy.0 = Debug|x86
{15AFE3A1-0CAF-4B36-8835-121C4D683BBF}.Release|ARM64.ActiveCfg = Release|ARM64
{15AFE3A1-0CAF-4B36-8835-121C4D683BBF}.Release|ARM64.Build.0 = Release|ARM64
{15AFE3A1-0CAF-4B36-8835-121C4D683BBF}.Release|ARM64.Deploy.0 = Release|ARM64
{15AFE3A1-0CAF-4B36-8835-121C4D683BBF}.Release|x64.ActiveCfg = Release|x64
{15AFE3A1-0CAF-4B36-8835-121C4D683BBF}.Release|x64.Build.0 = Release|x64
{15AFE3A1-0CAF-4B36-8835-121C4D683BBF}.Release|x64.Deploy.0 = Release|x64
{15AFE3A1-0CAF-4B36-8835-121C4D683BBF}.Release|x86.ActiveCfg = Release|x86
{15AFE3A1-0CAF-4B36-8835-121C4D683BBF}.Release|x86.Build.0 = Release|x86
{15AFE3A1-0CAF-4B36-8835-121C4D683BBF}.Release|x86.Deploy.0 = Release|x86
{1ED62E09-8F36-4671-896B-16C1C1530202}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{1ED62E09-8F36-4671-896B-16C1C1530202}.Debug|ARM64.Build.0 = Debug|Any CPU
{1ED62E09-8F36-4671-896B-16C1C1530202}.Debug|x64.ActiveCfg = Debug|Any CPU
{1ED62E09-8F36-4671-896B-16C1C1530202}.Debug|x64.Build.0 = Debug|Any CPU
{1ED62E09-8F36-4671-896B-16C1C1530202}.Debug|x86.ActiveCfg = Debug|Any CPU
{1ED62E09-8F36-4671-896B-16C1C1530202}.Debug|x86.Build.0 = Debug|Any CPU
{1ED62E09-8F36-4671-896B-16C1C1530202}.Release|ARM64.ActiveCfg = Release|Any CPU
{1ED62E09-8F36-4671-896B-16C1C1530202}.Release|ARM64.Build.0 = Release|Any CPU
{1ED62E09-8F36-4671-896B-16C1C1530202}.Release|x64.ActiveCfg = Release|Any CPU
{1ED62E09-8F36-4671-896B-16C1C1530202}.Release|x64.Build.0 = Release|Any CPU
{1ED62E09-8F36-4671-896B-16C1C1530202}.Release|x86.ActiveCfg = Release|Any CPU
{1ED62E09-8F36-4671-896B-16C1C1530202}.Release|x86.Build.0 = Release|Any CPU
{0D626DAF-EF18-435C-A85C-EEA1B141E8B5}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{0D626DAF-EF18-435C-A85C-EEA1B141E8B5}.Debug|ARM64.Build.0 = Debug|Any CPU
{0D626DAF-EF18-435C-A85C-EEA1B141E8B5}.Debug|x64.ActiveCfg = Debug|Any CPU
{0D626DAF-EF18-435C-A85C-EEA1B141E8B5}.Debug|x64.Build.0 = Debug|Any CPU
{0D626DAF-EF18-435C-A85C-EEA1B141E8B5}.Debug|x86.ActiveCfg = Debug|Any CPU
{0D626DAF-EF18-435C-A85C-EEA1B141E8B5}.Debug|x86.Build.0 = Debug|Any CPU
{0D626DAF-EF18-435C-A85C-EEA1B141E8B5}.Release|ARM64.ActiveCfg = Release|Any CPU
{0D626DAF-EF18-435C-A85C-EEA1B141E8B5}.Release|ARM64.Build.0 = Release|Any CPU
{0D626DAF-EF18-435C-A85C-EEA1B141E8B5}.Release|x64.ActiveCfg = Release|Any CPU
{0D626DAF-EF18-435C-A85C-EEA1B141E8B5}.Release|x64.Build.0 = Release|Any CPU
{0D626DAF-EF18-435C-A85C-EEA1B141E8B5}.Release|x86.ActiveCfg = Release|Any CPU
{0D626DAF-EF18-435C-A85C-EEA1B141E8B5}.Release|x86.Build.0 = Release|Any CPU
{8A1C494B-2888-4D0D-8325-9F5C8D1D1955}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{8A1C494B-2888-4D0D-8325-9F5C8D1D1955}.Debug|ARM64.Build.0 = Debug|Any CPU
{8A1C494B-2888-4D0D-8325-9F5C8D1D1955}.Debug|x64.ActiveCfg = Debug|Any CPU
{8A1C494B-2888-4D0D-8325-9F5C8D1D1955}.Debug|x64.Build.0 = Debug|Any CPU
{8A1C494B-2888-4D0D-8325-9F5C8D1D1955}.Debug|x86.ActiveCfg = Debug|Any CPU
{8A1C494B-2888-4D0D-8325-9F5C8D1D1955}.Debug|x86.Build.0 = Debug|Any CPU
{8A1C494B-2888-4D0D-8325-9F5C8D1D1955}.Release|ARM64.ActiveCfg = Release|Any CPU
{8A1C494B-2888-4D0D-8325-9F5C8D1D1955}.Release|ARM64.Build.0 = Release|Any CPU
{8A1C494B-2888-4D0D-8325-9F5C8D1D1955}.Release|x64.ActiveCfg = Release|Any CPU
{8A1C494B-2888-4D0D-8325-9F5C8D1D1955}.Release|x64.Build.0 = Release|Any CPU
{8A1C494B-2888-4D0D-8325-9F5C8D1D1955}.Release|x86.ActiveCfg = Release|Any CPU
{8A1C494B-2888-4D0D-8325-9F5C8D1D1955}.Release|x86.Build.0 = Release|Any CPU
{9B0B2CA8-B200-4F19-9D09-A7B99F98BB44}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{9B0B2CA8-B200-4F19-9D09-A7B99F98BB44}.Debug|ARM64.Build.0 = Debug|Any CPU
{9B0B2CA8-B200-4F19-9D09-A7B99F98BB44}.Debug|x64.ActiveCfg = Debug|Any CPU
{9B0B2CA8-B200-4F19-9D09-A7B99F98BB44}.Debug|x64.Build.0 = Debug|Any CPU
{9B0B2CA8-B200-4F19-9D09-A7B99F98BB44}.Debug|x86.ActiveCfg = Debug|Any CPU
{9B0B2CA8-B200-4F19-9D09-A7B99F98BB44}.Debug|x86.Build.0 = Debug|Any CPU
{9B0B2CA8-B200-4F19-9D09-A7B99F98BB44}.Release|ARM64.ActiveCfg = Release|Any CPU
{9B0B2CA8-B200-4F19-9D09-A7B99F98BB44}.Release|ARM64.Build.0 = Release|Any CPU
{9B0B2CA8-B200-4F19-9D09-A7B99F98BB44}.Release|x64.ActiveCfg = Release|Any CPU
{9B0B2CA8-B200-4F19-9D09-A7B99F98BB44}.Release|x64.Build.0 = Release|Any CPU
{9B0B2CA8-B200-4F19-9D09-A7B99F98BB44}.Release|x86.ActiveCfg = Release|Any CPU
{9B0B2CA8-B200-4F19-9D09-A7B99F98BB44}.Release|x86.Build.0 = Release|Any CPU
{996ABECC-1C5A-4F07-B8AC-D063F91962CB}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{996ABECC-1C5A-4F07-B8AC-D063F91962CB}.Debug|ARM64.Build.0 = Debug|Any CPU
{996ABECC-1C5A-4F07-B8AC-D063F91962CB}.Debug|x64.ActiveCfg = Debug|Any CPU
{996ABECC-1C5A-4F07-B8AC-D063F91962CB}.Debug|x64.Build.0 = Debug|Any CPU
{996ABECC-1C5A-4F07-B8AC-D063F91962CB}.Debug|x86.ActiveCfg = Debug|Any CPU
{996ABECC-1C5A-4F07-B8AC-D063F91962CB}.Debug|x86.Build.0 = Debug|Any CPU
{996ABECC-1C5A-4F07-B8AC-D063F91962CB}.Release|ARM64.ActiveCfg = Release|Any CPU
{996ABECC-1C5A-4F07-B8AC-D063F91962CB}.Release|ARM64.Build.0 = Release|Any CPU
{996ABECC-1C5A-4F07-B8AC-D063F91962CB}.Release|x64.ActiveCfg = Release|Any CPU
{996ABECC-1C5A-4F07-B8AC-D063F91962CB}.Release|x64.Build.0 = Release|Any CPU
{996ABECC-1C5A-4F07-B8AC-D063F91962CB}.Release|x86.ActiveCfg = Release|Any CPU
{996ABECC-1C5A-4F07-B8AC-D063F91962CB}.Release|x86.Build.0 = Release|Any CPU
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Debug|ARM64.Build.0 = Debug|Any CPU
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Debug|x64.ActiveCfg = Debug|Any CPU
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Debug|x64.Build.0 = Debug|Any CPU
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Debug|x86.ActiveCfg = Debug|Any CPU
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Debug|x86.Build.0 = Debug|Any CPU
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Release|ARM64.ActiveCfg = Release|Any CPU
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Release|ARM64.Build.0 = Release|Any CPU
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Release|x64.ActiveCfg = Release|Any CPU
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Release|x64.Build.0 = Release|Any CPU
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Release|x86.ActiveCfg = Release|Any CPU
{CC6E1FCB-A80E-4F6C-B519-C8CADB6D5650}.Release|x86.Build.0 = Release|Any CPU
{4179873E-8174-4D17-9584-8C223BA71366}.Debug|ARM64.ActiveCfg = Debug|ARM64
{4179873E-8174-4D17-9584-8C223BA71366}.Debug|ARM64.Build.0 = Debug|ARM64
{4179873E-8174-4D17-9584-8C223BA71366}.Debug|ARM64.Deploy.0 = Debug|ARM64
{4179873E-8174-4D17-9584-8C223BA71366}.Debug|x64.ActiveCfg = Debug|x64
{4179873E-8174-4D17-9584-8C223BA71366}.Debug|x64.Build.0 = Debug|x64
{4179873E-8174-4D17-9584-8C223BA71366}.Debug|x64.Deploy.0 = Debug|x64
{4179873E-8174-4D17-9584-8C223BA71366}.Debug|x86.ActiveCfg = Debug|x86
{4179873E-8174-4D17-9584-8C223BA71366}.Debug|x86.Build.0 = Debug|x86
{4179873E-8174-4D17-9584-8C223BA71366}.Debug|x86.Deploy.0 = Debug|x86
{4179873E-8174-4D17-9584-8C223BA71366}.Release|ARM64.ActiveCfg = Release|ARM64
{4179873E-8174-4D17-9584-8C223BA71366}.Release|ARM64.Build.0 = Release|ARM64
{4179873E-8174-4D17-9584-8C223BA71366}.Release|ARM64.Deploy.0 = Release|ARM64
{4179873E-8174-4D17-9584-8C223BA71366}.Release|x64.ActiveCfg = Release|x64
{4179873E-8174-4D17-9584-8C223BA71366}.Release|x64.Build.0 = Release|x64
{4179873E-8174-4D17-9584-8C223BA71366}.Release|x64.Deploy.0 = Release|x64
{4179873E-8174-4D17-9584-8C223BA71366}.Release|x86.ActiveCfg = Release|x86
{4179873E-8174-4D17-9584-8C223BA71366}.Release|x86.Build.0 = Release|x86
{4179873E-8174-4D17-9584-8C223BA71366}.Release|x86.Deploy.0 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {0C545827-2ED7-4597-BE3C-30E978C85B9E}
EndGlobalSection
EndGlobal