diff --git a/diylc/diylc-core/src/org/diylc/presenter/update.xml b/diylc/diylc-core/src/org/diylc/presenter/update.xml index 44967d36..f38b370f 100644 --- a/diylc/diylc-core/src/org/diylc/presenter/update.xml +++ b/diylc/diylc-core/src/org/diylc/presenter/update.xml @@ -2738,6 +2738,10 @@ BUG_FIX Hide the 3rd control point for components that do not need it (Trace, Jumper, Line) + + BUG_FIX + Threads on 1/4" Closed Jack were not rendered at all + https://github.com/bancika/diy-layout-creator/releases diff --git a/diylc/diylc-library/src/org/diylc/components/AbstractMultiPartComponent.java b/diylc/diylc-library/src/org/diylc/components/AbstractMultiPartComponent.java index 68e23754..5064967e 100644 --- a/diylc/diylc-library/src/org/diylc/components/AbstractMultiPartComponent.java +++ b/diylc/diylc-library/src/org/diylc/components/AbstractMultiPartComponent.java @@ -1,6 +1,7 @@ package org.diylc.components; import java.awt.Graphics2D; +import java.awt.Shape; import java.awt.geom.Area; import org.diylc.common.ObjectCache; @@ -13,7 +14,7 @@ public abstract class AbstractMultiPartComponent extends AbstractTransparentC private static final long serialVersionUID = 1L; - public abstract Area[] getBody(); + public abstract Shape[] getBody(); public void drawSelectionOutline(Graphics2D g2d, ComponentState componentState, boolean outlineMode, Project project, IDrawingObserver drawingObserver) { @@ -25,11 +26,11 @@ public abstract class AbstractMultiPartComponent extends AbstractTransparentC } public Area getBodyOutline() { - Area[] body = getBody(); + Shape[] body = getBody(); Area outline = new Area(); - for (Area b : body) - if (b != null) - outline.add(b); + for (Shape b : body) + if (b != null && b instanceof Area) + outline.add((Area)b); return outline; } } diff --git a/diylc/diylc-library/src/org/diylc/components/electromechanical/ClosedJack1_4.java b/diylc/diylc-library/src/org/diylc/components/electromechanical/ClosedJack1_4.java index 403f841b..9ad98fc9 100644 --- a/diylc/diylc-library/src/org/diylc/components/electromechanical/ClosedJack1_4.java +++ b/diylc/diylc-library/src/org/diylc/components/electromechanical/ClosedJack1_4.java @@ -77,7 +77,7 @@ public class ClosedJack1_4 extends AbstractMultiPartComponent { private Point[] controlPoints = new Point[] {new Point(0, 0)}; private JackType type = JackType.MONO; private Orientation orientation = Orientation.DEFAULT; - transient private Area[] body; + transient private Shape[] body; private String value = ""; public ClosedJack1_4() { @@ -130,9 +130,9 @@ public class ClosedJack1_4 extends AbstractMultiPartComponent { return angle; } - public Area[] getBody() { + public Shape[] getBody() { if (body == null) { - body = new Area[5]; + body = new Shape[5]; // Create body. int x = controlPoints[0].x; @@ -169,9 +169,9 @@ public class ClosedJack1_4 extends AbstractMultiPartComponent { } path.lineTo(p.x, p.y); } - Area pathArea = new Area(path); - pathArea.intersect(shaft); - body[2] = new Area(path); +// Area pathArea = new Area(path); +// pathArea.intersect(shaft); + body[2] = path; // Create lugs. Area lugs = new Area(); @@ -245,7 +245,7 @@ public class ClosedJack1_4 extends AbstractMultiPartComponent { g2d.draw(body[1]); if (!outlineMode) { g2d.setColor(SHAFT_COLOR.darker()); - g2d.fill(body[2]); +// g2d.fill(body[2]); g2d.draw(body[2]); } diff --git a/diylc/diylc-swing/library/main.jar b/diylc/diylc-swing/library/main.jar index 6d464977..5bfde7a9 100644 Binary files a/diylc/diylc-swing/library/main.jar and b/diylc/diylc-swing/library/main.jar differ