# HG changeset patch # User lbajardsilogic # Date 1194604309 0 # Node ID de8bd6cd96c1afcf6948f51f92218105f224fa0a # Parent 9750e9c39e9447387cb2ef968efd75f9cb93ef3d send the correct playspeed factor to the mainwindow when the filter is desactivated diff -r 9750e9c39e94 -r de8bd6cd96c1 sv/filter/TimeStretchFilter.cpp --- a/sv/filter/TimeStretchFilter.cpp Fri Nov 09 09:57:22 2007 +0000 +++ b/sv/filter/TimeStretchFilter.cpp Fri Nov 09 10:31:49 2007 +0000 @@ -235,7 +235,8 @@ if(value == 0){ hopfactor=1; } - emit playSpeedChanged(hopfactor); + if ((!m_bypass) && (isFilterEnabled())) + emit playSpeedChanged(hopfactor); } else if (name == "Pitch") { if (value > 0){ @@ -248,7 +249,17 @@ m_interpfactor=1; } } else if (name == "Bypass"){ - m_bypass = (value > 0) ? true : false; + if (value > 0) + { + m_bypass = true; + if (isFilterEnabled()) + emit playSpeedChanged(1); + } else + { + m_bypass = false; + if (isFilterEnabled()) + emit playSpeedChanged(hopfactor); + } } else if (name == "Transdetect"){ m_transcheck = (value > 0) ? true : false; } else if (name == "Peaklock"){ @@ -427,4 +438,30 @@ currentposition += m_hop; } return skip; -} \ No newline at end of file +} + +void TimeStretchFilter::setFilterEnabled(bool b){ + filterEnabled=b; + emit filterEnableChanged(b); + + if (filterEnabled) + { + if (!m_bypass) + emit playSpeedChanged(hopfactor); + } + else + emit playSpeedChanged(1); +} + +void TimeStretchFilter::setFilterEnabled(int b){ + filterEnabled=b; + emit filterEnableChanged(b); + + if (filterEnabled) + { + if (!m_bypass) + emit playSpeedChanged(hopfactor); + } + else + emit playSpeedChanged(1); +} diff -r 9750e9c39e94 -r de8bd6cd96c1 sv/filter/TimeStretchFilter.h --- a/sv/filter/TimeStretchFilter.h Fri Nov 09 09:57:22 2007 +0000 +++ b/sv/filter/TimeStretchFilter.h Fri Nov 09 10:31:49 2007 +0000 @@ -43,6 +43,10 @@ signals: void playSpeedChanged(float); +public slots : + void setFilterEnabled(bool b); + void setFilterEnabled(int b); + protected: bool m_bypass; diff -r 9750e9c39e94 -r de8bd6cd96c1 sv/main/MainWindow.cpp --- a/sv/main/MainWindow.cpp Fri Nov 09 09:57:22 2007 +0000 +++ b/sv/main/MainWindow.cpp Fri Nov 09 10:31:49 2007 +0000 @@ -4064,6 +4064,7 @@ */ m_playSpeedVal = value; + std::cerr << "m_playSpeedVal : " << m_playSpeedVal << std::endl; } /*void