Fork of mellinoe/ImGui.NET, an ImGui wrapper for .NET, which includes access to internal functions.
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
|
using System;
|
|
|
|
|
using System.Runtime.InteropServices;
|
|
|
|
|
|
|
|
|
|
namespace ImGuiNET
|
|
|
|
|
{
|
|
|
|
|
public struct ImGuiStoragePair
|
|
|
|
|
{
|
|
|
|
|
public uint Key;
|
|
|
|
|
public UnionValue Value;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public unsafe struct ImGuiStoragePairPtr
|
|
|
|
|
{
|
|
|
|
|
public ImGuiStoragePair* NativePtr { get; }
|
|
|
|
|
public ImGuiStoragePairPtr(ImGuiStoragePair* nativePtr) => NativePtr = nativePtr;
|
|
|
|
|
public ImGuiStoragePairPtr(IntPtr nativePtr) => NativePtr = (ImGuiStoragePair*)nativePtr;
|
|
|
|
|
public static implicit operator ImGuiStoragePairPtr(ImGuiStoragePair* nativePtr) => new ImGuiStoragePairPtr(nativePtr);
|
|
|
|
|
public static implicit operator ImGuiStoragePair*(ImGuiStoragePairPtr wrappedPtr) => wrappedPtr.NativePtr;
|
|
|
|
|
public static implicit operator ImGuiStoragePairPtr(IntPtr nativePtr) => new ImGuiStoragePairPtr(nativePtr);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[StructLayout(LayoutKind.Explicit)]
|
|
|
|
|
public struct UnionValue
|
|
|
|
|
{
|
|
|
|
|
[FieldOffset(0)]
|
|
|
|
|
public int ValueI32;
|
|
|
|
|
[FieldOffset(0)]
|
|
|
|
|
public float ValueF32;
|
|
|
|
|
[FieldOffset(0)]
|
|
|
|
|
public IntPtr ValuePtr;
|
|
|
|
|
}
|
|
|
|
|
}
|