156 kDIM_SIMPLE, kDIM_COMPLEX, kHIST_TYPE,
157 kTYPE_LEGO, kTYPE_LEGO1, kTYPE_LEGO2, kTYPE_LEGO3, kTYPE_LEGO4,
158 kTYPE_SURF, kTYPE_SURF1, kTYPE_SURF2, kTYPE_SURF3, kTYPE_SURF4, kTYPE_SURF5,
159 kCOORD_TYPE, kCOORDS_CAR, kCOORDS_CYL, kCOORDS_POL, kCOORDS_PSR, kCOORDS_SPH,
160 kCONT_TYPE, kERROR_ONOFF, kPALETTE_ONOFF, kPALETTE_ONOFF1,
161 kARROW_ONOFF,kBOX_ONOFF, kSCAT_ONOFF, kCOL_ONOFF, kTEXT_ONOFF,
162 kFRONTBOX_ONOFF, kBACKBOX_ONOFF,
163 kBAR_WIDTH, kBAR_OFFSET,
164 kCONT_NONE, kCONT_0, kCONT_1, kCONT_2, kCONT_3, kCONT_4,
165 kCONT_LEVELS, kCONT_LEVELS1,
166 kSLIDERX_MIN, kSLIDERX_MAX, kSLIDERY_MIN, kSLIDERY_MAX,
167 kDELAYED_DRAWING, kCOLOR, kPATTERN,
168 kBINXSLIDER, kBINYSLIDER, kBINXSLIDER1, kBINYSLIDER1,
169 kXBINOFFSET, kYBINOFFSET
371 gROOT->GetListOfCleanups()->Add(
this);
682 gROOT->GetListOfCleanups()->Remove(
this);
699 fTitle->
Connect(
"TextChanged(const char *)",
"TH2Editor",
this,
"DoTitle(const char *)");
704 fAddArr->
Connect(
"Toggled(Bool_t)",
"TH2Editor",
this,
"DoAddArr(Bool_t)");
705 fAddBox->
Connect(
"Toggled(Bool_t)",
"TH2Editor",
this,
"DoAddBox(Bool_t)");
706 fAddCol->
Connect(
"Toggled(Bool_t)",
"TH2Editor",
this,
"DoAddCol(Bool_t)");
707 fAddScat->
Connect(
"Toggled(Bool_t)",
"TH2Editor",
this,
"DoAddScat(Bool_t)");
708 fAddText->
Connect(
"Toggled(Bool_t)",
"TH2Editor",
this,
"DoAddText(Bool_t)");
709 fAddError->
Connect(
"Toggled(Bool_t)",
"TH2Editor",
this,
"DoAddError(Bool_t)");
712 fAddFB->
Connect(
"Toggled(Bool_t)",
"TH2Editor",
this,
"DoAddFB()");
713 fAddBB->
Connect(
"Toggled(Bool_t)",
"TH2Editor",
this,
"DoAddBB()");
716 this,
"DoContLevel()");
719 this,
"DoContLevel1()");
722 this,
"DoBarWidth()");
725 this,
"DoBarOffset()");
734 fApply->
Connect(
"Clicked()",
"TH2Editor",
this,
"DoApply()");
750 fSliderX->
Connect(
"PositionChanged()",
"TH2Editor",
this,
"DoSliderXMoved()");
752 fSliderX->
Connect(
"Released()",
"TH2Editor",
this,
"DoSliderXReleased()");
753 fSldXMin->
Connect(
"ReturnPressed()",
"TH2Editor",
this,
"DoXAxisRange()");
754 fSldXMax->
Connect(
"ReturnPressed()",
"TH2Editor",
this,
"DoXAxisRange()");
755 fSliderY->
Connect(
"PositionChanged()",
"TH2Editor",
this,
"DoSliderYMoved()");
757 fSliderY->
Connect(
"Released()",
"TH2Editor",
this,
"DoSliderYReleased()");
758 fSldYMin->
Connect(
"ReturnPressed()",
"TH2Editor",
this,
"DoYAxisRange()");
759 fSldYMax->
Connect(
"ReturnPressed()",
"TH2Editor",
this,
"DoYAxisRange()");
760 fFrameColor->
Connect(
"ColorSelected(Pixel_t)",
"TH2Editor",
this,
"DoFillColor(Pixel_t)");
761 fFramePattern->
Connect(
"PatternSelected(Style_t)",
"TH2Editor",
this,
"DoFillPattern(Style_t)");
773 ((
TH2*)obj)->GetEntries() == 0)) {
951 Int_t nxbinmin =
fHist -> GetXaxis() -> GetFirst();
952 Int_t nxbinmax =
fHist -> GetXaxis() -> GetLast();
959 Int_t nybinmin =
fHist -> GetYaxis() -> GetFirst();
960 Int_t nybinmax =
fHist -> GetYaxis() -> GetLast();
1001 Int_t n1 = 0, n2 =0;
1002 Int_t upx =0, upy =0;
1014 if (divx[0]-1 <= 1) upx = 2;
1015 else upx = divx[0]-1;
1017 if (divy[0]-1 <= 1) upy = 2;
1018 else upy = divy[0]-1;
1024 while ( divx[i] != nx) i ++;
1030 while ( divy [j] != ny) j ++;
1110 if (str==
"" || str==
"SCAT" || str==
fCutString) {
1188 if (str==
"" || str==
"SCAT" || str==
fCutString) {
1269 if (str==
"" || str==
"SCAT" || str==
fCutString) {
1301 if (str==
"" || str==
"SCAT" || str==
fCutString) {
1343 if (str==
"" || str==
"SCAT" || str==
fCutString)
1402 if (str==
"" || str==
"SCAT" || str==
fCutString)
1604 if (divx[0]==2 && divy[0]==2) {
1664 if (divx[0]==2 && divy[0]==2 && !
fBinHist)
1666 "TH2Editor",
"It is not possible to rebin the histogram",
1685 if (divx[0]==2 && divy[0]==2) {
1700 if (nx < 1 || ny < 1)
return;
1713 if (maxx==1) maxx=2;
1714 if (maxy==1) maxy=2;
1781 if (nx < 2 || ny < 2)
return;
1787 for (i = 2; i <= divx[0]; i++) {
1794 for (i = 2; i <= divy[0]; i++) {
1823 "TH2 Editor",
"Replace origin histogram with rebinned one?",
1834 Int_t upx = 0, upy = 0;
1835 if (divx[0]-1 <= 1) upx = 2;
1836 else upx = divx[0]-1;
1837 if (divy[0]-1 <= 1) upy = 2;
1838 else upy = divy[0]-1;
1906 if (xnumber==5 && ynumber==5)
return;
1909 Int_t xBinNumber = 0;
1910 Int_t yBinNumber = 0;
1914 if (xnumber >= 5) xfact = xnumber - 4;
1915 else xfact = xnumber - 6;
1916 if (ynumber >= 5) yfact = ynumber - 4;
1917 else yfact = ynumber - 6;
1919 if (!player)
return;
1939 if (xfact > 0) xBinNumber = xfact*
nx;
1940 if (xfact < 0) xBinNumber = (
Int_t) ((-1)*nx/xfact+0.5);
1941 if (xBinNumber < 1) xBinNumber = 1;
1942 if (xBinNumber > 1000) xBinNumber= 1000;
1943 if (yfact > 0) yBinNumber = yfact*
ny;
1944 if (yfact < 0) yBinNumber = (
Int_t) ((-1)*ny/yfact+0.5);
1945 if (yBinNumber < 1) yBinNumber = 1;
1946 if (yBinNumber > 1000) yBinNumber= 1000;
1951 ((
TH2*)player->
GetHistogram())->SetBins(xBinNumber, minx-oldXOffset+xOffset,
1952 maxx-oldXOffset+xOffset,
1953 yBinNumber, miny-oldYOffset+yOffset,
1954 maxy-oldYOffset+yOffset);
1966 xaxis->
FindBin(rmaxx-xBinWidth/2));
1968 yaxis->
FindBin(rmaxy-yBinWidth/2));
1974 xaxis->
FindBin(rmaxx-xBinWidth/2));
1976 yaxis->
FindBin(rmaxy-yBinWidth/2));
2013 Int_t numx = lastx-firstx+1;
2014 Int_t numy = lasty-firsty+1;
2017 Int_t xBinNumber = 0;
2018 Int_t yBinNumber = 0;
2019 if (xnumber >= 5) xfact = xnumber - 4;
2020 else xfact = xnumber - 6;
2021 if (xfact > 0) xBinNumber = xfact*numx;
2022 if (xfact < 0) xBinNumber = (
Int_t) ((-1)*numx/xfact+0.5);
2023 if (xBinNumber < 1) xBinNumber = 1;
2024 if (xBinNumber > 1000) xBinNumber= 1000;
2028 if (ynumber >= 5) yfact = ynumber - 4;
2029 else yfact = ynumber - 6;
2030 if (yfact > 0) yBinNumber = yfact*numy;
2031 if (yfact < 0) yBinNumber = (
Int_t) ((-1)*numy/yfact+0.5);
2032 if (yBinNumber < 1) yBinNumber = 1;
2033 if (yBinNumber > 1000) yBinNumber= 1000;
2051 if (!player)
return;
2071 Int_t xBinNumber = (
Int_t) ((maxx-minx)/(rmaxx - rminx)*numx + 0.5);
2072 if (xBinNumber < 1) xBinNumber = 1;
2073 if (xBinNumber > 1000) xBinNumber= 1000;
2075 Int_t yBinNumber = (
Int_t) ((maxy-miny)/(rmaxy - rminy)*numy + 0.5);
2076 if (yBinNumber < 1) yBinNumber = 1;
2077 if (yBinNumber > 1000) yBinNumber= 1000;
2080 ((
TH2*)player->
GetHistogram())->SetBins(xBinNumber, minx-oldXOffset+xOffset,
2081 maxx-oldXOffset+xOffset,
2082 yBinNumber, miny-oldYOffset+yOffset,
2083 maxy-oldYOffset+yOffset);
2095 xaxis->
FindBin(rmaxx-xBinWidth/2));
2097 yaxis->
FindBin(rmaxy-yBinWidth/2));
2103 xaxis->
FindBin(rmaxx-xBinWidth/2));
2105 yaxis->
FindBin(rmaxy-yBinWidth/2));
2144 Double_t xOffset = 1.*numx/100*xBinWidth;
2145 Double_t yOffset = 1.*numy/100*yBinWidth;
2152 if (!player)
return;
2171 maxx-oldXOffset+xOffset,
2172 ny, miny-oldYOffset+yOffset,
2173 maxy-oldYOffset+yOffset);
2183 xaxis->
FindBin(rmaxx+xOffset-oldXOffset-xBinWidth/2));
2185 yaxis->
FindBin(rmaxy+yOffset-oldYOffset-yBinWidth/2));
2211 Double_t xOffset = 1.*numx/100*xBinWidth;
2212 Double_t yOffset = 1.*numy/100*yBinWidth;
2220 if (!player)
return;
2239 maxx-oldXOffset+xOffset,
2240 ny, miny-oldYOffset+yOffset,
2241 maxy-oldYOffset+yOffset);
2251 xaxis->
FindBin(rmaxx+xOffset-oldXOffset-xBinWidth/2));
2253 yaxis->
FindBin(rmaxy+yOffset-oldYOffset-yBinWidth/2));
2286 if (!player)
return;
2304 maxx+xOffset-oldXOffset,
2305 ny,miny+yOffset-oldYOffset,
2306 maxy+yOffset-oldYOffset);
2316 xaxis->
FindBin(rmaxx+xOffset-oldXOffset-xBinWidth/2));
2318 yaxis->
FindBin(rmaxy+yOffset-oldYOffset-yBinWidth/2));
2338 Int_t px1,py1,px2,py2;
2366 Float_t p1[3],
p2[3],
p3[3], p4[3], p5[3], p6[3], p7[3], p8[3];
2376 p1[0] = p4[0] = p5[0] = p8[0] =
2378 p2[0] = p3[0] = p6[0] = p7[0] =
2380 p1[1] = p2[1] = p3[1] = p4[1] = rmin[1];
2381 p5[1] = p6[1] = p7[1] = p8[1] = rmax[1];
2382 p1[2] = p2[2] = p5[2] = p6[2] = rmin[2];
2383 p3[2] = p4[2] = p7[2] = p8[2] = rmax[2];
2390 for (
Int_t i = 0; i<3; i++){
2525 Int_t px1,py1,px2,py2;
2553 Float_t p1[3],
p2[3],
p3[3], p4[3], p5[3], p6[3], p7[3], p8[3];
2563 p1[0] = p2[0] = p3[0] = p4[0] = rmin[0];
2564 p5[0] = p6[0] = p7[0] = p8[0] = rmax[0];
2565 p1[1] = p4[1] = p5[1] = p8[1] =
2567 p2[1] = p3[1] = p6[1] = p7[1] =
2569 p1[2] = p2[2] = p5[2] = p6[2] = rmin[2];
2570 p3[2] = p4[2] = p7[2] = p8[2] = rmax[2];
2577 for (
Int_t i = 0; i<3; i++) {
2701 Int_t nybinmin = yaxis -> GetFirst();
2702 Int_t nybinmax = yaxis -> GetLast();
2736 case (-1) : {s =
"";
break;}
2737 case (kTYPE_LEGO ): {s =
"LEGO";
break;}
2738 case (kTYPE_LEGO1): {s =
"LEGO1";
break;}
2739 case (kTYPE_LEGO2): {s =
"LEGO2";
break;}
2740 case (kTYPE_LEGO3): {s =
"LEGO3";
break;}
2741 case (kTYPE_LEGO4): {s =
"LEGO4";
break;}
2742 case (kTYPE_SURF ): {s =
"SURF";
break;}
2743 case (kTYPE_SURF1): {s =
"SURF1";
break;}
2744 case (kTYPE_SURF2): {s =
"SURF2";
break;}
2745 case (kTYPE_SURF3): {s =
"SURF3";
break;}
2746 case (kTYPE_SURF4): {s =
"SURF4";
break;}
2747 case (kTYPE_SURF5): {s =
"SURF5";
break;}
2761 case (-1) : {s =
"";
break;}
2762 case (kCOORDS_CAR): {s =
"";
break;}
2763 case (kCOORDS_POL): {s =
"POL";
break;}
2764 case (kCOORDS_CYL): {s =
"CYL";
break;}
2765 case (kCOORDS_SPH): {s =
"SPH";
break;}
2766 case (kCOORDS_PSR): {s =
"PSR";
break;}
2779 case (-1) : {s =
"";
break;}
2780 case (kCONT_NONE) : {s =
"";
break;}
2781 case (kCONT_0) : {s =
"CONT0";
break;}
2782 case (kCONT_1) : {s =
"CONT1";
break;}
2783 case (kCONT_2) : {s =
"CONT2";
break;}
2784 case (kCONT_3) : {s =
"CONT3";
break;}
2785 case (kCONT_4) : {s =
"CONT4";
break;}
2823 cutopt += opt(scut,ecut);
2857 c->
AddEntry(
"Cartesian", kCOORDS_CAR);
2858 c->
AddEntry(
"Cylindric", kCOORDS_CYL);
2860 c->
AddEntry(
"Rapidity", kCOORDS_PSR);
2861 c->
AddEntry(
"Spheric", kCOORDS_SPH);
2905 }
else if (n == 1) {
2914 for (
Int_t i=2; i <= n/2; i++) {
virtual void HideFrame(TGFrame *f)
Hide sub frame.
Int_t GetFirst() const
Return first bin on the axis i.e.
virtual const char * GetTitle() const
Returns title of object.
virtual void SetLineWidth(Width_t lwidth)
virtual void Resize(UInt_t w=0, UInt_t h=0)
Resize the frame.
virtual void SetBarOffset(Float_t offset=0.25)
void FeedbackMode(Bool_t set)
Turn rubberband feedback mode on or off.
virtual Int_t GetNfill() const
virtual Double_t GetUxmin() const =0
virtual void Selected(TVirtualPad *pad, TObject *obj, Int_t event)
Emit Selected() signal.
virtual void Resize(UInt_t w, UInt_t h)
Resize the listbox widget.
virtual const char * GetName() const
Return unique name, used in SavePrimitive methods.
virtual void DoOffsetPressed()
Slot connected to the OffSetSlider.
static double p3(double t, double a, double b, double c, double d)
TGNumberEntryField * fSldXMax
virtual Bool_t InheritsFrom(const char *classname) const
Returns kTRUE if object inherits from class "classname".
virtual void SetDirectory(TDirectory *dir)
By default when an histogram is created, it is added to the list of histogram objects in the current ...
virtual void SetRange(Int_t min, Int_t max)
virtual Double_t * GetRmax()=0
TString GetHistTypeLabel()
Return the immediate histogram type (HIST, LEGO1-4, SURF1-5).
virtual void SetToolTipText(const char *text, Long_t delayms=500)
Set tool tip text associated with this text entry.
virtual void SetContour(Int_t nlevels, const Double_t *levels=0)
Set the number and values of contour levels.
virtual void SetBins(Int_t nx, Double_t xmin, Double_t xmax)
Redefine x axis parameters.
TGCheckButton * fAddPalette1
TH2Editor(const TGWindow *p=0, Int_t width=140, Int_t height=30, UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground())
Constructor of histogram attribute GUI.
Bool_t IsEnabled(Int_t tabIndex) const
Returns true if tab is enabled.
void SetColor(Pixel_t color, Bool_t emit=kTRUE)
Set color.
virtual void DoBinMoved()
Slot connected to the rebin sliders in case of no ntuple histogram does the rebinning of the selected...
virtual void SetIntNumber(Long_t val)
Set the numeric value (integer representation).
TGComboBox * fCoordsCombo
virtual void DoAddError(Bool_t on)
Slot connected to the "Error" check button.
void ActivateEditors(TList *bcl, Bool_t recurse)
Searches GedFrames for classes in the given list.
virtual void SetNumber(Double_t val)
void ToUpper()
Change string to upper case.
ClassImp(TH2Editor) enum ETH2Wid
virtual Double_t GetBinLowEdge(Int_t bin) const
Return low edge of bin.
TGNumberEntryField * fXOffsetNumberEntry
TString GetHistCoordsLabel()
Return the immediate coordinate system of the histogram.
virtual void TakeAction()
Execute action for object obj fNfill times.
void CreateBinTab()
Create the Binning tab.
TGNumberEntry * fContLevels1
virtual void DoAddFB()
Slot connected to the "FB front-box draw option" check button.
virtual void ShowFrame(TGFrame *f)
Show sub frame.
virtual TVirtualPad * GetPad() const
virtual Double_t GetBinWidth(Int_t bin) const
Return bin width.
constexpr std::array< decltype(std::declval< F >)(std::declval< int >))), N > make(F f)
virtual void DoSliderYPressed()
Slot connected to y-axis slider which initialises the "virtual" box which is drawn in delay draw mode...
TString GetCutOptionString()
Return draw option string related to graphical cut in use.
TH1 * GetHistogram() const
virtual void SetRange(Float_t min, Float_t max)
virtual Double_t GetEntries() const
return the current number of entries
virtual void DoAddPalette(Bool_t on)
Slot connected to the color palette check button.
virtual void Layout()
Layout the elements of the composite frame.
virtual void PaintLine3D(Float_t *p1, Float_t *p2)=0
virtual TVirtualPad * cd(Int_t subpadnumber=0)=0
virtual void DoFillColor(Pixel_t)
Slot connected to the fill area color.
TObject * Clone(const char *newname=0) const
Make a complete copy of the underlying object.
void SetFrameFillStyle(Style_t styl=0)
virtual void SetBarWidth(Float_t width=0.5)
virtual void DoHistView()
Slot connected to the 'Plot' button group.
TGDoubleHSlider * fSliderX
TGHButtonGroup * fDimGroup
const char * Data() const
virtual void SetRangeUser(Double_t ufirst, Double_t ulast)
Set the viewing range for the axis from ufirst to ulast (in user coordinates).
TGCheckButton * fAddError
virtual Int_t GetContour(Double_t *levels=0)
Return contour values into array levels if pointer levels is non zero.
virtual void DoContLevel1()
Slot connected to the contour level number entry fContLevels1.
TGNumberEntryField * GetNumberEntry() const
virtual void DoAddBox(Bool_t on)
Slot connected to the "Box draw option" check button.
virtual void DoFillPattern(Style_t)
Slot connected to the fill area pattern.
void PaintBox3D(Float_t *p1, Float_t *p2, Float_t *p3, Float_t *p4)
Paint a square in 3D.
virtual void DoContLevel()
Slot connected to the contour level number entry fContLevels.
virtual void DoBinLabel()
Slot connected to the Bin Number Entry for the Rebin.
static double p2(double t, double a, double b, double c)
virtual void DoSliderXReleased()
Slot connected to the x-axis slider finalizing values after the slider movement.
virtual void Update()
Update the current pad when an attribute is changed via GUI.
virtual void Select(Int_t id, Bool_t emit=kTRUE)
Make the selected item visible in the combo box window and emit signals according to the second param...
TGCompositeFrame(const TGCompositeFrame &)
virtual TGVerticalFrame * CreateEditorTabSubFrame(const char *name)
Create a vertical frame to be used by 'owner' in extra tab 'name'.
virtual void DoAddScat(Bool_t on)
Slot connected to the "Scat draw option" check button.
virtual void DoBinOffset()
Slot connected to the OffSetNumberEntry, related to the OffSetSlider changes the origin of the histog...
virtual void RecursiveRemove(TObject *obj)
If the contained histogram obj is deleted we must set its pointer to zero.
static TVirtualTreePlayer * GetCurrentPlayer()
Static function: return the current player (if any)
virtual void DoBinReleased()
Slot connected to the rebin slider in case of no ntuple histogram.
virtual void DoBarOffset()
Slot connected to the bar offset of the bar chart.
virtual void DoSliderYReleased()
Slot connected to the y-axis slider finalizing values after the slider movement.
virtual ~TH2Editor()
Destructor.
virtual TView * GetView() const =0
virtual Double_t GetUymax() const =0
virtual Int_t GetSelected() const
virtual void SetLimits(ELimit limits=kNELNoLimits, Double_t min=0, Double_t max=1)
Set the numerical limits.
TSelector * GetSelector() const
Style_t GetFrameFillStyle() const
virtual void DoYAxisRange()
Slot connected to the Max/Min number entry fields showing y-axis range.
virtual Double_t GetUymin() const =0
virtual void SetLineColor(Color_t lcolor)
virtual void DoAddText(Bool_t on)
Slot connected to the "Text draw option" check button.
Bool_t Connect(const char *signal, const char *receiver_class, void *receiver, const char *slot)
Non-static method is used to connect from the signal of this object to the receiver slot...
TGNumberEntryField * fBinYNumberEntry
TGCompositeFrame * fBinYCont1
virtual void DoBinPressed()
Slot connected to the rebin slider in case of no ntuple histogram.
virtual void SetRange(Int_t first=0, Int_t last=0)
Set the viewing range for the axis from bin first to last.
virtual Int_t GetPosition() const
TString GetHistAdditiveLabel()
Return histogram additive options (Arr,Box,Col,Scat,Col,Text,E,Z,FB,BB).
Service class for 2-Dim histogram classes.
Class to manage histogram axis.
virtual Int_t XtoAbsPixel(Double_t x) const =0
virtual void Disable(Bool_t on=kTRUE)
virtual Double_t GetBinUpEdge(Int_t bin) const
Return up edge of bin.
static TGComboBox * BuildHistCoordsComboBox(TGFrame *parent, Int_t id)
Create coordinate system combo box.
TGNumberEntryField * fBinYNumberEntry1
virtual Bool_t SetTab(Int_t tabIndex, Bool_t emit=kTRUE)
Brings the composite frame with the index tabIndex to the front and generate the following event if t...
virtual void Refresh(TObject *model)
Refresh the GUI info about the object attributes.
virtual TGListBox * GetListBox() const
virtual void DoCancel()
Slot connected to the Cancel Button in the Rebinned histogram Window.
virtual void SetPosition(Int_t pos)
virtual void ChangeOptions(UInt_t options)
Change composite frame options. Options is an OR of the EFrameTypes.
static Int_t GetColor(const char *hexcolor)
Static method returning color number for color specified by hex color string of form: "#rrggbb"...
virtual Double_t GetNumber() const
Get the numeric value (floating point representation).
void SetPattern(Style_t pattern, Bool_t emit=kTRUE)
Set pattern.
The ROOT global object gROOT contains a list of all defined classes.
static double p1(double t, double a, double b)
TGedPatternSelect * fFramePattern
virtual Int_t GetMaxPosition() const
void Reset(Detail::TBranchProxy *x)
TGNumberEntryField * fYOffsetNumberEntry
virtual void SetIntNumber(Long_t val)
virtual void DoSliderXPressed()
Slot connected to the x axis range slider that initialises the "virtual" box which is drawn in delay ...
virtual Double_t GetUxmax() const =0
virtual void DoAddArr(Bool_t on)
Slot connected to the "Arrow draw option" check button.
virtual void DoXAxisRange()
Slot connected to the Max/Min number entry fields showing x-axis range.
virtual Double_t * GetRmin()=0
virtual void DoBinMoved1()
Slot connected to the rebin slider in case of an ntuple histogram.
virtual void ActivateBaseClassEditors(TClass *cl)
Skip TH1Editor in building list of editors.
virtual void SetModel(TObject *obj)
Pick up the values of current histogram attributes.
A specialized TSelector for TTree::Draw.
Color_t GetFrameFillColor() const
virtual void DoBarWidth()
Slot connected to the bar width of the bar chart.
virtual const TGWindow * GetMainFrame() const
Returns top level main frame.
virtual void SetScale(Int_t scale)
virtual Int_t FindBin(Double_t x)
Find bin number corresponding to abscissa x.
virtual Int_t YtoAbsPixel(Double_t y) const =0
TString & Remove(Ssiz_t pos)
static ULong_t Number2Pixel(Int_t ci)
Static method that given a color index number, returns the corresponding pixel value.
virtual void Modified(Bool_t flag=1)=0
virtual void DoAddCol(Bool_t on)
Slot connected to the "Col draw option" check button.
const TGWindow * GetDefaultRoot() const
Returns the root (i.e.
TGNumberEntryField * fBinXNumberEntry1
Bool_t Contains(Int_t x, Int_t y) const
virtual void DoSliderXMoved()
Slot connected to the x-Slider that redraws the histogram with the new slider range.
TGDoubleHSlider * fSliderY
virtual void Resize(UInt_t w, UInt_t h)
Resize the frame.
TGHSlider * fXBinOffsetSld
TGCompositeFrame * fBinXCont1
virtual void SetDrawOption(Option_t *option="")
Set drawing option for object.
static TGComboBox * BuildHistTypeComboBox(TGFrame *parent, Int_t id)
Create histogram type combo box.
virtual void AddEntry(TGString *s, Int_t id)
virtual void DoOffsetMoved()
Slot connected to the OffSetSlider.
virtual void DoOffsetReleased()
Slot connected to the OffSetSlider that changes the origin of the histogram inbetween a binwidth; reb...
virtual void DoHistComplex()
Slot connected to the 3D-Plot radio button.
virtual void AddFrame(TGFrame *f, TGLayoutHints *l=0)
Add frame to the composite frame using the specified layout hints.
virtual void DoAddBB()
Slot connected to the "BB back-box draw option" check button.
virtual void DoTitle(const char *text)
Slot connected to the histogram title setting.
TString GetHistContLabel()
Returns histogram contour option (None,Cont0..5).
virtual Bool_t Add(TF1 *h1, Double_t c1=1, Option_t *option="")
Performs the operation: this = this + c1*f1 if errors are defined (see TH1::Sumw2), errors are also recalculated.
Int_t GetLast() const
Return last bin on the axis i.e.
virtual UInt_t SetCanExtend(UInt_t extendBitMask)
make the histogram axes extendable / not extendable according to the bit mask returns the previous bi...
TGNumberEntryField * fBinXNumberEntry
Mother of all ROOT objects.
TGCheckButton * fDelaydraw
TGNumberEntryField * fSldXMin
virtual void SetNumber(Double_t val)
Set the numeric value (floating point representation).
virtual void DoBinLabel1()
Slot connected to the Bin Number Entry for the Rebin.
virtual UInt_t GetDefaultHeight() const
virtual Option_t * GetDrawOption() const
Get draw options of the selected object.
virtual Bool_t AcceptModel(TObject *model)
Check if object is able to configure with this editor.
double f2(const double *x)
Bool_t Contains(const char *pat, ECaseCompare cmp=kExact) const
TGNumberEntry * fContLevels
virtual void DoHistChanges()
Slot connected to histogram type, coordinate system, contour combo box.
TGNumberEntryField * fSldYMax
virtual void SetPosition(Float_t min, Float_t max)
void NeedRedraw(TGWindow *w, Bool_t force=kFALSE)
Set redraw flags.
virtual Float_t GetMinPosition() const
virtual Double_t GetNumber() const
virtual Float_t GetMaxPosition() const
void SetFrameFillColor(Color_t color=1)
virtual void SetTitle(const char *title)
Change (i.e.
virtual void DoApply()
Slot connected to the Apply Button in the Rebinned histogram Window.
virtual void SetText(const char *text, Bool_t emit=kTRUE)
Sets text entry to text, clears the selection and moves the cursor to the end of the line...
virtual void Reset(Option_t *option="")
Reset this histogram: contents, errors, etc.
TGNumberEntry * fBarWidth
virtual void DoHistSimple()
Slot connected to the 2D-Plot radio button.
virtual void DoSliderYMoved()
Slot connected to the x-slider for redrawing the histogram with the new slider Range (immediately)...
Implement some of the functionality of the class TTree requiring access to extra libraries (Histogram...
static TGComboBox * BuildHistContComboBox(TGFrame *parent, Int_t id)
Create contour combo box.
TGCheckButton * fAddPalette
TGNumberEntryField * fSldYMin
virtual Float_t GetBarWidth() const
TGCompositeFrame * fBinXCont
virtual void ConnectSignals2Slots()
Connect signals to slots.
virtual void MakeTitle(const char *title)
Create attribute frame title.
TGHSlider * fYBinOffsetSld
Int_t * Dividers(Int_t n)
Give an array of dividers of n (without the trivial divider n)) in the first entry the number of divi...
virtual TCanvas * GetCanvas() const
virtual void DoBinReleased1()
Slot connected to the BinNumber Slider in case of a 'ntuple histogram'.
TGNumberEntry * fBarOffset
Ssiz_t First(char c) const
Find first occurrence of a character c.
virtual Float_t GetBarOffset() const
virtual TH2 * Rebin2D(Int_t nxgroup=2, Int_t nygroup=2, const char *newname="")
Rebin this histogram grouping nxgroup/nygroup bins along the xaxis/yaxis together.
TGColorSelect * fFrameColor
virtual TCanvas * GetCanvas() const =0
virtual void SetEnabled(Int_t tabIndex, Bool_t on=kTRUE)
Enable or disable tab.