Part of the domain widget shortlist (docs/plans/2026-09-29-domain-widget-shortlist.md), ranked 13th of 13: medium-high value, medium effort. It's rare in .NET ImGui, so it would set the library apart.
Work is already underway on this in another thread of the "New widget opportunities" project. Check for an open PR before picking it up, so it isn't built twice.
What
Three colour-grading wheels (lift, gamma, gain). Each is a trackball offsetting hue and saturation, with a master slider for luminance and a double-click to reset.
Reuses
- An
XYPad-style state class for the trackball puck, tested without an ImGui context.
- The colour maths comes from
ktsu.Semantics.Color, converted at the seam through ImGui.Color.
Done when
- The trackball state and colour mapping are unit-tested without an ImGui context.
- The widget calls
ImGuiProbes.MarkItem.
- There's an isolation suite in
tests/ImGui.Widgets.UITests/.
- There's a demo in
examples/ImGuiWidgetsDemo/.
- The widget list in CLAUDE.md and the README is updated.
Part of the domain widget shortlist (
docs/plans/2026-09-29-domain-widget-shortlist.md), ranked 13th of 13: medium-high value, medium effort. It's rare in .NET ImGui, so it would set the library apart.What
Three colour-grading wheels (lift, gamma, gain). Each is a trackball offsetting hue and saturation, with a master slider for luminance and a double-click to reset.
Reuses
XYPad-style state class for the trackball puck, tested without an ImGui context.ktsu.Semantics.Color, converted at the seam throughImGui.Color.Done when
ImGuiProbes.MarkItem.tests/ImGui.Widgets.UITests/.examples/ImGuiWidgetsDemo/.