Private
Public Access
Added extra options for fill and pen color
This commit is contained in:
1 parent
b1e307b6de
commit
72d94cddc6
1 file changed
+38
-4
@@ -132,24 +132,58 @@ namespace Advanced_Software_Engineering {
|
|||||||
return new Dot(drawer);
|
return new Dot(drawer);
|
||||||
} else throw new Exception("Command doesn't take parameters");
|
} else throw new Exception("Command doesn't take parameters");
|
||||||
|
|
||||||
|
|
||||||
case "clear":
|
case "clear":
|
||||||
if (parameters.Length == 0) {
|
if (parameters.Length == 0) {
|
||||||
return new Clear(drawer);
|
return new Clear(drawer);
|
||||||
} else throw new Exception("Command doesn't take parameters");
|
} else throw new Exception("Command doesn't take parameters");
|
||||||
|
|
||||||
case "reset":
|
case "reset":
|
||||||
if (parameters.Length == 0) {
|
if (parameters.Length == 0) {
|
||||||
return new ResetPen(drawer);
|
return new ResetPen(drawer);
|
||||||
} else throw new Exception("Command doesn't take parameters");
|
} else throw new Exception("Command doesn't take parameters");
|
||||||
|
|
||||||
case "pen":
|
case "pen":
|
||||||
if(parameters.Length == 1) {
|
if (parameters.Length == 1) {
|
||||||
return new PenColor(drawer, Value.TextToColor(parameters[0]));
|
return new PenColor(drawer, Value.TextToColor(parameters[0]));
|
||||||
|
} else if (parameters.Length == 3) {
|
||||||
|
return new PenColor(drawer,
|
||||||
|
Value.IntsToColor(
|
||||||
|
Value.ConvertToInt(parameters[0]),
|
||||||
|
Value.ConvertToInt(parameters[1]),
|
||||||
|
Value.ConvertToInt(parameters[2])
|
||||||
|
)
|
||||||
|
);
|
||||||
|
} else if (parameters.Length == 4) {
|
||||||
|
return new PenColor(drawer,
|
||||||
|
Value.IntsToColor(
|
||||||
|
Value.ConvertToInt(parameters[0]),
|
||||||
|
Value.ConvertToInt(parameters[1]),
|
||||||
|
Value.ConvertToInt(parameters[2]),
|
||||||
|
Value.ConvertToInt(parameters[3])
|
||||||
|
)
|
||||||
|
);
|
||||||
} else throw new Exception("Command has an incorrect number of parameters");
|
} else throw new Exception("Command has an incorrect number of parameters");
|
||||||
case "fill":
|
case "fill":
|
||||||
if(parameters.Length == 1) {
|
if (parameters.Length == 1) {
|
||||||
return new FillColor(drawer, Value.TextToColor(parameters[0]));
|
return new FillColor(drawer, Value.TextToColor(parameters[0]));
|
||||||
|
} else if (parameters.Length == 3) {
|
||||||
|
return new FillColor(drawer,
|
||||||
|
Value.IntsToColor(
|
||||||
|
Value.ConvertToInt(parameters[0]),
|
||||||
|
Value.ConvertToInt(parameters[1]),
|
||||||
|
Value.ConvertToInt(parameters[2])
|
||||||
|
)
|
||||||
|
);
|
||||||
|
} else if (parameters.Length == 4) {
|
||||||
|
return new FillColor(drawer,
|
||||||
|
Value.IntsToColor(
|
||||||
|
Value.ConvertToInt(parameters[0]),
|
||||||
|
Value.ConvertToInt(parameters[1]),
|
||||||
|
Value.ConvertToInt(parameters[2]),
|
||||||
|
Value.ConvertToInt(parameters[3])
|
||||||
|
)
|
||||||
|
);
|
||||||
} else throw new Exception("Command has an incorrect number of parameters");
|
} else throw new Exception("Command has an incorrect number of parameters");
|
||||||
|
|
||||||
default:
|
default:
|
||||||
|
|||||||
Reference in new issue
Block a user