Skip to content

Commit 30d6eb5

Browse files
committed
Add Default Line Width Option
1 parent 7da9a0c commit 30d6eb5

File tree

3 files changed

+16
-2
lines changed

3 files changed

+16
-2
lines changed

src/paintcomponents/LineSegment.java

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
11
package paintcomponents;
22

3+
import java.awt.BasicStroke;
34
import java.awt.Color;
45
import java.awt.Graphics;
6+
import java.awt.Graphics2D;
57
import java.awt.Rectangle;
8+
import java.awt.Stroke;
69

710
import settings.Defaults;
811

@@ -14,6 +17,7 @@ public class LineSegment extends PaintComponent {
1417

1518
private Color defaultColor;
1619
private Color selectColor;
20+
private Stroke stroke;
1721

1822
/**
1923
* @return the toPoint
@@ -46,24 +50,27 @@ public void setFromPoint(SimplePoint fromPoint) {
4650
}
4751

4852
public LineSegment(SimplePoint fromPoint, SimplePoint toPoint,
49-
Color defaultColor, Color selectColor) {
53+
Color defaultColor, Color selectColor, int strokeWidth) {
5054
super(0, 0);
5155
this.fromPoint = fromPoint;
5256
this.toPoint = toPoint;
5357
this.defaultColor = defaultColor;
5458
this.selectColor = selectColor;
59+
this.stroke = new BasicStroke(strokeWidth);
5560
}
5661

5762
public LineSegment(SimplePoint fromPoint, SimplePoint toPoint) {
5863
this(fromPoint, toPoint,
5964
Defaults.sharedDefaults().defaultColorForLineSegment(),
60-
Defaults.sharedDefaults().defaultColorForSelectedLineSegment());
65+
Defaults.sharedDefaults().defaultColorForSelectedLineSegment(),
66+
Defaults.sharedDefaults().defaultStrokeWidthForLineSegment());
6167

6268
}
6369

6470
@Override
6571
protected void paintNotSelected(Graphics g) {
6672
g.setColor(defaultColor);
73+
((Graphics2D)g).setStroke(stroke);
6774
g.drawLine(fromPoint.getX(), fromPoint.getY(), toPoint.getX(),
6875
toPoint.getY());
6976

@@ -72,6 +79,7 @@ protected void paintNotSelected(Graphics g) {
7279
@Override
7380
protected void paintSelected(Graphics g) {
7481
g.setColor(selectColor);
82+
((Graphics2D)g).setStroke(stroke);
7583
g.drawLine(fromPoint.getX(), fromPoint.getY(), toPoint.getX(),
7684
toPoint.getY());
7785
}

src/settings/Defaults.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ public class Defaults {
1414
private static int SIMPLE_POINT_DEFAULT_SIZE = 10;
1515
private static final Color LINE_SEGMENT_COLOR = SIMPLE_POINT_COLOR;
1616
private static final Color LINE_SEGMENT_SELECTED_COLOR = SIMPLE_POINT_SELECTED_COLOR;
17+
private static final int LINE_SEGMENT_STROKE_WIDTH = 5;
1718

1819
private Defaults(){
1920

@@ -45,4 +46,8 @@ public Color defaultColorForLineSegment(){
4546
public Color defaultColorForSelectedLineSegment(){
4647
return LINE_SEGMENT_SELECTED_COLOR;
4748
}
49+
50+
public int defaultStrokeWidthForLineSegment() {
51+
return LINE_SEGMENT_STROKE_WIDTH;
52+
}
4853
}

src/ui/PaintPanel.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,7 @@ public void addPaintComponent(PaintComponent comp) {
186186
* @return null if there is no component under current point
187187
*/
188188
public PaintComponent componentUnderPoint(int x, int y) {
189+
System.out.println("Nuber of Paint Component: " +components.size() + " " + components.toString());
189190
for (PaintComponent paintComponent : components) {
190191
if (paintComponent.getBounds().contains(x, y)) {
191192
return paintComponent;

0 commit comments

Comments
 (0)