KaliVeda
Toolkit for HIC analysis
KVListView.h
1 /*
2 $Id: KVListView.h,v 1.5 2009/04/28 09:11:29 franklan Exp $
3 $Revision: 1.5 $
4 $Date: 2009/04/28 09:11:29 $
5 */
6 
9 
10 #ifndef __KVLISTVIEW_H
11 #define __KVLISTVIEW_H
12 
13 #include "TGListView.h"
14 #include "KVLVContainer.h"
15 #include "KVLVContainer.h"
16 #include "KVNumberList.h"
17 
146 class KVListView : public TGListView {
147 protected:
152 
153 public:
154  KVListView(TClass* obj_class, const TGWindow* p, UInt_t w, UInt_t h,
155  UInt_t options = kSunkenFrame | kDoubleBorder,
157  virtual ~KVListView() {}
158 
159  Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t parm2) override;
160  virtual void ActivateSortButtons(); // *MENU*
161  virtual void SetMaxColumnSize(UInt_t width)
162  {
164  }
165  virtual void SetDataColumns(Int_t ncolumns);
166  virtual void SetDataColumn(Int_t index, const Char_t* name, const Char_t* method = "",
167  Int_t mode = kTextCenterX);
168  virtual KVLVColumnData* GetDataColumn(Int_t index) const
169  {
170  return ((KVLVContainer*)GetContainer())->GetDataColumn(index);
171  }
172 
173  virtual void Display(const TCollection* l)
174  {
178  ((KVLVContainer*)GetContainer())->Display(l); // *MENU*
179  }
180  virtual void Sort(Int_t column)
181  {
183  ((KVLVContainer*)GetContainer())->Sort(column);
184  }
185  virtual void SelectAll()
186  {
188  }
189  virtual void UnSelectAll()
190  {
192  }
193  virtual void RemoveAll()
194  {
196  }
197  virtual Int_t GetColumnNumber(const Char_t* colname);
198  TGLVEntry* FindItemWithData(void* userData)
199  {
200  return ((KVLVContainer*)GetContainer())->FindItemWithData(userData);
201  }
202  void ActivateItemWithData(void* userData, Bool_t activate = kTRUE)
203  {
204  ((KVLVContainer*)GetContainer())->ActivateItemWithData(userData, activate);
205  }
206  TGLVEntry* FindItemWithColumnData(const Char_t* colname, const Char_t* data)
207  {
208  return ((KVLVContainer*)GetContainer())->FindItemWithColumnData(colname, data);
209  }
211  {
212  return ((KVLVContainer*)GetContainer())->FindItemWithColumnData(colname, data);
213  }
215  {
216  return ((KVLVContainer*)GetContainer())->FindItemWithColumnData(colname, data);
217  }
218  void ActivateItemWithColumnData(const Char_t* colname, const Char_t* data, Bool_t activate = kTRUE)
219  {
220  ((KVLVContainer*)GetContainer())->ActivateItemWithColumnData(colname, data, activate);
221  }
222  void ActivateItemWithColumnData(const Char_t* colname, Long_t data, Bool_t activate = kTRUE)
223  {
224  ((KVLVContainer*)GetContainer())->ActivateItemWithColumnData(colname, data, activate);
225  }
226  void ActivateItemWithColumnData(const Char_t* colname, Double_t data, Bool_t activate = kTRUE)
227  {
228  ((KVLVContainer*)GetContainer())->ActivateItemWithColumnData(colname, data, activate);
229  }
230  void ActivateItemsWithColumnData(const Char_t* colname, const KVNumberList& data, Bool_t activate = kTRUE)
231  {
232  ((KVLVContainer*)GetContainer())->ActivateItemsWithColumnData(colname, data, activate);
233  }
234  void ActivateItemsWithColumnData(const Char_t* colname, const run_index_list& data, Bool_t activate = kTRUE)
235  {
236  ((KVLVContainer*)GetContainer())->ActivateItemsWithColumnData(colname, data, activate);
237  }
239  {
240  return ((KVLVContainer*)GetContainer())->GetLastSelectedObject();
241  }
243  {
244  return ((KVLVContainer*)GetContainer())->GetLastSelectedItem();
245  }
247  {
249 
250  return ((KVLVContainer*)GetContainer())->GetSelectedItems();
251  }
253  {
255 
256  return ((KVLVContainer*)GetContainer())->GetSelectedObjects();
257  }
259  {
263  return ((KVLVContainer*)GetContainer())->GetPickOrderedSelectedObjects();
264  }
266  {
268  return ((KVLVContainer*)GetContainer())->GetUserItems();
269  }
271  {
273  return ((KVLVContainer*)GetContainer())->GetFirstInList();
274  }
276  {
278  return ((KVLVContainer*)GetContainer())->GetLastInList();
279  }
280  void AllowDoubleClick(Bool_t on = kTRUE)
281  {
284  }
285  void SetDoubleClickAction(const char* receiver_class, void* receiver, const char* slot);
286  void AllowBrowse(Bool_t on = kTRUE)
287  {
290  }
291  void AllowContextMenu(Bool_t on = kTRUE)
292  {
295  }
297  void SetDefaultColumnWidth(TGVFileSplitter* splitter) override;
298 
299  void AllowMultipleSelection(Bool_t yes = kTRUE)
300  {
301  ((TGLVContainer*)GetContainer())->SetMultipleSelection(yes);
302  }
304  {
305  return ((TGLVContainer*)GetContainer())->GetMultipleSelection();
306  }
307 
308  void SetUseObjLabelAsRealClass(Bool_t yes = kTRUE);
309 
311  {
312  return fObjClass;
313  };
314  void SetObjClass(TClass* cl)
315  {
316  fObjClass = cl;
318  }
319 
320  ClassDefOverride(KVListView, 0) //Slightly modified TGListView
321 };
322 
323 #endif
int Int_t
unsigned int UInt_t
long Long_t
ULong_t Pixel_t
bool Bool_t
char Char_t
double Double_t
#define ClassDefOverride(name, id)
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void data
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t index
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void on
Option_t Option_t width
Utility class describing the data used to fill each column of the list view container.
Definition: KVLVContainer.h:35
Extension of TGLVContainer for KVListView widget.
Enhanced version of ROOT TGListView widget.
Definition: KVListView.h:146
Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t parm2) override
Handle messages generated by the list view container.
Definition: KVListView.cpp:47
virtual void ActivateSortButtons()
Definition: KVListView.cpp:72
KVSeqCollection * GetPickOrderedSelectedObjects() const
Definition: KVListView.h:258
virtual void SelectAll()
Definition: KVListView.h:185
virtual void SetDataColumns(Int_t ncolumns)
Definition: KVListView.cpp:91
virtual void Sort(Int_t column)
Definition: KVListView.h:180
void SetDoubleClickAction(const char *receiver_class, void *receiver, const char *slot)
Definition: KVListView.cpp:210
TObject * GetLastInList() const
Definition: KVListView.h:275
void ActivateItemWithColumnData(const Char_t *colname, Long_t data, Bool_t activate=kTRUE)
Definition: KVListView.h:222
void AllowBrowse(Bool_t on=kTRUE)
Definition: KVListView.h:286
virtual void UnSelectAll()
Definition: KVListView.h:189
virtual KVLVColumnData * GetDataColumn(Int_t index) const
Definition: KVListView.h:168
void ActivateItemsWithColumnData(const Char_t *colname, const KVNumberList &data, Bool_t activate=kTRUE)
Definition: KVListView.h:230
virtual void Display(const TCollection *l)
Definition: KVListView.h:173
virtual ~KVListView()
Definition: KVListView.h:157
void SetObjClass(TClass *cl)
Definition: KVListView.h:314
KVUnownedList GetSelectedObjects() const
Definition: KVListView.h:252
virtual void SetMaxColumnSize(UInt_t width)
Definition: KVListView.h:161
TObject * GetLastSelectedObject() const
Definition: KVListView.h:238
KVListView(TClass *obj_class, const TGWindow *p, UInt_t w, UInt_t h, UInt_t options=kSunkenFrame|kDoubleBorder, Pixel_t back=GetDefaultFrameBackground())
Definition: KVListView.cpp:24
TGLVEntry * FindItemWithData(void *userData)
Definition: KVListView.h:198
TCollection * GetUserItems()
Definition: KVListView.h:265
void ActivateItemWithColumnData(const Char_t *colname, Double_t data, Bool_t activate=kTRUE)
Definition: KVListView.h:226
UInt_t fMaxColumnSize
maximum width of columns
Definition: KVListView.h:150
void AddContextMenuClassException(TClass *)
Definition: KVListView.cpp:235
TGLVEntry * FindItemWithColumnData(const Char_t *colname, Long_t data)
Definition: KVListView.h:210
virtual Int_t GetColumnNumber(const Char_t *colname)
Definition: KVListView.cpp:124
TGLVEntry * GetLastSelectedItem() const
Definition: KVListView.h:242
int nselected
number of selected items
Definition: KVListView.h:148
void ActivateItemWithColumnData(const Char_t *colname, const Char_t *data, Bool_t activate=kTRUE)
Definition: KVListView.h:218
TClass * GetObjClass() const
Definition: KVListView.h:310
TClass * fObjClass
class of objects in list
Definition: KVListView.h:149
TObject * GetFirstInList() const
Definition: KVListView.h:270
virtual void RemoveAll()
Definition: KVListView.h:193
TGLVEntry * FindItemWithColumnData(const Char_t *colname, Double_t data)
Definition: KVListView.h:214
TContextMenu * fContextMenu
Definition: KVListView.h:151
void AllowMultipleSelection(Bool_t yes=kTRUE)
Definition: KVListView.h:299
void AllowDoubleClick(Bool_t on=kTRUE)
Definition: KVListView.h:280
void AllowContextMenu(Bool_t on=kTRUE)
Definition: KVListView.h:291
KVUnownedList GetSelectedItems() const
Definition: KVListView.h:246
void ActivateItemsWithColumnData(const Char_t *colname, const run_index_list &data, Bool_t activate=kTRUE)
Definition: KVListView.h:234
Bool_t GetMultipleSelection() const
Definition: KVListView.h:303
void SetDefaultColumnWidth(TGVFileSplitter *splitter) override
Definition: KVListView.cpp:145
TGLVEntry * FindItemWithColumnData(const Char_t *colname, const Char_t *data)
Definition: KVListView.h:206
virtual void SetDataColumn(Int_t index, const Char_t *name, const Char_t *method="", Int_t mode=kTextCenterX)
Definition: KVListView.cpp:106
void ActivateItemWithData(void *userData, Bool_t activate=kTRUE)
Definition: KVListView.h:202
void SetUseObjLabelAsRealClass(Bool_t yes=kTRUE)
Definition: KVListView.cpp:189
Strings used to represent a set of ranges of values.
Definition: KVNumberList.h:85
KaliVeda extensions to ROOT collection classes.
Extended TList class which does not own its objects by default.
Definition: KVUnownedList.h:21
TGFrame * GetContainer() const
static Pixel_t GetDefaultFrameBackground()
List of runfiles specified by run number and file index ,.
TLine l