From e10f2b3d079439d149f9a9a929d7805cbf410969 Mon Sep 17 00:00:00 2001 From: Lukasz Baldyga Date: Sun, 15 Nov 2020 05:43:04 +0000 Subject: [PATCH] Moved Verb to IVerb --- .../Advanced Software Engineering Tests.xml | 76 ++++++------- .../CommandTester.cs | 106 +++++++++--------- .../Advanced Software Engineering.csproj | 3 +- .../Commander.cs | 20 ++-- .../Verbs/DrawingVerbs/Circle.cs | 8 +- .../Verbs/DrawingVerbs/Clear.cs | 8 +- .../Verbs/DrawingVerbs/Dot.cs | 6 +- .../Verbs/DrawingVerbs/DrawLines.cs | 4 +- .../Verbs/DrawingVerbs/DrawTo.cs | 4 +- .../Verbs/DrawingVerbs/Fill.cs | 6 +- .../Verbs/DrawingVerbs/FillColor.cs | 4 +- .../Verbs/DrawingVerbs/MoveTo.cs | 4 +- .../Verbs/DrawingVerbs/PenColor.cs | 4 +- .../Verbs/DrawingVerbs/Quadrilateral.cs | 12 +- .../Verbs/DrawingVerbs/Rectangle.cs | 4 +- .../Verbs/DrawingVerbs/RegularPolygon.cs | 4 +- .../Verbs/DrawingVerbs/ResetPen.cs | 4 +- .../Verbs/DrawingVerbs/Square.cs | 14 +-- .../Verbs/DrawingVerbs/Triangle.cs | 18 +-- .../Verbs/IVerb.cs | 19 ++++ .../Verbs/Verb.cs | 19 ---- .../Verbs/VerbFactory.cs | 6 +- 22 files changed, 177 insertions(+), 176 deletions(-) create mode 100644 Advanced Software Engineering/Advanced Software Engineering/Verbs/IVerb.cs delete mode 100644 Advanced Software Engineering/Advanced Software Engineering/Verbs/Verb.cs diff --git a/Advanced Software Engineering/Advanced Software Engineering Tests/Advanced Software Engineering Tests.xml b/Advanced Software Engineering/Advanced Software Engineering Tests/Advanced Software Engineering Tests.xml index dbef365..7427dec 100644 --- a/Advanced Software Engineering/Advanced Software Engineering Tests/Advanced Software Engineering Tests.xml +++ b/Advanced Software Engineering/Advanced Software Engineering Tests/Advanced Software Engineering Tests.xml @@ -6,7 +6,7 @@ - The CommandTester class tests the commands possible, mostly by getting a verb and checking it's description.. + The CommandTester class tests the commands possible, mostly by getting a IVerb and checking it's description.. @@ -29,107 +29,107 @@ - tests the "move" command. See . + tests the "move" command. See . - tests the "moveto" command. See . + tests the "moveto" command. See . - tests the "drawto" command. See . + tests the "drawto" command. See . - tests the "line" command. See . + tests the "line" command. See . - tests the "lineto" command. See . + tests the "lineto" command. See . - tests the "regularpolygon" command. See . + tests the "regularpolygon" command. See . - tests the "rp" command. See . + tests the "rp" command. See . - tests the "regularpolygon" command. See . + tests the "regularpolygon" command. See . - tests the "rp" command. See . + tests the "rp" command. See . - tests the "square" command. See . + tests the "square" command. See . - tests the "square" command. See . + tests the "square" command. See . - tests the "quadrilateral" command using . See . + tests the "quadrilateral" command using . See . - Tests the "circle" command. See . + Tests the "circle" command. See . - tests the "triangle" command. See . + tests the "triangle" command. See . - tests the "triangle" command. See . + tests the "triangle" command. See . - test the "dot" command. See . + test the "dot" command. See . - tests the "clear" command. See . + tests the "clear" command. See . - Tests the "reset" command. See + Tests the "reset" command. See - Tests the "resetpen" command. See . + Tests the "resetpen" command. See . - Tests the command "pen". See + Tests the command "pen". See - Tests the command "fill". See . + Tests the command "fill". See . @@ -165,7 +165,7 @@ - This class tests methods. It uses a combination of manual and random tests. + This class tests methods. It uses a combination of manual and random tests. @@ -175,73 +175,73 @@ - Manual test + Manual test - Manual test + Manual test - Manual test. + Manual test. - Manual test. + Manual test. - Manual test. + Manual test. - Manual test. + Manual test. - Manual test. + Manual test. - Manual test. + Manual test. - Random test. + Random test. - This class tests methods. It uses a combination of manual and random tests. + This class tests methods. It uses a combination of manual and random tests. - Random test. + Random test. - Random test. + Random test. - Random test. + Random test. - Random test. + Random test. - \ No newline at end of file + diff --git a/Advanced Software Engineering/Advanced Software Engineering Tests/CommandTester.cs b/Advanced Software Engineering/Advanced Software Engineering Tests/CommandTester.cs index b05f6b8..98f4862 100644 --- a/Advanced Software Engineering/Advanced Software Engineering Tests/CommandTester.cs +++ b/Advanced Software Engineering/Advanced Software Engineering Tests/CommandTester.cs @@ -8,7 +8,7 @@ using System.Drawing; namespace Advanced_Software_Engineering_Tests { /// - /// The CommandTester class tests the commands possible, mostly by getting a verb and checking it's description.. + /// The CommandTester class tests the commands possible, mostly by getting a IVerb and checking it's description.. /// [TestClass] public class CommandTester { @@ -61,18 +61,18 @@ namespace Advanced_Software_Engineering_Tests { input += inputParameter + (paramater - 1 != commandParameterNumbers ? ", " : ""); } - Verb verb = VerbFactory.MakeVerb(null, input); + IVerb IVerb = VerbFactory.MakeVerb(null, input); if (command == "moveto") { - string verbDesc = verb.GetDescription(); + string verbDesc = IVerb.GetDescription(); string correctDesc = "Move origin to " + inputParameters[0] + ", " + inputParameters[1]; Assert.AreEqual(correctDesc, verbDesc); } else if (command == "drawto" || command == "lineto" || command == "line") { - string verbDesc = verb.GetDescription(); + string verbDesc = IVerb.GetDescription(); string correctDesc = "Draw line " + inputParameters[0] + ", " + inputParameters[1]; Assert.AreEqual(correctDesc, verbDesc); } else if (command == "shape") { - string verbDesc = verb.GetDescription(); + string verbDesc = IVerb.GetDescription(); string correctDesc; if (commandParameterNumbers == 2) correctDesc = "Draws a " + inputParameters[0] + " sided regular polygon, with rotation of 0 radians, with inner radius of " + (double)inputParameters[1]; @@ -92,9 +92,9 @@ namespace Advanced_Software_Engineering_Tests { string input = "move 200, 300"; string[] inputParameters = { "200", "300" }; - Verb verb = VerbFactory.MakeVerb(null, input); + IVerb IVerb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + string verbDesc = IVerb.GetDescription(); string correctDesc = "Move origin to " + inputParameters[0] + ", " + inputParameters[1]; Assert.AreEqual(correctDesc, verbDesc); } @@ -107,9 +107,9 @@ namespace Advanced_Software_Engineering_Tests { string input = "moveto 200, 300"; string[] inputParameters = { "200", "300" }; - Verb verb = VerbFactory.MakeVerb(null, input); + IVerb IVerb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + string verbDesc = IVerb.GetDescription(); string correctDesc = "Move origin to " + inputParameters[0] + ", " + inputParameters[1]; Assert.AreEqual(correctDesc, verbDesc); } @@ -121,8 +121,8 @@ namespace Advanced_Software_Engineering_Tests { public void DrawToTester_Manual1() { string input = "drawto 200, 300"; string[] inputParameters = { "200", "300" }; - Verb verb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + IVerb IVerb = VerbFactory.MakeVerb(null, input); + string verbDesc = IVerb.GetDescription(); string correctDesc = "Draw line " + inputParameters[0] + ", " + inputParameters[1]; Assert.AreEqual(correctDesc, verbDesc); } @@ -134,8 +134,8 @@ namespace Advanced_Software_Engineering_Tests { public void DrawToTester_Manual2() { string input = "line 200, 300"; string[] inputParameters = { "200", "300" }; - Verb verb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + IVerb IVerb = VerbFactory.MakeVerb(null, input); + string verbDesc = IVerb.GetDescription(); string correctDesc = "Draw line " + inputParameters[0] + ", " + inputParameters[1]; Assert.AreEqual(correctDesc, verbDesc); } @@ -147,8 +147,8 @@ namespace Advanced_Software_Engineering_Tests { public void DrawToTester_Manual3() { string input = "lineto 200, 300"; string[] inputParameters = { "200", "300" }; - Verb verb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + IVerb IVerb = VerbFactory.MakeVerb(null, input); + string verbDesc = IVerb.GetDescription(); string correctDesc = "Draw line " + inputParameters[0] + ", " + inputParameters[1]; Assert.AreEqual(correctDesc, verbDesc); } @@ -160,9 +160,9 @@ namespace Advanced_Software_Engineering_Tests { public void RegularPolygonTester_Manual1() { string input = "regularpolygon 3, 50"; - Verb verb = VerbFactory.MakeVerb(null, input); + IVerb IVerb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + string verbDesc = IVerb.GetDescription(); int sides = 3; double scale = 50; @@ -179,9 +179,9 @@ namespace Advanced_Software_Engineering_Tests { public void RegularPolygonTester_Manual2() { string input = "rp 3, 50"; - Verb verb = VerbFactory.MakeVerb(null, input); + IVerb IVerb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + string verbDesc = IVerb.GetDescription(); int sides = 3; double scale = 50; @@ -198,9 +198,9 @@ namespace Advanced_Software_Engineering_Tests { public void RegularPolygonTester_Manual3() { string input = "regularpolygon 3, 50, 25"; - Verb verb = VerbFactory.MakeVerb(null, input); + IVerb IVerb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + string verbDesc = IVerb.GetDescription(); int sides = 3; double scale = 50; @@ -217,9 +217,9 @@ namespace Advanced_Software_Engineering_Tests { public void RegularPolygonTester_Manual4() { string input = "rp 3, 50, 25"; - Verb verb = VerbFactory.MakeVerb(null, input); + IVerb IVerb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + string verbDesc = IVerb.GetDescription(); int sides = 3; double scale = 50; @@ -236,9 +236,9 @@ namespace Advanced_Software_Engineering_Tests { public void SquareTester_Manual1() { string input = "square 500"; - Verb verb = VerbFactory.MakeVerb(null, input); + IVerb IVerb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + string verbDesc = IVerb.GetDescription(); int sides = 4; double scale = 500; @@ -255,9 +255,9 @@ namespace Advanced_Software_Engineering_Tests { public void SquareTester_Manual2() { string input = "square 500, 45"; - Verb verb = VerbFactory.MakeVerb(null, input); + IVerb IVerb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + string verbDesc = IVerb.GetDescription(); int sides = 4; double scale = 500; @@ -280,9 +280,9 @@ namespace Advanced_Software_Engineering_Tests { new Point(7, 8) }; - Verb verb = VerbFactory.MakeVerb(null, input); + IVerb IVerb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + string verbDesc = IVerb.GetDescription(); string correctDesc = new DrawLines(null, points).GetDescription(); Assert.AreEqual(verbDesc, correctDesc); @@ -295,9 +295,9 @@ namespace Advanced_Software_Engineering_Tests { public void CircleTester_Manual1() { string input = "circle 100"; - Verb verb = VerbFactory.MakeVerb(null, input); + IVerb IVerb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + string verbDesc = IVerb.GetDescription(); string correctDesc = "Draws a circle radius " + 100d.ToString() + ", with origin of the pen"; @@ -311,9 +311,9 @@ namespace Advanced_Software_Engineering_Tests { public void TriangleTester_Manual1() { string input = "triangle 500"; - Verb verb = VerbFactory.MakeVerb(null, input); + IVerb IVerb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + string verbDesc = IVerb.GetDescription(); int sides = 3; double scale = 500; @@ -330,9 +330,9 @@ namespace Advanced_Software_Engineering_Tests { public void TriangleTester_Manual2() { string input = "triangle 500, 45"; - Verb verb = VerbFactory.MakeVerb(null, input); + IVerb IVerb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + string verbDesc = IVerb.GetDescription(); int sides = 3; double scale = 500; @@ -349,8 +349,8 @@ namespace Advanced_Software_Engineering_Tests { public void DotTester_Manual1() { string input = "dot"; - Verb verb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + IVerb IVerb = VerbFactory.MakeVerb(null, input); + string verbDesc = IVerb.GetDescription(); string correctDesc = "Places a dot where the pen currently is"; Assert.AreEqual(correctDesc, verbDesc); @@ -362,8 +362,8 @@ namespace Advanced_Software_Engineering_Tests { [TestMethod] public void ClearTester_Manual1() { string input = "clear"; - Verb verb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + IVerb IVerb = VerbFactory.MakeVerb(null, input); + string verbDesc = IVerb.GetDescription(); string correctDesc = "Clears the canvas"; Assert.AreEqual(correctDesc, verbDesc); @@ -375,8 +375,8 @@ namespace Advanced_Software_Engineering_Tests { [TestMethod] public void ResetPenTester_Manual1() { string input = "reset"; - Verb verb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + IVerb IVerb = VerbFactory.MakeVerb(null, input); + string verbDesc = IVerb.GetDescription(); string correctDesc = "Moves pen to the start (0, 0)"; Assert.AreEqual(correctDesc, verbDesc); @@ -388,8 +388,8 @@ namespace Advanced_Software_Engineering_Tests { [TestMethod] public void ResetPenTester_Manual2() { string input = "resetpen"; - Verb verb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + IVerb IVerb = VerbFactory.MakeVerb(null, input); + string verbDesc = IVerb.GetDescription(); string correctDesc = "Moves pen to the start (0, 0)"; Assert.AreEqual(correctDesc, verbDesc); @@ -401,8 +401,8 @@ namespace Advanced_Software_Engineering_Tests { [TestMethod] public void PenTester_Manual1() { string input = "pen red"; - Verb verb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + IVerb IVerb = VerbFactory.MakeVerb(null, input); + string verbDesc = IVerb.GetDescription(); string correctDesc = "Set pen color to: Color [Red]"; Assert.AreEqual(correctDesc, verbDesc); @@ -414,8 +414,8 @@ namespace Advanced_Software_Engineering_Tests { [TestMethod] public void FillTester_Manual1() { string input = "fill pink"; - Verb verb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + IVerb IVerb = VerbFactory.MakeVerb(null, input); + string verbDesc = IVerb.GetDescription(); string correctDesc = "Set fill color to: Color [Pink]"; Assert.AreEqual(correctDesc, verbDesc); @@ -428,8 +428,8 @@ namespace Advanced_Software_Engineering_Tests { public void IfTester_Manual1() { string input = "if i == 10"; - Verb verb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + IVerb IVerb = VerbFactory.MakeVerb(null, input); + string verbDesc = IVerb.GetDescription(); string correctDesc = "Tests if variable 'i' is equal to 10"; Assert.AreEqual(correctDesc, verbDesc); @@ -442,8 +442,8 @@ namespace Advanced_Software_Engineering_Tests { public void MethodTester_Manual1() { string input = "def duck, int i"; - Verb verb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + IVerb IVerb = VerbFactory.MakeVerb(null, input); + string verbDesc = IVerb.GetDescription(); string correctDesc = "Create a new method called 'duck' with input 'int i'. The method: "; Assert.AreEqual(correctDesc, verbDesc); @@ -456,8 +456,8 @@ namespace Advanced_Software_Engineering_Tests { public void ValueTester_Manual1() { string input = "int i = 10"; - Verb verb = VerbFactory.MakeVerb(null, input); - string verbDesc = verb.GetDescription(); + IVerb IVerb = VerbFactory.MakeVerb(null, input); + string verbDesc = IVerb.GetDescription(); string correctDesc = "Declares and sets integer 'i' to '10'"; Assert.AreEqual(correctDesc, verbDesc); diff --git a/Advanced Software Engineering/Advanced Software Engineering/Advanced Software Engineering.csproj b/Advanced Software Engineering/Advanced Software Engineering/Advanced Software Engineering.csproj index 09515f7..b5318ee 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Advanced Software Engineering.csproj +++ b/Advanced Software Engineering/Advanced Software Engineering/Advanced Software Engineering.csproj @@ -89,8 +89,9 @@ + - + Form diff --git a/Advanced Software Engineering/Advanced Software Engineering/Commander.cs b/Advanced Software Engineering/Advanced Software Engineering/Commander.cs index 0be44c2..5f4ca56 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Commander.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Commander.cs @@ -9,7 +9,7 @@ namespace Advanced_Software_Engineering { /// public class Commander { private Graphics graphics; - private List commands = new List(); + private List commands = new List(); private Drawer drawer; private bool commands_ok = true; @@ -22,8 +22,8 @@ namespace Advanced_Software_Engineering { drawer.ResetDrawer(); drawer.SetGraphics(updateGraphicsElement); - foreach (Verb verb in this.commands) { - verb.ExecuteVerb(); + foreach (IVerb IVerb in this.commands) { + IVerb.ExecuteVerb(); } } @@ -58,10 +58,10 @@ namespace Advanced_Software_Engineering { } /// - /// Adds a verb to the command list to be executed. + /// Adds a IVerb to the command list to be executed. /// - /// Verb to be added. - public void AddCommand(Verb command) { + /// IVerb to be added. + public void AddCommand(IVerb command) { commands.Add(command); } @@ -108,8 +108,8 @@ namespace Advanced_Software_Engineering { Console.WriteLine("\n\nHere is what the program is going to do:"); Console.WriteLine("Set origin to 0, 0"); - foreach (Verb verb in this.commands) { - Console.WriteLine(verb.GetDescription()); + foreach (IVerb IVerb in this.commands) { + Console.WriteLine(IVerb.GetDescription()); } } @@ -131,7 +131,7 @@ namespace Advanced_Software_Engineering { /// Removes all commands from the Commander and resets the drawer. /// public void RemoveAllCommands() { - commands = new List(); + commands = new List(); drawer.ResetDrawer(); } @@ -141,7 +141,7 @@ namespace Advanced_Software_Engineering { /// Explanation of all the commands public string ExplainCommands() { string desc = ""; - foreach (Verb command in commands) { + foreach (IVerb command in commands) { desc += command.GetDescription() + Environment.NewLine; } return desc; diff --git a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Circle.cs b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Circle.cs index a0f1942..e9a1e33 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Circle.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Circle.cs @@ -1,14 +1,14 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { /// - /// Circle Verb class. + /// Circle IVerb class. /// - public class Circle : Verb { + public class Circle : IVerb { private Drawer drawer; private double scale; /// - /// Circle constructor creates the Circle verb. + /// Circle constructor creates the Circle IVerb. /// /// drawer /// scale of the circle @@ -18,7 +18,7 @@ } /// - /// Execute the Circle verb, which is to draw a circle with the drawer. + /// Execute the Circle IVerb, which is to draw a circle with the drawer. /// public void ExecuteVerb() { drawer.DrawCircle(scale); diff --git a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Clear.cs b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Clear.cs index be90b9f..3371010 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Clear.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Clear.cs @@ -1,13 +1,13 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { /// - /// The Clear Verb class. + /// The Clear IVerb class. /// - public class Clear : Verb { + public class Clear : IVerb { private Drawer drawer; /// - /// Create the clear Verb + /// Create the clear IVerb /// /// public Clear(Drawer drawer) { @@ -15,7 +15,7 @@ } /// - /// Execute the clear verb. It clears the drawer. + /// Execute the clear IVerb. It clears the drawer. /// public void ExecuteVerb() => drawer.ClearCanvas(); diff --git a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Dot.cs b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Dot.cs index 87e923e..efe523e 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Dot.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Dot.cs @@ -1,13 +1,13 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { /// - /// The Dot Verb class + /// The Dot IVerb class /// - public class Dot : Verb { + public class Dot : IVerb { private Drawer drawer; /// - /// Creates the Dot Verb + /// Creates the Dot IVerb /// /// public Dot(Drawer drawer) { diff --git a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/DrawLines.cs b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/DrawLines.cs index 7e0d543..b0ed41e 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/DrawLines.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/DrawLines.cs @@ -3,9 +3,9 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { /// - /// DrawLines Verb class + /// DrawLines IVerb class /// - public class DrawLines : Verb { + public class DrawLines : IVerb { private Drawer drawer; private Point[] points; diff --git a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/DrawTo.cs b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/DrawTo.cs index 2331f69..5510929 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/DrawTo.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/DrawTo.cs @@ -3,9 +3,9 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { /// - /// DrawTo Verb class + /// DrawTo IVerb class /// - public class DrawTo : Verb { + public class DrawTo : IVerb { private Drawer drawer; private Point moveToPoint; diff --git a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Fill.cs b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Fill.cs index e625fc4..969a588 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Fill.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Fill.cs @@ -1,9 +1,9 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { /// - /// Fill Verb class + /// Fill IVerb class /// - public class Fill : Verb { + public class Fill : IVerb { private Drawer drawer; private bool enable; @@ -28,7 +28,7 @@ /// /// Describes what the command will do /// - /// Description of what the verb will do + /// Description of what the IVerb will do public string GetDescription() { if (enable) return "Enable fill"; else return "Disable fill"; diff --git a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/FillColor.cs b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/FillColor.cs index 4bf7797..48d06ba 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/FillColor.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/FillColor.cs @@ -3,9 +3,9 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { /// - /// The FillColor Verb class + /// The FillColor IVerb class /// - public class FillColor : Verb { + public class FillColor : IVerb { private Drawer drawer; private Color color; diff --git a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/MoveTo.cs b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/MoveTo.cs index 3c688a3..6794d1a 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/MoveTo.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/MoveTo.cs @@ -3,9 +3,9 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { /// - /// MoveTo Verb class + /// MoveTo IVerb class /// - public class MoveTo : Verb { + public class MoveTo : IVerb { private Drawer drawer; private Point moveToPoint; diff --git a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/PenColor.cs b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/PenColor.cs index af172d1..bed68d3 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/PenColor.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/PenColor.cs @@ -3,9 +3,9 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { /// - /// The PenColor Verb class + /// The PenColor IVerb class /// - public class PenColor : Verb { + public class PenColor : IVerb { private Drawer drawer; private Color color; diff --git a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Quadrilateral.cs b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Quadrilateral.cs index 8b5b378..9a46414 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Quadrilateral.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Quadrilateral.cs @@ -3,10 +3,10 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { /// - /// The Quadrilateral Verb class + /// The Quadrilateral IVerb class /// - public class Quadrilateral : Verb { - private Verb verb; + public class Quadrilateral : IVerb { + private IVerb IVerb; /// /// Creates a Quadrilateral instances @@ -17,18 +17,18 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { /// third point /// fourth point public Quadrilateral(Drawer drawer, Point point1, Point point2, Point point3, Point point4) { - verb = new DrawLines(drawer, new Point[] { point1, point2, point3, point4 }); + IVerb = new DrawLines(drawer, new Point[] { point1, point2, point3, point4 }); } /// /// Draws a quadrilateral from the points /// - public void ExecuteVerb() => verb.ExecuteVerb(); + public void ExecuteVerb() => IVerb.ExecuteVerb(); /// /// Describes all of the points /// /// Description of the quadrilateral points - public string GetDescription() => verb.GetDescription(); + public string GetDescription() => IVerb.GetDescription(); } } \ No newline at end of file diff --git a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Rectangle.cs b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Rectangle.cs index e3c8340..8b72420 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Rectangle.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Rectangle.cs @@ -5,12 +5,12 @@ using System.Drawing; namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { /// - /// Rectangle Verb class + /// Rectangle IVerb class /// /// /// Correct /// - public class Rectangle : Verb { + public class Rectangle : IVerb { private Drawer drawer; private PointF[] points; diff --git a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/RegularPolygon.cs b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/RegularPolygon.cs index 98aca88..2c58028 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/RegularPolygon.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/RegularPolygon.cs @@ -5,9 +5,9 @@ using System.Drawing; namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { /// - /// A class that generates a RegularPolygon verb. + /// A class that generates a RegularPolygon IVerb. /// - public class RegularPolygon : Verb { + public class RegularPolygon : IVerb { private Drawer drawer; private int sides; private double scale; diff --git a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/ResetPen.cs b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/ResetPen.cs index aa58355..e280878 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/ResetPen.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/ResetPen.cs @@ -3,11 +3,11 @@ /// /// Setsets the pen to the initial position. /// - public class ResetPen : Verb { + public class ResetPen : IVerb { private Drawer drawer; /// - /// Creates the ResetPen verb + /// Creates the ResetPen IVerb /// /// drawer public ResetPen(Drawer drawer) { diff --git a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Square.cs b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Square.cs index bb0b6e5..7feeeec 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Square.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Square.cs @@ -1,10 +1,10 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { /// - /// The Square Verb class + /// The Square IVerb class /// - public class Square : Verb { - private Verb verb; + public class Square : IVerb { + private IVerb IVerb; /// /// A new Squre instance. Draws squares using @@ -12,7 +12,7 @@ /// drawer /// size of the square public Square(Drawer drawer, double scale) { - verb = new RegularPolygon(drawer, 4, scale); + IVerb = new RegularPolygon(drawer, 4, scale); } /// @@ -22,18 +22,18 @@ /// size of the square /// rotation offset in degrees public Square(Drawer drawer, double scale, double offset) { - verb = new RegularPolygon(drawer, 4, scale, offset); + IVerb = new RegularPolygon(drawer, 4, scale, offset); } /// /// Draws the regular polygon (square) /// - public void ExecuteVerb() => verb.ExecuteVerb(); + public void ExecuteVerb() => IVerb.ExecuteVerb(); /// /// Gets description of how it will draw the regular polygon (square) /// /// - public string GetDescription() => verb.GetDescription(); + public string GetDescription() => IVerb.GetDescription(); } } \ No newline at end of file diff --git a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Triangle.cs b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Triangle.cs index 36f2c7b..7fcc29d 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Triangle.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Triangle.cs @@ -3,10 +3,10 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { /// - /// The Triangle Verb class + /// The Triangle IVerb class /// - public class Triangle : Verb { - private Verb verb; + public class Triangle : IVerb { + private IVerb IVerb; /// /// Creates a new Triangle instance using . @@ -14,7 +14,7 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { /// drawer /// the scale of the triangle public Triangle(Drawer drawer, double scale) { - verb = new RegularPolygon(drawer, 3, scale); + IVerb = new RegularPolygon(drawer, 3, scale); } /// @@ -24,7 +24,7 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { /// the scale of the triangle /// the offset of the triangle in degrees public Triangle(Drawer drawer, double scale, double offset) { - verb = new RegularPolygon(drawer, 3, scale, offset); + IVerb = new RegularPolygon(drawer, 3, scale, offset); } /// @@ -35,18 +35,18 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { /// second point /// third point public Triangle(Drawer drawer, Point point1, Point point2, Point point3) { - verb = new DrawLines(drawer, new Point[] { point1, point2, point3 }); + IVerb = new DrawLines(drawer, new Point[] { point1, point2, point3 }); } /// - /// Executes the created verb, either or . + /// Executes the created IVerb, either or . /// - public void ExecuteVerb() => verb.ExecuteVerb(); + public void ExecuteVerb() => IVerb.ExecuteVerb(); /// /// Describes how the triangle will be drawn /// /// Description of how the triangle will be drawn - public string GetDescription() => verb.GetDescription(); + public string GetDescription() => IVerb.GetDescription(); } } \ No newline at end of file diff --git a/Advanced Software Engineering/Advanced Software Engineering/Verbs/IVerb.cs b/Advanced Software Engineering/Advanced Software Engineering/Verbs/IVerb.cs new file mode 100644 index 0000000..84aedce --- /dev/null +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/IVerb.cs @@ -0,0 +1,19 @@ +namespace Advanced_Software_Engineering { + + /// + /// IVerb is an interface for executing and getting the descriptions of Verbs. Some Verbs draw lines, some verbs will assign + /// + public interface IVerb { + + /// + /// This executes the IVerb to the drawer inside it. + /// + void ExecuteVerb(); + + /// + /// The description of what the IVerb will do. + /// + /// A string description of what the IVerb will do + string GetDescription(); + } +} \ No newline at end of file diff --git a/Advanced Software Engineering/Advanced Software Engineering/Verbs/Verb.cs b/Advanced Software Engineering/Advanced Software Engineering/Verbs/Verb.cs deleted file mode 100644 index 238fed8..0000000 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/Verb.cs +++ /dev/null @@ -1,19 +0,0 @@ -namespace Advanced_Software_Engineering { - - /// - /// Verb is an interface for executing and getting the descriptions of Verbs. Some Verbs draw lines, some verbs will assign - /// - public interface Verb { - - /// - /// This executes the verb to the drawer inside it. - /// - void ExecuteVerb(); - - /// - /// The description of what the Verb will do. - /// - /// A string description of what the Verb will do - string GetDescription(); - } -} \ No newline at end of file diff --git a/Advanced Software Engineering/Advanced Software Engineering/Verbs/VerbFactory.cs b/Advanced Software Engineering/Advanced Software Engineering/Verbs/VerbFactory.cs index 7aeef60..116ec7d 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/VerbFactory.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/VerbFactory.cs @@ -12,15 +12,15 @@ namespace Advanced_Software_Engineering { public class VerbFactory { /// - /// This function returns a Verb from a command and drawer. + /// This function returns a IVerb from a command and drawer. /// /// /// This factory is specifically useful since it automatically converts the parameters to what they should be. /// /// The drawer to affect /// The command as a string - /// A verb that maches the command - public static Verb MakeVerb(Drawer drawer, string fullCommand) { + /// A IVerb that maches the command + public static IVerb MakeVerb(Drawer drawer, string fullCommand) { Dictionary commandAndParameters = SettingsAndHelperFunctions.CommandAndParameterParser(fullCommand); if (!commandAndParameters.Keys.Contains("command")) throw new Exception("There is no command to process");