Hi rooters probably not quite advanced question. I am trying to write small macro where I want to use lines defined by mouse in graphic window ( canvas ). In the interactive session it looks like this ( with 2-dim histogram drawn in canvas ). root [81] gROOT->SetEditorMode("PolyLine") root [82] TGraph *lintst = (TGraph*) gPad->GetPrimitive("Graph") root [83] lintst->SetName("lintst") now I extract the x,y - coordinates of points and can use them further. I made straightforward attempt to use the same sequence of commands in a macro: { gROOT->SetEditorMode("PolyLine"); TGraph *lintst = (TGraph*) gPad->GetPrimitive("Graph"); lintst->SetName("lintst"); lintst->Print(); } as a result I can not define polyline before finishing the macro, which, logically, gives error. root [80] .x test.C Error: illegal pointer to class object lintst 0x0 178 FILE:/home/martin/devel/nimrod/trun2009/test/./test.C LINE:8 *** Interpreter error recovered *** after this, I can define polyline in the graphics window. my questions is following, is there some easy way to force interpreter to wait for the mouse input ? I tried to use confirmation from keyboard to prevent macro proceed further but it does not work. When searching roottalk archives I found good deal of stuff describing mouse input using ExecuteEvent method but I am not sure if this is of some help in the present case. Any idea or even examples ? with best regards martin
This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:43:40 MET