209c209 < fListener = FigureChangeEventMulticaster.add(fListener, l); --- > fListener = FigureChangeEventMulticaster.add(listener(), l); 216c216 < fListener = FigureChangeEventMulticaster.remove(fListener, l); --- > fListener = FigureChangeEventMulticaster.remove(listener(), l); 232,233c232,233 < if (fListener != null) { < fListener.figureRemoved(new FigureChangeEvent(this)); --- > if (listener() != null) { > listener().figureRemoved(new FigureChangeEvent(this)); 243,246c243,246 < if (fListener != null) { < Rectangle r = displayBox(); < r.grow(Handle.HANDLESIZE, Handle.HANDLESIZE); < fListener.figureInvalidated(new FigureChangeEvent(this, r)); --- > if (listener() != null) { > Rectangle r = invalidateRectangle(displayBox()); > listener().figureInvalidated(new FigureChangeEvent(this, r)); > } 247a248,254 > > /** > * Hook method to change the rectangle that will be invalidated > */ > protected Rectangle invalidateRectangle(Rectangle r) { > r.grow(Handle.HANDLESIZE, Handle.HANDLESIZE); > return r; 268,269c275,276 < if (fListener != null) { < fListener.figureChanged(new FigureChangeEvent(this)); --- > if (listener() != null) { > listener().figureChanged(new FigureChangeEvent(this)); 326,327c333 < * By default < * figures don't have any attributes getAttribute --- > * By default figures don't have any attributes so getAttribute 328a335,336 > * > * @deprecated use getAttribute(FigureAttributeConstant) instead 334a343,352 > * Returns the named attribute or null if a > * a figure doesn't have an attribute. > * By default figures don't have any attributes getAttribute > * returns null. > */ > public Object getAttribute(FigureAttributeConstant attributeConstant) { > return null; > } > > /** 336a355,356 > * > * @deprecated use setAttribute(FigureAttributeConstant, Object) instead 341a362,368 > * Sets the named attribute to the new value. By default > * figures don't have any attributes and the request is ignored. > */ > public void setAttribute(FigureAttributeConstant attributeConstant, Object value) { > } > > /**