diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2013-10-01 10:45:38 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2013-10-01 10:45:38 +0000 |
| commit | 8f368c3ee5f79a984d287f006fba8806c3f64f85 (patch) | |
| tree | b9e1ab02c44aae149d3638e823d07a1452c4b0ab /src/plugins/General/statusicon/statusicon.cpp | |
| parent | 0c84ec04ec0ca8c2f4a2dc5a2edcff145b7fdafe (diff) | |
| download | qmmp-8f368c3ee5f79a984d287f006fba8806c3f64f85.tar.gz qmmp-8f368c3ee5f79a984d287f006fba8806c3f64f85.tar.bz2 qmmp-8f368c3ee5f79a984d287f006fba8806c3f64f85.zip | |
status icon plugin: fixed win32 support
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@3731 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/General/statusicon/statusicon.cpp')
| -rw-r--r-- | src/plugins/General/statusicon/statusicon.cpp | 28 |
1 files changed, 21 insertions, 7 deletions
diff --git a/src/plugins/General/statusicon/statusicon.cpp b/src/plugins/General/statusicon/statusicon.cpp index a0875dd38..19d525c6d 100644 --- a/src/plugins/General/statusicon/statusicon.cpp +++ b/src/plugins/General/statusicon/statusicon.cpp @@ -27,11 +27,10 @@ #include <QEvent> #include <QStyle> #include <QApplication> - #include <qmmp/soundcore.h> #include <qmmpui/mediaplayer.h> #include <qmmpui/uihelper.h> - +#include <qmmpui/metadataformatter.h> #include "qmmptrayicon.h" #include "statusicon.h" @@ -48,11 +47,14 @@ StatusIcon::StatusIcon(QObject *parent) : QObject(parent) m_messageDelay = settings.value("message_delay", 2000).toInt(); m_hideToTray = settings.value("hide_on_close", false).toBool(); m_useStandardIcons = settings.value("use_standard_icons",false).toBool(); - m_tray->showNiceToolTip(settings.value("show_nicetooltip",true).toBool()); + m_tooltip = settings.value("show_nicetooltip",true).toBool(); +#ifdef Q_WS_X11 + m_tray->showNiceToolTip(m_tooltip); +#endif if(m_useStandardIcons) m_tray->setIcon(QApplication::style ()->standardIcon(QStyle::SP_MediaStop)); else - m_tray->setIcon ( QIcon(":/tray_stop.png")); + m_tray->setIcon(QIcon(":/tray_stop.png")); m_tray->show(); settings.endGroup(); //actions @@ -109,6 +111,9 @@ void StatusIcon::setState(Qmmp::State state) m_tray->setIcon(QApplication::style ()->standardIcon(QStyle::SP_MediaStop)); else m_tray->setIcon (QIcon(":/tray_stop.png")); +#ifndef Q_WS_X11 + m_tray->setToolTip(""); +#endif break; } } @@ -116,15 +121,24 @@ void StatusIcon::setState(Qmmp::State state) void StatusIcon::showMetaData() { - QString message = m_core->metaData(Qmmp::ARTIST) + " - " + m_core->metaData(Qmmp::TITLE); - if (message.startsWith (" - ") || message.endsWith (" - ")) - message.remove(" - "); + MetaDataFormatter f("%p%if(%p&%t, - ,)%t"); + QString message = f.parse(m_core->metaData()); if (message.isEmpty()) message = m_core->metaData(Qmmp::URL).section('/',-1); if (m_showMessage) m_tray->showMessage (tr("Now Playing"), message, QSystemTrayIcon::Information, m_messageDelay); +#ifndef Q_WS_X11 + if(m_tooltip) + { + MetaDataFormatter f("%p%if(%p&%t, - ,)%t"); + QString message = f.parse(m_core->metaData()); + if(message.isEmpty()) + message = m_core->metaData(Qmmp::URL).section('/',-1); + m_tray->setToolTip(f.parse(m_core->metaData())); + } +#endif } void StatusIcon::trayActivated(QSystemTrayIcon::ActivationReason reason) |
