summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlvw <lvw@e10066b5-e1e2-0310-b819-94efdf66514b>2004-10-09 10:47:45 +0000
committerlvw <lvw@e10066b5-e1e2-0310-b819-94efdf66514b>2004-10-09 10:47:45 +0000
commit053405b32dae0cde8c7bb10df366cb5bf5a73f6c (patch)
tree669202669a7fe02828a634b4e937b406d3dde0e1
parent852203bca4fc6b391e6d5533aaec2bfce2a036df (diff)
downloadvdr-plugin-muggle-053405b32dae0cde8c7bb10df366cb5bf5a73f6c.tar.gz
vdr-plugin-muggle-053405b32dae0cde8c7bb10df366cb5bf5a73f6c.tar.bz2
Added loop and shuffle mode handling to player control
git-svn-id: https://vdr-muggle.svn.sourceforge.net/svnroot/vdr-muggle/trunk@215 e10066b5-e1e2-0310-b819-94efdf66514b
-rw-r--r--muggle-plugin/vdr_player.c78
1 files changed, 78 insertions, 0 deletions
diff --git a/muggle-plugin/vdr_player.c b/muggle-plugin/vdr_player.c
index 41d2a53..f30a53d 100644
--- a/muggle-plugin/vdr_player.c
+++ b/muggle-plugin/vdr_player.c
@@ -1118,6 +1118,84 @@ eOSState mgPlayerControl::ProcessKey(eKeys key)
{
Backward();
} break;
+ case kRed:
+ {
+ if( !m_visible && m_player )
+ {
+ mgPlaylist *pl = m_player->GetPlaylist();
+
+ std::string s;
+ switch( pl->toggleLoopMode() )
+ {
+ case mgPlaylist::LM_NONE:
+ {
+ s = tr( "Loop mode off" );
+ } break;
+ case mgPlaylist::LM_SINGLE:
+ {
+ s = tr( "Loop mode single" );
+ } break;
+ case mgPlaylist::LM_FULL:
+ {
+ s = tr( "Loop mode full" );
+ } break;
+ default:
+ {
+ s = tr( "Unknown loop mode" );
+ }
+#if VDRVERSNUM >= 10307
+ Skins.Message(mtInfo, s.c_str() );
+ Skins.Flush();
+#else
+ Interface->Status( s.c_str() );
+ Interface->Flush();
+#endif
+ }
+ }
+ else
+ {
+ // toggle progress display between simple and detail
+ }
+ } break;
+ case kGreen:
+ {
+ if( !m_visible && m_player )
+ {
+ mgPlaylist *pl = m_player->GetPlaylist();
+
+ std::string s;
+ switch( pl->toggleShuffleMode() )
+ {
+ case mgPlaylist::SM_NONE:
+ {
+ s = tr( "Shuffle mode off" );
+ } break;
+ case mgPlaylist::SM_NORMAL:
+ {
+ s = tr( "Shuffle mode normal" );
+ } break;
+ case mgPlaylist::SM_PARTY:
+ {
+ s = tr( "Shuffle mode party" );
+ } break;
+ default:
+ {
+ s = tr( "Unknown shuffle mode" );
+ }
+#if VDRVERSNUM >= 10307
+ Skins.Message(mtInfo, s.c_str() );
+ Skins.Flush();
+#else
+ Interface->Status( s.c_str() );
+ Interface->Flush();
+#endif
+ }
+ }
+ else
+ {
+ // toggle progress display between playlist and single track
+ }
+ } break;
case kPause:
case kYellow:
{