aboutsummaryrefslogtreecommitdiff
path: root/src/qmmpui
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2011-06-29 16:21:58 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2011-06-29 16:21:58 +0000
commitb2e1612aa76d5aead3f6a471154f7678a3b01b28 (patch)
tree3cfbfe9196a68cdccd5bb08df741a2dc27dd1708 /src/qmmpui
parent0c29a6aeed1b5315fafe3faa7276ee56cc690755 (diff)
downloadqmmp-b2e1612aa76d5aead3f6a471154f7678a3b01b28.tar.gz
qmmp-b2e1612aa76d5aead3f6a471154f7678a3b01b28.tar.bz2
qmmp-b2e1612aa76d5aead3f6a471154f7678a3b01b28.zip
moved some code inside libqmmpui
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@2250 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/qmmpui')
-rw-r--r--src/qmmpui/mediaplayer.cpp26
-rw-r--r--src/qmmpui/mediaplayer.h6
-rw-r--r--src/qmmpui/playlistmanager.cpp13
-rw-r--r--src/qmmpui/playlistmanager.h5
4 files changed, 29 insertions, 21 deletions
diff --git a/src/qmmpui/mediaplayer.cpp b/src/qmmpui/mediaplayer.cpp
index 9b1636697..1bdac91f4 100644
--- a/src/qmmpui/mediaplayer.cpp
+++ b/src/qmmpui/mediaplayer.cpp
@@ -32,6 +32,8 @@ MediaPlayer *MediaPlayer::m_instance = 0;
MediaPlayer::MediaPlayer(QObject *parent)
: QObject(parent)
{
+ if(m_instance)
+ qFatal("StateHandler: only one instance is allowed");
m_instance = this;
m_pl_manager = 0;
m_core = 0;
@@ -42,28 +44,22 @@ MediaPlayer::MediaPlayer(QObject *parent)
QString locale = Qmmp::systemLanguageID();
translator->load(QString(":/libqmmpui_") + locale);
qApp->installTranslator(translator);
+ m_core = new SoundCore(this);
+ m_pl_manager = new PlayListManager(this);
+ connect(m_core, SIGNAL(nextTrackRequest()), SLOT(updateNextUrl()));
+ connect(m_core, SIGNAL(finished()), SLOT(playNext()));
+ connect(m_core, SIGNAL(stateChanged(Qmmp::State)), SLOT(processState(Qmmp::State)));
+ connect(m_core, SIGNAL(metaDataChanged()),SLOT(showMetaData()));
}
MediaPlayer::~MediaPlayer()
-{}
-
-MediaPlayer* MediaPlayer::instance()
{
- return m_instance;
+ m_instance = 0;
}
-void MediaPlayer::initialize(SoundCore *core, PlayListManager *pl_manager)
+MediaPlayer* MediaPlayer::instance()
{
- Q_CHECK_PTR(core);
- Q_CHECK_PTR(pl_manager);
- m_core = core;
- m_pl_manager = pl_manager;
- m_repeat = false;
- m_noPlaylistAdvance = false;
- connect(m_core, SIGNAL(nextTrackRequest()), SLOT(updateNextUrl()));
- connect(m_core, SIGNAL(finished()), SLOT(playNext()));
- connect(m_core, SIGNAL(stateChanged(Qmmp::State)), SLOT(processState(Qmmp::State)));
- connect(m_core, SIGNAL(metaDataChanged()),SLOT(showMetaData()));
+ return m_instance;
}
PlayListManager *MediaPlayer::playListManager()
diff --git a/src/qmmpui/mediaplayer.h b/src/qmmpui/mediaplayer.h
index 8c8a97e5a..941295d1a 100644
--- a/src/qmmpui/mediaplayer.h
+++ b/src/qmmpui/mediaplayer.h
@@ -46,12 +46,6 @@ public:
*/
static MediaPlayer* instance();
/*!
- * Prepares object for usage.
- * @param core Pointer to the SoundCore object.
- * @param pl_mamager Playlist manager.
- */
- void initialize(SoundCore *core, PlayListManager *pl_mamager);
- /*!
* Returns playlist manager pointer
*/
PlayListManager *playListManager();
diff --git a/src/qmmpui/playlistmanager.cpp b/src/qmmpui/playlistmanager.cpp
index 85ec93855..02b82c07d 100644
--- a/src/qmmpui/playlistmanager.cpp
+++ b/src/qmmpui/playlistmanager.cpp
@@ -27,8 +27,14 @@
#include "playlistsettings_p.h"
#include "playlistmanager.h"
+
+PlayListManager *PlayListManager::m_instance = 0;
+
PlayListManager::PlayListManager(QObject *parent) : QObject(parent)
{
+ if(m_instance)
+ qFatal("PlayListManager: only one instance is allowed");
+ m_instance = this;
m_current = 0;
m_selected = 0;
m_repeatable = false;
@@ -40,8 +46,15 @@ PlayListManager::~PlayListManager()
{
writePlayLists();
delete PlaylistSettings::instance();
+ m_instance = 0;
+}
+
+PlayListManager* PlayListManager::instance()
+{
+ return m_instance;
}
+
PlayListModel *PlayListManager::selectedPlayList() const
{
return m_selected;
diff --git a/src/qmmpui/playlistmanager.h b/src/qmmpui/playlistmanager.h
index b8559b05b..fde5f4270 100644
--- a/src/qmmpui/playlistmanager.h
+++ b/src/qmmpui/playlistmanager.h
@@ -40,6 +40,10 @@ public:
*/
~PlayListManager();
/*!
+ * Returns a pointer to the object's instance.
+ */
+ static PlayListManager* instance();
+ /*!
* Returns a list of all playlists.
*/
QList <PlayListModel *> playLists() const;
@@ -293,6 +297,7 @@ public slots:
private:
void readPlayLists();
void writePlayLists();
+ static PlayListManager* m_instance;
QList <PlayListModel *> m_models;
PlayListModel *m_current;
PlayListModel *m_selected;