33 Int_t GetUnID(
void) {
return ++nID ; }
36 class TableTest :
public TGMainFrame {
41 UInt_t fNTableColumns;
42 TGTreeTable *fTreeTable;
46 TableTest(
const TGWindow *p, UInt_t ntrows, UInt_t ntcols,
47 UInt_t w = 100, UInt_t h = 100);
48 virtual ~TableTest() ;
52 TGTreeTable *GetTable() {
return fTreeTable; }
54 ClassDef(TableTest, 0)
57 TableTest::TableTest(
const TGWindow *p, UInt_t ntrows, UInt_t ntcols,
59 : TGMainFrame(p, w, h), fNTableRows(ntrows), fNTableColumns(ntcols),
62 SetCleanup(kDeepCleanup) ;
63 Connect(
"CloseWindow()",
"TableTest",
this,
"DoExit()") ;
67 fFile =
new TFile(
"cernstaff.root");
69 if (!fFile || fFile->IsZombie()) {
70 printf(
"Please run <ROOT location>/tutorials/tree/cernbuild.C first.");
75 TTree *tree = (TTree *)fFile->Get(
"T");
79 TString varexp =
"px:py:pz:random:sin(px):log(px/py):log(pz)";
80 TString select =
"px>0 && py>0 && pz>0";
84 fTreeTable =
new TGTreeTable(
this, fIDs.GetUnID(), tree);
85 AddFrame(fTreeTable,
new TGLayoutHints(kLHintsExpandX | kLHintsExpandY));
88 SetWindowName(
"TGTreeTable Test") ;
91 Resize(GetDefaultWidth()+20, 600) ;
96 TableTest::~TableTest()
103 void TableTest::DoExit()
114 TGTreeTable *gtreeTableTest(UInt_t ntrows = 50, UInt_t ntcols = 10) {
115 TableTest *test =
new TableTest(0, ntrows, ntcols, 500, 200);
116 return test->GetTable();