author | llornkcor <llornkcor> | 2002-08-13 23:42:50 (UTC) |
---|---|---|
committer | llornkcor <llornkcor> | 2002-08-13 23:42:50 (UTC) |
commit | 6baf582094b418ec1defa2415210a7d7583628ff (patch) (unidiff) | |
tree | e7ee4a196eeb23a1b9276ab09f01aaf39ced83e3 /noncore | |
parent | 8abcf5a17d4ec31ad01557b69b8b0e7d97dc0c8f (diff) | |
download | opie-6baf582094b418ec1defa2415210a7d7583628ff.zip opie-6baf582094b418ec1defa2415210a7d7583628ff.tar.gz opie-6baf582094b418ec1defa2415210a7d7583628ff.tar.bz2 |
fix video button actions.. still needs work
-rw-r--r-- | noncore/multimedia/opieplayer2/mediaplayer.cpp | 21 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/mediaplayerstate.cpp | 19 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/playlistwidget.cpp | 4 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/playlistwidget.h | 1 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/videowidget.cpp | 99 | ||||
-rw-r--r-- | noncore/multimedia/opieplayer2/videowidget.h | 11 |
6 files changed, 105 insertions, 50 deletions
diff --git a/noncore/multimedia/opieplayer2/mediaplayer.cpp b/noncore/multimedia/opieplayer2/mediaplayer.cpp index 8d8e4e5..a3238f0 100644 --- a/noncore/multimedia/opieplayer2/mediaplayer.cpp +++ b/noncore/multimedia/opieplayer2/mediaplayer.cpp | |||
@@ -32,5 +32,7 @@ MediaPlayer::MediaPlayer( QObject *parent, const char *name ) | |||
32 | 32 | ||
33 | connect( mediaPlayerState, SIGNAL( playingToggled( bool ) ), this, SLOT( setPlaying( bool ) ) ); | 33 | connect( mediaPlayerState, SIGNAL( playingToggled( bool ) ), this, SLOT( setPlaying( bool ) ) ); |
34 | |||
34 | connect( mediaPlayerState, SIGNAL( pausedToggled( bool ) ), this, SLOT( pauseCheck( bool ) ) ); | 35 | connect( mediaPlayerState, SIGNAL( pausedToggled( bool ) ), this, SLOT( pauseCheck( bool ) ) ); |
36 | |||
35 | connect( mediaPlayerState, SIGNAL( next() ), this, SLOT( next() ) ); | 37 | connect( mediaPlayerState, SIGNAL( next() ), this, SLOT( next() ) ); |
36 | connect( mediaPlayerState, SIGNAL( prev() ), this, SLOT( prev() ) ); | 38 | connect( mediaPlayerState, SIGNAL( prev() ), this, SLOT( prev() ) ); |
@@ -51,13 +53,12 @@ MediaPlayer::~MediaPlayer() { | |||
51 | 53 | ||
52 | void MediaPlayer::pauseCheck( bool b ) { | 54 | void MediaPlayer::pauseCheck( bool b ) { |
53 | // Only pause if playing | 55 | if ( b && !mediaPlayerState->playing() ) { |
54 | if ( b && !mediaPlayerState->playing() ) { | 56 | mediaPlayerState->setPaused( FALSE ); |
55 | mediaPlayerState->setPaused( FALSE ); | 57 | } |
56 | } | ||
57 | } | 58 | } |
58 | 59 | ||
59 | void MediaPlayer::play() { | 60 | void MediaPlayer::play() { |
60 | mediaPlayerState->setPlaying( FALSE ); | 61 | mediaPlayerState->setPlaying( FALSE ); |
61 | mediaPlayerState->setPlaying( TRUE ); | 62 | mediaPlayerState->setPlaying( TRUE ); |
62 | } | 63 | } |
63 | 64 | ||
@@ -68,8 +69,8 @@ void MediaPlayer::setPlaying( bool play ) { | |||
68 | } | 69 | } |
69 | 70 | ||
70 | if ( mediaPlayerState->paused() ) { | 71 | if ( mediaPlayerState->paused() ) { |
71 | mediaPlayerState->setPaused( FALSE ); | 72 | mediaPlayerState->setPaused( FALSE ); |
72 | return; | 73 | return; |
73 | } | 74 | } |
74 | 75 | ||
75 | const DocLnk *playListCurrent = playList->current(); | 76 | const DocLnk *playListCurrent = playList->current(); |
diff --git a/noncore/multimedia/opieplayer2/mediaplayerstate.cpp b/noncore/multimedia/opieplayer2/mediaplayerstate.cpp index 57b1c81..bb8d905 100644 --- a/noncore/multimedia/opieplayer2/mediaplayerstate.cpp +++ b/noncore/multimedia/opieplayer2/mediaplayerstate.cpp | |||
@@ -54,6 +54,4 @@ void MediaPlayerState::writeConfig( Config& cfg ) const { | |||
54 | 54 | ||
55 | 55 | ||
56 | |||
57 | |||
58 | // public stuff | 56 | // public stuff |
59 | 57 | ||
@@ -160,12 +158,11 @@ void MediaPlayerState::setPlaylist( bool b ) { | |||
160 | 158 | ||
161 | void MediaPlayerState::setPaused( bool b ) { | 159 | void MediaPlayerState::setPaused( bool b ) { |
162 | if(b) qDebug("setPaused true"); | 160 | if ( isPaused == b ) { |
163 | else qDebug("setPaused false"); | 161 | isPaused = FALSE; |
164 | 162 | emit pausedToggled(FALSE); | |
165 | if ( isPaused == b ) { | 163 | return; |
166 | return; | 164 | } |
167 | } | 165 | isPaused = b; |
168 | isPaused = b; | 166 | emit pausedToggled(b); |
169 | emit pausedToggled(b); | ||
170 | } | 167 | } |
171 | 168 | ||
@@ -261,5 +258,5 @@ void MediaPlayerState::togglePlaylist() { | |||
261 | 258 | ||
262 | void MediaPlayerState::togglePaused() { | 259 | void MediaPlayerState::togglePaused() { |
263 | setPaused( !isPaused); | 260 | setPaused( !isPaused); |
264 | } | 261 | } |
265 | 262 | ||
diff --git a/noncore/multimedia/opieplayer2/playlistwidget.cpp b/noncore/multimedia/opieplayer2/playlistwidget.cpp index 65458e7..27db464 100644 --- a/noncore/multimedia/opieplayer2/playlistwidget.cpp +++ b/noncore/multimedia/opieplayer2/playlistwidget.cpp | |||
@@ -165,5 +165,5 @@ PlayListWidget::PlayListWidget( QWidget* parent, const char* name, WFlags fl ) | |||
165 | pmView->isCheckable(); | 165 | pmView->isCheckable(); |
166 | 166 | ||
167 | pmView->insertItem( Resource::loadPixmap("fullscreen") , tr( "Full Screen"), this, SLOT( toggleFull() ) ); | 167 | pmView->insertItem( Resource::loadPixmap("fullscreen") , tr( "Full Screen"), mediaPlayerState, SLOT( toggleFullscreen() ) ); |
168 | 168 | ||
169 | Config cfg( "OpiePlayer" ); | 169 | Config cfg( "OpiePlayer" ); |
@@ -172,5 +172,5 @@ PlayListWidget::PlayListWidget( QWidget* parent, const char* name, WFlags fl ) | |||
172 | pmView->setItemChecked( -16, b ); | 172 | pmView->setItemChecked( -16, b ); |
173 | 173 | ||
174 | pmView->insertItem( Resource::loadPixmap("opieplayer/scale") , tr( "Scale"), this, SLOT(toggleScaled() ) ); | 174 | pmView->insertItem( Resource::loadPixmap("opieplayer/scale") , tr( "Scale"), mediaPlayerState, SLOT(toggleScaled() ) ); |
175 | 175 | ||
176 | QVBox *vbox5 = new QVBox( this ); vbox5->setBackgroundMode( PaletteButton ); | 176 | QVBox *vbox5 = new QVBox( this ); vbox5->setBackgroundMode( PaletteButton ); |
diff --git a/noncore/multimedia/opieplayer2/playlistwidget.h b/noncore/multimedia/opieplayer2/playlistwidget.h index fdfa666..dd49892 100644 --- a/noncore/multimedia/opieplayer2/playlistwidget.h +++ b/noncore/multimedia/opieplayer2/playlistwidget.h | |||
@@ -63,5 +63,4 @@ private: | |||
63 | void readPls(const QString &); | 63 | void readPls(const QString &); |
64 | 64 | ||
65 | |||
66 | void initializeStates(); | 65 | void initializeStates(); |
67 | void readConfig( Config& cfg ); | 66 | void readConfig( Config& cfg ); |
diff --git a/noncore/multimedia/opieplayer2/videowidget.cpp b/noncore/multimedia/opieplayer2/videowidget.cpp index 9b88299..33153d4 100644 --- a/noncore/multimedia/opieplayer2/videowidget.cpp +++ b/noncore/multimedia/opieplayer2/videowidget.cpp | |||
@@ -64,10 +64,10 @@ struct MediaButton { | |||
64 | 64 | ||
65 | MediaButton videoButtons[] = { | 65 | MediaButton videoButtons[] = { |
66 | { FALSE, FALSE, FALSE }, // previous | ||
67 | { FALSE, FALSE, FALSE }, // stop | 66 | { FALSE, FALSE, FALSE }, // stop |
68 | { TRUE, FALSE, FALSE }, // play | 67 | { TRUE, FALSE, FALSE }, // play |
69 | { TRUE, FALSE, FALSE }, // pause | 68 | { FALSE, FALSE, FALSE }, // previous |
70 | { FALSE, FALSE, FALSE }, // next | 69 | { FALSE, FALSE, FALSE }, // next |
71 | { FALSE, FALSE, FALSE }, // playlist | 70 | { FALSE, FALSE, FALSE }, // volUp |
71 | { FALSE, FALSE, FALSE }, // volDown | ||
72 | { TRUE, FALSE, FALSE } // fullscreen | 72 | { TRUE, FALSE, FALSE } // fullscreen |
73 | }; | 73 | }; |
@@ -77,5 +77,5 @@ const char *skinV_mask_file_names[7] = { | |||
77 | }; | 77 | }; |
78 | 78 | ||
79 | static const int numButtons = (sizeof(videoButtons)/sizeof(MediaButton)); | 79 | static const int numVButtons = (sizeof(videoButtons)/sizeof(MediaButton)); |
80 | 80 | ||
81 | 81 | ||
@@ -138,4 +138,5 @@ QWidget( parent, name, f ), scaledWidth( 0 ), scaledHeight( 0 ) { | |||
138 | connect( mediaPlayerState, SIGNAL( positionUpdated(long) ),this, SLOT( setPosition(long) ) ); | 138 | connect( mediaPlayerState, SIGNAL( positionUpdated(long) ),this, SLOT( setPosition(long) ) ); |
139 | connect( mediaPlayerState, SIGNAL( viewChanged(char) ), this, SLOT( setView(char) ) ); | 139 | connect( mediaPlayerState, SIGNAL( viewChanged(char) ), this, SLOT( setView(char) ) ); |
140 | |||
140 | connect( mediaPlayerState, SIGNAL( pausedToggled(bool) ), this, SLOT( setPaused(bool) ) ); | 141 | connect( mediaPlayerState, SIGNAL( pausedToggled(bool) ), this, SLOT( setPaused(bool) ) ); |
141 | connect( mediaPlayerState, SIGNAL( playingToggled(bool) ), this, SLOT( setPlaying(bool) ) ); | 142 | connect( mediaPlayerState, SIGNAL( playingToggled(bool) ), this, SLOT( setPlaying(bool) ) ); |
@@ -153,4 +154,5 @@ QWidget( parent, name, f ), scaledWidth( 0 ), scaledHeight( 0 ) { | |||
153 | 154 | ||
154 | VideoWidget::~VideoWidget() { | 155 | VideoWidget::~VideoWidget() { |
156 | mediaPlayerState->setPlaying( FALSE ); | ||
155 | for ( int i = 0; i < 7; i++ ) { | 157 | for ( int i = 0; i < 7; i++ ) { |
156 | delete buttonPixUp[i]; | 158 | delete buttonPixUp[i]; |
@@ -165,4 +167,5 @@ VideoWidget::~VideoWidget() { | |||
165 | delete masks[i]; | 167 | delete masks[i]; |
166 | } | 168 | } |
169 | |||
167 | } | 170 | } |
168 | 171 | ||
@@ -291,5 +294,5 @@ void VideoWidget::paintButton( QPainter *p, int i ) { | |||
291 | 294 | ||
292 | void VideoWidget::mouseMoveEvent( QMouseEvent *event ) { | 295 | void VideoWidget::mouseMoveEvent( QMouseEvent *event ) { |
293 | for ( int i = 0; i < numButtons; i++ ) { | 296 | for ( int i = 0; i < numVButtons; i++ ) { |
294 | if ( event->state() == QMouseEvent::LeftButton ) { | 297 | if ( event->state() == QMouseEvent::LeftButton ) { |
295 | // The test to see if the mouse click is inside the button or not | 298 | // The test to see if the mouse click is inside the button or not |
@@ -298,26 +301,71 @@ void VideoWidget::mouseMoveEvent( QMouseEvent *event ) { | |||
298 | 301 | ||
299 | bool isOnButton = ( x > 0 && y > 0 && x < imgButtonMask->width() | 302 | bool isOnButton = ( x > 0 && y > 0 && x < imgButtonMask->width() |
300 | && y < imgButtonMask->height() && imgButtonMask->pixelIndex( x, y ) == i + 1 ); | 303 | && y < imgButtonMask->height() && imgButtonMask->pixelIndex( x, y ) == i + 1 ); |
301 | if ( isOnButton != videoButtons[i].isHeld ) { | 304 | if ( isOnButton != videoButtons[i].isHeld ) { |
302 | videoButtons[i].isHeld = isOnButton; | 305 | videoButtons[i].isHeld = isOnButton; |
303 | toggleButton(i); | 306 | toggleButton(i); |
304 | } | 307 | } |
308 | |||
309 | // qDebug("mouseMove event switch1 %d", i); | ||
310 | if( isOnButton) | ||
311 | switch (i) { | ||
312 | case VideoStop:{ | ||
313 | setToggleButton( i, FALSE ); | ||
314 | mediaPlayerState->setStop(TRUE); | ||
315 | mediaPlayerState->setPlaying(FALSE); | ||
316 | return; | ||
317 | } | ||
318 | case VideoPlay: { | ||
319 | |||
320 | if( mediaPlayerState->isPaused) { | ||
321 | setToggleButton( i, FALSE ); | ||
322 | mediaPlayerState->setPaused( FALSE); | ||
323 | return; | ||
324 | } | ||
325 | else if( mediaPlayerState->isPlaying) { | ||
326 | setToggleButton( i, TRUE ); | ||
327 | mediaPlayerState->setPaused( TRUE); | ||
328 | return; | ||
329 | } | ||
330 | else { | ||
331 | setToggleButton( i, FALSE ); | ||
332 | mediaPlayerState->setPlaying( videoButtons[i].isDown ); | ||
333 | return; | ||
334 | } | ||
335 | } | ||
336 | case VideoNext: qDebug("next"); mediaPlayerState->setNext(); return; | ||
337 | case VideoPrevious: qDebug("previous"); mediaPlayerState->setPrev(); return; | ||
338 | case VideoVolUp: return; | ||
339 | case VideoVolDown: return; | ||
340 | case VideoFullscreen: mediaPlayerState->setFullscreen( TRUE ); makeVisible(); return; | ||
341 | |||
342 | }; | ||
343 | |||
305 | } else { | 344 | } else { |
306 | if ( videoButtons[i].isHeld ) { | 345 | if ( videoButtons[i].isHeld ) { |
307 | videoButtons[i].isHeld = FALSE; | 346 | videoButtons[i].isHeld = FALSE; |
308 | if ( !videoButtons[i].isToggle ) | 347 | if ( !videoButtons[i].isToggle ) { |
309 | setToggleButton( i, FALSE ); | 348 | setToggleButton( i, FALSE ); |
349 | } | ||
350 | // qDebug("mouseMove event switch2 %d %d", i, VideoPlay); | ||
351 | switch (i) { | ||
352 | case VideoPlay: { | ||
353 | if( mediaPlayerState->isPaused) { | ||
354 | mediaPlayerState->setPaused( FALSE); return; } | ||
355 | else if( mediaPlayerState->isPlaying) { | ||
356 | mediaPlayerState->setPaused( TRUE); return; } | ||
357 | else | ||
358 | mediaPlayerState->setPlaying( TRUE /*videoButtons[i].isDown*/ ); return; | ||
359 | } | ||
360 | case VideoStop: mediaPlayerState->setPlaying(FALSE); return; | ||
361 | // case VideoPause: mediaPlayerState->setPaused(videoButtons[i].isDown); return; | ||
362 | case VideoNext: mediaPlayerState->setNext(); return; | ||
363 | case VideoPrevious: mediaPlayerState->setPrev(); return; | ||
364 | case VideoVolUp: return; | ||
365 | case VideoVolDown: return; | ||
366 | case VideoFullscreen: mediaPlayerState->setFullscreen( TRUE ); makeVisible(); return; | ||
367 | } | ||
310 | } | 368 | } |
311 | } | 369 | } |
312 | switch (i) { | ||
313 | case VideoPlay: mediaPlayerState->setPlaying(videoButtons[i].isDown); return; | ||
314 | case VideoStop: mediaPlayerState->setPlaying(FALSE); return; | ||
315 | case VideoPause: mediaPlayerState->setPaused(videoButtons[i].isDown); return; | ||
316 | case VideoNext: mediaPlayerState->setNext(); return; | ||
317 | case VideoPrevious: mediaPlayerState->setPrev(); return; | ||
318 | case VideoPlayList: mediaPlayerState->setList(); return; | ||
319 | case VideoFullscreen: mediaPlayerState->setFullscreen( TRUE ); makeVisible(); return; | ||
320 | } | ||
321 | |||
322 | } | 370 | } |
323 | } | 371 | } |
@@ -372,5 +420,5 @@ void VideoWidget::paintEvent( QPaintEvent * pe) { | |||
372 | p.translate( -pe->rect().topLeft().x(), -pe->rect().topLeft().y() ); | 420 | p.translate( -pe->rect().topLeft().x(), -pe->rect().topLeft().y() ); |
373 | p.drawTiledPixmap( pe->rect(), *pixBg, pe->rect().topLeft() ); | 421 | p.drawTiledPixmap( pe->rect(), *pixBg, pe->rect().topLeft() ); |
374 | for ( int i = 0; i < numButtons; i++ ) | 422 | for ( int i = 0; i < numVButtons; i++ ) |
375 | paintButton( &p, i ); | 423 | paintButton( &p, i ); |
376 | QPainter p2( this ); | 424 | QPainter p2( this ); |
@@ -378,5 +426,5 @@ void VideoWidget::paintEvent( QPaintEvent * pe) { | |||
378 | } else { | 426 | } else { |
379 | QPainter p( this ); | 427 | QPainter p( this ); |
380 | for ( int i = 0; i < numButtons; i++ ) | 428 | for ( int i = 0; i < numVButtons; i++ ) |
381 | paintButton( &p, i ); | 429 | paintButton( &p, i ); |
382 | } | 430 | } |
@@ -384,6 +432,6 @@ void VideoWidget::paintEvent( QPaintEvent * pe) { | |||
384 | // paintButton( &p, i ); | 432 | // paintButton( &p, i ); |
385 | // } | 433 | // } |
386 | // // draw the slider | 434 | // draw the slider |
387 | // slider->repaint( TRUE ); | 435 | slider->repaint( TRUE ); |
388 | } | 436 | } |
389 | } | 437 | } |
@@ -465,2 +513,11 @@ void VideoWidget::setFullscreen ( bool b ) { | |||
465 | setToggleButton( VideoFullscreen, b ); | 513 | setToggleButton( VideoFullscreen, b ); |
466 | } | 514 | } |
515 | |||
516 | void VideoWidget::setPaused( bool b) { | ||
517 | // setToggleButton( VideoPause, b ); | ||
518 | } | ||
519 | |||
520 | void VideoWidget::setPlaying( bool b) { | ||
521 | setToggleButton( VideoPlay, b ); | ||
522 | } | ||
523 | |||
diff --git a/noncore/multimedia/opieplayer2/videowidget.h b/noncore/multimedia/opieplayer2/videowidget.h index 830696e..92193a4 100644 --- a/noncore/multimedia/opieplayer2/videowidget.h +++ b/noncore/multimedia/opieplayer2/videowidget.h | |||
@@ -42,10 +42,11 @@ class QSlider; | |||
42 | 42 | ||
43 | enum VideoButtons { | 43 | enum VideoButtons { |
44 | VideoPrevious, | ||
45 | VideoStop, | 44 | VideoStop, |
46 | VideoPlay, | 45 | VideoPlay, |
47 | VideoPause, | 46 | // VideoPause, |
47 | VideoPrevious, | ||
48 | VideoNext, | 48 | VideoNext, |
49 | VideoPlayList, | 49 | VideoVolUp, |
50 | VideoVolDown, | ||
50 | VideoFullscreen | 51 | VideoFullscreen |
51 | }; | 52 | }; |
@@ -63,6 +64,6 @@ public slots: | |||
63 | void sliderPressed( ); | 64 | void sliderPressed( ); |
64 | void sliderReleased( ); | 65 | void sliderReleased( ); |
65 | void setPaused( bool b) { setToggleButton( VideoPause, b ); } | 66 | void setPaused( bool b); |
66 | void setPlaying( bool b) { setToggleButton( VideoPlay, b ); } | 67 | void setPlaying( bool b); |
67 | void setFullscreen( bool b ); | 68 | void setFullscreen( bool b ); |
68 | void makeVisible(); | 69 | void makeVisible(); |