| 433 | } |
| 434 | |
| 435 | void FilterControl::handleAsyncUpdate() |
| 436 | { |
| 437 | // This function is guaranteed to be called on the message thread after |
| 438 | // triggerAsyncUpdate() has been called. |
| 439 | // All UI updates are now safely and efficiently handled here. |
| 440 | updateChain(); |
| 441 | updateResponseCurve(); |
| 442 | setDraggableButtonBounds(); |
| 443 | |
| 444 | // Crucially, check if the animation status needs to change |
| 445 | // This handles cases like adding/removing modulation links in the matrix. |
| 446 | checkAnimationStatus(); |
| 447 | |
| 448 | repaint(); |
| 449 | } |
| 450 | |
| 451 | void FilterControl::updateLfoChain(const ModulatedFilterValues& modulatedValues) |
| 452 | { |
nothing calls this directly
no outgoing calls
no test coverage detected