protected boolean resetPolygon() { FigureEnumeration fe = getAffectedFigures(); if (!fe.hasNextFigure()) { return false; } PolygonFigure figure = (PolygonFigure) fe.nextFigure(); Polygon backupPolygon = figure.getPolygon(); figure.willChange(); figure.setInternalPolygon(getPolygon()); figure.changed(); setPolygon(backupPolygon); return true; }