ROOT  6.06/09
Reference Guide
TEveWindow.h
Go to the documentation of this file.
1 // @(#)root/eve:$Id$
2 // Author: Matevz Tadel 2007
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 #ifndef ROOT_TEveWindow
13 #define ROOT_TEveWindow
14 
15 #include "TEveElement.h"
16 
17 #include "TGFrame.h"
18 #include "TContextMenu.h"
19 
20 class TEveWindow;
21 class TEveWindowSlot;
22 class TEveWindowFrame;
23 class TEveWindowMainFrame;
24 class TEveWindowPack;
25 class TEveWindowTab;
26 class TEveContextMenu;
27 
28 class TGButton;
29 class TGSplitButton;
30 class TGTextButton;
31 
32 class TGPack;
33 class TGTab;
34 
35 //==============================================================================
36 // TEveCompositeFrame
37 //==============================================================================
38 
40 {
41  friend class TEveWindow;
42  friend class TEveWindowManager;
43 
44 public:
45  typedef TGFrame* (*IconBarCreator_foo)(TEveCompositeFrame*, TGCompositeFrame*, Int_t);
46 
47 private:
48  TEveCompositeFrame(const TEveCompositeFrame&); // Not implemented
49  TEveCompositeFrame& operator=(const TEveCompositeFrame&); // Not implemented
50 
55 
56 protected:
57  TGCompositeFrame *fTopFrame;
62 
64 
67 
69 
71  static const TString fgkEmptyFrameName;
72 
73  static TList *fgFrameList;
74 
75 public:
76  TEveCompositeFrame(TGCompositeFrame* gui_parent, TEveWindow* eve_parent);
77  virtual ~TEveCompositeFrame();
78 
79  virtual void WindowNameChanged(const TString& name);
80 
81  virtual void Destroy() = 0;
82 
83  virtual void AcquireEveWindow(TEveWindow* ew);
84  virtual TEveWindow* RelinquishEveWindow(Bool_t reparent=kTRUE);
85 
86  TEveWindow* GetEveWindow() const { return fEveWindow; }
88 
89  virtual void SetCurrent(Bool_t curr);
90  virtual void SetShowTitleBar(Bool_t show);
91  virtual void HideAllDecorations();
92  virtual void ShowNormalDecorations();
93 
94  void ActionPressed();
95  void FlipTitleBarState();
96  void TitleBarClicked();
97 
98  static void SetupFrameMarkup(IconBarCreator_foo creator,
99  UInt_t top_frame_height = 14,
100  UInt_t mini_bar_height = 4,
101  Bool_t allow_top_collapse = kTRUE);
102 
103  ClassDef(TEveCompositeFrame, 0); // Composite frame containing eve-window-controls and eve-windows.
104 };
105 
106 
107 //==============================================================================
108 // TEveCompositeFrameInMainFrame
109 //==============================================================================
110 
112 {
113 private:
116 
117 protected:
121 
122 public:
124  TGMainFrame* mf);
126 
127  virtual void WindowNameChanged(const TString& name);
128 
129  virtual void Destroy();
130 
131  void SetOriginalSlotAndContainer(TEveWindow* slot, TEveWindow* container);
132 
133  void SomeWindowClosed(TEveWindow* w);
134  void MainFrameClosed();
135 
138 
139  ClassDef(TEveCompositeFrameInMainFrame, 0); // Eve-composite-frame that is contained in one tab of a TGTab.
140 };
141 
142 
143 //==============================================================================
144 // TEveCompositeFrameInPack
145 //==============================================================================
146 
148 {
149 private:
150  TEveCompositeFrameInPack(const TEveCompositeFrameInPack&); // Not implemented
151  TEveCompositeFrameInPack& operator=(const TEveCompositeFrameInPack&); // Not implemented
152 
153 protected:
155 
156 public:
158  TGPack* pack);
159  virtual ~TEveCompositeFrameInPack();
160 
161  virtual void Destroy();
162 
163  ClassDef(TEveCompositeFrameInPack, 0); // Eve-composite-frame that is contained in a TGPack.
164 };
165 
166 
167 //==============================================================================
168 // TEveCompositeFrameInTab
169 //==============================================================================
170 
172 {
173 private:
174  TEveCompositeFrameInTab(const TEveCompositeFrameInTab&); // Not implemented
175  TEveCompositeFrameInTab& operator=(const TEveCompositeFrameInTab&); // Not implemented
176 
177 protected:
180 
182 
183 public:
185  TGTab* tab);
186  virtual ~TEveCompositeFrameInTab();
187 
188  virtual void WindowNameChanged(const TString& name);
189 
190  virtual void Destroy();
191 
192  virtual void SetCurrent(Bool_t curr);
193 
194  ClassDef(TEveCompositeFrameInTab, 0); // Eve-composite-frame that is contained in one tab of a TGTab.
195 };
196 
197 
198 //==============================================================================
199 //==============================================================================
200 // TEveWindow classes
201 //==============================================================================
202 //==============================================================================
203 
204 
205 //==============================================================================
206 // TEveWindow
207 //==============================================================================
208 
210 {
211  friend class TEveWindowManager;
212 
213 private:
214  TEveWindow(const TEveWindow&); // Not implemented
215  TEveWindow& operator=(const TEveWindow&); // Not implemented
216 
217 protected:
220 
221  virtual void SetCurrent(Bool_t curr);
222 
225 
228 
229  virtual void PreDeleteElement();
230 
231 public:
232  TEveWindow(const char* n="TEveWindow", const char* t="");
233  virtual ~TEveWindow();
234 
235  virtual void NameTitleChanged();
236 
237  virtual TGFrame* GetGUIFrame() = 0;
238  virtual void PreUndock();
239  virtual void PostDock();
240 
241  virtual Bool_t CanMakeNewSlots() const { return kFALSE; }
242  virtual TEveWindowSlot* NewSlot() { return 0; }
243 
245 
246  void SwapWindow(TEveWindow* w);
247  void SwapWindowWithCurrent(); // *MENU*
248 
249  void UndockWindow(); // *MENU*
250  void UndockWindowDestroySlot(); // *MENU*
251 
252  void ReplaceWindow(TEveWindow* w);
253 
254  virtual void DestroyWindow(); // *MENU*
255  virtual void DestroyWindowAndSlot(); // *MENU*
256 
258  void ClearEveFrame();
259 
260  void FlipShowTitleBar() { SetShowTitleBar(!fShowTitleBar); }
262  void SetShowTitleBar(Bool_t x);
263 
264  Bool_t IsCurrent() const;
265  void MakeCurrent();
266 
267 
269 
270  void TitleBarClicked();
271 
272 
273  // Static helper functions for common window management scenarios.
274 
276  static TEveWindowSlot* CreateWindowMainFrame(TEveWindow* eve_parent=0);
277  static TEveWindowSlot* CreateWindowInTab(TGTab* tab, TEveWindow* eve_parent=0);
278 
279  static void SwapWindows(TEveWindow* w1, TEveWindow* w2);
280 
281  // Access to static data-members.
282 
283  static UInt_t GetMainFrameDefWidth();
284  static UInt_t GetMainFrameDefHeight();
285  static void SetMainFrameDefWidth (UInt_t x);
286  static void SetMainFrameDefHeight(UInt_t x);
287 
290  static void SetCurrentBackgroundColor(Pixel_t p);
291  static void SetMiniBarBackgroundColor(Pixel_t p);
292 
293  ClassDef(TEveWindow, 0); // Abstract base-class for eve-windows.
294 };
295 
296 
297 //==============================================================================
298 // TEveWindowSlot
299 //==============================================================================
300 
302 {
303 private:
304  TEveWindowSlot(const TEveWindowSlot&); // Not implemented
305  TEveWindowSlot& operator=(const TEveWindowSlot&); // Not implemented
306 
307 protected:
310 
311  virtual void SetCurrent(Bool_t curr);
312 
313 public:
314  TEveWindowSlot(const char* n="TEveWindowSlot", const char* t="");
315  virtual ~TEveWindowSlot();
316 
317  virtual TGFrame* GetGUIFrame();
318 
319  TEveWindowPack* MakePack(); // *MENU*
320  TEveWindowTab* MakeTab(); // *MENU*
321 
322  TEveWindowFrame* MakeFrame(TGFrame* frame=0);
323 
325  TEveWindowFrame* StopEmbedding(const char* name=0);
326 
327  ClassDef(TEveWindowSlot, 0); // An unoccupied eve-window slot.
328 };
329 
330 
331 //==============================================================================
332 // TEveWindowFrame
333 //==============================================================================
334 
336 {
337 private:
338  TEveWindowFrame(const TEveWindowFrame&); // Not implemented
339  TEveWindowFrame& operator=(const TEveWindowFrame&); // Not implemented
340 
341 protected:
343 
344 public:
345  TEveWindowFrame(TGFrame* frame, const char* n="TEveWindowFrame", const char* t="");
346  virtual ~TEveWindowFrame();
347 
348  virtual TGFrame* GetGUIFrame() { return fGUIFrame; }
349 
351 
352  ClassDef(TEveWindowFrame, 0); // Eve-window containing any TGFrame.
353 };
354 
355 
356 //==============================================================================
357 // TEveWindowPack
358 //==============================================================================
359 
361 {
362 private:
363  TEveWindowPack(const TEveWindowPack&); // Not implemented
364  TEveWindowPack& operator=(const TEveWindowPack&); // Not implemented
365 
366 protected:
368 
369 public:
370  TEveWindowPack(TGPack* p, const char* n="TEveWindowPack", const char* t="");
371  virtual ~TEveWindowPack();
372 
373  virtual TGFrame* GetGUIFrame();
374 
375  virtual Bool_t CanMakeNewSlots() const { return kTRUE; }
377  virtual TEveWindowSlot* NewSlot(); // *MENU*
378 
379  void FlipOrientation(); // *MENU*
380  void SetVertical(Bool_t x=kTRUE);
382 
383  void EqualizeFrames(); // *MENU*
384 
385  TGPack* GetPack() const { return fPack; }
386 
387  ClassDef(TEveWindowPack, 0); // Eve-window containing a TGPack.
388 };
389 
390 
391 //==============================================================================
392 // TEveWindowTab
393 //==============================================================================
394 
395 class TEveWindowTab : public TEveWindow
396 {
397 private:
398  TEveWindowTab(const TEveWindowTab&); // Not implemented
399  TEveWindowTab& operator=(const TEveWindowTab&); // Not implemented
400 
401 protected:
403 
404 public:
405  TEveWindowTab(TGTab* tab, const char* n="TEveWindowTab", const char* t="");
406  virtual ~TEveWindowTab();
407 
408  virtual TGFrame* GetGUIFrame();
409 
410  virtual Bool_t CanMakeNewSlots() const { return kTRUE; }
411  virtual TEveWindowSlot* NewSlot(); // *MENU*
412 
413  TGTab* GetTab() const { return fTab; }
414 
415  ClassDef(TEveWindowTab, 0); // Eve-window containing a TGTab.
416 };
417 
418 
419 //==============================================================================
420 //==============================================================================
421 // Helper classes
422 //==============================================================================
423 //==============================================================================
424 
425 
426 //==============================================================================
427 // TEveContextMenu
428 //==============================================================================
429 
431 {
432 public:
433  TEveContextMenu(const char *name, const char *title = "Eve context menu");
434 
435  void SetupAndPopup(TGWindow* button, TObject* obj);
436 
437  ClassDef(TEveContextMenu, 0) // Specialization of TContextMenu for Eve.
438 };
439 
440 #endif
virtual TEveWindowSlot * NewSlot()
Create new frame-slot - a new tab.
virtual TEveWindowSlot * NewSlot()
Create a new frame-slot at the last position of the pack.
ClassDef(TEveWindowPack, 0)
virtual void HideAllDecorations()
Hide title-bar and mini-bar.
Definition: TEveWindow.cxx:301
virtual Bool_t CanMakeNewSlots() const
Definition: TEveWindow.h:410
virtual TEveWindowSlot * NewSlot()
Definition: TEveWindow.h:242
virtual void PostDock()
Virtual function called after a window is docked.
Definition: TEveWindow.cxx:703
Encapsulates TGPack into an eve-window.
Definition: TEveWindow.h:360
virtual TGFrame * GetGUIFrame()
Return top-frame of this eve-window - the pack.
Specialization of TContext menu.
Definition: TEveWindow.h:430
void MainFrameClosed()
Slot for main-frame's "CloseWindow()" signal.
Definition: TEveWindow.cxx:456
TEveCompositeFrame * fEveFrame
Definition: TEveWindow.h:218
TEveWindowFrame * StopEmbedding(const char *name=0)
An embedded window is created in place of this window-slot.
static TEveContextMenu * fgCtxMenu
Definition: TEveWindow.h:70
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.
Definition: TGTab.h:66
TEveCompositeFrame & operator=(const TEveCompositeFrame &)
float Float_t
Definition: RtypesCore.h:53
TGFrame * fGUIFrame
Definition: TEveWindow.h:342
void EqualizeFrames()
Refit existing frames so that their lengths are equal.
ClassDef(TEveCompositeFrameInMainFrame, 0)
TEveCompositeFrameInTab & operator=(const TEveCompositeFrameInTab &)
static TList * fgFrameList
Definition: TEveWindow.h:73
TGPack * GetPack() const
Definition: TEveWindow.h:385
TEveCompositeFrameInPack & operator=(const TEveCompositeFrameInPack &)
static UInt_t fgMainFrameDefHeight
Definition: TEveWindow.h:224
virtual void SetCurrent(Bool_t curr)
Set current state of this window-slot.
Abstract base-class for representing eve-windows.
Definition: TEveWindow.h:209
static TEveWindowSlot * CreateDefaultWindowSlot()
Create a default window slot.
Definition: TEveWindow.cxx:967
An EVE window-slot contained within a TGMainFrame.
Definition: TEveWindow.h:111
TEveCompositeFrameInMainFrame & operator=(const TEveCompositeFrameInMainFrame &)
ClassDef(TEveCompositeFrame, 0)
virtual ~TEveWindowFrame()
Destructor.
Bool_t IsCurrent() const
Returns true if this window is the current one.
Definition: TEveWindow.cxx:911
TGCompositeFrame * fTopFrame
Definition: TEveWindow.h:57
TEveCompositeFrame * GetEveFrame()
Definition: TEveWindow.h:257
Basic string class.
Definition: TString.h:137
Description of TEveWindowSlot.
Definition: TEveWindow.h:301
static Pixel_t GetMiniBarBackgroundColor()
Get background-color for mini-bar (collapsed title-bar). Static.
int Int_t
Definition: RtypesCore.h:41
bool Bool_t
Definition: RtypesCore.h:59
virtual TGFrame * GetGUIFrame()
Definition: TEveWindow.h:348
TEveCompositeFrameInMainFrame(const TEveCompositeFrameInMainFrame &)
const Bool_t kFALSE
Definition: Rtypes.h:92
TEveWindowTab * MakeTab()
A tab is created in place of this window-slot.
virtual ~TEveWindowTab()
Destructor.
virtual ~TEveWindowPack()
Destructor.
void MakeCurrent()
Make this window current.
Definition: TEveWindow.cxx:919
static Pixel_t fgCurrentBackgroundColor
Definition: TEveWindow.h:226
TEveElement * fEveParent
Definition: TEveWindow.h:65
virtual ~TEveWindow()
Destructor.
Definition: TEveWindow.cxx:668
A list of TEveElements.
Definition: TEveElement.h:459
TEveWindowFrame * MakeFrame(TGFrame *frame=0)
An eve-window-frame is created and frame is passed into it.
ClassDef(TEveWindowSlot, 0)
Int_t FindTabIndex()
Return index of this frame in the tab.
Definition: TEveWindow.cxx:581
void SwapWindowWithCurrent()
Swap frames with the current window.
Definition: TEveWindow.cxx:750
virtual void WindowNameChanged(const TString &name)
Update widgets using window's name or title.
Definition: TEveWindow.cxx:396
virtual void PreUndock()
Virtual function called before a window is undocked.
Definition: TEveWindow.cxx:690
TGFrame * fMiniBar
Definition: TEveWindow.h:63
virtual ~TEveWindowSlot()
Destructor.
virtual void Destroy()
Virtual function called from eve side when the frame should be destroyed.
Definition: TEveWindow.cxx:411
void ActionPressed()
The action-button of the title-bar was pressed.
Definition: TEveWindow.cxx:321
static void SetMainFrameDefHeight(UInt_t x)
Set default height for new main-frame windows. Static.
ClassDef(TEveWindow, 0)
static TEveWindowSlot * CreateWindowMainFrame(TEveWindow *eve_parent=0)
Create a new main-frame and populate it with a default window-slot.
Definition: TEveWindow.cxx:977
static UInt_t GetMainFrameDefWidth()
Get default width for new main-frame windows. Static.
static const TString fgkEmptyFrameName
Definition: TEveWindow.h:71
TEveWindowPack(const TEveWindowPack &)
virtual void SetCurrent(Bool_t curr)
Set current state of this frame.
Definition: TEveWindow.cxx:271
Double_t x[n]
Definition: legend1.C:17
#define ClassDef(name, id)
Definition: Rtypes.h:254
ULong_t Pixel_t
Definition: GuiTypes.h:41
void ReplaceWindow(TEveWindow *w)
Replace this window with the passed one.
Definition: TEveWindow.cxx:819
Definition: TGPack.h:39
void UndockWindow()
Undock the window - put it into a dedicated main-frame.
Definition: TEveWindow.cxx:768
virtual TGFrame * GetGUIFrame()
Return top-frame of this eve-window - the tab.
virtual void Destroy()
Virtual function called from eve side when the frame should be destroyed.
Definition: TEveWindow.cxx:528
static void SetMainFrameDefWidth(UInt_t x)
Set default width for new main-frame windows. Static.
TGCompositeFrame * GetGUICompositeFrame()
Returns the registered top-frame of this eve-window dynamic-casted to composite-frame.
Abstract base-class for frame-slots that encompass EVE-windows (sub-classes of TEveWindow).
Definition: TEveWindow.h:39
void UndockWindowDestroySlot()
Undock the window - put it into a dedicated main-frame.
Definition: TEveWindow.cxx:795
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.
Definition: TEveWindow.cxx:71
virtual ~TEveCompositeFrame()
If fEveWindow != 0 we are being deleted from the ROOT GUI side.
Definition: TEveWindow.cxx:171
A doubly linked list.
Definition: TList.h:47
static UInt_t fgMainFrameDefWidth
Definition: TEveWindow.h:223
static UInt_t GetMainFrameDefHeight()
Get default height for new main-frame windows. Static.
void SwapWindow(TEveWindow *w)
Swap frames with the given window.
Definition: TEveWindow.cxx:737
void FlipOrientation()
Flip orientation of the pack (vertical / horizontal).
virtual void DestroyWindowAndSlot()
Destroy eve-window and its frame-slot.
Definition: TEveWindow.cxx:867
TEveWindow & operator=(const TEveWindow &)
virtual void SetShowTitleBar(Bool_t show)
Set state of title-bar.
Definition: TEveWindow.cxx:285
virtual Bool_t CanMakeNewSlots() const
Definition: TEveWindow.h:375
TGFrame *(* IconBarCreator_foo)(TEveCompositeFrame *, TGCompositeFrame *, Int_t)
Definition: TEveWindow.h:45
TEveWindowSlot(const TEveWindowSlot &)
void FlipShowTitleBar()
Definition: TEveWindow.h:260
TGTextButton * fToggleBar
Definition: TEveWindow.h:58
An EVE window-slot contained within one tab of a TGTab.
Definition: TEveWindow.h:171
Bool_t GetShowTitleBar() const
Definition: TEveWindow.h:261
static UInt_t fgTopFrameHeight
Definition: TEveWindow.h:52
void SetVertical(Bool_t x=kTRUE)
Set orientation of the pack (vertical / horizontal).
TGCompositeFrame * fEmbedBuffer
Definition: TEveWindow.h:309
virtual ~TEveCompositeFrameInMainFrame()
Destructor.
Definition: TEveWindow.cxx:376
This class provides an interface to context sensitive popup menus.
Definition: TContextMenu.h:44
virtual void Destroy()
Virtual function called from eve side when the frame should be destroyed.
Definition: TEveWindow.cxx:603
unsigned int UInt_t
Definition: RtypesCore.h:42
TGTextButton * fEmptyButt
Definition: TEveWindow.h:308
TEveWindow * GetEveWindow() const
Definition: TEveWindow.h:86
virtual void ShowNormalDecorations()
Show title-bar or mini-bar, as dictated by the window.
Definition: TEveWindow.cxx:312
TGTab * fTab
Definition: TEveWindow.h:402
void PopulateEmptyFrame(TEveCompositeFrame *ef)
Populate given frame-slot - intended for initial population of a new slot or low-level window-swappin...
Definition: TEveWindow.cxx:727
TEveCompositeFrame(const TEveCompositeFrame &)
static void SwapWindows(TEveWindow *w1, TEveWindow *w2)
Swap windows w1 and w2.
Encapsulates TGTab into an eve-window.
Definition: TEveWindow.h:395
void ClearEveFrame()
Clears eve-frame associated with this window.
Definition: TEveWindow.cxx:889
ClassDef(TEveCompositeFrameInPack, 0)
TEveWindow * fEveWindow
Definition: TEveWindow.h:66
TGTextButton * fTitleBar
Definition: TEveWindow.h:59
virtual void NameTitleChanged()
Name or title of the window changed - propagate to frames.
Definition: TEveWindow.cxx:717
TEveWindowTab & operator=(const TEveWindowTab &)
static Pixel_t GetCurrentBackgroundColor()
Get background-color for marking the title-bar of current window. Static.
void SetOriginalSlotAndContainer(TEveWindow *slot, TEveWindow *container)
Set the container where to return the contained window on destruction.
Definition: TEveWindow.cxx:425
TEveWindow * GetOriginalContainer() const
Definition: TEveWindow.h:137
TEveWindowPack * MakePack()
A pack is created in place of this window-slot.
Bool_t fShowTitleBar
Definition: TEveWindow.h:219
ClassDef(TEveWindowFrame, 0)
TEveCompositeFrameInTab(const TEveCompositeFrameInTab &)
static IconBarCreator_foo fgIconBarCreator
Definition: TEveWindow.h:51
ClassDef(TEveCompositeFrameInTab, 0)
virtual ~TEveCompositeFrameInTab()
Destructor.
Definition: TEveWindow.cxx:561
virtual void AcquireEveWindow(TEveWindow *ew)
Accept window and increase its deny-destroy count.
Definition: TEveWindow.cxx:205
TGPack * fPack
Definition: TEveWindow.h:367
virtual ~TEveCompositeFrameInPack()
Destructor.
Definition: TEveWindow.cxx:518
TEveCompositeFrameInPack(const TEveCompositeFrameInPack &)
TEveWindow(const TEveWindow &)
TEveWindow * GetOriginalSlot() const
Definition: TEveWindow.h:136
void SetHorizontal()
Definition: TEveWindow.h:381
virtual void SetCurrent(Bool_t curr)
Set current state of this eve-window.
Definition: TEveWindow.cxx:929
TEveWindowFrame(const TEveWindowFrame &)
#define name(a, b)
Definition: linkTestLib0.cpp:5
virtual void SetCurrent(Bool_t curr)
Set current state of this frame.
Definition: TEveWindow.cxx:624
Mother of all ROOT objects.
Definition: TObject.h:58
TGFrame * fIconBar
Definition: TEveWindow.h:60
void FlipTitleBarState()
Change display-state of the title-bar / mini-bar.
Definition: TEveWindow.cxx:334
TEveWindowTab(const TEveWindowTab &)
TEveWindow * GetEveParentAsWindow() const
Returns eve-parent dynamic-casted to TEveWindow.
Definition: TEveWindow.cxx:262
Manager for EVE windows.
ClassDef(TEveWindowTab, 0)
virtual void DestroyWindow()
Destroy eve-window - replace it with an empty frame-slot.
Definition: TEveWindow.cxx:835
static void SetCurrentBackgroundColor(Pixel_t p)
Set background-color for marking the title-bar of current window. Static.
virtual TEveWindowSlot * NewSlotWithWeight(Float_t w)
Create a new weighted frame-slot at the last position of the pack.
TEveWindowSlot & operator=(const TEveWindowSlot &)
TGTab * GetTab() const
Definition: TEveWindow.h:413
TGLayoutHints * fEveWindowLH
Definition: TEveWindow.h:61
void SetupAndPopup(TGWindow *button, TObject *obj)
Position the popup below given button and show context menu for object obj.
TEveWindowFrame & operator=(const TEveWindowFrame &)
void SomeWindowClosed(TEveWindow *w)
Slot called when a window is closed ...
Definition: TEveWindow.cxx:441
TEveContextMenu(const char *name, const char *title="Eve context menu")
Constructor.
virtual void WindowNameChanged(const TString &name)
Update widgets using window's name or title.
Definition: TEveWindow.cxx:192
void SetShowTitleBar(Bool_t x)
Set display state of the title-bar.
Definition: TEveWindow.cxx:898
static void SetMiniBarBackgroundColor(Pixel_t p)
Set background-color for mini-bar (collapsed title-bar). Static.
void TitleBarClicked()
Slot for clicking on the title-bar.
Definition: TEveWindow.cxx:958
void TitleBarClicked()
Slot for mouse-click on the central part of the title-bar.
Definition: TEveWindow.cxx:346
virtual Bool_t CanMakeNewSlots() const
Definition: TEveWindow.h:241
const Bool_t kTRUE
Definition: Rtypes.h:91
TObject * obj
TGCompositeFrame * fParentInTab
Definition: TEveWindow.h:179
Base class for TEveUtil visualization elements, providing hierarchy management, rendering control and...
Definition: TEveElement.h:33
TEveWindowPack & operator=(const TEveWindowPack &)
static UInt_t fgMiniBarHeight
Definition: TEveWindow.h:53
An EVE window-slot contained within one frame of a TGPack.
Definition: TEveWindow.h:147
TGCompositeFrame * StartEmbedding()
Start embedding a window that will replace the current slot.
static Pixel_t fgMiniBarBackgroundColor
Definition: TEveWindow.h:227
virtual TEveWindow * RelinquishEveWindow(Bool_t reparent=kTRUE)
Remove window and decrease its deny-destroy count.
Definition: TEveWindow.cxx:238
const Int_t n
Definition: legend1.C:16
virtual TGFrame * GetGUIFrame()
Return top-frame of this eve-window - the big button to make slot current.
Encapsulates TGFrame into an eve-window.
Definition: TEveWindow.h:335
virtual TGFrame * GetGUIFrame()=0
Bool_t IsAncestorOf(TEveWindow *win)
Returns true if this is an ancestor of win.
Definition: TEveWindow.cxx:937
virtual void PreDeleteElement()
Called before the element is deleted, thus offering the last chance to detach from acquired resources...
Definition: TEveWindow.cxx:681
virtual void Destroy()=0
static Bool_t fgAllowTopFrameCollapse
Definition: TEveWindow.h:54
virtual void WindowNameChanged(const TString &name)
Update widgets using window's name or title.
Definition: TEveWindow.cxx:568