unify method to set a base note
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@147 0778d3d1-df1d-0410-868b-ea421aaaa00d
This commit is contained in:
@@ -121,10 +121,8 @@ public:
|
||||
volume getVolume( void ) const;
|
||||
void FASTCALL setSurroundAreaPos( const QPoint & _p );
|
||||
const QPoint & surroundAreaPos( void ) const;
|
||||
|
||||
// base-tone stuff
|
||||
void FASTCALL setBaseTone( tones _new_tone );
|
||||
void FASTCALL setBaseOctave( octaves _new_octave );
|
||||
|
||||
void FASTCALL setBaseNote( Uint32 _new_note );
|
||||
|
||||
inline tones baseTone( void ) const
|
||||
{
|
||||
@@ -176,6 +174,10 @@ public slots:
|
||||
void toggledInstrumentTrackButton( bool _on );
|
||||
|
||||
|
||||
signals:
|
||||
void baseNoteChanged( void );
|
||||
|
||||
|
||||
protected:
|
||||
// capture close-events for toggling instrument-track-button
|
||||
virtual void closeEvent( QCloseEvent * _ce );
|
||||
@@ -258,6 +260,10 @@ private:
|
||||
friend class presetPreviewPlayHandle;
|
||||
friend class flpImport;
|
||||
|
||||
// base-tone stuff
|
||||
void FASTCALL setBaseTone( tones _new_tone );
|
||||
void FASTCALL setBaseOctave( octaves _new_octave );
|
||||
|
||||
|
||||
signals:
|
||||
void noteDone( const note & _n );
|
||||
|
||||
@@ -475,10 +475,7 @@ bool flpImport::tryImport( trackContainer * _tc )
|
||||
|
||||
case FLP_MiddleNote:
|
||||
data += 8;
|
||||
it->setBaseTone( static_cast<tones>( data %
|
||||
NOTES_PER_OCTAVE ) );
|
||||
it->setBaseOctave( static_cast<octaves>( data /
|
||||
NOTES_PER_OCTAVE ) );
|
||||
it->setBaseNote( data );
|
||||
it->m_pianoWidget->update();
|
||||
break;
|
||||
|
||||
|
||||
@@ -221,7 +221,7 @@ void pianoWidget::mousePressEvent( QMouseEvent * _me )
|
||||
if( _me->button() == Qt::LeftButton )
|
||||
{
|
||||
// get pressed key
|
||||
int key_num = getKeyFromMouse( _me->pos() );
|
||||
Uint32 key_num = getKeyFromMouse( _me->pos() );
|
||||
if( _me->pos().y() > PIANO_BASE )
|
||||
{
|
||||
int y_diff = _me->pos().y() - PIANO_BASE;
|
||||
@@ -250,10 +250,7 @@ void pianoWidget::mousePressEvent( QMouseEvent * _me )
|
||||
}
|
||||
else
|
||||
{
|
||||
m_instrumentTrack->setBaseTone( static_cast<tones>(
|
||||
key_num % NOTES_PER_OCTAVE ) );
|
||||
m_instrumentTrack->setBaseOctave( static_cast<octaves>(
|
||||
key_num / NOTES_PER_OCTAVE ) );
|
||||
m_instrumentTrack->setBaseNote( key_num );
|
||||
}
|
||||
|
||||
// and let the user see that he pressed a key... :)
|
||||
@@ -328,10 +325,7 @@ void pianoWidget::mouseMoveEvent( QMouseEvent * _me )
|
||||
}
|
||||
else
|
||||
{
|
||||
m_instrumentTrack->setBaseTone( (tones)
|
||||
( key_num % NOTES_PER_OCTAVE ) );
|
||||
m_instrumentTrack->setBaseOctave( (octaves)
|
||||
( key_num / NOTES_PER_OCTAVE ) );
|
||||
m_instrumentTrack->setBaseNote( key_num );
|
||||
}
|
||||
}
|
||||
// and let the user see that he pressed a key... :)
|
||||
|
||||
@@ -821,13 +821,23 @@ const QPoint & instrumentTrack::surroundAreaPos( void ) const
|
||||
|
||||
|
||||
|
||||
void instrumentTrack::setBaseNote( Uint32 _new_note )
|
||||
{
|
||||
setBaseTone( (tones)( _new_note % NOTES_PER_OCTAVE ) );
|
||||
setBaseOctave( (octaves)( _new_note / NOTES_PER_OCTAVE ) );
|
||||
eng()->getSongEditor()->setModified();
|
||||
emit baseNoteChanged();
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
void instrumentTrack::setBaseTone( tones _new_tone )
|
||||
{
|
||||
if( _new_tone >= C && _new_tone <= H )
|
||||
{
|
||||
m_baseTone = _new_tone;
|
||||
}
|
||||
eng()->getSongEditor()->setModified();
|
||||
}
|
||||
|
||||
|
||||
@@ -839,7 +849,6 @@ void instrumentTrack::setBaseOctave( octaves _new_octave )
|
||||
{
|
||||
m_baseOctave = _new_octave;
|
||||
}
|
||||
eng()->getSongEditor()->setModified();
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user