summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/multimedia/opieplayer2/audiowidget.cpp30
-rw-r--r--noncore/multimedia/opieplayer2/audiowidget.h24
-rw-r--r--noncore/multimedia/opieplayer2/mediawidget.cpp19
-rw-r--r--noncore/multimedia/opieplayer2/mediawidget.h10
4 files changed, 35 insertions, 48 deletions
diff --git a/noncore/multimedia/opieplayer2/audiowidget.cpp b/noncore/multimedia/opieplayer2/audiowidget.cpp
index d9beb90..3070bc3 100644
--- a/noncore/multimedia/opieplayer2/audiowidget.cpp
+++ b/noncore/multimedia/opieplayer2/audiowidget.cpp
@@ -47,14 +47,12 @@
47#include <stdio.h> 47#include <stdio.h>
48 48
49#include "audiowidget.h" 49#include "audiowidget.h"
50#include "mediaplayerstate.h" 50#include "mediaplayerstate.h"
51#include "playlistwidget.h" 51#include "playlistwidget.h"
52 52
53extern PlayListWidget *playList;
54
55static const int xo = -2; // movable x offset 53static const int xo = -2; // movable x offset
56static const int yo = 22; // movable y offset 54static const int yo = 22; // movable y offset
57 55
58struct MediaButton { 56struct MediaButton {
59 bool isToggle, isHeld, isDown; 57 bool isToggle, isHeld, isDown;
60}; 58};
@@ -390,22 +388,22 @@ void AudioWidget::mouseMoveEvent( QMouseEvent *event ) {
390 && imgButtonMask.pixelIndex( x, y ) == i + 1 ); 388 && imgButtonMask.pixelIndex( x, y ) == i + 1 );
391 389
392 if ( isOnButton && !audioButtons[i].isHeld ) { 390 if ( isOnButton && !audioButtons[i].isHeld ) {
393 audioButtons[i].isHeld = TRUE; 391 audioButtons[i].isHeld = TRUE;
394 toggleButton(i); 392 toggleButton(i);
395 switch (i) { 393 switch (i) {
396 case AudioVolumeUp: 394 case VolumeUp:
397 emit moreClicked(); 395 emit moreClicked();
398 return; 396 return;
399 case AudioVolumeDown: 397 case VolumeDown:
400 emit lessClicked(); 398 emit lessClicked();
401 return; 399 return;
402 case AudioForward: 400 case Forward:
403 emit forwardClicked(); 401 emit forwardClicked();
404 return; 402 return;
405 case AudioBack: 403 case Back:
406 emit backClicked(); 404 emit backClicked();
407 return; 405 return;
408 } 406 }
409 } else if ( !isOnButton && audioButtons[i].isHeld ) { 407 } else if ( !isOnButton && audioButtons[i].isHeld ) {
410 audioButtons[i].isHeld = FALSE; 408 audioButtons[i].isHeld = FALSE;
411 toggleButton(i); 409 toggleButton(i);
@@ -414,31 +412,13 @@ void AudioWidget::mouseMoveEvent( QMouseEvent *event ) {
414 if ( audioButtons[i].isHeld ) { 412 if ( audioButtons[i].isHeld ) {
415 audioButtons[i].isHeld = FALSE; 413 audioButtons[i].isHeld = FALSE;
416 if ( !audioButtons[i].isToggle ) { 414 if ( !audioButtons[i].isToggle ) {
417 setToggleButton( i, FALSE ); 415 setToggleButton( i, FALSE );
418 } 416 }
419 qDebug("mouseEvent %d", i); 417 qDebug("mouseEvent %d", i);
420 switch (i) { 418 handleCommand( static_cast<Command>( i ), audioButtons[ i ].isDown );
421 case AudioPlay:
422 if( mediaPlayerState.isPaused() ) {
423 mediaPlayerState.setPaused( FALSE );
424 return;
425 } else if( !mediaPlayerState.isPaused() ) {
426 mediaPlayerState.setPaused( TRUE );
427 return;
428 }
429 case AudioStop: mediaPlayerState.setPlaying(FALSE); return;
430 case AudioNext: if( playList->currentTab() == PlayListWidget::CurrentPlayList ) mediaPlayerState.setNext(); return;
431 case AudioPrevious: if( playList->currentTab() == PlayListWidget::CurrentPlayList ) mediaPlayerState.setPrev(); return;
432 case AudioLoop: mediaPlayerState.setLooping(audioButtons[i].isDown); return;
433 case AudioVolumeUp: emit moreReleased(); return;
434 case AudioVolumeDown: emit lessReleased(); return;
435 case AudioPlayList: mediaPlayerState.setList(); return;
436 case AudioForward: emit forwardReleased(); return;
437 case AudioBack: emit backReleased(); return;
438 }
439 } 419 }
440 } 420 }
441 } 421 }
442} 422}
443 423
444 424
diff --git a/noncore/multimedia/opieplayer2/audiowidget.h b/noncore/multimedia/opieplayer2/audiowidget.h
index 087d711..1778a30 100644
--- a/noncore/multimedia/opieplayer2/audiowidget.h
+++ b/noncore/multimedia/opieplayer2/audiowidget.h
@@ -46,56 +46,36 @@
46#include <opie/oticker.h> 46#include <opie/oticker.h>
47 47
48#include "mediawidget.h" 48#include "mediawidget.h"
49 49
50class QPixmap; 50class QPixmap;
51 51
52namespace {
53
54enum AudioButtons {
55 AudioPlay=0,
56 AudioStop,
57 AudioNext,
58 AudioPrevious,
59 AudioVolumeUp,
60 AudioVolumeDown,
61 AudioLoop,
62 AudioPlayList,
63 AudioForward,
64 AudioBack
65};
66};
67
68class AudioWidget : public MediaWidget { 52class AudioWidget : public MediaWidget {
69 Q_OBJECT 53 Q_OBJECT
70public: 54public:
71 AudioWidget( MediaPlayerState &mediaPlayerState, QWidget* parent=0, const char* name=0 ); 55 AudioWidget( MediaPlayerState &mediaPlayerState, QWidget* parent=0, const char* name=0 );
72 ~AudioWidget(); 56 ~AudioWidget();
73 void setTickerText( const QString &text ) { songInfo.setText( text ); } 57 void setTickerText( const QString &text ) { songInfo.setText( text ); }
74public slots: 58public slots:
75 void updateSlider( long, long ); 59 void updateSlider( long, long );
76 void sliderPressed( ); 60 void sliderPressed( );
77 void sliderReleased( ); 61 void sliderReleased( );
78 void setLooping( bool b) { setToggleButton( AudioLoop, b ); } 62 void setLooping( bool b) { setToggleButton( Loop, b ); }
79 void setPosition( long ); 63 void setPosition( long );
80 void setSeekable( bool ); 64 void setSeekable( bool );
81 65
82public: 66public:
83 virtual void setLength( long ); 67 virtual void setLength( long );
84 virtual void setPlaying( bool b) { setToggleButton( AudioPlay, b ); } 68 virtual void setPlaying( bool b) { setToggleButton( Play, b ); }
85 virtual void setDisplayType( MediaPlayerState::DisplayType displayType ); 69 virtual void setDisplayType( MediaPlayerState::DisplayType displayType );
86 70
87signals: 71signals:
88 void moreClicked(); 72 void moreClicked();
89 void lessClicked(); 73 void lessClicked();
90 void moreReleased();
91 void lessReleased();
92 void forwardClicked(); 74 void forwardClicked();
93 void backClicked(); 75 void backClicked();
94 void forwardReleased();
95 void backReleased();
96 void sliderMoved(long); 76 void sliderMoved(long);
97 77
98protected: 78protected:
99 void doBlank(); 79 void doBlank();
100 void doUnblank(); 80 void doUnblank();
101 void paintEvent( QPaintEvent *pe ); 81 void paintEvent( QPaintEvent *pe );
diff --git a/noncore/multimedia/opieplayer2/mediawidget.cpp b/noncore/multimedia/opieplayer2/mediawidget.cpp
index d58e87e..01a7295 100644
--- a/noncore/multimedia/opieplayer2/mediawidget.cpp
+++ b/noncore/multimedia/opieplayer2/mediawidget.cpp
@@ -16,14 +16,15 @@
16 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 16 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17 Boston, MA 02111-1307, USA. 17 Boston, MA 02111-1307, USA.
18*/ 18*/
19 19
20 20
21#include "mediawidget.h" 21#include "mediawidget.h"
22#include "playlistwidget.h"
22 23
23extern MediaPlayerState *mediaPlayerState; 24extern PlayListWidget *playList;
24 25
25MediaWidget::MediaWidget( MediaPlayerState &_mediaPlayerState, QWidget *parent, const char *name ) 26MediaWidget::MediaWidget( MediaPlayerState &_mediaPlayerState, QWidget *parent, const char *name )
26 : QWidget( parent, name ), mediaPlayerState( _mediaPlayerState ) 27 : QWidget( parent, name ), mediaPlayerState( _mediaPlayerState )
27{ 28{
28 connect( &mediaPlayerState, SIGNAL( displayTypeChanged( MediaPlayerState::DisplayType ) ), 29 connect( &mediaPlayerState, SIGNAL( displayTypeChanged( MediaPlayerState::DisplayType ) ),
29 this, SLOT( setDisplayType( MediaPlayerState::DisplayType ) ) ); 30 this, SLOT( setDisplayType( MediaPlayerState::DisplayType ) ) );
@@ -34,8 +35,24 @@ MediaWidget::MediaWidget( MediaPlayerState &_mediaPlayerState, QWidget *parent,
34} 35}
35 36
36MediaWidget::~MediaWidget() 37MediaWidget::~MediaWidget()
37{ 38{
38} 39}
39 40
41void MediaWidget::handleCommand( Command command, bool buttonDown )
42{
43 switch ( command ) {
44 case Play: mediaPlayerState.togglePaused();
45 case Stop: mediaPlayerState.setPlaying(FALSE); return;
46 case Next: if( playList->currentTab() == PlayListWidget::CurrentPlayList ) mediaPlayerState.setNext(); return;
47 case Previous: if( playList->currentTab() == PlayListWidget::CurrentPlayList ) mediaPlayerState.setPrev(); return;
48 case Loop: mediaPlayerState.setLooping( buttonDown ); return;
49 case VolumeUp: emit moreReleased(); return;
50 case VolumeDown: emit lessReleased(); return;
51 case PlayList: mediaPlayerState.setList(); return;
52 case Forward: emit forwardReleased(); return;
53 case Back: emit backReleased(); return;
54 }
55}
56
40/* vim: et sw=4 ts=4 57/* vim: et sw=4 ts=4
41 */ 58 */
diff --git a/noncore/multimedia/opieplayer2/mediawidget.h b/noncore/multimedia/opieplayer2/mediawidget.h
index 64adba9..550f0fc 100644
--- a/noncore/multimedia/opieplayer2/mediawidget.h
+++ b/noncore/multimedia/opieplayer2/mediawidget.h
@@ -25,21 +25,31 @@
25#include "mediaplayerstate.h" 25#include "mediaplayerstate.h"
26 26
27class MediaWidget : public QWidget 27class MediaWidget : public QWidget
28{ 28{
29 Q_OBJECT 29 Q_OBJECT
30public: 30public:
31 enum Command { Play = 0, Stop, Next, Previous, VolumeUp, VolumeDown, Loop, PlayList, Forward, Back };
32
31 MediaWidget( MediaPlayerState &_mediaPlayerState, QWidget *parent = 0, const char *name = 0 ); 33 MediaWidget( MediaPlayerState &_mediaPlayerState, QWidget *parent = 0, const char *name = 0 );
32 virtual ~MediaWidget(); 34 virtual ~MediaWidget();
33 35
34public slots: 36public slots:
35 virtual void setDisplayType( MediaPlayerState::DisplayType displayType ) = 0; 37 virtual void setDisplayType( MediaPlayerState::DisplayType displayType ) = 0;
36 virtual void setLength( long length ) = 0; 38 virtual void setLength( long length ) = 0;
37 virtual void setPlaying( bool playing ) = 0; 39 virtual void setPlaying( bool playing ) = 0;
38 40
41signals:
42 void moreReleased();
43 void lessReleased();
44 void forwardReleased();
45 void backReleased();
46
39protected: 47protected:
48 void handleCommand( Command command, bool buttonDown );
49
40 MediaPlayerState &mediaPlayerState; 50 MediaPlayerState &mediaPlayerState;
41}; 51};
42 52
43#endif // MEDIAWIDGET_H 53#endif // MEDIAWIDGET_H
44/* vim: et sw=4 ts=4 54/* vim: et sw=4 ts=4
45 */ 55 */