43,43c43,43 < private Figure fComponent; --- > private Figure myDecoratedFigure; 94a95,95 > setDecoratedFigure(figure); 95,95d94 < fComponent = figure; 96,96c96,96 < fComponent.addToContainer(this); --- > getDecoratedFigure().addToContainer(this); 97,97c97,97 < addDependendFigure(fComponent); --- > //addDependendFigure(getDecoratedFigure()); 108a109,112 > public void setDecoratedFigure(Figure newDecoratedFigure) { > myDecoratedFigure = newDecoratedFigure; > } > 110,110c114,114 < return fComponent; --- > return myDecoratedFigure; 137a142,150 > Figure foundFigure = getDecoratedFigure().findFigureInside(x, y); > // if the found figure is the same as the one the DecoratorFigure decorates > // then do not peel of the decoration > if ((foundFigure != null) && (foundFigure == getDecoratedFigure())) { > return this; > } > else { > return foundFigure; > } 138,138d141 < return getDecoratedFigure().findFigureInside(x, y); 303a316,316 > /* 304,304d315 < 308a321,321 > */ 309,309d320 < 312a325,336 > > public synchronized FigureEnumeration getDependendFigures() { > return getDecoratedFigure().getDependendFigures(); > } > > public synchronized void addDependendFigure(Figure newDependendFigure) { > getDecoratedFigure().addDependendFigure(newDependendFigure); > } > > public synchronized void removeDependendFigure(Figure oldDependendFigure) { > getDecoratedFigure().removeDependendFigure(oldDependendFigure); > }