]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EVE/EveBase/AliEveMacroEditor.h
Prototype for visualization-macro manager and gui.
[u/mrichter/AliRoot.git] / EVE / EveBase / AliEveMacroEditor.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 AliEveMacroEditor_H
11 #define AliEveMacroEditor_H
12
13 #include "TGedFrame.h"
14
15 class AliEveMacro;
16
17 class TGCheckButton;
18 class TGTextEntry;
19 class TGComboBox;
20
21 //______________________________________________________________________________
22 // Short description of AliEveMacroEditor
23 //
24
25 class AliEveMacroEditor : public TGedFrame
26 {
27 public:
28   AliEveMacroEditor(const TGWindow* p=0, Int_t width=170, Int_t height=30,
29                     UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground());
30   virtual ~AliEveMacroEditor() {}
31
32   virtual void SetModel(TObject* obj);
33
34   void DoSources(Int_t v);
35   void DoMacro();
36   void DoFunc();
37   void DoArgs();
38   void DoActive();
39
40 protected:
41   AliEveMacro           *fM; // Model object.
42
43   TGComboBox            *fSources;
44   TGTextEntry           *fMacro;
45   TGTextEntry           *fFunc;
46   TGTextEntry           *fArgs;
47   TGCheckButton         *fActive;
48
49   TGHorizontalFrame* MkHFrame(TGCompositeFrame* p=0);
50   TGLabel*           MkLabel (TGCompositeFrame* p, const char* txt, Int_t width,
51                               Int_t lo=0, Int_t ro=0, Int_t to=2, Int_t bo=0);
52
53 private:
54   AliEveMacroEditor(const AliEveMacroEditor&);            // Not implemented
55   AliEveMacroEditor& operator=(const AliEveMacroEditor&); // Not implemented
56
57   ClassDef(AliEveMacroEditor, 0); // GUI editor for AliEveMacro.
58 };
59
60 #endif