MCPcopy Create free account
hub / github.com/StrangeLoopsAudio/gRainbow / AdjustPanel

Method AdjustPanel

Source/Components/AdjustPanel.cpp:15–104  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

13#include "Utils/Colour.h"
14
15AdjustPanel::AdjustPanel(Parameters& parameters)
16 : mParameters(parameters),
17 mCurSelectedParams(parameters.getSelectedParams()),
18 mParamColour(Utils::Colour::GLOBAL),
19 mSliderPitchAdjust(parameters, ParamCommon::Type::PITCH_ADJUST),
20 mSliderPitchSpray(parameters, ParamCommon::Type::PITCH_SPRAY),
21 mSliderPosAdjust(parameters, ParamCommon::Type::POS_ADJUST),
22 mSliderPosSpray(parameters, ParamCommon::Type::POS_SPRAY),
23 mSliderPanAdjust(parameters, ParamCommon::Type::PAN_ADJUST),
24 mSliderPanSpray(parameters, ParamCommon::Type::PAN_SPRAY),
25 mSliderOctaveAdjust(parameters, ParamCommon::Type::OCTAVE_ADJUST),
26 mBtnReverse(parameters, ParamCommon::Type::REVERSE) {
27 // Default slider settings
28 std::vector<std::reference_wrapper<CommonSlider>> sliders = { mSliderPanSpray, mSliderPanAdjust, mSliderPosSpray, mSliderPosAdjust, mSliderPitchSpray, mSliderPitchAdjust, mSliderOctaveAdjust };
29 for (auto& slider : sliders) {
30 slider.get().setNumDecimalPlacesToDisplay(2);
31 slider.get().setPopupDisplayEnabled(true, true, this);
32 addAndMakeVisible(slider.get());
33 }
34
35 // Default button settings
36 std::vector<std::reference_wrapper<juce::Button>> buttons = { mBtnReverse, mBtnRefTone };
37 for (auto& btn : buttons) {
38 btn.get().setColour(juce::ToggleButton::ColourIds::tickColourId, Utils::Colour::GLOBAL);
39 addAndMakeVisible(btn.get());
40 }
41
42 // Default label settings
43 std::vector<std::reference_wrapper<juce::Label>> labels = { mLabelRefTone, mLabelPanSpray, mLabelPanAdjust, mLabelPosSpray, mLabelPosAdjust, mLabelPitchSpray, mLabelPitchAdjust, mLabelOctaveAdjust };
44 for (auto& label : labels) {
45 label.get().setColour(juce::Label::ColourIds::textColourId, Utils::Colour::GLOBAL);
46 label.get().setJustificationType(juce::Justification::centredTop);
47 label.get().setFont(Utils::getFont());
48 addAndMakeVisible(label.get());
49 }
50
51 // Reference tone
52 mBtnRefTone.onClick = [this]() {
53 if (mBtnRefTone.getToggleState() && onRefToneOn != nullptr) {
54 onRefToneOn();
55 }
56 else if (!mBtnRefTone.getToggleState() && onRefToneOff != nullptr) onRefToneOff();
57 };
58 mLabelRefTone.setText("ref tone", juce::dontSendNotification);
59
60 // Adjust pitch
61 mSliderPitchAdjust.setRange(ParamRanges::PITCH_ADJUST.start, ParamRanges::PITCH_ADJUST.end, 0.001);
62 mSliderPitchAdjust.setNumDecimalPlacesToDisplay(3);
63 mLabelPitchAdjust.setText("tune adjust", juce::dontSendNotification);
64
65 // Pitch spray
66 mSliderPitchSpray.setTextValueSuffix(" cents");
67 mSliderPitchSpray.setNumDecimalPlacesToDisplay(3);
68 mSliderPitchSpray.setRange(ParamRanges::PITCH_SPRAY.start, ParamRanges::PITCH_SPRAY.end, 0.001);
69 mLabelPitchSpray.setText("tune spray", juce::dontSendNotification);
70
71 // Adjust position
72 mSliderPosAdjust.setRange(ParamRanges::POSITION_ADJUST.start, ParamRanges::POSITION_ADJUST.end, 0.001);

Callers

nothing calls this directly

Calls 4

getFontFunction · 0.85
getSelectedParamsMethod · 0.80
addListenerMethod · 0.80

Tested by

no test coverage detected