62 Warning(
Form(
"TEveListTreeItem::%s()", func),
"not supported.");
110 fSignalsConnected (
kFALSE)
199 fListTree->
Connect(
"MouseOver(TGListTreeItem*, UInt_t)",
"TEveGListTreeEditorFrame",
200 this,
"ItemBelowMouse(TGListTreeItem*, UInt_t)");
201 fListTree->
Connect(
"Clicked(TGListTreeItem*, Int_t, UInt_t, Int_t, Int_t)",
"TEveGListTreeEditorFrame",
202 this,
"ItemClicked(TGListTreeItem*, Int_t, UInt_t, Int_t, Int_t)");
203 fListTree->
Connect(
"DoubleClicked(TGListTreeItem*, Int_t)",
"TEveGListTreeEditorFrame",
204 this,
"ItemDblClicked(TGListTreeItem*, Int_t)");
205 fListTree->
Connect(
"KeyPressed(TGListTreeItem*, ULong_t, ULong_t)",
"TEveGListTreeEditorFrame",
206 this,
"ItemKeyPress(TGListTreeItem*, UInt_t, UInt_t)");
219 this,
"ItemBelowMouse(TGListTreeItem*, UInt_t)");
221 this,
"ItemClicked(TGListTreeItem*, Int_t, UInt_t, Int_t, Int_t)");
223 this,
"ItemDblClicked(TGListTreeItem*, Int_t)");
225 this,
"ItemKeyPress(TGListTreeItem*, UInt_t, UInt_t)");
332 static const TEveException eh(
"TEveGListTreeEditorFrame::ItemClicked ");
335 if (el ==
nullptr)
return;
367 static const TEveException eh(
"TEveGListTreeEditorFrame::ItemDblClicked ");
369 if (btn != 1)
return;
372 if (el ==
nullptr)
return;
386 for (
Int_t i=0; i<
n->GetNdaughters(); i++)
389 title.
Form(
"%d : %s[%d]", i,
390 n->GetDaughter(i)->GetVolume()->GetName(),
391 n->GetDaughter(i)->GetNdaughters());
394 child->SetUserData(
n->GetDaughter(i));
409 static const TEveException eh(
"TEveGListTreeEditorFrame::ItemKeyPress ");
412 if (entry ==
nullptr)
return;
425 throw(eh +
"DestroyDenied set for this item.");
438 throw(eh +
"DestroyDenied set for this top-level item.");
475 "Export to CINT",
"ExportToCINT",
this,
"const char*,TObject*", 1);
489 gClient->GetDefaultRoot()->GetId(),
490 0, 0,
x,
y, childdum);
496 kNewMainFrameSlot, kNewTabSlot,
497 kNewViewer, kNewScene,
498 kNewBrowser, kNewCanvas, kNewCanvasExt, kNewTextEditor, kNewHtmlBrowser,
499 kSel_PS_Ignore, kSel_PS_Element, kSel_PS_Projectable, kSel_PS_Compound,
500 kSel_PS_PableCompound, kSel_PS_Master, kSel_PS_END,
501 kHil_PS_Ignore, kHil_PS_Element, kHil_PS_Projectable, kHil_PS_Compound,
502 kHil_PS_PableCompound, kHil_PS_Master, kHil_PS_END,
504 kWinDecorNormal, kWinDecorHide, kWinDecorTitleBar, kWinDecorMiniBar
514 fFileBrowser(nullptr),
542 kSel_PS_PableCompound);
545 kSel_PS_Ignore, kSel_PS_END - 1);
555 kHil_PS_PableCompound);
558 kHil_PS_Ignore, kHil_PS_END - 1);
567 wd->
AddEntry(
"Normal", kWinDecorNormal);
568 wd->
AddEntry(
"Hide", kWinDecorHide);
569 wd->
AddEntry(
"Title bars", kWinDecorTitleBar);
570 wd->
AddEntry(
"Mini bars", kWinDecorMiniBar);
575 this,
"EveMenu(Int_t)");
594 case kNewMainFrameSlot: {
613 gROOT->ProcessLineFast(
"new TBrowser");
618 gROOT->ProcessLineFast(
"new TCanvas");
623 case kNewCanvasExt: {
624 gROOT->ProcessLineFast(
"new TCanvas");
627 case kNewTextEditor: {
629 gROOT->ProcessLineFast(
Form(
"new TGTextEditor((const char *)0, (const TGWindow *)0x%zx)", (
size_t)
gClient->GetRoot()));
634 case kNewHtmlBrowser: {
639 gROOT->ProcessLine(
Form(
"new TGHtmlBrowser(\"https://root.cern/doc/master/classes.html\", \
640 (const TGWindow *)0x%zx)", (
size_t)
gClient->GetRoot()));
647 case kSel_PS_Element:
648 case kSel_PS_Projectable:
649 case kSel_PS_Compound:
650 case kSel_PS_PableCompound:
651 case kSel_PS_Master: {
654 kSel_PS_Ignore, kSel_PS_END - 1);
658 case kHil_PS_Element:
659 case kHil_PS_Projectable:
660 case kHil_PS_Compound:
661 case kHil_PS_PableCompound:
662 case kHil_PS_Master: {
665 kHil_PS_Ignore, kHil_PS_END - 1);
668 case kVerticalBrowser: {
678 case kWinDecorNormal: {
682 case kWinDecorHide: {
686 case kWinDecorTitleBar: {
690 case kWinDecorMiniBar: {
738 gROOT->GetListOfBrowsers()->Remove(tb);
Handle_t Window_t
Window handle.
const Mask_t kKeyControlMask
ULong_t Pixel_t
Pixel value.
void Warning(const char *location, const char *msgfmt,...)
Use this function in warning situations.
R__EXTERN TEveManager * gEve
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 WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t mask
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 child
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t height
char * Form(const char *fmt,...)
Formats a string in a circular formatting buffer.
R__EXTERN TSystem * gSystem
ABC describing GUI independent browser implementation protocol.
virtual void SetBrowser(TBrowser *b)
Using a TBrowser one can browse all ROOT objects.
TContextMenu * GetContextMenu() const
void SetBrowserImp(TBrowserImp *i)
TClass instances represent classes, structs and namespaces in the ROOT type system.
TList * GetMenuList() const
Return the list of menu items associated with the class.
Bool_t InheritsFrom(const char *cl) const override
Return kTRUE if this class inherits from a class with name "classname".
static ULong_t Number2Pixel(Int_t ci)
Static method that given a color index number, returns the corresponding pixel value.
Specialization of TRootBrowser for Eve.
TEveBrowser(const TEveBrowser &)
void CalculateReparentXY(TGObject *parent, Int_t &x, Int_t &y)
Calculate position of a widget for reparenting into parent.
TGFileBrowser * GetFileBrowser() const
Returns the default file-browser.
void SanitizeTabCounts()
TRootBrowser keeps (somewhat unnecessarily) counters for number ob tabs on each position.
void EveMenu(Int_t id)
Handle events from Eve menu.
void SetupCintExport(TClass *cl)
Add "Export to CINT" into context-menu for class cl.
void CloseTab(Int_t id) override
Virtual from TRootBrowser. Need to intercept closing of Eve tabs.
void CloseWindow() override
Virtual from TGMainFrame. Calls TEveManager::Terminate().
void ReallyDelete() override
Override from TRootBrowser.
TGFileBrowser * MakeFileBrowser(Bool_t make_default=kFALSE)
Create a file-browser.
void SetFileBrowser(TGFileBrowser *b)
Set the default file browser.
void InitPlugins(Option_t *opt="FI")
Initialize standard plugins.
void HideBottomTab()
Hide the bottom tab (usually holding command-line widget).
TGFileBrowser * fFileBrowser
Abstract base-class for frame-slots that encompass EVE-windows (sub-classes of TEveWindow).
TEveWindow * GetEveWindow() const
Base class for TEveUtil visualization elements, providing hierarchy management, rendering control and...
virtual UChar_t GetSelectedLevel() const
Get selection level, needed for rendering selection and highlight feedback.
virtual Int_t GetNItems() const
virtual void ExpandIntoListTree(TGListTree *ltree, TGListTreeItem *parent)
Populates parent with elements.
Int_t GetDenyDestroy() const
Returns the number of times deny-destroy has been requested on the element.
virtual Bool_t SetRnrState(Bool_t rnr)
Set render state of this element and of its children to the same value.
virtual void ElementChanged(Bool_t update_scenes=kTRUE, Bool_t redraw=kFALSE)
Call this after an element has been changed so that the state can be propagated around the framework.
virtual TObject * GetObject(const TEveException &eh) const
Get a TObject associated with this render-element.
Exception class thrown by TEve classes and macros.
Composite GUI frame for parallel display of a TGListTree and TEveGedEditor.
static TString fgEditorClass
static void SetEditorClass(const char *edclass)
Set GED editor class.
void ItemClicked(TGListTreeItem *entry, Int_t btn, UInt_t mask, Int_t x, Int_t y)
Item has been clicked, based on mouse button do:
void DisconnectSignals()
Disconnect list-tree signals.
TEveGListTreeEditorFrame(const TEveGListTreeEditorFrame &)
void ReconfToVertical()
Reconfigure to vertical layout, list-tree above the editor.
void ItemBelowMouse(TGListTreeItem *entry, UInt_t mask)
Different item is below mouse.
~TEveGListTreeEditorFrame() override
Destructor.
TGCompositeFrame * fLTFrame
void ItemDblClicked(TGListTreeItem *item, Int_t btn)
Item has been double-clicked, potentially expand the children.
TGCompositeFrame * fFrame
void ItemKeyPress(TGListTreeItem *entry, UInt_t keysym, UInt_t mask)
A key has been pressed for an item.
void ReconfToHorizontal()
Reconfigure to horizontal layout, list-tree and editor side by side.
void ConnectSignals()
Connect list-tree signals.
Specialization of TGedEditor for proper update propagation to TEveManager.
Special list-tree-item for Eve.
Pixel_t GetActiveColor() const override
Return highlight color corresponding to current state of TEveElement.
void Toggle() override
Item's check-box state has been toggled ... forward to element's render-state.
void NotSupported(const char *func) const
Warn about access to function members that should never be called.
Bool_t IsChecked() const override
TEveGListTreeEditorFrame * GetLTEFrame() const
static void Terminate()
Properly terminate global TEveManager.
TEveSelection * GetSelection() const
Bool_t ElementPaste(TEveElement *element)
Paste has been called.
void RemoveElement(TEveElement *element, TEveElement *parent)
Remove element from parent.
TEveWindowManager * GetWindowManager() const
TEveViewer * SpawnNewViewer(const char *name, const char *title="", Bool_t embed=kTRUE)
Create a new GL viewer.
void Redraw3D(Bool_t resetCameras=kFALSE, Bool_t dropLogicals=kFALSE)
void RemoveFromListTree(TEveElement *element, TGListTree *lt, TGListTreeItem *lti)
Remove top-level element from list-tree with specified tree-item.
TEveScene * SpawnNewScene(const char *name, const char *title="")
Create a new scene.
TEveSelection * GetHighlight() const
void SetPickToSelect(Int_t ps)
virtual void UserPickedElement(TEveElement *el, Bool_t multi=kFALSE)
Called when user picks/clicks on an element.
Int_t GetPickToSelect() const
void ShowNormalEveDecorations()
Show eve decorations (title-bar or mini-bar) as specified for the contained window on all frames.
void SetShowTitleBars(Bool_t state)
Set show title-bar state on all frames.
void HideAllEveDecorations()
Hide all eve decorations (title-bar and mini-bar) on all frames.
void SelectWindow(TEveWindow *w)
Entry-point for communicating the fact that a window was acted upon in such a way that it should beco...
Description of TEveWindowSlot.
virtual void DestroyWindowAndSlot()
Destroy eve-window and its frame-slot.
static TEveWindowSlot * CreateWindowMainFrame(TEveWindow *eve_parent=nullptr)
Create a new main-frame and populate it with a default window-slot.
static TEveWindowSlot * CreateWindowInTab(TGTab *tab, TEveWindow *eve_parent=nullptr)
Create a new tab in a given tab-widget and populate it with a default window-slot.
A frame containing two scrollbars (a horizontal and a vertical) and a viewport.
virtual void SetContainer(TGFrame *f)
TGViewPort * GetViewPort() const
const TGWindow * GetDefaultRoot() const
Returns the root (i.e.
The base class for composite widgets (menu bars, list boxes, etc.).
virtual void AddFrame(TGFrame *f, TGLayoutHints *l=nullptr)
Add frame to the composite frame using the specified layout hints.
virtual TList * GetList() const
void MapSubwindows() override
Map all sub windows that are part of the composite frame.
void Layout() override
Layout the elements of the composite frame.
void SetCleanup(Int_t mode=kLocalCleanup) override
Turn on automatic cleanup of child frames in dtor.
void SetEditable(Bool_t on=kTRUE) override
Switch ON/OFF edit mode.
void SetEditDisabled(UInt_t on=1) override
Set edit disable flag for this frame and subframes.
void ChangeOptions(UInt_t options) override
Change composite frame options. Options is an OR of the EFrameTypes.
virtual void HideFrame(TGFrame *f)
Hide sub frame.
virtual void Associate(const TGWindow *w)
System file browser, used as TRootBrowser plug-in.
void BrowseObj(TObject *obj) override
Browse object.
void SetNewBrowser(TRootBrowser *b)
static Pixel_t GetDefaultSelectedBackground()
Get default selected frame background.
void Resize(UInt_t w=0, UInt_t h=0) override
Resize the frame.
void ReparentWindow(const TGWindow *p, Int_t x=0, Int_t y=0) override
Reparent window, make p the new parent and position the window at position (x,y) in new parent.
void MapWindow() override
map window
virtual UInt_t GetOptions() const
void UnmapWindow() override
unmap window
This class describes layout hints used by the layout classes.
virtual void SetPadRight(Int_t v)
virtual void SetPadLeft(Int_t v)
virtual void SetPadTop(Int_t v)
virtual void SetPadBottom(Int_t v)
virtual void SetLayoutHints(ULong_t lh)
TGListTreeItem * GetFirstChild() const
TGListTreeItem * GetParent() const
virtual void * GetUserData() const =0
A list tree is a widget that can contain a number of items arranged in a tree structure.
void SetColorMode(EColorMarkupMode colorMode)
void AddItem(TGListTreeItem *parent, TGListTreeItem *item)
Add given item to list tree.
Int_t DeleteChildren(TGListTreeItem *item)
Delete children of item from list.
void SetAutoCheckBoxPic(Bool_t on)
void SetEventHandled(Bool_t eh=kTRUE)
virtual void SetCanvas(TGCanvas *canvas)
TGListTreeItem * GetCurrent() const
void SetUserControl(Bool_t ctrl=kTRUE)
Defines top level windows that interact with the system Window Manager.
This class is the baseclass for all ROOT GUI widgets.
TGClient * fClient
Connection to display server.
virtual void SetFrame(TGFrame *frame, Bool_t prev)=0
virtual void SetString(const char *s)
Int_t GetNumberOfTabs() const
Return number of tabs.
TGCompositeFrame * GetTabContainer(Int_t tabIndex) const
Return container of tab with index tabIndex.
ROOT GUI Window base class.
@ kEditEnable
allow edit of this window
@ kEditDisable
disable edit of this window
void SetGlobal(Bool_t global) override
Set editor global.
A node represent a volume positioned inside another.They store links to both volumes and to the TGeoM...
TObject * First() const override
Return the first object in the list. Returns 0 when list is empty.
Mother of all ROOT objects.
virtual TClass * IsA() const
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.
Bool_t Disconnect(const char *signal=nullptr, void *receiver=nullptr, const char *slot=nullptr)
Disconnects signal of this object from slot of receiver.
This class creates a ROOT object browser, constituted by three main tabs.
void StartEmbedding(Int_t pos=kRight, Int_t subpos=-1) override
Start embedding external frame in the tab "pos" and tab element "subpos".
void SetTabTitle(const char *title, Int_t pos=kRight, Int_t subpos=-1)
Set text "title" of Tab "subpos" in TGTab "pos".
Int_t fCrTab[3]
Actual (active) tab elements (for each Tab)
TGHorizontalFrame * fH2
Horizontal frame.
Int_t fNbTab[3]
Number of tab elements (for each Tab)
TGHSplitter * fHSplitter
Horizontal splitter.
virtual void CloseTab(Int_t id)
Remove tab element id from right tab.
void StopEmbedding(const char *name=nullptr) override
TGHorizontalFrame * fPreMenuFrame
First (owned) menu frame.
TGTab * fTabRight
Right Tab.
TGPopupMenu * fMenuFile
"File" popup menu
TGTab * GetTabRight() const
TGHorizontalFrame * fTopMenuFrame
Top menu frame.
TGMenuBar * fMenuBar
Main (owned) menu bar.
void InitPlugins(Option_t *opt="")
Initialize default plugins.
TGVerticalFrame * fV2
Vertical frame.
const char * Data() const
TString & ReplaceAll(const TString &s1, const TString &s2)
void Form(const char *fmt,...)
Formats a string using a printf style format descriptor.
Bool_t Contains(const char *pat, ECaseCompare cmp=kExact) const
virtual int Load(const char *module, const char *entry="", Bool_t system=kFALSE)
Load a shared library.