]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EVE/EveBase/AliEveEventManagerEditor.h
Replace the NextEvent button in the GED version with Dump Event Info. This appends...
[u/mrichter/AliRoot.git] / EVE / EveBase / AliEveEventManagerEditor.h
1 // @(#)root/eve:$Id$
2 // Author: Matevz Tadel 2007
3
4 /**************************************************************************
5  * Copyright(c) 1998-2008, 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 AliEveEventManagerEditor_H
11 #define AliEveEventManagerEditor_H
12
13 #include "TGedFrame.h"
14 #include "TGComboBox.h"
15 #include <TObjString.h>
16
17 class AliEveEventManager;
18 class TEveGValuator;
19 class TGButton;
20 class TGCheckButton;
21 class TGTextButton;
22 class TGTextView;
23 class TGNumberEntry;
24 class TGLabel;
25
26 //==============================================================================
27 // AliEveEventManagerEditor
28 //==============================================================================
29
30 //______________________________________________________________________________
31 // Short description of AliEveEventManagerEditor
32 //
33
34 class AliEveEventManagerEditor : public TGedFrame
35 {
36 public:
37    AliEveEventManagerEditor(const TGWindow* p=0, Int_t width=170, Int_t height=30,
38          UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground());
39    virtual ~AliEveEventManagerEditor() {}
40
41    virtual void SetModel(TObject* obj);
42
43    void DumpEventInfo();
44
45 protected:
46    AliEveEventManager  *fM;             // Model object.
47
48    TGTextButton        *fDumpEventInfo; // Button that dumps event-info into a file.
49    TGTextView          *fEventInfo;     // Text box with event info.
50
51 private:
52    AliEveEventManagerEditor(const AliEveEventManagerEditor&);            // Not implemented
53    AliEveEventManagerEditor& operator=(const AliEveEventManagerEditor&); // Not implemented
54
55    ClassDef(AliEveEventManagerEditor, 0); // GUI editor for AliEveEventManager.
56 };
57
58
59 //==============================================================================
60 // AliEveEventManagerWindow
61 //==============================================================================
62
63 //______________________________________________________________________________
64 // Short description of AliEveEventManagerWindow
65 //
66
67 class AliEveEventManagerWindow : public TGMainFrame
68 {
69 public:
70   AliEveEventManagerWindow(AliEveEventManager* mgr);
71   virtual ~AliEveEventManagerWindow();
72
73   void DoFirstEvent();
74   void DoPrevEvent();
75   void DoNextEvent();
76   void DoLastEvent();
77
78   void DoSetEvent();
79
80   void DoRefresh();
81   void DoSetAutoLoad();
82   void DoSetAutoLoadTime();
83   void DoSetTrigSel();
84
85   void Update();
86
87 protected:
88   AliEveEventManager   *fM;            // Model object.
89
90   TGTextButton         *fFirstEvent;   // Go to first event
91   TGTextButton         *fPrevEvent;    // Go to prev event
92   TGTextButton         *fNextEvent;    // Go to next event
93   TGTextButton         *fLastEvent;    // Go to last event
94   TGTextButton         *fRefresh;      // Refresh event-file state
95
96   TGNumberEntry        *fEventId;      // Display/edit current event id
97   TGLabel              *fInfoLabel;    // Display last available event id
98
99   TGCheckButton        *fAutoLoad;     // Check-box for automatic loading of events
100   TEveGValuator        *fAutoLoadTime; // Time for automatic loading of events
101
102   TGComboBox           *fTrigSel;      // Trigger selection combo box
103
104   TGTextView           *fEventInfo;    // Text box with event info
105
106   TGTextButton* MkTxtButton(TGCompositeFrame* p, const char* txt, Int_t width=0,
107                             Int_t lo=0, Int_t ro=0, Int_t to=0, Int_t bo=0);
108   TGLabel* MkLabel(TGCompositeFrame* p, const char* txt, Int_t width,
109                    Int_t lo=0, Int_t ro=0, Int_t to=2, Int_t bo=0);
110
111 private:
112   AliEveEventManagerWindow(const AliEveEventManagerWindow&);            // Not implemented
113   AliEveEventManagerWindow& operator=(const AliEveEventManagerWindow&); // Not implemented
114
115   ClassDef(AliEveEventManagerWindow, 0); // GUI window for AliEveEventManager.
116 };
117
118 #endif