12#ifndef ROOT_TEveWindow
13#define ROOT_TEveWindow
23class TEveWindowMainFrame;
99 UInt_t top_frame_height = 14,
100 UInt_t mini_bar_height = 4,
232 TEveWindow(
const char*
n=
"TEveWindow",
const char* t=
"");
ULong_t Pixel_t
Pixel value.
#define ClassDef(name, id)
An EVE window-slot contained within a TGMainFrame.
TEveCompositeFrameInMainFrame(const TEveCompositeFrameInMainFrame &)
virtual void Destroy()
Virtual function called from eve side when the frame should be destroyed.
TEveWindow * fOriginalContainer
void SetOriginalSlotAndContainer(TEveWindow *slot, TEveWindow *container)
Set the container where to return the contained window on destruction.
virtual void WindowNameChanged(const TString &name)
Update widgets using window's name or title.
void SomeWindowClosed(TEveWindow *w)
Slot called when a window is closed ... we check that this was not our original container.
TEveWindow * GetOriginalSlot() const
TEveCompositeFrameInMainFrame & operator=(const TEveCompositeFrameInMainFrame &)
TEveWindow * GetOriginalContainer() const
void MainFrameClosed()
Slot for main-frame's "CloseWindow()" signal.
virtual ~TEveCompositeFrameInMainFrame()
Destructor.
TEveWindow * fOriginalSlot
An EVE window-slot contained within one frame of a TGPack.
virtual void Destroy()
Virtual function called from eve side when the frame should be destroyed.
TEveCompositeFrameInPack & operator=(const TEveCompositeFrameInPack &)
virtual ~TEveCompositeFrameInPack()
Destructor.
TEveCompositeFrameInPack(const TEveCompositeFrameInPack &)
An EVE window-slot contained within one tab of a TGTab.
Int_t FindTabIndex()
Return index of this frame in the tab.
TGCompositeFrame * fParentInTab
virtual ~TEveCompositeFrameInTab()
Destructor.
virtual void SetCurrent(Bool_t curr)
Set current state of this frame.
virtual void Destroy()
Virtual function called from eve side when the frame should be destroyed.
virtual void WindowNameChanged(const TString &name)
Update widgets using window's name or title.
TEveCompositeFrameInTab(const TEveCompositeFrameInTab &)
TEveCompositeFrameInTab & operator=(const TEveCompositeFrameInTab &)
Abstract base-class for frame-slots that encompass EVE-windows (sub-classes of TEveWindow).
TGLayoutHints * fEveWindowLH
TEveWindow * GetEveWindow() const
static Bool_t fgAllowTopFrameCollapse
static void SetupFrameMarkup(IconBarCreator_foo creator, UInt_t top_frame_height=14, UInt_t mini_bar_height=4, Bool_t allow_top_collapse=kTRUE)
Set properties of the EVE frame.
void FlipTitleBarState()
Change display-state of the title-bar / mini-bar.
virtual TEveWindow * RelinquishEveWindow(Bool_t reparent=kTRUE)
Remove window and decrease its deny-destroy count.
virtual void ShowNormalDecorations()
Show title-bar or mini-bar, as dictated by the window.
virtual void WindowNameChanged(const TString &name)
Update widgets using window's name or title.
TEveCompositeFrame & operator=(const TEveCompositeFrame &)
void ActionPressed()
The action-button of the title-bar was pressed.
TGCompositeFrame * fTopFrame
TEveWindow * GetEveParentAsWindow() const
Returns eve-parent dynamic-casted to TEveWindow.
static UInt_t fgMiniBarHeight
TGTextButton * fToggleBar
TGFrame *(* IconBarCreator_foo)(TEveCompositeFrame *, TGCompositeFrame *, Int_t)
virtual void AcquireEveWindow(TEveWindow *ew)
Accept window and increase its deny-destroy count.
static UInt_t fgTopFrameHeight
static TList * fgFrameList
static TEveContextMenu * fgCtxMenu
virtual void HideAllDecorations()
Hide title-bar and mini-bar.
virtual void SetShowTitleBar(Bool_t show)
Set state of title-bar.
TEveCompositeFrame(const TEveCompositeFrame &)
virtual ~TEveCompositeFrame()
If fEveWindow != 0 we are being deleted from the ROOT GUI side.
static const TString fgkEmptyFrameName
virtual void SetCurrent(Bool_t curr)
Set current state of this frame.
void TitleBarClicked()
Slot for mouse-click on the central part of the title-bar.
static IconBarCreator_foo fgIconBarCreator
Base class for TEveUtil visualization elements, providing hierarchy management, rendering control and...
Encapsulates TGFrame into an eve-window.
TEveWindowFrame & operator=(const TEveWindowFrame &)
TGCompositeFrame * GetGUICompositeFrame()
Returns the registered top-frame of this eve-window dynamic-casted to composite-frame.
virtual TGFrame * GetGUIFrame()
virtual ~TEveWindowFrame()
Destructor.
TEveWindowFrame(const TEveWindowFrame &)
Encapsulates TGPack into an eve-window.
virtual TGFrame * GetGUIFrame()
Return top-frame of this eve-window - the pack.
void FlipOrientation()
Flip orientation of the pack (vertical / horizontal).
TEveWindowPack(const TEveWindowPack &)
void SetVertical(Bool_t x=kTRUE)
Set orientation of the pack (vertical / horizontal).
virtual TEveWindowSlot * NewSlotWithWeight(Float_t w)
Create a new weighted frame-slot at the last position of the pack.
void EqualizeFrames()
Refit existing frames so that their lengths are equal.
TEveWindowPack & operator=(const TEveWindowPack &)
virtual ~TEveWindowPack()
Destructor.
virtual TEveWindowSlot * NewSlot()
Create a new frame-slot at the last position of the pack.
virtual Bool_t CanMakeNewSlots() const
Description of TEveWindowSlot.
TEveWindowSlot & operator=(const TEveWindowSlot &)
TGCompositeFrame * fEmbedBuffer
TEveWindowSlot(const TEveWindowSlot &)
TEveWindowFrame * StopEmbedding(const char *name=0)
An embedded window is created in place of this window-slot.
TGCompositeFrame * StartEmbedding()
Start embedding a window that will replace the current slot.
TEveWindowFrame * MakeFrame(TGFrame *frame=0)
An eve-window-frame is created and frame is passed into it.
TEveWindowTab * MakeTab()
A tab is created in place of this window-slot.
virtual TGFrame * GetGUIFrame()
Return top-frame of this eve-window - the big button to make slot current.
virtual void SetCurrent(Bool_t curr)
Set current state of this window-slot.
virtual ~TEveWindowSlot()
Destructor.
TGTextButton * fEmptyButt
TEveWindowPack * MakePack()
A pack is created in place of this window-slot.
Encapsulates TGTab into an eve-window.
virtual ~TEveWindowTab()
Destructor.
TEveWindowTab(const TEveWindowTab &)
virtual Bool_t CanMakeNewSlots() const
TEveWindowTab & operator=(const TEveWindowTab &)
virtual TGFrame * GetGUIFrame()
Return top-frame of this eve-window - the tab.
virtual TEveWindowSlot * NewSlot()
Create new frame-slot - a new tab.
Abstract base-class for representing eve-windows.
virtual void PreDeleteElement()
Called before the element is deleted, thus offering the last chance to detach from acquired resources...
virtual void PreUndock()
Virtual function called before a window is undocked.
static void SetMiniBarBackgroundColor(Pixel_t p)
Set background-color for mini-bar (collapsed title-bar). Static.
virtual void DestroyWindowAndSlot()
Destroy eve-window and its frame-slot.
static UInt_t GetMainFrameDefHeight()
Get default height for new main-frame windows. Static.
TEveWindow & operator=(const TEveWindow &)
static void SetMainFrameDefWidth(UInt_t x)
Set default width for new main-frame windows. Static.
TEveCompositeFrame * fEveFrame
static void SwapWindows(TEveWindow *w1, TEveWindow *w2)
Swap windows w1 and w2.
TEveWindow(const TEveWindow &)
static void SetMainFrameDefHeight(UInt_t x)
Set default height for new main-frame windows. Static.
static TEveWindowSlot * CreateDefaultWindowSlot()
Create a default window slot.
static void SetCurrentBackgroundColor(Pixel_t p)
Set background-color for marking the title-bar of current window. Static.
Bool_t IsCurrent() const
Returns true if this window is the current one.
Bool_t IsAncestorOf(TEveWindow *win)
Returns true if this is an ancestor of win.
virtual void SetCurrent(Bool_t curr)
Set current state of this eve-window.
void ReplaceWindow(TEveWindow *w)
Replace this window with the passed one.
virtual Bool_t CanMakeNewSlots() const
void MakeCurrent()
Make this window current.
virtual TEveWindowSlot * NewSlot()
static Pixel_t GetMiniBarBackgroundColor()
Get background-color for mini-bar (collapsed title-bar). Static.
void PopulateEmptyFrame(TEveCompositeFrame *ef)
Populate given frame-slot - intended for initial population of a new slot or low-level window-swappin...
static TEveWindowSlot * CreateWindowMainFrame(TEveWindow *eve_parent=0)
Create a new main-frame and populate it with a default window-slot.
virtual TGFrame * GetGUIFrame()=0
void ClearEveFrame()
Clears eve-frame associated with this window.
TEveCompositeFrame * GetEveFrame()
static Pixel_t GetCurrentBackgroundColor()
Get background-color for marking the title-bar of current window. Static.
Bool_t GetShowTitleBar() const
virtual void DestroyWindow()
Destroy eve-window - replace it with an empty frame-slot.
void UndockWindow()
Undock the window - put it into a dedicated main-frame.
static TEveWindowSlot * CreateWindowInTab(TGTab *tab, TEveWindow *eve_parent=0)
Create a new tab in a given tab-widget and populate it with a default window-slot.
void SetShowTitleBar(Bool_t x)
Set display state of the title-bar.
void SwapWindowWithCurrent()
Swap frames with the current window.
static UInt_t fgMainFrameDefHeight
virtual void NameTitleChanged()
Name or title of the window changed - propagate to frames.
void TitleBarClicked()
Slot for clicking on the title-bar.
static UInt_t fgMainFrameDefWidth
static Pixel_t fgMiniBarBackgroundColor
static UInt_t GetMainFrameDefWidth()
Get default width for new main-frame windows. Static.
virtual ~TEveWindow()
Destructor.
void UndockWindowDestroySlot()
Undock the window - put it into a dedicated main-frame.
virtual void PostDock()
Virtual function called after a window is docked.
void SwapWindow(TEveWindow *w)
Swap frames with the given window.
static Pixel_t fgCurrentBackgroundColor
The base class for composite widgets (menu bars, list boxes, etc.).
A subclasses of TGWindow, and is used as base class for some simple widgets (buttons,...
This class describes layout hints used by the layout classes.
Defines top level windows that interact with the system Window Manager.
Stack of frames in horizontal (default) or vertical stack.
A tab widget contains a set of composite frames each with a little tab with a name (like a set of fol...
Yield an action as soon as it is clicked.
ROOT GUI Window base class.
Mother of all ROOT objects.