Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:11:36

0001 #ifndef Fireworks_Core_FWCollectionSummaryWidget_h
0002 #define Fireworks_Core_FWCollectionSummaryWidget_h
0003 // -*- C++ -*-
0004 //
0005 // Package:     Core
0006 // Class  :     FWCollectionSummaryWidget
0007 //
0008 /**\class FWCollectionSummaryWidget FWCollectionSummaryWidget.h Fireworks/Core/interface/FWCollectionSummaryWidget.h
0009 
0010  Description: <one line class summary>
0011 
0012  Usage:
0013     <usage>
0014 
0015 */
0016 //
0017 // Original Author:  Chris Jones
0018 //         Created:  Sat Feb 14 10:02:30 CST 2009
0019 //
0020 
0021 // system include files
0022 #include "TGFrame.h"
0023 
0024 // user include files
0025 
0026 // forward declarations
0027 class TGPictureButton;
0028 class TGCheckButton;
0029 class TGLayoutHints;
0030 class FWEventItem;
0031 class FWColorSelect;
0032 class FWBoxIconButton;
0033 class FWBoxIconBase;
0034 class FWCheckBoxIcon;
0035 class FWColorBoxIcon;
0036 class FWCustomIconsButton;
0037 class FWColorPopup;
0038 class FWCollectionSummaryTableManager;
0039 class FWTableWidget;
0040 class TGGC;
0041 class TGTextButton;
0042 
0043 namespace fireworks {
0044   class Context;
0045 }
0046 
0047 struct FWCollectionSummaryWidgetConnectionHolder;
0048 
0049 class FWCollectionSummaryWidget : public TGCompositeFrame {
0050 public:
0051   FWCollectionSummaryWidget(TGFrame* iParent, FWEventItem& iItem, TGLayoutHints*);
0052   ~FWCollectionSummaryWidget() override;
0053 
0054   // ---------- const member functions ---------------------
0055 
0056   // ---------- static member functions --------------------
0057 
0058   // ---------- member functions ---------------------------
0059   void displayChanged();
0060   void itemChanged();
0061 
0062   //pass true if white or false if black
0063   void setBackgroundToWhite(bool);
0064 
0065   void colorChangeRequested(Color_t iColorIndex);
0066   void toggleItemVisible();
0067   void toggleShowHide();
0068   void colorClicked();
0069 
0070   void requestForInfo(FWEventItem*);              // *SIGNAL*
0071   void requestForFilter(FWEventItem*);            // *SIGNAL*
0072   void requestForErrorInfo(FWEventItem*);         // *SIGNAL*
0073   void requestForController(FWEventItem*);        // *SIGNAL*
0074   void requestForModelContextMenu(Int_t, Int_t);  // *SIGNAL*
0075 
0076   void infoClicked();
0077   void stateClicked();
0078   void labelClicked();
0079 
0080   ClassDefOverride(FWCollectionSummaryWidget, 0);
0081 
0082   void itemColorClicked(int iIndex, Int_t iRootX, Int_t iRootY);
0083   void modelSelected(Int_t iRow, Int_t iButton, Int_t iKeyMod, Int_t iGlobalX, Int_t iGlobalY);
0084 
0085 private:
0086   FWCollectionSummaryWidget(const FWCollectionSummaryWidget&);  // stop default
0087 
0088   const FWCollectionSummaryWidget& operator=(const FWCollectionSummaryWidget&);  // stop default
0089 
0090   void createColorPopup();
0091   void colorTable();
0092   // ---------- member data --------------------------------
0093   FWEventItem* m_collection;
0094   TGLayoutHints* m_hints;
0095   TGFrame* m_parent;
0096   FWCustomIconsButton* m_showHideButton;
0097   FWBoxIconButton* m_isVisibleButton;
0098   FWCheckBoxIcon* m_isVisibleCheckBox;
0099   //FWColorSelect* m_colorSelectWidget;
0100   FWBoxIconButton* m_colorSelectWidget;
0101   FWColorBoxIcon* m_colorSelectBox;
0102   FWCustomIconsButton* m_stateButton;
0103   FWCustomIconsButton* m_infoButton;
0104   TGTextButton* m_label;
0105   TGFrame* m_holder;
0106   bool m_collectionShown;
0107   TGGC* m_graphicsContext;
0108   TGGC* m_tableContext;
0109   int m_indexForColor;
0110   FWColorPopup* m_colorPopup;
0111 
0112   FWCollectionSummaryTableManager* m_tableManager;
0113   FWTableWidget* m_tableWidget;
0114   bool m_backgroundIsWhite;
0115 
0116   FWCollectionSummaryWidgetConnectionHolder* m_connectionHolder;
0117 };
0118 
0119 #endif