Code/SboxSuperuser/Engine/Vendor/ImGui/ImGuiGroupData.cs

A small data container class used by a vendored ImGui implementation. It stores backup layout and state values for an ImGui group, such as cursor positions, indentation, line sizes and flags about active/hovered/item state.

// Vendored from zeljkovranjes/sbox-imgui; see LICENSE and PROVENANCE.md in this folder.
using Sandbox;
#pragma warning disable CS0649 // Upstream reserves fields for optional widgets and features.
namespace SboxSuperuser.Engine.Vendor.ImGui;

internal class ImGuiGroupData
{
	public int WindowID;
	public Vector2 BackupCursorPos;
	public Vector2 BackupCursorMaxPos;
	public Vector2 BackupCursorPosPrevLine;
	public float BackupIndent;
	public float BackupGroupOffset;
	public Vector2 BackupCurrLineSize;
	public float BackupCurrLineTextBaseOffset;
	public int BackupActiveIdIsAlive;
	public bool BackupActiveIdPreviousFrameIsAlive;
	public bool BackupHoveredIdIsAlive;
	public bool BackupIsSameLine;
	public bool EmitItem;
}