File: /Users/shatabdi/Education/GitHub/se450_project/src/model/dialogs/DialogProvider.java

1     // Project starter code
2     package model.dialogs;
3     
4     import model.interfaces.IApplicationState;
5     import model.interfaces.IDialogProvider;
6     import view.Enum.MouseMode;
7     import view.Enum.ShapeColor;
8     import view.Enum.ShapeShadingType;
9     import view.Enum.ShapeType;
10     import view.interfaces.IDialogChoice;
11     
12     public class DialogProvider implements IDialogProvider {
13     	private final IApplicationState applicationState;
14     	private final IDialogChoice<MouseMode> mouseModetDialogChoice;
15     	private final IDialogChoice<ShapeColor> primaryColorDialogChoice;
16     	private final IDialogChoice<ShapeColor> secondaryColorDialogChoice;
17     	private final IDialogChoice<ShapeShadingType> shadingTypeDialogChoice;
18     	private final IDialogChoice<ShapeType> shapeDialogChoice;
19     
20     	public DialogProvider(IApplicationState applicationState) {
21     		this.applicationState = applicationState;
22     		this.primaryColorDialogChoice = new ChoosePrimaryColorDialog(this.applicationState);
23     		this.secondaryColorDialogChoice = new ChooseSecondaryColorDialog(this.applicationState);
24     		this.shadingTypeDialogChoice = new ChooseShadingTypeDialog(this.applicationState);
25     		this.shapeDialogChoice = new ChooseShapeTypeDialog(this.applicationState);
26     		this.mouseModetDialogChoice = new ChooseMouseMode(this.applicationState);
27     	}
28     
29     	@Override
30     	public IDialogChoice<MouseMode> getMouseModeDialogChoice() {
31     		return mouseModetDialogChoice;
32     	}
33     
34     	@Override
35     	public IDialogChoice<ShapeColor> getPrimaryColorDialogChoice() {
36     		return primaryColorDialogChoice;
37     	}
38     
39     	@Override
40     	public IDialogChoice<ShapeColor> getSecondaryColorDialogChoice() {
41     		return secondaryColorDialogChoice;
42     	}
43     
44     	@Override
45     	public IDialogChoice<ShapeShadingType> getShadingTypeDialogChoice() {
46     		return shadingTypeDialogChoice;
47     	}
48     
49     	@Override
50     	public IDialogChoice<ShapeType> getShapeDialogChoice() {
51     		return shapeDialogChoice;
52     	}
53     }
54