diff --git a/Source/PluginGui.cpp b/Source/PluginGui.cpp
index e3a3846..30455f7 100644
--- a/Source/PluginGui.cpp
+++ b/Source/PluginGui.cpp
@@ -75,6 +75,11 @@ void PluginGui::updateFromParameters()
if (processor->getEnumParameter("Carrier Vibrato")) vibratoButton2->setToggleState(true, false);
if (processor->getEnumParameter("Carrier Sustain")) sustainButton2->setToggleState(true, false);
if (processor->getEnumParameter("Carrier Keyscale Rate")) keyscaleEnvButton2->setToggleState(true, false);
+
+ vibratoSlider->setValue(processor->getEnumParameter("Vibrato Depth") * 7.0 + 7.0, NotificationType::dontSendNotification);
+ tremoloSlider->setValue(processor->getEnumParameter("Tremolo Depth") * 3.8 + 1.0, NotificationType::dontSendNotification);
+ feedbackSlider->setValue(processor->getIntParameter("Modulator Feedback"), NotificationType::dontSendNotification);
+
}
//[/MiscUserDefs]
@@ -98,7 +103,7 @@ PluginGui::PluginGui (JuceOplvstiAudioProcessor* ownerFilter)
addAndMakeVisible (frequencyLabel = new Label ("frequency label",
"Frequency"));
frequencyLabel->setFont (Font (15.00f, Font::plain));
- frequencyLabel->setJustificationType (Justification::centred);
+ frequencyLabel->setJustificationType (Justification::centredLeft);
frequencyLabel->setEditable (false, false, false);
frequencyLabel->setColour (Label::textColourId, Colour (0xff007f00));
frequencyLabel->setColour (TextEditor::textColourId, Colours::black);
@@ -257,7 +262,7 @@ PluginGui::PluginGui (JuceOplvstiAudioProcessor* ownerFilter)
addAndMakeVisible (waveLabel = new Label ("wave label",
"Wave"));
waveLabel->setFont (Font (15.00f, Font::plain));
- waveLabel->setJustificationType (Justification::centred);
+ waveLabel->setJustificationType (Justification::centredLeft);
waveLabel->setEditable (false, false, false);
waveLabel->setColour (Label::textColourId, Colour (0xff007f00));
waveLabel->setColour (TextEditor::textColourId, Colours::black);
@@ -329,7 +334,7 @@ PluginGui::PluginGui (JuceOplvstiAudioProcessor* ownerFilter)
addAndMakeVisible (frequencyLabel3 = new Label ("frequency label",
"Frequency"));
frequencyLabel3->setFont (Font (15.00f, Font::plain));
- frequencyLabel3->setJustificationType (Justification::centred);
+ frequencyLabel3->setJustificationType (Justification::centredLeft);
frequencyLabel3->setEditable (false, false, false);
frequencyLabel3->setColour (Label::textColourId, Colour (0xff007f00));
frequencyLabel3->setColour (TextEditor::textColourId, Colours::black);
@@ -488,7 +493,7 @@ PluginGui::PluginGui (JuceOplvstiAudioProcessor* ownerFilter)
addAndMakeVisible (waveLabel2 = new Label ("wave label",
"Wave"));
waveLabel2->setFont (Font (15.00f, Font::plain));
- waveLabel2->setJustificationType (Justification::centred);
+ waveLabel2->setJustificationType (Justification::centredLeft);
waveLabel2->setEditable (false, false, false);
waveLabel2->setColour (Label::textColourId, Colour (0xff007f00));
waveLabel2->setColour (TextEditor::textColourId, Colours::black);
@@ -544,6 +549,92 @@ PluginGui::PluginGui (JuceOplvstiAudioProcessor* ownerFilter)
dbLabel4->setColour (TextEditor::textColourId, Colours::black);
dbLabel4->setColour (TextEditor::backgroundColourId, Colour (0x00000000));
+ addAndMakeVisible (groupComponent3 = new GroupComponent ("new group",
+ "Common"));
+ groupComponent3->setTextLabelPosition (Justification::centredLeft);
+ groupComponent3->setColour (GroupComponent::outlineColourId, Colour (0xff007f00));
+ groupComponent3->setColour (GroupComponent::textColourId, Colour (0xff007f00));
+
+ addAndMakeVisible (tremoloSlider = new Slider ("tremolo slider"));
+ tremoloSlider->setRange (1, 4.8, 3.8);
+ tremoloSlider->setSliderStyle (Slider::LinearHorizontal);
+ tremoloSlider->setTextBoxStyle (Slider::TextBoxLeft, false, 44, 20);
+ tremoloSlider->setColour (Slider::thumbColourId, Colour (0xff00af00));
+ tremoloSlider->setColour (Slider::trackColourId, Colour (0x7f007f00));
+ tremoloSlider->setColour (Slider::textBoxTextColourId, Colour (0xff007f00));
+ tremoloSlider->setColour (Slider::textBoxBackgroundColourId, Colours::black);
+ tremoloSlider->setColour (Slider::textBoxHighlightColourId, Colour (0xff00af00));
+ tremoloSlider->addListener (this);
+
+ addAndMakeVisible (frequencyLabel5 = new Label ("frequency label",
+ "Tremolo Depth\n"));
+ frequencyLabel5->setFont (Font (15.00f, Font::plain));
+ frequencyLabel5->setJustificationType (Justification::centred);
+ frequencyLabel5->setEditable (false, false, false);
+ frequencyLabel5->setColour (Label::textColourId, Colour (0xff007f00));
+ frequencyLabel5->setColour (TextEditor::textColourId, Colours::black);
+ frequencyLabel5->setColour (TextEditor::backgroundColourId, Colour (0x00000000));
+
+ addAndMakeVisible (dbLabel5 = new Label ("db label",
+ "dB"));
+ dbLabel5->setFont (Font (15.00f, Font::plain));
+ dbLabel5->setJustificationType (Justification::centred);
+ dbLabel5->setEditable (false, false, false);
+ dbLabel5->setColour (Label::textColourId, Colour (0xff007f00));
+ dbLabel5->setColour (Label::outlineColourId, Colour (0x00000000));
+ dbLabel5->setColour (TextEditor::textColourId, Colours::black);
+ dbLabel5->setColour (TextEditor::backgroundColourId, Colour (0x00000000));
+
+ addAndMakeVisible (vibratoSlider = new Slider ("vibrato slider"));
+ vibratoSlider->setRange (7, 14, 7);
+ vibratoSlider->setSliderStyle (Slider::LinearHorizontal);
+ vibratoSlider->setTextBoxStyle (Slider::TextBoxLeft, false, 44, 20);
+ vibratoSlider->setColour (Slider::thumbColourId, Colour (0xff00af00));
+ vibratoSlider->setColour (Slider::trackColourId, Colour (0x7f007f00));
+ vibratoSlider->setColour (Slider::textBoxTextColourId, Colour (0xff007f00));
+ vibratoSlider->setColour (Slider::textBoxBackgroundColourId, Colours::black);
+ vibratoSlider->setColour (Slider::textBoxHighlightColourId, Colour (0xff00af00));
+ vibratoSlider->addListener (this);
+
+ addAndMakeVisible (frequencyLabel6 = new Label ("frequency label",
+ "Vibrato Depth"));
+ frequencyLabel6->setFont (Font (15.00f, Font::plain));
+ frequencyLabel6->setJustificationType (Justification::centred);
+ frequencyLabel6->setEditable (false, false, false);
+ frequencyLabel6->setColour (Label::textColourId, Colour (0xff007f00));
+ frequencyLabel6->setColour (TextEditor::textColourId, Colours::black);
+ frequencyLabel6->setColour (TextEditor::backgroundColourId, Colour (0x00000000));
+
+ addAndMakeVisible (dbLabel6 = new Label ("db label",
+ "cents\n"));
+ dbLabel6->setFont (Font (15.00f, Font::plain));
+ dbLabel6->setJustificationType (Justification::centred);
+ dbLabel6->setEditable (false, false, false);
+ dbLabel6->setColour (Label::textColourId, Colour (0xff007f00));
+ dbLabel6->setColour (Label::outlineColourId, Colour (0x00000000));
+ dbLabel6->setColour (TextEditor::textColourId, Colours::black);
+ dbLabel6->setColour (TextEditor::backgroundColourId, Colour (0x00000000));
+
+ addAndMakeVisible (feedbackSlider = new Slider ("feedback slider"));
+ feedbackSlider->setRange (0, 7, 1);
+ feedbackSlider->setSliderStyle (Slider::LinearHorizontal);
+ feedbackSlider->setTextBoxStyle (Slider::TextBoxRight, false, 44, 20);
+ feedbackSlider->setColour (Slider::thumbColourId, Colour (0xff00af00));
+ feedbackSlider->setColour (Slider::trackColourId, Colour (0x7f007f00));
+ feedbackSlider->setColour (Slider::textBoxTextColourId, Colour (0xff007f00));
+ feedbackSlider->setColour (Slider::textBoxBackgroundColourId, Colours::black);
+ feedbackSlider->setColour (Slider::textBoxHighlightColourId, Colour (0xff00af00));
+ feedbackSlider->addListener (this);
+
+ addAndMakeVisible (frequencyLabel7 = new Label ("frequency label",
+ "Feedback"));
+ frequencyLabel7->setFont (Font (15.00f, Font::plain));
+ frequencyLabel7->setJustificationType (Justification::centredLeft);
+ frequencyLabel7->setEditable (false, false, false);
+ frequencyLabel7->setColour (Label::textColourId, Colour (0xff007f00));
+ frequencyLabel7->setColour (TextEditor::textColourId, Colours::black);
+ frequencyLabel7->setColour (TextEditor::backgroundColourId, Colour (0x00000000));
+
//[UserPreSize]
frequencyComboBox->setColour (ComboBox::textColourId, Colour (COLOUR_MID));
@@ -612,7 +703,7 @@ PluginGui::PluginGui (JuceOplvstiAudioProcessor* ownerFilter)
sustainButton2->setColour(TextButton::buttonColourId, Colour(COLOUR_MID));
//[/UserPreSize]
- setSize (420, 620);
+ setSize (430, 800);
//[Constructor] You can add your own custom stuff here..
@@ -677,6 +768,15 @@ PluginGui::~PluginGui()
keyscaleSlider2 = nullptr;
frequencyLabel4 = nullptr;
dbLabel4 = nullptr;
+ groupComponent3 = nullptr;
+ tremoloSlider = nullptr;
+ frequencyLabel5 = nullptr;
+ dbLabel5 = nullptr;
+ vibratoSlider = nullptr;
+ frequencyLabel6 = nullptr;
+ dbLabel6 = nullptr;
+ feedbackSlider = nullptr;
+ frequencyLabel7 = nullptr;
//[Destructor]. You can add your own custom destruction code here..
@@ -697,58 +797,67 @@ void PluginGui::paint (Graphics& g)
void PluginGui::resized()
{
- groupComponent->setBounds (16, 8, 392, 296);
- frequencyComboBox->setBounds (120, 80, 72, 24);
- frequencyLabel->setBounds (16, 80, 96, 24);
- aSlider->setBounds (40, 192, 48, 72);
- aLabel->setBounds (40, 264, 48, 24);
- dSlider->setBounds (104, 192, 48, 72);
- dLabel->setBounds (104, 264, 48, 24);
- sSlider->setBounds (168, 192, 48, 72);
- dLabel2->setBounds (168, 264, 48, 24);
- rSlider->setBounds (232, 192, 48, 72);
- rLabel->setBounds (232, 264, 48, 24);
- attenuationSlider->setBounds (296, 152, 72, 112);
- attenuationLabel->setBounds (296, 264, 96, 24);
- dbLabel->setBounds (360, 240, 40, 24);
+ groupComponent->setBounds (16, 8, 400, 336);
+ frequencyComboBox->setBounds (128, 80, 72, 24);
+ frequencyLabel->setBounds (32, 80, 80, 24);
+ aSlider->setBounds (40, 208, 48, 72);
+ aLabel->setBounds (40, 280, 48, 24);
+ dSlider->setBounds (104, 208, 48, 72);
+ dLabel->setBounds (104, 280, 48, 24);
+ sSlider->setBounds (168, 208, 48, 72);
+ dLabel2->setBounds (168, 280, 48, 24);
+ rSlider->setBounds (232, 208, 48, 72);
+ rLabel->setBounds (232, 280, 48, 24);
+ attenuationSlider->setBounds (304, 168, 72, 112);
+ attenuationLabel->setBounds (304, 280, 96, 24);
+ dbLabel->setBounds (368, 256, 40, 24);
sineImageButton->setBounds (120, 40, 34, 30);
halfsineImageButton->setBounds (176, 40, 34, 30);
abssineImageButton->setBounds (232, 40, 34, 30);
quartersineImageButton->setBounds (288, 40, 34, 30);
- waveLabel->setBounds (16, 40, 96, 24);
- tremoloButton->setBounds (40, 120, 96, 24);
- vibratoButton->setBounds (40, 152, 96, 24);
- sustainButton->setBounds (128, 120, 96, 24);
- keyscaleEnvButton->setBounds (128, 152, 184, 24);
- keyscaleSlider->setBounds (256, 96, 112, 24);
- frequencyLabel2->setBounds (248, 120, 152, 24);
- dbLabel2->setBounds (368, 88, 40, 40);
- groupComponent2->setBounds (16, 320, 392, 296);
- frequencyComboBox2->setBounds (120, 392, 72, 24);
- frequencyLabel3->setBounds (16, 392, 96, 24);
- aSlider2->setBounds (40, 504, 48, 72);
- aLabel2->setBounds (40, 576, 48, 24);
- dSlider2->setBounds (104, 504, 48, 72);
- dLabel3->setBounds (104, 576, 48, 24);
- sSlider2->setBounds (168, 504, 48, 72);
- dLabel4->setBounds (168, 576, 48, 24);
- rSlider2->setBounds (232, 504, 48, 72);
- rLabel2->setBounds (232, 576, 48, 24);
- attenuationSlider2->setBounds (296, 464, 72, 112);
- attenuationLabel2->setBounds (296, 576, 96, 24);
- dbLabel3->setBounds (360, 552, 40, 24);
- sineImageButton2->setBounds (120, 352, 34, 30);
- halfsineImageButton2->setBounds (176, 352, 34, 30);
- abssineImageButton2->setBounds (232, 352, 34, 30);
- quartersineImageButton2->setBounds (288, 352, 34, 30);
- waveLabel2->setBounds (16, 352, 96, 24);
- tremoloButton2->setBounds (40, 432, 96, 24);
+ waveLabel->setBounds (32, 40, 80, 24);
+ tremoloButton->setBounds (144, 120, 96, 24);
+ vibratoButton->setBounds (40, 120, 96, 24);
+ sustainButton->setBounds (40, 304, 96, 24);
+ keyscaleEnvButton->setBounds (136, 304, 184, 24);
+ keyscaleSlider->setBounds (256, 104, 112, 24);
+ frequencyLabel2->setBounds (248, 80, 152, 24);
+ dbLabel2->setBounds (368, 96, 40, 40);
+ groupComponent2->setBounds (16, 352, 400, 320);
+ frequencyComboBox2->setBounds (128, 424, 72, 24);
+ frequencyLabel3->setBounds (32, 424, 80, 24);
+ aSlider2->setBounds (40, 536, 48, 72);
+ aLabel2->setBounds (40, 608, 48, 24);
+ dSlider2->setBounds (104, 536, 48, 72);
+ dLabel3->setBounds (104, 608, 48, 24);
+ sSlider2->setBounds (168, 536, 48, 72);
+ dLabel4->setBounds (168, 608, 48, 24);
+ rSlider2->setBounds (232, 536, 48, 72);
+ rLabel2->setBounds (232, 608, 48, 24);
+ attenuationSlider2->setBounds (304, 496, 72, 112);
+ attenuationLabel2->setBounds (304, 608, 96, 24);
+ dbLabel3->setBounds (368, 584, 40, 24);
+ sineImageButton2->setBounds (120, 384, 34, 30);
+ halfsineImageButton2->setBounds (176, 384, 34, 30);
+ abssineImageButton2->setBounds (232, 384, 34, 30);
+ quartersineImageButton2->setBounds (288, 384, 34, 30);
+ waveLabel2->setBounds (32, 384, 80, 24);
+ tremoloButton2->setBounds (152, 464, 96, 24);
vibratoButton2->setBounds (40, 464, 96, 24);
- sustainButton2->setBounds (128, 432, 96, 24);
- keyscaleEnvButton2->setBounds (128, 464, 184, 24);
- keyscaleSlider2->setBounds (256, 408, 112, 24);
- frequencyLabel4->setBounds (248, 432, 152, 24);
- dbLabel4->setBounds (368, 400, 40, 40);
+ sustainButton2->setBounds (40, 632, 96, 24);
+ keyscaleEnvButton2->setBounds (136, 632, 184, 24);
+ keyscaleSlider2->setBounds (256, 448, 112, 24);
+ frequencyLabel4->setBounds (248, 424, 152, 24);
+ dbLabel4->setBounds (368, 440, 40, 40);
+ groupComponent3->setBounds (16, 680, 400, 96);
+ tremoloSlider->setBounds (48, 712, 112, 24);
+ frequencyLabel5->setBounds (40, 736, 152, 24);
+ dbLabel5->setBounds (160, 704, 40, 40);
+ vibratoSlider->setBounds (233, 713, 112, 24);
+ frequencyLabel6->setBounds (225, 737, 152, 24);
+ dbLabel6->setBounds (345, 705, 47, 40);
+ feedbackSlider->setBounds (120, 168, 136, 24);
+ frequencyLabel7->setBounds (32, 168, 80, 24);
//[UserResized] Add your own custom resize handling here..
//[/UserResized]
}
@@ -856,6 +965,24 @@ void PluginGui::sliderValueChanged (Slider* sliderThatWasMoved)
processor->setEnumParameter("Carrier Keyscale Level", -(int)(sliderThatWasMoved->getValue()/1.5));
//[/UserSliderCode_keyscaleSlider2]
}
+ else if (sliderThatWasMoved == tremoloSlider)
+ {
+ //[UserSliderCode_tremoloSlider] -- add your slider handling code here..
+ processor->setEnumParameter("Tremolo Depth", sliderThatWasMoved->getValue() < 2.0 ? 0 : 1);
+ //[/UserSliderCode_tremoloSlider]
+ }
+ else if (sliderThatWasMoved == vibratoSlider)
+ {
+ //[UserSliderCode_vibratoSlider] -- add your slider handling code here..
+ processor->setEnumParameter("Vibrato Depth", sliderThatWasMoved->getValue() < 8.0 ? 0 : 1);
+ //[/UserSliderCode_vibratoSlider]
+ }
+ else if (sliderThatWasMoved == feedbackSlider)
+ {
+ //[UserSliderCode_feedbackSlider] -- add your slider handling code here..
+ processor->setIntParameter("Modulator Feedback", (int)sliderThatWasMoved->getValue());
+ //[/UserSliderCode_feedbackSlider]
+ }
//[UsersliderValueChanged_Post]
//[/UsersliderValueChanged_Post]
@@ -986,76 +1113,76 @@ BEGIN_JUCER_METADATA
parentClasses="public AudioProcessorEditor" constructorParams="JuceOplvstiAudioProcessor* ownerFilter"
variableInitialisers=" AudioProcessorEditor (ownerFilter)" snapPixels="8"
snapActive="1" snapShown="1" overlayOpacity="0.33" fixedSize="0"
- initialWidth="420" initialHeight="620">
+ initialWidth="430" initialHeight="800">
+ fontsize="15" bold="0" italic="0" justification="33"/>
@@ -1084,144 +1211,144 @@ BEGIN_JUCER_METADATA
opacityNormal="0.5" colourNormal="0" resourceOver="" opacityOver="0.5"
colourOver="0" resourceDown="" opacityDown="1" colourDown="0"/>
+ fontsize="15" bold="0" italic="0" justification="33"/>
+ fontsize="15" bold="0" italic="0" justification="33"/>
+ fontsize="15" bold="0" italic="0" justification="33"/>
+
+
+
+
+
+
+
+
+
END_JUCER_METADATA
diff --git a/Source/PluginGui.h b/Source/PluginGui.h
index 7128a9d..0d1e3cf 100644
--- a/Source/PluginGui.h
+++ b/Source/PluginGui.h
@@ -124,6 +124,15 @@ private:
ScopedPointer keyscaleSlider2;
ScopedPointer