/usr/include/root/TH2Editor.h is in libroot-gui-ged-dev 5.34.30-0ubuntu8.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 | // @(#)root/ged:$Id$
// Author: Carsten Hof 08/08/04
/*************************************************************************
* Copyright (C) 1995-2004, 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_TH2Editor
#define ROOT_TH2Editor
//////////////////////////////////////////////////////////////////////////
// //
// TH2Editor //
// //
// Editor changing histogram attributes //
// //
//////////////////////////////////////////////////////////////////////////
#ifndef ROOT_TGedFrame
#include "TGedFrame.h"
#endif
class TH2;
class TGComboBox;
class TGLabel;
class TGTextEntry;
class TGCheckButton;
class TString;
class TGDoubleHSlider;
class TGHSlider;
class TGNumberEntry;
class TGHButtonGroup;
class TGRadioButton;
class TGNumberEntryField;
class TGColorSelect;
class TGedPatternSelect;
class TGTextButton;
class TH2Editor : public TGedFrame {
protected:
TH2 *fHist; // histogram object
TGCompositeFrame *fBin; // Contains the Binning Widgets
TGCompositeFrame *fFit; // Contains the Fitting Widgets
TGTextEntry *fTitle; // histogram title input field
TGComboBox *fTypeCombo; // histogram type combo box
TGComboBox *fCoordsCombo; // Coordinate System combo box
TGComboBox *fContCombo; // Contour selecting combo box
TGLabel *fColContLbl; // No. of Contours Label 1
TGLabel *fColContLbl1; // No. of Contours Label 2
Int_t fTitlePrec; // font precision level
TGHButtonGroup *fDimGroup; // Radiobuttongroup to change 2D <-> 3D-Plot
TGRadioButton *fDim; // 2D-Plot RadioButton
TGRadioButton *fDim0; // 3D-Plot RadioButton
TGLayoutHints *fDimlh; // layout hints for 2D-Plot RadioButton
TGLayoutHints *fDim0lh; // layout hints for 3D-Plot RadioButton
TGCompositeFrame *f6; // Frame that contains the 2D CheckBox DrawOptions
TGCompositeFrame *f9; // Frame that contains the 3D CheckBox DrawOptions
TGCompositeFrame *f12; // Frame that contains the Bar-Title
TGCompositeFrame *f13; // Frame that contains the Bar Width/Offset NumberEntries
TGCompositeFrame *f38; // Frame that contains the Frame Fill widgets
TGCheckButton *fAddError; // CheckBox connected to error bars
TGCheckButton *fAddPalette; // CheckBox connected to Z option (2D)
TGCheckButton *fAddPalette1; // CheckBox connected to Z option (3D)
TGCheckButton *fAddArr; // CheckBox connected to Arr-Option
TGCheckButton *fAddBox; // CheckBox connected to Box-Option
TGCheckButton *fAddScat; // CheckBox connected to Scat-Option
TGCheckButton *fAddCol; // CheckBox connected to Col-Option
TGCheckButton *fAddFB; // Draw front box (or not)
TGCheckButton *fAddBB; // Draw back box (or not)
TGCheckButton *fAddText; // Draw bin contents as text
TGNumberEntry *fContLevels; // Set number of contour levels
TGNumberEntry *fContLevels1; // Set number of contour levels
TGNumberEntry *fBarWidth; // Set bar width of histogram
TGNumberEntry *fBarOffset; // Set bar offset of histogram
TGCompositeFrame *fBinXCont; // Contains the rebin widgets for case 1
TGHSlider *fBinXSlider; // Slider to set rebinning x integer value
TGNumberEntryField *fBinXNumberEntry; // Label which shows the rebinned bin number
TGHSlider *fBinYSlider; // Slider to set rebinning y integer value
TGNumberEntryField *fBinYNumberEntry; // Label which shows the rebinned bin number
TGTextButton *fApply; // Apply-Button to accept the rebinned histogram
TGTextButton *fCancel; // Cancel-Button to reprobate the rebinned histogram
TGCompositeFrame *fBinXCont1; // Contains the X Rebin Widgets for case 2
TGHSlider *fBinXSlider1; // Slider to set x rebinning integer value
TGNumberEntryField *fBinXNumberEntry1;// Label which shows the rebinned x bin number
TGNumberEntryField *fXOffsetNumberEntry; // Shows the offset to the x origin of the histogram
TGHSlider *fXBinOffsetSld; // Add an x-offset to the origin of the histogram
TGCompositeFrame *fBinYCont1; // Contains the Y Rebin Widgets for case 2
TGHSlider *fBinYSlider1; // Slider to set y rebinning integer value
TGNumberEntryField *fBinYNumberEntry1;// Label which shows the rebinned y bin number
TGNumberEntryField *fYOffsetNumberEntry; // Shows the offset to the y origin of the histogram
TGHSlider *fYBinOffsetSld; // Add an y-offset to the origin of the histogram
TGDoubleHSlider *fSliderX; // Slider to set x-axis range
TGNumberEntryField *fSldXMin; // Contains the minimum value of the x-Axis
TGNumberEntryField *fSldXMax; // Contains the maximum value of the x-Axis
TGDoubleHSlider *fSliderY; // Slider to set y-axis range
TGNumberEntryField *fSldYMin; // Contains the minimum value of the y-Axis
TGNumberEntryField *fSldYMax; // Contains the maximum value of the y-Axis
TGCheckButton *fDelaydraw; // Delayed drawing of the new axis range
TGColorSelect *fFrameColor; // Select the Frame Color
TGedPatternSelect *fFramePattern; // Select the Frame Pattern Style
TString fCutString; // Contais info about graphical cuts (if any)
static TGComboBox *BuildHistTypeComboBox(TGFrame *parent, Int_t id);
static TGComboBox *BuildHistCoordsComboBox(TGFrame *parent, Int_t id);
static TGComboBox *BuildHistContComboBox(TGFrame* parent, Int_t id);
virtual void ConnectSignals2Slots();
void CreateBinTab(); // Creates the Bin Tab (part of the SetGedEditor)
private:
void PaintBox3D(Float_t *p1, Float_t *p2,Float_t *p3, Float_t *p4);
TString GetHistTypeLabel();
TString GetHistCoordsLabel();
TString GetHistContLabel();
TString GetHistAdditiveLabel();
TString GetCutOptionString();
Int_t fPx1old,
fPy1old,
fPx2old,
fPy2old;
Float_t fP1oldx[3],
fP2oldx[3],
fP3oldx[3],
fP4oldx[3],
fP5oldx[3],
fP6oldx[3],
fP7oldx[3],
fP8oldx[3];
Float_t fP1oldy[3],
fP2oldy[3],
fP3oldy[3],
fP4oldy[3],
fP5oldy[3],
fP6oldy[3],
fP7oldy[3],
fP8oldy[3];
TH2 *fBinHist; // Cloned histogram for rebin
Double_t fOldXOffset; // saves the old x offset of the histogram
Double_t fOldYOffset; // saves the old y offset of the histogram
public:
TH2Editor(const TGWindow *p = 0,
Int_t width = 140, Int_t height = 30,
UInt_t options = kChildFrame,
Pixel_t back = GetDefaultFrameBackground());
virtual ~TH2Editor();
virtual Bool_t AcceptModel(TObject* model);
virtual void SetModel(TObject* obj);
virtual void ActivateBaseClassEditors(TClass* cl);
virtual void DoTitle(const char *text);
virtual void DoHistView();
virtual void DoHistSimple();
virtual void DoHistComplex();
virtual void DoHistChanges();
virtual void DoAddArr(Bool_t on);
virtual void DoAddBox(Bool_t on);
virtual void DoAddCol(Bool_t on);
virtual void DoAddScat(Bool_t on);
virtual void DoAddText(Bool_t on);
virtual void DoAddError(Bool_t on);
virtual void DoAddPalette(Bool_t on);
virtual void DoAddFB();
virtual void DoAddBB();
virtual void DoContLevel();
virtual void DoContLevel1();
virtual void DoBarWidth();
virtual void DoBarOffset();
virtual void DoBinPressed();
virtual void DoBinMoved();
virtual void DoBinReleased();
virtual void DoBinLabel();
virtual void DoApply();
virtual void DoCancel();
virtual void DoBinReleased1();
virtual void DoBinMoved1();
virtual void DoBinLabel1();
virtual void DoOffsetMoved();
virtual void DoOffsetReleased();
virtual void DoOffsetPressed();
virtual void DoBinOffset();
virtual void DoSliderXMoved();
virtual void DoSliderXPressed();
virtual void DoSliderXReleased();
virtual void DoXAxisRange();
virtual void DoSliderYMoved();
virtual void DoSliderYPressed();
virtual void DoSliderYReleased();
virtual void DoYAxisRange();
virtual void DoFillColor(Pixel_t);
virtual void DoFillPattern(Style_t);
Int_t* Dividers(Int_t n);
virtual void RecursiveRemove(TObject* obj);
ClassDef(TH2Editor,0) // TH2 editor
};
#endif
|