MCPcopy Create free account
hub / github.com/DamRsn/NeuralNote / NoteOptionsView

Method NoteOptionsView

NeuralNote/Source/Components/Views/NoteOptionsView.cpp:8–61  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

6#include "NeuralNoteMainView.h"
7
8NoteOptionsView::NoteOptionsView(NeuralNoteAudioProcessor& processor)
9 : mProcessor(processor)
10{
11 mEnableButton = std::make_unique<TextButton>("EnableNoteOptionsButton");
12 mEnableButton->setButtonText("");
13 mEnableButton->setClickingTogglesState(true);
14
15 mEnableButton->setColour(TextButton::buttonColourId, Colours::white.withAlpha(0.2f));
16 mEnableButton->setColour(TextButton::buttonOnColourId, BLACK);
17 mEnableButton->setTooltip(NeuralNoteTooltips::sq_enable);
18
19 mEnableAttachment = std::make_unique<AudioProcessorValueTreeState::ButtonAttachment>(
20 mProcessor.getAPVTS(), ParameterHelpers::getIdStr(ParameterHelpers::EnableNoteQuantizationId), *mEnableButton);
21 addAndMakeVisible(mEnableButton.get());
22
23 mMinMaxNoteSlider = std::make_unique<MinMaxNoteSlider>(*mProcessor.getParams()[ParameterHelpers::MinMidiNoteId],
24 *mProcessor.getParams()[ParameterHelpers::MaxMidiNoteId]);
25 mMinMaxNoteSlider->setTooltip(NeuralNoteTooltips::sq_note_range);
26 addAndMakeVisible(mMinMaxNoteSlider.get());
27
28 mRootNoteDropdown = std::make_unique<ComboBox>("KeyRootNoteDropDown");
29 mRootNoteDropdown->setEditableText(false);
30 mRootNoteDropdown->setJustificationType(Justification::centredLeft);
31 mRootNoteDropdown->addItemList(NoteUtils::RootNotesSharpStr, 1);
32 mRootNoteDropdown->setTooltip(NeuralNoteTooltips::sq_root_note);
33 mKeyAttachment = std::make_unique<ComboBoxParameterAttachment>(
34 *mProcessor.getParams()[ParameterHelpers::KeyRootNoteId], *mRootNoteDropdown);
35 addAndMakeVisible(mRootNoteDropdown.get());
36
37 mKeyType = std::make_unique<ComboBox>("ScaleTypeDropDown");
38 mKeyType->setEditableText(false);
39 mKeyType->setJustificationType(Justification::centredLeft);
40 mKeyType->addItemList(NoteUtils::ScaleTypesStr, 1);
41 mKeyType->setTooltip(NeuralNoteTooltips::sq_scale_type);
42 mKeyTypeAttachment =
43 std::make_unique<ComboBoxParameterAttachment>(*mProcessor.getParams()[ParameterHelpers::KeyTypeId], *mKeyType);
44 addAndMakeVisible(mKeyType.get());
45
46 mSnapMode = std::make_unique<ComboBox>("SnapModeDropDown");
47 mSnapMode->setEditableText(false);
48 mSnapMode->setJustificationType(Justification::centredLeft);
49 mSnapMode->addItemList(NoteUtils::SnapModesStr, 1);
50 mSnapMode->setTooltip(NeuralNoteTooltips::sq_snap_mode);
51 mSnapModeAttachment = std::make_unique<ComboBoxParameterAttachment>(
52 *mProcessor.getParams()[ParameterHelpers::KeySnapModeId], *mSnapMode);
53 addAndMakeVisible(mSnapMode.get());
54
55 setSize(266, 139);
56
57 mProcessor.getParams()[static_cast<size_t>(ParameterHelpers::EnableNoteQuantizationId)]->addListener(this);
58
59 bool is_enabled = mProcessor.getParameterValue(ParameterHelpers::EnableNoteQuantizationId) > 0.5f;
60 _enableView(is_enabled);
61}
62
63NoteOptionsView::~NoteOptionsView()
64{

Callers

nothing calls this directly

Calls 2

getParameterValueMethod · 0.80
setTooltipMethod · 0.45

Tested by

no test coverage detected