0.6.1: pre-size sub-panels in addWidgets to fix blank panel content
Build / build (push) Has been cancelled

FTB Library's Panel.refreshWidgets runs in this order:
  1. clearWidgets
  2. addWidgets    (parent creates sub-panels, default size 0x0)
  3. for each Panel child: refreshWidgets()  ← recurses HERE
  4. alignWidgets  (parent sizes children, but it's too late)

Step 3 means sub-panels' own addWidgets/alignWidgets run with
width=height=0. Children sized via setSize(width, 12) end up 0 wide,
visible content disappears.

Fix is mechanical: every screen now sizes its sub-panels in
addWidgets() BEFORE the add() call. By the time the recursive
refreshWidgets hits the sub-panel, its dimensions are correct.

Caught when HubScreen rendered blank (status panel was set up to fill
the body but its Row children were 0px wide). Same latent issue in
TierUpgrade, CountingHouse, Bounty, Plot, Quest Log — all fixed.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
Matt
2026-06-08 15:51:08 +00:00
parent 1d38d86a2e
commit 2888cf1814
7 changed files with 62 additions and 35 deletions
+1 -1
View File
@@ -19,5 +19,5 @@ loader_version_range=[1,)
mod_id=bnstoolkit
mod_name=Brass and Sigil Toolkit
mod_license=All Rights Reserved
mod_version=0.6.0
mod_version=0.6.1
mod_group_id=uk.sijbers.bnstoolkit