Index: trunk/Mars/mbase/MEvtLoop.cc
===================================================================
--- trunk/Mars/mbase/MEvtLoop.cc	(revision 19358)
+++ trunk/Mars/mbase/MEvtLoop.cc	(revision 19359)
@@ -299,6 +299,15 @@
         switch (fDisplay->CheckStatus())
         {
+        case MStatusDisplay::kLoopStep:
+            // Skip if this is a single step and nothing is to be displayed
+            if (looprc==kCONTINUE)
+                break;
+            //**FALLTHROU**/
         case MStatusDisplay::kLoopPause:
-            fDisplay->SetStatusLine1(MString::Format("Paused after %d", num-1));
+            // Output current position in loop
+            fDisplay->SetStatusLine1(MString::Format("Paused after index %d", num-1));
+            // In case of a singel step go back to pause mode
+            fDisplay->SetPause();
+            // Wait until the user turns of pause mode
             while (fDisplay && fDisplay->CheckStatus()==MStatusDisplay::kLoopPause)
             {
@@ -306,12 +315,8 @@
                 gSystem->Sleep(1);
             }
-            // FALLTHROUGH
-        case MStatusDisplay::kLoopStep:
-            if (fDisplay && fDisplay->CheckStatus()==MStatusDisplay::kLoopStep && looprc!=kCONTINUE)
-            {
-                //fDisplay->ClearStatus();
-                fDisplay->SetPause();
-            }
-            // FALLTHROUGH
+            if (fDisplay->CheckStatus()==MStatusDisplay::kLoopStep)
+                break;
+            return ProcessGuiEvents(num, looprc);
+
         case MStatusDisplay::kLoopNone:
             break;
