Refactor activation handling and introduce entity system

Added new `ActivationHandler` class for folder initialization.
Added `ProjectService` class for project-related operations.
Added `Ghost.Entities` project with entity management classes.
Added `EngineEditorWindow` for enhanced user interface.

Changed project files to restructure dependencies and remove unused references.
Changed `ProjectRepository` to use asynchronous methods for improved performance.
Changed data binding in `CreateProjectPage.xaml` and `OpenProjectPage.xaml` to use new data models.
Changed `App.xaml.cs` to utilize the new `ActivationHandler` and include additional services.

Removed `IActivationHandler` interface and integrated its functionality into `ActivationHandler`.
Removed `EditorActivationHandler` as its functionality was merged into `ActivationHandler`.

Updated `AssemblyInfo.cs` to include global using directives for entity types.
Updated image assets to reflect visual resource changes.
This commit is contained in:
2025-03-27 00:52:07 +09:00
parent 02b3edcd7a
commit 62fe30ff2b
47 changed files with 711 additions and 231 deletions

View File

@@ -0,0 +1,26 @@
using Ghost.Data.Resources;
using Microsoft.UI.Xaml;
using System.IO;
namespace Ghost.Editor;
internal static class ActivationHandler
{
private static void FolderInitialization()
{
if (!Directory.Exists(DataPath.ApplicationDataFolder))
{
Directory.CreateDirectory(DataPath.ApplicationDataFolder);
}
if (!Directory.Exists(DataPath.ProjectTemplatesFolder))
{
Directory.CreateDirectory(DataPath.ProjectTemplatesFolder);
}
}
public static void Handle(LaunchActivatedEventArgs args)
{
FolderInitialization();
}
}