summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/multimedia/opieplayer2/mediaplayerstate.cpp39
-rw-r--r--noncore/multimedia/opieplayer2/mediaplayerstate.h6
2 files changed, 29 insertions, 16 deletions
diff --git a/noncore/multimedia/opieplayer2/mediaplayerstate.cpp b/noncore/multimedia/opieplayer2/mediaplayerstate.cpp
index 6806adc..901b43f 100644
--- a/noncore/multimedia/opieplayer2/mediaplayerstate.cpp
+++ b/noncore/multimedia/opieplayer2/mediaplayerstate.cpp
@@ -69,36 +69,40 @@ void MediaPlayerState::readConfig( Config& cfg ) {
videoGamma = cfg.readNumEntry( "VideoGamma" );
playing = FALSE;
streaming = FALSE;
paused = FALSE;
curPosition = 0;
curLength = 0;
- curView = 'l';
+ m_displayType = MediaSelection;
}
void MediaPlayerState::writeConfig( Config& cfg ) const {
cfg.setGroup( "Options" );
cfg.writeEntry( "FullScreen", fullscreen );
cfg.writeEntry( "Scaling", scaled );
cfg.writeEntry( "Looping", looping );
cfg.writeEntry( "Shuffle", shuffled );
cfg.writeEntry( "VideoGamma", videoGamma );
}
-MediaPlayerState::DisplayType MediaPlayerState::displayType() const
+char MediaPlayerState::view() const
{
- char v = view();
- switch ( v ) {
- case 'a': return MediaPlayerState::Audio;
- case 'v': return MediaPlayerState::Video;
- case 'l': return MediaPlayerState::MediaSelection;
+ switch ( m_displayType ) {
+ case Audio: return 'a';
+ case Video: return 'v';
+ case MediaSelection: return 'l';
default: assert( false );
}
// never reached
- return MediaPlayerState::MediaSelection;
+ return 42;
+}
+
+MediaPlayerState::DisplayType MediaPlayerState::displayType() const
+{
+ return m_displayType;
}
// slots
void MediaPlayerState::setIsStreaming( bool b ) {
streaming = b;
}
@@ -208,18 +212,27 @@ void MediaPlayerState::setLength( long l ) {
}
curLength = l;
emit lengthChanged(l);
}
void MediaPlayerState::setView( char v ) {
- if ( curView == v ) {
- return;
+ switch ( v ) {
+ case 'a': setDisplayType( Audio ); return;
+ case 'v': setDisplayType( Video ); return;
+ case 'l': setDisplayType( MediaSelection ); return;
+ default: assert( false );
}
- curView = v;
- emit viewChanged(v);
- emit displayTypeChanged( displayType() );
+}
+
+void MediaPlayerState::setDisplayType( DisplayType displayType )
+{
+ if ( m_displayType == displayType )
+ return;
+
+ m_displayType = displayType;
+ emit displayTypeChanged( m_displayType );
}
void MediaPlayerState::setPrev(){
emit prev();
}
diff --git a/noncore/multimedia/opieplayer2/mediaplayerstate.h b/noncore/multimedia/opieplayer2/mediaplayerstate.h
index ca531c5..b18780b 100644
--- a/noncore/multimedia/opieplayer2/mediaplayerstate.h
+++ b/noncore/multimedia/opieplayer2/mediaplayerstate.h
@@ -60,13 +60,13 @@ public:
bool isShuffled() const { return shuffled; }
bool isPaused() const { return paused; }
bool isPlaying() const { return playing; }
bool isStopped() const { return stopped; }
long position() const { return curPosition; }
long length() const { return curLength; }
- char view() const { return curView; }
+ char view() const;
DisplayType displayType() const;
public slots:
void setIsStreaming( bool b );
void setIsSeekable( bool b );
void setFullscreen( bool b );
@@ -77,12 +77,13 @@ public slots:
void setPlaying( bool b );
void setStopped( bool b );
void setPosition( long p );
void updatePosition( long p );
void setLength( long l );
void setView( char v );
+ void setDisplayType( MediaPlayerState::DisplayType displayType );
void setBlanked( bool b );
void setVideoGamma( int v );
void setPrev();
void setNext();
void setList();
@@ -107,13 +108,12 @@ signals:
void pausedToggled( bool );
void playingToggled( bool );
void stopToggled( bool );
void positionChanged( long ); // When the slider is moved
void positionUpdated( long ); // When the media file progresses
void lengthChanged( long );
- void viewChanged( char );
void displayTypeChanged( MediaPlayerState::DisplayType type );
void isSeekableToggled( bool );
void blankToggled( bool );
void videoGammaChanged( int );
void prev();
void next();
@@ -129,13 +129,13 @@ private:
bool usePlaylist : 1;
bool paused : 1;
bool playing : 1;
bool stopped : 1;
long curPosition;
long curLength;
- char curView;
+ DisplayType m_displayType;
int videoGamma;
void readConfig( Config& cfg );
};