Logo ROOT   6.30.04
Reference Guide
 All Namespaces Files Pages
TEveCaloLegoEditor.h
Go to the documentation of this file.
1 // @(#)root/eve:$Id$
2 // Author: Matevz Tadel 2007
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 #ifndef ROOT_TEveCaloLegoEditor
13 #define ROOT_TEveCaloLegoEditor
14 
15 #include "TGedFrame.h"
16 
17 class TGButton;
18 class TGCheckButton;
19 class TGNumberEntry;
20 class TGColorSelect;
21 class TGComboBox;
22 class TEveGValuator;
23 
24 class TEveCaloLego;
25 
26 class TEveCaloLegoEditor : public TGedFrame
27 {
28 private:
29  TEveCaloLegoEditor(const TEveCaloLegoEditor&); // Not implemented
30  TEveCaloLegoEditor& operator=(const TEveCaloLegoEditor&); // Not implemented
31  TGComboBox* MakeLabeledCombo(const char* name, Int_t off);
32 
33 protected:
34  TEveCaloLego *fM; // Model object.
35 
36  TGColorSelect *fGridColor;
37  TGColorSelect *fFontColor;
38  TGColorSelect *fPlaneColor;
39  TGNumberEntry *fTransparency;
40 
41  TGComboBox *fProjection;
42  TGComboBox *f2DMode;
43  TGComboBox *fBoxMode;
44 
45  TEveGValuator *fCell2DTextMin;
46 
47  TGVerticalFrame *fRebinFrame;
48  TGCheckButton *fAutoRebin;
49  TEveGValuator *fPixelsPerBin;
50  TGCheckButton *fNormalizeRebin;
51 
52  void MakeRebinFrame();
53 public:
54  TEveCaloLegoEditor(const TGWindow* p=0, Int_t width=170, Int_t height=30,
55  UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground());
56  virtual ~TEveCaloLegoEditor() {}
57 
58  virtual void SetModel(TObject* obj);
59 
60  // Declare callback/slot methods
61  void DoGridColor(Pixel_t color);
62  void DoFontColor(Pixel_t color);
63  void DoPlaneColor(Pixel_t color);
64  void DoTransparency();
65 
66  void DoProjection();
67  void Do2DMode();
68  void DoBoxMode();
69 
70  void DoCell2DTextMin();
71 
72  void DoAutoRebin();
73  void DoPixelsPerBin();
74  void DoNormalize();
75 
76  ClassDef(TEveCaloLegoEditor, 0); // GUI editor for TEveCaloLego.
77 };
78 
79 #endif