class TGToolBar: public TGCompositeFrame


TGToolBar

A toolbar is a composite frame that contains TGPictureButtons.
Often used in combination with a TGHorizontal3DLine.


Function Members (Methods)

public:
TGToolBar(const TGWindow* p = 0, UInt_t w = 1, UInt_t h = 1, UInt_t options = kHorizontalFrame, Pixel_t back = GetDefaultFrameBackground())
virtual~TGToolBar()
voidTObject::AbstractMethod(const char* method) const
virtual voidTGFrame::Activate(Bool_t)
virtual TGButton*AddButton(const TGWindow* w, ToolBarData_t* button, Int_t spacing = 0)
virtual TGButton*AddButton(const TGWindow* w, TGPictureButton* button, Int_t spacing = 0)
virtual voidTGCompositeFrame::AddFrame(TGFrame* f, TGLayoutHints* l = 0)
voidTGFrame::AddInput(UInt_t emask)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
virtual voidButtonClicked()
virtual voidButtonPressed()
virtual voidButtonReleased()
virtual voidTGFrame::ChangeBackground(Pixel_t back)
virtual voidTQObject::ChangedBy(const char* method)
virtual voidChangeIcon(ToolBarData_t* button, const char* new_icon)
virtual voidTGCompositeFrame::ChangeOptions(UInt_t options)
virtual voidTGCompositeFrame::ChangeSubframesBackground(Pixel_t back)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidCleanup()
virtual voidTObject::Clear(Option_t* = "")
virtual voidClicked(Int_t id)
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
Bool_tTQObject::Connect(const char* signal, const char* receiver_class, void* receiver, const char* slot)
static Bool_tTQObject::Connect(TQObject* sender, const char* signal, const char* receiver_class, void* receiver, const char* slot)
static Bool_tTQObject::Connect(const char* sender_class, const char* signal, const char* receiver_class, void* receiver, const char* slot)
virtual voidTQObject::Connected(const char*)
Bool_tTGFrame::Contains(Int_t x, Int_t y) const
virtual voidTObject::Copy(TObject& object) const
virtual voidTGFrame::Delete(Option_t* = "")
virtual voidTGFrame::DeleteWindow()
virtual voidTQObject::Destroyed()
virtual voidTGWindow::DestroySubwindows()
virtual voidTGWindow::DestroyWindow()
Bool_tTQObject::Disconnect(const char* signal = 0, void* receiver = 0, const char* slot = 0)
static Bool_tTQObject::Disconnect(TQObject* sender, const char* signal = 0, void* receiver = 0, const char* slot = 0)
static Bool_tTQObject::Disconnect(const char* class_name, const char* signal, void* receiver = 0, const char* slot = 0)
virtual voidTQObject::Disconnected(const char*)
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTGFrame::DrawBorder()
virtual voidTGFrame::DrawClass() const
virtual TObject*TGFrame::DrawClone(Option_t* = "") const
virtual voidTGFrame::DrawCopy(Handle_t, Int_t, Int_t)
virtual voidTGFrame::Dump() const
voidTQObject::Emit(const char* signal)
voidTQObject::Emit(const char* signal, Long_t* paramArr)
voidTQObject::Emit(const char* signal, const char* params)
voidTQObject::Emit(const char* signal, Double_t param)
voidTQObject::Emit(const char* signal, Long_t param)
voidTQObject::Emit(const char* signal, Long64_t param)
voidTQObject::Emit(const char* signal, Bool_t param)
voidTQObject::Emit(const char* signal, Char_t param)
voidTQObject::Emit(const char* signal, UChar_t param)
voidTQObject::Emit(const char* signal, Short_t param)
voidTQObject::Emit(const char* signal, UShort_t param)
voidTQObject::Emit(const char* signal, Int_t param)
voidTQObject::Emit(const char* signal, UInt_t param)
voidTQObject::Emit(const char* signal, ULong_t param)
voidTQObject::Emit(const char* signal, ULong64_t param)
voidTQObject::Emit(const char* signal, Float_t param)
voidTQObject::EmitVA(const char* signal, Int_t nargs)
voidTQObject::EmitVA(const char* signal, Int_t nargs, va_list va)
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual Pixel_tTGFrame::GetBackground() const
static const TGGC&TGFrame::GetBckgndGC()
static const TGGC&TGFrame::GetBlackGC()
static Pixel_tTGFrame::GetBlackPixel()
Int_tTGFrame::GetBorderWidth() const
virtual TGButton*GetButton(Int_t id) const
TGClient*TGObject::GetClient() const
static Int_tTGWindow::GetCounter()
static Pixel_tTGFrame::GetDefaultFrameBackground()
virtual UInt_tTGCompositeFrame::GetDefaultHeight() const
static Pixel_tTGFrame::GetDefaultSelectedBackground()
virtual TGDimensionTGCompositeFrame::GetDefaultSize() const
virtual UInt_tTGCompositeFrame::GetDefaultWidth() const
virtual TDNDData*TGFrame::GetDNDData(Atom_t)
virtual Int_tTGFrame::GetDragType() const
virtual Option_t*TObject::GetDrawOption() const
virtual Int_tTGFrame::GetDropType() const
static Long_tTObject::GetDtorOnly()
virtual UInt_tTGWindow::GetEditDisabled() const
UInt_tTGFrame::GetEventMask() const
virtual Pixel_tTGFrame::GetForeground() const
TGFrameElement*TGFrame::GetFrameElement() const
virtual TGFrame*TGCompositeFrame::GetFrameFromPoint(Int_t x, Int_t y)
UInt_tTGFrame::GetHeight() const
static const TGGC&TGFrame::GetHilightGC()
virtual const char*TObject::GetIconName() const
virtual Long_tGetId(TGButton* button) const
virtual TGLayoutManager*TGCompositeFrame::GetLayoutManager() const
virtual TList*TGCompositeFrame::GetList() const
TList*TQObject::GetListOfClassSignals() const
TList*TQObject::GetListOfConnections() const
TList*TQObject::GetListOfSignals() const
virtual const TGWindow*TGWindow::GetMainFrame() const
UInt_tTGFrame::GetMaxHeight() const
UInt_tTGFrame::GetMaxWidth() const
UInt_tTGFrame::GetMinHeight() const
UInt_tTGFrame::GetMinWidth() const
virtual const char*TGWindow::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual UInt_tTGFrame::GetOptions() const
const TGWindow*TGWindow::GetParent() const
static const TGGC&TGFrame::GetShadowGC()
TGDimensionTGFrame::GetSize() const
Int_tTGCompositeFrame::GetState(TGFrame* f) const
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
static const TGGC&TGFrame::GetWhiteGC()
static Pixel_tTGFrame::GetWhitePixel()
UInt_tTGFrame::GetWidth() const
Int_tTGFrame::GetX() const
Int_tTGFrame::GetY() const
virtual Bool_tTGCompositeFrame::HandleButton(Event_t*)
virtual Bool_tTGFrame::HandleClientMessage(Event_t* event)
virtual Bool_tTGFrame::HandleColormapChange(Event_t*)
virtual Bool_tTGFrame::HandleConfigureNotify(Event_t* event)
virtual Bool_tTGCompositeFrame::HandleCrossing(Event_t*)
virtual Bool_tTGFrame::HandleDNDDrop(TDNDData*)
virtual Atom_tTGFrame::HandleDNDEnter(Atom_t*)
virtual Bool_tTGFrame::HandleDNDFinished()
virtual Bool_tTGFrame::HandleDNDLeave()
virtual Atom_tTGFrame::HandleDNDPosition(Int_t, Int_t, Atom_t, Int_t, Int_t)
virtual Bool_tTGCompositeFrame::HandleDoubleClick(Event_t*)
virtual Bool_tTGCompositeFrame::HandleDragDrop(TGFrame* frame, Int_t x, Int_t y, TGLayoutHints* lo)
virtual Bool_tTGCompositeFrame::HandleDragEnter(TGFrame*)
virtual Bool_tTGCompositeFrame::HandleDragLeave(TGFrame*)
virtual Bool_tTGCompositeFrame::HandleDragMotion(TGFrame*)
virtual Bool_tTGFrame::HandleEvent(Event_t* event)
virtual Bool_tTGWindow::HandleExpose(Event_t* event)
virtual Bool_tTGCompositeFrame::HandleFocusChange(Event_t*)
virtual Bool_tTGWindow::HandleIdleEvent(TGIdleHandler*)
virtual Bool_tTGCompositeFrame::HandleKey(Event_t*)
virtual Bool_tTGCompositeFrame::HandleMotion(Event_t*)
virtual Bool_tTGCompositeFrame::HandleSelection(Event_t*)
virtual Bool_tTGFrame::HandleSelectionClear(Event_t*)
virtual Bool_tTGFrame::HandleSelectionRequest(Event_t*)
virtual Bool_tTGWindow::HandleTimer(TTimer*)
virtual Bool_tTQObject::HasConnection(const char* signal_name) const
virtual ULong_tTGObject::Hash() const
virtual voidTGCompositeFrame::HideFrame(TGFrame* f)
virtual voidTQObject::HighPriority(const char* signal_name, const char* slot_name = 0)
virtual voidTGWindow::IconifyWindow()
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTGFrame::Inspect() const
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTGFrame::IsActive() const
Bool_tTGCompositeFrame::IsArranged(TGFrame* f) const
Bool_tTGCompositeFrame::IsArranged(TGFrameElement* ptr) const
virtual Bool_tTGCompositeFrame::IsComposite() const
Bool_tTGFrame::IsDNDSource() const
Bool_tTGFrame::IsDNDTarget() const
virtual Bool_tTGCompositeFrame::IsEditable() const
virtual Bool_tTGObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
virtual Bool_tTGCompositeFrame::IsLayoutBroken() const
virtual Bool_tTGWindow::IsMapped()
virtual Bool_tTGCompositeFrame::IsMapSubwindows() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
Bool_tTGCompositeFrame::IsVisible(TGFrame* f) const
Bool_tTGCompositeFrame::IsVisible(TGFrameElement* ptr) const
Bool_tTObject::IsZombie() const
virtual voidTGCompositeFrame::Layout()
static voidTQObject::LoadRQ_OBJECT()
virtual voidTGWindow::LowerWindow()
virtual voidTQObject::LowPriority(const char* signal_name, const char* slot_name = 0)
virtual voidTObject::ls(Option_t* option = "") const
virtual voidTGFrame::MapRaised()
virtual voidTGCompositeFrame::MapSubwindows()
virtual voidTGFrame::MapWindow()
voidTObject::MayNotUse(const char* method) const
virtual voidTQObject::Message(const char* msg)
virtual voidTGFrame::Move(Int_t x, Int_t y)
virtual voidTGFrame::MoveResize(Int_t x, Int_t y, UInt_t w = 0, UInt_t h = 0)
virtual Int_tTGCompositeFrame::MustCleanup() const
virtual Bool_tTObject::Notify()
virtual Int_tTQObject::NumberOfConnections() const
virtual Int_tTQObject::NumberOfSignals() const
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidPressed(Int_t id)
virtual voidTGCompositeFrame::Print(Option_t* option = "") const
virtual voidTGFrame::ProcessedEvent(Event_t* event)
virtual Bool_tTGCompositeFrame::ProcessMessage(Long_t, Long_t, Long_t)
virtual voidTGWindow::RaiseWindow()
virtual Int_tTObject::Read(const char* name)
virtual voidTGFrame::ReallyDelete()
virtual voidTObject::RecursiveRemove(TObject* obj)
virtual voidReleased(Int_t id)
virtual voidTGCompositeFrame::RemoveFrame(TGFrame* f)
voidTGFrame::RemoveInput(UInt_t emask)
virtual voidTGFrame::ReparentWindow(const TGWindow* p, Int_t x = 0, Int_t y = 0)
virtual voidTGWindow::RequestFocus()
voidTObject::ResetBit(UInt_t f)
virtual voidTGFrame::Resize(TGDimension size)
virtual voidTGFrame::Resize(UInt_t w = 0, UInt_t h = 0)
virtual voidTGObject::SaveAs(const char* filename = "", Option_t* option = "") const
virtual voidSavePrimitive(ostream& out, Option_t* option = "")
virtual voidTGCompositeFrame::SavePrimitiveSubframes(ostream& out, Option_t* option = "")
voidTGFrame::SaveUserColor(ostream& out, Option_t*)
virtual voidTGFrame::SendMessage(const TGWindow* w, Long_t msg, Long_t parm1, Long_t parm2)
virtual voidTGFrame::SetBackgroundColor(Pixel_t back)
virtual voidTGWindow::SetBackgroundPixmap(Pixmap_t pixmap)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTGCompositeFrame::SetCleanup(Int_t mode = kLocalCleanup)
voidTGFrame::SetDNDSource(Bool_t onoff)
voidTGFrame::SetDNDTarget(Bool_t onoff)
virtual voidTGFrame::SetDragType(Int_t type)
virtual voidTGFrame::SetDrawOption(Option_t* = "")
virtual voidTGFrame::SetDropType(Int_t type)
static voidTObject::SetDtorOnly(void* obj)
virtual voidTGCompositeFrame::SetEditable(Bool_t on = kTRUE)
virtual voidTGCompositeFrame::SetEditDisabled(UInt_t on = 1)
virtual voidTGFrame::SetForegroundColor(Pixel_t)
voidTGFrame::SetFrameElement(TGFrameElement* fe)
virtual voidTGFrame::SetHeight(UInt_t h)
virtual voidSetId(TGButton* button, Long_t id)
virtual voidTGCompositeFrame::SetLayoutBroken(Bool_t on = kTRUE)
virtual voidTGCompositeFrame::SetLayoutManager(TGLayoutManager* l)
virtual voidTGCompositeFrame::SetMapSubwindows(Bool_t on)
virtual voidTGFrame::SetMaxHeight(UInt_t h)
virtual voidTGFrame::SetMaxWidth(UInt_t w)
virtual voidTGFrame::SetMinHeight(UInt_t h)
virtual voidTGFrame::SetMinWidth(UInt_t w)
virtual voidTGWindow::SetName(const char* name)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTGFrame::SetSize(const TGDimension& s)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidTGFrame::SetWidth(UInt_t w)
virtual voidTGWindow::SetWindowName(const char* name = 0)
virtual voidTGFrame::SetX(Int_t x)
virtual voidTGFrame::SetY(Int_t y)
virtual voidTGCompositeFrame::ShowFrame(TGFrame* f)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual Bool_tTGCompositeFrame::TranslateCoordinates(TGFrame* child, Int_t x, Int_t y, Int_t& fx, Int_t& fy)
virtual voidTGFrame::UnmapWindow()
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
static Int_tTQObject::CheckConnectArgs(TQObject* sender, TClass* sender_class, const char* signal, TClass* receiver_class, const char* slot)
static Bool_tTQObject::ConnectToClass(TQObject* sender, const char* signal, TClass* receiver_class, void* receiver, const char* slot)
static Bool_tTQObject::ConnectToClass(const char* sender_class, const char* signal, TClass* receiver_class, void* receiver, const char* slot)
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
virtual voidTGFrame::DoRedraw()
virtual voidTGFrame::Draw3dRectangle(UInt_t type, Int_t x, Int_t y, UInt_t w, UInt_t h)
static Time_tTGFrame::GetLastClick()
TStringTGFrame::GetOptionString() const
const TGResourcePool*TGFrame::GetResourcePool() const
virtual void*TGFrame::GetSender()
virtual const char*TQObject::GetSenderClassName() const
voidTObject::MakeZombie()
virtual voidTGFrame::StartGuiBuilding(Bool_t on = kTRUE)
private:
TGToolBar(const TGToolBar&)
TGToolBar&operator=(const TGToolBar&)

