]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EVE/EveDet/AliEveTRDTrackListEditor.h
fix selection macro usage (Ben)
[u/mrichter/AliRoot.git] / EVE / EveDet / AliEveTRDTrackListEditor.h
1 #ifndef AliEveTRDTrackListEditor_H
2 #define AliEveTRDTrackListEditor_H
3
4 #include <TGedFrame.h>
5 #include <TGFileDialog.h>
6 #include <TGButton.h>
7 #include <TGTextEntry.h>
8 #include <TGTextView.h>
9 #include <TGListBox.h>
10 #include <TGMsgBox.h>
11 #include <TGLabel.h>
12 #include <TG3DLine.h>
13 #include <TEveMacro.h>
14 #include <TEveManager.h>
15 #include <TObjString.h>
16 #include <TSystem.h>
17 #include <TROOT.h>
18 #include <AliTRDtrackV1.h>
19 #include <EveDet/AliEveTRDTrackList.h>
20
21 class AliEveTRDTrackListEditor: public TGedFrame
22 {
23 public:
24   AliEveTRDTrackListEditor(const TGWindow* p=0, Int_t width=170, Int_t height=30,
25                            UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground());
26   virtual ~AliEveTRDTrackListEditor() {};
27
28   virtual void SetModel(TObject* obj);
29
30   void ApplyMacros();               // Apply macros
31   void BrowseMacros();              // Browse macros
32   void HandleMacroPathSet();        // Handle "macro path set"-event 
33   void RemoveMacros();              // Remove macros
34
35 protected:
36   AliEveTRDTrackList* fM;           // Model object.
37
38 private:
39   AliEveTRDTrackListEditor(const AliEveTRDTrackListEditor&);            // Not implemented
40   AliEveTRDTrackListEditor& operator=(const AliEveTRDTrackListEditor&); // Not implemented 
41
42   void AddMacro(const Char_t* Entryame, const Char_t* name,     // Add macro to the macro list
43                 const Char_t* pathname);
44   void UpdateMacroList();                                       // Updates the macro list
45
46
47   TGVerticalFrame*  fMainFrame;             // Top frame for macro functionality.
48   TGVerticalFrame*  fMemberFrame;           // Top frame for member list
49   TGHorizontalFrame* fBrowseFrame;          // For searching macros
50
51   TGTextButton*   bBrowse;                  // Browse button
52   TGTextButton*   bApplyMacros;             // Apply macros button
53   TGTextButton*   bRemoveMacros;            // Remove macros button
54   TGTextEntry*    teField;                  // Text field to insert macro path manually
55   TGTextView*     tvMemberList;             // To display the list of members
56   TGListBox*      tlMacroList;              // To display the list of (process) macros
57   TGListBox*      tlMacroSelList;           // To display the list of (selection) macros
58
59   TGFileInfo*     fileInfo;                 // Holds data about opening macros
60   Char_t**    fileTypes;                    // File types (for macros)
61
62   // Some labels
63   TGLabel* fLabel1;
64   TGLabel* fLabel2;
65   TGLabel* fLabel3;
66      
67   // Some lines
68   TGHorizontal3DLine *fLine1;
69   TGHorizontal3DLine *fLine2;
70   TGHorizontal3DLine *fLine3;
71
72   ClassDef(AliEveTRDTrackListEditor, 0);    // Editor for AliEveTRDTrackList.
73 };
74
75 #endif