Browse Source

Store and restore free filter state

tags/1.1.0
xenakios 7 years ago
parent
commit
7c61a552c2
2 changed files with 11 additions and 5 deletions
  1. +6
    -2
      Source/PluginProcessor.cpp
  2. +5
    -3
      Source/jcdp_envelope.h

+ 6
- 2
Source/PluginProcessor.cpp View File

@@ -232,7 +232,9 @@ ValueTree PaulstretchpluginAudioProcessor::getStateTree(bool ignoreoptions, bool
paramtree.setProperty("loadfilewithstate", m_load_file_with_state, nullptr);
}
storeToTreeProperties(paramtree, nullptr, "waveviewrange", m_wave_view_range);
return paramtree;
ValueTree freefilterstate = m_free_filter_envelope->saveState(Identifier("freefilter_envelope"));
paramtree.addChild(freefilterstate, -1, nullptr);
return paramtree;
}

void PaulstretchpluginAudioProcessor::setStateFromTree(ValueTree tree)
@@ -241,7 +243,9 @@ void PaulstretchpluginAudioProcessor::setStateFromTree(ValueTree tree)
{
{
ScopedLock locker(m_cs);
m_load_file_with_state = tree.getProperty("loadfilewithstate", true);
ValueTree freefilterstate = tree.getChildWithName("freefilter_envelope");
m_free_filter_envelope->restoreState(freefilterstate);
m_load_file_with_state = tree.getProperty("loadfilewithstate", true);
if (tree.hasProperty("numspectralstages"))
{
std::vector<SpectrumProcess> order;


+ 5
- 3
Source/jcdp_envelope.h View File

@@ -210,9 +210,9 @@ public:
double GetDefValue() { return m_defvalue; }
void SetDefValue(double value) { m_defvalue=value; }
int GetDefShape() { return m_defshape; }
ValueTree saveState()
ValueTree saveState(Identifier id)
{
ValueTree result("envelope");
ValueTree result(id);
for (int i = 0; i < m_nodes.size(); ++i)
{
ValueTree pt_tree("pt");
@@ -224,7 +224,9 @@ public:
}
void restoreState(ValueTree state)
{
int numnodes = state.getNumChildren();
if (state.isValid()==false)
return;
int numnodes = state.getNumChildren();
if (numnodes > 0)
{
m_nodes.clear();


Loading…
Cancel
Save