diff --git a/code/ryzom/client/data/gamedev/interfaces_v3/compass.xml b/code/ryzom/client/data/gamedev/interfaces_v3/compass.xml
index 969ce332c..fbc8495d8 100644
--- a/code/ryzom/client/data/gamedev/interfaces_v3/compass.xml
+++ b/code/ryzom/client/data/gamedev/interfaces_v3/compass.xml
@@ -17,6 +17,9 @@
+
@@ -37,11 +40,11 @@
+ ondblclick_l="music_player" params_dblclick_l="song=#index" />
-
+
@@ -50,6 +53,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ params_l="stop"
+ tooltip="uiMP3Stop" />
+
+
= 0 && index < (sint)_Songs.size())
@@ -208,6 +209,8 @@ void CMusicPlayer::play (sint index)
_CurrentSong = _Songs[_CurrentSongIndex];
updatePlaylist(prevSongIndex);
+
+ NLGUI::CDBManager::getInstance()->getDbProp("UI:TEMP:MP3_PLAYING")->setValueBool(true);
}
}
@@ -217,6 +220,7 @@ void CMusicPlayer::pause ()
{
if(!SoundMngr)
return;
+
// pause the music only if we are really playing (else risk to pause a background music!)
if(_State==Playing)
{
@@ -225,6 +229,8 @@ void CMusicPlayer::pause ()
if (_PlayStart > 0)
_PauseTime = CTime::getLocalTime() - _PlayStart;
+
+ NLGUI::CDBManager::getInstance()->getDbProp("UI:TEMP:MP3_PLAYING")->setValueBool(false);
}
}
@@ -234,11 +240,14 @@ void CMusicPlayer::stop ()
{
if(!SoundMngr)
return;
+
// stop the music only if we are really playing (else risk to stop a background music!)
SoundMngr->stopMusic(0);
_State = Stopped;
_PlayStart = 0;
_PauseTime = 0;
+
+ NLGUI::CDBManager::getInstance()->getDbProp("UI:TEMP:MP3_PLAYING")->setValueBool(false);
}
// ***************************************************************************
@@ -446,6 +455,8 @@ public:
MusicPlayer.previous();
else if (Params == "play")
MusicPlayer.play();
+ else if (Params == "stop")
+ MusicPlayer.stop();
else if (Params == "pause")
MusicPlayer.pause();
else if (Params == "next")