diff --git a/ChangeLog b/ChangeLog index c765718d5..4dbd10ba2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2008-06-30 Tobias Doerffel + * include/song_editor.h: + * src/gui/song_editor.cpp: + made icon on play-button change according to current mode + * include/main_window.h: * src/gui/bb_editor.cpp: * src/gui/fx_mixer_view.cpp: diff --git a/include/song_editor.h b/include/song_editor.h index ef981c31c..ae78331f4 100644 --- a/include/song_editor.h +++ b/include/song_editor.h @@ -61,6 +61,9 @@ private slots: void setHighQuality( bool ); void scrolled( int _new_pos ); + void play( void ); + void stop( void ); + void masterVolumeChanged( int _new_val ); void masterVolumePressed( void ); void masterVolumeMoved( int _new_val ); diff --git a/src/gui/song_editor.cpp b/src/gui/song_editor.cpp index 74d25a73c..ed184ffc5 100644 --- a/src/gui/song_editor.cpp +++ b/src/gui/song_editor.cpp @@ -218,11 +218,11 @@ songEditor::songEditor( song * _song, songEditor * & _engine_ptr ) : // fill own tool-bar m_playButton = new toolButton( embed::getIconPixmap( "play", 24, 24 ), tr( "Play song (Space)" ), - m_s, SLOT( play() ), m_toolBar ); + this, SLOT( play() ), m_toolBar ); m_stopButton = new toolButton( embed::getIconPixmap( "stop", 24, 24 ), tr( "Stop song (Space)" ), - m_s, SLOT( stop() ), m_toolBar ); + this, SLOT( stop() ), m_toolBar ); m_addBBTrackButton = new toolButton( embed::getIconPixmap( "add_bb_track" ), @@ -368,6 +368,31 @@ void songEditor::scrolled( int _new_pos ) +void songEditor::play( void ) +{ + m_s->play(); + if( m_s->playMode() == song::Mode_PlaySong ) + { + m_playButton->setIcon( embed::getIconPixmap( "pause" ) ); + } + else + { + m_playButton->setIcon( embed::getIconPixmap( "play" ) ); + } +} + + + + +void songEditor::stop( void ) +{ + m_s->stop(); + m_playButton->setIcon( embed::getIconPixmap( "play" ) ); +} + + + + void songEditor::keyPressEvent( QKeyEvent * _ke ) { if( /*_ke->modifiers() & Qt::ShiftModifier*/ @@ -402,11 +427,11 @@ void songEditor::keyPressEvent( QKeyEvent * _ke ) { if( m_s->isPlaying() ) { - m_s->stop(); + stop(); } else { - m_s->play(); + play(); } } else if( _ke->key() == Qt::Key_Home )