CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_2_7_hltpatch1/src/Fireworks/Core/interface/CmsShowEDI.h

Go to the documentation of this file.
00001 #ifndef Fireworks_Core_CmsShowEDI_h
00002 #define Fireworks_Core_CmsShowEDI_h
00003 // -*- C++ -*-
00004 //
00005 // Package:     Core
00006 // Class  :     CmsShowEDI
00007 //
00016 //
00017 // Original Author:  Joshua Berger
00018 //         Created:  Mon Jun 23 15:48:42 EDT 2008
00019 // $Id: CmsShowEDI.h,v 1.20 2011/07/30 04:49:40 amraktad Exp $
00020 //
00021 
00022 // system include files
00023 #ifndef __CINT__
00024 #include <sigc++/connection.h>
00025 #endif
00026 #include "GuiTypes.h"
00027 #include "TGFrame.h"
00028 
00029 // user include files
00030 
00031 //#include "Fireworks/Core/interface/FWModelChangeSignal.h"
00032 
00033 #include "Fireworks/Core/interface/FWDataCategories.h"
00034 
00035 // forward declarations
00036 class FWSelectionManager;
00037 class FWColorManager;
00038 class FWEventItem;
00039 class TGLabel;
00040 class FWColorSelect;
00041 class TGHSlider;
00042 class TGCheckButton;
00043 class TGNumberEntry;
00044 class TGTextEntry;
00045 class TGTextButton;
00046 class TGTextView;
00047 class TGComboBoxPopup;
00048 class TGListBox;
00049 class FWGUIValidatingTextEntry;
00050 class FWExpressionValidator;
00051 class TGTab;
00052 
00053 class CmsShowEDI : public TGTransientFrame
00054 {
00055 
00056 public:
00057    CmsShowEDI(const TGWindow* p = 0, UInt_t w = 1, UInt_t h = 1, FWSelectionManager* selMgr = 0,
00058               FWColorManager* colorMgr=0);
00059    virtual ~CmsShowEDI();
00060 
00061    virtual void CloseWindow() { UnmapWindow(); }
00062 
00063    // ---------- const member functions ---------------------
00064    
00065    // ---------- static member functions --------------------
00066 
00067    // ---------- member functions --------------------------
00068    void fillEDIFrame();
00069    void removeItem();
00070    //      void emptyEDIFrame();
00071    void updateDisplay();
00072    void updateFilter();
00073    void colorSetChanged();
00074    void disconnectAll();
00075    void changeItemColor(Color_t color );
00076    void toggleItemVisible(Bool_t on = kTRUE);
00077    void changeItemOpacity(Int_t opacity); 
00078    void runFilter();
00079    void runSelection();
00080    void selectAll();
00081 
00082    void updateLayerControls();
00083    void moveToBack();
00084    void moveToFront();
00085    void moveToLayer(Long_t);
00086    void show(FWDataCategories);
00087 
00088    ClassDef(CmsShowEDI, 0);
00089 
00090 private:
00091    CmsShowEDI(const CmsShowEDI&);    // stop default
00092 
00093    const CmsShowEDI& operator=(const CmsShowEDI&);    // stop default
00094 
00095    void clearPBFrame();
00096    //   void addBut();
00097    // ---------- member data --------------------------------
00098    FWSelectionManager* m_selectionManager;
00099    TGTab* m_tabs;
00100    TGLabel* m_objectLabel;
00101    TGTextButton* m_removeButton;
00102    TGTextButton* m_frontButton;
00103    TGTextButton* m_backButton;
00104    TGNumberEntry* m_layerEntry;
00105    FWColorSelect* m_colorSelectWidget;
00106    TGHSlider*     m_opacitySlider;
00107    TGCheckButton* m_isVisibleButton;
00108    FWGUIValidatingTextEntry* m_filterExpressionEntry;
00109    FWGUIValidatingTextEntry* m_selectExpressionEntry;
00110    TGTextButton* m_filterButton;
00111    TGTextButton* m_selectButton;
00112    TGTextButton* m_selectAllButton;
00113    TGTextEntry* m_nameEntry;
00114    TGTextEntry* m_typeEntry;
00115    TGTextEntry* m_moduleEntry;
00116    TGTextEntry* m_instanceEntry;
00117    TGTextEntry* m_processEntry;
00118    FWEventItem* m_item;
00119 #ifndef __CINT__
00120    sigc::connection m_displayChangedConn;
00121    sigc::connection m_modelChangedConn;
00122    sigc::connection m_destroyedConn;
00123 #endif
00124    TGTextView* m_filterError;
00125    TGTextView* m_selectError;
00126    FWExpressionValidator* m_validator;
00127    FWColorManager* m_colorManager;
00128 
00129    TGCompositeFrame* m_settersFrame;
00130 };
00131 
00132 
00133 #endif