Review Request: Ensure that LayoutItem::setParent resets the parents layout if we are currently its layout and release managed items.

Aaron Seigo aseigo at kde.org
Fri Feb 8 18:25:26 CET 2008



> On 2008-02-08 04:55:22, Chani Armitage wrote:
> > /trunk/KDE/kdebase/workspace/libs/plasma/layouts/layout.cpp, line 82
> > <http://matt.rogers.name/r/89/diff/2/#file215line82>
> >
> >     I don't entirely understand why we're doing this here.

so that the children don't get a dangling pointer.


> On 2008-02-08 04:55:22, Chani Armitage wrote:
> > /trunk/KDE/kdebase/workspace/libs/plasma/layouts/borderlayout.cpp, line 120
> > <http://matt.rogers.name/r/89/diff/2/#file207line120>
> >
> >     it's a shame we need a function for this in *every* layout class

agreed; but the layouts are the ones that know about children, not LayoutItem. annoying, uncomfortable, yadda, yadda.. oh well. =)


- Aaron


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://matt.rogers.name/r/89/#review82
-----------------------------------------------------------


On 2008-02-06 21:18:16, Aaron Seigo wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://matt.rogers.name/r/89/
> -----------------------------------------------------------
> 
> (Updated 2008-02-06 21:18:16)
> 
> 
> Review request for Plasma.
> 
> 
> Summary
> -------
> 
> This is just more safety stuff, not sure it really has any practical uses at this point. Reseting the parent of a Layout still doesn't auto-add the children of it, but since both the children are known only to the Widget and the method of adding them varies between layouts ..... i don't see a nice generic solution for this yet.
> 
> Note that this also a BIC change =/ 
> 
> 
> Diffs
> -----
> 
>   /trunk/KDE/kdebase/workspace/libs/plasma/layouts/borderlayout.h
>   /trunk/KDE/kdebase/workspace/libs/plasma/layouts/borderlayout.cpp
>   /trunk/KDE/kdebase/workspace/libs/plasma/layouts/boxlayout.h
>   /trunk/KDE/kdebase/workspace/libs/plasma/layouts/boxlayout.cpp
>   /trunk/KDE/kdebase/workspace/libs/plasma/layouts/flowlayout.h
>   /trunk/KDE/kdebase/workspace/libs/plasma/layouts/flowlayout.cpp
>   /trunk/KDE/kdebase/workspace/libs/plasma/layouts/freelayout.h
>   /trunk/KDE/kdebase/workspace/libs/plasma/layouts/freelayout.cpp
>   /trunk/KDE/kdebase/workspace/libs/plasma/layouts/layout.h
>   /trunk/KDE/kdebase/workspace/libs/plasma/layouts/layout.cpp
>   /trunk/KDE/kdebase/workspace/libs/plasma/layouts/nodelayout.h
>   /trunk/KDE/kdebase/workspace/libs/plasma/layouts/nodelayout.cpp
> 
> Diff: http://matt.rogers.name/r/89/diff
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Aaron
> 
>



More information about the Panel-devel mailing list