changeset 198:4568c479541c

Make 'm' key mute all but selected active channel.
author Matti Hamalainen <ccr@tnsp.org>
date Sat, 06 Oct 2012 21:21:33 +0300
parents d3a749f7b54c
children 623e58df95c1
files ppl.c
diffstat 1 files changed, 16 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/ppl.c	Sat Oct 06 21:01:24 2012 +0300
+++ b/ppl.c	Sat Oct 06 21:21:33 2012 +0300
@@ -507,6 +507,15 @@
 }
 
 
+void dmMuteChannels(int nchannel)
+{
+    int i;
+    for (i = 0; i < engine.mod->nchannels; i++)
+        jvmMute(engine.dev, i, TRUE);
+
+    jvmMute(engine.dev, nchannel, FALSE);
+}
+
 int main(int argc, char *argv[])
 {
     BOOL initSDL = FALSE;
@@ -662,11 +671,7 @@
 
     if (optMuteOChannels >= 0 && optMuteOChannels < engine.mod->nchannels)
     {
-        int i;
-        for (i = 0; i < engine.mod->nchannels; i++)
-            jvmMute(engine.dev, i, TRUE);
-
-        jvmMute(engine.dev, optMuteOChannels, FALSE);
+        dmMuteChannels(optMuteOChannels);
         engine.actChannel = optMuteOChannels;
     }
 
@@ -721,6 +726,11 @@
                         jvmMute(engine.dev, engine.actChannel, !jvmGetMute(engine.dev, engine.actChannel));
                         force = TRUE;
                         break;
+                    
+                    case SDLK_m:
+                        dmMuteChannels(engine.actChannel);
+                        force = TRUE;
+                        break;
 
                     case SDLK_PAGEUP:
                         JSS_LOCK(engine.dev);
@@ -744,6 +754,7 @@
                         engine.optVFlags ^= SDL_FULLSCREEN;
                         if (!dmInitializeVideo())
                             goto error_exit;
+                        force = TRUE;
                         break;
 
                     default: