New LAF Properties for Modulation Display: Selected Source vs Accumulated Range
-
I had Claude implement some extra obj properties for more flexibility in drawing modulation with LAF:
I've added three new property pairs to the modulation display system that expose separate ranges for use in LAF callbacks, giving developers full control over how modulation is visualised on knobs.
New properties available in the LAF obj:
modSelectedMinValue / modSelectedMaxValue— the range of the currently selected exclusive source onlymodAccumulatedMinValue / modAccumulatedMaxValue— the combined range of all connected sources regardless of selection statemodAccumulatedLiveValue— the live modulation output of all sources combined (useful for a pointer/indicator that tracks total modulation rather than just the selected source)The existing
modMinValue / modMaxValueare untouched and continue to work as before.Use case: When using exclusive source matrix mode, selecting a source previously caused all modulation display to reflect only that source. With these new properties you can independently draw arcs for the selected source range and the accumulated range simultaneously, giving users a clearer picture of what all modulators are doing while still highlighting the selected one.
Files modified:
hi_core/hi_core/MiscToolClasses.h— added new members to ModulationDisplayValue structhi_core/hi_core/MacroControlledComponents.cpp— populated new values in ModUpdater::timerCallback@Christoph-Hart how shall I proceed?
-
@DanH This is exactly the workflow & scope of fix that should be covered by the new contribution workflow, so I think it would be best to get you up and running there ASAP.
For now just make a manual pull request with the changes, I'll review it and merge if OK.
-
@Christoph-Hart Done. It also includes a crash fix I was experiencing regarding IntensityTextConverter
-
@DanH Just looked at it and I'm a bit disappointed - the code quality is far worse than what I'm able to oneshot without any guidance with my tuned workflow. I'm afraid we have to postpone this until the procedure is ready.
If it fixes your immediate problem, then just take the fix and use it locally, but I would have to fully rewrite every single line of code to match the coding style / structure and quality of the existing code.
-
@Christoph-Hart bad Claude!
I'll pass on the feedback!! Obviously it doesn't have access to the whole codebase but it should be able to match the code quality of the files it read.... Will stick with my fork for now. -
@DanH said in New LAF Properties for Modulation Display: Selected Source vs Accumulated Range:
it doesn't have access to the whole codebase but it
Lol why? that's the first thing you need to do, start the claude session from the HISE repo folder, it will then just explore and pull in whatever it takes. A full codebase exploration including the fix of this scope should stay below 60k tokens.
-
@Christoph-Hart on web for now....
-
@DanH ah ok, well that's precisely the difference between "lol AI cannot do s***" and "boy we're f***ed"....
-
@Christoph-Hart looking forward to jumping on the MCP workflow!
-
@Christoph-Hart said in New LAF Properties for Modulation Display: Selected Source vs Accumulated Range:
that's precisely the difference between "lol AI cannot do s***" and "boy we're f***ed"....
1,000% this

-
@DanH said in New LAF Properties for Modulation Display: Selected Source vs Accumulated Range:
@Christoph-Hart on web for now....
I'm using it on the web too. Are you using Claude Code? You can pass it the link to your git repo

-
@David-Healey HISE master - do you know something I don't?

-
@dannytaurus My fork
-
@David-Healey setting it up now, have you across the AGENTS.md file at all?
-
@DanH Nope
-
@Christoph-Hart let me see if I can course correct this PR

-
@Christoph-Hart PR sent, I'm not being precious about it so feel free to close again, good to get the practice in
