VerticalBarHandle
See the VerticalBarHandleDemo.cs.
using Gridrand.RimGui.Manual;
namespace Gridrand.RimGui.Extensions.Manual
{
/// <summary>
/// <see cref="GuiUtil.VerticalBarHandle(Gui, Contracts.Rect, float, int)"/>,
/// <see cref="GuiUtil.SnapVerticalBarHandle(Gui, Contracts.Rect, float, int)"/> demo.
/// </summary>
class VerticalBarHandleDemo : ManualBase, IManual
{
float value = 0f;
float snapValue = 0f;
public VerticalBarHandleDemo(ManualBaseResource p) : base(p)
{
}
public void Draw()
{
using var s = ExStyle.VerticalBarHandle.Heights.Begin(10f);
Gui.Heading("VerticalBarHandle");
// Allocates a rectangular area for the vertical bar.
var rect = Ctx.AllocateRect(height: 100);
Gui.FrameBox(rect);
// Draws the interactive VerticalBarHandle.
value = Gui.VerticalBarHandle(rect, value);
Gui.Text(value.ToString("F2"));
Gui.Heading("SnapVerticalBarHandle");
// Allocates another rectangular area for the snap vertical bar.
var rect2 = Ctx.AllocateRect(height: 100);
Gui.FrameBox(rect2);
// Draws the interactive SnapVerticalBarHandle.
snapValue = Gui.SnapVerticalBarHandle(rect2, snapValue);
Gui.Text(snapValue.ToString("F2"));
}
}
}