public void actionPerformed(ActionEvent e) { if (e.getSource() == clearButton) { history.clear(); canvas.init(); canvas.repaint(); } else if (e.getSource() == redButton) { Command cmd = new ColorCommand(canvas, Color.red); history.append(cmd); cmd.execute(); } else if (e.getSource() == greenButton) { Command cmd = new ColorCommand(canvas, Color.green); history.append(cmd); cmd.execute(); } else if (e.getSource() == blueButton) { Command cmd = new ColorCommand(canvas, Color.blue); history.append(cmd); cmd.execute(); } else if (e.getSource() == undoButton) { history.undo(); canvas.repaint(); } }
public void mouseDragged(MouseEvent e) { Command cmd = new DrawCommand(canvas, e.getPoint()); history.append(cmd); cmd.execute(); }