diff --git a/imgui/Dalamud.Bindings.ImGuizmo/Custom/Style.cs b/imgui/Dalamud.Bindings.ImGuizmo/Custom/Style.cs
new file mode 100644
index 000000000..50183013d
--- /dev/null
+++ b/imgui/Dalamud.Bindings.ImGuizmo/Custom/Style.cs
@@ -0,0 +1,274 @@
+// ------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+//
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
+//
+// ------------------------------------------------------------------------------
+
+using System;
+using System.Diagnostics;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+using HexaGen.Runtime;
+using System.Numerics;
+using Dalamud.Bindings.ImGui;
+
+namespace Dalamud.Bindings.ImGuizmo
+{
+ ///
+ /// To be documented.
+ ///
+ [StructLayout(LayoutKind.Sequential)]
+ public partial struct Style
+ {
+ ///
+ /// To be documented.
+ ///
+ public float TranslationLineThickness;
+
+ ///
+ /// To be documented.
+ ///
+ public float TranslationLineArrowSize;
+
+ ///
+ /// To be documented.
+ ///
+ public float RotationLineThickness;
+
+ ///
+ /// To be documented.
+ ///
+ public float RotationOuterLineThickness;
+
+ ///
+ /// To be documented.
+ ///
+ public float ScaleLineThickness;
+
+ ///
+ /// To be documented.
+ ///
+ public float ScaleLineCircleSize;
+
+ ///
+ /// To be documented.
+ ///
+ public float HatchedAxisLineThickness;
+
+ ///
+ /// To be documented.
+ ///
+ public float CenterCircleSize;
+
+ ///
+ /// To be documented.
+ ///
+ public Vector4 DirectionX;
+ public Vector4 DirectionY;
+ public Vector4 DirectionZ;
+ public Vector4 PlaneX;
+ public Vector4 PlaneY;
+ public Vector4 PlaneZ;
+ public Vector4 Selection;
+ public Vector4 Inactive;
+ public Vector4 TranslationLine;
+ public Vector4 ScaleLine;
+ public Vector4 RotationUsingBorder;
+ public Vector4 RotationUsingFill;
+ public Vector4 HatchedAxisLines;
+ public Vector4 Text;
+ public Vector4 TextShadow;
+
+
+ ///
+ /// To be documented.
+ ///
+ public unsafe Style(float translationLineThickness = default, float translationLineArrowSize = default, float rotationLineThickness = default, float rotationOuterLineThickness = default, float scaleLineThickness = default, float scaleLineCircleSize = default, float hatchedAxisLineThickness = default, float centerCircleSize = default, Vector4* colors = default)
+ {
+ TranslationLineThickness = translationLineThickness;
+ TranslationLineArrowSize = translationLineArrowSize;
+ RotationLineThickness = rotationLineThickness;
+ RotationOuterLineThickness = rotationOuterLineThickness;
+ ScaleLineThickness = scaleLineThickness;
+ ScaleLineCircleSize = scaleLineCircleSize;
+ HatchedAxisLineThickness = hatchedAxisLineThickness;
+ CenterCircleSize = centerCircleSize;
+ if (colors != default(Vector4*))
+ {
+ DirectionX = colors[0];
+ DirectionY = colors[1];
+ DirectionZ = colors[2];
+ PlaneX = colors[3];
+ PlaneY = colors[4];
+ PlaneZ = colors[5];
+ Selection = colors[6];
+ Inactive = colors[7];
+ TranslationLine = colors[8];
+ ScaleLine = colors[9];
+ RotationUsingBorder = colors[10];
+ RotationUsingFill = colors[11];
+ HatchedAxisLines = colors[12];
+ Text = colors[13];
+ TextShadow = colors[14];
+ }
+ }
+
+ ///
+ /// To be documented.
+ ///
+ public unsafe Style(float translationLineThickness = default, float translationLineArrowSize = default, float rotationLineThickness = default, float rotationOuterLineThickness = default, float scaleLineThickness = default, float scaleLineCircleSize = default, float hatchedAxisLineThickness = default, float centerCircleSize = default, Span colors = default)
+ {
+ TranslationLineThickness = translationLineThickness;
+ TranslationLineArrowSize = translationLineArrowSize;
+ RotationLineThickness = rotationLineThickness;
+ RotationOuterLineThickness = rotationOuterLineThickness;
+ ScaleLineThickness = scaleLineThickness;
+ ScaleLineCircleSize = scaleLineCircleSize;
+ HatchedAxisLineThickness = hatchedAxisLineThickness;
+ CenterCircleSize = centerCircleSize;
+ if (colors != default(Span))
+ {
+ DirectionX = colors[0];
+ DirectionY = colors[1];
+ DirectionZ = colors[2];
+ PlaneX = colors[3];
+ PlaneY = colors[4];
+ PlaneZ = colors[5];
+ Selection = colors[6];
+ Inactive = colors[7];
+ TranslationLine = colors[8];
+ ScaleLine = colors[9];
+ RotationUsingBorder = colors[10];
+ RotationUsingFill = colors[11];
+ HatchedAxisLines = colors[12];
+ Text = colors[13];
+ TextShadow = colors[14];
+ }
+ }
+
+
+ ///
+ /// To be documented.
+ ///
+ public unsafe Span Colors
+
+ {
+ get
+ {
+ fixed (Vector4* p = &this.DirectionX)
+ {
+ return new Span(p, 15);
+ }
+ }
+ }
+ ///
+ /// To be documented.
+ ///
+ public unsafe void Destroy()
+ {
+ fixed (Style* @this = &this)
+ {
+ ImGuizmo.DestroyNative(@this);
+ }
+ }
+
+ }
+
+ ///
+ /// To be documented.
+ ///
+ #if NET5_0_OR_GREATER
+ [DebuggerDisplay("{DebuggerDisplay,nq}")]
+ #endif
+ public unsafe struct StylePtr : IEquatable
+ {
+ public StylePtr(Style* handle) { Handle = handle; }
+
+ public Style* Handle;
+
+ public bool IsNull => Handle == null;
+
+ public static StylePtr Null => new StylePtr(null);
+
+ public Style this[int index] { get => Handle[index]; set => Handle[index] = value; }
+
+ public static implicit operator StylePtr(Style* handle) => new StylePtr(handle);
+
+ public static implicit operator Style*(StylePtr handle) => handle.Handle;
+
+ public static bool operator ==(StylePtr left, StylePtr right) => left.Handle == right.Handle;
+
+ public static bool operator !=(StylePtr left, StylePtr right) => left.Handle != right.Handle;
+
+ public static bool operator ==(StylePtr left, Style* right) => left.Handle == right;
+
+ public static bool operator !=(StylePtr left, Style* right) => left.Handle != right;
+
+ public bool Equals(StylePtr other) => Handle == other.Handle;
+
+ ///
+ public override bool Equals(object obj) => obj is StylePtr handle && Equals(handle);
+
+ ///
+ public override int GetHashCode() => ((nuint)Handle).GetHashCode();
+
+ #if NET5_0_OR_GREATER
+ private string DebuggerDisplay => string.Format("StylePtr [0x{0}]", ((nuint)Handle).ToString("X"));
+ #endif
+ ///
+ /// To be documented.
+ ///
+ public ref float TranslationLineThickness => ref Unsafe.AsRef(&Handle->TranslationLineThickness);
+ ///
+ /// To be documented.
+ ///
+ public ref float TranslationLineArrowSize => ref Unsafe.AsRef(&Handle->TranslationLineArrowSize);
+ ///
+ /// To be documented.
+ ///
+ public ref float RotationLineThickness => ref Unsafe.AsRef(&Handle->RotationLineThickness);
+ ///
+ /// To be documented.
+ ///
+ public ref float RotationOuterLineThickness => ref Unsafe.AsRef(&Handle->RotationOuterLineThickness);
+ ///
+ /// To be documented.
+ ///
+ public ref float ScaleLineThickness => ref Unsafe.AsRef(&Handle->ScaleLineThickness);
+ ///
+ /// To be documented.
+ ///
+ public ref float ScaleLineCircleSize => ref Unsafe.AsRef(&Handle->ScaleLineCircleSize);
+ ///
+ /// To be documented.
+ ///
+ public ref float HatchedAxisLineThickness => ref Unsafe.AsRef(&Handle->HatchedAxisLineThickness);
+ ///
+ /// To be documented.
+ ///
+ public ref float CenterCircleSize => ref Unsafe.AsRef(&Handle->CenterCircleSize);
+ ///
+ /// To be documented.
+ ///
+ public unsafe Span Colors
+
+ {
+ get
+ {
+ return new Span(&Handle->DirectionX, 15);
+ }
+ }
+ ///
+ /// To be documented.
+ ///
+ public unsafe void Destroy()
+ {
+ ImGuizmo.DestroyNative(Handle);
+ }
+
+ }
+
+}