summaryrefslogtreecommitdiff
path: root/noncore/multimedia/opieplayer2
Unidiff
Diffstat (limited to 'noncore/multimedia/opieplayer2') (more/less context) (show whitespace changes)
-rw-r--r--noncore/multimedia/opieplayer2/audiowidget.cpp8
-rw-r--r--noncore/multimedia/opieplayer2/mediaplayer.cpp3
-rw-r--r--noncore/multimedia/opieplayer2/mediawidget.cpp78
-rw-r--r--noncore/multimedia/opieplayer2/mediawidget.h3
4 files changed, 48 insertions, 44 deletions
diff --git a/noncore/multimedia/opieplayer2/audiowidget.cpp b/noncore/multimedia/opieplayer2/audiowidget.cpp
index 5986a72..8e9bbf1 100644
--- a/noncore/multimedia/opieplayer2/audiowidget.cpp
+++ b/noncore/multimedia/opieplayer2/audiowidget.cpp
@@ -348,2 +348,3 @@ void AudioWidget::keyReleaseEvent( QKeyEvent *e) {
348 // qDebug("Audio F9"); 348 // qDebug("Audio F9");
349 e->accept();
349 break; 350 break;
@@ -353,2 +354,3 @@ void AudioWidget::keyReleaseEvent( QKeyEvent *e) {
353 mediaPlayerState.toggleBlank(); 354 mediaPlayerState.toggleBlank();
355 e->accept();
354 break; 356 break;
@@ -358,4 +360,6 @@ void AudioWidget::keyReleaseEvent( QKeyEvent *e) {
358 mediaPlayerState.toggleBlank(); 360 mediaPlayerState.toggleBlank();
361 e->accept();
359 break; 362 break;
360 case Key_Space: { 363 case Key_Space: {
364 e->accept();
361 mediaPlayerState.togglePaused(); 365 mediaPlayerState.togglePaused();
@@ -368,2 +372,3 @@ void AudioWidget::keyReleaseEvent( QKeyEvent *e) {
368 // toggleButton(6); 372 // toggleButton(6);
373 e->accept();
369 break; 374 break;
@@ -374,2 +379,3 @@ void AudioWidget::keyReleaseEvent( QKeyEvent *e) {
374 // toggleButton(5); 379 // toggleButton(5);
380 e->accept();
375 break; 381 break;
@@ -379,2 +385,3 @@ void AudioWidget::keyReleaseEvent( QKeyEvent *e) {
379 // toggleButton(3); 385 // toggleButton(3);
386 e->accept();
380 break; 387 break;
@@ -384,2 +391,3 @@ void AudioWidget::keyReleaseEvent( QKeyEvent *e) {
384 // toggleButton(4); 391 // toggleButton(4);
392 e->accept();
385 break; 393 break;
diff --git a/noncore/multimedia/opieplayer2/mediaplayer.cpp b/noncore/multimedia/opieplayer2/mediaplayer.cpp
index ed7e37f..e1bfc2d 100644
--- a/noncore/multimedia/opieplayer2/mediaplayer.cpp
+++ b/noncore/multimedia/opieplayer2/mediaplayer.cpp
@@ -47,3 +47,4 @@ MediaPlayer::MediaPlayer( PlayListWidget &_playList, MediaPlayerState &_mediaPla
47 47
48 connect( &mediaPlayerState, SIGNAL( pausedToggled( bool ) ), this, SLOT( pauseCheck( bool ) ) ); 48// What is pauseCheck good for? (Simon)
49// connect( &mediaPlayerState, SIGNAL( pausedToggled( bool ) ), this, SLOT( pauseCheck( bool ) ) );
49 50
diff --git a/noncore/multimedia/opieplayer2/mediawidget.cpp b/noncore/multimedia/opieplayer2/mediawidget.cpp
index 439ba2e..4c4cead 100644
--- a/noncore/multimedia/opieplayer2/mediawidget.cpp
+++ b/noncore/multimedia/opieplayer2/mediawidget.cpp
@@ -71,44 +71,15 @@ void MediaWidget::paintEvent( QPaintEvent *pe )
71 71
72void MediaWidget::mouseMoveEvent( QMouseEvent *event ) 72MediaWidget::Button *MediaWidget::buttonAt( const QPoint &position )
73{ 73{
74 for ( ButtonVector::iterator it = buttons.begin(); it != buttons.end(); ++it ) { 74 if ( position.x() <= 0 || position.y() <= 0 ||
75 Button &button = *it; 75 position.x() >= buttonMask.width() ||
76 Command command = button.command; 76 position.y() >= buttonMask.height() )
77 return 0;
77 78
78 if ( event->state() == QMouseEvent::LeftButton ) { 79 int pixelIdx = buttonMask.pixelIndex( position.x(), position.y() );
79 // The test to see if the mouse click is inside the button or not 80 for ( ButtonVector::iterator it = buttons.begin(); it != buttons.end(); ++it )
80 bool isOnButton = isOverButton( event->pos() - upperLeftOfButtonMask, command ); 81 if ( it->command + 1 == pixelIdx )
82 return &( *it );
81 83
82 if ( isOnButton && !button.isHeld ) { 84 return 0;
83 button.isHeld = TRUE;
84 toggleButton( button );
85 switch ( command ) {
86 case VolumeUp:
87 emit moreClicked();
88 return;
89 case VolumeDown:
90 emit lessClicked();
91 return;
92 case Forward:
93 emit forwardClicked();
94 return;
95 case Back:
96 emit backClicked();
97 return;
98 default: break;
99 }
100 } else if ( !isOnButton && button.isHeld ) {
101 button.isHeld = FALSE;
102 toggleButton( button );
103 }
104 } else {
105 if ( button.isHeld ) {
106 button.isHeld = FALSE;
107 if ( button.type != ToggleButton ) {
108 setToggleButton( button, FALSE );
109 }
110 handleCommand( command, button.isDown );
111 }
112 }
113 }
114} 85}
@@ -117,3 +88,16 @@ void MediaWidget::mousePressEvent( QMouseEvent *event )
117{ 88{
118 mouseMoveEvent( event ); 89 Button *button = buttonAt( event->pos() - upperLeftOfButtonMask );
90
91 if ( !button ) {
92 QWidget::mousePressEvent( event );
93 return;
94 }
95
96 switch ( button->command ) {
97 case VolumeUp: emit moreClicked(); return;
98 case VolumeDown: emit lessClicked(); return;
99 case Back: emit backClicked(); return;
100 case Forward: emit forwardClicked(); return;
101 default: break;
102 }
119} 103}
@@ -122,3 +106,13 @@ void MediaWidget::mouseReleaseEvent( QMouseEvent *event )
122{ 106{
123 mouseMoveEvent( event ); 107 Button *button = buttonAt( event->pos() - upperLeftOfButtonMask );
108
109 if ( !button ) {
110 QWidget::mouseReleaseEvent( event );
111 return;
112 }
113
114 if ( button->type == ToggleButton )
115 toggleButton( *button );
116
117 handleCommand( button->command, button->isDown );
124} 118}
@@ -132,3 +126,3 @@ void MediaWidget::handleCommand( Command command, bool buttonDown )
132 switch ( command ) { 126 switch ( command ) {
133 case Play: mediaPlayerState.togglePaused(); 127 case Play: mediaPlayerState.togglePaused(); return;
134 case Stop: mediaPlayerState.setPlaying(FALSE); return; 128 case Stop: mediaPlayerState.setPlaying(FALSE); return;
diff --git a/noncore/multimedia/opieplayer2/mediawidget.h b/noncore/multimedia/opieplayer2/mediawidget.h
index 9042d5b..8031371 100644
--- a/noncore/multimedia/opieplayer2/mediawidget.h
+++ b/noncore/multimedia/opieplayer2/mediawidget.h
@@ -89,3 +89,4 @@ protected:
89 89
90 virtual void mouseMoveEvent( QMouseEvent *event ); 90 Button *buttonAt( const QPoint &position );
91
91 virtual void mousePressEvent( QMouseEvent *event ); 92 virtual void mousePressEvent( QMouseEvent *event );