WIP - channel disablement, GUI layout.
TODO: - flat shaded buttons - DRO or VGM output - component replacement
This commit is contained in:
parent
69987aada0
commit
014408480c
8 changed files with 357 additions and 208 deletions
|
@ -1,6 +1,6 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
<JUCERPROJECT id="wUKQiT" name="JuceOPLVSTi" projectType="audioplug" version="0.14.3"
|
<JUCERPROJECT id="wUKQiT" name="JuceOPLVSTi" projectType="audioplug" version="0.15.0"
|
||||||
bundleIdentifier="com.plainweave.JuceOPLVSTi" buildVST="1" buildAU="1"
|
bundleIdentifier="com.plainweave.JuceOPLVSTi" buildVST="1" buildAU="1"
|
||||||
pluginName="JuceOPLVSTi" pluginDesc="JuceOPLVSTi" pluginManufacturer="Plainweave Software"
|
pluginName="JuceOPLVSTi" pluginDesc="JuceOPLVSTi" pluginManufacturer="Plainweave Software"
|
||||||
pluginManufacturerCode="Pwve" pluginCode="JOPL" pluginChannelConfigs="{0, 1}"
|
pluginManufacturerCode="Pwve" pluginCode="JOPL" pluginChannelConfigs="{0, 1}"
|
||||||
|
|
|
@ -11,6 +11,8 @@
|
||||||
#include "OPLLookAndFeel.h"
|
#include "OPLLookAndFeel.h"
|
||||||
#include "PluginGui.h"
|
#include "PluginGui.h"
|
||||||
|
|
||||||
|
const Colour OPLLookAndFeel::DOS_GREEN = Colour(0xff007f00);
|
||||||
|
|
||||||
OPLLookAndFeel::OPLLookAndFeel()
|
OPLLookAndFeel::OPLLookAndFeel()
|
||||||
{
|
{
|
||||||
toggleOff = ImageCache::getFromMemory(PluginGui::toggle_off_sq_png, PluginGui::toggle_off_sq_pngSize), 1.000f, Colour(0x00000000);
|
toggleOff = ImageCache::getFromMemory(PluginGui::toggle_off_sq_png, PluginGui::toggle_off_sq_pngSize), 1.000f, Colour(0x00000000);
|
||||||
|
@ -19,7 +21,13 @@ OPLLookAndFeel::OPLLookAndFeel()
|
||||||
|
|
||||||
// Prevents an ugly white border from being drawn around a component with keyboard focus.
|
// Prevents an ugly white border from being drawn around a component with keyboard focus.
|
||||||
setColour(TextEditor::ColourIds::focusedOutlineColourId, Colours::black);
|
setColour(TextEditor::ColourIds::focusedOutlineColourId, Colours::black);
|
||||||
setColour(Slider::ColourIds::textBoxOutlineColourId, Colour(0xff007f00));
|
setColour(Slider::ColourIds::textBoxOutlineColourId, DOS_GREEN);
|
||||||
|
|
||||||
|
setColour(TextButton::ColourIds::buttonColourId, DOS_GREEN);
|
||||||
|
setColour(TextButton::ColourIds::buttonOnColourId, DOS_GREEN);
|
||||||
|
setColour(TextButton::ColourIds::textColourOnId, Colours::black);
|
||||||
|
setColour(TextButton::ColourIds::textColourOffId, Colours::black);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void OPLLookAndFeel::drawTickBox(Graphics &g,
|
void OPLLookAndFeel::drawTickBox(Graphics &g,
|
||||||
|
|
|
@ -21,6 +21,8 @@ private:
|
||||||
Rectangle<float> toggleRect;
|
Rectangle<float> toggleRect;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
static const Colour DOS_GREEN;
|
||||||
|
|
||||||
OPLLookAndFeel();
|
OPLLookAndFeel();
|
||||||
|
|
||||||
void drawTickBox(Graphics &g,
|
void drawTickBox(Graphics &g,
|
||||||
|
|
|
@ -166,6 +166,18 @@ PluginGui::PluginGui (AdlibBlasterAudioProcessor* ownerFilter)
|
||||||
//[Constructor_pre] You can add your own custom stuff here..
|
//[Constructor_pre] You can add your own custom stuff here..
|
||||||
//[/Constructor_pre]
|
//[/Constructor_pre]
|
||||||
|
|
||||||
|
addAndMakeVisible (groupComponent2 = new GroupComponent ("new group",
|
||||||
|
TRANS("Carrier")));
|
||||||
|
groupComponent2->setTextLabelPosition (Justification::centredLeft);
|
||||||
|
groupComponent2->setColour (GroupComponent::outlineColourId, Colour (0xff007f00));
|
||||||
|
groupComponent2->setColour (GroupComponent::textColourId, Colour (0xff007f00));
|
||||||
|
|
||||||
|
addAndMakeVisible (groupComponent4 = new GroupComponent ("new group",
|
||||||
|
TRANS("Channels")));
|
||||||
|
groupComponent4->setTextLabelPosition (Justification::centredLeft);
|
||||||
|
groupComponent4->setColour (GroupComponent::outlineColourId, Colour (0xff007f00));
|
||||||
|
groupComponent4->setColour (GroupComponent::textColourId, Colour (0xff007f00));
|
||||||
|
|
||||||
addAndMakeVisible (groupComponent11 = new GroupComponent ("new group",
|
addAndMakeVisible (groupComponent11 = new GroupComponent ("new group",
|
||||||
TRANS("Percussion")));
|
TRANS("Percussion")));
|
||||||
groupComponent11->setTextLabelPosition (Justification::centredLeft);
|
groupComponent11->setTextLabelPosition (Justification::centredLeft);
|
||||||
|
@ -198,7 +210,7 @@ PluginGui::PluginGui (AdlibBlasterAudioProcessor* ownerFilter)
|
||||||
frequencyComboBox->addListener (this);
|
frequencyComboBox->addListener (this);
|
||||||
|
|
||||||
addAndMakeVisible (frequencyLabel = new Label ("frequency label",
|
addAndMakeVisible (frequencyLabel = new Label ("frequency label",
|
||||||
TRANS("Base Frequency")));
|
TRANS("Frequency Multiplier")));
|
||||||
frequencyLabel->setTooltip (TRANS("Multiplier applied to base note frequency"));
|
frequencyLabel->setTooltip (TRANS("Multiplier applied to base note frequency"));
|
||||||
frequencyLabel->setFont (Font (15.00f, Font::plain));
|
frequencyLabel->setFont (Font (15.00f, Font::plain));
|
||||||
frequencyLabel->setJustificationType (Justification::centredLeft);
|
frequencyLabel->setJustificationType (Justification::centredLeft);
|
||||||
|
@ -297,8 +309,8 @@ PluginGui::PluginGui (AdlibBlasterAudioProcessor* ownerFilter)
|
||||||
|
|
||||||
addAndMakeVisible (attenuationSlider = new Slider ("attenuation slider"));
|
addAndMakeVisible (attenuationSlider = new Slider ("attenuation slider"));
|
||||||
attenuationSlider->setRange (-47.25, 0, 0.75);
|
attenuationSlider->setRange (-47.25, 0, 0.75);
|
||||||
attenuationSlider->setSliderStyle (Slider::LinearHorizontal);
|
attenuationSlider->setSliderStyle (Slider::LinearVertical);
|
||||||
attenuationSlider->setTextBoxStyle (Slider::TextBoxRight, true, 64, 20);
|
attenuationSlider->setTextBoxStyle (Slider::TextBoxBelow, true, 64, 20);
|
||||||
attenuationSlider->setColour (Slider::thumbColourId, Colour (0xff007f00));
|
attenuationSlider->setColour (Slider::thumbColourId, Colour (0xff007f00));
|
||||||
attenuationSlider->setColour (Slider::trackColourId, Colour (0x7f007f00));
|
attenuationSlider->setColour (Slider::trackColourId, Colour (0x7f007f00));
|
||||||
attenuationSlider->setColour (Slider::textBoxTextColourId, Colour (0xff007f00));
|
attenuationSlider->setColour (Slider::textBoxTextColourId, Colour (0xff007f00));
|
||||||
|
@ -405,12 +417,6 @@ PluginGui::PluginGui (AdlibBlasterAudioProcessor* ownerFilter)
|
||||||
dbLabel2->setColour (TextEditor::textColourId, Colours::black);
|
dbLabel2->setColour (TextEditor::textColourId, Colours::black);
|
||||||
dbLabel2->setColour (TextEditor::backgroundColourId, Colour (0x00000000));
|
dbLabel2->setColour (TextEditor::backgroundColourId, Colour (0x00000000));
|
||||||
|
|
||||||
addAndMakeVisible (groupComponent2 = new GroupComponent ("new group",
|
|
||||||
TRANS("Carrier")));
|
|
||||||
groupComponent2->setTextLabelPosition (Justification::centredLeft);
|
|
||||||
groupComponent2->setColour (GroupComponent::outlineColourId, Colour (0xff007f00));
|
|
||||||
groupComponent2->setColour (GroupComponent::textColourId, Colour (0xff007f00));
|
|
||||||
|
|
||||||
addAndMakeVisible (frequencyComboBox2 = new ComboBox ("frequency combo box"));
|
addAndMakeVisible (frequencyComboBox2 = new ComboBox ("frequency combo box"));
|
||||||
frequencyComboBox2->setEditableText (false);
|
frequencyComboBox2->setEditableText (false);
|
||||||
frequencyComboBox2->setJustificationType (Justification::centredLeft);
|
frequencyComboBox2->setJustificationType (Justification::centredLeft);
|
||||||
|
@ -419,7 +425,7 @@ PluginGui::PluginGui (AdlibBlasterAudioProcessor* ownerFilter)
|
||||||
frequencyComboBox2->addListener (this);
|
frequencyComboBox2->addListener (this);
|
||||||
|
|
||||||
addAndMakeVisible (frequencyLabel3 = new Label ("frequency label",
|
addAndMakeVisible (frequencyLabel3 = new Label ("frequency label",
|
||||||
TRANS("Base Frequency")));
|
TRANS("Frequency Multiplier")));
|
||||||
frequencyLabel3->setTooltip (TRANS("Multiplier applied to base note frequency"));
|
frequencyLabel3->setTooltip (TRANS("Multiplier applied to base note frequency"));
|
||||||
frequencyLabel3->setFont (Font (15.00f, Font::plain));
|
frequencyLabel3->setFont (Font (15.00f, Font::plain));
|
||||||
frequencyLabel3->setJustificationType (Justification::centredLeft);
|
frequencyLabel3->setJustificationType (Justification::centredLeft);
|
||||||
|
@ -514,8 +520,8 @@ PluginGui::PluginGui (AdlibBlasterAudioProcessor* ownerFilter)
|
||||||
|
|
||||||
addAndMakeVisible (attenuationSlider2 = new Slider ("attenuation slider"));
|
addAndMakeVisible (attenuationSlider2 = new Slider ("attenuation slider"));
|
||||||
attenuationSlider2->setRange (-47.25, 0, 0.75);
|
attenuationSlider2->setRange (-47.25, 0, 0.75);
|
||||||
attenuationSlider2->setSliderStyle (Slider::LinearHorizontal);
|
attenuationSlider2->setSliderStyle (Slider::LinearVertical);
|
||||||
attenuationSlider2->setTextBoxStyle (Slider::TextBoxRight, true, 64, 20);
|
attenuationSlider2->setTextBoxStyle (Slider::TextBoxBelow, true, 64, 20);
|
||||||
attenuationSlider2->setColour (Slider::thumbColourId, Colour (0xff007f00));
|
attenuationSlider2->setColour (Slider::thumbColourId, Colour (0xff007f00));
|
||||||
attenuationSlider2->setColour (Slider::trackColourId, Colour (0x7f007f00));
|
attenuationSlider2->setColour (Slider::trackColourId, Colour (0x7f007f00));
|
||||||
attenuationSlider2->setColour (Slider::textBoxTextColourId, Colour (0xff007f00));
|
attenuationSlider2->setColour (Slider::textBoxTextColourId, Colour (0xff007f00));
|
||||||
|
@ -613,8 +619,8 @@ PluginGui::PluginGui (AdlibBlasterAudioProcessor* ownerFilter)
|
||||||
keyscaleEnvButton2->setColour (ToggleButton::textColourId, Colour (0xff007f00));
|
keyscaleEnvButton2->setColour (ToggleButton::textColourId, Colour (0xff007f00));
|
||||||
|
|
||||||
addAndMakeVisible (frequencyLabel4 = new Label ("frequency label",
|
addAndMakeVisible (frequencyLabel4 = new Label ("frequency label",
|
||||||
TRANS("Keyscale Attenuation (db/8ve)")));
|
TRANS("Keyscale Attenuation")));
|
||||||
frequencyLabel4->setTooltip (TRANS("Attenuate amplitude with note frequency in db/8ve"));
|
frequencyLabel4->setTooltip (TRANS("Attenuate amplitude with note frequency in dB per octave"));
|
||||||
frequencyLabel4->setFont (Font (15.00f, Font::plain));
|
frequencyLabel4->setFont (Font (15.00f, Font::plain));
|
||||||
frequencyLabel4->setJustificationType (Justification::centred);
|
frequencyLabel4->setJustificationType (Justification::centred);
|
||||||
frequencyLabel4->setEditable (false, false, false);
|
frequencyLabel4->setEditable (false, false, false);
|
||||||
|
@ -705,7 +711,7 @@ PluginGui::PluginGui (AdlibBlasterAudioProcessor* ownerFilter)
|
||||||
feedbackSlider->addListener (this);
|
feedbackSlider->addListener (this);
|
||||||
|
|
||||||
addAndMakeVisible (frequencyLabel7 = new Label ("frequency label",
|
addAndMakeVisible (frequencyLabel7 = new Label ("frequency label",
|
||||||
TRANS("F")));
|
TRANS("Feedback")));
|
||||||
frequencyLabel7->setTooltip (TRANS("Extent to which modulator output is fed back into itself"));
|
frequencyLabel7->setTooltip (TRANS("Extent to which modulator output is fed back into itself"));
|
||||||
frequencyLabel7->setFont (Font (15.00f, Font::plain));
|
frequencyLabel7->setFont (Font (15.00f, Font::plain));
|
||||||
frequencyLabel7->setJustificationType (Justification::centred);
|
frequencyLabel7->setJustificationType (Justification::centred);
|
||||||
|
@ -842,18 +848,12 @@ PluginGui::PluginGui (AdlibBlasterAudioProcessor* ownerFilter)
|
||||||
keyscaleAttenuationComboBox->setJustificationType (Justification::centredLeft);
|
keyscaleAttenuationComboBox->setJustificationType (Justification::centredLeft);
|
||||||
keyscaleAttenuationComboBox->setTextWhenNothingSelected (String());
|
keyscaleAttenuationComboBox->setTextWhenNothingSelected (String());
|
||||||
keyscaleAttenuationComboBox->setTextWhenNoChoicesAvailable (TRANS("(no choices)"));
|
keyscaleAttenuationComboBox->setTextWhenNoChoicesAvailable (TRANS("(no choices)"));
|
||||||
keyscaleAttenuationComboBox->addItem (TRANS("-0.0"), 1);
|
keyscaleAttenuationComboBox->addItem (TRANS("-0.0 db/8ve"), 1);
|
||||||
keyscaleAttenuationComboBox->addItem (TRANS("-3.0"), 2);
|
keyscaleAttenuationComboBox->addItem (TRANS("-3.0 db/8ve"), 2);
|
||||||
keyscaleAttenuationComboBox->addItem (TRANS("-1.5"), 3);
|
keyscaleAttenuationComboBox->addItem (TRANS("-1.5 db/8ve"), 3);
|
||||||
keyscaleAttenuationComboBox->addItem (TRANS("-6.0"), 4);
|
keyscaleAttenuationComboBox->addItem (TRANS("-6.0 db/8ve"), 4);
|
||||||
keyscaleAttenuationComboBox->addListener (this);
|
keyscaleAttenuationComboBox->addListener (this);
|
||||||
|
|
||||||
addAndMakeVisible (groupComponent4 = new GroupComponent ("new group",
|
|
||||||
TRANS("Channels")));
|
|
||||||
groupComponent4->setTextLabelPosition (Justification::centredLeft);
|
|
||||||
groupComponent4->setColour (GroupComponent::outlineColourId, Colour (0xff007f00));
|
|
||||||
groupComponent4->setColour (GroupComponent::textColourId, Colour (0xff007f00));
|
|
||||||
|
|
||||||
addAndMakeVisible (groupComponent5 = new GroupComponent ("new group",
|
addAndMakeVisible (groupComponent5 = new GroupComponent ("new group",
|
||||||
TRANS("Emulator (currently locked)")));
|
TRANS("Emulator (currently locked)")));
|
||||||
groupComponent5->setTextLabelPosition (Justification::centredLeft);
|
groupComponent5->setTextLabelPosition (Justification::centredLeft);
|
||||||
|
@ -1421,8 +1421,8 @@ PluginGui::PluginGui (AdlibBlasterAudioProcessor* ownerFilter)
|
||||||
label30->setColour (TextEditor::backgroundColourId, Colour (0x00000000));
|
label30->setColour (TextEditor::backgroundColourId, Colour (0x00000000));
|
||||||
|
|
||||||
addAndMakeVisible (frequencyLabel10 = new Label ("frequency label",
|
addAndMakeVisible (frequencyLabel10 = new Label ("frequency label",
|
||||||
TRANS("Keyscale Attenuation (db/8ve)")));
|
TRANS("Keyscale Attenuation")));
|
||||||
frequencyLabel10->setTooltip (TRANS("Attenuate amplitude with note frequency in db/8ve"));
|
frequencyLabel10->setTooltip (TRANS("Attenuate amplitude with note frequency in dB per octave"));
|
||||||
frequencyLabel10->setFont (Font (15.00f, Font::plain));
|
frequencyLabel10->setFont (Font (15.00f, Font::plain));
|
||||||
frequencyLabel10->setJustificationType (Justification::centred);
|
frequencyLabel10->setJustificationType (Justification::centred);
|
||||||
frequencyLabel10->setEditable (false, false, false);
|
frequencyLabel10->setEditable (false, false, false);
|
||||||
|
@ -1520,6 +1520,32 @@ PluginGui::PluginGui (AdlibBlasterAudioProcessor* ownerFilter)
|
||||||
ImageCache::getFromMemory (hihat_png, hihat_pngSize), 0.500f, Colour (0x00000000),
|
ImageCache::getFromMemory (hihat_png, hihat_pngSize), 0.500f, Colour (0x00000000),
|
||||||
Image(), 0.500f, Colour (0x00000000),
|
Image(), 0.500f, Colour (0x00000000),
|
||||||
Image(), 1.000f, Colour (0x00000000));
|
Image(), 1.000f, Colour (0x00000000));
|
||||||
|
addAndMakeVisible (dbLabel7 = new Label ("db label",
|
||||||
|
TRANS("FM")));
|
||||||
|
dbLabel7->setFont (Font (15.00f, Font::plain));
|
||||||
|
dbLabel7->setJustificationType (Justification::centredLeft);
|
||||||
|
dbLabel7->setEditable (false, false, false);
|
||||||
|
dbLabel7->setColour (Label::textColourId, Colour (0xff007f00));
|
||||||
|
dbLabel7->setColour (Label::outlineColourId, Colour (0x00000000));
|
||||||
|
dbLabel7->setColour (TextEditor::textColourId, Colours::black);
|
||||||
|
dbLabel7->setColour (TextEditor::backgroundColourId, Colour (0x00000000));
|
||||||
|
|
||||||
|
addAndMakeVisible (dbLabel8 = new Label ("db label",
|
||||||
|
TRANS("Additive")));
|
||||||
|
dbLabel8->setFont (Font (15.00f, Font::plain));
|
||||||
|
dbLabel8->setJustificationType (Justification::centred);
|
||||||
|
dbLabel8->setEditable (false, false, false);
|
||||||
|
dbLabel8->setColour (Label::textColourId, Colour (0xff007f00));
|
||||||
|
dbLabel8->setColour (Label::outlineColourId, Colour (0x00000000));
|
||||||
|
dbLabel8->setColour (TextEditor::textColourId, Colours::black);
|
||||||
|
dbLabel8->setColour (TextEditor::backgroundColourId, Colour (0x00000000));
|
||||||
|
|
||||||
|
addAndMakeVisible (imageButton = new ImageButton ("new button"));
|
||||||
|
|
||||||
|
imageButton->setImages (false, true, true,
|
||||||
|
ImageCache::getFromMemory (adlib_png, adlib_pngSize), 1.000f, Colour (0x00000000),
|
||||||
|
Image(), 1.000f, Colour (0x00000000),
|
||||||
|
Image(), 1.000f, Colour (0x00000000));
|
||||||
|
|
||||||
//[UserPreSize]
|
//[UserPreSize]
|
||||||
LookAndFeel::setDefaultLookAndFeel(new OPLLookAndFeel());
|
LookAndFeel::setDefaultLookAndFeel(new OPLLookAndFeel());
|
||||||
|
@ -1651,9 +1677,9 @@ PluginGui::PluginGui (AdlibBlasterAudioProcessor* ownerFilter)
|
||||||
Font fw(Font::getDefaultMonospacedFontName(), 14, Font::bold);
|
Font fw(Font::getDefaultMonospacedFontName(), 14, Font::bold);
|
||||||
for (unsigned int i = 0; i < channels.size(); ++i)
|
for (unsigned int i = 0; i < channels.size(); ++i)
|
||||||
{
|
{
|
||||||
Label *channel = new Label("chan label", TRANS("-"));
|
TextButton *channel = new TextButton(TRANS("-"), String("Disable channel %d", i + 1));
|
||||||
channel->setColour(Label::textColourId, Colour(COLOUR_MID));
|
channel->setColour(Label::textColourId, Colour(COLOUR_MID));
|
||||||
channel->setJustificationType(Justification::centred);
|
channel->addListener(this);
|
||||||
addAndMakeVisible(channel);
|
addAndMakeVisible(channel);
|
||||||
channels[i] = channel;
|
channels[i] = channel;
|
||||||
}
|
}
|
||||||
|
@ -1674,6 +1700,8 @@ PluginGui::~PluginGui()
|
||||||
//[Destructor_pre]. You can add your own custom destruction code here..
|
//[Destructor_pre]. You can add your own custom destruction code here..
|
||||||
//[/Destructor_pre]
|
//[/Destructor_pre]
|
||||||
|
|
||||||
|
groupComponent2 = nullptr;
|
||||||
|
groupComponent4 = nullptr;
|
||||||
groupComponent11 = nullptr;
|
groupComponent11 = nullptr;
|
||||||
groupComponent10 = nullptr;
|
groupComponent10 = nullptr;
|
||||||
groupComponent9 = nullptr;
|
groupComponent9 = nullptr;
|
||||||
|
@ -1701,7 +1729,6 @@ PluginGui::~PluginGui()
|
||||||
sustainButton = nullptr;
|
sustainButton = nullptr;
|
||||||
keyscaleEnvButton = nullptr;
|
keyscaleEnvButton = nullptr;
|
||||||
dbLabel2 = nullptr;
|
dbLabel2 = nullptr;
|
||||||
groupComponent2 = nullptr;
|
|
||||||
frequencyComboBox2 = nullptr;
|
frequencyComboBox2 = nullptr;
|
||||||
frequencyLabel3 = nullptr;
|
frequencyLabel3 = nullptr;
|
||||||
aSlider2 = nullptr;
|
aSlider2 = nullptr;
|
||||||
|
@ -1748,7 +1775,6 @@ PluginGui::~PluginGui()
|
||||||
dbLabel4 = nullptr;
|
dbLabel4 = nullptr;
|
||||||
keyscaleAttenuationComboBox2 = nullptr;
|
keyscaleAttenuationComboBox2 = nullptr;
|
||||||
keyscaleAttenuationComboBox = nullptr;
|
keyscaleAttenuationComboBox = nullptr;
|
||||||
groupComponent4 = nullptr;
|
|
||||||
groupComponent5 = nullptr;
|
groupComponent5 = nullptr;
|
||||||
emulatorSlider = nullptr;
|
emulatorSlider = nullptr;
|
||||||
emulatorLabel = nullptr;
|
emulatorLabel = nullptr;
|
||||||
|
@ -1829,6 +1855,9 @@ PluginGui::~PluginGui()
|
||||||
tomTomButton = nullptr;
|
tomTomButton = nullptr;
|
||||||
cymbalButton = nullptr;
|
cymbalButton = nullptr;
|
||||||
hiHatButton = nullptr;
|
hiHatButton = nullptr;
|
||||||
|
dbLabel7 = nullptr;
|
||||||
|
dbLabel8 = nullptr;
|
||||||
|
imageButton = nullptr;
|
||||||
|
|
||||||
|
|
||||||
//[Destructor]. You can add your own custom destruction code here..
|
//[Destructor]. You can add your own custom destruction code here..
|
||||||
|
@ -1852,69 +1881,70 @@ void PluginGui::resized()
|
||||||
//[UserPreResize] Add your own custom resize code here..
|
//[UserPreResize] Add your own custom resize code here..
|
||||||
//[/UserPreResize]
|
//[/UserPreResize]
|
||||||
|
|
||||||
groupComponent11->setBounds (496, 416, 192, 144);
|
groupComponent2->setBounds (440, 88, 408, 344);
|
||||||
groupComponent10->setBounds (280, 416, 200, 144);
|
groupComponent4->setBounds (16, 8, 832, 64);
|
||||||
groupComponent9->setBounds (704, 416, 144, 144);
|
groupComponent11->setBounds (496, 440, 192, 120);
|
||||||
groupComponent->setBounds (16, 88, 408, 312);
|
groupComponent10->setBounds (280, 440, 200, 120);
|
||||||
frequencyComboBox->setBounds (149, 173, 66, 24);
|
groupComponent9->setBounds (704, 440, 144, 120);
|
||||||
frequencyLabel->setBounds (32, 173, 112, 24);
|
groupComponent->setBounds (16, 88, 408, 344);
|
||||||
aSlider->setBounds (30, 211, 30, 88);
|
frequencyComboBox->setBounds (200, 168, 64, 24);
|
||||||
aLabel->setBounds (30, 301, 30, 24);
|
frequencyLabel->setBounds (40, 168, 152, 24);
|
||||||
dSlider->setBounds (70, 211, 30, 88);
|
aSlider->setBounds (40, 208, 30, 88);
|
||||||
dLabel->setBounds (70, 301, 30, 24);
|
aLabel->setBounds (40, 304, 30, 24);
|
||||||
sSlider->setBounds (110, 211, 30, 88);
|
dSlider->setBounds (88, 208, 30, 88);
|
||||||
dLabel2->setBounds (110, 301, 30, 24);
|
dLabel->setBounds (88, 304, 30, 24);
|
||||||
rSlider->setBounds (150, 211, 30, 88);
|
sSlider->setBounds (136, 208, 30, 88);
|
||||||
rLabel->setBounds (150, 301, 30, 24);
|
dLabel2->setBounds (136, 304, 30, 24);
|
||||||
attenuationSlider->setBounds (130, 358, 232, 24);
|
rSlider->setBounds (184, 208, 30, 88);
|
||||||
attenuationLabel->setBounds (32, 358, 106, 24);
|
rLabel->setBounds (184, 304, 30, 24);
|
||||||
dbLabel->setBounds (362, 358, 32, 24);
|
attenuationSlider->setBounds (328, 200, 56, 126);
|
||||||
|
attenuationLabel->setBounds (304, 168, 112, 24);
|
||||||
|
dbLabel->setBounds (384, 304, 32, 24);
|
||||||
sineImageButton->setBounds (88, 113, 34, 30);
|
sineImageButton->setBounds (88, 113, 34, 30);
|
||||||
halfsineImageButton->setBounds (128, 113, 34, 30);
|
halfsineImageButton->setBounds (128, 113, 34, 30);
|
||||||
abssineImageButton->setBounds (168, 113, 34, 30);
|
abssineImageButton->setBounds (168, 113, 34, 30);
|
||||||
quartersineImageButton->setBounds (208, 113, 34, 30);
|
quartersineImageButton->setBounds (208, 113, 34, 30);
|
||||||
waveLabel->setBounds (32, 115, 48, 24);
|
waveLabel->setBounds (32, 115, 48, 24);
|
||||||
tremoloButton->setBounds (323, 170, 80, 24);
|
tremoloButton->setBounds (120, 352, 80, 24);
|
||||||
vibratoButton->setBounds (243, 170, 72, 24);
|
vibratoButton->setBounds (32, 352, 72, 24);
|
||||||
sustainButton->setBounds (243, 206, 70, 24);
|
sustainButton->setBounds (32, 384, 70, 32);
|
||||||
keyscaleEnvButton->setBounds (323, 194, 101, 48);
|
keyscaleEnvButton->setBounds (120, 376, 101, 48);
|
||||||
dbLabel2->setBounds (792, 712, 72, 16);
|
dbLabel2->setBounds (792, 712, 72, 16);
|
||||||
groupComponent2->setBounds (440, 88, 408, 312);
|
frequencyComboBox2->setBounds (624, 168, 66, 24);
|
||||||
frequencyComboBox2->setBounds (573, 173, 66, 24);
|
frequencyLabel3->setBounds (464, 168, 152, 24);
|
||||||
frequencyLabel3->setBounds (456, 173, 112, 24);
|
aSlider2->setBounds (464, 208, 30, 88);
|
||||||
aSlider2->setBounds (462, 211, 30, 88);
|
aLabel2->setBounds (464, 304, 30, 24);
|
||||||
aLabel2->setBounds (462, 301, 30, 24);
|
dSlider2->setBounds (512, 208, 30, 88);
|
||||||
dSlider2->setBounds (510, 211, 30, 88);
|
dLabel3->setBounds (512, 304, 30, 24);
|
||||||
dLabel3->setBounds (510, 301, 30, 24);
|
sSlider2->setBounds (560, 208, 30, 88);
|
||||||
sSlider2->setBounds (558, 211, 30, 88);
|
dLabel4->setBounds (560, 304, 30, 24);
|
||||||
dLabel4->setBounds (558, 301, 30, 24);
|
rSlider2->setBounds (608, 208, 30, 88);
|
||||||
rSlider2->setBounds (606, 211, 30, 88);
|
rLabel2->setBounds (608, 304, 30, 24);
|
||||||
rLabel2->setBounds (606, 301, 30, 24);
|
attenuationSlider2->setBounds (752, 200, 56, 126);
|
||||||
attenuationSlider2->setBounds (554, 358, 232, 24);
|
attenuationLabel2->setBounds (728, 168, 112, 24);
|
||||||
attenuationLabel2->setBounds (456, 358, 106, 24);
|
dbLabel3->setBounds (800, 304, 40, 24);
|
||||||
dbLabel3->setBounds (782, 358, 40, 24);
|
|
||||||
sineImageButton2->setBounds (512, 113, 34, 30);
|
sineImageButton2->setBounds (512, 113, 34, 30);
|
||||||
halfsineImageButton2->setBounds (552, 113, 34, 30);
|
halfsineImageButton2->setBounds (552, 113, 34, 30);
|
||||||
abssineImageButton2->setBounds (592, 113, 34, 30);
|
abssineImageButton2->setBounds (592, 113, 34, 30);
|
||||||
quartersineImageButton2->setBounds (632, 113, 34, 30);
|
quartersineImageButton2->setBounds (632, 113, 34, 30);
|
||||||
waveLabel2->setBounds (456, 115, 48, 24);
|
waveLabel2->setBounds (456, 115, 48, 24);
|
||||||
tremoloButton2->setBounds (746, 170, 80, 24);
|
tremoloButton2->setBounds (544, 352, 80, 24);
|
||||||
vibratoButton2->setBounds (666, 170, 72, 24);
|
vibratoButton2->setBounds (456, 352, 72, 24);
|
||||||
sustainButton2->setBounds (666, 206, 70, 24);
|
sustainButton2->setBounds (456, 384, 70, 24);
|
||||||
keyscaleEnvButton2->setBounds (746, 194, 102, 48);
|
keyscaleEnvButton2->setBounds (544, 376, 102, 48);
|
||||||
frequencyLabel4->setBounds (752, 288, 88, 48);
|
frequencyLabel4->setBounds (656, 376, 88, 48);
|
||||||
groupComponent3->setBounds (16, 416, 248, 144);
|
groupComponent3->setBounds (16, 440, 248, 120);
|
||||||
tremoloSlider->setBounds (112, 456, 80, 24);
|
tremoloSlider->setBounds (112, 472, 80, 24);
|
||||||
frequencyLabel5->setBounds (32, 456, 104, 24);
|
frequencyLabel5->setBounds (32, 472, 80, 24);
|
||||||
dbLabel5->setBounds (200, 448, 32, 40);
|
dbLabel5->setBounds (200, 464, 32, 40);
|
||||||
vibratoSlider->setBounds (112, 504, 80, 24);
|
vibratoSlider->setBounds (112, 512, 80, 24);
|
||||||
frequencyLabel6->setBounds (32, 504, 96, 24);
|
frequencyLabel6->setBounds (32, 512, 80, 24);
|
||||||
dbLabel6->setBounds (200, 496, 48, 40);
|
dbLabel6->setBounds (200, 504, 48, 40);
|
||||||
feedbackSlider->setBounds (190, 240, 30, 59);
|
feedbackSlider->setBounds (248, 237, 30, 59);
|
||||||
frequencyLabel7->setBounds (190, 301, 30, 24);
|
frequencyLabel7->setBounds (224, 304, 80, 24);
|
||||||
velocityComboBox->setBounds (244, 257, 72, 24);
|
velocityComboBox->setBounds (328, 352, 76, 24);
|
||||||
velocityComboBox2->setBounds (672, 257, 72, 24);
|
velocityComboBox2->setBounds (760, 352, 72, 24);
|
||||||
attenuationLabel4->setBounds (664, 288, 80, 48);
|
attenuationLabel4->setBounds (760, 376, 80, 48);
|
||||||
alternatingsineImageButton->setBounds (288, 113, 34, 30);
|
alternatingsineImageButton->setBounds (288, 113, 34, 30);
|
||||||
camelsineImageButton->setBounds (248, 113, 34, 30);
|
camelsineImageButton->setBounds (248, 113, 34, 30);
|
||||||
squareImageButton->setBounds (328, 113, 34, 30);
|
squareImageButton->setBounds (328, 113, 34, 30);
|
||||||
|
@ -1924,28 +1954,27 @@ void PluginGui::resized()
|
||||||
squareImageButton2->setBounds (754, 114, 34, 30);
|
squareImageButton2->setBounds (754, 114, 34, 30);
|
||||||
logsawImageButton2->setBounds (794, 114, 34, 30);
|
logsawImageButton2->setBounds (794, 114, 34, 30);
|
||||||
dbLabel4->setBounds (792, 688, 72, 16);
|
dbLabel4->setBounds (792, 688, 72, 16);
|
||||||
keyscaleAttenuationComboBox2->setBounds (763, 257, 60, 24);
|
keyscaleAttenuationComboBox2->setBounds (664, 352, 76, 24);
|
||||||
keyscaleAttenuationComboBox->setBounds (338, 257, 60, 24);
|
keyscaleAttenuationComboBox->setBounds (232, 352, 76, 24);
|
||||||
groupComponent4->setBounds (16, 8, 832, 64);
|
|
||||||
groupComponent5->setBounds (24, 712, 408, 64);
|
groupComponent5->setBounds (24, 712, 408, 64);
|
||||||
emulatorSlider->setBounds (208, 736, 40, 24);
|
emulatorSlider->setBounds (208, 736, 40, 24);
|
||||||
emulatorLabel->setBounds (120, 736, 72, 24);
|
emulatorLabel->setBounds (120, 736, 72, 24);
|
||||||
emulatorLabel2->setBounds (256, 736, 72, 24);
|
emulatorLabel2->setBounds (256, 736, 72, 24);
|
||||||
recordButton->setBounds (32, 680, 224, 24);
|
recordButton->setBounds (32, 680, 224, 24);
|
||||||
exportButton->setBounds (728, 504, 96, 24);
|
exportButton->setBounds (728, 512, 96, 24);
|
||||||
loadButton->setBounds (728, 456, 96, 24);
|
loadButton->setBounds (728, 472, 96, 24);
|
||||||
versionLabel->setBounds (648, 560, 198, 16);
|
versionLabel->setBounds (648, 560, 198, 16);
|
||||||
ToggleButtonOffExample->setBounds (1032, 584, 12, 12);
|
ToggleButtonOffExample->setBounds (1032, 584, 12, 12);
|
||||||
ToggleButtonOnExample->setBounds (1064, 584, 12, 12);
|
ToggleButtonOnExample->setBounds (1064, 584, 12, 12);
|
||||||
label->setBounds (1000, 608, 104, 24);
|
label->setBounds (1000, 608, 104, 24);
|
||||||
label2->setBounds (872, 608, 104, 24);
|
label2->setBounds (872, 608, 104, 24);
|
||||||
LineBorderButton1C->setBounds (20, 340, 400, 6);
|
LineBorderButton1C->setBounds (20, 336, 400, 6);
|
||||||
LineBorderButton1A->setBounds (20, 152, 400, 6);
|
LineBorderButton1A->setBounds (20, 152, 400, 6);
|
||||||
LineBorderButton1B->setBounds (230, 156, 6, 186);
|
LineBorderButton1B->setBounds (296, 156, 6, 182);
|
||||||
label3->setBounds (776, 736, 104, 56);
|
label3->setBounds (776, 736, 104, 56);
|
||||||
LineBorderButton1C2->setBounds (444, 340, 400, 6);
|
LineBorderButton1C2->setBounds (444, 336, 400, 6);
|
||||||
LineBorderButton1A2->setBounds (444, 152, 400, 6);
|
LineBorderButton1A2->setBounds (444, 152, 400, 6);
|
||||||
LineBorderButton1B2->setBounds (654, 156, 6, 186);
|
LineBorderButton1B2->setBounds (720, 156, 6, 182);
|
||||||
LineBorderButton1C3->setBounds (892, 584, 20, 6);
|
LineBorderButton1C3->setBounds (892, 584, 20, 6);
|
||||||
LineBorderButton1B3->setBounds (936, 576, 6, 20);
|
LineBorderButton1B3->setBounds (936, 576, 6, 20);
|
||||||
algoSwitchButtonOffEx1->setBounds (952, 701, 64, 24);
|
algoSwitchButtonOffEx1->setBounds (952, 701, 64, 24);
|
||||||
|
@ -1993,23 +2022,26 @@ void PluginGui::resized()
|
||||||
label27->setBounds (1055, 250, 32, 24);
|
label27->setBounds (1055, 250, 32, 24);
|
||||||
algoSwitchButtonOn3Ex4->setBounds (1103, 250, 64, 24);
|
algoSwitchButtonOn3Ex4->setBounds (1103, 250, 64, 24);
|
||||||
label28->setBounds (1121, 250, 32, 24);
|
label28->setBounds (1121, 250, 32, 24);
|
||||||
groupComponent8->setBounds (1018, 200, 168, 95);
|
groupComponent8->setBounds (1008, 208, 168, 95);
|
||||||
frequencyLabel9->setBounds (1067, 216, 72, 24);
|
frequencyLabel9->setBounds (1067, 216, 72, 24);
|
||||||
label29->setBounds (944, 304, 328, 40);
|
label29->setBounds (944, 304, 328, 40);
|
||||||
label30->setBounds (961, 768, 319, 24);
|
label30->setBounds (961, 768, 319, 24);
|
||||||
frequencyLabel10->setBounds (328, 288, 88, 48);
|
frequencyLabel10->setBounds (224, 376, 88, 48);
|
||||||
attenuationLabel5->setBounds (240, 288, 80, 48);
|
attenuationLabel5->setBounds (328, 376, 80, 48);
|
||||||
fmButton->setBounds (304, 464, 56, 56);
|
fmButton->setBounds (304, 472, 56, 56);
|
||||||
additiveButton->setBounds (384, 456, 72, 72);
|
additiveButton->setBounds (392, 464, 72, 72);
|
||||||
bassDrumButton->setBounds (576, 448, 30, 30);
|
bassDrumButton->setBounds (576, 464, 30, 30);
|
||||||
snareDrumButton->setBounds (632, 448, 30, 30);
|
snareDrumButton->setBounds (632, 464, 30, 30);
|
||||||
disablePercussionButton->setBounds (520, 448, 30, 30);
|
disablePercussionButton->setBounds (520, 464, 30, 30);
|
||||||
tomTomButton->setBounds (520, 504, 30, 30);
|
tomTomButton->setBounds (520, 512, 30, 30);
|
||||||
cymbalButton->setBounds (576, 504, 30, 30);
|
cymbalButton->setBounds (576, 512, 30, 30);
|
||||||
hiHatButton->setBounds (632, 504, 30, 30);
|
hiHatButton->setBounds (632, 512, 30, 30);
|
||||||
|
dbLabel7->setBounds (320, 520, 32, 40);
|
||||||
|
dbLabel8->setBounds (392, 520, 72, 40);
|
||||||
|
imageButton->setBounds (656, 232, 64, 64);
|
||||||
//[UserResized] Add your own custom resize handling here..
|
//[UserResized] Add your own custom resize handling here..
|
||||||
for (unsigned int i = 0; i < channels.size(); ++i)
|
for (unsigned int i = 0; i < channels.size(); ++i)
|
||||||
channels[i]->setBounds(68+88*i, 36, 20, 20);
|
channels[i]->setBounds(64+88*i, 30, 28, 28);
|
||||||
//[/UserResized]
|
//[/UserResized]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2164,6 +2196,28 @@ void PluginGui::sliderValueChanged (Slider* sliderThatWasMoved)
|
||||||
void PluginGui::buttonClicked (Button* buttonThatWasClicked)
|
void PluginGui::buttonClicked (Button* buttonThatWasClicked)
|
||||||
{
|
{
|
||||||
//[UserbuttonClicked_Pre]
|
//[UserbuttonClicked_Pre]
|
||||||
|
// TODO:
|
||||||
|
// - prevent all channels from being disabled
|
||||||
|
// - fix button tooltip text
|
||||||
|
// - button styling
|
||||||
|
// - automatically select channel(s) by default
|
||||||
|
// - record output to file
|
||||||
|
for (int i = 1; i <= Hiopl::CHANNELS; ++i) {
|
||||||
|
Button* channelButton = channels[i - 1];
|
||||||
|
if (buttonThatWasClicked == channelButton) {
|
||||||
|
processor->toggleChannel(i);
|
||||||
|
const bool channelEnabled = processor->isChannelEnabled(i);
|
||||||
|
const Colour fg = channelEnabled ? Colours::black : OPLLookAndFeel::DOS_GREEN;
|
||||||
|
const Colour bg = channelEnabled ? OPLLookAndFeel::DOS_GREEN : Colours::black;
|
||||||
|
|
||||||
|
channelButton->setColour(TextButton::ColourIds::buttonColourId, bg);
|
||||||
|
channelButton->setColour(TextButton::ColourIds::buttonOnColourId, bg);
|
||||||
|
channelButton->setColour(TextButton::ColourIds::textColourOnId, fg);
|
||||||
|
channelButton->setColour(TextButton::ColourIds::textColourOffId, fg);
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
//[/UserbuttonClicked_Pre]
|
//[/UserbuttonClicked_Pre]
|
||||||
|
|
||||||
if (buttonThatWasClicked == sineImageButton)
|
if (buttonThatWasClicked == sineImageButton)
|
||||||
|
@ -2548,9 +2602,8 @@ void PluginGui::buttonClicked (Button* buttonThatWasClicked)
|
||||||
void PluginGui::timerCallback()
|
void PluginGui::timerCallback()
|
||||||
{
|
{
|
||||||
for (int i = 0; i < Hiopl::CHANNELS; ++i) {
|
for (int i = 0; i < Hiopl::CHANNELS; ++i) {
|
||||||
channels[i]->setText(processor->getChannelEnvelopeStage(i + 1), NotificationType::dontSendNotification);
|
channels[i]->setButtonText(processor->getChannelEnvelopeStage(i + 1));
|
||||||
}
|
}
|
||||||
//channels[i]->setState(processor->isChannelActive(i+1) ? Button::buttonDown : Button::buttonNormal);
|
|
||||||
}
|
}
|
||||||
//[/MiscUserCode]
|
//[/MiscUserCode]
|
||||||
|
|
||||||
|
@ -2570,83 +2623,89 @@ BEGIN_JUCER_METADATA
|
||||||
snapPixels="8" snapActive="1" snapShown="1" overlayOpacity="0.330"
|
snapPixels="8" snapActive="1" snapShown="1" overlayOpacity="0.330"
|
||||||
fixedSize="1" initialWidth="860" initialHeight="580">
|
fixedSize="1" initialWidth="860" initialHeight="580">
|
||||||
<BACKGROUND backgroundColour="ff000000"/>
|
<BACKGROUND backgroundColour="ff000000"/>
|
||||||
|
<GROUPCOMPONENT name="new group" id="93b9aaeb75040aed" memberName="groupComponent2"
|
||||||
|
virtualName="" explicitFocusOrder="0" pos="440 88 408 344" outlinecol="ff007f00"
|
||||||
|
textcol="ff007f00" title="Carrier" textpos="33"/>
|
||||||
|
<GROUPCOMPONENT name="new group" id="52f9803abb342980" memberName="groupComponent4"
|
||||||
|
virtualName="" explicitFocusOrder="0" pos="16 8 832 64" outlinecol="ff007f00"
|
||||||
|
textcol="ff007f00" title="Channels" textpos="33"/>
|
||||||
<GROUPCOMPONENT name="new group" id="6cc98dbf76b41b7b" memberName="groupComponent11"
|
<GROUPCOMPONENT name="new group" id="6cc98dbf76b41b7b" memberName="groupComponent11"
|
||||||
virtualName="" explicitFocusOrder="0" pos="496 416 192 144" outlinecol="ff007f00"
|
virtualName="" explicitFocusOrder="0" pos="496 440 192 120" outlinecol="ff007f00"
|
||||||
textcol="ff007f00" title="Percussion" textpos="33"/>
|
textcol="ff007f00" title="Percussion" textpos="33"/>
|
||||||
<GROUPCOMPONENT name="new group" id="e8d476c7f6d163e9" memberName="groupComponent10"
|
<GROUPCOMPONENT name="new group" id="e8d476c7f6d163e9" memberName="groupComponent10"
|
||||||
virtualName="" explicitFocusOrder="0" pos="280 416 200 144" outlinecol="ff007f00"
|
virtualName="" explicitFocusOrder="0" pos="280 440 200 120" outlinecol="ff007f00"
|
||||||
textcol="ff007f00" title="Algorithm" textpos="33"/>
|
textcol="ff007f00" title="Algorithm" textpos="33"/>
|
||||||
<GROUPCOMPONENT name="new group" id="791b6f04e9fd52bb" memberName="groupComponent9"
|
<GROUPCOMPONENT name="new group" id="791b6f04e9fd52bb" memberName="groupComponent9"
|
||||||
virtualName="" explicitFocusOrder="0" pos="704 416 144 144" outlinecol="ff007f00"
|
virtualName="" explicitFocusOrder="0" pos="704 440 144 120" outlinecol="ff007f00"
|
||||||
textcol="ff007f00" title="File" textpos="33"/>
|
textcol="ff007f00" title="File" textpos="33"/>
|
||||||
<GROUPCOMPONENT name="new group" id="d2c7c07bf2d78c30" memberName="groupComponent"
|
<GROUPCOMPONENT name="new group" id="d2c7c07bf2d78c30" memberName="groupComponent"
|
||||||
virtualName="" explicitFocusOrder="0" pos="16 88 408 312" outlinecol="ff007f00"
|
virtualName="" explicitFocusOrder="0" pos="16 88 408 344" outlinecol="ff007f00"
|
||||||
textcol="ff007f00" title="Modulator" textpos="33"/>
|
textcol="ff007f00" title="Modulator" textpos="33"/>
|
||||||
<COMBOBOX name="frequency combo box" id="4e65faf3d9442460" memberName="frequencyComboBox"
|
<COMBOBOX name="frequency combo box" id="4e65faf3d9442460" memberName="frequencyComboBox"
|
||||||
virtualName="" explicitFocusOrder="0" pos="149 173 66 24" editable="0"
|
virtualName="" explicitFocusOrder="0" pos="200 168 64 24" editable="0"
|
||||||
layout="33" items="" textWhenNonSelected="" textWhenNoItems="(no choices)"/>
|
layout="33" items="" textWhenNonSelected="" textWhenNoItems="(no choices)"/>
|
||||||
<LABEL name="frequency label" id="7414532477c7f744" memberName="frequencyLabel"
|
<LABEL name="frequency label" id="7414532477c7f744" memberName="frequencyLabel"
|
||||||
virtualName="" explicitFocusOrder="0" pos="32 173 112 24" tooltip="Multiplier applied to base note frequency"
|
virtualName="" explicitFocusOrder="0" pos="40 168 152 24" tooltip="Multiplier applied to base note frequency"
|
||||||
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="Base Frequency"
|
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="Frequency Multiplier"
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="33"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="33"/>
|
||||||
<SLIDER name="a slider" id="1b9be27726a5b3ae" memberName="aSlider" virtualName=""
|
<SLIDER name="a slider" id="1b9be27726a5b3ae" memberName="aSlider" virtualName=""
|
||||||
explicitFocusOrder="0" pos="30 211 30 88" tooltip="Envelope attack rate"
|
explicitFocusOrder="0" pos="40 208 30 88" tooltip="Envelope attack rate"
|
||||||
thumbcol="ff007f00" trackcol="7f007f00" textboxtext="ff007f00"
|
thumbcol="ff007f00" trackcol="7f007f00" textboxtext="ff007f00"
|
||||||
textboxbkgd="ff000000" textboxhighlight="ff00af00" min="0" max="15"
|
textboxbkgd="ff000000" textboxhighlight="ff00af00" min="0" max="15"
|
||||||
int="1" style="LinearVertical" textBoxPos="TextBoxBelow" textBoxEditable="0"
|
int="1" style="LinearVertical" textBoxPos="TextBoxBelow" textBoxEditable="0"
|
||||||
textBoxWidth="30" textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
textBoxWidth="30" textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
||||||
<LABEL name="a label" id="9dd0b13f00b4de42" memberName="aLabel" virtualName=""
|
<LABEL name="a label" id="9dd0b13f00b4de42" memberName="aLabel" virtualName=""
|
||||||
explicitFocusOrder="0" pos="30 301 30 24" tooltip="Attack rate"
|
explicitFocusOrder="0" pos="40 304 30 24" tooltip="Attack rate"
|
||||||
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="A"
|
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="A"
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
<SLIDER name="d slider" id="d4cc8ddf2fc9cf2b" memberName="dSlider" virtualName=""
|
<SLIDER name="d slider" id="d4cc8ddf2fc9cf2b" memberName="dSlider" virtualName=""
|
||||||
explicitFocusOrder="0" pos="70 211 30 88" tooltip="Envelope decay rate"
|
explicitFocusOrder="0" pos="88 208 30 88" tooltip="Envelope decay rate"
|
||||||
thumbcol="ff007f00" trackcol="7f007f00" textboxtext="ff007f00"
|
thumbcol="ff007f00" trackcol="7f007f00" textboxtext="ff007f00"
|
||||||
textboxbkgd="ff000000" textboxhighlight="ff00af00" min="0" max="15"
|
textboxbkgd="ff000000" textboxhighlight="ff00af00" min="0" max="15"
|
||||||
int="1" style="LinearVertical" textBoxPos="TextBoxBelow" textBoxEditable="0"
|
int="1" style="LinearVertical" textBoxPos="TextBoxBelow" textBoxEditable="0"
|
||||||
textBoxWidth="30" textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
textBoxWidth="30" textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
||||||
<LABEL name="d label" id="a7f17b098b85f10b" memberName="dLabel" virtualName=""
|
<LABEL name="d label" id="a7f17b098b85f10b" memberName="dLabel" virtualName=""
|
||||||
explicitFocusOrder="0" pos="70 301 30 24" tooltip="Decay rate"
|
explicitFocusOrder="0" pos="88 304 30 24" tooltip="Decay rate"
|
||||||
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="D"
|
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="D"
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
<SLIDER name="s slider" id="9bcadfc61e498bce" memberName="sSlider" virtualName=""
|
<SLIDER name="s slider" id="9bcadfc61e498bce" memberName="sSlider" virtualName=""
|
||||||
explicitFocusOrder="0" pos="110 211 30 88" tooltip="Envelope sustain level"
|
explicitFocusOrder="0" pos="136 208 30 88" tooltip="Envelope sustain level"
|
||||||
thumbcol="ff007f00" trackcol="7f007f00" textboxtext="ff007f00"
|
thumbcol="ff007f00" trackcol="7f007f00" textboxtext="ff007f00"
|
||||||
textboxbkgd="ff000000" textboxhighlight="ff00af00" min="0" max="15"
|
textboxbkgd="ff000000" textboxhighlight="ff00af00" min="0" max="15"
|
||||||
int="1" style="LinearVertical" textBoxPos="TextBoxBelow" textBoxEditable="0"
|
int="1" style="LinearVertical" textBoxPos="TextBoxBelow" textBoxEditable="0"
|
||||||
textBoxWidth="30" textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
textBoxWidth="30" textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
||||||
<LABEL name="d label" id="6467455c7573fefa" memberName="dLabel2" virtualName=""
|
<LABEL name="d label" id="6467455c7573fefa" memberName="dLabel2" virtualName=""
|
||||||
explicitFocusOrder="0" pos="110 301 30 24" tooltip="Sustain level"
|
explicitFocusOrder="0" pos="136 304 30 24" tooltip="Sustain level"
|
||||||
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="S"
|
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="S"
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
<SLIDER name="r slider" id="5616976a8c5a3f5f" memberName="rSlider" virtualName=""
|
<SLIDER name="r slider" id="5616976a8c5a3f5f" memberName="rSlider" virtualName=""
|
||||||
explicitFocusOrder="0" pos="150 211 30 88" tooltip="Envelope release rate"
|
explicitFocusOrder="0" pos="184 208 30 88" tooltip="Envelope release rate"
|
||||||
thumbcol="ff007f00" trackcol="7f007f00" textboxtext="ff007f00"
|
thumbcol="ff007f00" trackcol="7f007f00" textboxtext="ff007f00"
|
||||||
textboxbkgd="ff000000" textboxhighlight="ff00af00" min="0" max="15"
|
textboxbkgd="ff000000" textboxhighlight="ff00af00" min="0" max="15"
|
||||||
int="1" style="LinearVertical" textBoxPos="TextBoxBelow" textBoxEditable="0"
|
int="1" style="LinearVertical" textBoxPos="TextBoxBelow" textBoxEditable="0"
|
||||||
textBoxWidth="30" textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
textBoxWidth="30" textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
||||||
<LABEL name="r label" id="ef30d2907e867666" memberName="rLabel" virtualName=""
|
<LABEL name="r label" id="ef30d2907e867666" memberName="rLabel" virtualName=""
|
||||||
explicitFocusOrder="0" pos="150 301 30 24" tooltip="Release rate"
|
explicitFocusOrder="0" pos="184 304 30 24" tooltip="Release rate"
|
||||||
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="R"
|
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="R"
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
<SLIDER name="attenuation slider" id="dfb943cd83b3977f" memberName="attenuationSlider"
|
<SLIDER name="attenuation slider" id="dfb943cd83b3977f" memberName="attenuationSlider"
|
||||||
virtualName="" explicitFocusOrder="0" pos="130 358 232 24" thumbcol="ff007f00"
|
virtualName="" explicitFocusOrder="0" pos="328 200 56 126" thumbcol="ff007f00"
|
||||||
trackcol="7f007f00" textboxtext="ff007f00" textboxbkgd="ff000000"
|
trackcol="7f007f00" textboxtext="ff007f00" textboxbkgd="ff000000"
|
||||||
textboxhighlight="ff00af00" min="-47.25" max="0" int="0.75" style="LinearHorizontal"
|
textboxhighlight="ff00af00" min="-47.25" max="0" int="0.75" style="LinearVertical"
|
||||||
textBoxPos="TextBoxRight" textBoxEditable="0" textBoxWidth="64"
|
textBoxPos="TextBoxBelow" textBoxEditable="0" textBoxWidth="64"
|
||||||
textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
||||||
<LABEL name="attenuation label" id="643f88854c82ca3e" memberName="attenuationLabel"
|
<LABEL name="attenuation label" id="643f88854c82ca3e" memberName="attenuationLabel"
|
||||||
virtualName="" explicitFocusOrder="0" pos="32 358 106 24" tooltip="Final output level adjustment"
|
virtualName="" explicitFocusOrder="0" pos="304 168 112 24" tooltip="Final output level adjustment"
|
||||||
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="Attenuation"
|
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="Attenuation"
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
<LABEL name="db label" id="666be8c96c85c9f1" memberName="dbLabel" virtualName=""
|
<LABEL name="db label" id="666be8c96c85c9f1" memberName="dbLabel" virtualName=""
|
||||||
explicitFocusOrder="0" pos="362 358 32 24" textCol="ff007f00"
|
explicitFocusOrder="0" pos="384 304 32 24" textCol="ff007f00"
|
||||||
outlineCol="0" edTextCol="ff000000" edBkgCol="0" labelText="dB"
|
outlineCol="0" edTextCol="ff000000" edBkgCol="0" labelText="dB"
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
|
@ -2680,19 +2739,19 @@ BEGIN_JUCER_METADATA
|
||||||
editableDoubleClick="0" focusDiscardsChanges="0" fontname="Default font"
|
editableDoubleClick="0" focusDiscardsChanges="0" fontname="Default font"
|
||||||
fontsize="15" bold="0" italic="0" justification="33"/>
|
fontsize="15" bold="0" italic="0" justification="33"/>
|
||||||
<TOGGLEBUTTON name="tremolo button" id="1e6ab9b2f1fee312" memberName="tremoloButton"
|
<TOGGLEBUTTON name="tremolo button" id="1e6ab9b2f1fee312" memberName="tremoloButton"
|
||||||
virtualName="" explicitFocusOrder="0" pos="323 170 80 24" tooltip="Modulate amplitude at 3.7 Hz"
|
virtualName="" explicitFocusOrder="0" pos="120 352 80 24" tooltip="Modulate amplitude at 3.7 Hz"
|
||||||
txtcol="ff007f00" buttonText="Tremolo" connectedEdges="0" needsCallback="1"
|
txtcol="ff007f00" buttonText="Tremolo" connectedEdges="0" needsCallback="1"
|
||||||
radioGroupId="0" state="0"/>
|
radioGroupId="0" state="0"/>
|
||||||
<TOGGLEBUTTON name="vibrato button" id="a989eb6692e3dbd8" memberName="vibratoButton"
|
<TOGGLEBUTTON name="vibrato button" id="a989eb6692e3dbd8" memberName="vibratoButton"
|
||||||
virtualName="" explicitFocusOrder="0" pos="243 170 72 24" tooltip="Modulate frequency at 6.1 Hz"
|
virtualName="" explicitFocusOrder="0" pos="32 352 72 24" tooltip="Modulate frequency at 6.1 Hz"
|
||||||
txtcol="ff007f00" buttonText="Vibrato" connectedEdges="0" needsCallback="1"
|
txtcol="ff007f00" buttonText="Vibrato" connectedEdges="0" needsCallback="1"
|
||||||
radioGroupId="0" state="0"/>
|
radioGroupId="0" state="0"/>
|
||||||
<TOGGLEBUTTON name="sustain button" id="e0ae2bc46ec1861c" memberName="sustainButton"
|
<TOGGLEBUTTON name="sustain button" id="e0ae2bc46ec1861c" memberName="sustainButton"
|
||||||
virtualName="" explicitFocusOrder="0" pos="243 206 70 24" tooltip="Enable or disable sustain when note is held"
|
virtualName="" explicitFocusOrder="0" pos="32 384 70 32" tooltip="Enable or disable sustain when note is held"
|
||||||
txtcol="ff007f00" buttonText="Sustain" connectedEdges="0" needsCallback="1"
|
txtcol="ff007f00" buttonText="Sustain" connectedEdges="0" needsCallback="1"
|
||||||
radioGroupId="0" state="0"/>
|
radioGroupId="0" state="0"/>
|
||||||
<TOGGLEBUTTON name="keyscale env button" id="a3f62a22526b4b49" memberName="keyscaleEnvButton"
|
<TOGGLEBUTTON name="keyscale env button" id="a3f62a22526b4b49" memberName="keyscaleEnvButton"
|
||||||
virtualName="" explicitFocusOrder="0" pos="323 194 101 48" tooltip="Speed up envelope rate with note frequency"
|
virtualName="" explicitFocusOrder="0" pos="120 376 101 48" tooltip="Speed up envelope rate with note frequency"
|
||||||
txtcol="ff007f00" buttonText="Keyscale Env. Rate" connectedEdges="0"
|
txtcol="ff007f00" buttonText="Keyscale Env. Rate" connectedEdges="0"
|
||||||
needsCallback="1" radioGroupId="0" state="0"/>
|
needsCallback="1" radioGroupId="0" state="0"/>
|
||||||
<LABEL name="db label" id="b9b3cedf2b541262" memberName="dbLabel2" virtualName=""
|
<LABEL name="db label" id="b9b3cedf2b541262" memberName="dbLabel2" virtualName=""
|
||||||
|
@ -2700,74 +2759,71 @@ BEGIN_JUCER_METADATA
|
||||||
outlineCol="0" edTextCol="ff000000" edBkgCol="0" labelText="dB/8ve "
|
outlineCol="0" edTextCol="ff000000" edBkgCol="0" labelText="dB/8ve "
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
<GROUPCOMPONENT name="new group" id="93b9aaeb75040aed" memberName="groupComponent2"
|
|
||||||
virtualName="" explicitFocusOrder="0" pos="440 88 408 312" outlinecol="ff007f00"
|
|
||||||
textcol="ff007f00" title="Carrier" textpos="33"/>
|
|
||||||
<COMBOBOX name="frequency combo box" id="30b8c81b6bd2a17" memberName="frequencyComboBox2"
|
<COMBOBOX name="frequency combo box" id="30b8c81b6bd2a17" memberName="frequencyComboBox2"
|
||||||
virtualName="" explicitFocusOrder="0" pos="573 173 66 24" editable="0"
|
virtualName="" explicitFocusOrder="0" pos="624 168 66 24" editable="0"
|
||||||
layout="33" items="" textWhenNonSelected="" textWhenNoItems="(no choices)"/>
|
layout="33" items="" textWhenNonSelected="" textWhenNoItems="(no choices)"/>
|
||||||
<LABEL name="frequency label" id="65d58d2259c13bf1" memberName="frequencyLabel3"
|
<LABEL name="frequency label" id="65d58d2259c13bf1" memberName="frequencyLabel3"
|
||||||
virtualName="" explicitFocusOrder="0" pos="456 173 112 24" tooltip="Multiplier applied to base note frequency"
|
virtualName="" explicitFocusOrder="0" pos="464 168 152 24" tooltip="Multiplier applied to base note frequency"
|
||||||
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="Base Frequency"
|
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="Frequency Multiplier"
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="33"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="33"/>
|
||||||
<SLIDER name="a slider" id="d6d2f4556ea9394" memberName="aSlider2" virtualName=""
|
<SLIDER name="a slider" id="d6d2f4556ea9394" memberName="aSlider2" virtualName=""
|
||||||
explicitFocusOrder="0" pos="462 211 30 88" thumbcol="ff007f00"
|
explicitFocusOrder="0" pos="464 208 30 88" thumbcol="ff007f00"
|
||||||
trackcol="7f007f00" textboxtext="ff007f00" textboxbkgd="ff000000"
|
trackcol="7f007f00" textboxtext="ff007f00" textboxbkgd="ff000000"
|
||||||
textboxhighlight="ff00af00" min="0" max="15" int="1" style="LinearVertical"
|
textboxhighlight="ff00af00" min="0" max="15" int="1" style="LinearVertical"
|
||||||
textBoxPos="TextBoxBelow" textBoxEditable="0" textBoxWidth="40"
|
textBoxPos="TextBoxBelow" textBoxEditable="0" textBoxWidth="40"
|
||||||
textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
||||||
<LABEL name="a label" id="9ec6412cc79720bc" memberName="aLabel2" virtualName=""
|
<LABEL name="a label" id="9ec6412cc79720bc" memberName="aLabel2" virtualName=""
|
||||||
explicitFocusOrder="0" pos="462 301 30 24" tooltip="Attack rate"
|
explicitFocusOrder="0" pos="464 304 30 24" tooltip="Attack rate"
|
||||||
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="A"
|
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="A"
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
<SLIDER name="d slider" id="4a1f1b6038500f67" memberName="dSlider2" virtualName=""
|
<SLIDER name="d slider" id="4a1f1b6038500f67" memberName="dSlider2" virtualName=""
|
||||||
explicitFocusOrder="0" pos="510 211 30 88" thumbcol="ff007f00"
|
explicitFocusOrder="0" pos="512 208 30 88" thumbcol="ff007f00"
|
||||||
trackcol="7f007f00" textboxtext="ff007f00" textboxbkgd="ff000000"
|
trackcol="7f007f00" textboxtext="ff007f00" textboxbkgd="ff000000"
|
||||||
textboxhighlight="ff00af00" min="0" max="15" int="1" style="LinearVertical"
|
textboxhighlight="ff00af00" min="0" max="15" int="1" style="LinearVertical"
|
||||||
textBoxPos="TextBoxBelow" textBoxEditable="0" textBoxWidth="40"
|
textBoxPos="TextBoxBelow" textBoxEditable="0" textBoxWidth="40"
|
||||||
textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
||||||
<LABEL name="d label" id="10231adaf9e23e14" memberName="dLabel3" virtualName=""
|
<LABEL name="d label" id="10231adaf9e23e14" memberName="dLabel3" virtualName=""
|
||||||
explicitFocusOrder="0" pos="510 301 30 24" tooltip="Decay rate"
|
explicitFocusOrder="0" pos="512 304 30 24" tooltip="Decay rate"
|
||||||
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="D"
|
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="D"
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
<SLIDER name="s slider" id="2fc057248a815958" memberName="sSlider2" virtualName=""
|
<SLIDER name="s slider" id="2fc057248a815958" memberName="sSlider2" virtualName=""
|
||||||
explicitFocusOrder="0" pos="558 211 30 88" thumbcol="ff007f00"
|
explicitFocusOrder="0" pos="560 208 30 88" thumbcol="ff007f00"
|
||||||
trackcol="7f007f00" textboxtext="ff007f00" textboxbkgd="ff000000"
|
trackcol="7f007f00" textboxtext="ff007f00" textboxbkgd="ff000000"
|
||||||
textboxhighlight="ff00af00" min="0" max="15" int="1" style="LinearVertical"
|
textboxhighlight="ff00af00" min="0" max="15" int="1" style="LinearVertical"
|
||||||
textBoxPos="TextBoxBelow" textBoxEditable="0" textBoxWidth="40"
|
textBoxPos="TextBoxBelow" textBoxEditable="0" textBoxWidth="40"
|
||||||
textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
||||||
<LABEL name="d label" id="5b881f2381defac" memberName="dLabel4" virtualName=""
|
<LABEL name="d label" id="5b881f2381defac" memberName="dLabel4" virtualName=""
|
||||||
explicitFocusOrder="0" pos="558 301 30 24" tooltip="Sustain level"
|
explicitFocusOrder="0" pos="560 304 30 24" tooltip="Sustain level"
|
||||||
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="S"
|
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="S"
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
<SLIDER name="r slider" id="5474ad005fb58e97" memberName="rSlider2" virtualName=""
|
<SLIDER name="r slider" id="5474ad005fb58e97" memberName="rSlider2" virtualName=""
|
||||||
explicitFocusOrder="0" pos="606 211 30 88" thumbcol="ff007f00"
|
explicitFocusOrder="0" pos="608 208 30 88" thumbcol="ff007f00"
|
||||||
trackcol="7f007f00" textboxtext="ff007f00" textboxbkgd="ff000000"
|
trackcol="7f007f00" textboxtext="ff007f00" textboxbkgd="ff000000"
|
||||||
textboxhighlight="ff00af00" min="0" max="15" int="1" style="LinearVertical"
|
textboxhighlight="ff00af00" min="0" max="15" int="1" style="LinearVertical"
|
||||||
textBoxPos="TextBoxBelow" textBoxEditable="0" textBoxWidth="40"
|
textBoxPos="TextBoxBelow" textBoxEditable="0" textBoxWidth="40"
|
||||||
textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
||||||
<LABEL name="r label" id="ca2834438bee82a9" memberName="rLabel2" virtualName=""
|
<LABEL name="r label" id="ca2834438bee82a9" memberName="rLabel2" virtualName=""
|
||||||
explicitFocusOrder="0" pos="606 301 30 24" tooltip="Release rate"
|
explicitFocusOrder="0" pos="608 304 30 24" tooltip="Release rate"
|
||||||
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="R"
|
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="R"
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
<SLIDER name="attenuation slider" id="edb48da87d7535dd" memberName="attenuationSlider2"
|
<SLIDER name="attenuation slider" id="edb48da87d7535dd" memberName="attenuationSlider2"
|
||||||
virtualName="" explicitFocusOrder="0" pos="554 358 232 24" thumbcol="ff007f00"
|
virtualName="" explicitFocusOrder="0" pos="752 200 56 126" thumbcol="ff007f00"
|
||||||
trackcol="7f007f00" textboxtext="ff007f00" textboxbkgd="ff000000"
|
trackcol="7f007f00" textboxtext="ff007f00" textboxbkgd="ff000000"
|
||||||
textboxhighlight="ff00af00" min="-47.25" max="0" int="0.75" style="LinearHorizontal"
|
textboxhighlight="ff00af00" min="-47.25" max="0" int="0.75" style="LinearVertical"
|
||||||
textBoxPos="TextBoxRight" textBoxEditable="0" textBoxWidth="64"
|
textBoxPos="TextBoxBelow" textBoxEditable="0" textBoxWidth="64"
|
||||||
textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
||||||
<LABEL name="attenuation label" id="958314f88253f461" memberName="attenuationLabel2"
|
<LABEL name="attenuation label" id="958314f88253f461" memberName="attenuationLabel2"
|
||||||
virtualName="" explicitFocusOrder="0" pos="456 358 106 24" tooltip="Final output level adjustment"
|
virtualName="" explicitFocusOrder="0" pos="728 168 112 24" tooltip="Final output level adjustment"
|
||||||
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="Attenuation"
|
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="Attenuation"
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
<LABEL name="db label" id="7efc6195ef5e25d1" memberName="dbLabel3" virtualName=""
|
<LABEL name="db label" id="7efc6195ef5e25d1" memberName="dbLabel3" virtualName=""
|
||||||
explicitFocusOrder="0" pos="782 358 40 24" textCol="ff007f00"
|
explicitFocusOrder="0" pos="800 304 40 24" textCol="ff007f00"
|
||||||
outlineCol="0" edTextCol="ff000000" edBkgCol="0" labelText="dB"
|
outlineCol="0" edTextCol="ff000000" edBkgCol="0" labelText="dB"
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
|
@ -2801,85 +2857,85 @@ BEGIN_JUCER_METADATA
|
||||||
editableDoubleClick="0" focusDiscardsChanges="0" fontname="Default font"
|
editableDoubleClick="0" focusDiscardsChanges="0" fontname="Default font"
|
||||||
fontsize="15" bold="0" italic="0" justification="33"/>
|
fontsize="15" bold="0" italic="0" justification="33"/>
|
||||||
<TOGGLEBUTTON name="tremolo button" id="a517934e39704073" memberName="tremoloButton2"
|
<TOGGLEBUTTON name="tremolo button" id="a517934e39704073" memberName="tremoloButton2"
|
||||||
virtualName="" explicitFocusOrder="0" pos="746 170 80 24" tooltip="Modulate amplitude at 3.7 Hz"
|
virtualName="" explicitFocusOrder="0" pos="544 352 80 24" tooltip="Modulate amplitude at 3.7 Hz"
|
||||||
txtcol="ff007f00" buttonText="Tremolo" connectedEdges="0" needsCallback="1"
|
txtcol="ff007f00" buttonText="Tremolo" connectedEdges="0" needsCallback="1"
|
||||||
radioGroupId="0" state="0"/>
|
radioGroupId="0" state="0"/>
|
||||||
<TOGGLEBUTTON name="vibrato button" id="736b965a99641077" memberName="vibratoButton2"
|
<TOGGLEBUTTON name="vibrato button" id="736b965a99641077" memberName="vibratoButton2"
|
||||||
virtualName="" explicitFocusOrder="0" pos="666 170 72 24" tooltip="Modulate frequency at 6.1 Hz"
|
virtualName="" explicitFocusOrder="0" pos="456 352 72 24" tooltip="Modulate frequency at 6.1 Hz"
|
||||||
txtcol="ff007f00" buttonText="Vibrato" connectedEdges="0" needsCallback="1"
|
txtcol="ff007f00" buttonText="Vibrato" connectedEdges="0" needsCallback="1"
|
||||||
radioGroupId="0" state="0"/>
|
radioGroupId="0" state="0"/>
|
||||||
<TOGGLEBUTTON name="sustain button" id="a3832cb840cae1f2" memberName="sustainButton2"
|
<TOGGLEBUTTON name="sustain button" id="a3832cb840cae1f2" memberName="sustainButton2"
|
||||||
virtualName="" explicitFocusOrder="0" pos="666 206 70 24" tooltip="Enable or disable sustain when note is held"
|
virtualName="" explicitFocusOrder="0" pos="456 384 70 24" tooltip="Enable or disable sustain when note is held"
|
||||||
txtcol="ff007f00" buttonText="Sustain" connectedEdges="0" needsCallback="1"
|
txtcol="ff007f00" buttonText="Sustain" connectedEdges="0" needsCallback="1"
|
||||||
radioGroupId="0" state="0"/>
|
radioGroupId="0" state="0"/>
|
||||||
<TOGGLEBUTTON name="keyscale env button" id="4cd968dae86d143c" memberName="keyscaleEnvButton2"
|
<TOGGLEBUTTON name="keyscale env button" id="4cd968dae86d143c" memberName="keyscaleEnvButton2"
|
||||||
virtualName="" explicitFocusOrder="0" pos="746 194 102 48" tooltip="Speed up envelope rate with note frequency"
|
virtualName="" explicitFocusOrder="0" pos="544 376 102 48" tooltip="Speed up envelope rate with note frequency"
|
||||||
txtcol="ff007f00" buttonText="Keyscale Env. Rate" connectedEdges="0"
|
txtcol="ff007f00" buttonText="Keyscale Env. Rate" connectedEdges="0"
|
||||||
needsCallback="1" radioGroupId="0" state="0"/>
|
needsCallback="1" radioGroupId="0" state="0"/>
|
||||||
<LABEL name="frequency label" id="a1e2dd50c2835d73" memberName="frequencyLabel4"
|
<LABEL name="frequency label" id="a1e2dd50c2835d73" memberName="frequencyLabel4"
|
||||||
virtualName="" explicitFocusOrder="0" pos="752 288 88 48" tooltip="Attenuate amplitude with note frequency in db/8ve"
|
virtualName="" explicitFocusOrder="0" pos="656 376 88 48" tooltip="Attenuate amplitude with note frequency in dB per octave"
|
||||||
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="Keyscale Attenuation (db/8ve)"
|
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="Keyscale Attenuation"
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
<GROUPCOMPONENT name="new group" id="7392f7d1c8cf6e74" memberName="groupComponent3"
|
<GROUPCOMPONENT name="new group" id="7392f7d1c8cf6e74" memberName="groupComponent3"
|
||||||
virtualName="" explicitFocusOrder="0" pos="16 416 248 144" outlinecol="ff007f00"
|
virtualName="" explicitFocusOrder="0" pos="16 440 248 120" outlinecol="ff007f00"
|
||||||
textcol="ff007f00" title="Effect depth" textpos="33"/>
|
textcol="ff007f00" title="Effect depth" textpos="33"/>
|
||||||
<SLIDER name="tremolo slider" id="ab64abee7ac8874b" memberName="tremoloSlider"
|
<SLIDER name="tremolo slider" id="ab64abee7ac8874b" memberName="tremoloSlider"
|
||||||
virtualName="" explicitFocusOrder="0" pos="112 456 80 24" thumbcol="ff007f00"
|
virtualName="" explicitFocusOrder="0" pos="112 472 80 24" thumbcol="ff007f00"
|
||||||
trackcol="7f007f00" textboxtext="ff007f00" textboxbkgd="ff000000"
|
trackcol="7f007f00" textboxtext="ff007f00" textboxbkgd="ff000000"
|
||||||
textboxhighlight="ff00af00" min="1" max="4.7999999999999998224"
|
textboxhighlight="ff00af00" min="1" max="4.7999999999999998224"
|
||||||
int="3.7999999999999998224" style="LinearHorizontal" textBoxPos="TextBoxRight"
|
int="3.7999999999999998224" style="LinearHorizontal" textBoxPos="TextBoxRight"
|
||||||
textBoxEditable="0" textBoxWidth="32" textBoxHeight="20" skewFactor="1"
|
textBoxEditable="0" textBoxWidth="32" textBoxHeight="20" skewFactor="1"
|
||||||
needsCallback="1"/>
|
needsCallback="1"/>
|
||||||
<LABEL name="frequency label" id="134ce8f87da62b88" memberName="frequencyLabel5"
|
<LABEL name="frequency label" id="134ce8f87da62b88" memberName="frequencyLabel5"
|
||||||
virtualName="" explicitFocusOrder="0" pos="32 456 104 24" tooltip="OPL global tremolo depth"
|
virtualName="" explicitFocusOrder="0" pos="32 472 80 24" tooltip="OPL global tremolo depth"
|
||||||
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="Tremolo "
|
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="Tremolo "
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="33"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="33"/>
|
||||||
<LABEL name="db label" id="720df8e7c502dd91" memberName="dbLabel5" virtualName=""
|
<LABEL name="db label" id="720df8e7c502dd91" memberName="dbLabel5" virtualName=""
|
||||||
explicitFocusOrder="0" pos="200 448 32 40" textCol="ff007f00"
|
explicitFocusOrder="0" pos="200 464 32 40" textCol="ff007f00"
|
||||||
outlineCol="0" edTextCol="ff000000" edBkgCol="0" labelText="dB"
|
outlineCol="0" edTextCol="ff000000" edBkgCol="0" labelText="dB"
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="33"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="33"/>
|
||||||
<SLIDER name="vibrato slider" id="b45a1f20f22cf5ca" memberName="vibratoSlider"
|
<SLIDER name="vibrato slider" id="b45a1f20f22cf5ca" memberName="vibratoSlider"
|
||||||
virtualName="" explicitFocusOrder="0" pos="112 504 80 24" thumbcol="ff007f00"
|
virtualName="" explicitFocusOrder="0" pos="112 512 80 24" thumbcol="ff007f00"
|
||||||
trackcol="7f007f00" textboxtext="ff007f00" textboxbkgd="ff000000"
|
trackcol="7f007f00" textboxtext="ff007f00" textboxbkgd="ff000000"
|
||||||
textboxhighlight="ff00af00" min="7" max="14" int="7" style="LinearHorizontal"
|
textboxhighlight="ff00af00" min="7" max="14" int="7" style="LinearHorizontal"
|
||||||
textBoxPos="TextBoxRight" textBoxEditable="0" textBoxWidth="32"
|
textBoxPos="TextBoxRight" textBoxEditable="0" textBoxWidth="32"
|
||||||
textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
||||||
<LABEL name="frequency label" id="1412b9d14e37bcbe" memberName="frequencyLabel6"
|
<LABEL name="frequency label" id="1412b9d14e37bcbe" memberName="frequencyLabel6"
|
||||||
virtualName="" explicitFocusOrder="0" pos="32 504 96 24" tooltip="OPL global vibrato depth"
|
virtualName="" explicitFocusOrder="0" pos="32 512 80 24" tooltip="OPL global vibrato depth"
|
||||||
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="Vibrato"
|
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="Vibrato"
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="33"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="33"/>
|
||||||
<LABEL name="db label" id="e13e0aff8b974a36" memberName="dbLabel6" virtualName=""
|
<LABEL name="db label" id="e13e0aff8b974a36" memberName="dbLabel6" virtualName=""
|
||||||
explicitFocusOrder="0" pos="200 496 48 40" tooltip="A unit of pitch; 100 cents per semitone"
|
explicitFocusOrder="0" pos="200 504 48 40" tooltip="A unit of pitch; 100 cents per semitone"
|
||||||
textCol="ff007f00" outlineCol="0" edTextCol="ff000000" edBkgCol="0"
|
textCol="ff007f00" outlineCol="0" edTextCol="ff000000" edBkgCol="0"
|
||||||
labelText="cents " editableSingleClick="0" editableDoubleClick="0"
|
labelText="cents " editableSingleClick="0" editableDoubleClick="0"
|
||||||
focusDiscardsChanges="0" fontname="Default font" fontsize="15"
|
focusDiscardsChanges="0" fontname="Default font" fontsize="15"
|
||||||
bold="0" italic="0" justification="33"/>
|
bold="0" italic="0" justification="33"/>
|
||||||
<SLIDER name="feedback slider" id="f9d22e12f5e417e4" memberName="feedbackSlider"
|
<SLIDER name="feedback slider" id="f9d22e12f5e417e4" memberName="feedbackSlider"
|
||||||
virtualName="" explicitFocusOrder="0" pos="190 240 30 59" thumbcol="ff00af00"
|
virtualName="" explicitFocusOrder="0" pos="248 237 30 59" thumbcol="ff00af00"
|
||||||
trackcol="7f007f00" rotarysliderfill="ff00af00" rotaryslideroutline="ff007f00"
|
trackcol="7f007f00" rotarysliderfill="ff00af00" rotaryslideroutline="ff007f00"
|
||||||
textboxtext="ff007f00" textboxbkgd="ff000000" textboxhighlight="ff00af00"
|
textboxtext="ff007f00" textboxbkgd="ff000000" textboxhighlight="ff00af00"
|
||||||
min="0" max="7" int="1" style="RotaryHorizontalVerticalDrag"
|
min="0" max="7" int="1" style="RotaryHorizontalVerticalDrag"
|
||||||
textBoxPos="TextBoxBelow" textBoxEditable="0" textBoxWidth="30"
|
textBoxPos="TextBoxBelow" textBoxEditable="0" textBoxWidth="30"
|
||||||
textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
textBoxHeight="20" skewFactor="1" needsCallback="1"/>
|
||||||
<LABEL name="frequency label" id="880eaf14af62578a" memberName="frequencyLabel7"
|
<LABEL name="frequency label" id="880eaf14af62578a" memberName="frequencyLabel7"
|
||||||
virtualName="" explicitFocusOrder="0" pos="190 301 30 24" tooltip="Extent to which modulator output is fed back into itself"
|
virtualName="" explicitFocusOrder="0" pos="224 304 80 24" tooltip="Extent to which modulator output is fed back into itself"
|
||||||
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="F"
|
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="Feedback"
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
<COMBOBOX name="velocity combo box" id="cbe10e5236447f15" memberName="velocityComboBox"
|
<COMBOBOX name="velocity combo box" id="cbe10e5236447f15" memberName="velocityComboBox"
|
||||||
virtualName="" explicitFocusOrder="0" pos="244 257 72 24" editable="0"
|
virtualName="" explicitFocusOrder="0" pos="328 352 76 24" editable="0"
|
||||||
layout="33" items="Off Light Heavy" textWhenNonSelected=""
|
layout="33" items="Off Light Heavy" textWhenNonSelected=""
|
||||||
textWhenNoItems="(no choices)"/>
|
textWhenNoItems="(no choices)"/>
|
||||||
<COMBOBOX name="velocity combo box" id="f5c4883d9feaa700" memberName="velocityComboBox2"
|
<COMBOBOX name="velocity combo box" id="f5c4883d9feaa700" memberName="velocityComboBox2"
|
||||||
virtualName="" explicitFocusOrder="0" pos="672 257 72 24" editable="0"
|
virtualName="" explicitFocusOrder="0" pos="760 352 72 24" editable="0"
|
||||||
layout="33" items="Off Light Heavy" textWhenNonSelected=""
|
layout="33" items="Off Light Heavy" textWhenNonSelected=""
|
||||||
textWhenNoItems="(no choices)"/>
|
textWhenNoItems="(no choices)"/>
|
||||||
<LABEL name="attenuation label" id="d9297cdef25630de" memberName="attenuationLabel4"
|
<LABEL name="attenuation label" id="d9297cdef25630de" memberName="attenuationLabel4"
|
||||||
virtualName="" explicitFocusOrder="0" pos="664 288 80 48" tooltip="Set or disable velocity senstivity"
|
virtualName="" explicitFocusOrder="0" pos="760 376 80 48" tooltip="Set or disable velocity senstivity"
|
||||||
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="Velocity Sensitivity"
|
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="Velocity Sensitivity"
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
|
@ -2937,16 +2993,13 @@ BEGIN_JUCER_METADATA
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
<COMBOBOX name="keyscale combo box" id="9b766b7b6a67cbf4" memberName="keyscaleAttenuationComboBox2"
|
<COMBOBOX name="keyscale combo box" id="9b766b7b6a67cbf4" memberName="keyscaleAttenuationComboBox2"
|
||||||
virtualName="" explicitFocusOrder="0" pos="763 257 60 24" editable="0"
|
virtualName="" explicitFocusOrder="0" pos="664 352 76 24" editable="0"
|
||||||
layout="33" items="-0.0 -3.0 -1.5 -6.0" textWhenNonSelected=""
|
layout="33" items="-0.0 -3.0 -1.5 -6.0" textWhenNonSelected=""
|
||||||
textWhenNoItems="(no choices)"/>
|
textWhenNoItems="(no choices)"/>
|
||||||
<COMBOBOX name="keyscale combo box" id="7d8e1de0e1579999" memberName="keyscaleAttenuationComboBox"
|
<COMBOBOX name="keyscale combo box" id="7d8e1de0e1579999" memberName="keyscaleAttenuationComboBox"
|
||||||
virtualName="" explicitFocusOrder="0" pos="338 257 60 24" editable="0"
|
virtualName="" explicitFocusOrder="0" pos="232 352 76 24" editable="0"
|
||||||
layout="33" items="-0.0 -3.0 -1.5 -6.0" textWhenNonSelected=""
|
layout="33" items="-0.0 db/8ve -3.0 db/8ve -1.5 db/8ve -6.0 db/8ve"
|
||||||
textWhenNoItems="(no choices)"/>
|
textWhenNonSelected="" textWhenNoItems="(no choices)"/>
|
||||||
<GROUPCOMPONENT name="new group" id="52f9803abb342980" memberName="groupComponent4"
|
|
||||||
virtualName="" explicitFocusOrder="0" pos="16 8 832 64" outlinecol="ff007f00"
|
|
||||||
textcol="ff007f00" title="Channels" textpos="33"/>
|
|
||||||
<GROUPCOMPONENT name="new group" id="7abc643f4d6a2dbf" memberName="groupComponent5"
|
<GROUPCOMPONENT name="new group" id="7abc643f4d6a2dbf" memberName="groupComponent5"
|
||||||
virtualName="" explicitFocusOrder="0" pos="24 712 408 64" outlinecol="ff007f00"
|
virtualName="" explicitFocusOrder="0" pos="24 712 408 64" outlinecol="ff007f00"
|
||||||
textcol="ff007f00" title="Emulator (currently locked)" textpos="33"/>
|
textcol="ff007f00" title="Emulator (currently locked)" textpos="33"/>
|
||||||
|
@ -2971,11 +3024,11 @@ BEGIN_JUCER_METADATA
|
||||||
txtcol="ff007f00" buttonText="Record to DRO (not working yet)"
|
txtcol="ff007f00" buttonText="Record to DRO (not working yet)"
|
||||||
connectedEdges="0" needsCallback="1" radioGroupId="0" state="0"/>
|
connectedEdges="0" needsCallback="1" radioGroupId="0" state="0"/>
|
||||||
<TEXTBUTTON name="export button" id="88c84ed1e2b284d3" memberName="exportButton"
|
<TEXTBUTTON name="export button" id="88c84ed1e2b284d3" memberName="exportButton"
|
||||||
virtualName="" explicitFocusOrder="0" pos="728 504 96 24" bgColOff="ff007f00"
|
virtualName="" explicitFocusOrder="0" pos="728 512 96 24" bgColOff="ff007f00"
|
||||||
bgColOn="ff00ff00" buttonText="Export .SBI" connectedEdges="3"
|
bgColOn="ff00ff00" buttonText="Export .SBI" connectedEdges="3"
|
||||||
needsCallback="1" radioGroupId="0"/>
|
needsCallback="1" radioGroupId="0"/>
|
||||||
<TEXTBUTTON name="load button" id="a42176161523f448" memberName="loadButton"
|
<TEXTBUTTON name="load button" id="a42176161523f448" memberName="loadButton"
|
||||||
virtualName="" explicitFocusOrder="0" pos="728 456 96 24" bgColOff="ff007f00"
|
virtualName="" explicitFocusOrder="0" pos="728 472 96 24" bgColOff="ff007f00"
|
||||||
bgColOn="ff00ff00" buttonText="Load .SBI" connectedEdges="3"
|
bgColOn="ff00ff00" buttonText="Load .SBI" connectedEdges="3"
|
||||||
needsCallback="1" radioGroupId="0"/>
|
needsCallback="1" radioGroupId="0"/>
|
||||||
<LABEL name="version label" id="cd68ca110847cc18" memberName="versionLabel"
|
<LABEL name="version label" id="cd68ca110847cc18" memberName="versionLabel"
|
||||||
|
@ -3006,7 +3059,7 @@ BEGIN_JUCER_METADATA
|
||||||
editableDoubleClick="0" focusDiscardsChanges="0" fontname="Default font"
|
editableDoubleClick="0" focusDiscardsChanges="0" fontname="Default font"
|
||||||
fontsize="15" bold="0" italic="0" justification="36"/>
|
fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
<IMAGEBUTTON name="Line Border 1C" id="d189b7564dfbe6f4" memberName="LineBorderButton1C"
|
<IMAGEBUTTON name="Line Border 1C" id="d189b7564dfbe6f4" memberName="LineBorderButton1C"
|
||||||
virtualName="" explicitFocusOrder="0" pos="20 340 400 6" buttonText="new button"
|
virtualName="" explicitFocusOrder="0" pos="20 336 400 6" buttonText="new button"
|
||||||
connectedEdges="0" needsCallback="0" radioGroupId="0" keepProportions="0"
|
connectedEdges="0" needsCallback="0" radioGroupId="0" keepProportions="0"
|
||||||
resourceNormal="line_border_horiz_png" opacityNormal="0.60000002384185791016"
|
resourceNormal="line_border_horiz_png" opacityNormal="0.60000002384185791016"
|
||||||
colourNormal="0" resourceOver="line_border_horiz_png" opacityOver="0.60000002384185791016"
|
colourNormal="0" resourceOver="line_border_horiz_png" opacityOver="0.60000002384185791016"
|
||||||
|
@ -3020,7 +3073,7 @@ BEGIN_JUCER_METADATA
|
||||||
colourOver="0" resourceDown="line_border_horiz_png" opacityDown="0.60000002384185791016"
|
colourOver="0" resourceDown="line_border_horiz_png" opacityDown="0.60000002384185791016"
|
||||||
colourDown="0"/>
|
colourDown="0"/>
|
||||||
<IMAGEBUTTON name="Line Border 1B" id="c602d4512bd5e4ad" memberName="LineBorderButton1B"
|
<IMAGEBUTTON name="Line Border 1B" id="c602d4512bd5e4ad" memberName="LineBorderButton1B"
|
||||||
virtualName="" explicitFocusOrder="0" pos="230 156 6 186" buttonText="new button"
|
virtualName="" explicitFocusOrder="0" pos="296 156 6 182" buttonText="new button"
|
||||||
connectedEdges="0" needsCallback="0" radioGroupId="0" keepProportions="0"
|
connectedEdges="0" needsCallback="0" radioGroupId="0" keepProportions="0"
|
||||||
resourceNormal="line_border_vert_png" opacityNormal="0.60000002384185791016"
|
resourceNormal="line_border_vert_png" opacityNormal="0.60000002384185791016"
|
||||||
colourNormal="0" resourceOver="line_border_vert_png" opacityOver="0.60000002384185791016"
|
colourNormal="0" resourceOver="line_border_vert_png" opacityOver="0.60000002384185791016"
|
||||||
|
@ -3032,7 +3085,7 @@ BEGIN_JUCER_METADATA
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
<IMAGEBUTTON name="Line Border 1C" id="fb69fc397f48c0b2" memberName="LineBorderButton1C2"
|
<IMAGEBUTTON name="Line Border 1C" id="fb69fc397f48c0b2" memberName="LineBorderButton1C2"
|
||||||
virtualName="" explicitFocusOrder="0" pos="444 340 400 6" buttonText="new button"
|
virtualName="" explicitFocusOrder="0" pos="444 336 400 6" buttonText="new button"
|
||||||
connectedEdges="0" needsCallback="0" radioGroupId="0" keepProportions="0"
|
connectedEdges="0" needsCallback="0" radioGroupId="0" keepProportions="0"
|
||||||
resourceNormal="line_border_horiz_png" opacityNormal="0.60000002384185791016"
|
resourceNormal="line_border_horiz_png" opacityNormal="0.60000002384185791016"
|
||||||
colourNormal="0" resourceOver="line_border_horiz_png" opacityOver="0.60000002384185791016"
|
colourNormal="0" resourceOver="line_border_horiz_png" opacityOver="0.60000002384185791016"
|
||||||
|
@ -3046,7 +3099,7 @@ BEGIN_JUCER_METADATA
|
||||||
colourOver="0" resourceDown="line_border_horiz_png" opacityDown="0.60000002384185791016"
|
colourOver="0" resourceDown="line_border_horiz_png" opacityDown="0.60000002384185791016"
|
||||||
colourDown="0"/>
|
colourDown="0"/>
|
||||||
<IMAGEBUTTON name="Line Border 1B" id="84b521f64fc5ec24" memberName="LineBorderButton1B2"
|
<IMAGEBUTTON name="Line Border 1B" id="84b521f64fc5ec24" memberName="LineBorderButton1B2"
|
||||||
virtualName="" explicitFocusOrder="0" pos="654 156 6 186" buttonText="new button"
|
virtualName="" explicitFocusOrder="0" pos="720 156 6 182" buttonText="new button"
|
||||||
connectedEdges="0" needsCallback="0" radioGroupId="0" keepProportions="0"
|
connectedEdges="0" needsCallback="0" radioGroupId="0" keepProportions="0"
|
||||||
resourceNormal="line_border_vert_png" opacityNormal="0.60000002384185791016"
|
resourceNormal="line_border_vert_png" opacityNormal="0.60000002384185791016"
|
||||||
colourNormal="0" resourceOver="line_border_vert_png" opacityOver="0.60000002384185791016"
|
colourNormal="0" resourceOver="line_border_vert_png" opacityOver="0.60000002384185791016"
|
||||||
|
@ -3306,7 +3359,7 @@ BEGIN_JUCER_METADATA
|
||||||
editableDoubleClick="0" focusDiscardsChanges="0" fontname="Default font"
|
editableDoubleClick="0" focusDiscardsChanges="0" fontname="Default font"
|
||||||
fontsize="15" bold="0" italic="0" justification="33"/>
|
fontsize="15" bold="0" italic="0" justification="33"/>
|
||||||
<GROUPCOMPONENT name="new group" id="4c77a30ef34ca25d" memberName="groupComponent8"
|
<GROUPCOMPONENT name="new group" id="4c77a30ef34ca25d" memberName="groupComponent8"
|
||||||
virtualName="" explicitFocusOrder="0" pos="1018 200 168 95" outlinecol="ff008000"
|
virtualName="" explicitFocusOrder="0" pos="1008 208 168 95" outlinecol="ff008000"
|
||||||
title=""/>
|
title=""/>
|
||||||
<LABEL name="frequency label" id="70b9f51419600f29" memberName="frequencyLabel9"
|
<LABEL name="frequency label" id="70b9f51419600f29" memberName="frequencyLabel9"
|
||||||
virtualName="" explicitFocusOrder="0" pos="1067 216 72 24" tooltip="In additive mode, carrier and modulator output are simply summed rather than modulated"
|
virtualName="" explicitFocusOrder="0" pos="1067 216 72 24" tooltip="In additive mode, carrier and modulator output are simply summed rather than modulated"
|
||||||
|
@ -3324,63 +3377,79 @@ BEGIN_JUCER_METADATA
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
<LABEL name="frequency label" id="9d58547998708b6b" memberName="frequencyLabel10"
|
<LABEL name="frequency label" id="9d58547998708b6b" memberName="frequencyLabel10"
|
||||||
virtualName="" explicitFocusOrder="0" pos="328 288 88 48" tooltip="Attenuate amplitude with note frequency in db/8ve"
|
virtualName="" explicitFocusOrder="0" pos="224 376 88 48" tooltip="Attenuate amplitude with note frequency in dB per octave"
|
||||||
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="Keyscale Attenuation (db/8ve)"
|
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="Keyscale Attenuation"
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
<LABEL name="attenuation label" id="63aa860d1d8ae341" memberName="attenuationLabel5"
|
<LABEL name="attenuation label" id="63aa860d1d8ae341" memberName="attenuationLabel5"
|
||||||
virtualName="" explicitFocusOrder="0" pos="240 288 80 48" tooltip="Set or disable velocity senstivity"
|
virtualName="" explicitFocusOrder="0" pos="328 376 80 48" tooltip="Set or disable velocity senstivity"
|
||||||
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="Velocity Sensitivity"
|
textCol="ff007f00" edTextCol="ff000000" edBkgCol="0" labelText="Velocity Sensitivity"
|
||||||
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
<IMAGEBUTTON name="fm button" id="19b03dffaa7fc94" memberName="fmButton" virtualName=""
|
<IMAGEBUTTON name="fm button" id="19b03dffaa7fc94" memberName="fmButton" virtualName=""
|
||||||
explicitFocusOrder="0" pos="304 464 56 56" tooltip="FM: carrier frequency is modulated by the modulator"
|
explicitFocusOrder="0" pos="304 472 56 56" tooltip="FM: carrier frequency is modulated by the modulator"
|
||||||
buttonText="FM" connectedEdges="0" needsCallback="1" radioGroupId="3"
|
buttonText="FM" connectedEdges="0" needsCallback="1" radioGroupId="3"
|
||||||
keepProportions="1" resourceNormal="twoopAm_png" opacityNormal="0.5"
|
keepProportions="1" resourceNormal="twoopAm_png" opacityNormal="0.5"
|
||||||
colourNormal="0" resourceOver="" opacityOver="0.5" colourOver="0"
|
colourNormal="0" resourceOver="" opacityOver="0.5" colourOver="0"
|
||||||
resourceDown="" opacityDown="1" colourDown="0"/>
|
resourceDown="" opacityDown="1" colourDown="0"/>
|
||||||
<IMAGEBUTTON name="Additive mode button" id="d3cf9bfa8c4d4885" memberName="additiveButton"
|
<IMAGEBUTTON name="Additive mode button" id="d3cf9bfa8c4d4885" memberName="additiveButton"
|
||||||
virtualName="" explicitFocusOrder="0" pos="384 456 72 72" tooltip="Additive: output the sum of the modulator and carrier"
|
virtualName="" explicitFocusOrder="0" pos="392 464 72 72" tooltip="Additive: output the sum of the modulator and carrier"
|
||||||
buttonText="Additive Mode" connectedEdges="0" needsCallback="1"
|
buttonText="Additive Mode" connectedEdges="0" needsCallback="1"
|
||||||
radioGroupId="3" keepProportions="1" resourceNormal="twoopFm_png"
|
radioGroupId="3" keepProportions="1" resourceNormal="twoopFm_png"
|
||||||
opacityNormal="0.5" colourNormal="0" resourceOver="" opacityOver="0.5"
|
opacityNormal="0.5" colourNormal="0" resourceOver="" opacityOver="0.5"
|
||||||
colourOver="0" resourceDown="" opacityDown="1" colourDown="0"/>
|
colourOver="0" resourceDown="" opacityDown="1" colourDown="0"/>
|
||||||
<IMAGEBUTTON name="bass drum button" id="2c8905c4541593a7" memberName="bassDrumButton"
|
<IMAGEBUTTON name="bass drum button" id="2c8905c4541593a7" memberName="bassDrumButton"
|
||||||
virtualName="" explicitFocusOrder="0" pos="576 448 30 30" tooltip="Bass drum"
|
virtualName="" explicitFocusOrder="0" pos="576 464 30 30" tooltip="Bass drum"
|
||||||
buttonText="bass drum" connectedEdges="0" needsCallback="1" radioGroupId="4"
|
buttonText="bass drum" connectedEdges="0" needsCallback="1" radioGroupId="4"
|
||||||
keepProportions="1" resourceNormal="bassdrum_png" opacityNormal="0.5"
|
keepProportions="1" resourceNormal="bassdrum_png" opacityNormal="0.5"
|
||||||
colourNormal="0" resourceOver="" opacityOver="0.5" colourOver="0"
|
colourNormal="0" resourceOver="" opacityOver="0.5" colourOver="0"
|
||||||
resourceDown="" opacityDown="1" colourDown="0"/>
|
resourceDown="" opacityDown="1" colourDown="0"/>
|
||||||
<IMAGEBUTTON name="snare drum button" id="bcbb7e2c191a56e8" memberName="snareDrumButton"
|
<IMAGEBUTTON name="snare drum button" id="bcbb7e2c191a56e8" memberName="snareDrumButton"
|
||||||
virtualName="" explicitFocusOrder="0" pos="632 448 30 30" tooltip="Snare"
|
virtualName="" explicitFocusOrder="0" pos="632 464 30 30" tooltip="Snare"
|
||||||
buttonText="snare" connectedEdges="0" needsCallback="1" radioGroupId="4"
|
buttonText="snare" connectedEdges="0" needsCallback="1" radioGroupId="4"
|
||||||
keepProportions="1" resourceNormal="snare_png" opacityNormal="0.5"
|
keepProportions="1" resourceNormal="snare_png" opacityNormal="0.5"
|
||||||
colourNormal="0" resourceOver="" opacityOver="0.5" colourOver="0"
|
colourNormal="0" resourceOver="" opacityOver="0.5" colourOver="0"
|
||||||
resourceDown="" opacityDown="1" colourDown="0"/>
|
resourceDown="" opacityDown="1" colourDown="0"/>
|
||||||
<IMAGEBUTTON name="percussion disabled button" id="fcecada70009babc" memberName="disablePercussionButton"
|
<IMAGEBUTTON name="percussion disabled button" id="fcecada70009babc" memberName="disablePercussionButton"
|
||||||
virtualName="" explicitFocusOrder="0" pos="520 448 30 30" tooltip="Disable percussion"
|
virtualName="" explicitFocusOrder="0" pos="520 464 30 30" tooltip="Disable percussion"
|
||||||
buttonText="disabled" connectedEdges="0" needsCallback="1" radioGroupId="4"
|
buttonText="disabled" connectedEdges="0" needsCallback="1" radioGroupId="4"
|
||||||
keepProportions="1" resourceNormal="disabled_png" opacityNormal="0.5"
|
keepProportions="1" resourceNormal="disabled_png" opacityNormal="0.5"
|
||||||
colourNormal="0" resourceOver="" opacityOver="0.5" colourOver="0"
|
colourNormal="0" resourceOver="" opacityOver="0.5" colourOver="0"
|
||||||
resourceDown="" opacityDown="1" colourDown="0"/>
|
resourceDown="" opacityDown="1" colourDown="0"/>
|
||||||
<IMAGEBUTTON name="tom tom button" id="7ab8c7e4677552" memberName="tomTomButton"
|
<IMAGEBUTTON name="tom tom button" id="7ab8c7e4677552" memberName="tomTomButton"
|
||||||
virtualName="" explicitFocusOrder="0" pos="520 504 30 30" tooltip="Tom-tom"
|
virtualName="" explicitFocusOrder="0" pos="520 512 30 30" tooltip="Tom-tom"
|
||||||
buttonText="tom tom" connectedEdges="0" needsCallback="1" radioGroupId="4"
|
buttonText="tom tom" connectedEdges="0" needsCallback="1" radioGroupId="4"
|
||||||
keepProportions="1" resourceNormal="tom_png" opacityNormal="0.5"
|
keepProportions="1" resourceNormal="tom_png" opacityNormal="0.5"
|
||||||
colourNormal="0" resourceOver="" opacityOver="0.5" colourOver="0"
|
colourNormal="0" resourceOver="" opacityOver="0.5" colourOver="0"
|
||||||
resourceDown="" opacityDown="1" colourDown="0"/>
|
resourceDown="" opacityDown="1" colourDown="0"/>
|
||||||
<IMAGEBUTTON name="cymbalButton" id="a4334a83ef3cbbde" memberName="cymbalButton"
|
<IMAGEBUTTON name="cymbalButton" id="a4334a83ef3cbbde" memberName="cymbalButton"
|
||||||
virtualName="" explicitFocusOrder="0" pos="576 504 30 30" tooltip="Cymbal"
|
virtualName="" explicitFocusOrder="0" pos="576 512 30 30" tooltip="Cymbal"
|
||||||
buttonText="snare" connectedEdges="0" needsCallback="1" radioGroupId="4"
|
buttonText="snare" connectedEdges="0" needsCallback="1" radioGroupId="4"
|
||||||
keepProportions="1" resourceNormal="cymbal_png" opacityNormal="0.5"
|
keepProportions="1" resourceNormal="cymbal_png" opacityNormal="0.5"
|
||||||
colourNormal="0" resourceOver="" opacityOver="0.5" colourOver="0"
|
colourNormal="0" resourceOver="" opacityOver="0.5" colourOver="0"
|
||||||
resourceDown="" opacityDown="1" colourDown="0"/>
|
resourceDown="" opacityDown="1" colourDown="0"/>
|
||||||
<IMAGEBUTTON name="hi hat button" id="49d70294c1d75708" memberName="hiHatButton"
|
<IMAGEBUTTON name="hi hat button" id="49d70294c1d75708" memberName="hiHatButton"
|
||||||
virtualName="" explicitFocusOrder="0" pos="632 504 30 30" tooltip="Hi-hat"
|
virtualName="" explicitFocusOrder="0" pos="632 512 30 30" tooltip="Hi-hat"
|
||||||
buttonText="hi-hat" connectedEdges="0" needsCallback="1" radioGroupId="4"
|
buttonText="hi-hat" connectedEdges="0" needsCallback="1" radioGroupId="4"
|
||||||
keepProportions="1" resourceNormal="hihat_png" opacityNormal="0.5"
|
keepProportions="1" resourceNormal="hihat_png" opacityNormal="0.5"
|
||||||
colourNormal="0" resourceOver="" opacityOver="0.5" colourOver="0"
|
colourNormal="0" resourceOver="" opacityOver="0.5" colourOver="0"
|
||||||
resourceDown="" opacityDown="1" colourDown="0"/>
|
resourceDown="" opacityDown="1" colourDown="0"/>
|
||||||
|
<LABEL name="db label" id="56a8c68b3fd380e8" memberName="dbLabel7" virtualName=""
|
||||||
|
explicitFocusOrder="0" pos="320 520 32 40" textCol="ff007f00"
|
||||||
|
outlineCol="0" edTextCol="ff000000" edBkgCol="0" labelText="FM"
|
||||||
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="33"/>
|
||||||
|
<LABEL name="db label" id="a358d95f525350f5" memberName="dbLabel8" virtualName=""
|
||||||
|
explicitFocusOrder="0" pos="392 520 72 40" textCol="ff007f00"
|
||||||
|
outlineCol="0" edTextCol="ff000000" edBkgCol="0" labelText="Additive"
|
||||||
|
editableSingleClick="0" editableDoubleClick="0" focusDiscardsChanges="0"
|
||||||
|
fontname="Default font" fontsize="15" bold="0" italic="0" justification="36"/>
|
||||||
|
<IMAGEBUTTON name="new button" id="d6966805474ef2c" memberName="imageButton"
|
||||||
|
virtualName="" explicitFocusOrder="0" pos="656 232 64 64" buttonText="new button"
|
||||||
|
connectedEdges="0" needsCallback="0" radioGroupId="0" keepProportions="1"
|
||||||
|
resourceNormal="adlib_png" opacityNormal="1" colourNormal="0"
|
||||||
|
resourceOver="" opacityOver="1" colourOver="0" resourceDown=""
|
||||||
|
opacityDown="1" colourDown="0"/>
|
||||||
</JUCER_COMPONENT>
|
</JUCER_COMPONENT>
|
||||||
|
|
||||||
END_JUCER_METADATA
|
END_JUCER_METADATA
|
||||||
|
@ -3673,6 +3742,40 @@ static const unsigned char resource_PluginGui_cymbal_png[] = { 137,80,78,71,13,1
|
||||||
const char* PluginGui::cymbal_png = (const char*) resource_PluginGui_cymbal_png;
|
const char* PluginGui::cymbal_png = (const char*) resource_PluginGui_cymbal_png;
|
||||||
const int PluginGui::cymbal_pngSize = 237;
|
const int PluginGui::cymbal_pngSize = 237;
|
||||||
|
|
||||||
|
// JUCER_RESOURCE: adlib_png, 1605, "../img/adlib.png"
|
||||||
|
static const unsigned char resource_PluginGui_adlib_png[] = { 137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82,0,0,0,85,0,0,0,87,8,2,0,0,0,250,95,158,6,0,0,0,1,115,82,71,66,0,174,206,28,233,0,0,0,4,103,65,
|
||||||
|
77,65,0,0,177,143,11,252,97,5,0,0,0,9,112,72,89,115,0,0,14,195,0,0,14,195,1,199,111,168,100,0,0,5,218,73,68,65,84,120,94,237,156,107,79,34,73,20,134,253,15,26,227,7,163,162,130,220,193,75,54,222,88,84,
|
||||||
|
226,10,49,198,104,212,168,49,70,116,8,1,1,47,136,72,200,122,93,64,205,70,252,201,251,174,117,166,211,67,87,99,119,139,125,153,244,243,145,145,234,122,207,121,79,213,169,238,102,186,108,108,108,108,108,
|
||||||
|
108,108,108,108,108,100,137,70,163,139,139,139,127,118,148,165,165,165,191,20,19,143,199,167,166,166,104,54,250,51,61,61,93,171,213,26,141,198,63,50,188,190,190,254,171,134,247,247,247,108,54,171,60,4,
|
||||||
|
6,235,7,161,80,232,250,250,250,246,246,246,111,9,143,143,143,137,68,2,243,251,67,49,179,179,179,61,61,61,52,180,85,184,188,188,124,120,120,32,209,34,52,232,7,8,129,134,42,192,23,105,54,250,19,14,135,171,
|
||||||
|
213,234,253,253,61,233,22,129,16,104,171,130,92,46,167,170,10,140,212,15,2,129,64,169,84,146,171,130,213,213,85,181,85,208,219,219,75,67,91,133,124,62,15,169,36,90,132,6,253,128,85,1,54,23,74,177,2,224,
|
||||||
|
2,172,199,52,27,253,9,6,131,149,74,165,77,21,188,188,188,144,191,149,129,42,40,20,10,202,67,96,176,126,224,243,249,138,197,162,92,21,172,173,173,77,78,78,82,126,21,0,11,244,245,245,209,208,86,33,147,201,
|
||||||
|
200,85,129,90,253,64,91,21,224,91,52,27,253,193,66,136,237,240,238,238,142,116,139,208,86,5,205,102,243,252,252,92,85,21,24,169,31,164,211,233,167,167,39,18,253,43,104,19,214,215,215,21,186,64,72,254,
|
||||||
|
240,240,48,13,109,9,252,126,255,197,197,5,215,2,202,245,91,178,248,5,82,169,84,27,11,252,127,48,144,225,249,249,153,217,30,139,63,130,56,58,58,74,35,90,11,108,4,56,20,112,155,98,1,105,32,32,254,248,248,
|
||||||
|
152,217,30,44,47,47,187,221,110,26,209,114,96,234,103,103,103,220,42,0,16,191,185,185,217,82,8,80,222,221,221,77,223,255,13,72,38,147,200,42,41,254,21,174,126,32,36,95,14,85,123,225,202,202,74,52,26,165,
|
||||||
|
217,232,143,199,227,185,186,186,146,171,2,124,174,97,47,196,128,202,67,96,176,126,224,114,185,208,17,114,59,34,232,223,218,218,82,213,17,205,204,204,12,12,12,208,208,86,193,233,116,226,104,36,93,8,52,
|
||||||
|
232,7,8,129,134,42,192,223,211,108,12,225,224,224,128,187,16,32,4,248,92,67,21,96,115,81,85,5,6,235,31,27,27,203,229,114,114,29,209,206,206,142,218,42,24,26,26,162,161,173,194,222,222,94,173,86,35,209,
|
||||||
|
34,52,232,7,218,170,32,22,139,209,108,244,7,11,33,250,57,185,133,144,53,63,228,111,101,160,10,110,110,110,84,85,129,145,250,193,200,200,72,54,155,149,171,130,221,221,221,137,137,9,202,175,2,96,1,12,72,
|
||||||
|
67,91,133,237,237,109,185,42,80,171,31,176,42,88,88,88,160,20,43,0,46,64,91,77,179,209,31,156,103,208,20,115,143,70,218,170,224,237,237,173,90,173,42,15,129,193,250,129,195,225,200,100,50,220,219,132,
|
||||||
|
248,112,127,127,255,83,23,176,180,51,160,28,199,109,26,218,42,108,108,108,212,235,117,18,45,66,137,126,75,110,126,45,96,221,66,71,200,173,2,132,0,85,192,165,209,104,192,240,172,249,193,74,62,62,62,78,
|
||||||
|
195,89,145,193,193,193,116,58,205,173,2,32,141,2,196,99,239,16,182,253,120,60,110,109,253,0,235,144,156,5,208,47,183,84,1,148,247,247,247,211,55,173,14,118,129,72,36,242,227,199,15,110,254,185,250,1,66,
|
||||||
|
208,210,237,192,5,104,28,105,80,75,128,46,112,126,126,30,78,134,159,229,204,15,152,255,91,246,66,233,225,223,74,250,221,110,55,148,99,217,107,175,92,0,127,115,120,120,40,118,1,242,111,189,195,63,240,122,
|
||||||
|
189,115,115,115,104,123,160,92,238,118,160,20,169,126,192,214,63,182,4,146,7,62,128,17,240,175,116,61,243,128,206,4,202,113,236,81,165,92,128,91,5,64,122,254,55,163,126,24,190,84,42,105,83,46,128,16,28,
|
||||||
|
29,29,73,93,96,246,22,200,227,241,124,122,255,95,9,92,253,128,21,130,180,10,12,126,254,205,128,248,114,185,252,117,241,12,86,5,240,17,185,255,39,210,243,191,41,244,251,124,190,14,138,103,32,4,199,199,
|
||||||
|
199,210,42,48,221,249,63,16,8,84,42,149,206,138,7,92,253,128,85,65,203,225,23,46,152,53,234,249,247,233,233,41,247,14,215,215,145,171,2,233,249,223,48,253,193,96,80,238,229,151,142,128,125,4,45,51,142,
|
||||||
|
61,148,253,15,96,1,167,211,73,51,48,22,185,247,191,58,5,87,63,64,8,164,37,128,190,131,166,165,15,161,80,72,238,253,191,14,130,16,40,44,1,189,245,163,189,253,214,228,51,160,63,149,74,181,88,0,123,158,193,
|
||||||
|
37,16,14,135,117,72,62,224,234,7,200,54,165,254,3,189,243,143,101,175,227,123,158,28,112,25,249,254,39,198,251,31,219,30,246,39,154,224,119,98,70,255,99,54,104,245,117,48,63,48,163,255,219,188,225,241,
|
||||||
|
29,152,206,255,133,66,65,31,243,3,51,250,223,112,253,45,253,15,146,175,107,255,171,155,126,238,17,192,248,254,95,31,253,184,196,201,201,137,116,229,51,190,255,55,92,191,144,124,100,222,128,251,31,58,172,
|
||||||
|
255,92,231,131,102,179,89,169,84,12,214,143,156,124,235,254,15,241,201,100,82,122,243,3,32,249,166,184,5,36,247,251,191,142,32,167,31,226,133,155,63,200,60,62,161,217,232,207,119,156,127,152,231,25,220,
|
||||||
|
71,0,229,114,89,184,249,105,176,126,208,217,243,47,196,115,31,129,10,32,249,14,135,131,174,109,6,66,161,16,246,97,204,155,20,124,141,54,250,153,237,65,44,22,195,31,208,229,205,0,187,249,171,57,4,88,65,
|
||||||
|
200,238,31,112,95,132,18,63,2,134,231,205,165,31,248,124,62,109,247,191,241,21,37,239,191,153,206,246,82,180,61,255,104,163,95,252,139,8,100,222,227,241,208,149,76,11,123,254,85,175,215,113,92,33,125,
|
||||||
|
34,90,124,46,32,103,120,241,143,255,18,137,68,48,24,164,203,152,25,204,18,39,240,98,177,136,166,13,218,132,64,64,188,242,223,255,129,72,36,98,118,195,183,193,239,247,163,63,65,209,34,135,44,16,224,83,
|
||||||
|
253,130,225,145,118,203,191,234,199,240,122,189,16,131,64,228,243,121,114,182,12,226,255,255,3,110,183,240,239,223,184,184,92,46,4,130,165,151,11,148,255,62,239,185,217,216,216,216,216,88,133,174,174,
|
||||||
|
255,0,140,50,58,48,137,109,192,72,0,0,0,0,73,69,78,68,174,66,96,130,0,0};
|
||||||
|
|
||||||
|
const char* PluginGui::adlib_png = (const char*) resource_PluginGui_adlib_png;
|
||||||
|
const int PluginGui::adlib_pngSize = 1605;
|
||||||
|
|
||||||
|
|
||||||
//[EndFile] You can add extra defines here...
|
//[EndFile] You can add extra defines here...
|
||||||
//[/EndFile]
|
//[/EndFile]
|
||||||
|
|
|
@ -118,6 +118,8 @@ public:
|
||||||
static const int hihat_pngSize;
|
static const int hihat_pngSize;
|
||||||
static const char* cymbal_png;
|
static const char* cymbal_png;
|
||||||
static const int cymbal_pngSize;
|
static const int cymbal_pngSize;
|
||||||
|
static const char* adlib_png;
|
||||||
|
static const int adlib_pngSize;
|
||||||
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
@ -125,13 +127,15 @@ private:
|
||||||
static const uint32 COLOUR_MID = 0xff007f00;
|
static const uint32 COLOUR_MID = 0xff007f00;
|
||||||
static const uint32 COLOUR_RECORDING = 0xffff0000;
|
static const uint32 COLOUR_RECORDING = 0xffff0000;
|
||||||
AdlibBlasterAudioProcessor* processor;
|
AdlibBlasterAudioProcessor* processor;
|
||||||
std::array<ScopedPointer<Label>, Hiopl::CHANNELS> channels;
|
std::array<ScopedPointer<TextButton>, Hiopl::CHANNELS> channels;
|
||||||
TooltipWindow tooltipWindow;
|
TooltipWindow tooltipWindow;
|
||||||
File instrumentLoadDirectory = File::nonexistent;
|
File instrumentLoadDirectory = File::nonexistent;
|
||||||
File instrumentSaveDirectory = File::nonexistent;
|
File instrumentSaveDirectory = File::nonexistent;
|
||||||
//[/UserVariables]
|
//[/UserVariables]
|
||||||
|
|
||||||
//==============================================================================
|
//==============================================================================
|
||||||
|
ScopedPointer<GroupComponent> groupComponent2;
|
||||||
|
ScopedPointer<GroupComponent> groupComponent4;
|
||||||
ScopedPointer<GroupComponent> groupComponent11;
|
ScopedPointer<GroupComponent> groupComponent11;
|
||||||
ScopedPointer<GroupComponent> groupComponent10;
|
ScopedPointer<GroupComponent> groupComponent10;
|
||||||
ScopedPointer<GroupComponent> groupComponent9;
|
ScopedPointer<GroupComponent> groupComponent9;
|
||||||
|
@ -159,7 +163,6 @@ private:
|
||||||
ScopedPointer<ToggleButton> sustainButton;
|
ScopedPointer<ToggleButton> sustainButton;
|
||||||
ScopedPointer<ToggleButton> keyscaleEnvButton;
|
ScopedPointer<ToggleButton> keyscaleEnvButton;
|
||||||
ScopedPointer<Label> dbLabel2;
|
ScopedPointer<Label> dbLabel2;
|
||||||
ScopedPointer<GroupComponent> groupComponent2;
|
|
||||||
ScopedPointer<ComboBox> frequencyComboBox2;
|
ScopedPointer<ComboBox> frequencyComboBox2;
|
||||||
ScopedPointer<Label> frequencyLabel3;
|
ScopedPointer<Label> frequencyLabel3;
|
||||||
ScopedPointer<Slider> aSlider2;
|
ScopedPointer<Slider> aSlider2;
|
||||||
|
@ -206,7 +209,6 @@ private:
|
||||||
ScopedPointer<Label> dbLabel4;
|
ScopedPointer<Label> dbLabel4;
|
||||||
ScopedPointer<ComboBox> keyscaleAttenuationComboBox2;
|
ScopedPointer<ComboBox> keyscaleAttenuationComboBox2;
|
||||||
ScopedPointer<ComboBox> keyscaleAttenuationComboBox;
|
ScopedPointer<ComboBox> keyscaleAttenuationComboBox;
|
||||||
ScopedPointer<GroupComponent> groupComponent4;
|
|
||||||
ScopedPointer<GroupComponent> groupComponent5;
|
ScopedPointer<GroupComponent> groupComponent5;
|
||||||
ScopedPointer<Slider> emulatorSlider;
|
ScopedPointer<Slider> emulatorSlider;
|
||||||
ScopedPointer<Label> emulatorLabel;
|
ScopedPointer<Label> emulatorLabel;
|
||||||
|
@ -287,6 +289,9 @@ private:
|
||||||
ScopedPointer<ImageButton> tomTomButton;
|
ScopedPointer<ImageButton> tomTomButton;
|
||||||
ScopedPointer<ImageButton> cymbalButton;
|
ScopedPointer<ImageButton> cymbalButton;
|
||||||
ScopedPointer<ImageButton> hiHatButton;
|
ScopedPointer<ImageButton> hiHatButton;
|
||||||
|
ScopedPointer<Label> dbLabel7;
|
||||||
|
ScopedPointer<Label> dbLabel8;
|
||||||
|
ScopedPointer<ImageButton> imageButton;
|
||||||
|
|
||||||
|
|
||||||
//==============================================================================
|
//==============================================================================
|
||||||
|
|
|
@ -4,6 +4,8 @@
|
||||||
#include "IntFloatParameter.h"
|
#include "IntFloatParameter.h"
|
||||||
#include "SbiLoader.h"
|
#include "SbiLoader.h"
|
||||||
|
|
||||||
|
#include <iterator>
|
||||||
|
|
||||||
const char *AdlibBlasterAudioProcessor::PROGRAM_INDEX = "Program Index";
|
const char *AdlibBlasterAudioProcessor::PROGRAM_INDEX = "Program Index";
|
||||||
|
|
||||||
//==============================================================================
|
//==============================================================================
|
||||||
|
@ -132,6 +134,7 @@ AdlibBlasterAudioProcessor::AdlibBlasterAudioProcessor()
|
||||||
setCurrentProgram(0);
|
setCurrentProgram(0);
|
||||||
for (int i = 0; i < Hiopl::CHANNELS+1; i++) {
|
for (int i = 0; i < Hiopl::CHANNELS+1; i++) {
|
||||||
active_notes[i] = NO_NOTE;
|
active_notes[i] = NO_NOTE;
|
||||||
|
channel_enabled[i] = true;
|
||||||
}
|
}
|
||||||
currentScaledBend = 1.0f;
|
currentScaledBend = 1.0f;
|
||||||
|
|
||||||
|
@ -904,17 +907,41 @@ void AdlibBlasterAudioProcessor::setStateInformation (const void* data, int size
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// @param idx 1-based channel index
|
bool AdlibBlasterAudioProcessor::isChannelEnabled(const int idx) const {
|
||||||
// @note since this is just reading off pod, "safe" to access without a mutex by other threads such as GUI
|
return channel_enabled[idx];
|
||||||
int AdlibBlasterAudioProcessor::isChannelActive(int idx) const
|
|
||||||
{
|
|
||||||
return active_notes[idx] != NO_NOTE;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @param idx 1-based channel index
|
||||||
|
void AdlibBlasterAudioProcessor::disableChannel(const int idx)
|
||||||
|
{
|
||||||
|
if (isChannelEnabled(idx)) {
|
||||||
|
std::deque<int>::const_iterator pos = std::find(available_channels.begin(), available_channels.end(), idx);
|
||||||
|
if (pos != available_channels.end()) {
|
||||||
|
available_channels.erase(pos);
|
||||||
|
channel_enabled[idx] = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void AdlibBlasterAudioProcessor::enableChannel(const int idx)
|
||||||
|
{
|
||||||
|
if (!isChannelEnabled(idx)) {
|
||||||
|
available_channels.push_back(idx);
|
||||||
|
channel_enabled[idx] = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void AdlibBlasterAudioProcessor::toggleChannel(const int idx)
|
||||||
|
{
|
||||||
|
isChannelEnabled(idx) ? disableChannel(idx) : enableChannel(idx);
|
||||||
|
}
|
||||||
|
|
||||||
|
const char* CHANNEL_DISABLED_STRING = "x";
|
||||||
|
|
||||||
// @param idx 1-based channel index
|
// @param idx 1-based channel index
|
||||||
const char* AdlibBlasterAudioProcessor::getChannelEnvelopeStage(int idx) const
|
const char* AdlibBlasterAudioProcessor::getChannelEnvelopeStage(int idx) const
|
||||||
{
|
{
|
||||||
return Opl->GetState(idx);
|
return isChannelEnabled(idx) ? Opl->GetState(idx) : CHANNEL_DISABLED_STRING;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -55,7 +55,10 @@ public:
|
||||||
void saveInstrumentToFile(String filename);
|
void saveInstrumentToFile(String filename);
|
||||||
void setParametersByRegister(int register_base, int op, uint8 value);
|
void setParametersByRegister(int register_base, int op, uint8 value);
|
||||||
|
|
||||||
int isChannelActive(int idx) const;
|
void disableChannel(const int idx);
|
||||||
|
void enableChannel(const int idx);
|
||||||
|
void toggleChannel(const int idx);
|
||||||
|
bool isChannelEnabled(const int idx) const;
|
||||||
const char* getChannelEnvelopeStage(int idx) const;
|
const char* getChannelEnvelopeStage(int idx) const;
|
||||||
|
|
||||||
void updateGuiIfPresent();
|
void updateGuiIfPresent();
|
||||||
|
@ -94,9 +97,10 @@ private:
|
||||||
bool velocity;
|
bool velocity;
|
||||||
static const int NO_NOTE=-1;
|
static const int NO_NOTE=-1;
|
||||||
static const char *PROGRAM_INDEX;
|
static const char *PROGRAM_INDEX;
|
||||||
int active_notes[Hiopl::CHANNELS+1]; // keyed by channel
|
int active_notes[Hiopl::CHANNELS + 1]; // keyed by 1-based channel index
|
||||||
std::deque<int> available_channels; // most recently freed at end
|
bool channel_enabled[Hiopl::CHANNELS + 1]; // keyed by 1-based channel index
|
||||||
std::deque<int> used_channels; // most recently used at end
|
std::deque<int> available_channels; // most recently freed at end
|
||||||
|
std::deque<int> used_channels; // most recently used at end
|
||||||
float currentScaledBend;
|
float currentScaledBend;
|
||||||
|
|
||||||
//==============================================================================
|
//==============================================================================
|
||||||
|
|
BIN
img/adlib.png
Normal file
BIN
img/adlib.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.6 KiB |
Loading…
Reference in a new issue