Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:11:31

0001 #ifndef Fireworks_Core_FWGUISubviewArea_h
0002 #define Fireworks_Core_FWGUISubviewArea_h
0003 // -*- C++ -*-
0004 //
0005 // Package:     Core
0006 // Class  :     FWGUISubviewArea
0007 //
0008 /**\class FWGUISubviewArea FWGUISubviewArea.h Fireworks/Core/interface/FWGUISubviewArea.h
0009 
0010    Description: Manages the GUI area where a sub Subview is displayed
0011 
0012    Usage:
0013     <usage>
0014 
0015  */
0016 //
0017 // Original Author:  Chris Jones
0018 //         Created:  Fri Feb 15 14:13:29 EST 2008
0019 //
0020 
0021 #include "TGFrame.h"
0022 #ifndef __CINT__
0023 #include <sigc++/signal.h>
0024 #endif
0025 #include <string>
0026 
0027 // forward declarations
0028 class TGPictureButton;
0029 class TGLabel;
0030 class TEveCompositeFrame;
0031 class TEveWindow;
0032 
0033 class FWGUISubviewArea : public TGHorizontalFrame {
0034 public:
0035   FWGUISubviewArea(TEveCompositeFrame* ef, TGCompositeFrame* parent, Int_t height);
0036   ~FWGUISubviewArea() override;
0037 
0038   // ---------- const member functions ---------------------
0039 
0040   bool isSelected() const;
0041 
0042   // ---------- static member functions --------------------
0043   static const TGPicture* swapIcon();
0044   static const TGPicture* swapDisabledIcon();
0045   static const TGPicture* undockIcon();
0046   static const TGPicture* dockIcon();
0047   static const TGPicture* undockDisabledIcon();
0048   static const TGPicture* closeIcon();
0049   static const TGPicture* closeDisabledIcon();
0050   static const TGPicture* infoIcon();
0051   static const TGPicture* infoDisabledIcon();
0052 
0053   // ---------- member functions ---------------------------
0054   void unselect();
0055   void setSwapIcon(bool);
0056   void swap();
0057   void destroy();
0058   void undock();
0059   void dock();
0060 
0061   void selectButtonToggle();
0062 
0063 #ifndef __CINT__
0064   sigc::signal<void(FWGUISubviewArea*)> swap_;
0065   sigc::signal<void(FWGUISubviewArea*)> goingToBeDestroyed_;
0066   sigc::signal<void(FWGUISubviewArea*)> selected_;
0067   sigc::signal<void(FWGUISubviewArea*)> unselected_;
0068 #endif
0069   void setInfoButton(bool downp);
0070 
0071   TEveWindow* getEveWindow();
0072 
0073   static FWGUISubviewArea* getToolBarFromWindow(TEveWindow*);
0074 
0075   ClassDefOverride(FWGUISubviewArea, 0);
0076 
0077 private:
0078   FWGUISubviewArea(const FWGUISubviewArea&);                   // stop default
0079   const FWGUISubviewArea& operator=(const FWGUISubviewArea&);  // stop default
0080 
0081   // ---------- member data --------------------------------
0082   TEveCompositeFrame* m_frame;
0083 
0084   TGPictureButton* m_swapButton;
0085   TGPictureButton* m_undockButton;
0086   TGPictureButton* m_dockButton;
0087   TGPictureButton* m_closeButton;
0088   TGPictureButton* m_infoButton;
0089 };
0090 
0091 #endif