From 9f7b288fd647b676ee83fb6591fb8c8b28c64e46 Mon Sep 17 00:00:00 2001 From: xenakios Date: Fri, 13 Apr 2018 15:24:18 +0300 Subject: [PATCH] Readme. Remove the octave mixer sliders from the main GUI. It's kind of nasty creating the parameter components for all the parameters even when they are not visible in the GUI. Should probably redesign how all that is handled... --- Source/PluginEditor.cpp | 22 ++++++++++++++++------ readme.txt | 3 ++- 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/Source/PluginEditor.cpp b/Source/PluginEditor.cpp index 813b53f..85673cb 100644 --- a/Source/PluginEditor.cpp +++ b/Source/PluginEditor.cpp @@ -69,13 +69,16 @@ PaulstretchpluginAudioProcessorEditor::PaulstretchpluginAudioProcessorEditor(Pau if (parid->paramID.startsWith("fftsize") || parid->paramID.startsWith("numoutchans") || parid->paramID.startsWith("numinchans")) notifyonlyonrelease = true; - m_parcomps.emplace_back(std::make_unique(pars[i],notifyonlyonrelease)); int group_id = -1; if (i == cpi_harmonicsbw || i == cpi_harmonicsfreq || i == cpi_harmonicsgauss || i == cpi_numharmonics) group_id = 0; if (i == cpi_octavesm2 || i == cpi_octavesm1 || i == cpi_octaves0 || i == cpi_octaves1 || i == cpi_octaves15 || - i == cpi_octaves2) - group_id = 4; + i == cpi_octaves2 || i==cpi_octaves_extra1 || i==cpi_octaves_extra2) + group_id = -2; // -2 for not included in the main parameters page + if (i >= (int)cpi_octaves_ratio0 && i <= (int)cpi_octaves_ratio7) + group_id = -2; + if (i >= (int)cpi_enable_spec_module0 && i <= (int)cpi_enable_spec_module8) + group_id = -2; if (i == cpi_tonalvsnoisebw || i == cpi_tonalvsnoisepreserve) group_id = 1; if (i == cpi_filter_low || i == cpi_filter_high) @@ -92,8 +95,13 @@ PaulstretchpluginAudioProcessorEditor::PaulstretchpluginAudioProcessorEditor(Pau i == cpi_freefilter_tilty || i == cpi_freefilter_randomy_amount || i == cpi_freefilter_randomy_numbands || i == cpi_freefilter_randomy_rate) group_id = 7; + + + m_parcomps.emplace_back(std::make_unique(pars[i], notifyonlyonrelease)); m_parcomps.back()->m_group_id = group_id; - addAndMakeVisible(m_parcomps.back().get()); + if (group_id>=-1) + addAndMakeVisible(m_parcomps.back().get()); + } //addAndMakeVisible(&m_specvis); @@ -211,7 +219,7 @@ PaulstretchpluginAudioProcessorEditor::PaulstretchpluginAudioProcessorEditor(Pau m_wavefilter_tab.addTab("Free filter", Colours::white, &m_free_filter_component, false); addAndMakeVisible(&m_wavefilter_tab); - setSize (1200, 30+(pars.size()/2)*25+100+15); + setSize (1200, 320+14*25); startTimer(1, 100); startTimer(2, 1000); startTimer(3, 200); @@ -273,6 +281,7 @@ void PaulstretchpluginAudioProcessorEditor::resized() m_parcomps[cpi_pitchshift]->setBounds(xoffs, yoffs, div - 1, 24); xoffs += div; m_parcomps[cpi_frequencyshift]->setBounds(xoffs, yoffs, div - 1, 24); + /* xoffs = 1; yoffs += 25; m_parcomps[cpi_octavesm2]->setBounds(xoffs, yoffs, div - 1, 24); @@ -288,6 +297,7 @@ void PaulstretchpluginAudioProcessorEditor::resized() m_parcomps[cpi_octaves15]->setBounds(xoffs, yoffs, div - 1, 24); xoffs += div; m_parcomps[cpi_octaves2]->setBounds(xoffs, yoffs, div - 1, 24); + */ xoffs = 1; yoffs += 25; m_parcomps[cpi_numharmonics]->setBounds(xoffs, yoffs, div - 1, 24); @@ -1063,7 +1073,7 @@ void SpectralChainEditor::drawBox(Graphics & g, int index, int x, int y, int w, if (m_order[index].m_index == 3) txt = "Pitch shift"; if (m_order[index].m_index == 4) - txt = "Octaves"; + txt = "Ratios"; if (m_order[index].m_index == 5) txt = "Spread"; if (m_order[index].m_index == 6) diff --git a/readme.txt b/readme.txt index 69f90c0..165d0ab 100644 --- a/readme.txt +++ b/readme.txt @@ -9,7 +9,8 @@ Released under GNU General Public License v.2 license. History : 04-13-2018 1.1.3 -Changed "Octaves" module to "Ratios". The Ratios module has more shifters than the previous - Octaves module and allows changing the pitch ratios in a separate tabbed page in the GUI. + Octaves module and allows changing the pitch ratios (and the shifters mix) + in a separate tabbed page in the GUI. 04-01-2018 1.1.2 -Rebuilt with latest JUCE to fix parameter automation issue for example in Ableton Live -Optimization in calculation of transformed free filter envelope