Back to home page

EIC code displayed by LXR

 
 

    


Warning, file /include/root/TEveWindowManager.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 // @(#)root/eve:$Id$
0002 // Author: Matevz Tadel 2007
0003 
0004 /*************************************************************************
0005  * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers.               *
0006  * All rights reserved.                                                  *
0007  *                                                                       *
0008  * For the licensing terms see $ROOTSYS/LICENSE.                         *
0009  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
0010  *************************************************************************/
0011 
0012 #ifndef ROOT_TEveWindowManager
0013 #define ROOT_TEveWindowManager
0014 
0015 #include "TEveElement.h"
0016 #include "TQObject.h"
0017 
0018 class TEveWindow;
0019 class TEveWindowSlot;
0020 
0021 class TEveWindowManager : public TEveElementList,
0022                           public TQObject
0023 {
0024 private:
0025    TEveWindowManager(const TEveWindowManager&);            // Not implemented
0026    TEveWindowManager& operator=(const TEveWindowManager&); // Not implemented
0027 
0028 protected:
0029    TEveWindow   *fCurrentWindow;
0030    TEveWindow   *fDefaultContainer;
0031 
0032    void DestroyWindowRecursively(TEveWindow* window);
0033 
0034 public:
0035    TEveWindowManager(const char* n="TEveWindowManager", const char* t="");
0036    ~TEveWindowManager() override;
0037 
0038    void SelectWindow(TEveWindow* w);
0039    void DeleteWindow(TEveWindow* w);
0040 
0041    void WindowDocked(TEveWindow* window); // *SIGNAL*
0042    void WindowUndocked (TEveWindow* window); // *SIGNAL*
0043    void WindowSelected(TEveWindow* window); // *SIGNAL*
0044    void WindowDeleted (TEveWindow* window); // *SIGNAL*
0045 
0046    TEveWindow*     GetCurrentWindow() const { return fCurrentWindow; }
0047    Bool_t          IsCurrentWindow(const TEveWindow* w) const { return w == fCurrentWindow; }
0048    TEveWindowSlot* GetCurrentWindowAsSlot() const;
0049 
0050    TEveWindow*     GetDefaultContainer() const { return fDefaultContainer; }
0051    Bool_t          HasDefaultContainer() const { return fDefaultContainer != nullptr; }
0052    void            SetDefaultContainer(TEveWindow* w);
0053 
0054    void            DestroyWindows();
0055 
0056    // Global frame decoration control.
0057 
0058    void HideAllEveDecorations();
0059    void ShowNormalEveDecorations();
0060    void SetShowTitleBars(Bool_t state);
0061 
0062    ClassDefOverride(TEveWindowManager, 0); // Manager for EVE windows.
0063 };
0064 
0065 #endif