Code/ImGuiStyle.cs
using System;
using System.Collections.Generic;
namespace Duccsoft.ImGui;
public class ImGuiStyle
{
public static float UIScale => MathF.Min( Screen.Width, Screen.Height ) * Screen.DesktopScale / 1080f;
public Vector2 WindowPadding
{
get => _windowPadding * UIScale;
set => _windowPadding = value;
}
private Vector2 _windowPadding = new Vector2( 8, 8 );
public Vector2 FramePadding
{
get => _framePadding * UIScale;
set => _framePadding = value;
}
private Vector2 _framePadding = new Vector2( 4, 3 );
public Vector2 ItemSpacing
{
get => _itemSpacing * UIScale;
set => _itemSpacing = value;
}
private Vector2 _itemSpacing = new Vector2( 8, 4 );
public Vector2 ItemInnerSpacing
{
get => _itemInnerSpacing * UIScale;
set => _itemInnerSpacing = value;
}
private Vector2 _itemInnerSpacing = new Vector2( 4, 4 );
public float IndentSpacing
{
get => _indentSpacing * UIScale;
set => _indentSpacing = value;
}
private float _indentSpacing = 21f;
public float GrabMinSize
{
get => _grabMinSize * UIScale;
set => _grabMinSize = value;
}
private float _grabMinSize = 12f;
public Dictionary<ImGuiCol, Color32> Colors = new();
}