On Sat, Nov 15, 2008 at 12:17 PM, Dave Thompson <[EMAIL PROTECTED]> wrote:
> Ok, I have been working on a change to make sure all child Figs within a > FigEdgeModelElement have the same Layer as the parent fig. My change is a > List (figList) of all child figs within FigEdgeModelElement which is > iterated when setLayer() is called. Surely GEF has a list of contained figures already. Why not just use that? Storing the same information in two places guarantees that one of them will be wrong. Probably what we need to do is override addPathItem() to complement my changes to FigEdgeModelElement.setLayer() for Figs which are added after the setLayer has already been done at construction time. > The only negative impact is that you have to remember to add any new Figs to > this list when modifying the constructor on FigEdgeModelElement or any of > it's descendants. Another good reason to introduce the behavior change by overriding the existing methods. > It seems that 'layer-less' figs are still draggable, it's just that they > don't update on the screen while being dragged - only when you release the > mouse button. It's worse than that. They don't get included correctly in calculations for screen refreshes. This means that in addition to not getting refreshed on the screen, they also won't get rendered correctly by the band buffer renderer used by Export to PNG. The fact that the screen gets refreshed correctly when you stop dragging probably means that the entire screen is being forcibly refreshed -- a bad habit that covers up refresh problems like this. Tom --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
