Back to home page

Project CMSSW displayed by LXR

 
 

    


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

0001 // -*- C++ -*-
0002 #ifndef Fireworks_Core_FWTableView_h
0003 #define Fireworks_Core_FWTableView_h
0004 //
0005 // Package:     Core
0006 // Class  :     FWTableView
0007 //
0008 /**\class FWTableView FWTableView.h Fireworks/Core/interface/FWTableView.h
0009 
0010    Description: <one line class summary>
0011 
0012    Usage:
0013    <usage>
0014 
0015 */
0016 //
0017 // Original Author:  Chris Jones
0018 //         Created:  Thu Feb 21 11:22:37 EST 2008
0019 //
0020 
0021 // system include files
0022 #include "Rtypes.h"
0023 
0024 // user include files
0025 #include "Fireworks/Core/interface/FWViewBase.h"
0026 
0027 // forward declarations
0028 class TGFrame;
0029 class TGLEmbeddedViewer;
0030 class TGCompositeFrame;
0031 class TGComboBox;
0032 class TEvePad;
0033 class TEveViewer;
0034 class TEveScene;
0035 class TEveElementList;
0036 class TEveGeoShape;
0037 class TGLMatrix;
0038 class TGTextEntry;
0039 class FWEventItem;
0040 class FWTableViewManager;
0041 class FWTableWidget;
0042 class TEveWindowFrame;
0043 class TEveWindowSlot;
0044 class FWTableViewManager;
0045 class FWTableViewTableManager;
0046 class FWCustomIconsButton;
0047 class FWGUIValidatingTextEntry;
0048 class FWExpressionValidator;
0049 
0050 class FWTableView : public FWViewBase {
0051   friend class FWTableViewTableManager;
0052 
0053 public:
0054   FWTableView(TEveWindowSlot *, FWTableViewManager *);
0055   ~FWTableView() override;
0056 
0057   // ---------- const member functions ---------------------
0058   void addTo(FWConfiguration &) const override;
0059 
0060   void saveImageTo(const std::string &iName) const override;
0061 
0062   // ---------- static member functions --------------------
0063 
0064   // ---------- member functions ---------------------------
0065   void setFrom(const FWConfiguration &) override;
0066   void setBackgroundColor(Color_t);
0067   void resetColors(const class FWColorManager &);
0068   void updateItems();
0069   void updateEvaluators();
0070   void selectCollection(Int_t);
0071   void dataChanged();
0072   const FWEventItem *item() const;
0073   void modelSelected(Int_t iRow, Int_t iButton, Int_t iKeyMod, Int_t, Int_t);
0074   void columnSelected(Int_t iCol, Int_t iButton, Int_t iKeyMod);
0075   void toggleShowHide();
0076   void addColumn();
0077   void deleteColumn();
0078   void modifyColumn();
0079 
0080   FWTableView(const FWTableView &) = delete;                   // stop default
0081   const FWTableView &operator=(const FWTableView &) = delete;  // stop default
0082 
0083 protected:
0084   // ---------- member data --------------------------------
0085   TEveWindowFrame *m_eveWindow;
0086   TGComboBox *m_collection;
0087   TGCompositeFrame *m_vert, *m_column_control;
0088   int m_iColl;
0089   FWTableViewManager *m_manager;
0090   FWTableViewTableManager *m_tableManager;
0091   FWTableWidget *m_tableWidget;
0092   bool m_showColumnUI;
0093   FWCustomIconsButton *m_columnUIButton;
0094   TGTextEntry *m_column_name_field;
0095   FWGUIValidatingTextEntry *m_column_expr_field;
0096   FWExpressionValidator *m_validator;
0097   TGTextEntry *m_column_prec_field;
0098   int m_currentColumn;
0099   bool m_useColumnsFromConfig;
0100 };
0101 
0102 #endif