MCPcopy Create free account
hub / github.com/jerryuhoo/Fire / setupModulationCallbacks

Method setupModulationCallbacks

Source/Panels/ControlPanel/PanelBase.cpp:53–94  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

51}
52
53void PanelBase::setupModulationCallbacks(ModulatableSlider& slider)
54{
55 auto safeSlider = juce::Component::SafePointer<ModulatableSlider>(&slider);
56
57 // This logic is generic enough to be in the base class.
58 // It uses the slider's `parameterID` which is set later during `updateAttachments`.
59 safeSlider->onModAmountSetValue = [this, safeSlider](double newValue)
60 {
61 if (safeSlider)
62 processor.setModulationValue(safeSlider->parameterID, (float) newValue);
63 };
64
65 safeSlider->onModAmountChanged = [this, safeSlider](double newAmount)
66 {
67 if (safeSlider)
68 processor.setModulationDepth(safeSlider->parameterID, (float) newAmount);
69 };
70
71 safeSlider->onBipolarModeToggled = [this, safeSlider]()
72 {
73 if (safeSlider)
74 processor.toggleBipolarMode(safeSlider->parameterID);
75 };
76
77 safeSlider->onModulationReset = [this, safeSlider]()
78 {
79 if (safeSlider)
80 processor.resetModulation(safeSlider->parameterID);
81 };
82
83 safeSlider->onModulationCleared = [this, safeSlider]()
84 {
85 if (safeSlider)
86 processor.clearModulationForParameter(safeSlider->parameterID);
87 };
88
89 safeSlider->onModulationInverted = [this, safeSlider]()
90 {
91 if (safeSlider)
92 processor.invertModulationDepthForParameter(safeSlider->parameterID);
93 };
94}

Callers

nothing calls this directly

Calls 6

setModulationValueMethod · 0.80
setModulationDepthMethod · 0.80
toggleBipolarModeMethod · 0.80
resetModulationMethod · 0.80

Tested by

no test coverage detected