CMS 3D CMS Logo

FWTableViewTableManager.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 #ifndef Fireworks_Core_FWTableViewTableManager_h
3 #define Fireworks_Core_FWTableViewTableManager_h
4 //
5 // Package: Core
6 // Class : FWTableViewTableManager
7 //
11 //
12 // Original Author:
13 // Created: Mon Feb 2 16:40:52 EST 2009
14 //
15 
16 // system include files
17 #include <vector>
18 #include <string>
19 #include "TQObject.h"
20 #include "GuiTypes.h"
21 
22 // user include files
27 
28 // forward declarations
29 class FWTableView;
31 
33  friend class FWTableView;
34 public:
36  ~FWTableViewTableManager() override;
37 
38  // ---------- const member functions ---------------------
40  int numberOfRows() const override;
42  int numberOfColumns() const override;
43 
45  std::vector<std::string> getTitles() const override;
46 
49  int unsortedRowNumber(int iSortedRowNumber) const override;
50 
58  FWTableCellRendererBase* cellRenderer(int iSortedRowNumber, int iCol) const override;
59 
61  // virtual unsigned int cellHeight() const;
62 
64  // virtual std::vector<unsigned int> maxWidthForColumns() const;
65 
67  bool hasRowHeaders() const override ;
69  FWTableCellRendererBase* rowHeader(int iSortedRowNumber) const override ;
70 
72  //virtual void buttonPressedInRowHeader(Int_t row, Event_t* event, Int_t relX, Int_t relY);
73  //virtual void buttonReleasedInRowHeader(Int_t row, Event_t* event, Int_t relX, Int_t relY);
74 
75  // ---------- static member functions --------------------
76 
77  // ---------- member functions ---------------------------
80  // void sort(int iCol, bool iSortOrder);
81 
84  void dataChanged(); //*SIGNAL*
85 
88  // void visualPropertiesChanged(); //*SIGNAL*
89 
90  // ClassDef(FWTableViewTableManager,0);
91  void updateEvaluators ();
92 
93 protected:
96  void implSort(int iCol, bool iSortOrder) override;
97  std::vector<int> m_sortedToUnsortedIndices;
98 
103 
107 
108  std::vector<FWExpressionEvaluator> m_evaluators;
109  std::vector<FWTableViewManager::TableEntry> *m_tableFormats;
110 
111  // ---------- member data --------------------------------
112  // int m_sortColumn;
113  // bool m_sortOrder;
115 
116 private:
117  FWTableViewTableManager(const FWTableViewTableManager&) = delete; // stop default
118  const FWTableViewTableManager& operator=(const FWTableViewTableManager&) = delete; // stop default
119 };
120 
121 
122 #endif
FWTableViewTableManager(const FWTableView *)
void dataChanged()
Called if mouse button pressed in Row Header, defaults is to do nothing.
FWFramedTextTableCellRenderer * m_rowRenderer
std::vector< int > m_sortedToUnsortedIndices
int numberOfColumns() const override
Number of columns in the table.
int unsortedRowNumber(int iSortedRowNumber) const override
std::vector< std::string > getTitles() const override
returns the title names for each column
std::vector< FWTableViewManager::TableEntry > * m_tableFormats
FWTableCellRendererBase * rowHeader(int iSortedRowNumber) const override
Returns the renderer for the row header for the sorted row number iSortedRowNumber.
std::vector< FWExpressionEvaluator > m_evaluators
void implSort(int iCol, bool iSortOrder) override
FWTextTableCellRenderer * m_renderer
int numberOfRows() const override
Number of rows in the table.
const FWTableViewTableManager & operator=(const FWTableViewTableManager &)=delete
FWTableCellRendererBase * cellRenderer(int iSortedRowNumber, int iCol) const override
bool hasRowHeaders() const override
require all cells to be the same height