summaryrefslogtreecommitdiff
path: root/noncore
authorsimon <simon>2002-12-02 23:22:22 (UTC)
committer simon <simon>2002-12-02 23:22:22 (UTC)
commit24a00c944aace8d7627c1eb0d7cc0ebf40731c57 (patch) (side-by-side diff)
tree3ae5406e15f169849a50e12fec01faa4cfc035e3 /noncore
parent779219b813f0eba82a8d9236fafd28dbafc594d1 (diff)
downloadopie-24a00c944aace8d7627c1eb0d7cc0ebf40731c57.zip
opie-24a00c944aace8d7627c1eb0d7cc0ebf40731c57.tar.gz
opie-24a00c944aace8d7627c1eb0d7cc0ebf40731c57.tar.bz2
- AudioWidget and VideoWidget are no more singletons via audioUI and
videoUI. this allows switching skins at run-time (the appropriate connections are already made and it works quite nicely :)
Diffstat (limited to 'noncore') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/multimedia/opieplayer2/main.cpp11
-rw-r--r--noncore/multimedia/opieplayer2/mediaplayer.cpp39
-rw-r--r--noncore/multimedia/opieplayer2/mediaplayer.h9
-rw-r--r--noncore/multimedia/opieplayer2/playlistwidget.cpp14
-rw-r--r--noncore/multimedia/opieplayer2/playlistwidget.h3
-rw-r--r--noncore/multimedia/opieplayer2/xinecontrol.cpp5
-rw-r--r--noncore/multimedia/opieplayer2/xinecontrol.h6
7 files changed, 56 insertions, 31 deletions
diff --git a/noncore/multimedia/opieplayer2/main.cpp b/noncore/multimedia/opieplayer2/main.cpp
index 7d11ca0..7fc7b94 100644
--- a/noncore/multimedia/opieplayer2/main.cpp
+++ b/noncore/multimedia/opieplayer2/main.cpp
@@ -4,4 +4,2 @@
#include "playlistwidget.h"
-#include "audiowidget.h"
-#include "videowidget.h"
#include "mediaplayer.h"
@@ -9,4 +7,2 @@
PlayListWidget *playList;
-AudioWidget *audioUI;
-VideoWidget *videoUI;
@@ -19,8 +15,5 @@ int main(int argc, char **argv) {
pl.showMaximized();
- AudioWidget aw( st, 0, "audioUI" );
- audioUI = &aw;
- VideoWidget vw( st, 0, "videoUI" );
- videoUI = &vw;
- a.processEvents();
MediaPlayer mp( st, 0, "mediaPlayer" );
+ QObject::connect( &pl, SIGNAL( skinSelected() ),
+ &mp, SLOT( recreateAudioAndVideoWidgets() ) );
diff --git a/noncore/multimedia/opieplayer2/mediaplayer.cpp b/noncore/multimedia/opieplayer2/mediaplayer.cpp
index eccb5d9..a9c74c4 100644
--- a/noncore/multimedia/opieplayer2/mediaplayer.cpp
+++ b/noncore/multimedia/opieplayer2/mediaplayer.cpp
@@ -26,3 +26,2 @@
-extern AudioWidget *audioUI;
extern VideoWidget *videoUI;
@@ -36,2 +35,7 @@ MediaPlayer::MediaPlayer( MediaPlayerState &_mediaPlayerState, QObject *parent,
+ audioUI = 0;
+ videoUI = 0;
+ xineControl = 0;
+ recreateAudioAndVideoWidgets();
+
fd=-1;fl=-1;
@@ -51,14 +55,3 @@ MediaPlayer::MediaPlayer( MediaPlayerState &_mediaPlayerState, QObject *parent,
- connect( audioUI, SIGNAL( moreClicked() ), this, SLOT( startIncreasingVolume() ) );
- connect( audioUI, SIGNAL( lessClicked() ), this, SLOT( startDecreasingVolume() ) );
- connect( audioUI, SIGNAL( moreReleased() ), this, SLOT( stopChangingVolume() ) );
- connect( audioUI, SIGNAL( lessReleased() ), this, SLOT( stopChangingVolume() ) );
-
- connect( videoUI, SIGNAL( moreClicked() ), this, SLOT( startIncreasingVolume() ) );
- connect( videoUI, SIGNAL( lessClicked() ), this, SLOT( startDecreasingVolume() ) );
- connect( videoUI, SIGNAL( moreReleased() ), this, SLOT( stopChangingVolume() ) );
- connect( videoUI, SIGNAL( lessReleased() ), this, SLOT( stopChangingVolume() ) );
-
volControl = new VolumeControl;
- xineControl = new XineControl( mediaPlayerState );
Config cfg( "OpiePlayer" );
@@ -353 +346,23 @@ void MediaPlayer::cleanUp() {// this happens on closing
}
+
+void MediaPlayer::recreateAudioAndVideoWidgets()
+{
+ delete xineControl;
+ delete audioUI;
+ delete videoUI;
+ audioUI = new AudioWidget( mediaPlayerState, 0, "audioUI" );
+ videoUI = new VideoWidget( mediaPlayerState, 0, "videoUI" );
+
+ connect( audioUI, SIGNAL( moreClicked() ), this, SLOT( startIncreasingVolume() ) );
+ connect( audioUI, SIGNAL( lessClicked() ), this, SLOT( startDecreasingVolume() ) );
+ connect( audioUI, SIGNAL( moreReleased() ), this, SLOT( stopChangingVolume() ) );
+ connect( audioUI, SIGNAL( lessReleased() ), this, SLOT( stopChangingVolume() ) );
+
+ connect( videoUI, SIGNAL( moreClicked() ), this, SLOT( startIncreasingVolume() ) );
+ connect( videoUI, SIGNAL( lessClicked() ), this, SLOT( startDecreasingVolume() ) );
+ connect( videoUI, SIGNAL( moreReleased() ), this, SLOT( stopChangingVolume() ) );
+ connect( videoUI, SIGNAL( lessReleased() ), this, SLOT( stopChangingVolume() ) );
+
+ xineControl = new XineControl( videoUI, mediaPlayerState );
+}
+
diff --git a/noncore/multimedia/opieplayer2/mediaplayer.h b/noncore/multimedia/opieplayer2/mediaplayer.h
index 6aeac7c..0d6f722 100644
--- a/noncore/multimedia/opieplayer2/mediaplayer.h
+++ b/noncore/multimedia/opieplayer2/mediaplayer.h
@@ -44,2 +44,4 @@ class VolumeControl;
class MediaPlayerState;
+class AudioWidget;
+class VideoWidget;
@@ -50,2 +52,6 @@ public:
~MediaPlayer();
+
+public slots:
+ void recreateAudioAndVideoWidgets();
+
private slots:
@@ -66,2 +72,3 @@ protected:
private:
+
bool isBlanked, l, r;
@@ -72,2 +79,4 @@ private:
MediaPlayerState &mediaPlayerState;
+ AudioWidget *audioUI;
+ VideoWidget *videoUI;
};
diff --git a/noncore/multimedia/opieplayer2/playlistwidget.cpp b/noncore/multimedia/opieplayer2/playlistwidget.cpp
index 7ba342b..6bda71e 100644
--- a/noncore/multimedia/opieplayer2/playlistwidget.cpp
+++ b/noncore/multimedia/opieplayer2/playlistwidget.cpp
@@ -1097,8 +1097,10 @@ void PlayListWidget::skinsMenuActivated( int item ) {
- Config cfg( "OpiePlayer" );
- cfg.setGroup("Options");
- cfg.writeEntry("Skin", skinsMenu->text( item ) );
- QMessageBox::warning( this, tr( "OpiePlayer" ),
- tr( "You must <b>restart</b> Opieplayer<br>to see your changes." ) );
-}
+ {
+ Config cfg( "OpiePlayer" );
+ cfg.setGroup("Options");
+ cfg.writeEntry("Skin", skinsMenu->text( item ) );
+ }
+
+ emit skinSelected();
+}
diff --git a/noncore/multimedia/opieplayer2/playlistwidget.h b/noncore/multimedia/opieplayer2/playlistwidget.h
index 3f52e63..ad5c9a3 100644
--- a/noncore/multimedia/opieplayer2/playlistwidget.h
+++ b/noncore/multimedia/opieplayer2/playlistwidget.h
@@ -96,2 +96,5 @@ protected:
+signals:
+ void skinSelected();
+
private:
diff --git a/noncore/multimedia/opieplayer2/xinecontrol.cpp b/noncore/multimedia/opieplayer2/xinecontrol.cpp
index 071ef7c..b4ae783 100644
--- a/noncore/multimedia/opieplayer2/xinecontrol.cpp
+++ b/noncore/multimedia/opieplayer2/xinecontrol.cpp
@@ -42,5 +42,4 @@
-extern VideoWidget *videoUI;
-XineControl::XineControl( MediaPlayerState &_mediaPlayerState, QObject *parent, const char *name )
- : QObject( parent, name ), mediaPlayerState( _mediaPlayerState ) {
+XineControl::XineControl( VideoWidget *videoWidget, MediaPlayerState &_mediaPlayerState, QObject *parent, const char *name )
+ : QObject( parent, name ), mediaPlayerState( _mediaPlayerState ), videoUI( videoWidget ) {
diff --git a/noncore/multimedia/opieplayer2/xinecontrol.h b/noncore/multimedia/opieplayer2/xinecontrol.h
index 00486f2..24e966b 100644
--- a/noncore/multimedia/opieplayer2/xinecontrol.h
+++ b/noncore/multimedia/opieplayer2/xinecontrol.h
@@ -41,2 +41,4 @@
+class VideoWidget;
+
class XineControl : public QObject {
@@ -44,3 +46,3 @@ class XineControl : public QObject {
public:
- XineControl( MediaPlayerState &_mediaPlayerState, QObject *parent = 0, const char *name =0 );
+ XineControl( VideoWidget *videoWidget, MediaPlayerState &_mediaPlayerState, QObject *parent = 0, const char *name =0 );
~XineControl();
@@ -115,2 +117,4 @@ signals:
+private:
+ VideoWidget *videoUI;
};