Added forward declaration of TGCheckButton
[u/mrichter/AliRoot.git] / EVE / EveBase / AliEveFileDialog.h
1 // Author: Mihai Niculescu 2013
2
3 /**************************************************************************
4  * Copyright(c) 1998-2009, ALICE Experiment at CERN, all rights reserved. *
5  * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for          *
6  * full copyright notice.                                                 *
7  **************************************************************************/
8
9 #ifndef AliEveFileDialog_H
10 #define AliEveFileDialog_H
11
12 #include <TString.h>
13 #include <TGFrame.h>
14
15 class TGComboBox;
16 class TGCheckButton;
17 class TGLabel;
18 class TGFileInfo;
19 class TGTextButton;
20 class TGTextEntry;
21
22 //______________________________________________________________________________
23 // AliEveMainWindow
24 //
25 enum EAliEveFileDialogMode
26 {
27     kAliEveFDLocal,
28     kAliEveFDRemote
29 };
30
31 class AliEveFileDialog : public TGTransientFrame
32 {
33 public:
34     AliEveFileDialog(const TGWindow* p = 0, const TGWindow* main = 0, EAliEveFileDialogMode mode= kAliEveFDLocal);
35     ~AliEveFileDialog();
36
37     //const TString GetDirectory(); // directory where the ESD resides
38     const TString GetPathESD() const;
39     const TString GetPathESDfriend() const;
40     const TString GetPathAOD() const;
41     const TString GetPathAODfriend() const;
42     const TString GetPathRaw() const;
43     const TString GetUrl() const;
44     UInt_t GetMode() const { return fMode; }
45
46     const TString GetCDBStoragePath() const;
47
48     void onBrowseESDFile();
49     void onBrowseESDfriendFile();
50     void onBrowseAODFile();
51     void onBrowseAODfriendFile();
52     void onBrowseRawFile();
53
54     Bool_t accepted() const { return fIsAccepted; } // true if clicked the OK button, false otherwise
55
56     void onAccept();// ok button was clicked
57     void onReject();// cancel button was clicked
58
59     void setMode(EAliEveFileDialogMode mode);
60     void showAdvancedOpts(Bool_t shown=kTRUE);
61
62     void CloseWindow();
63     void MapWindow();
64     void UnmapWindow();
65     void MapSubwindows();
66 private:
67     AliEveFileDialog(const AliEveFileDialog&);              // not implemented
68     AliEveFileDialog& operator=(const AliEveFileDialog&);   // not implemented
69
70     TGHorizontalFrame* fESDFilesFrame;
71     TGCheckButton* fAdvancedOptsButton;
72     
73     TGGroupFrame* fAdvancedOptsFrame;
74     TGHorizontalFrame* fESDfriendFilesFrame;
75     TGHorizontalFrame* fAODFilesFrame;
76     TGHorizontalFrame* fAODfriendFilesFrame;
77     TGHorizontalFrame* fRawFilesFrame;
78     TGHorizontalFrame* fUrlFrame;
79     TGHorizontalFrame* fCDBFrame;
80     TGHorizontalFrame* fDialogButtonsFrame;
81     TGTextEntry* fPathEntryESD;
82     TGTextEntry* fPathEntryESDfriend;
83     TGTextEntry* fPathEntryAOD;
84     TGTextEntry* fPathEntryAODfriend;
85     TGTextEntry* fPathEntryRawFile;
86     TGTextEntry* fPathEntryUrl; // remote file
87     TGComboBox* fCDBPathCB;
88
89     Bool_t fIsAccepted; // true if clicked OK, false otherwise
90     EAliEveFileDialogMode fMode;
91
92 public:
93
94     ClassDef(AliEveFileDialog, 0)
95 };
96
97 #endif
98