CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch9/src/Fireworks/Core/src/FWModelContextMenuHandler.h

Go to the documentation of this file.
00001 #ifndef Fireworks_Core_FWModelContextMenuHandler_h
00002 #define Fireworks_Core_FWModelContextMenuHandler_h
00003 // -*- C++ -*-
00004 //
00005 // Package:     Core
00006 // Class  :     FWModelContextMenuHandler
00007 // 
00016 //
00017 // Original Author:  Chris Jones
00018 //         Created:  Tue Sep 22 13:26:02 CDT 2009
00019 // $Id: FWModelContextMenuHandler.h,v 1.7 2010/06/16 14:04:40 matevz Exp $
00020 //
00021 
00022 // system include files
00023 #include "Rtypes.h"
00024 #include "GuiTypes.h"
00025 
00026 // user include files
00027 
00028 // forward declarations
00029 class TGPopupMenu;
00030 class TGMenuEntry;
00031 class FWSelectionManager;
00032 class FWDetailViewManager;
00033 class FWColorManager;
00034 class FWColorPopup;
00035 class FWGUIManager;
00036 class FWViewContextMenuHandlerBase;
00037 
00038 class FWModelContextMenuHandler
00039 {
00040 
00041 public:
00042    FWModelContextMenuHandler(FWSelectionManager*,
00043                              FWDetailViewManager*,
00044                              FWColorManager*,
00045                              FWGUIManager*);
00046    virtual ~FWModelContextMenuHandler();
00047    
00048    // ---------- const member functions ---------------------
00050    void showSelectedModelContext(Int_t iX, Int_t iY, FWViewContextMenuHandlerBase*) const;
00051    
00052    // ---------- static member functions --------------------
00053    
00054    // ---------- member functions ---------------------------
00055    void chosenItem(Int_t);
00056    void colorChangeRequested(Color_t);
00057    
00058    void addViewEntry(const char*, int);
00059    ClassDef(FWModelContextMenuHandler,0);
00060 private:
00061    FWModelContextMenuHandler(const FWModelContextMenuHandler&); // stop default
00062    
00063    const FWModelContextMenuHandler& operator=(const FWModelContextMenuHandler&); // stop default
00064    
00065    void createModelContext() const;
00066    void createColorPopup() const;
00067    // ---------- member data --------------------------------
00068    mutable TGPopupMenu* m_modelPopup;
00069    mutable FWColorPopup* m_colorPopup;
00070    FWSelectionManager* m_selectionManager;
00071    FWDetailViewManager* m_detailViewManager;
00072    FWColorManager* m_colorManager;
00073    FWGUIManager* m_guiManager;
00074    mutable TGMenuEntry* m_seperator;
00075    mutable TGMenuEntry* m_viewSeperator;
00076    mutable TGMenuEntry* m_afterViewSeperator;
00077    mutable Int_t m_x;
00078    mutable Int_t m_y;
00079    mutable unsigned int m_nDetailViewEntries;
00080    mutable unsigned int m_nViewEntries;
00081    mutable FWViewContextMenuHandlerBase* m_viewHander;
00082 };
00083 
00084 
00085 #endif