Hi Jan Erik, I do not know in which way you call your function. In attachement see a script using your code that produces what you expect. Rene Brun On Mon, 12 May 2003, Jan Erik Sundermann wrote: > Hello, > > I've problems executing the following script: > > >------- > > #include "TCanvas.h" > #include "TString.h" > > > void > writePadsToPs(TCanvas* canvas, char* filename, int nbPadLow = 1, int nbPadHigh > = 1) { > > for (int index = nbPadLow; index <= nbPadHigh; index++) { > > canvas->cd(index); > TPad* thispad = (TPad*) gPad; > TCanvas *tempcanvas = new TCanvas(); > tempcanvas->cd(); > TPad *clonepad = (TPad*) thispad->DrawClone(); > clonepad->SetPad(0,0,1,1); > TString tempfilename(filename); > if (index == nbPadLow) > tempfilename += "("; > if (index == nbPadHigh) > tempfilename += ")"; > tempcanvas->SaveAs(tempfilename); > delete tempcanvas; > > } > } > > ---------< > > When using the above code on the attached canvas the DrawClone does not write > to the temporary canvas but to the original canvas. The same code works when > executed line by line on the interpreter prompt. > > I'm using root version 3.05/03 on RedHat 7.3. > > > Best regards, > > Jan Erik.
This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:11 MET