From 8a73c1cd4893b7fcc4cd9ff10a2fd19553549a98 Mon Sep 17 00:00:00 2001 From: Lukasz Baldyga Date: Mon, 2 Nov 2020 19:50:12 +0000 Subject: [PATCH] Documented more files --- .../Verbs/DrawingVerbs/Fill.cs | 17 +++++++++- .../Verbs/DrawingVerbs/MoveTo.cs | 25 +++++++++++++-- .../Verbs/DrawingVerbs/PenColor.cs | 17 +++++++++- .../Verbs/DrawingVerbs/Quadrilateral.cs | 20 +++++++++++- .../Verbs/DrawingVerbs/Rectangle.cs | 32 +++++++++++++++++-- .../Verbs/DrawingVerbs/RegularPolygon.cs | 3 +- 6 files changed, 106 insertions(+), 8 deletions(-) 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 4abe97c..65cdf25 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Fill.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Fill.cs @@ -5,20 +5,35 @@ using System.Text; using System.Threading.Tasks; namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { - class Fill : Verb { + /// + /// Fill Verb class + /// + public class Fill : Verb { Drawer drawer; bool enable; + /// + /// Fill enables or disables the fill insider drawer + /// + /// drawer + /// Enable fill? public Fill(Drawer drawer, bool enable) { this.drawer = drawer; this.enable = enable; } + /// + /// Sets the fill status + /// public void ExecuteVerb() { if (enable) drawer.EnableFill(); else drawer.DisableFill(); } + /// + /// Describes what the command will do + /// + /// Description of what the verb 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/MoveTo.cs b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/MoveTo.cs index 10c2c3e..6709545 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/MoveTo.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/MoveTo.cs @@ -6,25 +6,46 @@ using System.Text; using System.Threading.Tasks; namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { + /// + /// MoveTo Verb class + /// public class MoveTo : Verb { - protected Drawer drawer; - protected Point moveToPoint; + Drawer drawer; + Point moveToPoint; + /// + /// Creates a MoveTo instance + /// + /// drawer + /// X position + /// Y position public MoveTo(Drawer drawer, int x, int y) { this.drawer = drawer; this.moveToPoint = new Point(x, y); } + /// + /// Creates a MoveTo instance + /// + /// drawer + /// Point of the position public MoveTo(Drawer drawer, Point point) { this.drawer = drawer; this.moveToPoint = point; } + /// + /// Moves the pen to the position + /// public void ExecuteVerb() { this.drawer.MovePen(moveToPoint); } + /// + /// Describes where the pen will move. + /// + /// Description where the pen will move to public string GetDescription() { return "Move origin to " + moveToPoint.X + ", " + moveToPoint.Y; } 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 615527a..8b159e6 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/PenColor.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/PenColor.cs @@ -6,20 +6,35 @@ using System.Text; using System.Threading.Tasks; namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { - class PenColor : Verb { + /// + /// The PenColor Verb class + /// + public class PenColor : Verb { Drawer drawer; Color color; + /// + /// Creates a PenColor instance + /// + /// drawer + /// Pen color public PenColor(Drawer drawer, Color color) { this.drawer = drawer; this.color = color; } + /// + /// Sets the pen color + /// public void ExecuteVerb() { drawer.SetPenColor(color); } + /// + /// Describes the pen color + /// + /// The description pen color public string GetDescription() { return "Set pen color to: " + color.ToString(); } 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 be8645e..1a9ca06 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Quadrilateral.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Quadrilateral.cs @@ -6,15 +6,33 @@ using System.Text; using System.Threading.Tasks; namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { - class Quadrilateral : Verb { + /// + /// The Quadrilateral Verb class + /// + public class Quadrilateral : Verb { Verb verb; + /// + /// Creates a Quadrilateral instances + /// + /// drawer + /// first point + /// second point + /// 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 }); } + /// + /// Draws a quadrilateral from the points + /// public void ExecuteVerb() => verb.ExecuteVerb(); + /// + /// Describes all of the points + /// + /// Description of the quadrilateral points public string GetDescription() => verb.GetDescription(); } } 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 2a89048..dbbca0f 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Rectangle.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/Rectangle.cs @@ -6,14 +6,26 @@ using System.Text; using System.Threading.Tasks; namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { - //TODO: correct - class Rectangle : Verb { + /// + /// Rectangle Verb class + /// + /// + /// Correct + /// + public class Rectangle : Verb { Verb verb; Drawer drawer; List points; bool correctForOrigin; + /// + /// Create a rectangle instance + /// + /// drawer + /// rectangle width + /// rectangle height + /// weather to center the rectangle on the pen public Rectangle(Drawer drawer, double width, double height, bool center = true) { this.drawer = drawer; correctForOrigin = true; @@ -30,6 +42,15 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { foreach (PointF pointF in points) this.points.Add(new Point((int)Math.Round(pointF.X), (int)Math.Round(pointF.Y))); } + /// + /// Create a rectangle instance + /// + /// + /// Unlike the above, this instance creates points based on widths and heights of the two points + /// + /// drawer + /// point spawn + /// point spawn public Rectangle(Drawer drawer, Point point1, Point point2) { this.drawer = drawer; @@ -48,10 +69,17 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { } + /// + /// Gets the description from the rectangle + /// + /// Describes the rectangle public string GetDescription() { return ""; } + /// + /// Draws the rectangle + /// public void ExecuteVerb() => drawer.DrawLines(points.ToArray()); } 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 0c17f92..5f05761 100644 --- a/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/RegularPolygon.cs +++ b/Advanced Software Engineering/Advanced Software Engineering/Verbs/DrawingVerbs/RegularPolygon.cs @@ -7,7 +7,7 @@ using System.Threading.Tasks; namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { /// - /// A class that generates a RegularPolygon verb. + /// A class that generates a RegularPolygon verb. /// public class RegularPolygon : Verb { protected Drawer drawer; @@ -16,6 +16,7 @@ namespace Advanced_Software_Engineering.Verbs.DrawingVerbs { protected double offset; List points; + public RegularPolygon(Drawer drawer, int sides, double scale, double offset = 0, bool degMode = true) { points = new List();