Diffstat (limited to 'noncore/multimedia/opieplayer2/mediaplayerstate.h') (more/less context) (show whitespace changes)
-rw-r--r-- | noncore/multimedia/opieplayer2/mediaplayerstate.h | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/noncore/multimedia/opieplayer2/mediaplayerstate.h b/noncore/multimedia/opieplayer2/mediaplayerstate.h new file mode 100644 index 0000000..374e780 --- a/dev/null +++ b/noncore/multimedia/opieplayer2/mediaplayerstate.h | |||
@@ -0,0 +1,100 @@ | |||
1 | |||
2 | #ifndef MEDIA_PLAYER_STATE_H | ||
3 | #define MEDIA_PLAYER_STATE_H | ||
4 | |||
5 | |||
6 | #include <qobject.h> | ||
7 | |||
8 | |||
9 | class MediaPlayerDecoder; | ||
10 | class Config; | ||
11 | |||
12 | |||
13 | class MediaPlayerState : public QObject { | ||
14 | Q_OBJECT | ||
15 | public: | ||
16 | MediaPlayerState( QObject *parent, const char *name ); | ||
17 | ~MediaPlayerState(); | ||
18 | |||
19 | bool isStreaming; | ||
20 | bool fullscreen() { return isFullscreen; } | ||
21 | bool scaled() { return isScaled; } | ||
22 | bool looping() { return isLooping; } | ||
23 | bool shuffled() { return isShuffled; } | ||
24 | bool playlist() { return usePlaylist; } | ||
25 | bool paused() { return isPaused; } | ||
26 | bool playing() { return isPlaying; } | ||
27 | long position() { return curPosition; } | ||
28 | long length() { return curLength; } | ||
29 | char view() { return curView; } | ||
30 | |||
31 | MediaPlayerDecoder *newDecoder( const QString& file ); | ||
32 | MediaPlayerDecoder *curDecoder(); | ||
33 | MediaPlayerDecoder *libMpeg3Decoder(); // ### Yucky hack needed to use libmpeg3plugin to get the | ||
34 | // number of audio samples if we are using the libmad plugin | ||
35 | public slots: | ||
36 | void setFullscreen( bool b ) { if ( isFullscreen == b ) return; isFullscreen = b; emit fullscreenToggled(b); } | ||
37 | void setScaled( bool b ) { if ( isScaled == b ) return; isScaled = b; emit scaledToggled(b); } | ||
38 | void setLooping( bool b ) { if ( isLooping == b ) return; isLooping = b; emit loopingToggled(b); } | ||
39 | void setShuffled( bool b ) { if ( isShuffled == b ) return; isShuffled = b; emit shuffledToggled(b); } | ||
40 | void setPlaylist( bool b ) { if ( usePlaylist == b ) return; usePlaylist = b; emit playlistToggled(b); } | ||
41 | void setPaused( bool b ) { if ( isPaused == b ) return; isPaused = b; emit pausedToggled(b); } | ||
42 | void setPlaying( bool b ) { if ( isPlaying == b ) return; isPlaying = b; emit playingToggled(b); } | ||
43 | void setPosition( long p ) { if ( curPosition == p ) return; curPosition = p; emit positionChanged(p); } | ||
44 | void updatePosition( long p ){ if ( curPosition == p ) return; curPosition = p; emit positionUpdated(p); } | ||
45 | void setLength( long l ) { if ( curLength == l ) return; curLength = l; emit lengthChanged(l); } | ||
46 | void setView( char v ) { if ( curView == v ) return; curView = v; emit viewChanged(v); } | ||
47 | |||
48 | void setPrev() { emit prev(); } | ||
49 | void setNext() { emit next(); } | ||
50 | void setList() { setPlaying( FALSE ); setView('l'); } | ||
51 | void setVideo() { setView('v'); } | ||
52 | void setAudio() { setView('a'); } | ||
53 | |||
54 | void toggleFullscreen() { setFullscreen( !isFullscreen ); } | ||
55 | void toggleScaled() { setScaled( !isScaled); } | ||
56 | void toggleLooping() { setLooping( !isLooping); } | ||
57 | void toggleShuffled() { setShuffled( !isShuffled); } | ||
58 | void togglePlaylist() { setPlaylist( !usePlaylist); } | ||
59 | void togglePaused() { setPaused( !isPaused); } | ||
60 | void togglePlaying() { setPlaying( !isPlaying); } | ||
61 | |||
62 | signals: | ||
63 | void fullscreenToggled( bool ); | ||
64 | void scaledToggled( bool ); | ||
65 | void loopingToggled( bool ); | ||
66 | void shuffledToggled( bool ); | ||
67 | void playlistToggled( bool ); | ||
68 | void pausedToggled( bool ); | ||
69 | void playingToggled( bool ); | ||
70 | void positionChanged( long ); // When the slider is moved | ||
71 | void positionUpdated( long ); // When the media file progresses | ||
72 | void lengthChanged( long ); | ||
73 | void viewChanged( char ); | ||
74 | |||
75 | void prev(); | ||
76 | void next(); | ||
77 | |||
78 | private: | ||
79 | bool isFullscreen; | ||
80 | bool isScaled; | ||
81 | bool isLooping; | ||
82 | bool isShuffled; | ||
83 | bool usePlaylist; | ||
84 | bool isPaused; | ||
85 | bool isPlaying; | ||
86 | long curPosition; | ||
87 | long curLength; | ||
88 | char curView; | ||
89 | |||
90 | MediaPlayerDecoder *decoder; | ||
91 | MediaPlayerDecoder *libmpeg3decoder; | ||
92 | // MediaPlayerDecoder *libwavdecoder; | ||
93 | |||
94 | void readConfig( Config& cfg ); | ||
95 | void writeConfig( Config& cfg ) const; | ||
96 | }; | ||
97 | |||
98 | |||
99 | #endif // MEDIA_PLAYER_STATE_H | ||
100 | |||