00001 #ifndef Fireworks_Core_CmsShowCommonPopup_h 00002 #define Fireworks_Core_CmsShowCommonPopup_h 00003 00004 #ifndef __CINT__ 00005 #include <boost/shared_ptr.hpp> 00006 #endif 00007 #include "GuiTypes.h" 00008 #include "TGFrame.h" 00009 #include "Fireworks/Core/interface/FWParameterSetterEditorBase.h" 00010 #ifndef __CINT__ 00011 #include "Fireworks/Core/interface/FWColorManager.h" 00012 #endif 00013 00014 class TGHSlider; 00015 class TGLabel; 00016 class TGTextButton; 00017 class TGCheckButton; 00018 class CmsShowCommon; 00019 class FWColorManager; 00020 class FWColorSelect; 00021 class FWParameterBase; 00022 class FWParameterSetterBase; 00023 00024 class CmsShowCommonPopup : public TGTransientFrame, 00025 public FWParameterSetterEditorBase 00026 { 00027 public: 00028 CmsShowCommonPopup( CmsShowCommon*, const TGWindow* p = 0, UInt_t w = 1, UInt_t h = 1); 00029 virtual ~CmsShowCommonPopup(); 00030 00031 // ---------- member functions --------------------------- 00032 00033 virtual void CloseWindow() { UnmapWindow(); } 00034 00035 void switchBackground(); 00036 void changeGeomColor(Color_t); 00037 void changeGeomTransparency2D(int); 00038 void changeGeomTransparency3D(int); 00039 void changeSelectionColorSet(Color_t); 00040 void colorSetChanged(); 00041 00042 ClassDef(CmsShowCommonPopup, 0); 00043 00044 private: 00045 CmsShowCommonPopup(const CmsShowCommonPopup&); 00046 const CmsShowCommonPopup& operator=(const CmsShowCommonPopup&); 00047 00048 void makeSetter(TGCompositeFrame* frame, FWParameterBase* param); 00049 void getColorSetColors (int& hci, int& sci); 00050 // ---------- member data -------------------------------- 00051 00052 CmsShowCommon *m_common; 00053 00054 TGTextButton *m_backgroundButton; 00055 TGHSlider *m_gammaSlider; 00056 TGTextButton *m_gammaButton; 00057 00058 #ifndef __CINT__ 00059 FWColorSelect* m_colorSelectWidget[kFWGeomColorSize]; 00060 FWColorSelect* m_colorRnrCtxHighlightWidget; 00061 FWColorSelect* m_colorRnrCtxSelectWidget; 00062 std::vector<boost::shared_ptr<FWParameterSetterBase> > m_setters; 00063 #endif 00064 }; 00065 00066 00067 #endif