Data Members

public:
enum TGWindow::EEditMode { kEditEnable
kEditDisable
kEditDisableEvents
kEditDisableGrab
kEditDisableLayout
kEditDisableResize
kEditDisableHeight
kEditDisableWidth
kEditDisableBtnEnable
kEditDisableKeyEnable
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
Pixel_tTGFrame::fBackgroundframe background color
Int_tTGFrame::fBorderWidthframe border width
TGClient*TGObject::fClientConnection to display server
Int_tTGFrame::fDNDStateEDNDFlags
UInt_tTGWindow::fEditDisabledflags used for "guibuilding"
UInt_tTGFrame::fEventMaskcurrenty active event mask
TGFrameElement*TGFrame::fFEpointer to frame element
UInt_tTGFrame::fHeightframe height
Handle_tTGObject::fIdX11/Win32 Window identifier
Bool_tTGCompositeFrame::fLayoutBrokenno layout manager is used
TGLayoutManager*TGCompositeFrame::fLayoutManagerlayout manager
TList*TGCompositeFrame::fListcontainer of frame elements
TList*TQObject::fListOfConnections! list of connections to this object
TList*TQObject::fListOfSignals! list of signals from this object
TMap*fMapOfButtonsmap of button/id pairs in this group
Bool_tTGCompositeFrame::fMapSubwindowskTRUE - map subwindows
UInt_tTGFrame::fMaxHeightmaximal frame height
UInt_tTGFrame::fMaxWidthmaximal frame width
UInt_tTGFrame::fMinHeightminimal frame height
UInt_tTGFrame::fMinWidthminimal frame width
Int_tTGCompositeFrame::fMustCleanupcleanup mode (see EFrameCleanup)
TStringTGWindow::fNamename of the window used in SavePrimitive()
Bool_tTGWindow::fNeedRedrawkTRUE if window needs to be redrawn
UInt_tTGFrame::fOptionsframe options
const TGWindow*TGWindow::fParentParent window
TList*fPictureslist of pictures that should be freed
TList*fTrashlist of buttons and layout hints to be deleted
UInt_tTGFrame::fWidthframe width
Int_tTGFrame::fXframe x position
Int_tTGFrame::fYframe y position
static const TGGC*TGFrame::fgBckgndGC
static const TGGC*TGFrame::fgBlackGC
static Pixel_tTGFrame::fgBlackPixel
static Int_tTGWindow::fgCountercounter of created windows in SavePrimitive
static Window_tTGFrame::fgDbw
static Int_tTGFrame::fgDbx
static Int_tTGFrame::fgDby
static Pixel_tTGFrame::fgDefaultFrameBackground
static TGLayoutHints*TGCompositeFrame::fgDefaultHintsdefault hints used by AddFrame()
static Pixel_tTGFrame::fgDefaultSelectedBackground
static const TGGC*TGFrame::fgHilightGC
static Bool_tTGFrame::fgInit
static UInt_tTGFrame::fgLastButton
static Time_tTGFrame::fgLastClick
static const TGGC*TGFrame::fgShadowGC
static UInt_tTGFrame::fgUserColor
static const TGGC*TGFrame::fgWhiteGC
static Pixel_tTGFrame::fgWhitePixel

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

TGToolBar(const TGWindow* p = 0, UInt_t w = 1, UInt_t h = 1, UInt_t options = kHorizontalFrame, Pixel_t back = GetDefaultFrameBackground())
 Create toolbar widget.
~TGToolBar()
 Delete toolbar and its buttons and layout hints.
TGButton * AddButton(const TGWindow *w, ToolBarData_t *button, Int_t spacing)
 Add button to toolbar. All buttons added via this method will be
 deleted by the toolbar. On return the TGButton field of the
 ToolBarData_t struct is filled in (if fPixmap was valid).
 Window w is the window to which the button messages will be send.
TGButton * AddButton(const TGWindow *w, TGPictureButton *pbut, Int_t spacing)
 Add button to toolbar. All buttons added via this method will be deleted
 by the toolbar, w is the window to which the button messages will be send.
TGButton * GetButton(Int_t id) const
 Finds and returns a pointer to the button with the specified
 identifier id. Returns null if the button was not found.
void SetId(TGButton* button, Long_t id)
 changes id for button.
Long_t GetId(TGButton* button) const
 Finds and returns the id of the button.
 Returns -1 if the button is not a member of this group.
void ChangeIcon(ToolBarData_t* button, const char* new_icon)
 Change the icon of a toolbar button.
void Cleanup()
 Cleanup and delete all objects contained in this composite frame.
 This will delete all objects added via AddFrame().
 CAUTION: all objects (frames and layout hints) must be unique, i.e.
 cannot be shared.
void ButtonPressed()
 This slot is activated when one of the buttons in the group emits the
 Pressed() signal.
void ButtonReleased()
 This slot is activated when one of the buttons in the group emits the
 Released() signal.
void ButtonClicked()
 This slot is activated when one of the buttons in the group emits the
 Clicked() signal.
void SavePrimitive(ostream& out, Option_t* option = "")
 Save an horizontal slider as a C++ statement(s) on output stream out.
TGToolBar(const TGToolBar& )
TGToolBar& operator=(const TGToolBar& )
void Pressed(Int_t id)
{ Emit("Pressed(Int_t)",id); }
void Released(Int_t id)
{ Emit("Released(Int_t)",id);}
void Clicked(Int_t id)
{ Emit("Clicked(Int_t)",id); }

Author: Fons Rademakers 25/02/98
Last update: root/gui:$Id: TGToolBar.h 20882 2007-11-19 11:31:26Z rdm $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.