12 #ifndef ROOT_TH2Editor
13 #define ROOT_TH2Editor
31 class TGDoubleHSlider;
36 class TGNumberEntryField;
38 class TGedPatternSelect;
41 class TH2Editor :
public TGedFrame {
45 TGCompositeFrame *fBin;
46 TGCompositeFrame *fFit;
48 TGComboBox *fTypeCombo;
49 TGComboBox *fCoordsCombo;
50 TGComboBox *fContCombo;
52 TGLabel *fColContLbl1;
54 TGHButtonGroup *fDimGroup;
57 TGLayoutHints *fDimlh;
58 TGLayoutHints *fDim0lh;
61 TGCompositeFrame *f12;
62 TGCompositeFrame *f13;
63 TGCompositeFrame *f38;
64 TGCheckButton *fAddError;
65 TGCheckButton *fAddPalette;
66 TGCheckButton *fAddPalette1;
67 TGCheckButton *fAddArr;
68 TGCheckButton *fAddBox;
69 TGCheckButton *fAddScat;
70 TGCheckButton *fAddCol;
71 TGCheckButton *fAddFB;
72 TGCheckButton *fAddBB;
73 TGCheckButton *fAddText;
74 TGNumberEntry *fContLevels;
75 TGNumberEntry *fContLevels1;
76 TGNumberEntry *fBarWidth;
77 TGNumberEntry *fBarOffset;
78 TGCompositeFrame *fBinXCont;
79 TGHSlider *fBinXSlider;
80 TGNumberEntryField *fBinXNumberEntry;
81 TGHSlider *fBinYSlider;
82 TGNumberEntryField *fBinYNumberEntry;
84 TGTextButton *fCancel;
85 TGCompositeFrame *fBinXCont1;
86 TGHSlider *fBinXSlider1;
87 TGNumberEntryField *fBinXNumberEntry1;
88 TGNumberEntryField *fXOffsetNumberEntry;
89 TGHSlider *fXBinOffsetSld;
91 TGCompositeFrame *fBinYCont1;
92 TGHSlider *fBinYSlider1;
93 TGNumberEntryField *fBinYNumberEntry1;
94 TGNumberEntryField *fYOffsetNumberEntry;
95 TGHSlider *fYBinOffsetSld;
96 TGDoubleHSlider *fSliderX;
97 TGNumberEntryField *fSldXMin;
98 TGNumberEntryField *fSldXMax;
99 TGDoubleHSlider *fSliderY;
100 TGNumberEntryField *fSldYMin;
101 TGNumberEntryField *fSldYMax;
102 TGCheckButton *fDelaydraw;
103 TGColorSelect *fFrameColor;
104 TGedPatternSelect *fFramePattern;
107 static TGComboBox *BuildHistTypeComboBox(TGFrame *parent, Int_t
id);
108 static TGComboBox *BuildHistCoordsComboBox(TGFrame *parent, Int_t
id);
109 static TGComboBox *BuildHistContComboBox(TGFrame* parent, Int_t
id);
111 virtual void ConnectSignals2Slots();
115 void PaintBox3D(Float_t *p1, Float_t *p2,Float_t *p3, Float_t *p4);
116 TString GetHistTypeLabel();
117 TString GetHistCoordsLabel();
118 TString GetHistContLabel();
119 TString GetHistAdditiveLabel();
120 TString GetCutOptionString();
143 Double_t fOldXOffset;
144 Double_t fOldYOffset;
147 TH2Editor(
const TGWindow *p = 0,
148 Int_t width = 140, Int_t height = 30,
149 UInt_t options = kChildFrame,
150 Pixel_t back = GetDefaultFrameBackground());
151 virtual ~TH2Editor();
153 virtual Bool_t AcceptModel(TObject* model);
154 virtual void SetModel(TObject* obj);
155 virtual void ActivateBaseClassEditors(TClass* cl);
157 virtual void DoTitle(
const char *text);
158 virtual void DoHistView();
159 virtual void DoHistSimple();
160 virtual void DoHistComplex();
161 virtual void DoHistChanges();
162 virtual void DoAddArr(Bool_t on);
163 virtual void DoAddBox(Bool_t on);
164 virtual void DoAddCol(Bool_t on);
165 virtual void DoAddScat(Bool_t on);
166 virtual void DoAddText(Bool_t on);
167 virtual void DoAddError(Bool_t on);
168 virtual void DoAddPalette(Bool_t on);
169 virtual void DoAddFB();
170 virtual void DoAddBB();
171 virtual void DoContLevel();
172 virtual void DoContLevel1();
173 virtual void DoBarWidth();
174 virtual void DoBarOffset();
175 virtual void DoBinPressed();
176 virtual void DoBinMoved();
177 virtual void DoBinReleased();
178 virtual void DoBinLabel();
179 virtual void DoApply();
180 virtual void DoCancel();
181 virtual void DoBinReleased1();
182 virtual void DoBinMoved1();
183 virtual void DoBinLabel1();
184 virtual void DoOffsetMoved();
185 virtual void DoOffsetReleased();
186 virtual void DoOffsetPressed();
187 virtual void DoBinOffset();
188 virtual void DoSliderXMoved();
189 virtual void DoSliderXPressed();
190 virtual void DoSliderXReleased();
191 virtual void DoXAxisRange();
192 virtual void DoSliderYMoved();
193 virtual void DoSliderYPressed();
194 virtual void DoSliderYReleased();
195 virtual void DoYAxisRange();
196 virtual void DoFillColor(Pixel_t);
197 virtual void DoFillPattern(Style_t);
199 Int_t* Dividers(Int_t n);
201 virtual void RecursiveRemove(TObject* obj);
203 ClassDef(TH2Editor,0)