00001 #include "TSystem.h"
00002 #include "StGeomBrowser.h"
00003 #include "GeomBrowser.h"
00004 #include "TObjString.h"
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 StGeomBrowser::StGeomBrowser(const char *fileName)
00018 : fFileName(fileName), fBrowser(0) {}
00019
00020 StGeomBrowser::~StGeomBrowser()
00021 {
00022 delete fBrowser; fBrowser=0;
00023 }
00024
00025 void StGeomBrowser::SetFile(const char *fileName)
00026 {
00027 fFileName = fileName;
00028 gSystem->ExpandPathName(fFileName);
00029 if (!fBrowser) fBrowser = new GeomBrowser();
00030 if ( fFileName.EndsWith(".C") || fFileName.EndsWith(".h")) {
00031 if (!gSystem->AccessPathName(fFileName.Data()))
00032 fBrowser->fileOpenMacro(fFileName.Data());
00033 } else if ( fFileName.EndsWith(".root") ) {
00034 if (!gSystem->AccessPathName(fFileName.Data()))
00035 fBrowser->fileOpenRoot(fFileName.Data());
00036 } else if ( fFileName.EndsWith(".fz") ) {
00037 if (!gSystem->AccessPathName(fFileName.Data())) fBrowser->fileOpenZebra(fFileName.Data());
00038 } else if ( fFileName.EndsWith(".iv") ) {
00039 if (!gSystem->AccessPathName(fFileName.Data())) fBrowser->fileOpenInventor(fFileName.Data());
00040 } else if ( fFileName.EndsWith(".wrl") ) {
00041 if (!gSystem->AccessPathName(fFileName.Data())) fBrowser->fileOpenInventor(fFileName.Data());
00042 } else if ( fFileName.Length() <= 8) {
00043
00044 fBrowser->SelectGeometry(fFileName.Data());
00045 } else {
00046
00047
00048 }
00049 }
00050
00051
00052 void StGeomBrowser::SetSize(Int_t w,Int_t h) {
00053 if (!fBrowser) fBrowser = new GeomBrowser();
00054 fBrowser->resize(w,h);
00055 }
00056
00057
00058 void StGeomBrowser::Show() {
00059 if (!fBrowser) fBrowser = new GeomBrowser();
00060 fBrowser->show();
00061 }