@Override public void undo() throws CannotUndoException { super.undo(); clearSelection(); Drawing d = getDrawing(); for (int i = 0; i < deletedFigureIndices.length; i++) { d.add(deletedFigureIndices[i], deletedFigures.get(i)); } addToSelection(deletedFigures); }
HashMap<Figure, Figure> originalToDuplicateMap = new HashMap<Figure, Figure>(sorted.size()); clearSelection();
@Override public void setDrawing(@Nullable Drawing newValue) { Drawing oldValue = drawing; if (this.drawing != null) { this.drawing.removeCompositeFigureListener(eventHandler); this.drawing.removeFigureListener(eventHandler); clearSelection(); } this.drawing = newValue; if (this.drawing != null) { this.drawing.addCompositeFigureListener(eventHandler); this.drawing.addFigureListener(eventHandler); } dirtyArea.add(bufferedArea); firePropertyChange(DRAWING_PROPERTY, oldValue, newValue); // Revalidate without flickering revalidate(); validateViewTranslation(); paintEnabled = false; javax.swing.Timer t = new javax.swing.Timer(10, new ActionListener() { @Override public void actionPerformed(ActionEvent e) { repaint(); paintEnabled = true; } }); t.setRepeats(false); t.start(); }
clearSelection(); getDrawing().removeAll(deletedFigures);