]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EVE/EveBase/AliEveLegoEditor.h
From Stefano:
[u/mrichter/AliRoot.git] / EVE / EveBase / AliEveLegoEditor.h
1 // $Id$
2 // Author: Stefano Carrazza 2010
3
4 /**************************************************************************
5  * Copyright(c) 1998-2009, ALICE Experiment at CERN, all rights reserved. *
6  * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for          *
7  * full copyright notice.                                                 *
8  **************************************************************************/
9
10 #ifndef AliEveLegoEditor_H
11 #define AliEveLegoEditor_H
12
13 #include "TGedFrame.h"
14
15 class TGButton;
16 class TGCheckButton;
17 class TGNumberEntry;
18 class TGColorSelect;
19 class TGButtonGroup;
20 class TGRadioButton;
21 class TGLabel;
22 class TGComboBox;
23 class TGGroupFrame;
24
25 class AliEveLego;
26
27 //______________________________________________________________________________
28 // Short description of AliEveLegoEditor
29 //
30
31 class AliEveLegoEditor : public TGedFrame
32 {
33 public:
34    AliEveLegoEditor(const TGWindow* p=0, Int_t width=170, Int_t height=30,
35          UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground());
36    virtual ~AliEveLegoEditor() {}
37
38    virtual void SetModel(TObject* obj);
39
40    // Declare callback/slot methods
41    void DoAllEvents();
42    void ShowByCharge(Int_t id);
43    void ShowByChargeAE(Int_t id);
44    void SetThreshold();
45    void SetThresholdAE();
46    void SetMaxPt();
47    void SetMaxPtAE();
48    void ShowByTracks(Int_t id);
49    void ShowByTracksAE(Int_t id);
50    void ShowByEvents(Int_t id);
51    void ShowEventSelection();
52    void SelectEventSelection(Int_t id);
53    void CreateAllEventsEditor();
54    void ShowPrevEvent();
55    void ShowNextEvent();
56
57 protected:
58    AliEveLego            *fM; // Model object.
59
60    // Single event GUI
61    TGTextButton  *fAllEventsButton;
62    TGButtonGroup *fParticlesBG;
63    TGButtonGroup *fTrackSelection;
64    TGGroupFrame *fEventSelection;
65    TGCheckButton *fRevents;
66    TGRadioButton *fRcharge[3];
67    TGRadioButton *fRtracks[2];
68    TGLabel       *fLabel;
69    TGLabel       *fLabel1;
70    TGNumberEntry *fThreshold;
71    TGNumberEntry *fMaxPt;
72    TGComboBox    *fSelect;
73    TGTextButton  *fButtonPrev;
74    TGTextButton  *fButtonNext;
75
76    // All events GUI
77    TGButtonGroup *fParticlesBGAE;
78    TGButtonGroup *fTrackSelectionAE;
79    TGGroupFrame *fEventSelectionAE;
80    TGCheckButton *fReventsAE;
81    TGRadioButton *fRchargeAE[3];
82    TGRadioButton *fRtracksAE[2];
83    TGLabel       *fLabelAE;
84    TGLabel       *fLabel1AE;
85    TGNumberEntry *fThresholdAE;
86    TGNumberEntry *fMaxPtAE;
87    TGComboBox    *fSelectAE;
88    TGTextButton  *fButtonPrevAE;
89    TGTextButton  *fButtonNextAE;
90
91
92 private:
93
94    AliEveLegoEditor(const AliEveLegoEditor&);            // Not implemented
95    AliEveLegoEditor& operator=(const AliEveLegoEditor&); // Not implemented
96
97    ClassDef(AliEveLegoEditor, 0); // GUI editor for AliEveLego.
98 };
99
100 #endif