plugin ui
All checks were successful
Build / Compute Version (push) Successful in 17s
Build / Build Nuget package (CringeBootstrap.Abstractions) (push) Successful in 3m5s
Build / Build Nuget package (NuGet) (push) Successful in 2m34s
Build / Build Nuget package (CringePlugins) (push) Successful in 2m56s
Build / Build Nuget package (SharedCringe) (push) Successful in 1m52s
Build / Build Launcher (push) Successful in 3m52s

This commit is contained in:
zznty
2024-11-03 01:58:04 +07:00
parent 271e8a1dde
commit aac79af331
22 changed files with 573 additions and 40 deletions

View File

@@ -14,20 +14,18 @@ namespace CringeLauncher;
internal class ImGuiHandler : IDisposable
{
private readonly DeviceContext _deviceContext;
private DeviceContext? _deviceContext;
private static nint _wndproc;
public static ImGuiHandler? Instance;
public static RenderTargetView? Rtv;
private readonly IRootRenderComponent _renderHandler;
private readonly IRootRenderComponent _renderHandler = new RenderHandler();
public ImGuiHandler(nint windowHandle, Device1 device, DeviceContext deviceContext)
public void Init(nint windowHandle, Device1 device, DeviceContext deviceContext)
{
_deviceContext = deviceContext;
_renderHandler = new RenderHandler();
CreateContext();
var io = GetIO();
@@ -64,7 +62,7 @@ internal class ImGuiHandler : IDisposable
Render();
_deviceContext.ClearState();
_deviceContext!.ClearState();
_deviceContext.OutputMerger.SetRenderTargets(Rtv);
ImGui_ImplDX11_RenderDrawData(GetDrawData());
@@ -87,7 +85,7 @@ internal class ImGuiHandler : IDisposable
public void Dispose()
{
_deviceContext.Dispose();
_deviceContext?.Dispose();
_renderHandler.Dispose();
}
}