author | simon <simon> | 2002-12-11 14:25:49 (UTC) |
---|---|---|
committer | simon <simon> | 2002-12-11 14:25:49 (UTC) |
commit | 7a17954c26add31f28b69989f54e0f28a17c8949 (patch) (side-by-side diff) | |
tree | 8603026771be07c996f49a29375fda64c8cd0e67 /noncore/multimedia/opieplayer2/mediaplayer.cpp | |
parent | 16138f0cdf46994d20ade71b5621b82fb9386933 (diff) | |
download | opie-7a17954c26add31f28b69989f54e0f28a17c8949.zip opie-7a17954c26add31f28b69989f54e0f28a17c8949.tar.gz opie-7a17954c26add31f28b69989f54e0f28a17c8949.tar.bz2 |
- roll back the threaded xine initialization, the mediaplayer initialization
state and the PlayButton change set
- instead load the audio-/video widget and the xine control on-demand. much
faster and much simpler for startup
Diffstat (limited to 'noncore/multimedia/opieplayer2/mediaplayer.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/multimedia/opieplayer2/mediaplayer.cpp | 120 |
1 files changed, 69 insertions, 51 deletions
diff --git a/noncore/multimedia/opieplayer2/mediaplayer.cpp b/noncore/multimedia/opieplayer2/mediaplayer.cpp index c230d6f..bbc60dd 100644 --- a/noncore/multimedia/opieplayer2/mediaplayer.cpp +++ b/noncore/multimedia/opieplayer2/mediaplayer.cpp @@ -33,6 +33,5 @@ MediaPlayer::MediaPlayer( PlayListWidget &_playList, MediaPlayerState &_mediaPla - audioUI = 0; - videoUI = 0; - xineControl = 0; - recreateAudioAndVideoWidgets(); + m_audioUI = 0; + m_videoUI = 0; + m_xineControl = 0; @@ -62,5 +61,5 @@ MediaPlayer::MediaPlayer( PlayListWidget &_playList, MediaPlayerState &_mediaPla MediaPlayer::~MediaPlayer() { - delete xineControl; - delete audioUI; - delete videoUI; + delete m_xineControl; + delete m_audioUI; + delete m_videoUI; delete volControl; @@ -105,3 +104,3 @@ void MediaPlayer::setPlaying( bool play ) { fileName = playListEntry.name; - xineControl->play( playListEntry.file ); + xineControl()->play( playListEntry.file ); @@ -112,15 +111,15 @@ void MediaPlayer::setPlaying( bool play ) { fileName = QFileInfo( fileName ).baseName(); - if ( xineControl->getMetaInfo().isEmpty() ) { + if ( xineControl()->getMetaInfo().isEmpty() ) { tickerText = tr( " File: " ) + fileName; } else { - tickerText = xineControl->getMetaInfo(); + tickerText = xineControl()->getMetaInfo(); } } else { - if ( xineControl->getMetaInfo().isEmpty() ) { + if ( xineControl()->getMetaInfo().isEmpty() ) { tickerText = tr( " File: " ) + fileName + tr( ", Length: " ) + time + " "; } else { - tickerText = xineControl->getMetaInfo() + " Length: " + time + " "; + tickerText = xineControl()->getMetaInfo() + " Length: " + time + " "; } } - audioUI->setTickerText( tickerText ); + audioUI()->setTickerText( tickerText ); } @@ -191,10 +190,10 @@ void MediaPlayer::stopChangingVolume() { int h=0; - if( !xineControl->hasVideo() ) { - w = audioUI->width(); - h = audioUI->height(); - audioUI->repaint( ( w - 200 ) / 2, h - yoff, 200 + 9, 70, FALSE ); + if( !xineControl()->hasVideo() ) { + w = audioUI()->width(); + h = audioUI()->height(); + audioUI()->repaint( ( w - 200 ) / 2, h - yoff, 200 + 9, 70, FALSE ); } else { - w = videoUI->width(); - h = videoUI->height(); - videoUI->repaint( ( w - 200 ) / 2, h - yoff, 200 + 9, 70, FALSE ); + w = videoUI()->width(); + h = videoUI()->height(); + videoUI()->repaint( ( w - 200 ) / 2, h - yoff, 200 + 9, 70, FALSE ); } @@ -222,5 +221,5 @@ void MediaPlayer::timerEvent( QTimerEvent * ) { int w=0; int h=0; - if( !xineControl->hasVideo() ) { - w = audioUI->width(); - h = audioUI->height(); + if( !xineControl()->hasVideo() ) { + w = audioUI()->width(); + h = audioUI()->height(); @@ -228,3 +227,3 @@ void MediaPlayer::timerEvent( QTimerEvent * ) { if ( onScreenDisplayVolume > v ) { - audioUI->repaint( ( w - 200 ) / 2 + v * 20 + 0, h - yoff + 40, ( onScreenDisplayVolume - v ) * 20 + 9, 30, FALSE ); + audioUI()->repaint( ( w - 200 ) / 2 + v * 20 + 0, h - yoff + 40, ( onScreenDisplayVolume - v ) * 20 + 9, 30, FALSE ); } @@ -233,3 +232,3 @@ void MediaPlayer::timerEvent( QTimerEvent * ) { onScreenDisplayVolume = v; - QPainter p( audioUI ); + QPainter p( audioUI() ); p.setPen( QColor( 0x10, 0xD0, 0x10 ) ); @@ -251,4 +250,4 @@ void MediaPlayer::timerEvent( QTimerEvent * ) { } else { - w = videoUI->width(); - h = videoUI->height(); + w = videoUI()->width(); + h = videoUI()->height(); @@ -256,3 +255,3 @@ void MediaPlayer::timerEvent( QTimerEvent * ) { if ( onScreenDisplayVolume > v ) { - videoUI->repaint( (w - 200) / 2 + v * 20 + 0, h - yoff + 40, ( onScreenDisplayVolume - v ) * 20 + 9, 30, FALSE ); + videoUI()->repaint( (w - 200) / 2 + v * 20 + 0, h - yoff + 40, ( onScreenDisplayVolume - v ) * 20 + 9, 30, FALSE ); } @@ -261,3 +260,3 @@ void MediaPlayer::timerEvent( QTimerEvent * ) { onScreenDisplayVolume = v; - QPainter p( videoUI ); + QPainter p( videoUI() ); p.setPen( QColor( 0x10, 0xD0, 0x10 ) ); @@ -348,23 +347,42 @@ void MediaPlayer::cleanUp() {// this happens on closing -void MediaPlayer::recreateAudioAndVideoWidgets() +void MediaPlayer::recreateAudioAndVideoWidgets() const { - delete xineControl; - delete audioUI; - delete videoUI; - audioUI = new AudioWidget( playList, mediaPlayerState, 0, "audioUI" ); - videoUI = new VideoWidget( playList, mediaPlayerState, 0, "videoUI" ); - - connect( audioUI, SIGNAL( moreClicked() ), this, SLOT( startIncreasingVolume() ) ); - connect( audioUI, SIGNAL( lessClicked() ), this, SLOT( startDecreasingVolume() ) ); - connect( audioUI, SIGNAL( moreReleased() ), this, SLOT( stopChangingVolume() ) ); - connect( audioUI, SIGNAL( lessReleased() ), this, SLOT( stopChangingVolume() ) ); - - connect( videoUI, SIGNAL( moreClicked() ), this, SLOT( startIncreasingVolume() ) ); - connect( videoUI, SIGNAL( lessClicked() ), this, SLOT( startDecreasingVolume() ) ); - connect( videoUI, SIGNAL( moreReleased() ), this, SLOT( stopChangingVolume() ) ); - connect( videoUI, SIGNAL( lessReleased() ), this, SLOT( stopChangingVolume() ) ); - - xineControl = new XineControl( videoUI->vidWidget(), mediaPlayerState ); - connect( xineControl, SIGNAL( initialized() ), - &mediaPlayerState, SLOT( setBackendInitialized() ) ); + delete m_xineControl; + delete m_audioUI; + delete m_videoUI; + m_audioUI = new AudioWidget( playList, mediaPlayerState, 0, "audioUI" ); + m_videoUI = new VideoWidget( playList, mediaPlayerState, 0, "videoUI" ); + + connect( m_audioUI, SIGNAL( moreClicked() ), this, SLOT( startIncreasingVolume() ) ); + connect( m_audioUI, SIGNAL( lessClicked() ), this, SLOT( startDecreasingVolume() ) ); + connect( m_audioUI, SIGNAL( moreReleased() ), this, SLOT( stopChangingVolume() ) ); + connect( m_audioUI, SIGNAL( lessReleased() ), this, SLOT( stopChangingVolume() ) ); + + connect( m_videoUI, SIGNAL( moreClicked() ), this, SLOT( startIncreasingVolume() ) ); + connect( m_videoUI, SIGNAL( lessClicked() ), this, SLOT( startDecreasingVolume() ) ); + connect( m_videoUI, SIGNAL( moreReleased() ), this, SLOT( stopChangingVolume() ) ); + connect( m_videoUI, SIGNAL( lessReleased() ), this, SLOT( stopChangingVolume() ) ); + + m_xineControl = new XineControl( m_videoUI->vidWidget(), mediaPlayerState ); +} + +AudioWidget *MediaPlayer::audioUI() const +{ + if ( !m_audioUI ) + recreateAudioAndVideoWidgets(); + return m_audioUI; +} + +VideoWidget *MediaPlayer::videoUI() const +{ + if ( !m_videoUI ) + recreateAudioAndVideoWidgets(); + return m_videoUI; +} + +XineControl *MediaPlayer::xineControl() const +{ + if ( !m_xineControl ) + recreateAudioAndVideoWidgets(); + return m_xineControl; } @@ -373,4 +391,4 @@ void MediaPlayer::reloadSkins() { - audioUI->loadSkin(); - videoUI->loadSkin(); + audioUI()->loadSkin(); + videoUI()->loadSkin(); } |