75   while(
lc->FindObject(
cdef.Data()))
 
 
  288      static Int_t ww = 500;
 
  306      Warning(
"Constructor",
"Deleting canvas with same name: %s",
name);
 
  309   if (
gROOT->IsBatch()) {   
 
 
  401      Error(
"Constructor", 
"Invalid canvas height: %d",
wh);
 
  409      Warning(
"Constructor",
"Deleting canvas with same name: %s",
name);
 
  412   if (
gROOT->IsBatch()) {   
 
 
  457        : 
TPad(), fDoubleBuffer(0)
 
 
  496      Warning(
"Constructor",
"Deleting canvas with same name: %s",
name);
 
  499   if (
gROOT->IsBatch()) {   
 
 
  605   } 
else if (
IsWeb()) {
 
  634   gROOT->GetListOfCanvases()->Add(
this);
 
 
  749         while ((obj=next())) {
 
 
  815      gROOT->GetListOfCanvases()->Remove(
this);
 
 
  871   if (old) { 
gROOT->GetListOfCanvases()->Remove(old); 
delete old;}
 
  881   if (
gROOT->IsBatch()) {   
 
 
  958   while (
auto obj = next()) {
 
 
  997   if ( 
selected->InheritsFrom(
"TH1") )
 
  999   else if ( 
selected->InheritsFrom(
"TGraph") )
 
 1001   else if ( 
selected->InheritsFrom(
"TAxis") )
 
 1003   if ( 
xaxis != 
nullptr && 
xaxis->GetTimeDisplay()) {
 
 1025            dt.AsSQLString(),
gPad->AbsPixeltoY(py));
 
 
 1110   if (
gROOT->GetEditorMode()) {
 
 
 1160         if (
ctxt.GetSaved() && 
ctxt.GetSaved()->GetCanvas() == 
this) {
 
 1161            ctxt.GetSaved()->cd();
 
 1162            ctxt.GetSaved()->HighLight(
ctxt.GetSaved()->GetHighLightColor());
 
 
 1370         printf(
"Current Pad: %s / %s\n", 
pad->GetName(), 
pad->GetTitle());
 
 
 1520   ::Info(
"TCanvas::MakeDefCanvas",
" created default TCanvas with name %s", 
cdef.Data());
 
 
 1560   if (!
pad) 
return nullptr;
 
 
 1599   Emit(
"Picked(TPad*,TObject*,Int_t)", args);
 
 
 1619   Emit(
"Highlighted(TVirtualPad*,TObject*,Int_t,Int_t)", args);
 
 
 1631   Connect(
"Highlighted(TVirtualPad*,TObject*,Int_t,Int_t)", 
nullptr, 
nullptr, 
slot);
 
 
 1645   Emit(
"Selected(TVirtualPad*,TObject*,Int_t)", args);
 
 
 1660   Emit(
"ProcessedEvent(Int_t,Int_t,Int_t,TObject*)", args);
 
 
 1780      out<<
"   gStyle->SetOptFit(1);"<<std::endl;
 
 1783      out<<
"   gStyle->SetOptStat(0);"<<std::endl;
 
 1786      out<<
"   gStyle->SetOptTitle(0);"<<std::endl;
 
 1788   if (
gROOT->GetEditHistograms()) {
 
 1789      out<<
"   gROOT->SetEditHistograms();"<<std::endl;
 
 1792      out<<
"   "<<
GetName()<<
"->ToggleEventStatus();"<<std::endl;
 
 1795      out<<
"   "<<
GetName()<<
"->ToggleToolTips();"<<std::endl;
 
 1798      out<<
"   "<<
GetName()<<
"->ToggleToolBar();"<<std::endl;
 
 1802         out<<
"   "<<
GetName()<<
"->SetHighLightColor(ci);" << std::endl;
 
 
 1823   gROOT->ResetClassSaved();
 
 1837      if (
fname.IsNull()) {
 
 1843   out.open(
fname.Data(), std::ios::out);
 
 1845      Error(
"SaveSource", 
"Cannot open file: %s", 
fname.Data());
 
 1851   out.precision(precision);
 
 1859      Error(
"SaveSource", 
"Cannot open TCanvas");
 
 1874   out << R
"CODE(#ifdef __CLING__ 
 1875#pragma cling optimize(0) 
 1884   if (!first.
IsDigit()) out <<
"void " << 
mname(s,
p-s) << 
"()" << std::endl;
 
 1886   out <<
"{"<<std::endl;
 
 1887   out <<
"//=========Macro generated from canvas: "<<
GetName()<<
"/"<<
GetTitle()<<std::endl;
 
 1888   out <<
"//=========  ("<<t.
AsString()<<
") by ROOT version "<<
gROOT->GetVersion()<<std::endl;
 
 1891      out <<std::endl<<
"   gStyle->SetCanvasPreferGL(kTRUE);"<<std::endl<<std::endl;
 
 1902         out<<
",-"<<
topx<<
","<<
topy<<
","<<
w<<
","<<
h<<
");"<<std::endl;
 
 1904         out<<
","<<
topx<<
","<<
topy<<
","<<
w<<
","<<
h<<
");"<<std::endl;
 
 1908      out<<
"   gStyle->SetOptFit(1);"<<std::endl;
 
 1911      out<<
"   gStyle->SetOptStat(0);"<<std::endl;
 
 1914      out<<
"   gStyle->SetOptTitle(0);"<<std::endl;
 
 1916   if (
gROOT->GetEditHistograms()) {
 
 1917      out<<
"   gROOT->SetEditHistograms();"<<std::endl;
 
 1920      out<<
"   "<<
GetName()<<
"->ToggleEventStatus();"<<std::endl;
 
 1923      out<<
"   "<<
GetName()<<
"->ToggleToolTips();"<<std::endl;
 
 1927         out<<
"   "<<
GetName()<<
"->SetHighLightColor(ci);" << std::endl;
 
 1938   out<<
"   "<<
GetName()<<
"->SetSelected("<<
GetName()<<
");"<<std::endl;
 
 1940      out<<
"   "<<
GetName()<<
"->ToggleToolBar();"<<std::endl;
 
 1944   out <<
"}"<<std::endl;
 
 1946   Info(
"SaveSource",
"C++ Macro file: %s has been generated", 
fname.Data());
 
 
 1949   gROOT->ResetClassSaved();
 
 2022            Error(
"SetAspectRatio", 
"cannot fix aspect ratio, height of canvas is 0");
 
 
 2107   } 
else if (axis==2) {
 
 2111      Error(
"SetRealAspectRatio", 
"axis value %d is neither 1 (resize along x-axis) nor 2 (resize along y-axis).",axis);
 
 2139      Error(
"SetRealAspectRatio", 
"Resizing failed.");
 
 
 2226   if (
b.IsReading()) {
 
 2231      if (
v>7) 
b.ClassMember(
"TPad");
 
 2274      if (
v>7) 
b.ClassMember(
"fDISPLAY",
"TString");
 
 2276      if (
v>7) 
b.ClassMember(
"fDoubleBuffer", 
"Int_t");
 
 2278      if (
v>7) 
b.ClassMember(
"fRetained", 
"Bool_t");
 
 2280      if (
v>7) 
b.ClassMember(
"fXsizeUser", 
"Size_t");
 
 2282      if (
v>7) 
b.ClassMember(
"fYsizeUser", 
"Size_t");
 
 2284      if (
v>7) 
b.ClassMember(
"fXsizeReal", 
"Size_t");
 
 2286      if (
v>7) 
b.ClassMember(
"fYsizeReal", 
"Size_t");
 
 2289      if (
v>7) 
b.ClassMember(
"fWindowTopX", 
"Int_t");
 
 2291      if (
v>7) 
b.ClassMember(
"fWindowTopY", 
"Int_t");
 
 2294         if (
v>7) 
b.ClassMember(
"fWindowWidth", 
"UInt_t");
 
 2296         if (
v>7) 
b.ClassMember(
"fWindowHeight", 
"UInt_t");
 
 2299      if (
v>7) 
b.ClassMember(
"fCw", 
"UInt_t");
 
 2301      if (
v>7) 
b.ClassMember(
"fCh", 
"UInt_t");
 
 2307      if (
v>7) 
b.ClassMember(
"fCatt", 
"TAttCanvas");
 
 2310      if (
v>7) 
b.ClassMember(
"kMoveOpaque", 
"Bool_t");
 
 2312      if (
v>7) 
b.ClassMember(
"kResizeOpaque", 
"Bool_t");
 
 2314      if (
v>7) 
b.ClassMember(
"fHighLightColor", 
"Color_t");
 
 2316      if (
v>7) 
b.ClassMember(
"fBatch", 
"Bool_t");
 
 2319      if (
v>7) 
b.ClassMember(
"kShowEventStatus", 
"Bool_t");
 
 2323         if (
v>7) 
b.ClassMember(
"kAutoExec", 
"Bool_t");
 
 2326      if (
v>7) 
b.ClassMember(
"kMenuBar", 
"Bool_t");
 
 2354      b.ClassMember(
"TPad");
 
 2358      b.ClassMember(
"fDISPLAY",
"TString");
 
 2360      b.ClassMember(
"fDoubleBuffer", 
"Int_t");
 
 2362      b.ClassMember(
"fRetained", 
"Bool_t");
 
 2364      b.ClassMember(
"fXsizeUser", 
"Size_t");
 
 2366      b.ClassMember(
"fYsizeUser", 
"Size_t");
 
 2368      b.ClassMember(
"fXsizeReal", 
"Size_t");
 
 2370      b.ClassMember(
"fYsizeReal", 
"Size_t");
 
 2376      b.ClassMember(
"fWindowTopX", 
"Int_t");
 
 2378      b.ClassMember(
"fWindowTopY", 
"Int_t");
 
 2380      b.ClassMember(
"fWindowWidth", 
"UInt_t");
 
 2382      b.ClassMember(
"fWindowHeight", 
"UInt_t");
 
 2384      b.ClassMember(
"fCw", 
"UInt_t");
 
 2386      b.ClassMember(
"fCh", 
"UInt_t");
 
 2388      b.ClassMember(
"fCatt", 
"TAttCanvas");
 
 2390      b.ClassMember(
"kMoveOpaque", 
"Bool_t");
 
 2392      b.ClassMember(
"kResizeOpaque", 
"Bool_t");
 
 2394      b.ClassMember(
"fHighLightColor", 
"Color_t");
 
 2396      b.ClassMember(
"fBatch", 
"Bool_t");
 
 2398      b.ClassMember(
"kShowEventStatus", 
"Bool_t");
 
 2400      b.ClassMember(
"kAutoExec", 
"Bool_t");
 
 2402      b.ClassMember(
"kMenuBar", 
"Bool_t");
 
 
 2469                   (
gPad->GetGLDevice() != -1) || (
gPad->GetCanvas() && 
gPad->GetCanvas()->IsWeb()));
 
 
 2489      void (*fFuncPtr)(
void*);
 
 
 2596         Error(
"CreatePainter", 
"GL Painter creation failed! Will use default!");
 
 
 2649      while (
auto c = 
dynamic_cast<TCanvas *
>(iter()))
 
 2653         ::Warning(
"TCanvas::SaveAll", 
"No pads are provided");
 
 2664   if ((pads.size() == 1) && !
hasArg) {
 
 2669   auto p = 
fname.Last(
'.');
 
 2675      ::Warning(
"TCanvas::SaveAll", 
"Extension is not provided in file name %s, append .png", 
filename);
 
 2676      fname.Append(
".png");
 
 2685   static std::vector<TString> 
webExtensions = { 
"png", 
"json", 
"svg", 
"pdf", 
"jpg", 
"jpeg", 
"webp" };
 
 2687   if (
gROOT->IsWebDisplay()) {
 
 2695         auto cmd = 
TString::Format(
"TWebCanvas::ProduceImages( *((std::vector<TPad *> *) 0x%zx), \"%s\")", (
size_t) &pads, 
fname.Data());
 
 2700      ::Warning(
"TCanvas::SaveAll", 
"TWebCanvas does not support image format %s - use normal ROOT functionality", 
fname.Data());
 
 2704   if (
ext == 
"pdf" || 
ext == 
"ps") {
 
 2705      for (
unsigned n = 0; 
n < pads.size(); ++
n) {
 
 2711         else if (
n == pads.size() - 1)
 
 2726         ::Warning(
"TCanvas::SaveAll", 
"Filename %s cannot be used - use pad name %s as pattern", 
fname.Data(), 
fn.Data());
 
 2734         for (
unsigned n = 0; 
n < pads.size(); ++
n) {
 
 2743         ::Info(
"TCanvas::SaveAll", 
"ROOT file %s has been created", 
filename);
 
 2748   for (
unsigned n = 0; 
n < pads.size(); ++
n) {
 
 2753         ::Warning(
"TCanvas::SaveAll", 
"Filename %s cannot be used - use pad name %s as pattern", 
fname.Data(), 
fn.Data());
 
 2756      pads[
n]->SaveAs(
fn.Data());
 
 
TObject * clone(const char *newname) const override
 
R__EXTERN TApplication * gApplication
 
void ROOT_TCanvas_Update(void *TheCanvas)
 
class TCanvasInit gCanvasInit
 
const Size_t kDefaultCanvasSize
 
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
 
winID h TVirtualViewer3D TVirtualGLPainter p
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t cursor
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void SetDoubleBuffer
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char filename
 
Option_t Option_t SetFillStyle
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char cname
 
Option_t Option_t TPoint TPoint const char x2
 
Option_t Option_t TPoint TPoint const char x1
 
Option_t Option_t TPoint TPoint const char mode
 
Option_t Option_t TPoint TPoint const char y2
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void SetCursor
 
Option_t Option_t SetFillColor
 
Option_t Option_t TPoint TPoint const char y1
 
R__EXTERN TGuiFactory * gBatchGuiFactory
 
R__EXTERN TGuiFactory * gGuiFactory
 
R__EXTERN TVirtualMutex * gROOTMutex
 
R__EXTERN TStyle * gStyle
 
R__EXTERN TSystem * gSystem
 
#define R__LOCKGUARD(mutex)
 
R__EXTERN TVirtualPS * gVirtualPS
 
R__EXTERN Int_t(* gThreadXAR)(const char *xact, Int_t nb, void **ar, Int_t *iret)
 
void InitializeGraphics(Bool_t only_web=kFALSE)
Initialize the graphics environment.
 
static void CreateApplication()
Static function used to create a default application environment.
 
static void NeedGraphicsLibs()
Static method.
 
Array of integers (32 bits per element).
 
virtual void Streamer(TBuffer &)
 
Fill Area Attributes class.
 
virtual Color_t GetFillColor() const
Return the fill area color.
 
void Copy(TAttFill &attfill) const
Copy this fill attributes to a new TAttFill.
 
void Copy(TAttLine &attline) const
Copy this line attributes to a new TAttLine.
 
Manages default Pad attributes.
 
virtual void SetBottomMargin(Float_t bottommargin)
Set Pad bottom margin in fraction of the pad height.
 
virtual void SetLeftMargin(Float_t leftmargin)
Set Pad left margin in fraction of the pad width.
 
virtual void Copy(TAttPad &attpad) const
copy function
 
virtual void SetRightMargin(Float_t rightmargin)
Set Pad right margin in fraction of the pad width.
 
virtual void SetTopMargin(Float_t topmargin)
Set Pad top margin in fraction of the pad height.
 
Class to manage histogram axis.
 
Using a TBrowser one can browse all ROOT objects.
 
Buffer base class used for serializing objects.
 
virtual void SetStatusText(const char *text=nullptr, Int_t partidx=0)
 
virtual void SetWindowPosition(Int_t x, Int_t y)
 
virtual void ShowMenuBar(Bool_t show=kTRUE)
 
virtual Bool_t PerformUpdate(Bool_t)
 
virtual void ShowToolTips(Bool_t show=kTRUE)
 
virtual Int_t InitWindow()
 
virtual void SetWindowTitle(const char *newTitle)
 
virtual Bool_t IsWeb() const
 
virtual UInt_t GetWindowGeometry(Int_t &x, Int_t &y, UInt_t &w, UInt_t &h)
 
virtual TVirtualPadPainter * CreatePadPainter()
 
virtual void ShowEditor(Bool_t show=kTRUE)
 
virtual void RaiseWindow()
 
virtual void SetWindowSize(UInt_t width, UInt_t height)
 
virtual void SetCanvasSize(UInt_t w, UInt_t h)
 
virtual void ForceUpdate()
 
virtual void ShowStatusBar(Bool_t show=kTRUE)
 
virtual void ShowToolBar(Bool_t show=kTRUE)
 
void Init()
Initialize the TCanvas members. Called by all constructors.
 
UInt_t fCw
Width of the canvas along X (pixels)
 
~TCanvas() override
Canvas destructor.
 
void EmbedInto(Int_t winid, Int_t ww, Int_t wh)
Embedded a canvas into a TRootEmbeddedCanvas.
 
void SetWindowSize(UInt_t ww, UInt_t wh)
Set canvas window size.
 
static void SetFolder(Bool_t isfolder=kTRUE)
If isfolder=kTRUE, the canvas can be browsed like a folder by default a canvas is not browsable.
 
void Browse(TBrowser *b) override
Browse.
 
UInt_t GetWindowHeight() const
 
virtual void EditorBar()
Get editor bar.
 
static TCanvas * MakeDefCanvas()
Static function to build a default canvas.
 
void EnterLeave(TPad *prevSelPad, TObject *prevSelObj)
Generate kMouseEnter and kMouseLeave events depending on the previously selected object and the curre...
 
Size_t fYsizeReal
Current size of canvas along Y in CM.
 
void Constructor()
Canvas default constructor.
 
virtual void ToggleAutoExec()
Toggle pad auto execution of list of TExecs.
 
TCanvas(const TCanvas &canvas)=delete
 
Int_t fWindowTopX
Top X position of window (in pixels)
 
void Draw(Option_t *option="") override
Draw a canvas.
 
void SetDoubleBuffer(Int_t mode=1) override
Set Double Buffer On/Off.
 
virtual void ToggleToolTips()
Toggle tooltip display.
 
void Clear(Option_t *option="") override
Remove all primitives from the canvas.
 
void UseCurrentStyle() override
Force a copy of current style for all objects in canvas.
 
void Iconify()
Iconify canvas.
 
Int_t GetWindowTopX()
Returns current top x position of window on screen.
 
virtual void ToggleEventStatus()
Toggle event statusbar.
 
void Destructor()
Actual canvas destructor.
 
Bool_t fUpdated
! Set to True when Update method was called
 
void DeleteCanvasPainter()
assert on IsBatch() == false?
 
TPad * fPadSave
! Pointer to saved pad in HandleInput
 
static Bool_t SupportAlpha()
Static function returning "true" if transparency is supported.
 
Bool_t fBatch
! True when in batchmode
 
Bool_t fUseGL
! True when rendering is with GL
 
Int_t fEventX
! Last X mouse position in canvas
 
Bool_t IsBatch() const override
 
TObject * DrawClone(Option_t *option="") const override
Draw a clone of this canvas A new canvas is created that is a clone of this canvas.
 
Size_t fXsizeReal
Current size of canvas along X in CM.
 
Bool_t HasMenuBar() const
 
TVirtualPadPainter * GetCanvasPainter()
Access and (probably) creation of pad painter.
 
virtual void HighlightConnect(const char *slot)
This is "simplification" for function TCanvas::Connect with Highlighted signal for specific slot.
 
TPad * Pick(Int_t px, Int_t py, TObjLink *&pickobj) override
Search for an object at pixel position px,py.
 
void Close(Option_t *option="") override
Close canvas.
 
void SetFixedAspectRatio(Bool_t fixed=kTRUE) override
Fix canvas aspect ratio to current value if fixed is true.
 
virtual void Resize(Option_t *option="")
Recompute canvas parameters following a X11 Resize.
 
Color_t GetHighLightColor() const override
 
Bool_t GetShowToolBar() const
 
void DrawEventStatus(Int_t event, Int_t x, Int_t y, TObject *selected)
Report name and title of primitive below the cursor.
 
Bool_t IsFolder() const override
Is folder ?
 
UInt_t fWindowWidth
Width of window (including borders, etc.)
 
TVirtualPadPainter * fPainter
! Canvas (pad) painter.
 
void CopyPixmaps() override
Copy the canvas pixmap of the pad to the canvas.
 
Bool_t IsGrayscale()
Check whether this canvas is to be drawn in grayscale mode.
 
TPad * fClickSelectedPad
! Pad containing currently click-selected object
 
Bool_t fUpdating
! True when Updating the canvas
 
void SaveSource(const char *filename="", Option_t *option="")
Save primitives in this canvas as a C++ macro file.
 
Color_t fHighLightColor
Highlight color of active pad.
 
virtual void Size(Float_t xsizeuser=0, Float_t ysizeuser=0)
Set the canvas scale in centimeters.
 
virtual void ProcessedEvent(Int_t event, Int_t x, Int_t y, TObject *selected)
Emit ProcessedEvent() signal.
 
virtual void HandleInput(EEventType button, Int_t x, Int_t y)
Handle Input Events.
 
void UpdateAsync() override
Asynchronous pad update.
 
Size_t fXsizeUser
User specified size of canvas along X in CM.
 
Int_t fEventY
! Last Y mouse position in canvas
 
TVirtualPad * cd(Int_t subpadnumber=0) override
Set current canvas & pad.
 
UInt_t fWindowHeight
Height of window (including menubar, borders, etc.)
 
Int_t GetWindowTopY()
Returns current top y position of window on screen.
 
TObject * fClickSelected
! Currently click-selected object
 
void SetCanvasSize(UInt_t ww, UInt_t wh) override
Set Width and Height of canvas to ww and wh respectively.
 
TPad * fSelectedPad
! Pad containing currently selected object
 
virtual void Selected(TVirtualPad *pad, TObject *obj, Int_t event)
Emit Selected() signal.
 
Int_t fSelectedX
! X of selected object
 
virtual void ToggleEditor()
Toggle editor.
 
TVirtualPad * GetSelectedPad() const override
 
virtual void Picked(TPad *selpad, TObject *selected, Int_t event)
Emit Picked() signal.
 
TObject * fSelected
! Currently selected object
 
void SavePrimitive(std::ostream &out, Option_t *option="") override
Save primitives in this canvas in C++ macro file with GUI.
 
void SetCursor(ECursor cursor) override
Set cursor.
 
void Streamer(TBuffer &) override
Stream a class object.
 
Bool_t GetShowToolTips() const
 
Int_t fCanvasID
! Canvas identifier
 
void SetGrayscale(Bool_t set=kTRUE)
Set whether this canvas should be painted in grayscale, and re-paint it if necessary.
 
void SetTitle(const char *title="") override
Set canvas title.
 
UInt_t fCh
Height of the canvas along Y (pixels)
 
TContextMenu * fContextMenu
! Context menu pointer
 
TAttCanvas fCatt
Canvas attributes.
 
void SetName(const char *name="") override
Set canvas name. In case name is an empty string, a default name is set.
 
UInt_t GetWindowWidth() const
 
Bool_t fRetained
Retain structure flag.
 
void DisconnectWidget()
Used by friend class TCanvasImp.
 
void FeedbackMode(Bool_t set)
Turn rubberband feedback mode on or off.
 
void ls(Option_t *option="") const override
List all pads.
 
void RaiseWindow()
Raise canvas window.
 
void Build()
Build a canvas. Called by all constructors.
 
static Bool_t SaveAll(const std::vector< TPad * > &={}, const char *filename="", Option_t *option="")
Save provided pads/canvases into the image file(s) Filename can include printf argument for image num...
 
Int_t fWindowTopY
Top Y position of window (in pixels)
 
void Paint(Option_t *option="") override
Paint canvas.
 
TClass * IsA() const override
 
void Update() override
Update canvas pad buffers.
 
void ExecuteEvent(Int_t event, Int_t px, Int_t py) override
Execute action corresponding to one event.
 
void RunAutoExec()
Execute the list of TExecs in the current pad.
 
virtual void Cleared(TVirtualPad *pad)
Emit pad Cleared signal.
 
UInt_t GetWw() const override
 
TCanvasImp * fCanvasImp
! Window system specific canvas implementation
 
UInt_t GetWh() const override
 
virtual void Highlighted(TVirtualPad *pad, TObject *obj, Int_t x, Int_t y)
Emit Highlighted() signal.
 
void Flush()
Flush canvas buffers.
 
Size_t fYsizeUser
User specified size of canvas along Y in CM.
 
Int_t fDoubleBuffer
Double buffer flag (0=off, 1=on)
 
void ForceUpdate()
Force canvas update.
 
void CreatePainter()
Probably, TPadPainter must be placed in a separate ROOT module - "padpainter" (the same as "histpaint...
 
void SetSelected(TObject *obj) override
Set selected canvas.
 
void MoveOpaque(Int_t set=1)
Set option to move objects/pads in a canvas.
 
static Bool_t fgIsFolder
Indicates if canvas can be browsed as a folder.
 
void Closed() override
Emit Closed signal.
 
Bool_t IsWeb() const override
Is web canvas.
 
void SetWindowPosition(Int_t x, Int_t y)
Set canvas window position.
 
TString fDISPLAY
Name of destination screen.
 
bool SetRealAspectRatio(const Int_t axis=1)
Function to resize a canvas so that the plot inside is shown in real aspect ratio.
 
Int_t fEvent
! Type of current or last handled event
 
Bool_t GetShowEventStatus() const
 
TString fSelectedOpt
! Drawing option of selected object
 
Int_t fSelectedY
! Y of selected object
 
Bool_t fDrawn
! Set to True when the Draw method is called
 
void SetBatch(Bool_t batch=kTRUE) override
Toggle batch mode.
 
void ResizeOpaque(Int_t set=1)
Set option to resize objects/pads in a canvas.
 
virtual void ToggleToolBar()
Toggle toolbar.
 
virtual TObject * DrawClonePad()
Draw a clone of this canvas into the current pad In an interactive session, select the destination/cu...
 
static ENewType IsCallingNew()
Static method returning the defConstructor flag passed to TClass::New().
 
void Browse(TBrowser *b) override
Browse this collection (called by TBrowser).
 
The color creation and management class.
 
static const TArrayI & GetPalette()
Static function returning the current active palette.
 
static Bool_t SaveColor(std::ostream &out, Int_t ci)
Save a color with index > 228 as a C++ statement(s) on output stream out.
 
static Bool_t DefinedColors(Int_t set_always_on=0)
Static method returning kTRUE if some new colors have been defined after initialisation or since the ...
 
This class stores the date and time with a precision of one second in an unsigned 32 bit word (950130...
 
const char * AsString() const
Return the date & time as a string (ctime() format).
 
virtual Int_t GetValue(const char *name, Int_t dflt) const
Returns the integer value for a resource.
 
A TGraph is an object made of two arrays X and Y with npoints each.
 
virtual TCanvasImp * CreateCanvasImp(TCanvas *c, const char *title, UInt_t width, UInt_t height)
Create a batch version of TCanvasImp.
 
TH1 is the base class of all histogram classes in ROOT.
 
Option_t * GetOption() const
 
TObject * FindObject(const char *name) const override
Find an object in this list using its name.
 
void Add(TObject *obj) override
 
TObject * Remove(TObject *obj) override
Remove object from the list.
 
Wrapper around a TObject so it can be stored in a TList.
 
Mother of all ROOT objects.
 
virtual void Clear(Option_t *="")
 
R__ALWAYS_INLINE Bool_t TestBit(UInt_t f) const
 
virtual TObject * Clone(const char *newname="") const
Make a clone of an object using the Streamer facility.
 
R__ALWAYS_INLINE Bool_t IsOnHeap() const
 
virtual const char * ClassName() const
Returns name of class to which the object belongs.
 
virtual void Warning(const char *method, const char *msgfmt,...) const
Issue warning message.
 
virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py)
Execute action corresponding to an event at (px,py).
 
virtual void Delete(Option_t *option="")
Delete this object.
 
void SetBit(UInt_t f, Bool_t set)
Set or unset the user status bits as specified in f.
 
virtual Bool_t InheritsFrom(const char *classname) const
Returns kTRUE if object inherits from class "classname".
 
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
 
virtual void Pop()
Pop on object drawn in a pad to the top of the display list.
 
@ kNoContextMenu
if object does not want context menu
 
@ kMustCleanup
if object destructor must call RecursiveRemove()
 
virtual void Info(const char *method, const char *msgfmt,...) const
Issue info message.
 
Implement TVirtualPadPainter which abstracts painting operations.
 
The most important graphics class in the ROOT system.
 
Short_t GetBorderMode() const override
 
void SetBorderSize(Short_t bordersize) override
 
Int_t GetTicky() const override
 
void PaintBorder(Color_t color, Bool_t tops)
Paint the pad border.
 
void ResizePad(Option_t *option="") override
Compute pad conversion coefficients.
 
void SetGrid(Int_t valuex=1, Int_t valuey=1) override
 
void SavePrimitive(std::ostream &out, Option_t *option="") override
Save primitives in this pad on the C++ source file out.
 
Bool_t GetGridx() const override
 
Double_t fX2
X of upper X coordinate.
 
void SetLogz(Int_t value=1) override
Set Lin/Log scale for Z.
 
Double_t GetY2() const override
 
void Close(Option_t *option="") override
Delete all primitives in pad and pad itself.
 
void PaintModified() override
Traverse pad hierarchy and (re)paint only modified pads.
 
const char * GetTitle() const override
Returns title of object.
 
Double_t fX1
X of lower X coordinate.
 
TList * GetListOfPrimitives() const override
 
void SetPad(const char *name, const char *title, Double_t xlow, Double_t ylow, Double_t xup, Double_t yup, Color_t color=35, Short_t bordersize=5, Short_t bordermode=-1) override
Set all pad parameters.
 
void UseCurrentStyle() override
Force a copy of current style for all objects in pad.
 
void Range(Double_t x1, Double_t y1, Double_t x2, Double_t y2) override
Set world coordinate system for the pad.
 
Double_t fY1
Y of lower Y coordinate.
 
Int_t fGLDevice
! OpenGL off-screen pixmap identifier
 
void Clear(Option_t *option="") override
Delete all pad primitives.
 
Int_t GetTickx() const override
 
Double_t fAspectRatio
ratio of w/h in case of fixed ratio
 
void SetLogy(Int_t value=1) override
Set Lin/Log scale for Y.
 
TCanvas * fCanvas
! Pointer to mother canvas
 
Bool_t fFixedAspectRatio
True if fixed aspect ratio.
 
void Modified(Bool_t flag=true) override
Mark pad modified Will be repainted when TCanvas::Update() will be called next time.
 
void ls(Option_t *option="") const override
List all primitives in pad.
 
void Streamer(TBuffer &) override
Stream a class object.
 
void CopyPixmaps() override
Copy the sub-pixmaps of the pad to the canvas.
 
void CopyPixmap() override
Copy the pixmap of the pad to the canvas.
 
Double_t GetY1() const override
 
Bool_t GetGridy() const override
 
void ExecuteEvent(Int_t event, Int_t px, Int_t py) override
Execute action corresponding to one event.
 
Int_t GetLogz() const override
 
Short_t GetBorderSize() const override
 
TList * fPrimitives
->List of primitives (subpads)
 
Short_t fBorderSize
pad bordersize in pixels
 
void Paint(Option_t *option="") override
Paint all primitives in pad.
 
Int_t fPixmapID
! Off-screen pixmap identifier
 
TObject * FindObject(const char *name) const override
Search if object named name is inside this pad or in pads inside this pad.
 
TVirtualPad * cd(Int_t subpadnumber=0) override
Set Current pad.
 
Int_t GetLogy() const override
 
void SetBorderMode(Short_t bordermode) override
 
void SetTicks(Int_t valuex=1, Int_t valuey=1) override
 
Double_t fY2
Y of upper Y coordinate.
 
Short_t fBorderMode
Bordermode (-1=down, 0 = no border, 1=up)
 
void SetLogx(Int_t value=1) override
Set Lin/Log scale for X.
 
Int_t GetLogx() const override
 
Double_t GetX2() const override
 
Double_t GetX1() const override
 
TPad * fMother
! pointer to mother of the list
 
const char * GetName() const override
Returns name of object.
 
void Emit(const char *signal, const T &arg)
Activate signal with single parameter.
 
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.
 
static Int_t IncreaseDirLevel()
Increase the indentation level for ls().
 
static void IndentLevel()
Functions used by ls() to indent an object hierarchy.
 
static Int_t DecreaseDirLevel()
Decrease the indentation level for ls().
 
void ToLower()
Change string to lower-case.
 
Bool_t IsDigit() const
Returns true if all characters in string are digits (0-9) or white spaces, i.e.
 
virtual void Streamer(TBuffer &)
Stream a string object.
 
static TString Format(const char *fmt,...)
Static method which formats a string using a printf style format descriptor and return a TString.
 
Bool_t Contains(const char *pat, ECaseCompare cmp=kExact) const
 
Double_t GetTimeOffset() const
 
Int_t GetOptTitle() const
 
void SetCanvasBorderSize(Width_t size=1)
 
Float_t GetScreenFactor() const
 
Int_t GetPadTickX() const
 
void SetCanvasColor(Color_t color=19)
 
Float_t GetPadRightMargin() const
 
void SetCanvasBorderMode(Int_t mode=1)
 
Int_t GetCanvasDefH() const
 
Int_t GetCanvasDefX() const
 
Bool_t GetPadGridY() const
 
Float_t GetPadLeftMargin() const
 
void SetPalette(Int_t ncolors=kBird, Int_t *colors=nullptr, Float_t alpha=1.)
See TColor::SetPalette.
 
Bool_t GetCanvasPreferGL() const
 
Int_t GetCanvasDefY() const
 
Bool_t GetPadGridX() const
 
Int_t GetPadTickY() const
 
Color_t GetCanvasColor() const
 
Float_t GetPadBottomMargin() const
 
Int_t GetCanvasDefW() const
 
Int_t GetCanvasBorderMode() const
 
Width_t GetCanvasBorderSize() const
 
Float_t GetPadTopMargin() const
 
virtual Bool_t ExpandPathName(TString &path)
Expand a pathname getting rid of special shell characters like ~.
 
TVirtualPS is an abstract interface to Postscript, PDF, SVG.
 
static TVirtualPadEditor * GetPadEditor(Bool_t load=kTRUE)
Returns the pad editor dialog. Static method.
 
To make it possible to use GL for 2D graphic in a TPad/TCanvas.
 
virtual void LockPainter()
Empty definition.
 
static TVirtualPadPainter * PadPainter(Option_t *opt="")
Create a pad painter of specified type.
 
virtual void SelectDrawable(Int_t device)=0
 
virtual void InitPainter()
Empty definition.
 
small helper class to store/restore gPad context in TPad methods
 
TVirtualPad is an abstract base class for the Pad and Canvas classes.
 
R__ALWAYS_INLINE bool HasBeenDeleted(const TObject *obj)
Check if the TObject's memory has been deleted.
 
Int_t Nint(T x)
Round to nearest integer. Rounds half integers to the nearest even integer.