CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_6_1_1/src/Fireworks/Core/interface/FWGUISubviewArea.h

Go to the documentation of this file.
00001 #ifndef Fireworks_Core_FWGUISubviewArea_h
00002 #define Fireworks_Core_FWGUISubviewArea_h
00003 // -*- C++ -*-
00004 //
00005 // Package:     Core
00006 // Class  :     FWGUISubviewArea
00007 //
00016 //
00017 // Original Author:  Chris Jones
00018 //         Created:  Fri Feb 15 14:13:29 EST 2008
00019 // $Id: FWGUISubviewArea.h,v 1.27 2010/11/11 19:45:49 amraktad Exp $
00020 //
00021 
00022 #include "TGFrame.h"
00023 #ifndef __CINT__
00024 #include <sigc++/signal.h>
00025 #endif
00026 #include <string>
00027 
00028 // forward declarations
00029 class TGPictureButton;
00030 class TGLabel;
00031 class TEveCompositeFrame;
00032 class TEveWindow;
00033 
00034 class FWGUISubviewArea : public TGHorizontalFrame
00035 {
00036 public:
00037    FWGUISubviewArea(TEveCompositeFrame* ef, TGCompositeFrame* parent, Int_t height);
00038    virtual ~FWGUISubviewArea();
00039 
00040    // ---------- const member functions ---------------------
00041 
00042    bool         isSelected() const;
00043 
00044    // ---------- static member functions --------------------
00045    static const TGPicture * swapIcon();
00046    static const TGPicture * swapDisabledIcon();
00047    static const TGPicture * undockIcon();
00048    static const TGPicture * dockIcon();
00049    static const TGPicture * undockDisabledIcon();
00050    static const TGPicture * closeIcon();
00051    static const TGPicture * closeDisabledIcon();
00052    static const TGPicture * infoIcon();
00053    static const TGPicture * infoDisabledIcon();
00054 
00055    // ---------- member functions ---------------------------
00056    void unselect();
00057    void setSwapIcon(bool);
00058    void swap();
00059    void destroy();
00060    void undock();
00061    void dock();
00062 
00063    void selectButtonToggle();
00064 
00065 #ifndef __CINT__
00066    sigc::signal<void, FWGUISubviewArea*> swap_;
00067    sigc::signal<void, FWGUISubviewArea*> goingToBeDestroyed_;
00068    sigc::signal<void, FWGUISubviewArea*> selected_;
00069    sigc::signal<void, FWGUISubviewArea*> unselected_;
00070 #endif
00071    void setInfoButton(bool downp);
00072 
00073    TEveWindow* getEveWindow();
00074 
00075    static FWGUISubviewArea* getToolBarFromWindow(TEveWindow*);
00076 
00077    ClassDef(FWGUISubviewArea, 0);
00078 
00079 private:
00080    FWGUISubviewArea(const FWGUISubviewArea&);    // stop default
00081    const FWGUISubviewArea& operator=(const FWGUISubviewArea&);    // stop default
00082 
00083    // ---------- member data --------------------------------
00084    TEveCompositeFrame*  m_frame;
00085 
00086    TGPictureButton* m_swapButton;
00087    TGPictureButton* m_undockButton;
00088    TGPictureButton* m_dockButton;
00089    TGPictureButton* m_closeButton;
00090    TGPictureButton* m_infoButton;
00091 };
00092 
00093 #endif