// @(#)root/eve:$Id$
// Author: Matevz Tadel 2007

/*************************************************************************
 * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers.               *
 * All rights reserved.                                                  *
 *                                                                       *
 * For the licensing terms see $ROOTSYS/LICENSE.                         *
 * For the list of contributors see $ROOTSYS/README/CREDITS.             *
 *************************************************************************/

#ifndef ROOT_TEveCaloVizEditor
#define ROOT_TEveCaloVizEditor

#include "TGedFrame.h"

class TEveCaloViz;
class TEveCalo3D;
class TGDoubleHSlider;
class TEveGValuator;
class TEveGDoubleValuator;
class TGCheckButton;
class TGRadioButton;
class TGNumberEntry;

class TGVerticalFrame;

class TEveCaloVizEditor : public TGedFrame
{
private:
   TEveCaloVizEditor(const TEveCaloVizEditor&);            // Not implemented
   TEveCaloVizEditor& operator=(const TEveCaloVizEditor&); // Not implemented
   void MakeSliceInfo();

protected:
   TEveCaloViz               *fM; // Model object.

   TGNumberEntry             *fFrameTransparency;

   TGRadioButton             *fPlotE;
   TGRadioButton             *fPlotEt;

   TGCheckButton             *fScaleAbs;
   TEveGValuator             *fMaxValAbs;
   TEveGValuator             *fMaxTowerH;

   TEveGDoubleValuator       *fEtaRng;
   TEveGValuator             *fPhi;
   TEveGValuator             *fPhiOffset;

   TGVerticalFrame           *fDataFrame;
   TGVerticalFrame           *fSliceFrame;

public:
   TEveCaloVizEditor(const TGWindow* p=0, Int_t width=170, Int_t height=30,
                     UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground());
   virtual ~TEveCaloVizEditor() {}

   virtual void SetModel(TObject* obj);

   void DoMaxTowerH();
   void DoScaleAbs();
   void DoMaxValAbs();

   void DoPlot();

   void DoEtaRange();
   void DoPhi();

   void DoSliceThreshold();
   void DoSliceColor(Pixel_t color);
   void DoSliceTransparency(Long_t transp);

   ClassDef(TEveCaloVizEditor, 0); // GUI editor for TEveCaloVizEditor.
};

/**************************************************************************/

class TEveCalo3DEditor : public TGedFrame
{
private:
   TEveCalo3DEditor(const TEveCalo3DEditor&);            // Not implemented
   TEveCalo3DEditor& operator=(const TEveCalo3DEditor&); // Not implemented

protected:
   TEveCalo3D          *fM; // Model object.
   TGNumberEntry       *fFrameTransparency;

public:
   TEveCalo3DEditor(const TGWindow* p=0, Int_t width=170, Int_t height=30,
                     UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground());
   virtual ~TEveCalo3DEditor() {}

   virtual void SetModel(TObject* obj);
   void    DoFrameTransparency();

   ClassDef(TEveCalo3DEditor, 0); // GUI editor for TEveCalo3DEditor.
};

#endif
 TEveCaloVizEditor.h:1
 TEveCaloVizEditor.h:2
 TEveCaloVizEditor.h:3
 TEveCaloVizEditor.h:4
 TEveCaloVizEditor.h:5
 TEveCaloVizEditor.h:6
 TEveCaloVizEditor.h:7
 TEveCaloVizEditor.h:8
 TEveCaloVizEditor.h:9
 TEveCaloVizEditor.h:10
 TEveCaloVizEditor.h:11
 TEveCaloVizEditor.h:12
 TEveCaloVizEditor.h:13
 TEveCaloVizEditor.h:14
 TEveCaloVizEditor.h:15
 TEveCaloVizEditor.h:16
 TEveCaloVizEditor.h:17
 TEveCaloVizEditor.h:18
 TEveCaloVizEditor.h:19
 TEveCaloVizEditor.h:20
 TEveCaloVizEditor.h:21
 TEveCaloVizEditor.h:22
 TEveCaloVizEditor.h:23
 TEveCaloVizEditor.h:24
 TEveCaloVizEditor.h:25
 TEveCaloVizEditor.h:26
 TEveCaloVizEditor.h:27
 TEveCaloVizEditor.h:28
 TEveCaloVizEditor.h:29
 TEveCaloVizEditor.h:30
 TEveCaloVizEditor.h:31
 TEveCaloVizEditor.h:32
 TEveCaloVizEditor.h:33
 TEveCaloVizEditor.h:34
 TEveCaloVizEditor.h:35
 TEveCaloVizEditor.h:36
 TEveCaloVizEditor.h:37
 TEveCaloVizEditor.h:38
 TEveCaloVizEditor.h:39
 TEveCaloVizEditor.h:40
 TEveCaloVizEditor.h:41
 TEveCaloVizEditor.h:42
 TEveCaloVizEditor.h:43
 TEveCaloVizEditor.h:44
 TEveCaloVizEditor.h:45
 TEveCaloVizEditor.h:46
 TEveCaloVizEditor.h:47
 TEveCaloVizEditor.h:48
 TEveCaloVizEditor.h:49
 TEveCaloVizEditor.h:50
 TEveCaloVizEditor.h:51
 TEveCaloVizEditor.h:52
 TEveCaloVizEditor.h:53
 TEveCaloVizEditor.h:54
 TEveCaloVizEditor.h:55
 TEveCaloVizEditor.h:56
 TEveCaloVizEditor.h:57
 TEveCaloVizEditor.h:58
 TEveCaloVizEditor.h:59
 TEveCaloVizEditor.h:60
 TEveCaloVizEditor.h:61
 TEveCaloVizEditor.h:62
 TEveCaloVizEditor.h:63
 TEveCaloVizEditor.h:64
 TEveCaloVizEditor.h:65
 TEveCaloVizEditor.h:66
 TEveCaloVizEditor.h:67
 TEveCaloVizEditor.h:68
 TEveCaloVizEditor.h:69
 TEveCaloVizEditor.h:70
 TEveCaloVizEditor.h:71
 TEveCaloVizEditor.h:72
 TEveCaloVizEditor.h:73
 TEveCaloVizEditor.h:74
 TEveCaloVizEditor.h:75
 TEveCaloVizEditor.h:76
 TEveCaloVizEditor.h:77
 TEveCaloVizEditor.h:78
 TEveCaloVizEditor.h:79
 TEveCaloVizEditor.h:80
 TEveCaloVizEditor.h:81
 TEveCaloVizEditor.h:82
 TEveCaloVizEditor.h:83
 TEveCaloVizEditor.h:84
 TEveCaloVizEditor.h:85
 TEveCaloVizEditor.h:86
 TEveCaloVizEditor.h:87
 TEveCaloVizEditor.h:88
 TEveCaloVizEditor.h:89
 TEveCaloVizEditor.h:90
 TEveCaloVizEditor.h:91
 TEveCaloVizEditor.h:92
 TEveCaloVizEditor.h:93
 TEveCaloVizEditor.h:94
 TEveCaloVizEditor.h:95
 TEveCaloVizEditor.h:96
 TEveCaloVizEditor.h:97
 TEveCaloVizEditor.h:98
 TEveCaloVizEditor.h:99
 TEveCaloVizEditor.h:100