21 #include "RConfigure.h" 167 "PostScript",
"*.ps",
168 "Encapsulated PostScript",
"*.eps",
172 "ROOT macros",
"*.C",
173 "ROOT files",
"*.root",
189 {
"",
"",
kFALSE, -1, 0 },
192 {
"",
"",
kFALSE, -1, 0 },
285 newpos = fCanvas->fCanvasWindow->GetVsbPosition() - page;
286 if (newpos < 0) newpos = 0;
287 fCanvas->fCanvasWindow->SetVsbPosition(newpos);
292 newpos = fCanvas->fCanvasWindow->GetVsbPosition() + page;
293 fCanvas->fCanvasWindow->SetVsbPosition(newpos);
296 return fCanvas->HandleContainerButton(event);
348 static Int_t img = 0;
447 if (
gROOT->GetEditHistograms())
540 else if (
gVirtualX->InheritsFrom(
"TGCocoa"))
547 Error(
"CreateCanvas",
"GL manager plugin failed");
560 Error(
"CreateCanvas",
"GL context creation failed.");
562 Error(
"CreateCanvas",
"GL window creation failed\n");
582 "EventInfo(Int_t, Int_t, Int_t, TObject*)");
585 int parts[] = { 33, 10, 10, 47 };
702 this,
"EventInfo(Int_t, Int_t, Int_t, TObject*)");
746 0, 0,
x,
y, childdum);
779 gROOT->SetEditorMode();
782 gROOT->SetEditorMode(
"Arc");
785 gROOT->SetEditorMode(
"Line");
788 gROOT->SetEditorMode(
"Arrow");
791 gROOT->SetEditorMode(
"Diamond");
794 gROOT->SetEditorMode(
"Ellipse");
797 gROOT->SetEditorMode(
"Pad");
800 gROOT->SetEditorMode(
"Pave");
803 gROOT->SetEditorMode(
"PaveLabel");
806 gROOT->SetEditorMode(
"PaveText");
809 gROOT->SetEditorMode(
"PavesText");
812 gROOT->SetEditorMode(
"PolyLine");
815 gROOT->SetEditorMode(
"CurlyLine");
818 gROOT->SetEditorMode(
"CurlyArc");
821 gROOT->SetEditorMode(
"Text");
824 gROOT->SetEditorMode(
"Marker");
827 gROOT->SetEditorMode(
"CutG");
832 gROOT->MakeDefCanvas();
850 static Int_t typeidx = 0;
897 appendedType =
kTRUE;
901 Warning(
"ProcessMessage",
"file %s cannot be saved with this extension", fi.
fFilename);
955 gROOT->ProcessLine(
"TStyleManager::Terminate()");
963 gROOT->ProcessLine(
"TStyleManager::Show()");
1019 if (padsav) padsav->
cd();
1031 if (padsav) padsav->
cd();
1038 gPad->GetViewer3D(
"x3d");
1041 gPad->GetViewer3D(
"ogl");
1094 gROOT->SetInterrupt();
1103 delete gPad->FindObject(
"stats");
1115 delete gPad->FindObject(
"title");
1136 if (
gROOT->GetEditHistograms()) {
1158 gROOT->ProcessLine(
"new TGRecorder()");
1180 if (handler && handler->
LoadPlugin() != -1) {
1182 Error(
"FitPanel",
"Unable to crate the FitPanel");
1185 Error(
"FitPanel",
"Unable to find the FitPanel plug-in");
1201 sprintf(str,
"About ROOT %s...",
gROOT->GetVersion());
1220 hd =
new TRootHelpDialog(
this,
"Help on Graphics Editor...", 600, 400);
1345 char *printer, *printCmd;
1346 static TString sprinter, sprintCmd;
1351 printer =
StrDup(sprinter);
1352 if (sprintCmd ==
"")
1359 printCmd =
StrDup(sprintCmd);
1362 &printer, &printCmd, &ret);
1365 sprintCmd = printCmd;
1380 cmd +=
" "; cmd += sprinter; cmd +=
" ";
1386 cmd +=
" "; cmd += fn; cmd +=
" ";
1415 const char *title = selected->
GetTitle();
1418 if (title && strlen(title))
1452 if (dh - ch >= sh) h = h + sh;
1457 if (dh - ch < sh) h = ch;
1484 this,
"Activated(Int_t)");
1540 if (savedPad)
gPad = savedPad;
1560 if (show == 0)
gEnv->
SetValue(
"Canvas.ShowEditor",
"false");
1573 Int_t spacing = 6, i;
1574 for (i = 0; gToolBarData[i].
fPixmap; i++) {
1575 if (strlen(gToolBarData[i].fPixmap) == 0) {
1590 for (i = 0; gToolBarData1[i].
fPixmap; i++) {
1591 if (strlen(gToolBarData1[i].fPixmap) == 0) {
1721 Int_t button =
event->fCode;
1768 Int_t button =
event->fCode;
1794 static Int_t dh = 0;
1810 static UInt_t previous_keysym = 0;
1816 gVirtualX->LookupString(event, str,
sizeof(str), keysym);
1818 if (str[0] ==
kESC){
1826 gROOT->SetInterrupt();
1829 if (keysym > 0x1011 && keysym < 0x1016) {
1832 Int_t mx, my, tx, ty;
1833 wid =
gVirtualX->GetDefaultRootWindow();
1834 gVirtualX->QueryPointer(wid, dum1, dum2, mx, my, mx, my, mask);
1837 mx, my, tx, ty, dum1);
1841 if ((previous_keysym == keysym) && (previous_event ==
kGKeyPress)) {
1860 previous_keysym = keysym;
1868 gVirtualX->LookupString(event, str,
sizeof(str), keysym);
1870 if (keysym > 0x1011 && keysym < 0x1016) {
1873 Int_t mx, my, tx, ty;
1874 wid =
gVirtualX->GetDefaultRootWindow();
1875 gVirtualX->QueryPointer(wid, dum1, dum2, mx, my, mx, my, mask);
1894 mx, my, tx, ty, dum1);
1896 previous_keysym = keysym;
1900 previous_event =
event->fType;
1931 if (event->
fCount == 0) {
1966 if (!obj)
return kTRUE;
1970 if (!
object)
return kTRUE;
1972 object->
Draw(
"ALP");
1975 else if (object->IsA()->GetMethodAllAny(
"Draw"))
1980 else if (obj->IsA()->GetMethodAllAny(
"Draw"))
1988 if (sfname.
Length() > 7) {
2022 gROOT->SetSelectedPad(pad);
2037 for (
int i = 0; typelist[i] !=
kNone; ++i) {
2038 if (typelist[i] == rootObj)
2040 if (typelist[i] == uriObj)
2079 void TRootContainer::SavePrimitive(std::ostream &out,
Option_t * )
2081 out << std::endl <<
" // canvas container" << std::endl;
2082 out <<
" Int_t canvasID = gVirtualX->InitWindow((ULong_t)" 2084 out <<
" Window_t winC = gVirtualX->GetWindowID(canvasID);" << std::endl;
2085 out <<
" TGCompositeFrame *";
2086 out <<
GetName() <<
" = new TGCompositeFrame(gClient,winC"
virtual void HideFrame(TGFrame *f)
Hide sub frame.
const Mask_t kKeyReleaseMask
virtual void Resize(UInt_t w=0, UInt_t h=0)
Resize the frame.
void SetCanvasImp(TCanvasImp *i)
Bool_t GetShowEditor() const
virtual void AddFrame(TGFrame *f, TGLayoutHints *hints)
Add frame to dockable frame container. Frame and hints are NOT adopted.
TGLayoutHints * fMenuBarLayout
TGLayoutHints * fEditorLayout
virtual Bool_t ProcessEvents()
Process pending events (GUI, timers, sockets).
virtual void StartEmbedding(Int_t pos=kRight, Int_t subpos=-1)
Start embedding external frame in the tab "pos" and tab element "subpos".
void MoveOpaque(Int_t set=1)
Set option to move objects/pads in a canvas.
void CreateEditor()
Create embedded editor.
The concrete implementation of TBuffer for writing/reading to/from a ROOT file or socket...
ABC describing GUI independent main window (with menubar, scrollbars and a drawing area)...
virtual void MoveResize(Int_t x, Int_t y, UInt_t w=0, UInt_t h=0)
Move and/or resize the frame.
R__EXTERN const char gHelpPostscript[]
R__EXTERN Int_t gErrorIgnoreLevel
virtual void ToggleEventStatus()
Toggle event statusbar.
virtual Bool_t HandleButton(Event_t *)
virtual const char * WorkingDirectory()
Return working directory.
TGCompositeFrame * GetTabContainer(Int_t tabIndex) const
Return container of tab with index tabIndex.
virtual Bool_t HandleKey(Event_t *)
void ShowStatusBar(Bool_t show=kTRUE)
Show or hide statusbar.
virtual Bool_t HandleDoubleClick(Event_t *)
void DockContainer(Int_t del=kTRUE)
Dock container back to TGDockableFrame.
void AddInput(UInt_t emask)
Add events specified in the emask to the events the frame should handle.
Bool_t HandleContainerConfigure(Event_t *ev)
Handle configure (i.e. resize) event.
TGLayoutHints * fVertical2Layout
const Mask_t kKeyShiftMask
void SetSupportGL(Bool_t support)
void SetWindowName(const char *name=0)
Set window name. This is typically done via the window manager.
R__EXTERN void * gTQSender
const TGWindow * GetRoot() const
Returns current root (i.e.
This class represents a WWW compatible URL.
TString & ReplaceAll(const TString &s1, const TString &s2)
R__EXTERN TStyle * gStyle
Bool_t HandleContainerCrossing(Event_t *ev)
Handle enter/leave events. Only leave is activated at the moment.
void ShowToolBar(Bool_t show=kTRUE)
Show or hide toolbar.
static TVirtualPadEditor * LoadEditor()
Static function returning a pointer to a new pad editor.
const Mask_t kLeaveWindowMask
Bool_t HandleContainerMotion(Event_t *ev)
Handle mouse motion event in the canvas container.
A ROOT file is a suite of consecutive data records (TKey instances) with a well defined format...
TVirtualPad * cd(Int_t subpadnumber=0)
Set current canvas & pad.
Bool_t HasMenuBar() const
Returns kTRUE if the menu bar is shown.
TGHorizontal3DLine * fHorizontal1
R__EXTERN const char gHelpPullDownMenus[]
virtual void SetContainer(TGFrame *f)
virtual Bool_t ChangeDirectory(const char *path)
Change directory.
const TGPicture * SetIconPixmap(const char *iconName)
Set window icon pixmap by name.
Ssiz_t Index(const char *pat, Ssiz_t i=0, ECaseCompare cmp=kExact) const
Int_t LoadPlugin()
Load the plugin library for this handler.
virtual void ToggleToolTips()
Toggle tooltip display.
virtual int Load(const char *module, const char *entry="", Bool_t system=kFALSE)
Load a shared library.
static void SingleShot(Int_t milliSec, const char *receiver_class, void *receiver, const char *method)
This static function calls a slot after a given time interval.
virtual void ShowFrame(TGFrame *f)
Show sub frame.
virtual void Update()
Update pad.
virtual void Draw(Option_t *option="")
Default Draw method for all objects.
virtual void * ReadObjectAny(const TClass *cast)
Read object from I/O buffer.
An abstract interface to image processing library.
virtual void Terminate(Int_t status=0)
Terminate the application by call TSystem::Exit() unless application has been told to return from Run...
R__EXTERN TApplication * gApplication
Double_t GetAspectRatio() const
void SetIconName(const char *name)
Set window icon name. This is typically done via the window manager.
void Flush()
Flush canvas buffers.
virtual char * GetObjectInfo(Int_t px, Int_t py) const
Returns string containing info about the object at position (px,py).
TGHorizontal3DLine * fToolBarSep
R__EXTERN const char gHelpBrowser[]
virtual void Layout()
Layout the elements of the composite frame.
virtual TVirtualPad * cd(Int_t subpadnumber=0)=0
R__EXTERN const char gHelpAbout[]
virtual TObject * FindObject(const char *name) const
Find an object in this list using its name.
virtual TPad * Pick(Int_t px, Int_t py, TObjLink *&pickobj)
Search for an object at pixel position px,py.
virtual void SetValue(const char *name, const char *value, EEnvLevel level=kEnvChange, const char *type=0)
Set the value of a resource or create a new resource.
void SetDNDTarget(Bool_t onoff)
const Mask_t kPointerMotionMask
TGLayoutHints * fHorizontal1Layout
UInt_t GetWindowGeometry(Int_t &x, Int_t &y, UInt_t &w, UInt_t &h)
Gets the size and position of the window containing the canvas.
void SetText(const char *helpText)
Set help text from helpText buffer in TGTextView.
Bool_t GetShowToolTips() const
virtual int Unlink(const char *name)
Unlink, i.e. remove, a file.
TVirtualPad * cd(Int_t subpadnumber=0)
Set Current pad.
virtual const char * ClassName() const
Returns name of class to which the object belongs.
virtual void Paint(Option_t *option="")
Paint canvas.
static TString Format(const char *fmt,...)
Static method which formats a string using a printf style format descriptor and return a TString...
virtual FILE * TempFileName(TString &base, const char *dir=0)
Create a secure temporary file by appending a unique 6 letter string to base.
static TVirtualPadEditor * GetPadEditor(Bool_t load=kTRUE)
Returns the pad editor dialog. Static method.
virtual void Resize(Option_t *option="")
Recompute canvas parameters following a X11 Resize.
R__EXTERN Int_t(* gThreadXAR)(const char *xact, Int_t nb, void **ar, Int_t *iret)
virtual void Sleep(UInt_t milliSec)
Sleep milliSec milli seconds.
virtual void Draw(Option_t *option="")
Paint the color wheel.
TGPopupMenu * fEditClearMenu
TGDockableFrame * fToolDock
UInt_t GetWindowHeight() const
Atom_t HandleDNDPosition(Int_t x, Int_t y, Atom_t action, Int_t xroot, Int_t yroot)
Handle dragging position events.
TGCompositeFrame(const TGCompositeFrame &)
Bool_t HasToolTips() const
Returns kTRUE if the tooltips are enabled.
virtual void SetGlobal(Bool_t global)
Set editor global.
void Clear(Option_t *option="")
Remove all primitives from the canvas.
TGLayoutHints * fDockLayout
static void DisplayMarkerTypes()
Display the table of markers with their numbers.
Bool_t EndsWith(const char *pat, ECaseCompare cmp=kExact) const
Return true if string ends with the specified string.
virtual Bool_t HandleExpose(Event_t *event)
virtual const TGWindow * GetMainFrame() const
Returns top level main frame.
TGPopupMenu * fFileSaveMenu
void SetClassHints(const char *className, const char *resourceName)
Set the windows class and resource name.
virtual const char * TempDirectory() const
Return a user configured or systemwide directory to create temporary files in.
TGVertical3DLine * fVertical1
virtual void SetText(TGString *text, Int_t partidx=0)
Set text in partition partidx in status bar.
void ReallyDelete()
Really delete the canvas and this GUI.
Bool_t IsUndocked() const
void AdjustSize()
Keep the same canvas size while docking/undocking toolbar.
TVirtualPad is an abstract base class for the Pad and Canvas classes.
void SaveSource(const char *filename="", Option_t *option="")
Save primitives in this canvas as a C++ macro file.
virtual void SetGLDevice(Int_t dev)
Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t parm2)
Handle menu and other command generated by the user.
TGViewPort * GetViewPort() const
TGPopupMenu * fViewWithMenu
Bool_t OpaqueMoving() const
Is pad moving in opaque mode ?
TGLayoutHints * fMenuBarItemLayout
void RaiseWindow()
Put canvas window on top of the window stack.
friend class TRootContainer
const Mask_t kButtonPressMask
TGCompositeFrame * fMainFrame
const Mask_t kKeyPressMask
TRootCanvas(const TRootCanvas &)
Using a TBrowser one can browse all ROOT objects.
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...
void ShowEditor(Bool_t show=kTRUE)
Show or hide side frame.
void CreateCanvas(const char *name)
Create the actual canvas.
void ShowMenuBar(Bool_t show=kTRUE)
Show or hide menubar.
virtual void SendCloseMessage()
Send close message to self.
virtual void ToggleToolBar()
Toggle toolbar.
Int_t InitWindow()
Called by TCanvas ctor to get window indetifier.
void ResizeOpaque(Int_t set=1)
Set option to resize objects/pads in a canvas.
R__EXTERN TSystem * gSystem
void Popup()
Show help dialog.
R__EXTERN const char gHelpCanvas[]
Bool_t OpaqueResizing() const
Is pad resizing in opaque mode ?
virtual TGDimension GetDefaultSize() const
std::cout << fWidth << "x" << fHeight << std::endl;
Bool_t HandleContainerButton(Event_t *ev)
Handle mouse button events in the canvas container.
Bool_t HandleContainerExpose(Event_t *ev)
Handle expose events.
Long_t ExecPlugin(int nargs, const T &... params)
virtual Int_t GetValue(const char *name, Int_t dflt)
Returns the integer value for a resource.
virtual Bool_t InheritsFrom(const char *classname) const
Returns kTRUE if object inherits from class "classname".
Bool_t BeginsWith(const char *s, ECaseCompare cmp=kExact) const
virtual const char * GetName() const
Return unique name, used in SavePrimitive methods.
const Mask_t kExposureMask
void SetOptFit(Int_t fit=1)
The type of information about fit parameters printed in the histogram statistics box can be selected ...
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...
The most important graphics class in the ROOT system.
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
char * Form(const char *fmt,...)
void ShowToolTips(Bool_t show=kTRUE)
Enable or disable tooltip info.
TVirtualPadEditor * fEditor
void SetWindowPosition(Int_t x, Int_t y)
Set canvas position (units in pixels).
void SetReadMode()
Set buffer in read mode.
TGTab * GetTabLeft() const
virtual Int_t Exec(const char *shellcmd)
Execute a command.
virtual void ToggleEditor()
Toggle editor.
Bool_t HandleDNDLeave()
Handle drag leave events.
Bool_t HandleDNDDrop(TDNDData *data)
Handle drop events.
UInt_t GetCheight() const
Return height of canvas container.
virtual void Print(const char *filename="") const
Save Pad contents in a file in one of various formats.
virtual void ToggleAutoExec()
Toggle pad auto execution of list of TExecs.
virtual void SetEditable(Bool_t=kTRUE)
R__EXTERN const char gHelpObjects[]
static ToolBarData_t gToolBarData[]
TGTab * GetTabRight() const
virtual void Move(Int_t x, Int_t y)
Move frame.
char * StrDup(const char *str)
Duplicate the string str.
virtual Bool_t HandleMotion(Event_t *)
virtual Bool_t HandleConfigureNotify(Event_t *event)
This event is generated when the frame is resized.
TString & Remove(Ssiz_t pos)
static const char * gSaveAsTypes[]
virtual void SetEditDisabled(UInt_t on=1)
Set edit disable flag for this frame and subframes.
const Mask_t kStructureNotifyMask
static const char * gOpenTypes[]
Bool_t HandleContainerKey(Event_t *ev)
Handle keyboard events in the canvas container.
virtual void SetCleanup(Int_t mode=kLocalCleanup)
Turn on automatic cleanup of child frames in dtor.
const Mask_t kButtonReleaseMask
Bool_t HasEditor() const
Returns kTRUE if the editor is shown.
TGLayoutHints * fVertical1Layout
TGVertical3DLine * fVertical2
TGLayoutHints * fStatusBarLayout
virtual Bool_t IsMapped()
Returns kTRUE if window is mapped on screen, kFALSE otherwise.
R__EXTERN const char gHelpGraphicsEditor[]
Bool_t Contains(const char *pat, ECaseCompare cmp=kExact) const
Bool_t Disconnect(const char *signal=0, void *receiver=0, const char *slot=0)
Disconnects signal of this object from slot of receiver.
you should not use this method at all Int_t Int_t Double_t Double_t Double_t e
Abstract base class used by ROOT graphics editor.
TGFrame * GetActFrame() const
virtual void StopEmbedding(const char *name=0)
virtual void AddFrame(TGFrame *f, TGLayoutHints *l=0)
Add frame to the composite frame using the specified layout hints.
static TClass * GetClass(const char *name, Bool_t load=kTRUE, Bool_t silent=kFALSE)
Static method returning pointer to TClass of the specified class name.
UInt_t GetDisplayHeight() const
Get display height.
const TGWindow * GetParent() const
virtual void SavePrimitive(std::ostream &out, Option_t *option="")
Save a composite frame widget as a C++ statement(s) on output stream out.
virtual void MapSubwindows()
Map all sub windows that are part of the composite frame.
const TGPicture * fIconPic
virtual void SetName(const char *name)
Mother of all ROOT objects.
Atom_t HandleDNDEnter(Atom_t *typelist)
Handle drag enter events.
virtual const char * GetTitle() const
Returns title of object.
TGPopupMenu * fOptionMenu
void SetWMPosition(Int_t x, Int_t y)
Give the window manager a window position hint.
static ToolBarData_t gToolBarData1[]
void Activated(Int_t id)
Slot handling tab switching in the browser, to properly set the canvas and the model to the editor...
static TGuiBuilder * Instance()
return an instance of TGuiBuilder object
const char * GetWindowName() const
void SetStatusText(const char *txt=0, Int_t partidx=0)
Set text in status bar.
TGTabElement * GetTabTab(Int_t tabIndex) const
Return the tab element of tab with index tabIndex.
void Close()
Called via TCanvasImp interface by TCanvas.
const TGWindow * GetDefaultRoot() const
Returns the root (i.e.
void FitCanvas()
Fit canvas container to current window size.
void SetOptStat(Int_t stat=1)
The type of information printed in the histogram statistics box can be selected via the parameter mod...
void SetOptTitle(Int_t tit=1)
UInt_t GetCwidth() const
Return width of canvas container.
void SetWindowSize(UInt_t w, UInt_t h)
Set size of canvas (units in pixels).
virtual void SetParts(Int_t npart)
Divide the status bar in npart equal sized parts.
void PrintCanvas()
Print the canvas.
static TImage * Open(const char *file, EImageFileTypes type=kUnknown)
Open a specified image file.
static void Terminate()
Close the global pad editor. Static method.
void EventInfo(Int_t event, Int_t px, Int_t py, TObject *selected)
Display a tooltip with infos about the primitive below the cursor.
TGLayoutHints * fMainFrameLayout
void SetWindowName(const char *name)
Set window name so it appear as title of the undock window.
static const TString & GetBinDir()
Get the binary directory in the installation. Static utility function.
TGLayoutHints * fMenuBarHelpLayout
Bool_t ReturnFromRun() const
virtual void HandleInput(EEventType button, Int_t x, Int_t y)
Handle Input Events.
static TImage * Create()
Create an image.
virtual void SaveAs(const char *filename="", Option_t *option="") const
Save Pad contents in a file in one of various formats.
Bool_t HandleContainerDoubleClick(Event_t *ev)
Handle mouse button double click events in the canvas container.
virtual void Update()
Update canvas pad buffers.
TGCompositeFrame * fEditorFrame
TRootContainer * fCanvasContainer
virtual void SetEditable(Bool_t on=kTRUE)
Switch ON/OFF edit mode.
virtual const char * GetName() const
Returns name of object.
virtual Int_t GetSize() const
virtual void DeleteWindow()
Delete window.
TGLayoutHints * fToolBarLayout
const Mask_t kAnyModifier
void SetCanvasSize(UInt_t w, UInt_t h)
Set size of canvas container. Units in pixels.
Bool_t HasStatusBar() const
Returns kTRUE if the status bar is shown.
void CloseWindow()
In case window is closed via WM we get here.
virtual ~TRootCanvas()
Delete ROOT basic canvas.
Draw the ROOT Color Wheel.
void Modified(Bool_t flag=1)
Bool_t HasToolBar() const
Returns kTRUE if the tool bar is shown.
Bool_t HasFixedAspectRatio() const
int main(int argc, char **argv)
virtual Bool_t HandleCrossing(Event_t *)
void SetWindowTitle(const char *newTitle)
Change title on window.
virtual void Warning(const char *method, const char *msgfmt,...) const
Issue warning message.
Draw inheritance tree and their relations for a list of classes.
Bool_t GetAutoExec() const
virtual void SetGlobal(Bool_t)
virtual TCanvas * GetCanvas() const =0
virtual Int_t MustCleanup() const
void EnableHide(Bool_t onoff)
Enable hiding.
Int_t GetOptTitle() const
const char * Data() const
TGLayoutHints * fCanvasLayout