diff options
-rw-r--r-- | src/app/stateChange.cpp | 2 | ||||
-rw-r--r-- | src/app/volumeAction.cpp | 30 | ||||
-rw-r--r-- | src/app/volumeAction.h | 5 |
3 files changed, 20 insertions, 17 deletions
diff --git a/src/app/stateChange.cpp b/src/app/stateChange.cpp index 9322a13..49adc55 100644 --- a/src/app/stateChange.cpp +++ b/src/app/stateChange.cpp @@ -63,7 +63,7 @@ MainWindow::engineStateChanged( Engine::State state ) toggleAction( "play" )->setChecked( state == Playing ); //FIXME bad design to do this way - m_volumeAction->sliderMoved( engine()->volume() ); + m_volumeAction->setVolume(engine()->volume()); } diff --git a/src/app/volumeAction.cpp b/src/app/volumeAction.cpp index ad585ef..b628ba1 100644 --- a/src/app/volumeAction.cpp +++ b/src/app/volumeAction.cpp @@ -54,9 +54,8 @@ VolumeAction::VolumeAction( TDEToolBar *bar, TDEActionCollection *ac ) m_widget = new VolumeSlider( bar->topLevelWidget() ); connect( this, TQ_SIGNAL(toggled( bool )), TQ_SLOT(toggled( bool )) ); - connect( m_widget->slider, TQ_SIGNAL(sliderMoved( int )), TQ_SLOT(sliderMoved( int )) ); - connect( m_widget->slider, TQ_SIGNAL(sliderMoved( int )), Codeine::engine(), TQ_SLOT(setStreamParameter( int )) ); - connect( m_widget->slider, TQ_SIGNAL(sliderReleased()), TQ_SLOT(sliderReleased()) ); + connect(m_widget->slider, TQ_SIGNAL(valueChanged(int)), Codeine::engine(), TQ_SLOT(setStreamParameter(int))); + connect(m_widget->slider, TQ_SIGNAL(valueChanged(int)), TQ_SLOT(sliderMoved(int))); } int @@ -75,25 +74,28 @@ VolumeAction::plug( TQWidget *bar, int index ) void VolumeAction::toggled( bool const b ) { - DEBUG_BLOCK - - TQString t = TQString::number(100 - m_widget->slider->value()) + "%"; - setToolTip( i18n( "Volume: %1" ).arg( t ) ); - m_widget->label->setText( t ); - m_widget->raise(); m_widget->setShown( b ); } void -VolumeAction::sliderMoved( int v ) +VolumeAction::sliderMoved(int v) { - v = 100 - v; //TQt sliders are wrong way round when vertical + // TQt sliders are wrong way round when vertical + v = 100 - v; - TQString t = TQString::number( v ) + '%'; + auto vol = TQString("%1%").arg(v); + m_widget->label->setText(vol); + setToolTip(i18n("Volume %1").arg(vol)); +} + +void +VolumeAction::setVolume(int volume) +{ + TQString vol = TQString("%1%").arg(volume); - setToolTip( i18n( "Volume: %1" ).arg( t ) ); - m_widget->label->setText( t ); + // TQt sliders are the wrong way round when vertical. + m_widget->slider->setValue(100 - volume); } bool diff --git a/src/app/volumeAction.h b/src/app/volumeAction.h index 67cfad0..2645355 100644 --- a/src/app/volumeAction.h +++ b/src/app/volumeAction.h @@ -18,11 +18,12 @@ class VolumeAction : public TDEToggleAction virtual int plug( TQWidget*, int ); public slots: - void sliderMoved( int ); + // Update Slider and Label to \a volume + void setVolume(int volume); private slots: void toggled( bool ); - void sliderReleased() { setChecked( false ); toggled( false ); } + void sliderMoved(int); public: VolumeAction( TDEToolBar *anchor, TDEActionCollection *ac ); |