void build_beam(TGMainFrame *fBeam) { TGHorizontalFrame **rows,**range; TGVerticalFrame **col; TRootEmbeddedCanvas **emb_can; rows = new TGHorizontalFrame*[4]; range = new TGHorizontalFrame*[8]; col = new TGVerticalFrame*[8]; emb_can = new TRootEmbeddedCanvas*[8]; CanvasName = new TGLabel*[8]; //Already declared globaly Canvaspntr = new TCanvas*[8]; //" RangeMin = new TGTextEntry*[8]; //" RangeMax = new TGTextEntry*[8]; //" memset(rows, 0, sizeof(TGHorizontalFrame*)*4); memset(range, 0, sizeof(TGHorizontalFrame*)*8); memset(col, 0, sizeof(TGVerticalFrame*)*8); memset(emb_can, 0, sizeof(TRootEmbeddedCanvas*)*8); memset(CanvasName, 0, sizeof(TGLabel*)*8); memset(Canvaspntr, 0, sizeof(TCanvas*)*8); memset(RangeMin, 0, sizeof(TGTextEntry*)*8); memset(RangeMax, 0, sizeof(TGTextEntry*)*8); Int_t k; Char_t buf1[50]; for(Int_t i=0;i<4;i++) { rows[i] = new TGHorizontalFrame(fBeam,100,100); for(Int_t j=0;j<2;j++) { k=i*(i+1)-i*(i-1)+j; col[k] = new TGVerticalFrame(rows[i],100,100); sprintf(buf1,"Canvas %i ",k); CanvasName[k] = new TGLabel(col[k],buf1); col[k]->AddFrame(CanvasName[k],new TGLayoutHints(kLHintsCenterX,2,2,2,2)); emb_can[k] = new TRootEmbeddedCanvas(buf1,col[k],100,100); col[k]->AddFrame(emb_can[k],new TGLayoutHints(kLHintsExpandX | kLHintsExpandY,2,2,2,2)); Canvaspntr[k]=emb_can[k]->GetCanvas(); range[k] = new TGHorizontalFrame(col[k],100,100); range[k]->AddFrame(new TGLabel(range[k],"Fit Min"), new TGLayoutHints(kLHintsCenterX,2,2,2,2)); RangeMin[k] = new TGTextEntry(range[k],"0"); RangeMin[k]->SetWidth(50); range[k]->AddFrame(RangeMin[k], new TGLayoutHints(kLHintsCenterX,2,2,2,2)); range[k]->AddFrame(new TGLabel(range[k],"Fit Max"), new TGLayoutHints(kLHintsCenterX,40,2,2,2)); RangeMax[k] = new TGTextEntry(range[k],"4000"); RangeMax[k]->SetWidth(50); range[k]->AddFrame(RangeMax[k], new TGLayoutHints(kLHintsCenterX,2,2,2,2)); col[k]->AddFrame(range[k], new TGLayoutHints(kLHintsCenterX,2,2,2,2)); } rows[i]->AddFrame(col[k-1], new TGLayoutHints(kLHintsExpandX | kLHintsExpandY,1,1,1,1)); rows[i]->AddFrame(col[k], new TGLayoutHints(kLHintsExpandX | kLHintsExpandY,1,1,1,1)); fBeam->AddFrame(rows[i], new TGLayoutHints(kLHintsExpandX | kLHintsExpandY,1,1,1,1)); } fBeam->SetWindowName("Beams"); fBeam->MapSubwindows(); fBeam->MapWindow(); }