From 197f9ca216bf662c9cbadf12279d2bc15f49b33a Mon Sep 17 00:00:00 2001 From: Branislav Stojkovic Date: Wed, 23 Jan 2019 23:20:14 +0100 Subject: [PATCH] Better selection rendering for a few components, mostly electro-mechanical --- .../AbstractMultiPartComponent.java | 35 ++++++ .../electromechanical/CliffJack1_4.java | 94 ++++++++-------- .../electromechanical/ClosedJack1_4.java | 84 +++++++-------- .../electromechanical/FuseHolderPanel.java | 17 ++- .../electromechanical/IECSocket.java | 16 ++- .../electromechanical/OpenJack1_4.java | 100 ++++++++---------- .../electromechanical/PilotLampHolder.java | 29 ++--- .../electromechanical/PlasticDCJack.java | 95 +++++++++-------- .../components/passive/AudioTransformer.java | 25 ++--- diylc/diylc-swing/library/main.jar | Bin 566518 -> 567691 bytes diylc/diylc-swing/update.xml | 16 +++ 11 files changed, 268 insertions(+), 243 deletions(-) create mode 100644 diylc/diylc-library/src/org/diylc/components/AbstractMultiPartComponent.java diff --git a/diylc/diylc-library/src/org/diylc/components/AbstractMultiPartComponent.java b/diylc/diylc-library/src/org/diylc/components/AbstractMultiPartComponent.java new file mode 100644 index 00000000..68e23754 --- /dev/null +++ b/diylc/diylc-library/src/org/diylc/components/AbstractMultiPartComponent.java @@ -0,0 +1,35 @@ +package org.diylc.components; + +import java.awt.Graphics2D; +import java.awt.geom.Area; + +import org.diylc.common.ObjectCache; +import org.diylc.core.ComponentState; +import org.diylc.core.IDrawingObserver; +import org.diylc.core.Project; + + +public abstract class AbstractMultiPartComponent extends AbstractTransparentComponent { + + private static final long serialVersionUID = 1L; + + public abstract Area[] getBody(); + + public void drawSelectionOutline(Graphics2D g2d, ComponentState componentState, boolean outlineMode, Project project, + IDrawingObserver drawingObserver) { + if (componentState == ComponentState.SELECTED || componentState == ComponentState.DRAGGING) { + g2d.setColor(SELECTION_COLOR); + g2d.setStroke(ObjectCache.getInstance().fetchBasicStroke(1f)); + g2d.draw(getBodyOutline()); + } + } + + public Area getBodyOutline() { + Area[] body = getBody(); + Area outline = new Area(); + for (Area b : body) + if (b != null) + outline.add(b); + return outline; + } +} diff --git a/diylc/diylc-library/src/org/diylc/components/electromechanical/CliffJack1_4.java b/diylc/diylc-library/src/org/diylc/components/electromechanical/CliffJack1_4.java index ca1b2c92..44e44e73 100644 --- a/diylc/diylc-library/src/org/diylc/components/electromechanical/CliffJack1_4.java +++ b/diylc/diylc-library/src/org/diylc/components/electromechanical/CliffJack1_4.java @@ -21,42 +21,42 @@ */ package org.diylc.components.electromechanical; -import java.awt.AlphaComposite; -import java.awt.Color; -import java.awt.Composite; -import java.awt.Graphics2D; -import java.awt.Point; -import java.awt.Rectangle; -import java.awt.Shape; -import java.awt.geom.AffineTransform; -import java.awt.geom.Area; -import java.awt.geom.Ellipse2D; -import java.awt.geom.RoundRectangle2D; - -import org.diylc.appframework.miscutils.ConfigurationManager; -import org.diylc.common.HorizontalAlignment; -import org.diylc.common.IPlugInPort; -import org.diylc.common.ObjectCache; -import org.diylc.common.Orientation; -import org.diylc.common.VerticalAlignment; -import org.diylc.components.AbstractTransparentComponent; -import org.diylc.components.transform.CliffJackTransformer; -import org.diylc.core.ComponentState; -import org.diylc.core.IDIYComponent; -import org.diylc.core.IDrawingObserver; -import org.diylc.core.Project; -import org.diylc.core.Theme; -import org.diylc.core.VisibilityPolicy; -import org.diylc.core.annotations.ComponentDescriptor; -import org.diylc.core.annotations.EditableProperty; -import org.diylc.core.measures.Size; -import org.diylc.core.measures.SizeUnit; -import org.diylc.utils.Constants; +import java.awt.AlphaComposite; +import java.awt.Color; +import java.awt.Composite; +import java.awt.Graphics2D; +import java.awt.Point; +import java.awt.Rectangle; +import java.awt.Shape; +import java.awt.geom.AffineTransform; +import java.awt.geom.Area; +import java.awt.geom.Ellipse2D; +import java.awt.geom.RoundRectangle2D; + +import org.diylc.appframework.miscutils.ConfigurationManager; +import org.diylc.common.HorizontalAlignment; +import org.diylc.common.IPlugInPort; +import org.diylc.common.ObjectCache; +import org.diylc.common.Orientation; +import org.diylc.common.VerticalAlignment; +import org.diylc.components.AbstractMultiPartComponent; +import org.diylc.components.transform.CliffJackTransformer; +import org.diylc.core.ComponentState; +import org.diylc.core.IDIYComponent; +import org.diylc.core.IDrawingObserver; +import org.diylc.core.Project; +import org.diylc.core.Theme; +import org.diylc.core.VisibilityPolicy; +import org.diylc.core.annotations.ComponentDescriptor; +import org.diylc.core.annotations.EditableProperty; +import org.diylc.core.measures.Size; +import org.diylc.core.measures.SizeUnit; +import org.diylc.utils.Constants; @ComponentDescriptor(name = "Cliff 1/4\" Jack", category = "Electro-Mechanical", author = "Branislav Stojkovic", description = "Cliff-style closed panel mount 1/4\" phono jack", stretchable = false, zOrder = IDIYComponent.COMPONENT, instanceNamePrefix = "J", autoEdit = false, transformer = CliffJackTransformer.class) -public class CliffJack1_4 extends AbstractTransparentComponent { +public class CliffJack1_4 extends AbstractMultiPartComponent { private static final long serialVersionUID = 1L; @@ -74,7 +74,7 @@ public class CliffJack1_4 extends AbstractTransparentComponent { private Point[] controlPoints = new Point[] {new Point(0, 0)}; private JackType type = JackType.MONO; private Orientation orientation = Orientation.DEFAULT; - transient private Shape[] body; + transient private Area[] body; private String value = ""; public CliffJack1_4() { @@ -129,29 +129,27 @@ public class CliffJack1_4 extends AbstractTransparentComponent { return angle; } - public Shape[] getBody() { + public Area[] getBody() { if (body == null) { - body = new Shape[5]; + body = new Area[5]; // Create body. int bodyLength = (int) BODY_LENGTH.convertToPixels(); int bodyWidth = (int) BODY_WIDTH.convertToPixels(); int centerX = (controlPoints[0].x + controlPoints[3].x) / 2; int centerY = (controlPoints[0].y + controlPoints[3].y) / 2; - body[0] = new Rectangle(centerX - bodyLength / 2, centerY - bodyWidth / 2, bodyLength, bodyWidth); + body[0] = new Area(new Rectangle(centerX - bodyLength / 2, centerY - bodyWidth / 2, bodyLength, bodyWidth)); int tailLength = (int) TAIL_LENGTH.convertToPixels(); - body[1] = - new RoundRectangle2D.Double(centerX - bodyLength / 2 - tailLength, centerY - bodyWidth / 4, tailLength * 2, - bodyWidth / 2, tailLength, tailLength); + body[1] = new Area(new RoundRectangle2D.Double(centerX - bodyLength / 2 - tailLength, centerY - bodyWidth / 4, tailLength * 2, + bodyWidth / 2, tailLength, tailLength)); Area tailArea = new Area(body[1]); tailArea.subtract(new Area(body[0])); body[1] = tailArea; - body[2] = new Rectangle(centerX + bodyLength / 2, centerY - bodyWidth / 4, tailLength, bodyWidth / 2); + body[2] = new Area(new Rectangle(centerX + bodyLength / 2, centerY - bodyWidth / 4, tailLength, bodyWidth / 2)); - body[3] = - new Rectangle(centerX + bodyLength / 2 + tailLength, centerY - bodyWidth / 4, tailLength, bodyWidth / 2); + body[3] = new Area(new Rectangle(centerX + bodyLength / 2 + tailLength, centerY - bodyWidth / 4, tailLength, bodyWidth / 2)); tailArea = new Area(body[3]); int radius = bodyLength / 2 + tailLength * 2; tailArea.intersect(new Area(new Ellipse2D.Double(centerX - radius, centerY - radius, radius * 2, radius * 2))); @@ -215,13 +213,9 @@ public class CliffJack1_4 extends AbstractTransparentComponent { Color finalBorderColor; Theme theme = (Theme) ConfigurationManager.getInstance().readObject(IPlugInPort.THEME_KEY, Constants.DEFAULT_THEME); if (outlineMode) { - finalBorderColor = - componentState == ComponentState.SELECTED || componentState == ComponentState.DRAGGING ? SELECTION_COLOR - : theme.getOutlineColor(); + finalBorderColor = theme.getOutlineColor(); } else { - finalBorderColor = - componentState == ComponentState.SELECTED || componentState == ComponentState.DRAGGING ? SELECTION_COLOR - : BORDER_COLOR; + finalBorderColor = BORDER_COLOR; } g2d.setColor(finalBorderColor); @@ -252,7 +246,9 @@ public class CliffJack1_4 extends AbstractTransparentComponent { g2d.setFont(project.getFont()); int centerX = (controlPoints[0].x + controlPoints[3].x) / 2; int centerY = (controlPoints[0].y + controlPoints[3].y) / 2; - drawCenteredText(g2d, name, centerX, centerY, HorizontalAlignment.CENTER, VerticalAlignment.CENTER); + drawCenteredText(g2d, name, centerX, centerY, HorizontalAlignment.CENTER, VerticalAlignment.CENTER); + + drawSelectionOutline(g2d, componentState, outlineMode, project, drawingObserver); } @Override 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 4168be66..3a0d7805 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 @@ -21,42 +21,42 @@ */ package org.diylc.components.electromechanical; -import java.awt.AlphaComposite; -import java.awt.Color; -import java.awt.Composite; -import java.awt.Graphics2D; -import java.awt.Point; -import java.awt.Rectangle; -import java.awt.Shape; -import java.awt.geom.AffineTransform; -import java.awt.geom.Area; -import java.awt.geom.Ellipse2D; -import java.awt.geom.GeneralPath; - -import org.diylc.appframework.miscutils.ConfigurationManager; -import org.diylc.common.HorizontalAlignment; -import org.diylc.common.IPlugInPort; -import org.diylc.common.ObjectCache; -import org.diylc.common.Orientation; -import org.diylc.common.VerticalAlignment; -import org.diylc.components.AbstractTransparentComponent; -import org.diylc.components.transform.ClosedJackTransformer; -import org.diylc.core.ComponentState; -import org.diylc.core.IDIYComponent; -import org.diylc.core.IDrawingObserver; -import org.diylc.core.Project; -import org.diylc.core.Theme; -import org.diylc.core.VisibilityPolicy; -import org.diylc.core.annotations.ComponentDescriptor; -import org.diylc.core.annotations.EditableProperty; -import org.diylc.core.measures.Size; -import org.diylc.core.measures.SizeUnit; -import org.diylc.utils.Constants; +import java.awt.AlphaComposite; +import java.awt.Color; +import java.awt.Composite; +import java.awt.Graphics2D; +import java.awt.Point; +import java.awt.Rectangle; +import java.awt.Shape; +import java.awt.geom.AffineTransform; +import java.awt.geom.Area; +import java.awt.geom.Ellipse2D; +import java.awt.geom.GeneralPath; + +import org.diylc.appframework.miscutils.ConfigurationManager; +import org.diylc.common.HorizontalAlignment; +import org.diylc.common.IPlugInPort; +import org.diylc.common.ObjectCache; +import org.diylc.common.Orientation; +import org.diylc.common.VerticalAlignment; +import org.diylc.components.AbstractMultiPartComponent; +import org.diylc.components.transform.ClosedJackTransformer; +import org.diylc.core.ComponentState; +import org.diylc.core.IDIYComponent; +import org.diylc.core.IDrawingObserver; +import org.diylc.core.Project; +import org.diylc.core.Theme; +import org.diylc.core.VisibilityPolicy; +import org.diylc.core.annotations.ComponentDescriptor; +import org.diylc.core.annotations.EditableProperty; +import org.diylc.core.measures.Size; +import org.diylc.core.measures.SizeUnit; +import org.diylc.utils.Constants; @ComponentDescriptor(name = "Closed 1/4\" Jack", category = "Electro-Mechanical", author = "Branislav Stojkovic", description = "Enclosed panel mount 1/4\" phono jack", stretchable = false, zOrder = IDIYComponent.COMPONENT, instanceNamePrefix = "J", autoEdit = false, transformer = ClosedJackTransformer.class) -public class ClosedJack1_4 extends AbstractTransparentComponent { +public class ClosedJack1_4 extends AbstractMultiPartComponent { private static final long serialVersionUID = 1L; @@ -76,7 +76,7 @@ public class ClosedJack1_4 extends AbstractTransparentComponent { private Point[] controlPoints = new Point[] {new Point(0, 0)}; private JackType type = JackType.MONO; private Orientation orientation = Orientation.DEFAULT; - transient private Shape[] body; + transient private Area[] body; private String value = ""; public ClosedJack1_4() { @@ -129,9 +129,9 @@ public class ClosedJack1_4 extends AbstractTransparentComponent { return angle; } - public Shape[] getBody() { + public Area[] getBody() { if (body == null) { - body = new Shape[5]; + body = new Area[5]; // Create body. int x = controlPoints[0].x; @@ -170,7 +170,7 @@ public class ClosedJack1_4 extends AbstractTransparentComponent { } Area pathArea = new Area(path); pathArea.intersect(shaft); - body[2] = path; + body[2] = new Area(path); // Create lugs. Area lugs = new Area(); @@ -234,13 +234,9 @@ public class ClosedJack1_4 extends AbstractTransparentComponent { if (outlineMode) { Theme theme = (Theme) ConfigurationManager.getInstance().readObject(IPlugInPort.THEME_KEY, Constants.DEFAULT_THEME); - finalBorderColor = - componentState == ComponentState.SELECTED || componentState == ComponentState.DRAGGING ? SELECTION_COLOR - : theme.getOutlineColor(); + finalBorderColor = theme.getOutlineColor(); } else { - finalBorderColor = - componentState == ComponentState.SELECTED || componentState == ComponentState.DRAGGING ? SELECTION_COLOR - : BORDER_COLOR; + finalBorderColor = BORDER_COLOR; } g2d.setColor(finalBorderColor); @@ -273,7 +269,9 @@ public class ClosedJack1_4 extends AbstractTransparentComponent { Rectangle bounds = body[0].getBounds(); int centerX = bounds.x + bounds.width / 2; int centerY = bounds.y + bounds.height / 2; - drawCenteredText(g2d, name, centerX, centerY, HorizontalAlignment.CENTER, VerticalAlignment.CENTER); + drawCenteredText(g2d, name, centerX, centerY, HorizontalAlignment.CENTER, VerticalAlignment.CENTER); + + drawSelectionOutline(g2d, componentState, outlineMode, project, drawingObserver); } @Override diff --git a/diylc/diylc-library/src/org/diylc/components/electromechanical/FuseHolderPanel.java b/diylc/diylc-library/src/org/diylc/components/electromechanical/FuseHolderPanel.java index 104b57e4..04826b9c 100644 --- a/diylc/diylc-library/src/org/diylc/components/electromechanical/FuseHolderPanel.java +++ b/diylc/diylc-library/src/org/diylc/components/electromechanical/FuseHolderPanel.java @@ -38,7 +38,7 @@ import org.diylc.common.Display; import org.diylc.common.IPlugInPort; import org.diylc.common.ObjectCache; import org.diylc.common.OrientationHV; -import org.diylc.components.AbstractTransparentComponent; +import org.diylc.components.AbstractMultiPartComponent; import org.diylc.core.ComponentState; import org.diylc.core.IDIYComponent; import org.diylc.core.IDrawingObserver; @@ -54,7 +54,7 @@ import org.diylc.utils.Constants; @ComponentDescriptor(name = "Fuse Holder (Panel)", category = "Electro-Mechanical", author = "Branislav Stojkovic", description = "Panel mounted fuse holder", stretchable = false, zOrder = IDIYComponent.COMPONENT, instanceNamePrefix = "FH", autoEdit = false) -public class FuseHolderPanel extends AbstractTransparentComponent { +public class FuseHolderPanel extends AbstractMultiPartComponent { private static final long serialVersionUID = 1L; @@ -188,13 +188,9 @@ public class FuseHolderPanel extends AbstractTransparentComponent { g2d.setStroke(ObjectCache.getInstance().fetchBasicStroke(1)); Color finalBorderColor; if (outlineMode) { - finalBorderColor = - componentState == ComponentState.SELECTED || componentState == ComponentState.DRAGGING ? SELECTION_COLOR - : theme.getOutlineColor(); + finalBorderColor = theme.getOutlineColor(); } else { - finalBorderColor = - componentState == ComponentState.SELECTED || componentState == ComponentState.DRAGGING ? SELECTION_COLOR - : getBorderColor(); + finalBorderColor = getBorderColor(); } g2d.setColor(finalBorderColor); for (Area a : body) @@ -254,9 +250,12 @@ public class FuseHolderPanel extends AbstractTransparentComponent { Rectangle bounds = body[0].getBounds(); int x = bounds.x + (bounds.width - textWidth) / 2; int y = bounds.y + (bounds.height - textHeight) / 2 + fontMetrics.getAscent(); - g2d.drawString(label, x, y); + g2d.drawString(label, x, y); + + drawSelectionOutline(g2d, componentState, outlineMode, project, drawingObserver); } + @Override public Area[] getBody() { if (body == null) { Point firstPoint = controlPoints[0]; diff --git a/diylc/diylc-library/src/org/diylc/components/electromechanical/IECSocket.java b/diylc/diylc-library/src/org/diylc/components/electromechanical/IECSocket.java index c40aac3f..09309741 100644 --- a/diylc/diylc-library/src/org/diylc/components/electromechanical/IECSocket.java +++ b/diylc/diylc-library/src/org/diylc/components/electromechanical/IECSocket.java @@ -35,7 +35,7 @@ import org.diylc.appframework.miscutils.ConfigurationManager; import org.diylc.common.IPlugInPort; import org.diylc.common.ObjectCache; import org.diylc.common.Orientation; -import org.diylc.components.AbstractTransparentComponent; +import org.diylc.components.AbstractMultiPartComponent; import org.diylc.components.RoundedPolygon; import org.diylc.core.ComponentState; import org.diylc.core.IDIYComponent; @@ -52,7 +52,7 @@ import org.diylc.utils.Constants; @ComponentDescriptor(name = "IEC Socket", category = "Electro-Mechanical", author = "Branislav Stojkovic", description = "Panel mounted IEC power socket", stretchable = false, zOrder = IDIYComponent.COMPONENT, instanceNamePrefix = "IEC", autoEdit = false) -public class IECSocket extends AbstractTransparentComponent { +public class IECSocket extends AbstractMultiPartComponent { private static final long serialVersionUID = 1L; @@ -209,13 +209,9 @@ public class IECSocket extends AbstractTransparentComponent { g2d.setStroke(ObjectCache.getInstance().fetchBasicStroke(1)); Color finalBorderColor; if (outlineMode) { - finalBorderColor = - componentState == ComponentState.SELECTED || componentState == ComponentState.DRAGGING ? SELECTION_COLOR - : theme.getOutlineColor(); + finalBorderColor = theme.getOutlineColor(); } else { - finalBorderColor = - componentState == ComponentState.SELECTED || componentState == ComponentState.DRAGGING ? SELECTION_COLOR - : getBorderColor(); + finalBorderColor = getBorderColor(); } g2d.setColor(finalBorderColor); for (Area a : body) @@ -244,7 +240,9 @@ public class IECSocket extends AbstractTransparentComponent { g2d.setColor(METAL_COLOR); g2d.fillRect(p.x - lugWidth / 2, p.y - lugHeight / 2, lugWidth, lugHeight); } - } + } + + drawSelectionOutline(g2d, componentState, outlineMode, project, drawingObserver); } @SuppressWarnings("incomplete-switch") diff --git a/diylc/diylc-library/src/org/diylc/components/electromechanical/OpenJack1_4.java b/diylc/diylc-library/src/org/diylc/components/electromechanical/OpenJack1_4.java index 762ef6bc..148bed71 100644 --- a/diylc/diylc-library/src/org/diylc/components/electromechanical/OpenJack1_4.java +++ b/diylc/diylc-library/src/org/diylc/components/electromechanical/OpenJack1_4.java @@ -21,40 +21,40 @@ */ package org.diylc.components.electromechanical; -import java.awt.AlphaComposite; -import java.awt.Color; -import java.awt.Composite; -import java.awt.Graphics2D; -import java.awt.Point; -import java.awt.Shape; -import java.awt.geom.AffineTransform; -import java.awt.geom.Area; -import java.awt.geom.Ellipse2D; -import java.awt.geom.RoundRectangle2D; - -import org.diylc.appframework.miscutils.ConfigurationManager; -import org.diylc.common.HorizontalAlignment; -import org.diylc.common.IPlugInPort; -import org.diylc.common.ObjectCache; -import org.diylc.common.Orientation; -import org.diylc.common.VerticalAlignment; -import org.diylc.components.AbstractTransparentComponent; -import org.diylc.core.ComponentState; -import org.diylc.core.IDIYComponent; -import org.diylc.core.IDrawingObserver; -import org.diylc.core.Project; -import org.diylc.core.Theme; -import org.diylc.core.VisibilityPolicy; -import org.diylc.core.annotations.ComponentDescriptor; -import org.diylc.core.annotations.EditableProperty; -import org.diylc.core.measures.Size; -import org.diylc.core.measures.SizeUnit; -import org.diylc.utils.Constants; +import java.awt.AlphaComposite; +import java.awt.Color; +import java.awt.Composite; +import java.awt.Graphics2D; +import java.awt.Point; +import java.awt.Shape; +import java.awt.geom.AffineTransform; +import java.awt.geom.Area; +import java.awt.geom.Ellipse2D; +import java.awt.geom.RoundRectangle2D; + +import org.diylc.appframework.miscutils.ConfigurationManager; +import org.diylc.common.HorizontalAlignment; +import org.diylc.common.IPlugInPort; +import org.diylc.common.ObjectCache; +import org.diylc.common.Orientation; +import org.diylc.common.VerticalAlignment; +import org.diylc.components.AbstractMultiPartComponent; +import org.diylc.core.ComponentState; +import org.diylc.core.IDIYComponent; +import org.diylc.core.IDrawingObserver; +import org.diylc.core.Project; +import org.diylc.core.Theme; +import org.diylc.core.VisibilityPolicy; +import org.diylc.core.annotations.ComponentDescriptor; +import org.diylc.core.annotations.EditableProperty; +import org.diylc.core.measures.Size; +import org.diylc.core.measures.SizeUnit; +import org.diylc.utils.Constants; @ComponentDescriptor(name = "Open 1/4\" Jack", category = "Electro-Mechanical", author = "Branislav Stojkovic", description = "Switchcraft-style open panel mount 1/4\" phono jack, stereo and mono", stretchable = false, zOrder = IDIYComponent.COMPONENT, instanceNamePrefix = "J") -public class OpenJack1_4 extends AbstractTransparentComponent { +public class OpenJack1_4 extends AbstractMultiPartComponent { private static final long serialVersionUID = 1L; @@ -71,7 +71,7 @@ public class OpenJack1_4 extends AbstractTransparentComponent { private String value = ""; private Point[] controlPoints = new Point[] {new Point(0, 0), new Point(0, 0), new Point(0, 0)}; - transient Shape[] body; + transient Area[] body; private Orientation orientation = Orientation.DEFAULT; private JackType type = JackType.MONO; private boolean showLabels = true; @@ -89,14 +89,14 @@ public class OpenJack1_4 extends AbstractTransparentComponent { g2d.setStroke(ObjectCache.getInstance().fetchBasicStroke(1)); // if (componentState != ComponentState.DRAGGING) { - Composite oldComposite = g2d.getComposite(); - if (alpha < MAX_ALPHA) { - g2d.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 1f * alpha / MAX_ALPHA)); - } - g2d.setColor(outlineMode ? Constants.TRANSPARENT_COLOR : WAFER_COLOR); - g2d.fill(body[0]); + Composite oldComposite = g2d.getComposite(); + if (alpha < MAX_ALPHA) { + g2d.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 1f * alpha / MAX_ALPHA)); + } + g2d.setColor(outlineMode ? Constants.TRANSPARENT_COLOR : WAFER_COLOR); + g2d.fill(body[0]); - g2d.setComposite(oldComposite); + g2d.setComposite(oldComposite); // } Color finalBorderColor; @@ -104,13 +104,9 @@ public class OpenJack1_4 extends AbstractTransparentComponent { if (outlineMode) { Theme theme = (Theme) ConfigurationManager.getInstance().readObject(IPlugInPort.THEME_KEY, Constants.DEFAULT_THEME); - finalBorderColor = - componentState == ComponentState.SELECTED || componentState == ComponentState.DRAGGING ? SELECTION_COLOR - : theme.getOutlineColor(); + finalBorderColor = theme.getOutlineColor(); } else { - finalBorderColor = - componentState == ComponentState.SELECTED || componentState == ComponentState.DRAGGING ? SELECTION_COLOR - : WAFER_COLOR.darker(); + finalBorderColor = WAFER_COLOR.darker(); } g2d.setColor(finalBorderColor); @@ -136,13 +132,9 @@ public class OpenJack1_4 extends AbstractTransparentComponent { if (outlineMode) { Theme theme = (Theme) ConfigurationManager.getInstance().readObject(IPlugInPort.THEME_KEY, Constants.DEFAULT_THEME); - finalBorderColor = - componentState == ComponentState.SELECTED || componentState == ComponentState.DRAGGING ? SELECTION_COLOR - : theme.getOutlineColor(); + finalBorderColor = theme.getOutlineColor(); } else { - finalBorderColor = - componentState == ComponentState.SELECTED || componentState == ComponentState.DRAGGING ? SELECTION_COLOR - : BASE_COLOR.darker(); + finalBorderColor = BASE_COLOR.darker(); } g2d.setColor(finalBorderColor); @@ -191,13 +183,15 @@ public class OpenJack1_4 extends AbstractTransparentComponent { drawCenteredText(g2d, "S", sleeveLabel.x, sleeveLabel.y, HorizontalAlignment.CENTER, VerticalAlignment.CENTER); if (getType() == JackType.STEREO) drawCenteredText(g2d, "R", ringLabel.x, ringLabel.y, HorizontalAlignment.CENTER, VerticalAlignment.CENTER); - } + } + + drawSelectionOutline(g2d, componentState, outlineMode, project, drawingObserver); } @SuppressWarnings("incomplete-switch") - public Shape[] getBody() { + public Area[] getBody() { if (body == null) { - body = new Shape[4]; + body = new Area[4]; int x = controlPoints[0].x; int y = controlPoints[0].y; diff --git a/diylc/diylc-library/src/org/diylc/components/electromechanical/PilotLampHolder.java b/diylc/diylc-library/src/org/diylc/components/electromechanical/PilotLampHolder.java index eb14a00e..dd4a6faa 100644 --- a/diylc/diylc-library/src/org/diylc/components/electromechanical/PilotLampHolder.java +++ b/diylc/diylc-library/src/org/diylc/components/electromechanical/PilotLampHolder.java @@ -26,24 +26,19 @@ import java.awt.Color; import java.awt.Composite; import java.awt.Graphics2D; import java.awt.Point; -import java.awt.Polygon; -import java.awt.RadialGradientPaint; import java.awt.Shape; import java.awt.geom.AffineTransform; import java.awt.geom.Area; import java.awt.geom.Ellipse2D; -import java.awt.geom.Line2D; import java.awt.geom.Path2D; import java.awt.geom.Rectangle2D; import java.awt.geom.RoundRectangle2D; -import java.util.ArrayList; -import java.util.List; import org.diylc.appframework.miscutils.ConfigurationManager; import org.diylc.common.IPlugInPort; import org.diylc.common.ObjectCache; import org.diylc.common.Orientation; -import org.diylc.components.AbstractTransparentComponent; +import org.diylc.components.AbstractMultiPartComponent; import org.diylc.core.ComponentState; import org.diylc.core.IDIYComponent; import org.diylc.core.IDrawingObserver; @@ -59,7 +54,7 @@ import org.diylc.utils.Constants; @ComponentDescriptor(name = "Pilot Lamp Holder", category = "Electro-Mechanical", author = "Branislav Stojkovic", description = "Fender-style pilot bulb holder for T2 and T-3 ¼ miniature bayonet lamps", stretchable = false, zOrder = IDIYComponent.COMPONENT, instanceNamePrefix = "PL") -public class PilotLampHolder extends AbstractTransparentComponent { +public class PilotLampHolder extends AbstractMultiPartComponent { private static final long serialVersionUID = 1L; @@ -110,13 +105,9 @@ public class PilotLampHolder extends AbstractTransparentComponent { if (outlineMode) { Theme theme = (Theme) ConfigurationManager.getInstance().readObject(IPlugInPort.THEME_KEY, Constants.DEFAULT_THEME); - finalBorderColor = - componentState == ComponentState.SELECTED || componentState == ComponentState.DRAGGING ? SELECTION_COLOR - : theme.getOutlineColor(); + finalBorderColor = theme.getOutlineColor(); } else { - finalBorderColor = - componentState == ComponentState.SELECTED || componentState == ComponentState.DRAGGING ? SELECTION_COLOR - : WAFER_COLOR.darker(); + finalBorderColor = WAFER_COLOR.darker(); } g2d.setColor(finalBorderColor); @@ -146,13 +137,9 @@ public class PilotLampHolder extends AbstractTransparentComponent { if (outlineMode) { Theme theme = (Theme) ConfigurationManager.getInstance().readObject(IPlugInPort.THEME_KEY, Constants.DEFAULT_THEME); - finalBorderColor = - componentState == ComponentState.SELECTED || componentState == ComponentState.DRAGGING ? SELECTION_COLOR - : theme.getOutlineColor(); + finalBorderColor = theme.getOutlineColor(); } else { - finalBorderColor = - componentState == ComponentState.SELECTED || componentState == ComponentState.DRAGGING ? SELECTION_COLOR - : BASE_COLOR.darker(); + finalBorderColor = BASE_COLOR.darker(); } g2d.setColor(finalBorderColor); @@ -162,7 +149,9 @@ public class PilotLampHolder extends AbstractTransparentComponent { g2d.draw(body[5]); g2d.draw(body[1]); - g2d.draw(body[2]); + g2d.draw(body[2]); + + drawSelectionOutline(g2d, componentState, outlineMode, project, drawingObserver); } @SuppressWarnings("incomplete-switch") diff --git a/diylc/diylc-library/src/org/diylc/components/electromechanical/PlasticDCJack.java b/diylc/diylc-library/src/org/diylc/components/electromechanical/PlasticDCJack.java index a1120443..dc853e83 100644 --- a/diylc/diylc-library/src/org/diylc/components/electromechanical/PlasticDCJack.java +++ b/diylc/diylc-library/src/org/diylc/components/electromechanical/PlasticDCJack.java @@ -21,38 +21,38 @@ */ package org.diylc.components.electromechanical; -import java.awt.AlphaComposite; -import java.awt.Color; -import java.awt.Composite; -import java.awt.Graphics2D; -import java.awt.Point; -import java.awt.Rectangle; -import java.awt.Shape; -import java.awt.geom.Area; -import java.awt.geom.Ellipse2D; - -import org.diylc.appframework.miscutils.ConfigurationManager; -import org.diylc.common.HorizontalAlignment; -import org.diylc.common.IPlugInPort; -import org.diylc.common.ObjectCache; -import org.diylc.common.VerticalAlignment; -import org.diylc.components.AbstractTransparentComponent; -import org.diylc.core.ComponentState; -import org.diylc.core.IDIYComponent; -import org.diylc.core.IDrawingObserver; -import org.diylc.core.Project; -import org.diylc.core.Theme; -import org.diylc.core.VisibilityPolicy; -import org.diylc.core.annotations.ComponentDescriptor; -import org.diylc.core.annotations.EditableProperty; -import org.diylc.core.measures.Size; -import org.diylc.core.measures.SizeUnit; -import org.diylc.utils.Constants; +import java.awt.AlphaComposite; +import java.awt.Color; +import java.awt.Composite; +import java.awt.Graphics2D; +import java.awt.Point; +import java.awt.Rectangle; +import java.awt.Shape; +import java.awt.geom.Area; +import java.awt.geom.Ellipse2D; + +import org.diylc.appframework.miscutils.ConfigurationManager; +import org.diylc.common.HorizontalAlignment; +import org.diylc.common.IPlugInPort; +import org.diylc.common.ObjectCache; +import org.diylc.common.VerticalAlignment; +import org.diylc.components.AbstractMultiPartComponent; +import org.diylc.core.ComponentState; +import org.diylc.core.IDIYComponent; +import org.diylc.core.IDrawingObserver; +import org.diylc.core.Project; +import org.diylc.core.Theme; +import org.diylc.core.VisibilityPolicy; +import org.diylc.core.annotations.ComponentDescriptor; +import org.diylc.core.annotations.EditableProperty; +import org.diylc.core.measures.Size; +import org.diylc.core.measures.SizeUnit; +import org.diylc.utils.Constants; @ComponentDescriptor(name = "Plastic DC Jack", category = "Electro-Mechanical", author = "Branislav Stojkovic", description = "Panel mount plastic DC jack", stretchable = false, zOrder = IDIYComponent.COMPONENT, instanceNamePrefix = "J", autoEdit = false) -public class PlasticDCJack extends AbstractTransparentComponent { +public class PlasticDCJack extends AbstractMultiPartComponent { private static final long serialVersionUID = 1L; @@ -68,7 +68,7 @@ public class PlasticDCJack extends AbstractTransparentComponent { private Point[] controlPoints = new Point[] {new Point(0, 0), new Point(0, 0), new Point(0, 0)}; private String value = ""; private DCPolarity polarity = DCPolarity.CENTER_NEGATIVE; - transient private Shape[] body; + transient private Area[] body; public PlasticDCJack() { updateControlPoints(); @@ -85,19 +85,20 @@ public class PlasticDCJack extends AbstractTransparentComponent { controlPoints[1] = new Point(x + spacing, y + spacing); controlPoints[2] = new Point(x - spacing, y + spacing * 2); } - - public Shape[] getBody() { + + @Override + public Area[] getBody() { if (body == null) { - body = new Shape[4]; + body = new Area[4]; int x = controlPoints[0].x; int y = controlPoints[0].y; int spacing = (int) SPACING.convertToPixels(); int diameter = getClosestOdd(DIAMETER.convertToPixels()); - body[0] = new Ellipse2D.Double(x - diameter / 2, y + spacing - diameter / 2, diameter, diameter); + body[0] = new Area(new Ellipse2D.Double(x - diameter / 2, y + spacing - diameter / 2, diameter, diameter)); int rectWidth = (int) (diameter / Math.sqrt(2)) - 2; - body[1] = new Rectangle(x - rectWidth / 2, y + spacing - rectWidth / 2, rectWidth, rectWidth); + body[1] = new Area(new Rectangle(x - rectWidth / 2, y + spacing - rectWidth / 2, rectWidth, rectWidth)); int lugWidth = getClosestOdd(LUG_WIDTH.convertToPixels()); int lugThickness = getClosestOdd(LUG_THICKNESS.convertToPixels()); @@ -134,17 +135,17 @@ public class PlasticDCJack extends AbstractTransparentComponent { g2d.setStroke(ObjectCache.getInstance().fetchBasicStroke(1)); // if (componentState != ComponentState.DRAGGING) { - Composite oldComposite = g2d.getComposite(); - if (alpha < MAX_ALPHA) { - g2d.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 1f * alpha / MAX_ALPHA)); - } - g2d.setColor(outlineMode ? Constants.TRANSPARENT_COLOR : BODY_COLOR); - g2d.fill(body[0]); - if (!outlineMode) { - g2d.setColor(PHENOLIC_COLOR); - g2d.fill(body[1]); - } - g2d.setComposite(oldComposite); + Composite oldComposite = g2d.getComposite(); + if (alpha < MAX_ALPHA) { + g2d.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 1f * alpha / MAX_ALPHA)); + } + g2d.setColor(outlineMode ? Constants.TRANSPARENT_COLOR : BODY_COLOR); + g2d.fill(body[0]); + if (!outlineMode) { + g2d.setColor(PHENOLIC_COLOR); + g2d.fill(body[1]); + } + g2d.setComposite(oldComposite); // } Theme theme = (Theme) ConfigurationManager.getInstance().readObject(IPlugInPort.THEME_KEY, Constants.DEFAULT_THEME); @@ -185,7 +186,9 @@ public class PlasticDCJack extends AbstractTransparentComponent { controlPoints[0].y - spacing * 7 / 16, HorizontalAlignment.CENTER, VerticalAlignment.CENTER); drawCenteredText(g2d, getPolarity() == DCPolarity.CENTER_NEGATIVE ? "_" : "+", controlPoints[2].x, controlPoints[2].y - spacing * 3 / 4, HorizontalAlignment.CENTER, VerticalAlignment.CENTER); - } + } + + drawSelectionOutline(g2d, componentState, outlineMode, project, drawingObserver); } @Override diff --git a/diylc/diylc-library/src/org/diylc/components/passive/AudioTransformer.java b/diylc/diylc-library/src/org/diylc/components/passive/AudioTransformer.java index 597dccf8..a722d253 100644 --- a/diylc/diylc-library/src/org/diylc/components/passive/AudioTransformer.java +++ b/diylc/diylc-library/src/org/diylc/components/passive/AudioTransformer.java @@ -40,7 +40,7 @@ import org.diylc.common.IPlugInPort; import org.diylc.common.ObjectCache; import org.diylc.common.Orientation; import org.diylc.common.VerticalAlignment; -import org.diylc.components.AbstractTransparentComponent; +import org.diylc.components.AbstractMultiPartComponent; import org.diylc.components.transform.DIL_ICTransformer; import org.diylc.core.ComponentState; import org.diylc.core.IDIYComponent; @@ -59,7 +59,7 @@ import org.diylc.utils.Constants; @ComponentDescriptor(name = "Audio Transformer", author = "Branislav Stojkovic", category = "Passive", instanceNamePrefix = "TR", description = "Small signal audio transformer with EI core", stretchable = false, zOrder = IDIYComponent.COMPONENT, keywordPolicy = KeywordPolicy.SHOW_VALUE, transformer = DIL_ICTransformer.class) -public class AudioTransformer extends AbstractTransparentComponent { +public class AudioTransformer extends AbstractMultiPartComponent { private static final long serialVersionUID = 1L; @@ -205,6 +205,7 @@ public class AudioTransformer extends AbstractTransparentComponent { } } + @Override public Area[] getBody() { if (body == null) { body = new Area[2]; @@ -287,13 +288,9 @@ public class AudioTransformer extends AbstractTransparentComponent { if (outlineMode) { Theme theme = (Theme) ConfigurationManager.getInstance().readObject(IPlugInPort.THEME_KEY, Constants.DEFAULT_THEME); - finalBorderColor = - componentState == ComponentState.SELECTED || componentState == ComponentState.DRAGGING ? SELECTION_COLOR - : theme.getOutlineColor(); + finalBorderColor = theme.getOutlineColor(); } else { - finalBorderColor = - componentState == ComponentState.SELECTED || componentState == ComponentState.DRAGGING ? SELECTION_COLOR - : getCoilBorderColor(); + finalBorderColor = getCoilBorderColor(); } g2d.setColor(finalBorderColor); g2d.draw(coilArea); @@ -303,11 +300,9 @@ public class AudioTransformer extends AbstractTransparentComponent { g2d.fill(coreArea); g2d.setComposite(oldComposite); - if (!outlineMode) { - finalBorderColor = - componentState == ComponentState.SELECTED || componentState == ComponentState.DRAGGING ? SELECTION_COLOR - : getCoreBorderColor(); - } + if (!outlineMode) + finalBorderColor = getCoreBorderColor(); + g2d.setColor(finalBorderColor); g2d.draw(coreArea); @@ -382,7 +377,9 @@ public class AudioTransformer extends AbstractTransparentComponent { g2d.setTransform(oldTransform); } - } + } + + drawSelectionOutline(g2d, componentState, outlineMode, project, drawingObserver); } @Override diff --git a/diylc/diylc-swing/library/main.jar b/diylc/diylc-swing/library/main.jar index bb6ffea9f34264482b52393fe6341167e4b2ef6d..450c497283f5407537346a021407e0882187216e 100644 GIT binary patch delta 58957 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 DguVt? delta 58497 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¥>$I}bG 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 diff --git a/diylc/diylc-swing/update.xml b/diylc/diylc-swing/update.xml index 7aff8795..ed91993c 100644 --- a/diylc/diylc-swing/update.xml +++ b/diylc/diylc-swing/update.xml @@ -2316,6 +2316,22 @@ https://github.com/bancika/diy-layout-creator/releases + + + + 3 + 51 + 0 + + 2019-01-23 00:00:00.000 CET + + + + IMPROVEMENT + Better selection rendering for a few components, mostly electro-mechanical + + + https://github.com/bancika/diy-layout-creator/releases