Index: trunk/MagicSoft/Mars/Changelog
===================================================================
--- trunk/MagicSoft/Mars/Changelog	(revision 3824)
+++ trunk/MagicSoft/Mars/Changelog	(revision 3825)
@@ -23,18 +23,22 @@
  2004/04/23: Markus Gaug
 
-  * mcalib/MHCalibrationCam.cc
-    - fixed a bug in the ReInit() for the number of average events in 
-      each area index and sector
+   * mcalib/MHCalibrationCam.cc
+     - fixed a bug in the ReInit() for the number of average events in 
+       each area index and sector
+
 
 
  2004/04/23: Thomas Bretz
 
-  * */Makefile:
-    - added some more mpedestal
-
-  * mreport/MReportRun.cc:
-    - changed to work with the latest version of report-files
-      --> This will make it incompatible with older report files
-          (for this use older Mars versions for merpping)
+   * */Makefile:
+     - added some more mpedestal
+
+   * mreport/MReportRun.cc:
+     - changed to work with the latest version of report-files
+       --> This will make it incompatible with older report files
+           (for this use older Mars versions for merpping)
+
+   * mbase/MStatusDisplay.[h,cc]:
+     - added combo-box to surf through tabs in MARS-tab
 
 
Index: trunk/MagicSoft/Mars/mbase/MStatusDisplay.cc
===================================================================
--- trunk/MagicSoft/Mars/mbase/MStatusDisplay.cc	(revision 3824)
+++ trunk/MagicSoft/Mars/mbase/MStatusDisplay.cc	(revision 3825)
@@ -86,4 +86,5 @@
 #include <TGButton.h>             // TGPictureButton
 #include <TGTextView.h>           // TGTextView
+#include <TGComboBox.h>           // TGComboBox
 #include <TGStatusBar.h>          // TGStatusBar
 #include <TGFileDialog.h>         // TGFileDialog
@@ -306,4 +307,11 @@
 }
 
+char *rot128(char *c)
+{
+    char *rc=c;
+    while (*c) *c++ += 128;
+    return rc;
+}
+
 // --------------------------------------------------------------------------
 //
@@ -314,8 +322,23 @@
     // Create Tab1
     TGCompositeFrame *f = fTab->AddTab("-=MARS=-");
+
+    // Add list of tabs
+
+    TGComboBox *filter = new TGComboBox(f, kTabs);
+    fList->Add(filter);
+    filter->Associate(this);
+    filter->AddEntry("-=MARS=-", 0);
+    filter->Select(0);
+
+    TGLayoutHints *lay3 = new TGLayoutHints(kLHintsCenterX|kLHintsTop, 10, 10, 10, 5);
+    fList->Add(lay3);
+    f->AddFrame(filter, lay3);
 
     // Add MARS version
     TGLabel *l = new TGLabel(f, Form("Official Release: V%s", MARSVER));
     fList->Add(l);
+
+    filter->SetWidth(l->GetWidth());
+    filter->SetHeight(4*l->GetHeight()/3);
 
     TGLayoutHints *layb = new TGLayoutHints(kLHintsCenterX|kLHintsTop, 10, 10, 5, 5);
@@ -358,5 +381,6 @@
     fList->Add(layc);
 
-    l = new TGLabel(f, "<< Thomas Bretz >>");
+    char *txt = "<< Thomas Bretz >>";
+    l = new TGLabel(f, txt);
     fList->Add(l);
     f->AddFrame(l, layc);
@@ -385,5 +409,5 @@
 
         // Create Tab1
-        TGCompositeFrame *f = fTab->AddTab("-Logbook-");
+        TGCompositeFrame *f = AddRawTab("-Logbook-");//fTab->AddTab("-Logbook-");
 
         // Create Text View
@@ -786,4 +810,7 @@
     TGCompositeFrame *f = fTab->AddTab(name);
 
+    TGComboBox *box = (TGComboBox*)fList->FindWidget(kTabs);
+    box->AddEntry(name, box->GetListBox()->GetNumberOfEntries());
+
     // layout and map new tab
     Layout();
@@ -868,4 +895,7 @@
     c.Connect("ProcessedEvent(Int_t,Int_t,Int_t,TObject*)",
               "MStatusDisplay", this, "EventInfo(Int_t,Int_t,Int_t,TObject*)");
+
+    TGComboBox *box = (TGComboBox*)fList->FindWidget(kTabs);
+    box->AddEntry(name, box->GetListBox()->GetNumberOfEntries());
 
     // layout and map new tab
@@ -1039,4 +1069,14 @@
     fTab->RemoveTab(i);
     fTab->SetTab(0);
+
+    TGComboBox *box = (TGComboBox*)fList->FindWidget(kTabs);
+    box->RemoveEntry(i);
+    for (int j=i; j<box->GetListBox()->GetNumberOfEntries(); j++)
+    {
+        TGTextLBEntry *entry = (TGTextLBEntry *)box->GetListBox()->Select(j+1, kFALSE);
+        box->AddEntry(entry->GetText()->GetString(), j);
+        box->RemoveEntry(j+1);
+    }
+    box->GetListBox()->Select(0);
 
     // Looks strange...
@@ -1283,4 +1323,8 @@
         */
         return kTRUE;
+    case kCM_COMBOBOX: // 7
+        if (mp1==kTabs)
+            fTab->SetTab(mp2);
+        return kTRUE;
 #ifdef DEBUG
     case kCM_MENUSELECT: // 2
@@ -1302,8 +1346,4 @@
     case kCM_LISTBOX: // 6
         cout << "Command-Listbox #" << mp1 << " (LineId #" << mp2 << ")" << endl;
-        return kTRUE;
-
-    case kCM_COMBOBOX: // 7
-        cout << "Command-ComboBox." << endl;
         return kTRUE;
     default:
Index: trunk/MagicSoft/Mars/mbase/MStatusDisplay.h
===================================================================
--- trunk/MagicSoft/Mars/mbase/MStatusDisplay.h	(revision 3824)
+++ trunk/MagicSoft/Mars/mbase/MStatusDisplay.h	(revision 3825)
@@ -51,6 +51,6 @@
         // kPic
         kPicMagic, kPicMars,
-        // kPic
-        kSearch
+        // kGui
+        kSearch, kTabs
     } Status_t;
 
