Improve MidiLearnPanel/Table scripted LAF styling support#919
Draft
davidhealey wants to merge 5 commits intochristophhart:developfrom
Draft
Improve MidiLearnPanel/Table scripted LAF styling support#919davidhealey wants to merge 5 commits intochristophhart:developfrom
davidhealey wants to merge 5 commits intochristophhart:developfrom
Conversation
Allows script developers to fully customise the PerformanceLabel floating tile via a drawPerformanceLabel LAF callback. The callback object provides layout, colours, font settings, and performance metrics (CPU %, RAM bytes, voices). Rendering now uses direct painting through LookAndFeelMethods instead of an internal Label, while preserving the previous default appearance and remaining backward compatible when no ScriptedLookAndFeel is used.
Exposes the keyboard floating tile's Font and FontSize panel properties in the obj passed to drawWhiteNote and drawBlackNote scripted LAF callbacks, allowing script authors to use the configured font when drawing custom key labels. https://claude.ai/code/session_01PemsiopLqyqjZb35AWzTZx Fix font property in drawWhiteNote/drawBlackNote callbacks including style getTypefaceName() returns only the family name ("Inter"), dropping the style suffix. Add getFontName() getter to FloatingTileContent to expose the raw fontName string ("Inter Bold", "Inter Medium", etc.) and use that for the font callback property instead. https://claude.ai/code/session_01PemsiopLqyqjZb35AWzTZx
Add comprehensive scripted look-and-feel support for MidiLearnPanel and
FrontendMacroPanel floating tiles, including:
- Scripted LAF support for drawTableCell, drawTableRowBackground,
drawTableHeaderBackground, drawTableHeaderColumn, drawLinearSlider,
drawToggleButton, and drawScrollbar callbacks
- Pass floating tile properties (colours, font, fontSize) to all LAF
callbacks
- Add ColumnWidthRatio property for configurable column widths
- Add itemColour3, font, and fontSize to all drawTable LAF functions
- Change InvertedButton from TextButton to ToggleButton for
drawToggleButton
- Set component IDs on floating tile sliders ("min" and "max")
- Use visual column indices in drawTableCell and drawTableHeaderColumn
- Make textBoxOutlineColourId transparent for scripted LAF sliders
- Fix getFontName() usage for LAF font property across all table
callbacks
https://claude.ai/code/session_01E1nPYm3ugRjMYoHCwRZkR4
This was referenced Mar 18, 2026
Use resizeAllColumnsToFit(width - scrollbarThickness) to properly account for the scrollbar in both CSS and non-CSS table paths, matching the pattern used in PageFactory.cpp. https://claude.ai/code/session_01PoL6Ct4FKXR2LvU9S3Wksu
Adds a data property "ScrollbarWidth" to MidiLearnPanel that controls the viewport's scrollbar thickness. Defaults to 16 to match the JUCE default, preserving backwards compatibility. https://claude.ai/code/session_01PoL6Ct4FKXR2LvU9S3Wksu
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Depends on #918
Improve MidiLearnPanel/FrontendMacroPanel scripted LAF styling support
Add comprehensive scripted look-and-feel support for MidiLearnPanel and
FrontendMacroPanel floating tiles, including:
drawTableHeaderBackground, drawTableHeaderColumn, drawLinearSlider,
drawToggleButton, and drawScrollbar callbacks
callbacks
drawToggleButton
callbacks
https://claude.ai/code/session_01E1nPYm3ugRjMYoHCwRZkR4