Skip to content

Take the ImGui suite at 3.23.0 - #29

Merged
matt-edmondson merged 1 commit into
mainfrom
claude/imgui-suite-3.23.0
Sep 8, 2026
Merged

Take the ImGui suite at 3.23.0#29
matt-edmondson merged 1 commit into
mainfrom
claude/imgui-suite-3.23.0

Conversation

@matt-edmondson

Copy link
Copy Markdown
Contributor

Why

3.23.0 makes the node graph's layout measure a link between the pins it is drawn between, rather than between the two node centres (ktsu-dev/ImGuiApp#364).

Every force that shapes a link — the spring, the levelling that prefers horizontal, and the clearance that keeps a curve out from behind its own nodes — worked on node geometry before. On a node with several rows of pins, which is most of them in this editor, those differ by most of the node's height. So the layout was shaping a line nobody can see: a pair whose centres were perfectly level could still show a steep link, and the clearance was computed from a vertical drop the curve isn't drawn with.

This matters for the two changes already in 3.21.0 and 3.22.0 — both were operating on centres, so this is the first version where all three forces act on the geometry actually on screen.

The renderer measures where each pin sits and feeds it to the layout during its own render pass, so nothing here has to call anything new.

What changed

Directory.Packages.props only — the six packages published from the ImGuiApp repo, 3.22.0 to 3.23.0:

ktsu.ImGui.App, ktsu.ImGui.App.Testing, ktsu.ImGui.SyntaxHighlighting, ktsu.ImGui.Widgets, ktsu.ImGui.NodeEditor, ktsu.ForceDirectedLayout.

Verification

  • Confirmed v3.23.0's tag contains the Measure links between their pins rather than between node centres ImGuiApp#364 merge commit (a5989ed, 10:02:46Z) rather than trusting the version number.
  • Waited for all six packages to agree on 3.23.0 before building — a previous bump hit NU1102 because one package lagged the others, and cleared the NuGet HTTP cache, which had kept resolving a stale index even after publication.
  • dotnet build -c Release clean, Coder.Test 329/329 against 3.23.0.

Not verified visually. This environment is headless, and since the layout is now shaping the real curves the result may look meaningfully different from 3.22.0 — LinkFlatteningStrength (default 0.5) is worth re-judging against this rather than against what came before.

🤖 Generated with Claude Code

https://claude.ai/code/session_01D2KNUKr1xJPTEdDmeF2tQN


Generated by Claude Code

3.23.0 makes the node graph's layout measure a link between the pins it is
drawn between, rather than between the two node centres. Every force that
shapes a link worked on node geometry before, so on a node with several
rows of pins - which is most of them here - it was shaping a line the user
could not see: a pair whose centres were level could still show a steep
link, and the clearance that keeps a curve out from behind its own nodes
was computed from a drop the curve is not drawn with.

The renderer measures where each pin actually sits and feeds it to the
layout during its own render pass, so nothing here has to call anything
new.

Behavioural change inside the layout, so nothing here changes but the pins.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01D2KNUKr1xJPTEdDmeF2tQN
@sonarqubecloud

sonarqubecloud Bot commented Sep 8, 2026

Copy link
Copy Markdown

@matt-edmondson
matt-edmondson merged commit f9712a4 into main Sep 8, 2026
12 checks passed
@matt-edmondson
matt-edmondson deleted the claude/imgui-suite-3.23.0 branch September 8, 2026 10:40
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