SampleTrack: fixed non-functional solo and mute buttons

The SampleTrackView did not explicitely have a SampleTrack model
attached and thus trackView::modelChanged() was not called. This way
SampleTrackView's mute and solo buttons were not connected to the
according models of the SampleTrack model. Fix this by calling
setModel() in SampleTrackView::SampleTrackView() (as done in
constructors of other track types too) and overload the
SampleTrackView::modelChanged() method.

Closes #3043836.
This commit is contained in:
Tobias Doerffel
2010-08-14 00:18:26 +02:00
parent 114c1973e2
commit 311bc92bde
2 changed files with 21 additions and 3 deletions

View File

@@ -2,7 +2,7 @@
* sample_track.h - class sampleTrack, a track which provides arrangement of
* samples
*
* Copyright (c) 2005-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
* Copyright (c) 2005-2010 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
@@ -167,6 +167,14 @@ public slots:
void showEffects();
protected:
void modelChanged();
virtual QString nodeName() const
{
return "SampleTrackView";
}
private:
EffectRackView * m_effectRack;
QWidget * m_effWindow;

View File

@@ -2,7 +2,7 @@
* sample_track.cpp - implementation of class sampleTrack, a track which
* provides arrangement of samples
*
* Copyright (c) 2005-2009 Tobias Doerffel <tobydox/at/users.sourceforge.net>
* Copyright (c) 2005-2010 Tobias Doerffel <tobydox/at/users.sourceforge.net>
*
* This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net
*
@@ -531,6 +531,8 @@ sampleTrackView::sampleTrackView( sampleTrack * _t, trackContainerView * _tcv )
m_effWindow->layout()->setSizeConstraint( QLayout::SetFixedSize );
m_effWindow->setWindowTitle( _t->name() );
m_effWindow->hide();
setModel( _t );
}
@@ -559,7 +561,15 @@ void sampleTrackView::showEffects()
void sampleTrackView::modelChanged()
{
sampleTrack * st = castModel<sampleTrack>();
m_volumeKnob->setModel( &st->m_volumeModel );
trackView::modelChanged();
}
#include "moc_sample_track.cxx"