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 
147 class KVListView : public TGListView {
148 protected:
153 
154 public:
155  KVListView(TClass* obj_class, const TGWindow* p, UInt_t w, UInt_t h,
156  UInt_t options = kSunkenFrame | kDoubleBorder,
158  virtual ~KVListView() {}
159 
160  Bool_t ProcessMessage(Long_t msg, Long_t parm1, Long_t parm2) override;
161  virtual void ActivateSortButtons(); // *MENU*
162  virtual void SetMaxColumnSize(UInt_t width)
163  {
165  }
166  virtual void SetDataColumns(Int_t ncolumns);
167  virtual void SetDataColumn(Int_t index, const Char_t* name, const Char_t* method = "",
168  Int_t mode = kTextCenterX);
169  virtual KVLVColumnData* GetDataColumn(Int_t index) const
170  {
171  return ((KVLVContainer*)GetContainer())->GetDataColumn(index);
172  }
173 
174  virtual void Display(const TCollection* l)
175  {
179  ((KVLVContainer*)GetContainer())->Display(l); // *MENU*
180  }
181  virtual void Sort(Int_t column)
182  {
184  ((KVLVContainer*)GetContainer())->Sort(column);
185  }
186  virtual void SelectAll()
187  {
189  }
190  virtual void UnSelectAll()
191  {
193  }
194  virtual void RemoveAll()
195  {
197  }
198  virtual Int_t GetColumnNumber(const Char_t* colname);
199  TGLVEntry* FindItemWithData(void* userData)
200  {
201  return ((KVLVContainer*)GetContainer())->FindItemWithData(userData);
202  }
203  void ActivateItemWithData(void* userData, Bool_t activate = kTRUE)
204  {
205  ((KVLVContainer*)GetContainer())->ActivateItemWithData(userData, activate);
206  }
207  TGLVEntry* FindItemWithColumnData(const Char_t* colname, const Char_t* data)
208  {
209  return ((KVLVContainer*)GetContainer())->FindItemWithColumnData(colname, data);
210  }
212  {
213  return ((KVLVContainer*)GetContainer())->FindItemWithColumnData(colname, data);
214  }
216  {
217  return ((KVLVContainer*)GetContainer())->FindItemWithColumnData(colname, data);
218  }
219  void ActivateItemWithColumnData(const Char_t* colname, const Char_t* data, Bool_t activate = kTRUE)
220  {
221  ((KVLVContainer*)GetContainer())->ActivateItemWithColumnData(colname, data, activate);
222  }
223  void ActivateItemWithColumnData(const Char_t* colname, Long_t data, Bool_t activate = kTRUE)
224  {
225  ((KVLVContainer*)GetContainer())->ActivateItemWithColumnData(colname, data, activate);
226  }
227  void ActivateItemWithColumnData(const Char_t* colname, Double_t data, Bool_t activate = kTRUE)
228  {
229  ((KVLVContainer*)GetContainer())->ActivateItemWithColumnData(colname, data, activate);
230  }
231  void ActivateItemsWithColumnData(const Char_t* colname, const KVNumberList& data, Bool_t activate = kTRUE)
232  {
233  ((KVLVContainer*)GetContainer())->ActivateItemsWithColumnData(colname, data, activate);
234  }
235  void ActivateItemsWithColumnData(const Char_t* colname, const run_index_list& data, Bool_t activate = kTRUE)
236  {
237  ((KVLVContainer*)GetContainer())->ActivateItemsWithColumnData(colname, data, activate);
238  }
240  {
241  return ((KVLVContainer*)GetContainer())->GetLastSelectedObject();
242  }
244  {
245  return ((KVLVContainer*)GetContainer())->GetLastSelectedItem();
246  }
248  {
250 
251  return ((KVLVContainer*)GetContainer())->GetSelectedItems();
252  }
254  {
256 
257  return ((KVLVContainer*)GetContainer())->GetSelectedObjects();
258  }
260  {
264  return ((KVLVContainer*)GetContainer())->GetPickOrderedSelectedObjects();
265  }
267  {
269  return ((KVLVContainer*)GetContainer())->GetUserItems();
270  }
272  {
274  return ((KVLVContainer*)GetContainer())->GetFirstInList();
275  }
277  {
279  return ((KVLVContainer*)GetContainer())->GetLastInList();
280  }
281  void AllowDoubleClick(Bool_t on = kTRUE)
282  {
285  }
286  void SetDoubleClickAction(const char* receiver_class, void* receiver, const char* slot);
287  void AllowBrowse(Bool_t on = kTRUE)
288  {
291  }
292  void AllowContextMenu(Bool_t on = kTRUE)
293  {
296  }
298  void SetDefaultColumnWidth(TGVFileSplitter* splitter) override;
299 
300  void AllowMultipleSelection(Bool_t yes = kTRUE)
301  {
302  ((TGLVContainer*)GetContainer())->SetMultipleSelection(yes);
303  }
305  {
306  return ((TGLVContainer*)GetContainer())->GetMultipleSelection();
307  }
308 
309  void SetUseObjLabelAsRealClass(Bool_t yes = kTRUE);
310 
312  {
313  return fObjClass;
314  };
315  void SetObjClass(TClass* cl)
316  {
317  fObjClass = cl;
319  }
320 
321  ClassDefOverride(KVListView, 0) //Slightly modified TGListView
322 };
323 
324 #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:147
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:259
virtual void SelectAll()
Definition: KVListView.h:186
virtual void SetDataColumns(Int_t ncolumns)
Definition: KVListView.cpp:91
virtual void Sort(Int_t column)
Definition: KVListView.h:181
void SetDoubleClickAction(const char *receiver_class, void *receiver, const char *slot)
Definition: KVListView.cpp:210
TObject * GetLastInList() const
Definition: KVListView.h:276
void ActivateItemWithColumnData(const Char_t *colname, Long_t data, Bool_t activate=kTRUE)
Definition: KVListView.h:223
void AllowBrowse(Bool_t on=kTRUE)
Definition: KVListView.h:287
virtual void UnSelectAll()
Definition: KVListView.h:190
virtual KVLVColumnData * GetDataColumn(Int_t index) const
Definition: KVListView.h:169
void ActivateItemsWithColumnData(const Char_t *colname, const KVNumberList &data, Bool_t activate=kTRUE)
Definition: KVListView.h:231
virtual void Display(const TCollection *l)
Definition: KVListView.h:174
virtual ~KVListView()
Definition: KVListView.h:158
void SetObjClass(TClass *cl)
Definition: KVListView.h:315
KVUnownedList GetSelectedObjects() const
Definition: KVListView.h:253
virtual void SetMaxColumnSize(UInt_t width)
Definition: KVListView.h:162
TObject * GetLastSelectedObject() const
Definition: KVListView.h:239
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:199
TCollection * GetUserItems()
Definition: KVListView.h:266
void ActivateItemWithColumnData(const Char_t *colname, Double_t data, Bool_t activate=kTRUE)
Definition: KVListView.h:227
UInt_t fMaxColumnSize
maximum width of columns
Definition: KVListView.h:151
void AddContextMenuClassException(TClass *)
Definition: KVListView.cpp:235
TGLVEntry * FindItemWithColumnData(const Char_t *colname, Long_t data)
Definition: KVListView.h:211
virtual Int_t GetColumnNumber(const Char_t *colname)
Definition: KVListView.cpp:124
TGLVEntry * GetLastSelectedItem() const
Definition: KVListView.h:243
int nselected
number of selected items
Definition: KVListView.h:149
void ActivateItemWithColumnData(const Char_t *colname, const Char_t *data, Bool_t activate=kTRUE)
Definition: KVListView.h:219
TClass * GetObjClass() const
Definition: KVListView.h:311
TClass * fObjClass
class of objects in list
Definition: KVListView.h:150
TObject * GetFirstInList() const
Definition: KVListView.h:271
virtual void RemoveAll()
Definition: KVListView.h:194
TGLVEntry * FindItemWithColumnData(const Char_t *colname, Double_t data)
Definition: KVListView.h:215
TContextMenu * fContextMenu
Definition: KVListView.h:152
void AllowMultipleSelection(Bool_t yes=kTRUE)
Definition: KVListView.h:300
void AllowDoubleClick(Bool_t on=kTRUE)
Definition: KVListView.h:281
void AllowContextMenu(Bool_t on=kTRUE)
Definition: KVListView.h:292
KVUnownedList GetSelectedItems() const
Definition: KVListView.h:247
void ActivateItemsWithColumnData(const Char_t *colname, const run_index_list &data, Bool_t activate=kTRUE)
Definition: KVListView.h:235
Bool_t GetMultipleSelection() const
Definition: KVListView.h:304
void SetDefaultColumnWidth(TGVFileSplitter *splitter) override
Definition: KVListView.cpp:145
TGLVEntry * FindItemWithColumnData(const Char_t *colname, const Char_t *data)
Definition: KVListView.h:207
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:203
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:20
TGFrame * GetContainer() const
static Pixel_t GetDefaultFrameBackground()
List of runfiles specified by run number and file index ,.
TLine l