Skip to content

[minor] Publish the chord matcher, interface scale, linear colour edits, prompt answers, overwrite confirmation and crop guides - #628

Merged
matt-edmondson merged 2 commits into
mainfrom
claude/project-thread-n3xys8
Oct 11, 2026
Merged

matt-edmondson merged 2 commits into
mainfrom
claude/project-thread-n3xys8

Conversation

@matt-edmondson

Copy link
Copy Markdown
Contributor

Requested by Matt · project thread

Before: ImageGui keeps its own copies of a chord matcher with capture and menu names, the interface scale, hand-written linear-to-sRGB colour edits, a choice dialog, and crop guides, because ImGuiApp's versions are internal or missing.

After: ImGuiApp publishes all of them, so ImageGui can delete its copies (its batch i task 9) without its UI changing.

  • KeyChordMatcher is public, with TryCapture, Compose(KeyChordModifiers, ImGuiKey), Display and DisplayName, using ImageGui's ChordKeys tables (Ctrl+], Alt+UpArrow, Super for Meta).
  • InterfaceScale is public, gains Pixels, and answers 1 when there is no ImGui context.
  • ImGuiWidgets.ColorEdit / ColorPicker / ColorButton store linear and show sRGB, writing back only on an edit.
  • ImGuiPopups.Prompt.Open takes PromptButtons (own probe name, at most one IsCancel) and an optional PromptCheckbox read through Checked. Actions run after the popup ends, so an answer can open the next prompt. A prompt closed without an answer (Escape, close button, or pushed aside by another popup) runs the cancel action once. Every Modal now centres itself each time it appears.
  • FilesystemBrowser.ConfirmOverwrite (off by default) asks before a save picks an existing file.
  • CropOverlay gains an overload taking CropOverlayOptions: golden ratio, golden spiral, diagonals, triangles and grid guides, flippable. CropGuides draws the same lines over any rectangle or turned crop. The original overload draws the same pixels as before (tested).

How: tests for each piece (unit tests for chord naming and round trips, colour conversions and guide geometry; isolation UI tests for capture, colour edits and guides; prompt and overwrite UI tests in the popups suite), demo sections, two gallery tiles (ColorEdit, CropOverlay guides), and README and CLAUDE.md lines. Every test suite and the gallery suite pass locally.

🤖 Generated with Claude Code

https://claude.ai/code/session_01RJMwk2LEtENDVogQnzKNpW


Generated by Claude Code

…ts, prompt answers, overwrite confirmation and crop guides

ImageGui keeps its own copies of these; this makes ImGuiApp's versions public
or adds what was missing so the copies can go.

- KeyChordMatcher is public, with TryCapture, Compose, Display and DisplayName
- InterfaceScale is public, with Pixels, and answers one without a context
- ColorEdit, ColorPicker and ColorButton store linear and show sRGB
- Prompt takes PromptButtons with their own probe names and a cancel answer for
  a dismissal, an optional PromptCheckbox, and runs actions after the popup ends
- FilesystemBrowser.ConfirmOverwrite asks before a save replaces a file
- CropOverlay draws golden ratio, golden spiral, diagonals, triangles and grid
  guides through CropOverlayOptions, flippable; CropGuides draws them anywhere

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RJMwk2LEtENDVogQnzKNpW
@matt-edmondson matt-edmondson self-assigned this Oct 11, 2026
Comment thread tests/ImGui.Widgets.Tests/CropGuidesTests.cs Fixed
Comment thread tests/ImGui.Widgets.Tests/CropGuidesTests.cs Fixed
Comment thread tests/ImGui.Widgets.Tests/CropGuidesTests.cs Fixed
Comment thread tests/ImGui.Widgets.Tests/CropGuidesTests.cs Fixed
Comment thread tests/ImGui.Widgets.UITests/CropOverlayTests.cs Fixed
Comment thread tests/ImGui.Widgets.Tests/CropGuidesTests.cs Fixed
Comment thread tests/ImGuiPopupsDemo.UITests/FilesystemBrowserOverwriteTests.cs Fixed
Comment thread tests/ImGuiPopupsDemo.UITests/FilesystemBrowserOverwriteTests.cs Fixed
Comment thread tests/ImGuiPopupsDemo.UITests/FilesystemBrowserOverwriteTests.cs Fixed
Comment thread tests/ImGuiPopupsDemo.UITests/FilesystemBrowserOverwriteTests.cs Fixed
…rawn bounds once in the new tests

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01RJMwk2LEtENDVogQnzKNpW
@sonarqubecloud

Copy link
Copy Markdown

@matt-edmondson
matt-edmondson merged commit 72675ef into main Oct 11, 2026
17 checks passed
@matt-edmondson
matt-edmondson deleted the claude/project-thread-n3xys8 branch October 11, 2026 15:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants