TEveWindowManager.h

Go to the documentation of this file.
00001 // @(#)root/eve:$Id: TEveWindowManager.h 29324 2009-07-03 11:27:35Z matevz $
00002 // Author: Matevz Tadel 2007
00003 
00004 /*************************************************************************
00005  * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers.               *
00006  * All rights reserved.                                                  *
00007  *                                                                       *
00008  * For the licensing terms see $ROOTSYS/LICENSE.                         *
00009  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
00010  *************************************************************************/
00011 
00012 #ifndef ROOT_TEveWindowManager
00013 #define ROOT_TEveWindowManager
00014 
00015 #include "TEveElement.h"
00016 #include "TQObject.h"
00017 
00018 class TEveWindow;
00019 class TEveWindowSlot;
00020 
00021 class TEveWindowManager : public TEveElementList,
00022                           public TQObject
00023 {
00024 private:
00025    TEveWindowManager(const TEveWindowManager&);            // Not implemented
00026    TEveWindowManager& operator=(const TEveWindowManager&); // Not implemented
00027 
00028 protected:
00029    TEveWindow   *fCurrentWindow;
00030    TEveWindow   *fDefaultContainer;
00031 
00032    void DestroyWindowRecursively(TEveWindow* window);
00033 
00034 public:
00035    TEveWindowManager(const char* n="TEveWindowManager", const char* t="");
00036    virtual ~TEveWindowManager();
00037 
00038    void SelectWindow(TEveWindow* w);
00039    void DeleteWindow(TEveWindow* w);
00040 
00041    void WindowDocked(TEveWindow* window); // *SIGNAL*
00042    void WindowUndocked (TEveWindow* window); // *SIGNAL*
00043    void WindowSelected(TEveWindow* window); // *SIGNAL*
00044    void WindowDeleted (TEveWindow* window); // *SIGNAL*
00045 
00046    TEveWindow*     GetCurrentWindow() const { return fCurrentWindow; }
00047    Bool_t          IsCurrentWindow(const TEveWindow* w) const { return w == fCurrentWindow; }
00048    TEveWindowSlot* GetCurrentWindowAsSlot() const;
00049 
00050    TEveWindow*     GetDefaultContainer() const { return fDefaultContainer; }
00051    Bool_t          HasDefaultContainer() const { return fDefaultContainer != 0; }
00052    void            SetDefaultContainer(TEveWindow* w);
00053 
00054    void            DestroyWindows();
00055 
00056    // Global frame decoration control.
00057 
00058    void HideAllEveDecorations();
00059    void ShowNormalEveDecorations();
00060    void SetShowTitleBars(Bool_t state);
00061 
00062    ClassDef(TEveWindowManager, 0); // Manager for EVE windows.
00063 };
00064 
00065 #endif

Generated on Tue Jul 5 14:15:07 2011 for ROOT_528-00b_version by  doxygen 1.5.1