summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (show 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 @@
#include <stdio.h>
#include "audiowidget.h"
#include "mediaplayerstate.h"
#include "playlistwidget.h"
-extern PlayListWidget *playList;
-
static const int xo = -2; // movable x offset
static const int yo = 22; // movable y offset
struct MediaButton {
bool isToggle, isHeld, isDown;
};
@@ -390,22 +388,22 @@ void AudioWidget::mouseMoveEvent( QMouseEvent *event ) {
&& imgButtonMask.pixelIndex( x, y ) == i + 1 );
if ( isOnButton && !audioButtons[i].isHeld ) {
audioButtons[i].isHeld = TRUE;
toggleButton(i);
switch (i) {
- case AudioVolumeUp:
+ case VolumeUp:
emit moreClicked();
return;
- case AudioVolumeDown:
+ case VolumeDown:
emit lessClicked();
return;
- case AudioForward:
+ case Forward:
emit forwardClicked();
return;
- case AudioBack:
+ case Back:
emit backClicked();
return;
}
} else if ( !isOnButton && audioButtons[i].isHeld ) {
audioButtons[i].isHeld = FALSE;
toggleButton(i);
@@ -414,31 +412,13 @@ void AudioWidget::mouseMoveEvent( QMouseEvent *event ) {
if ( audioButtons[i].isHeld ) {
audioButtons[i].isHeld = FALSE;
if ( !audioButtons[i].isToggle ) {
setToggleButton( i, FALSE );
}
qDebug("mouseEvent %d", i);
- switch (i) {
- case AudioPlay:
- if( mediaPlayerState.isPaused() ) {
- mediaPlayerState.setPaused( FALSE );
- return;
- } else if( !mediaPlayerState.isPaused() ) {
- mediaPlayerState.setPaused( TRUE );
- return;
- }
- case AudioStop: mediaPlayerState.setPlaying(FALSE); return;
- case AudioNext: if( playList->currentTab() == PlayListWidget::CurrentPlayList ) mediaPlayerState.setNext(); return;
- case AudioPrevious: if( playList->currentTab() == PlayListWidget::CurrentPlayList ) mediaPlayerState.setPrev(); return;
- case AudioLoop: mediaPlayerState.setLooping(audioButtons[i].isDown); return;
- case AudioVolumeUp: emit moreReleased(); return;
- case AudioVolumeDown: emit lessReleased(); return;
- case AudioPlayList: mediaPlayerState.setList(); return;
- case AudioForward: emit forwardReleased(); return;
- case AudioBack: emit backReleased(); return;
- }
+ handleCommand( static_cast<Command>( i ), audioButtons[ i ].isDown );
}
}
}
}
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 @@
#include <opie/oticker.h>
#include "mediawidget.h"
class QPixmap;
-namespace {
-
-enum AudioButtons {
- AudioPlay=0,
- AudioStop,
- AudioNext,
- AudioPrevious,
- AudioVolumeUp,
- AudioVolumeDown,
- AudioLoop,
- AudioPlayList,
- AudioForward,
- AudioBack
-};
-};
-
class AudioWidget : public MediaWidget {
Q_OBJECT
public:
AudioWidget( MediaPlayerState &mediaPlayerState, QWidget* parent=0, const char* name=0 );
~AudioWidget();
void setTickerText( const QString &text ) { songInfo.setText( text ); }
public slots:
void updateSlider( long, long );
void sliderPressed( );
void sliderReleased( );
- void setLooping( bool b) { setToggleButton( AudioLoop, b ); }
+ void setLooping( bool b) { setToggleButton( Loop, b ); }
void setPosition( long );
void setSeekable( bool );
public:
virtual void setLength( long );
- virtual void setPlaying( bool b) { setToggleButton( AudioPlay, b ); }
+ virtual void setPlaying( bool b) { setToggleButton( Play, b ); }
virtual void setDisplayType( MediaPlayerState::DisplayType displayType );
signals:
void moreClicked();
void lessClicked();
- void moreReleased();
- void lessReleased();
void forwardClicked();
void backClicked();
- void forwardReleased();
- void backReleased();
void sliderMoved(long);
protected:
void doBlank();
void doUnblank();
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 @@
the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA.
*/
#include "mediawidget.h"
+#include "playlistwidget.h"
-extern MediaPlayerState *mediaPlayerState;
+extern PlayListWidget *playList;
MediaWidget::MediaWidget( MediaPlayerState &_mediaPlayerState, QWidget *parent, const char *name )
: QWidget( parent, name ), mediaPlayerState( _mediaPlayerState )
{
connect( &mediaPlayerState, SIGNAL( displayTypeChanged( MediaPlayerState::DisplayType ) ),
this, SLOT( setDisplayType( MediaPlayerState::DisplayType ) ) );
@@ -34,8 +35,24 @@ MediaWidget::MediaWidget( MediaPlayerState &_mediaPlayerState, QWidget *parent,
}
MediaWidget::~MediaWidget()
{
}
+void MediaWidget::handleCommand( Command command, bool buttonDown )
+{
+ switch ( command ) {
+ case Play: mediaPlayerState.togglePaused();
+ case Stop: mediaPlayerState.setPlaying(FALSE); return;
+ case Next: if( playList->currentTab() == PlayListWidget::CurrentPlayList ) mediaPlayerState.setNext(); return;
+ case Previous: if( playList->currentTab() == PlayListWidget::CurrentPlayList ) mediaPlayerState.setPrev(); return;
+ case Loop: mediaPlayerState.setLooping( buttonDown ); return;
+ case VolumeUp: emit moreReleased(); return;
+ case VolumeDown: emit lessReleased(); return;
+ case PlayList: mediaPlayerState.setList(); return;
+ case Forward: emit forwardReleased(); return;
+ case Back: emit backReleased(); return;
+ }
+}
+
/* vim: et sw=4 ts=4
*/
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 @@
#include "mediaplayerstate.h"
class MediaWidget : public QWidget
{
Q_OBJECT
public:
+ enum Command { Play = 0, Stop, Next, Previous, VolumeUp, VolumeDown, Loop, PlayList, Forward, Back };
+
MediaWidget( MediaPlayerState &_mediaPlayerState, QWidget *parent = 0, const char *name = 0 );
virtual ~MediaWidget();
public slots:
virtual void setDisplayType( MediaPlayerState::DisplayType displayType ) = 0;
virtual void setLength( long length ) = 0;
virtual void setPlaying( bool playing ) = 0;
+signals:
+ void moreReleased();
+ void lessReleased();
+ void forwardReleased();
+ void backReleased();
+
protected:
+ void handleCommand( Command command, bool buttonDown );
+
MediaPlayerState &mediaPlayerState;
};
#endif // MEDIAWIDGET_H
/* vim: et sw=4 ts=4
*/