diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2011-02-22 19:07:37 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2011-02-22 19:07:37 +0000 |
| commit | 2826871c0459086e9ea299f4e4a439cc5ba65006 (patch) | |
| tree | 606969cf7948afd2247fcbee6c7cdaf56312ec7b /src | |
| parent | c6802d917ad4c0de10dd768a3dfb95975518c1b3 (diff) | |
| download | qmmp-2826871c0459086e9ea299f4e4a439cc5ba65006.tar.gz qmmp-2826871c0459086e9ea299f4e4a439cc5ba65006.tar.bz2 qmmp-2826871c0459086e9ea299f4e4a439cc5ba65006.zip | |
added psi-plus notification (Closes issue 421)
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@2069 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src')
| -rw-r--r-- | src/plugins/General/notifier/notifier.cpp | 47 |
1 files changed, 37 insertions, 10 deletions
diff --git a/src/plugins/General/notifier/notifier.cpp b/src/plugins/General/notifier/notifier.cpp index 89bbad0e1..05f98fd7e 100644 --- a/src/plugins/General/notifier/notifier.cpp +++ b/src/plugins/General/notifier/notifier.cpp @@ -33,7 +33,6 @@ Notifier::Notifier(QObject *parent) m_popupWidget = 0; m_l = -1; m_r = -1; - QFile::remove(QDir::homePath()+"/.psi/tune"); QSettings settings(Qmmp::configFile(), QSettings::IniFormat); settings.beginGroup("Notifier"); m_desktop = settings.value("song_notification", true).toBool(); @@ -46,6 +45,12 @@ Notifier::Notifier(QObject *parent) connect (m_core, SIGNAL(volumeChanged(int, int)), SLOT(showVolume(int, int))); if (m_core->state() == Qmmp::Playing) //test message showMetaData(); + + if(m_psi) //clear psi notification + { + QFile::remove(QDir::homePath()+"/.psi/tune"); + QFile::remove(QDir::homePath()+"/.psi-plus/tune"); + } } Notifier::~Notifier() @@ -62,7 +67,11 @@ void Notifier::setState(Qmmp::State state) } case Qmmp::Stopped: { - QFile::remove(QDir::homePath()+"/.psi/tune"); + if (m_psi) + { + QFile::remove(QDir::homePath()+"/.psi/tune"); + QFile::remove(QDir::homePath()+"/.psi-plus/tune"); + } break; } } @@ -79,14 +88,32 @@ void Notifier::showMetaData() if (!m_psi) return; - QFile file(QDir::homePath()+"/.psi/tune"); //psi file - file.open(QIODevice::WriteOnly | QIODevice::Text); - file.write(m_core->metaData(Qmmp::TITLE).toUtf8()+"\n"); - file.write(m_core->metaData(Qmmp::ARTIST).toUtf8()+"\n"); - file.write(m_core->metaData(Qmmp::ALBUM).toUtf8()+"\n"); - file.write(m_core->metaData(Qmmp::TRACK).toUtf8()+"\n"); - file.write(QString("%1").arg(m_core->totalTime()/1000).toUtf8()+"\n"); - file.close(); + + QByteArray data; + data.append(m_core->metaData(Qmmp::TITLE).toUtf8()+"\n"); + data.append(m_core->metaData(Qmmp::ARTIST).toUtf8()+"\n"); + data.append(m_core->metaData(Qmmp::ALBUM).toUtf8()+"\n"); + data.append(m_core->metaData(Qmmp::TRACK).toUtf8()+"\n"); + data.append(QString("%1").arg(m_core->totalTime()/1000).toUtf8()+"\n"); + + QDir psi_dir(QDir::homePath()+"/.psi/"); + if(psi_dir.exists()) + { + QFile file(QDir::homePath()+"/.psi/tune"); + file.open(IODevice::WriteOnly | QIODevice::Text || QIODevice::Truncate); + file.write(data); + file.close(); + } + + QDir psi_plus_dir(QDir::homePath()+"/.psi-plus/"); + if(psi_plus_dir.exists()) + { + QFile file(QDir::homePath()+"/.psi-plus/tune"); + file.open(IODevice::WriteOnly | QIODevice::Text || QIODevice::Truncate); + file.write(data); + file.close(); + } + } void Notifier::showVolume(int l, int r) |
