From 9c4664d162c537ba4dd4fd8220971c0fb727103a Mon Sep 17 00:00:00 2001 From: Florian Jung Date: Sun, 1 Jul 2012 16:42:16 +0000 Subject: final merge --- muse2/muse/mixer/astrip.cpp | 53 ++++++++++++++++++-------------------------- muse2/muse/mixer/astrip.h | 4 ++-- muse2/muse/mixer/panknob.cpp | 1 - 3 files changed, 23 insertions(+), 35 deletions(-) (limited to 'muse2/muse/mixer') diff --git a/muse2/muse/mixer/astrip.cpp b/muse2/muse/mixer/astrip.cpp index 7699af41..3b0a8707 100644 --- a/muse2/muse/mixer/astrip.cpp +++ b/muse2/muse/mixer/astrip.cpp @@ -455,10 +455,11 @@ void AudioStrip::auxLabelChanged(double val, unsigned int idx) // volumeChanged //--------------------------------------------------------- -void AudioStrip::volumeChanged(double val) +void AudioStrip::volumeChanged(double val, int, bool shift_pressed) { AutomationType at = ((MusECore::AudioTrack*)track)->automationType(); - if(at == AUTO_WRITE || (MusEGlobal::audio->isPlaying() && at == AUTO_TOUCH)) + if ( (at == AUTO_WRITE) || + (at == AUTO_TOUCH && MusEGlobal::audio->isPlaying()) ) track->enableVolumeController(false); double vol; @@ -472,12 +473,7 @@ void AudioStrip::volumeChanged(double val) //MusEGlobal::audio->msgSetVolume((MusECore::AudioTrack*)track, vol); // p4.0.21 MusEGlobal::audio->msgXXX waits. Do we really need to? ((MusECore::AudioTrack*)track)->setVolume(vol); - MusEGlobal::song->controllerChange(track); - - ((MusECore::AudioTrack*)track)->recordAutomation(MusECore::AC_VOLUME, vol); - - //MusEGlobal::song->update(SC_TRACK_MODIFIED); // for graphical automation update - //MusEGlobal::song->controllerChange(track); + if (!shift_pressed) ((MusECore::AudioTrack*)track)->recordAutomation(MusECore::AC_VOLUME, vol); } //--------------------------------------------------------- @@ -487,7 +483,7 @@ void AudioStrip::volumeChanged(double val) void AudioStrip::volumePressed() { AutomationType at = ((MusECore::AudioTrack*)track)->automationType(); - if(at == AUTO_WRITE || (at == AUTO_READ || at == AUTO_TOUCH)) + if (at == AUTO_READ || at == AUTO_TOUCH || at == AUTO_WRITE) track->enableVolumeController(false); double val = slider->value(); @@ -502,8 +498,6 @@ void AudioStrip::volumePressed() //MusEGlobal::audio->msgSetVolume((MusECore::AudioTrack*)track, volume); // p4.0.21 MusEGlobal::audio->msgXXX waits. Do we really need to? ((MusECore::AudioTrack*)track)->setVolume(volume); - MusEGlobal::song->controllerChange(track); - ((MusECore::AudioTrack*)track)->startAutoRecord(MusECore::AC_VOLUME, volume); } @@ -513,7 +507,8 @@ void AudioStrip::volumePressed() void AudioStrip::volumeReleased() { - if(track->automationType() != AUTO_WRITE) + AutomationType at = track->automationType(); + if (at == AUTO_OFF || at == AUTO_READ || at == AUTO_TOUCH) track->enableVolumeController(true); ((MusECore::AudioTrack*)track)->stopAutoRecord(MusECore::AC_VOLUME, volume); @@ -534,7 +529,8 @@ void AudioStrip::volumeRightClicked(const QPoint &p) void AudioStrip::volLabelChanged(double val) { AutomationType at = ((MusECore::AudioTrack*)track)->automationType(); - if(at == AUTO_WRITE || (MusEGlobal::audio->isPlaying() && at == AUTO_TOUCH)) + if ( (at == AUTO_WRITE) || + (at == AUTO_TOUCH && MusEGlobal::audio->isPlaying()) ) track->enableVolumeController(false); double vol; @@ -549,8 +545,6 @@ void AudioStrip::volLabelChanged(double val) //audio->msgSetVolume((MusECore::AudioTrack*)track, vol); // p4.0.21 audio->msgXXX waits. Do we really need to? ((MusECore::AudioTrack*)track)->setVolume(vol); - MusEGlobal::song->controllerChange(track); - ((MusECore::AudioTrack*)track)->startAutoRecord(MusECore::AC_VOLUME, vol); } @@ -558,19 +552,18 @@ void AudioStrip::volLabelChanged(double val) // panChanged //--------------------------------------------------------- -void AudioStrip::panChanged(double val) +void AudioStrip::panChanged(double val, int, bool shift_pressed) { AutomationType at = ((MusECore::AudioTrack*)track)->automationType(); - if(at == AUTO_WRITE || (MusEGlobal::audio->isPlaying() && at == AUTO_TOUCH)) + if ( (at == AUTO_WRITE) || + (at == AUTO_TOUCH && MusEGlobal::audio->isPlaying()) ) track->enablePanController(false); panVal = val; //MusEGlobal::audio->msgSetPan(((MusECore::AudioTrack*)track), val); // p4.0.21 MusEGlobal::audio->msgXXX waits. Do we really need to? ((MusECore::AudioTrack*)track)->setPan(val); - MusEGlobal::song->controllerChange(track); - - ((MusECore::AudioTrack*)track)->recordAutomation(MusECore::AC_PAN, val); + if (!shift_pressed) ((MusECore::AudioTrack*)track)->recordAutomation(MusECore::AC_PAN, val); } //--------------------------------------------------------- @@ -580,15 +573,13 @@ void AudioStrip::panChanged(double val) void AudioStrip::panPressed() { AutomationType at = ((MusECore::AudioTrack*)track)->automationType(); - if(at == AUTO_WRITE || (at == AUTO_READ || at == AUTO_TOUCH)) + if (at == AUTO_READ || at == AUTO_TOUCH || at == AUTO_WRITE) track->enablePanController(false); panVal = pan->value(); //MusEGlobal::audio->msgSetPan(((MusECore::AudioTrack*)track), panVal); // p4.0.21 MusEGlobal::audio->msgXXX waits. Do we really need to? ((MusECore::AudioTrack*)track)->setPan(panVal); - MusEGlobal::song->controllerChange(track); - ((MusECore::AudioTrack*)track)->startAutoRecord(MusECore::AC_PAN, panVal); } @@ -598,7 +589,8 @@ void AudioStrip::panPressed() void AudioStrip::panReleased() { - if(track->automationType() != AUTO_WRITE) + AutomationType at = track->automationType(); + if (at == AUTO_OFF || at == AUTO_READ || at == AUTO_TOUCH) track->enablePanController(true); ((MusECore::AudioTrack*)track)->stopAutoRecord(MusECore::AC_PAN, panVal); } @@ -617,8 +609,9 @@ void AudioStrip::panRightClicked(const QPoint &p) void AudioStrip::panLabelChanged(double val) { - AutomationType at = ((MusECore::AudioTrack*)track)->automationType(); - if(at == AUTO_WRITE || (MusEGlobal::audio->isPlaying() && at == AUTO_TOUCH)) + AutomationType at = ((MusECore::AudioTrack*)track)->automationType(); + if ( (at == AUTO_WRITE) || + (at == AUTO_TOUCH && MusEGlobal::audio->isPlaying()) ) track->enablePanController(false); panVal = val; @@ -626,8 +619,6 @@ void AudioStrip::panLabelChanged(double val) //MusEGlobal::audio->msgSetPan((MusECore::AudioTrack*)track, val); // p4.0.21 MusEGlobal::audio->msgXXX waits. Do we really need to? ((MusECore::AudioTrack*)track)->setPan(val); - MusEGlobal::song->controllerChange(track); - ((MusECore::AudioTrack*)track)->startAutoRecord(MusECore::AC_PAN, val); } @@ -727,11 +718,10 @@ MusEGui::Knob* AudioStrip::addKnob(int type, int id, MusEGui::DoubleLabel** dlab _curGridRow += 2; connect(knob, SIGNAL(valueChanged(double,int)), pl, SLOT(setValue(double))); - //connect(pl, SIGNAL(valueChanged(double, int)), SLOT(panChanged(double))); if (type == 0) { connect(pl, SIGNAL(valueChanged(double, int)), SLOT(panLabelChanged(double))); - connect(knob, SIGNAL(sliderMoved(double,int)), SLOT(panChanged(double))); + connect(knob, SIGNAL(sliderMoved(double,int,bool)), SLOT(panChanged(double,int,bool))); connect(knob, SIGNAL(sliderPressed(int)), SLOT(panPressed())); connect(knob, SIGNAL(sliderReleased(int)), SLOT(panReleased())); connect(knob, SIGNAL(sliderRightClicked(const QPoint &, int)), SLOT(panRightClicked(const QPoint &))); @@ -894,9 +884,8 @@ AudioStrip::AudioStrip(QWidget* parent, MusECore::AudioTrack* at) sl->setValue(MusECore::fast_log10(t->volume()) * 20.0); connect(sl, SIGNAL(valueChanged(double,int)), SLOT(volLabelChanged(double))); - //connect(sl, SIGNAL(valueChanged(double,int)), SLOT(volumeChanged(double))); connect(slider, SIGNAL(valueChanged(double,int)), sl, SLOT(setValue(double))); - connect(slider, SIGNAL(sliderMoved(double,int)), SLOT(volumeChanged(double))); + connect(slider, SIGNAL(sliderMoved(double,int,bool)), SLOT(volumeChanged(double,int,bool))); connect(slider, SIGNAL(sliderPressed(int)), SLOT(volumePressed())); connect(slider, SIGNAL(sliderReleased(int)), SLOT(volumeReleased())); connect(slider, SIGNAL(sliderRightClicked(const QPoint &, int)), SLOT(volumeRightClicked(const QPoint &))); diff --git a/muse2/muse/mixer/astrip.h b/muse2/muse/mixer/astrip.h index f5406652..c0df5360 100644 --- a/muse2/muse/mixer/astrip.h +++ b/muse2/muse/mixer/astrip.h @@ -94,10 +94,10 @@ class AudioStrip : public Strip { void iRoutePressed(); void oRoutePressed(); void auxChanged(double, int); - void volumeChanged(double); + void volumeChanged(double,int,bool); void volumePressed(); void volumeReleased(); - void panChanged(double); + void panChanged(double,int,bool); void panPressed(); void panReleased(); void volLabelChanged(double); diff --git a/muse2/muse/mixer/panknob.cpp b/muse2/muse/mixer/panknob.cpp index dc2564a7..c54a112f 100644 --- a/muse2/muse/mixer/panknob.cpp +++ b/muse2/muse/mixer/panknob.cpp @@ -48,7 +48,6 @@ void PanKnob::valueChanged(double val) //audio->msgSetPan(src, val); // p4.0.21 audio->msgXXX waits. Do we really need to? src->setPan(val); - MusEGlobal::song->controllerChange(src); } } // namespace MusEGui -- cgit v1.2.3