summaryrefslogtreecommitdiff
path: root/noncore/multimedia/opieplayer2
Unidiff
Diffstat (limited to 'noncore/multimedia/opieplayer2') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/multimedia/opieplayer2/xinecontrol.cpp13
-rw-r--r--noncore/multimedia/opieplayer2/xinecontrol.h7
2 files changed, 20 insertions, 0 deletions
diff --git a/noncore/multimedia/opieplayer2/xinecontrol.cpp b/noncore/multimedia/opieplayer2/xinecontrol.cpp
index ee2cd83..efa9934 100644
--- a/noncore/multimedia/opieplayer2/xinecontrol.cpp
+++ b/noncore/multimedia/opieplayer2/xinecontrol.cpp
@@ -27,48 +27,61 @@
27    --        :-=` this library; see the file COPYING.LIB. 27    --        :-=` this library; see the file COPYING.LIB.
28 If not, write to the Free Software Foundation, 28 If not, write to the Free Software Foundation,
29 Inc., 59 Temple Place - Suite 330, 29 Inc., 59 Temple Place - Suite 330,
30 Boston, MA 02111-1307, USA. 30 Boston, MA 02111-1307, USA.
31 31
32*/ 32*/
33 33
34 34
35#include <qtimer.h> 35#include <qtimer.h>
36#include <qmessagebox.h> 36#include <qmessagebox.h>
37#include <qpe/qcopenvelope_qws.h> 37#include <qpe/qcopenvelope_qws.h>
38#include <qpe/qpeapplication.h> 38#include <qpe/qpeapplication.h>
39#include "xinecontrol.h" 39#include "xinecontrol.h"
40#include "mediaplayerstate.h" 40#include "mediaplayerstate.h"
41#include "xinevideowidget.h" 41#include "xinevideowidget.h"
42 42
43XineControl::XineControl( XineVideoWidget *xineWidget, 43XineControl::XineControl( XineVideoWidget *xineWidget,
44 MediaPlayerState &_mediaPlayerState, 44 MediaPlayerState &_mediaPlayerState,
45 QObject *parent, const char *name ) 45 QObject *parent, const char *name )
46 : QObject( parent, name ), mediaPlayerState( _mediaPlayerState ), xineVideoWidget( xineWidget ) 46 : QObject( parent, name ), mediaPlayerState( _mediaPlayerState ), xineVideoWidget( xineWidget )
47{ 47{
48 48
49 libXine = new XINE::Lib( xineWidget ); 49 libXine = new XINE::Lib( xineWidget );
50 50
51 init();
52}
53
54XineControl::XineControl( XINE::Lib *xine, XineVideoWidget *xineWidget,
55 MediaPlayerState &_mediaPlayerState,
56 QObject *parent, const char *name )
57 : QObject( parent, name ), libXine( xine ), mediaPlayerState( _mediaPlayerState ), xineVideoWidget( xineWidget )
58{
59 init();
60}
61
62void XineControl::init()
63{
51 connect( &mediaPlayerState, SIGNAL( pausedToggled( bool ) ), this, SLOT( pause( bool ) ) ); 64 connect( &mediaPlayerState, SIGNAL( pausedToggled( bool ) ), this, SLOT( pause( bool ) ) );
52 connect( this, SIGNAL( positionChanged( long ) ), &mediaPlayerState, SLOT( updatePosition( long ) ) ); 65 connect( this, SIGNAL( positionChanged( long ) ), &mediaPlayerState, SLOT( updatePosition( long ) ) );
53 connect( &mediaPlayerState, SIGNAL( playingToggled( bool ) ), this, SLOT( stop( bool ) ) ); 66 connect( &mediaPlayerState, SIGNAL( playingToggled( bool ) ), this, SLOT( stop( bool ) ) );
54 connect( &mediaPlayerState, SIGNAL( fullscreenToggled( bool ) ), this, SLOT( setFullscreen( bool ) ) ); 67 connect( &mediaPlayerState, SIGNAL( fullscreenToggled( bool ) ), this, SLOT( setFullscreen( bool ) ) );
55 connect( &mediaPlayerState, SIGNAL( positionChanged( long ) ), this, SLOT( seekTo( long ) ) ); 68 connect( &mediaPlayerState, SIGNAL( positionChanged( long ) ), this, SLOT( seekTo( long ) ) );
56 connect( &mediaPlayerState, SIGNAL( videoGammaChanged( int ) ), this, SLOT( setGamma( int ) ) ); 69 connect( &mediaPlayerState, SIGNAL( videoGammaChanged( int ) ), this, SLOT( setGamma( int ) ) );
57 connect( libXine, SIGNAL( stopped() ), this, SLOT( nextMedia() ) ); 70 connect( libXine, SIGNAL( stopped() ), this, SLOT( nextMedia() ) );
58 connect( xineVideoWidget, SIGNAL( videoResized( const QSize & ) ), this, SLOT( videoResized ( const QSize & ) ) ); 71 connect( xineVideoWidget, SIGNAL( videoResized( const QSize & ) ), this, SLOT( videoResized ( const QSize & ) ) );
59 72
60 disabledSuspendScreenSaver = FALSE; 73 disabledSuspendScreenSaver = FALSE;
61} 74}
62 75
63XineControl::~XineControl() { 76XineControl::~XineControl() {
64#if defined(Q_WS_QWS) && !defined(QT_NO_COP) 77#if defined(Q_WS_QWS) && !defined(QT_NO_COP)
65 if ( disabledSuspendScreenSaver ) { 78 if ( disabledSuspendScreenSaver ) {
66 disabledSuspendScreenSaver = FALSE; 79 disabledSuspendScreenSaver = FALSE;
67 // Re-enable the suspend mode 80 // Re-enable the suspend mode
68 QCopEnvelope( "QPE/System", "setScreenSaverMode(int)" ) << QPEApplication::Enable; 81 QCopEnvelope( "QPE/System", "setScreenSaverMode(int)" ) << QPEApplication::Enable;
69 } 82 }
70#endif 83#endif
71 delete libXine; 84 delete libXine;
72} 85}
73 86
74void XineControl::play( const QString& fileName ) { 87void XineControl::play( const QString& fileName ) {
diff --git a/noncore/multimedia/opieplayer2/xinecontrol.h b/noncore/multimedia/opieplayer2/xinecontrol.h
index fdc5d2b..0e985d6 100644
--- a/noncore/multimedia/opieplayer2/xinecontrol.h
+++ b/noncore/multimedia/opieplayer2/xinecontrol.h
@@ -24,48 +24,53 @@
24 :     =  ...= . :.=- 24 :     =  ...= . :.=-
25 -.   .:....=;==+<; You should have received a copy of the GNU 25 -.   .:....=;==+<; You should have received a copy of the GNU
26  -_. . .   )=.  = General Public License along with 26  -_. . .   )=.  = General Public License along with
27    --        :-=` this library; see the file COPYING.LIB. 27    --        :-=` this library; see the file COPYING.LIB.
28 If not, write to the Free Software Foundation, 28 If not, write to the Free Software Foundation,
29 Inc., 59 Temple Place - Suite 330, 29 Inc., 59 Temple Place - Suite 330,
30 Boston, MA 02111-1307, USA. 30 Boston, MA 02111-1307, USA.
31 31
32*/ 32*/
33 33
34#ifndef XINECONTROL_H 34#ifndef XINECONTROL_H
35#define XINECONTROL_H 35#define XINECONTROL_H
36 36
37#include "lib.h" 37#include "lib.h"
38#include <qobject.h> 38#include <qobject.h>
39 39
40#include "mediaplayerstate.h" 40#include "mediaplayerstate.h"
41 41
42class XineControl : public QObject { 42class XineControl : public QObject {
43 Q_OBJECT 43 Q_OBJECT
44public: 44public:
45 XineControl( XineVideoWidget *xineWidget, 45 XineControl( XineVideoWidget *xineWidget,
46 MediaPlayerState &_mediaPlayerState, 46 MediaPlayerState &_mediaPlayerState,
47 QObject *parent = 0, const char *name =0 ); 47 QObject *parent = 0, const char *name =0 );
48 // note that this constructor takes over ownership of the passed
49 // XINE::Lib object.
50 XineControl( XINE::Lib *xine, XineVideoWidget *xineWidget,
51 MediaPlayerState &_mediaPlayerState,
52 QObject *parent = 0, const char *name =0 );
48 ~XineControl(); 53 ~XineControl();
49 54
50 bool hasVideo() const { return hasVideoChannel; } 55 bool hasVideo() const { return hasVideoChannel; }
51 bool hasAudio() const { return hasAudioChannel; } 56 bool hasAudio() const { return hasAudioChannel; }
52 57
53public slots: 58public slots:
54 void play( const QString& fileName ); 59 void play( const QString& fileName );
55 void stop( bool ); 60 void stop( bool );
56 61
57 /** 62 /**
58 * Pause the media stream 63 * Pause the media stream
59 * @param if pause or not 64 * @param if pause or not
60 */ 65 */
61 void pause( bool ); 66 void pause( bool );
62 67
63 /** 68 /**
64 * Set videos fullscreen 69 * Set videos fullscreen
65 * @param yes or no 70 * @param yes or no
66 */ 71 */
67 void setFullscreen( bool ); 72 void setFullscreen( bool );
68 73
69 /** 74 /**
70 * 75 *
71 */ 76 */
@@ -80,41 +85,43 @@ public slots:
80 */ 85 */
81 void nextMedia(); 86 void nextMedia();
82 87
83 /** 88 /**
84 * Get as much info about the stream from xine as possible 89 * Get as much info about the stream from xine as possible
85 */ 90 */
86 QString getMetaInfo(); 91 QString getMetaInfo();
87 92
88 /** 93 /**
89 * get the error code and "translate" it for the user 94 * get the error code and "translate" it for the user
90 * 95 *
91 */ 96 */
92 QString getErrorCode(); 97 QString getErrorCode();
93 98
94 99
95 void videoResized ( const QSize &s ); 100 void videoResized ( const QSize &s );
96 101
97 /** 102 /**
98 * Set the gamma value of the video output 103 * Set the gamma value of the video output
99 * @param int value between -100 and 100, 0 is original 104 * @param int value between -100 and 100, 0 is original
100 */ 105 */
101 void setGamma( int ); 106 void setGamma( int );
102 107
103private: 108private:
109 void init();
110
104 XINE::Lib *libXine; 111 XINE::Lib *libXine;
105 long m_currentTime; 112 long m_currentTime;
106 long m_position; 113 long m_position;
107 int m_length; 114 int m_length;
108 QString m_fileName; 115 QString m_fileName;
109 bool disabledSuspendScreenSaver : 1; 116 bool disabledSuspendScreenSaver : 1;
110 bool hasVideoChannel : 1; 117 bool hasVideoChannel : 1;
111 bool hasAudioChannel : 1; 118 bool hasAudioChannel : 1;
112 MediaPlayerState &mediaPlayerState; 119 MediaPlayerState &mediaPlayerState;
113 XineVideoWidget *xineVideoWidget; 120 XineVideoWidget *xineVideoWidget;
114 121
115signals: 122signals:
116 void positionChanged( long ); 123 void positionChanged( long );
117}; 124};
118 125
119 126
120#endif 127#endif