CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_6_1_2_SLHC2/src/Fireworks/Core/interface/CSGActionSupervisor.h

Go to the documentation of this file.
00001 #ifndef Fireworks_Core_CSGActionSupervisor_h
00002 #define Fireworks_Core_CSGActionSupervisor_h
00003 // -*- C++ -*-
00004 //
00005 // Package:     Core
00006 // Class  :     CSGActionSupervisor
00007 //
00016 //
00017 // Original Author:  
00018 //         Created: Aug 2009
00019 
00020 #include <vector>
00021 #include "Rtypes.h"
00022 
00023 class CSGAction;
00024 class TGPopupMenu;
00025 struct Event_t;
00026 
00027 class CSGActionSupervisor {
00028 
00029 public:
00030    CSGActionSupervisor();
00031    virtual ~CSGActionSupervisor();
00032 
00033    const std::vector<CSGAction*>& getListOfActions() const;
00034    void addToActionMap(CSGAction *action);
00035 
00036    virtual void defaultAction();
00037 
00038    CSGAction* getAction(const std::string& name);
00039 
00040    virtual void enableActions(bool enable = true);
00041 
00042    Bool_t activateMenuEntry(int entry);
00043    Bool_t activateToolBarEntry(int entry);
00044    void resizeMenu(TGPopupMenu *menu);
00045    virtual void HandleMenu(Int_t id);
00046 
00047    Long_t getToolTipDelay() const;
00048 
00049 protected:
00050    std::vector<CSGAction*> m_actionList;
00051 
00052 private:
00053    CSGActionSupervisor(const CSGActionSupervisor&); // stop default
00054    const CSGActionSupervisor& operator=(const CSGActionSupervisor&); // stop default
00055 
00056    // ---------- member data --------------------------------
00057 
00058    Long_t m_tooltipDelay;
00059 
00060 };
00061 
00062 #endif