Index: /trunk/MagicSoft/Mars/Changelog
===================================================================
--- /trunk/MagicSoft/Mars/Changelog	(revision 9409)
+++ /trunk/MagicSoft/Mars/Changelog	(revision 9410)
@@ -22,4 +22,13 @@
    * resources/starguider01000534.txt:
      - added
+
+   * mbase/MStatusDisplay.cc:
+     - if no MStatusArray is found now all object are drawn
+
+   * mfileio/MWriteRootFile.[h,cc]:
+     - trees to be copied can now be made optional
+
+   * mhbase/MH.cc:
+     - included TProfile2D for newer root versions
 
 
Index: /trunk/MagicSoft/Mars/NEWS
===================================================================
--- /trunk/MagicSoft/Mars/NEWS	(revision 9409)
+++ /trunk/MagicSoft/Mars/NEWS	(revision 9410)
@@ -2,4 +2,10 @@
 
 == <cvs> ==
+
+ ;showplot:
+
+   * If a file without a MStatusArray is opened all object (not just
+     canvases) found in the file are drawn. Note that this may result
+     in empty tabs.
 
  ;ganymed:
Index: /trunk/MagicSoft/Mars/mbase/MStatusDisplay.cc
===================================================================
--- /trunk/MagicSoft/Mars/mbase/MStatusDisplay.cc	(revision 9409)
+++ /trunk/MagicSoft/Mars/mbase/MStatusDisplay.cc	(revision 9410)
@@ -2322,5 +2322,11 @@
             gFile->GetObject(key->GetName(), c);
             if (!c)
-                break;
+            {
+                AddTab(key->GetName(), key->GetTitle());
+                TObject *obj = gFile->Get(key->GetName());
+                obj->SetBit(kCanDelete);
+                obj->Draw();
+                continue;
+            }
 
             if (list.GetEntries()==0)
Index: /trunk/MagicSoft/Mars/mfileio/MWriteRootFile.cc
===================================================================
--- /trunk/MagicSoft/Mars/mfileio/MWriteRootFile.cc	(revision 9409)
+++ /trunk/MagicSoft/Mars/mfileio/MWriteRootFile.cc	(revision 9410)
@@ -458,7 +458,11 @@
 // completely from one file to another one you can use this
 //
-void MWriteRootFile::AddCopySource(const char *tname, const char *bname)
-{
-    fCopies.Add(new TNamed(tname, bname?bname:"*"));
+void MWriteRootFile::AddCopySource(const char *tname, const char *bname, Bool_t force)
+{
+    TObject *obj = new TNamed(tname, bname?bname:"*");
+    if (force)
+        obj->SetBit(kForced);
+
+    fCopies.Add(obj);
     fCopies.Sort();
 }
@@ -980,6 +984,19 @@
         if (!gettree)
         {
-            *fLog << err << "ERROR - MakeCopies: Tree " << o->GetName() << " not found in file " << fname << "... abort." << endl;
-            return kFALSE;
+            const Bool_t force = o->TestBit(kForced);
+            if (force)
+                *fLog << err << "ERROR - ";
+            else
+                *fLog << inf3;
+
+            *fLog << "MakeCopies: Tree " << o->GetName() << " not found in file " << fname << ".";
+            if (force)
+                *fLog << ".. abort.";
+            *fLog << endl;
+
+            if (force)
+                return kFALSE;
+
+            continue;
         }
 
Index: /trunk/MagicSoft/Mars/mfileio/MWriteRootFile.h
===================================================================
--- /trunk/MagicSoft/Mars/mfileio/MWriteRootFile.h	(revision 9409)
+++ /trunk/MagicSoft/Mars/mfileio/MWriteRootFile.h	(revision 9410)
@@ -85,4 +85,5 @@
         kIsNotOwner = BIT(14), // MWriteRootFile is not owner of fOut
         kFillTree   = BIT(14),
+        kForced     = BIT(14), // Used for flag in fCopies
         // Be carefull these bits are already in use!
         // TBranch::kAutoDelete = BIT(15)
@@ -130,5 +131,9 @@
     void AddContainer(const char *cname,   const char *tname=NULL, Bool_t must=kTRUE);
     void AddContainer(MParContainer *cont, const char *tname=NULL, Bool_t must=kTRUE);
-    void AddCopySource(const char *tname, const char *bname=NULL);
+    void AddCopySource(const char *tname, const char *bname=NULL, Bool_t force=kTRUE);
+    void AddCopySource(const char *tname, Bool_t force)
+    {
+        AddCopySource(tname, NULL, force);
+    }
 
     void AddTree(const char *name, Bool_t force=kTRUE)
Index: /trunk/MagicSoft/Mars/mhbase/MH.cc
===================================================================
--- /trunk/MagicSoft/Mars/mhbase/MH.cc	(revision 9409)
+++ /trunk/MagicSoft/Mars/mhbase/MH.cc	(revision 9410)
@@ -1,4 +1,4 @@
 /* ======================================================================== *\
-! $Name: not supported by cvs2svn $:$Id: MH.cc,v 1.47 2009-03-01 21:48:14 tbretz Exp $
+! $Name: not supported by cvs2svn $:$Id: MH.cc,v 1.48 2009-03-23 13:13:42 tbretz Exp $
 ! --------------------------------------------------------------------------
 !
@@ -70,4 +70,5 @@
 #include <THLimitsFinder.h>
 #endif
+#include <TProfile2D.h>  // root > 5.18
 
 #include "MLog.h"
Index: /trunk/MagicSoft/Mars/mjobs/MJCalibrateSignal.cc
===================================================================
--- /trunk/MagicSoft/Mars/mjobs/MJCalibrateSignal.cc	(revision 9409)
+++ /trunk/MagicSoft/Mars/mjobs/MJCalibrateSignal.cc	(revision 9410)
@@ -760,5 +760,5 @@
     writemc.AddContainer("MMcEvtBasic", "OriginalMC", kFALSE);
     if (fSequence.IsMonteCarlo())
-        writemc.AddCopySource("OriginalMC");
+        writemc.AddCopySource("OriginalMC", kFALSE);
 
     // Write the special calib tree
