summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/multimedia/opieplayer2/audiowidget.cpp7
-rw-r--r--noncore/multimedia/opieplayer2/mediawidget.cpp8
-rw-r--r--noncore/multimedia/opieplayer2/mediawidget.h2
-rw-r--r--noncore/multimedia/opieplayer2/videowidget.cpp7
4 files changed, 12 insertions, 12 deletions
diff --git a/noncore/multimedia/opieplayer2/audiowidget.cpp b/noncore/multimedia/opieplayer2/audiowidget.cpp
index 4301a67..d083273 100644
--- a/noncore/multimedia/opieplayer2/audiowidget.cpp
+++ b/noncore/multimedia/opieplayer2/audiowidget.cpp
@@ -372,30 +372,25 @@ void AudioWidget::timerEvent( QTimerEvent * ) {
372 if ( skipDirection == +1 ) { 372 if ( skipDirection == +1 ) {
373 mediaPlayerState.setPosition( mediaPlayerState.position() + 2 ); 373 mediaPlayerState.setPosition( mediaPlayerState.position() + 2 );
374 } else if ( skipDirection == -1 ) { 374 } else if ( skipDirection == -1 ) {
375 mediaPlayerState.setPosition( mediaPlayerState.position() - 2 ); 375 mediaPlayerState.setPosition( mediaPlayerState.position() - 2 );
376 } 376 }
377} 377}
378 378
379 379
380void AudioWidget::mouseMoveEvent( QMouseEvent *event ) { 380void AudioWidget::mouseMoveEvent( QMouseEvent *event ) {
381 for ( unsigned int i = 0; i < buttons.size(); i++ ) { 381 for ( unsigned int i = 0; i < buttons.size(); i++ ) {
382 if ( event->state() == QMouseEvent::LeftButton ) { 382 if ( event->state() == QMouseEvent::LeftButton ) {
383 // The test to see if the mouse click is inside the button or not 383 // The test to see if the mouse click is inside the button or not
384 int x = event->pos().x() - upperLeftOfButtonMask.x(); 384 bool isOnButton = isOverButton( event->pos() - upperLeftOfButtonMask, i );
385 int y = event->pos().y() - upperLeftOfButtonMask.y();
386
387 bool isOnButton = ( x > 0 && y > 0 && x < buttonMask.width()
388 && y < buttonMask.height()
389 && buttonMask.pixelIndex( x, y ) == i + 1 );
390 385
391 if ( isOnButton && !buttons[i].isHeld ) { 386 if ( isOnButton && !buttons[i].isHeld ) {
392 buttons[i].isHeld = TRUE; 387 buttons[i].isHeld = TRUE;
393 toggleButton(i); 388 toggleButton(i);
394 switch (i) { 389 switch (i) {
395 case VolumeUp: 390 case VolumeUp:
396 emit moreClicked(); 391 emit moreClicked();
397 return; 392 return;
398 case VolumeDown: 393 case VolumeDown:
399 emit lessClicked(); 394 emit lessClicked();
400 return; 395 return;
401 case Forward: 396 case Forward:
diff --git a/noncore/multimedia/opieplayer2/mediawidget.cpp b/noncore/multimedia/opieplayer2/mediawidget.cpp
index a1b292e..1d18d6f 100644
--- a/noncore/multimedia/opieplayer2/mediawidget.cpp
+++ b/noncore/multimedia/opieplayer2/mediawidget.cpp
@@ -51,14 +51,22 @@ void MediaWidget::handleCommand( Command command, bool buttonDown )
51 case Stop: mediaPlayerState.setPlaying(FALSE); return; 51 case Stop: mediaPlayerState.setPlaying(FALSE); return;
52 case Next: if( playList.currentTab() == PlayListWidget::CurrentPlayList ) mediaPlayerState.setNext(); return; 52 case Next: if( playList.currentTab() == PlayListWidget::CurrentPlayList ) mediaPlayerState.setNext(); return;
53 case Previous: if( playList.currentTab() == PlayListWidget::CurrentPlayList ) mediaPlayerState.setPrev(); return; 53 case Previous: if( playList.currentTab() == PlayListWidget::CurrentPlayList ) mediaPlayerState.setPrev(); return;
54 case Loop: mediaPlayerState.setLooping( buttonDown ); return; 54 case Loop: mediaPlayerState.setLooping( buttonDown ); return;
55 case VolumeUp: emit moreReleased(); return; 55 case VolumeUp: emit moreReleased(); return;
56 case VolumeDown: emit lessReleased(); return; 56 case VolumeDown: emit lessReleased(); return;
57 case PlayList: mediaPlayerState.setList(); return; 57 case PlayList: mediaPlayerState.setList(); return;
58 case Forward: emit forwardReleased(); return; 58 case Forward: emit forwardReleased(); return;
59 case Back: emit backReleased(); return; 59 case Back: emit backReleased(); return;
60 } 60 }
61} 61}
62 62
63bool MediaWidget::isOverButton( const QPoint &position, int buttonId ) const
64{
65 return ( position.x() > 0 && position.y() > 0 &&
66 position.x() < buttonMask.width() &&
67 position.y() < buttonMask.height() &&
68 buttonMask.pixelIndex( position.x(), position.y() ) == buttonId + 1 );
69}
70
63/* vim: et sw=4 ts=4 71/* vim: et sw=4 ts=4
64 */ 72 */
diff --git a/noncore/multimedia/opieplayer2/mediawidget.h b/noncore/multimedia/opieplayer2/mediawidget.h
index 7e6cb3b..6e12a3b 100644
--- a/noncore/multimedia/opieplayer2/mediawidget.h
+++ b/noncore/multimedia/opieplayer2/mediawidget.h
@@ -56,24 +56,26 @@ public slots:
56 56
57signals: 57signals:
58 void moreReleased(); 58 void moreReleased();
59 void lessReleased(); 59 void lessReleased();
60 void forwardReleased(); 60 void forwardReleased();
61 void backReleased(); 61 void backReleased();
62 62
63protected: 63protected:
64 virtual void closeEvent( QCloseEvent * ); 64 virtual void closeEvent( QCloseEvent * );
65 65
66 void handleCommand( Command command, bool buttonDown ); 66 void handleCommand( Command command, bool buttonDown );
67 67
68 bool isOverButton( const QPoint &position, int buttonId ) const;
69
68 MediaPlayerState &mediaPlayerState; 70 MediaPlayerState &mediaPlayerState;
69 PlayListWidget &playList; 71 PlayListWidget &playList;
70 72
71 ButtonVector buttons; 73 ButtonVector buttons;
72 74
73 QImage buttonMask; 75 QImage buttonMask;
74 76
75 QPoint upperLeftOfButtonMask; 77 QPoint upperLeftOfButtonMask;
76}; 78};
77 79
78#endif // MEDIAWIDGET_H 80#endif // MEDIAWIDGET_H
79/* vim: et sw=4 ts=4 81/* vim: et sw=4 ts=4
diff --git a/noncore/multimedia/opieplayer2/videowidget.cpp b/noncore/multimedia/opieplayer2/videowidget.cpp
index 6ab6d7b..6451ac4 100644
--- a/noncore/multimedia/opieplayer2/videowidget.cpp
+++ b/noncore/multimedia/opieplayer2/videowidget.cpp
@@ -273,30 +273,25 @@ void VideoWidget::paintButton( QPainter *p, int i ) {
273 273
274 if ( buttons[i].isDown ) { 274 if ( buttons[i].isDown ) {
275 p->drawPixmap( upperLeftOfButtonMask, *buttonPixDown[i] ); 275 p->drawPixmap( upperLeftOfButtonMask, *buttonPixDown[i] );
276 } else { 276 } else {
277 p->drawPixmap( upperLeftOfButtonMask, *buttonPixUp[i] ); 277 p->drawPixmap( upperLeftOfButtonMask, *buttonPixUp[i] );
278 } 278 }
279} 279}
280 280
281void VideoWidget::mouseMoveEvent( QMouseEvent *event ) { 281void VideoWidget::mouseMoveEvent( QMouseEvent *event ) {
282 for ( unsigned int i = 0; i < buttons.size(); i++ ) { 282 for ( unsigned int i = 0; i < buttons.size(); i++ ) {
283 if ( event->state() == QMouseEvent::LeftButton ) { 283 if ( event->state() == QMouseEvent::LeftButton ) {
284 // The test to see if the mouse click is inside the button or not 284 // The test to see if the mouse click is inside the button or not
285 int x = event->pos().x() - upperLeftOfButtonMask.x(); 285 bool isOnButton = isOverButton( event->pos() - upperLeftOfButtonMask, i );
286 int y = event->pos().y() - upperLeftOfButtonMask.y();
287
288 bool isOnButton = ( x > 0 && y > 0 && x < buttonMask.width()
289 && y < buttonMask.height()
290 && buttonMask.pixelIndex( x, y ) == i + 1 );
291 286
292 if ( isOnButton && !buttons[i].isHeld ) { 287 if ( isOnButton && !buttons[i].isHeld ) {
293 buttons[i].isHeld = TRUE; 288 buttons[i].isHeld = TRUE;
294 toggleButton(i); 289 toggleButton(i);
295 290
296 switch (i) { 291 switch (i) {
297 case VideoVolUp: 292 case VideoVolUp:
298 emit moreClicked(); 293 emit moreClicked();
299 return; 294 return;
300 case VideoVolDown: 295 case VideoVolDown:
301 emit lessClicked(); 296 emit lessClicked();
302 return; 297 return;