Re: [ROOT] Users Guide 3.05 - GUI deletion ?

From: cstrato (aon.912121399@aon.at)
Date: Sat Jul 19 2003 - 20:20:46 MEST


Dear Valeriy

I understand, but then you have to call always:
   fFrame->Cleanup();
   delete fFrame;
and you are not allowed to use shared layouts.

I think, that your proposed new method would be the most elegant solution.

Best regards
Christian

Valeriy Onuchin wrote:

> Hi Christian,
>sorry, I was  not correct. All layout hints and frames are 
>deleted with http://root.cern.ch/root/htmldoc/TGCompositeFrame.html#TGCompositeFrame:Cleanup
>method, not in destructor. I will look at the problem of possible memory leak.
>I think adding "reference counting" would help here.
> 
>  
>
>>Dear Valeriy
>>
>>Thank you, too, for your fast reply.
>>Nevertheless I am confused, since the link that you mention says:
>>"Most of the time, however, you will want to provide specific hints.
>>User specified hints can be reused many times and need to be
>>destroyed by the user."
>>
>>Usually, I do the following:
>>   fFExpV1 = new TGCompositeFrame(fFTExp, 20, 20, kVerticalFrame);
>>   hint = new TGLayoutHints(kLHintsLeft, 1, 2,  0, 2);
>>   fFTExp->AddFrame(fFExpV1, hint);
>>   fTrash->Add(hint);
>>Is this correct? Is it necessary?
>>    
>>
>
>It is correct and necessary.
>
>Thanks. Regards. Valeriy
>
>  
>
>>Best regards
>>Christian
>>
>>Valeriy Onuchin wrote:
>>
>>    
>>
>>>Hi Christian,
>>>hframe->AddFrame(draw, new TGLayoutHints(..) -  is correct.
>>>TGLayoutHints object will be deleted automatically (as well as "draw" object)
>>>when TGCompositeFrame is deleted,  as it is explained in
>>>http://root.cern.ch/root/htmldoc/TGCompositeFrame.html#TGCompositeFrame:AddFrame
>>>
>>>I think it's worth to add new method  (be done asap)
>>>TGCompositeFrame::AddFrame(TGFrame *f, ULong_t hints = kLHintsNormal,
>>>                                                                       Int_t padleft = 0, Int_t
>>>padright = 0,
>>>                                                                       Int_t padtop = 0, Int_t
>>>padbottom = 0)
>>>which will help to eliminate this uncertanty.
>>>
>>>Regards. Valeriy
>>>
>>>      > Hi Christian,
>>> 
>>>
>>>      
>>>
>>>>Ilka will fix the problem in the doc as soon as she will be back from
>>>>holidays.
>>>>
>>>>Valeriy, could you answer about the memory leak?
>>>>
>>>>Rene
>>>>
>>>>On Sat, 19 Jul 2003,
>>>>cstrato wrote:
>>>>
>>>>   
>>>>
>>>>        
>>>>
>>>>>Dear Rooters
>>>>>
>>>>>I appreciate the new GUI chapter in the User Guide, too, thank you.
>>>>>The only thing I am missing is some note about GUI deletion, i.e.
>>>>>how to delete the GUI objects correctly. It would be great, if this
>>>>>could be handled, too.
>>>>>
>>>>>BTW, as far as I understand, some demo code is not correct with
>>>>>respect to deletion of GUI classes, e.g.
>>>>>hframe->AddFrame(draw, new TGLayoutHints(..));
>>>>>In this example, TGLayoutHints will never be deleted?
>>>>>
>>>>>Best regards
>>>>>Christian
>>>>>_._._._._._._._._._._._._._._._
>>>>>C.h.i.s.t.i.a.n S.t.r.a.t.o.w.a
>>>>>V.i.e.n.n.a       A.u.s.t.r.i.a
>>>>>_._._._._._._._._._._._._._._._
>>>>>
>>>>>Frankland John wrote:
>>>>>
>>>>>     
>>>>>
>>>>>          
>>>>>
>>>>>>Hello everybody
>>>>>>
>>>>>>I've just finished reading the long-awaited chapter on GUI creation
>>>>>>in the new Users' Manual, this is going to be a great help! Thankyou!
>>>>>>
>>>>>>However, with as much expectation I turned to the new chapter on the
>>>>>>geometry
>>>>>>package and what a disappointment! No explanation whatsoever. I have been
>>>>>>wanting to interface my detector description classes with the TGeometry
>>>>>>classes for a long time, in order to visualise, do tracking etc., but
>>>>>>the existing
>>>>>>HTML doc & example programmes are just incomprehensible to me.
>>>>>>
>>>>>>Any chance of a real (and real SIMPLE) manual in the near future ?
>>>>>>
>>>>>>Thanks a lot
>>>>>>John
>>>>>>
>>>>>>PS. my message about using TClonesArray::ExpandCreate
>>>>>>( http://root.cern.ch/root/roottalk/roottalk03/2705.html ) didn't
>>>>>>provoke any reaction -
>>>>>>is this because noone received it ?
>>>>>>--
>>>>>>
>>>>>>ganil logo <http://www.ganil.fr>
>>>>>>John D. Frankland <mailto:frankland@ganil.fr>
>>>>>>Beam Coordinator
>>>>>>GANIL
>>>>>>B.P. 55027
>>>>>>14076 CAEN Cedex 05
>>>>>>
>>>>>>tel: +33 (0)231454628
>>>>>>fax: +33 (0)231454665
>>>>>>
>>>>>>
>>>>>>
>>>>>>       
>>>>>>
>>>>>>            
>>>>>>
>>>>>               
>>>>>
>>>>           
>>>>
>>>
>>>       
>>>
>>
>>    
>>
>
>
>
>  
>



This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:13 MET