00001 // @(#)root/base:$Id: TSystemDirectory.h 20877 2007-11-19 11:17:07Z rdm $ 00002 // Author: Christian Bormann 13/10/97 00003 00004 /************************************************************************* 00005 * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * 00006 * All rights reserved. * 00007 * * 00008 * For the licensing terms see $ROOTSYS/LICENSE. * 00009 * For the list of contributors see $ROOTSYS/README/CREDITS. * 00010 *************************************************************************/ 00011 #ifndef ROOT_TSystemDirectory 00012 #define ROOT_TSystemDirectory 00013 00014 00015 ////////////////////////////////////////////////////////////////////////// 00016 // // 00017 // TSystemDirectory // 00018 // // 00019 // Describes an Operating System directory for the browser. // 00020 // // 00021 // Author: Christian Bormann 30/09/97 // 00022 // http://www.ikf.physik.uni-frankfurt.de/~bormann/ // 00023 // // 00024 ////////////////////////////////////////////////////////////////////////// 00025 00026 #ifndef ROOT_TSystemFile 00027 #include "TSystemFile.h" 00028 #endif 00029 00030 class TOrdCollection; 00031 class TList; 00032 00033 00034 class TSystemDirectory : public TSystemFile { 00035 00036 protected: 00037 TOrdCollection *fDirsInBrowser; 00038 TOrdCollection *fFilesInBrowser; 00039 00040 Bool_t IsItDirectory(const char *name) const; 00041 TSystemDirectory *FindDirObj(const char *name); 00042 TSystemFile *FindFileObj(const char *name, const char *dir); 00043 00044 TSystemDirectory(const TSystemDirectory&); 00045 TSystemDirectory& operator=(const TSystemDirectory&); 00046 00047 public: 00048 TSystemDirectory(); 00049 TSystemDirectory(const char *dirname, const char *path); 00050 00051 virtual ~TSystemDirectory(); 00052 00053 virtual Bool_t IsFolder() const { return kTRUE; } 00054 virtual Bool_t IsDirectory(const char * = 0) const { return kTRUE; } 00055 00056 virtual void Browse(TBrowser *b); 00057 virtual void Edit() { } 00058 virtual TList *GetListOfFiles() const; 00059 virtual void SetDirectory(const char *name); 00060 virtual void Delete() {} 00061 virtual void Copy(const char *) {} 00062 virtual void Move(const char *) {} 00063 00064 // dummy methods from TObject 00065 void DrawClass() const { } 00066 TObject *DrawClone(Option_t *) const { return 0; } 00067 void SetDrawOption(Option_t *) { } 00068 void SetName(const char *name) { TSystemFile::SetName(name); } 00069 void SetTitle(const char *title) { TSystemFile::SetTitle(title); } 00070 void Delete(Option_t *) { } 00071 void Copy(TObject & ) const { } 00072 ClassDef(TSystemDirectory,0) //A system directory 00073 }; 00074 00075 #endif 00076