From kde-commits Wed May 18 02:39:03 2011 From: Scott Wheeler Date: Wed, 18 May 2011 02:39:03 +0000 To: kde-commits Subject: KDE/kdemultimedia/juk Message-Id: <20110518023903.CB28DAC76D () svn ! kde ! org> X-MARC-Message: https://marc.info/?l=kde-commits&m=130568638601748 SVN commit 1232492 by wheeler: Use a child query rather than a member variable since multiple instances are created M +14 -9 slideraction.cpp M +1 -3 slideraction.h --- trunk/KDE/kdemultimedia/juk/slideraction.cpp #1232491:1232492 @@ -32,31 +32,36 @@ #include "juk.h" TrackPositionAction::TrackPositionAction(const QString &text, QObject *parent) : - KAction(text, parent), - m_slider(0) + KAction(text, parent) { } +Slider *TrackPositionAction::slider() const +{ + return parent()->findChild("timeSlider"); +} + QWidget *TrackPositionAction::createWidget(QWidget *parent) { - m_slider = new TimeSlider(parent); + Slider *slider = new TimeSlider(parent); + slider->setObjectName(QLatin1String("timeSlider")); PlayerManager *player = JuK::JuKInstance()->playerManager(); - connect(player, SIGNAL(tick(int)), m_slider, SLOT(setValue(int))); + connect(player, SIGNAL(tick(int)), slider, SLOT(setValue(int))); connect(player, SIGNAL(totalTimeChanged(int)), this, SLOT(totalTimeChanged(int))); - connect(m_slider, SIGNAL(sliderMoved(int)), player, SLOT(seek(int))); + connect(slider, SIGNAL(sliderMoved(int)), player, SLOT(seek(int))); - return m_slider; + return slider; } void TrackPositionAction::totalTimeChanged(int ms) { - m_slider->setRange(0, ms); + slider()->setRange(0, ms); bool seekable = JuK::JuKInstance()->playerManager()->seekable(); - m_slider->setEnabled(seekable); - m_slider->setToolTip(seekable ? + slider()->setEnabled(seekable); + slider()->setToolTip(seekable ? QString() : i18n("Seeking is not supported in this file with your audio settings.")); } --- trunk/KDE/kdemultimedia/juk/slideraction.h #1232491:1232492 @@ -28,13 +28,11 @@ Q_OBJECT public: TrackPositionAction(const QString &text, QObject *parent); - Slider *slider() const { return m_slider; } + Slider *slider() const; protected: virtual QWidget *createWidget(QWidget *parent); private slots: void totalTimeChanged(int ms); -private: - Slider *m_slider; }; class VolumeAction : public KAction