File: /Users/shatabdi/Education/GitHub/se450_project/src/model/commands/ShapeCreateCommand.java

1     // adopted from week 3 command demo code
2     package model.commands;
3     
4     import controller.interfaces.ICommand;
5     import controller.interfaces.IUndoable;
6     import model.shape.DrawShape;
7     
8     public class ShapeCreateCommand implements ICommand, IUndoable {
9     
10     	DrawShape drawShape;
11     
12     	public ShapeCreateCommand(DrawShape dr) {
13     		this.drawShape = dr;
14     	}
15     
16     	@Override
17     	public void redo() {
18     		((IUndoable) drawShape).redo();
19     	}
20     
21     	@Override
22     	public void run() {
23     		drawShape.draw();
24     		CommandHistory.add(this);
25     	}
26     
27     	@Override
28     	public void undo() {
29     		((IUndoable) drawShape).undo();
30     	}
31     }
32