public void setVisible(boolean newValue) { if (newValue != isVisible) { willChange(); isVisible = newValue; changed(); } }
@Override public void changed() { for (Figure child : children) { child.changed(); } super.changed(); }
@Override public void redo() throws CannotRedoException { super.redo(); owner.willChange(); owner.setBounds(newAnchor, newLead); owner.changed(); } @Override
@Override public void undo() throws CannotUndoException { super.undo(); owner.willChange(); owner.setBounds(oldAnchor, oldLead); owner.changed(); } }
@Override public void setBounds(Point2D.Double anchor, Point2D.Double lead) { Point2D.Double oldAnchor = getStartPoint(); Point2D.Double oldLead = getEndPoint(); if (!oldAnchor.equals(anchor) || !oldLead.equals(lead)) { willChange(); setBounds(anchor, lead); changed(); fireUndoableEditHappened(new SetBoundsEdit(this, oldAnchor, oldLead, anchor, lead)); } }