[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: branches/work/kdelibs-phonon/phonon/ui (silent)
From: Matthias Kretz <kretz () kde ! org>
Date: 2006-02-15 19:29:25
Message-ID: 1140031765.297805.29533.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 509884 by mkretz:
SVN_SILENT: change private class to be able to derive from it like Qt4 does
M +20 -16 seekslider.cpp
M +5 -3 seekslider.h
A seekslider_p.h [License: LGPL (v2)]
--- branches/work/kdelibs-phonon/phonon/ui/seekslider.cpp #509883:509884
@@ -18,6 +18,7 @@
*/
#include "seekslider.h"
+#include "seekslider_p.h"
#include "../abstractmediaproducer.h"
#include <QSlider>
#include <QHBoxLayout>
@@ -27,25 +28,22 @@
namespace Ui
{
-class SeekSlider::Private
+SeekSlider::SeekSlider( QWidget* parent )
+ : QWidget( parent )
+ , d_ptr( new SeekSliderPrivate )
{
- public:
- Private()
- : slider( 0 )
- , media( 0 )
- , ticking( false )
- {
- }
+ Q_D( SeekSlider );
+ QHBoxLayout* layout = new QHBoxLayout( this );
+ d->slider = new QSlider( Qt::Horizontal, this );
+ d->slider->setEnabled( false );
+ layout->addWidget( d->slider );
+}
- QSlider* slider;
- AbstractMediaProducer* media;
- bool ticking;
-};
-
-SeekSlider::SeekSlider( QWidget* parent )
+SeekSlider::SeekSlider( SeekSliderPrivate& _d, QWidget* parent )
: QWidget( parent )
- , d( new Private )
+ , d_ptr( &_d )
{
+ Q_D( SeekSlider );
QHBoxLayout* layout = new QHBoxLayout( this );
d->slider = new QSlider( Qt::Horizontal, this );
d->slider->setEnabled( false );
@@ -54,7 +52,7 @@
SeekSlider::~SeekSlider()
{
- delete d;
+ delete d_ptr;
}
void SeekSlider::setMediaProducer( AbstractMediaProducer* media )
@@ -62,6 +60,7 @@
if( !media )
return;
+ Q_D( SeekSlider );
d->media = media;
connect( media, SIGNAL( stateChanged( Phonon::State, Phonon::State ) ),
SLOT( stateChanged( Phonon::State ) ) );
@@ -73,12 +72,14 @@
void SeekSlider::seek( int msec )
{
+ Q_D( SeekSlider );
if( ! d->ticking && d->media )
d->media->seek( msec );
}
void SeekSlider::tick( long msec )
{
+ Q_D( SeekSlider );
d->ticking = true;
d->slider->setValue( msec );
d->ticking = false;
@@ -86,11 +87,13 @@
void SeekSlider::length( long msec )
{
+ Q_D( SeekSlider );
d->slider->setRange( 0, msec );
}
void SeekSlider::stateChanged( State newstate )
{
+ Q_D( SeekSlider );
switch( newstate )
{
case Phonon::BufferingState:
@@ -108,6 +111,7 @@
void SeekSlider::mediaDestroyed()
{
+ Q_D( SeekSlider );
d->media = 0;
d->slider->setEnabled( false );
}
--- branches/work/kdelibs-phonon/phonon/ui/seekslider.h #509883:509884
@@ -30,6 +30,7 @@
namespace Ui
{
+class SeekSliderPrivate;
/**
* \short Widget providing a slider for seeking in AbstractMediaProducer objects.
@@ -40,6 +41,7 @@
class PHONON_EXPORT SeekSlider : public QWidget
{
Q_OBJECT
+ Q_DECLARE_PRIVATE( SeekSlider )
public:
SeekSlider( QWidget* parent = 0 );
~SeekSlider();
@@ -54,9 +56,9 @@
void tick( long );
void length( long );
- private:
- class Private;
- Private* d;
+ protected:
+ SeekSlider( SeekSliderPrivate& d, QWidget* parent );
+ SeekSliderPrivate* d_ptr;
};
}} // namespace Phonon::Ui
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic