]>
Commit | Line | Data |
---|---|---|
2ef0687e | 1 | #ifndef AliEveTRDTrackListEditor_H |
2 | #define AliEveTRDTrackListEditor_H | |
3 | ||
4 | #include <TGedFrame.h> | |
caaf90d2 | 5 | |
6 | class AliEveTRDTrack; | |
7 | class AliEveTRDTrackList; | |
4f6473f6 | 8 | class TCanvas; |
9 | class TEveBrowser; | |
8e27fca1 | 10 | class TEveGedEditor; |
11 | class TEveManager; | |
caaf90d2 | 12 | class TFile; |
13 | class TGCheckButton; | |
14 | class TGFileInfo; | |
15 | class TGHorizontal3DLine; | |
16 | class TGHorizontalFrame; | |
17 | class TGLabel; | |
18 | class TGListBox; | |
4f6473f6 | 19 | class TGString; |
8e27fca1 | 20 | class TGTab; |
caaf90d2 | 21 | class TGTextButton; |
22 | class TGTextEntry; | |
23 | class TGVerticalFrame; | |
24 | class TTree; | |
2ef0687e | 25 | |
26 | class AliEveTRDTrackListEditor: public TGedFrame | |
27 | { | |
28 | public: | |
caaf90d2 | 29 | AliEveTRDTrackListEditor(const TGWindow* p = 0, Int_t width = 170, Int_t height = 30, |
30 | UInt_t options = kChildFrame, Pixel_t back = GetDefaultFrameBackground()); | |
31 | virtual ~AliEveTRDTrackListEditor(); | |
2ef0687e | 32 | |
33 | virtual void SetModel(TObject* obj); | |
34 | ||
4f6473f6 | 35 | void AddMacro(const Char_t* path, const Char_t* name); // Adds macro to the macro list |
36 | void ApplyMacros(); // Apply macros | |
37 | void BrowseMacros(); // Browse macros | |
38 | void CloseTabs(); // Closes + deletes all the tabs opened created by this class | |
39 | void DrawHistos(); // Draw histograms | |
40 | Int_t GetNSelectedHistograms(); // Get the number of selected histograms for drawing | |
41 | void HandleMacroPathSet(); // Handles the "macro path set"-signal | |
42 | void HandleNewEventLoaded(); // Handles the "NewEventLoaded()"-signal | |
43 | void HandleTabChangedToIndex(Int_t); // Handles the "Selected(Int_t id)"-signal (tab changed) | |
44 | void RemoveMacros(); // Removes the selected macros from the lists | |
45 | void UpdateDataFromMacroListSelection(); // Updates the selection in the "data from macro"-list | |
46 | void UpdateHistoList(); // Updates the histogram list | |
47 | void UpdateMacroList(); // Updates the macro list | |
48 | void UpdateMacroListSelection(Int_t ind); // Updates the selection of the process macro list | |
49 | void UpdateMacroSelListSelection(Int_t ind); // Updates the selection of the selection macro list | |
50 | ||
2ef0687e | 51 | protected: |
4f6473f6 | 52 | AliEveTRDTrackList* fM; // Model object |
2ef0687e | 53 | |
54 | private: | |
55 | AliEveTRDTrackListEditor(const AliEveTRDTrackListEditor&); // Not implemented | |
56 | AliEveTRDTrackListEditor& operator=(const AliEveTRDTrackListEditor&); // Not implemented | |
57 | ||
4f6473f6 | 58 | TCanvas* fHistoCanvas; // Canvas for the histograms |
59 | TGString* fHistoCanvasName; // Name of the histogram canvas | |
2ef0687e | 60 | |
4f6473f6 | 61 | TGVerticalFrame* fMainFrame; // Top frame for macro functionality. |
62 | TGVerticalFrame* fHistoFrame; // Top frame for the histogram stuff | |
63 | TGVerticalFrame* fHistoSubFrame; // Frame for the histogram buttons themselves | |
caaf90d2 | 64 | TGHorizontalFrame* fBrowseFrame; // For searching macros |
2ef0687e | 65 | |
caaf90d2 | 66 | TGTextButton* fbBrowse; // "Browse" button |
67 | TGTextButton* fbApplyMacros; // "Apply macros" button | |
68 | TGTextButton* fbRemoveMacros; // "Remove macros" button | |
69 | TGTextButton* fbDrawHisto; // "Draw histogram" button | |
70 | TGTextEntry* fteField; // Text field to insert macro path manually | |
71 | TGListBox* ftlMacroList; // To display the list of (process) macros | |
72 | TGListBox* ftlMacroSelList; // To display the list of (selection) macros | |
2ef0687e | 73 | |
caaf90d2 | 74 | TGFileInfo* fFileInfo; // Holds data about opening macros |
75 | Char_t** fFileTypes; // File types (for macros) | |
2ef0687e | 76 | |
3f797131 | 77 | // Some labels |
39b891ff | 78 | TGLabel* fLabel1; |
79 | TGLabel* fLabel2; | |
80 | TGLabel* fLabel3; | |
caaf90d2 | 81 | TGLabel* fLabel4; |
39b891ff | 82 | |
3f797131 | 83 | // Some lines |
39b891ff | 84 | TGHorizontal3DLine *fLine1; |
85 | TGHorizontal3DLine *fLine2; | |
86 | TGHorizontal3DLine *fLine3; | |
caaf90d2 | 87 | TGHorizontal3DLine *fLine4; |
88 | ||
89 | // Check buttons for histograms | |
90 | TGCheckButton** fCheckButtons; | |
3f797131 | 91 | |
39b891ff | 92 | ClassDef(AliEveTRDTrackListEditor, 0); // Editor for AliEveTRDTrackList. |
2ef0687e | 93 | }; |
94 | ||
95 | #endif |