00001 // @(#)root/eve:$Id: TEveCaloLegoEditor.h 30438 2009-09-25 10:15:00Z matevz $ 00002 // Author: Matevz Tadel 2007 00003 00004 /************************************************************************* 00005 * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. * 00006 * All rights reserved. * 00007 * * 00008 * For the licensing terms see $ROOTSYS/LICENSE. * 00009 * For the list of contributors see $ROOTSYS/README/CREDITS. * 00010 *************************************************************************/ 00011 00012 #ifndef ROOT_TEveCaloLegoEditor 00013 #define ROOT_TEveCaloLegoEditor 00014 00015 #include "TGedFrame.h" 00016 00017 class TGButton; 00018 class TGCheckButton; 00019 class TGNumberEntry; 00020 class TGColorSelect; 00021 class TGComboBox; 00022 class TEveGValuator; 00023 00024 class TEveCaloLego; 00025 00026 class TEveCaloLegoEditor : public TGedFrame 00027 { 00028 private: 00029 TEveCaloLegoEditor(const TEveCaloLegoEditor&); // Not implemented 00030 TEveCaloLegoEditor& operator=(const TEveCaloLegoEditor&); // Not implemented 00031 TGComboBox* MakeLabeledCombo(const char* name, Int_t off); 00032 00033 protected: 00034 TEveCaloLego *fM; // Model object. 00035 00036 TGColorSelect *fGridColor; 00037 TGColorSelect *fFontColor; 00038 TGColorSelect *fPlaneColor; 00039 TGNumberEntry *fTransparency; 00040 00041 TGComboBox *fProjection; 00042 TGComboBox *f2DMode; 00043 TGComboBox *fBoxMode; 00044 00045 TEveGValuator *fCell2DTextMin; 00046 00047 TGVerticalFrame *fRebinFrame; 00048 TGCheckButton *fAutoRebin; 00049 TEveGValuator *fPixelsPerBin; 00050 TGCheckButton *fNormalizeRebin; 00051 00052 void MakeRebinFrame(); 00053 public: 00054 TEveCaloLegoEditor(const TGWindow* p=0, Int_t width=170, Int_t height=30, 00055 UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground()); 00056 virtual ~TEveCaloLegoEditor() {} 00057 00058 virtual void SetModel(TObject* obj); 00059 00060 // Declare callback/slot methods 00061 void DoGridColor(Pixel_t color); 00062 void DoFontColor(Pixel_t color); 00063 void DoPlaneColor(Pixel_t color); 00064 void DoTransparency(); 00065 00066 void DoProjection(); 00067 void Do2DMode(); 00068 void DoBoxMode(); 00069 00070 void DoCell2DTextMin(); 00071 00072 void DoAutoRebin(); 00073 void DoPixelsPerBin(); 00074 void DoNormalize(); 00075 00076 ClassDef(TEveCaloLegoEditor, 0); // GUI editor for TEveCaloLego. 00077 }; 00078 00079 #endif