From 0fa15650c3799ace04d21ef1b8c4a4cf8ed7a278 Mon Sep 17 00:00:00 2001 From: bancika Date: Fri, 18 Sep 2020 15:58:18 +0200 Subject: [PATCH] fixed serialization issues --- .../src/org/diylc/serialization/ProjectFileManager.java | 2 ++ .../src/org/diylc/components/boards/AbstractBoard.java | 4 ++-- .../src/org/diylc/components/connectivity/CutLine.java | 2 +- .../src/org/diylc/components/connectivity/Dot.java | 2 +- .../src/org/diylc/components/connectivity/Eyelet.java | 2 +- .../src/org/diylc/components/connectivity/SolderPad.java | 2 +- .../src/org/diylc/components/connectivity/TraceCut.java | 2 +- .../src/org/diylc/components/connectivity/Turret.java | 2 +- diylc/diylc-library/src/org/diylc/components/misc/BOM.java | 2 +- .../src/org/diylc/components/misc/GroundSymbol.java | 2 +- diylc/diylc-library/src/org/diylc/components/misc/Image.java | 4 ++-- diylc/diylc-library/src/org/diylc/components/misc/Label.java | 2 +- .../diylc-library/src/org/diylc/components/misc/PCBText.java | 2 +- .../src/org/diylc/components/misc/WrapLabel.java | 4 ++-- .../src/org/diylc/components/shapes/AbstractShape.java | 4 ++-- .../src/org/diylc/swing/plugins/tree/TreeNode.java | 2 ++ 16 files changed, 22 insertions(+), 18 deletions(-) diff --git a/diylc/diylc-core/src/org/diylc/serialization/ProjectFileManager.java b/diylc/diylc-core/src/org/diylc/serialization/ProjectFileManager.java index a4df56d4..80024646 100644 --- a/diylc/diylc-core/src/org/diylc/serialization/ProjectFileManager.java +++ b/diylc/diylc-core/src/org/diylc/serialization/ProjectFileManager.java @@ -98,6 +98,7 @@ public class ProjectFileManager { }; xStream.autodetectAnnotations(true); xStream.alias("point", java.awt.geom.Point2D.class); + xStream.alias("point", java.awt.geom.Point2D.Double.class); xStream.alias("font", java.awt.Font.class); xStream.alias("project", Project.class); xStream.aliasPackage("diylc", "org.diylc.components"); @@ -108,6 +109,7 @@ public class ProjectFileManager { xStream.registerConverter(new AreaConverter()); xStream.addImmutableType(Color.class); xStream.addImmutableType(java.awt.geom.Point2D.class); + xStream.addImmutableType(java.awt.geom.Point2D.Double.class); xStream.addImmutableType(org.diylc.core.measures.Voltage.class); xStream.addImmutableType(org.diylc.core.measures.Resistance.class); xStream.addImmutableType(org.diylc.core.measures.Capacitance.class); diff --git a/diylc/diylc-library/src/org/diylc/components/boards/AbstractBoard.java b/diylc/diylc-library/src/org/diylc/components/boards/AbstractBoard.java index ad5cfc0f..461fbcb1 100644 --- a/diylc/diylc-library/src/org/diylc/components/boards/AbstractBoard.java +++ b/diylc/diylc-library/src/org/diylc/components/boards/AbstractBoard.java @@ -59,8 +59,8 @@ public abstract class AbstractBoard extends AbstractTransparentComponent protected Point2D[] controlPoints = new Point2D[] {new Point2D.Double(0, 0), new Point2D.Double(DEFAULT_WIDTH.convertToPixels(), DEFAULT_HEIGHT.convertToPixels())}; // top-left and bottom-right points - protected Point2D firstPoint = new Point2D.Double(); - protected Point2D secondPoint = new Point2D.Double(); + protected Point2D.Double firstPoint = new Point2D.Double(); + protected Point2D.Double secondPoint = new Point2D.Double(); protected Color boardColor = BOARD_COLOR; protected Color borderColor = BORDER_COLOR; diff --git a/diylc/diylc-library/src/org/diylc/components/connectivity/CutLine.java b/diylc/diylc-library/src/org/diylc/components/connectivity/CutLine.java index a0499f3b..50a19095 100644 --- a/diylc/diylc-library/src/org/diylc/components/connectivity/CutLine.java +++ b/diylc/diylc-library/src/org/diylc/components/connectivity/CutLine.java @@ -52,7 +52,7 @@ public class CutLine extends AbstractTransparentComponent { private Size width = WIDTH; private Size length = LENGTH; private Color color = COLOR; - private Point2D point = new Point2D.Double(0, 0); + private Point2D.Double point = new Point2D.Double(0, 0); private OrientationHV orientation = OrientationHV.VERTICAL; @Override diff --git a/diylc/diylc-library/src/org/diylc/components/connectivity/Dot.java b/diylc/diylc-library/src/org/diylc/components/connectivity/Dot.java index 4ea7c6cb..86c472df 100644 --- a/diylc/diylc-library/src/org/diylc/components/connectivity/Dot.java +++ b/diylc/diylc-library/src/org/diylc/components/connectivity/Dot.java @@ -52,7 +52,7 @@ public class Dot extends AbstractComponent { private Size size = SIZE; private Color color = COLOR; - private Point2D point = new Point2D.Double(0, 0); + private Point2D.Double point = new Point2D.Double(0, 0); @Override public void draw(Graphics2D g2d, ComponentState componentState, boolean outlineMode, Project project, diff --git a/diylc/diylc-library/src/org/diylc/components/connectivity/Eyelet.java b/diylc/diylc-library/src/org/diylc/components/connectivity/Eyelet.java index 7762746e..4964de06 100644 --- a/diylc/diylc-library/src/org/diylc/components/connectivity/Eyelet.java +++ b/diylc/diylc-library/src/org/diylc/components/connectivity/Eyelet.java @@ -60,7 +60,7 @@ public class Eyelet extends AbstractComponent { private Size size = SIZE; private Size holeSize = HOLE_SIZE; private Color color = COLOR; - private Point2D point = new Point2D.Double(0, 0); + private Point2D.Double point = new Point2D.Double(0, 0); private String value = ""; @Override diff --git a/diylc/diylc-library/src/org/diylc/components/connectivity/SolderPad.java b/diylc/diylc-library/src/org/diylc/components/connectivity/SolderPad.java index 0c3a15d5..c142445b 100644 --- a/diylc/diylc-library/src/org/diylc/components/connectivity/SolderPad.java +++ b/diylc/diylc-library/src/org/diylc/components/connectivity/SolderPad.java @@ -55,7 +55,7 @@ public class SolderPad extends AbstractComponent { private Size size = SIZE; private Color color = COLOR; - private Point2D point = new Point2D.Double(0, 0); + private Point2D.Double point = new Point2D.Double(0, 0); private Type type = Type.ROUND; private Size holeSize = HOLE_SIZE; private PCBLayer layer = PCBLayer._1; diff --git a/diylc/diylc-library/src/org/diylc/components/connectivity/TraceCut.java b/diylc/diylc-library/src/org/diylc/components/connectivity/TraceCut.java index ee8a8ee2..f36524d2 100644 --- a/diylc/diylc-library/src/org/diylc/components/connectivity/TraceCut.java +++ b/diylc/diylc-library/src/org/diylc/components/connectivity/TraceCut.java @@ -70,7 +70,7 @@ public class TraceCut extends AbstractComponent { private OrientationHV orientation = OrientationHV.VERTICAL; private Size holeSpacing = VeroBoard.SPACING; - protected Point2D point = new Point2D.Double(0, 0); + protected Point2D.Double point = new Point2D.Double(0, 0); @Override public void draw(Graphics2D g2d, ComponentState componentState, boolean outlineMode, Project project, diff --git a/diylc/diylc-library/src/org/diylc/components/connectivity/Turret.java b/diylc/diylc-library/src/org/diylc/components/connectivity/Turret.java index ee49eda5..e03badac 100644 --- a/diylc/diylc-library/src/org/diylc/components/connectivity/Turret.java +++ b/diylc/diylc-library/src/org/diylc/components/connectivity/Turret.java @@ -58,7 +58,7 @@ public class Turret extends AbstractComponent { private Size size = SIZE; private Size holeSize = HOLE_SIZE; private Color color = COLOR; - private Point2D point = new Point2D.Double(0, 0); + private Point2D.Double point = new Point2D.Double(0, 0); private String value = ""; @Override diff --git a/diylc/diylc-library/src/org/diylc/components/misc/BOM.java b/diylc/diylc-library/src/org/diylc/components/misc/BOM.java index d2de13cd..fff23972 100644 --- a/diylc/diylc-library/src/org/diylc/components/misc/BOM.java +++ b/diylc/diylc-library/src/org/diylc/components/misc/BOM.java @@ -57,7 +57,7 @@ public class BOM extends AbstractComponent { private static final long serialVersionUID = 1L; private Size size = DEFAULT_SIZE; - private Point2D point = new Point2D.Double(0, 0); + private Point2D.Double point = new Point2D.Double(0, 0); private Color color = COLOR; @Override diff --git a/diylc/diylc-library/src/org/diylc/components/misc/GroundSymbol.java b/diylc/diylc-library/src/org/diylc/components/misc/GroundSymbol.java index 2779f5b3..0a86f98b 100644 --- a/diylc/diylc-library/src/org/diylc/components/misc/GroundSymbol.java +++ b/diylc/diylc-library/src/org/diylc/components/misc/GroundSymbol.java @@ -50,7 +50,7 @@ public class GroundSymbol extends AbstractComponent { public static Color COLOR = Color.black; public static Size SIZE = new Size(0.15d, SizeUnit.in); - private Point2D point = new Point2D.Double(0, 0); + private Point2D.Double point = new Point2D.Double(0, 0); private Color color = COLOR; private Size size = SIZE; private GroundSymbolType type = GroundSymbolType.DEFAULT; diff --git a/diylc/diylc-library/src/org/diylc/components/misc/Image.java b/diylc/diylc-library/src/org/diylc/components/misc/Image.java index 9fc1082b..816ee442 100644 --- a/diylc/diylc-library/src/org/diylc/components/misc/Image.java +++ b/diylc/diylc-library/src/org/diylc/components/misc/Image.java @@ -57,8 +57,8 @@ public class Image extends AbstractTransparentComponent { private static ImageIcon ICON; private static byte DEFAULT_SCALE = 25; - private Point2D point = new Point2D.Double(0, 0); - private Point2D secondPoint = null; + private Point2D.Double point = new Point2D.Double(0, 0); + private Point2D.Double secondPoint = null; static { String name = "image.png"; diff --git a/diylc/diylc-library/src/org/diylc/components/misc/Label.java b/diylc/diylc-library/src/org/diylc/components/misc/Label.java index 75e77bfb..ba1c5b45 100644 --- a/diylc/diylc-library/src/org/diylc/components/misc/Label.java +++ b/diylc/diylc-library/src/org/diylc/components/misc/Label.java @@ -51,7 +51,7 @@ public class Label extends AbstractComponent { private static final long serialVersionUID = 1L; - private Point2D point = new Point2D.Double(0, 0); + private Point2D.Double point = new Point2D.Double(0, 0); private String text = DEFAULT_TEXT; private Font font = LABEL_FONT; private Color color = LABEL_COLOR; diff --git a/diylc/diylc-library/src/org/diylc/components/misc/PCBText.java b/diylc/diylc-library/src/org/diylc/components/misc/PCBText.java index 7ce5c6a7..89bdf695 100644 --- a/diylc/diylc-library/src/org/diylc/components/misc/PCBText.java +++ b/diylc/diylc-library/src/org/diylc/components/misc/PCBText.java @@ -55,7 +55,7 @@ public class PCBText extends AbstractComponent { private static final long serialVersionUID = 1L; - private Point2D point = new Point2D.Double(0, 0); + private Point2D.Double point = new Point2D.Double(0, 0); private String text = DEFAULT_TEXT; private Font font = DEFAULT_FONT; private Color color = LABEL_COLOR; diff --git a/diylc/diylc-library/src/org/diylc/components/misc/WrapLabel.java b/diylc/diylc-library/src/org/diylc/components/misc/WrapLabel.java index 5b6533ed..f046095e 100644 --- a/diylc/diylc-library/src/org/diylc/components/misc/WrapLabel.java +++ b/diylc/diylc-library/src/org/diylc/components/misc/WrapLabel.java @@ -56,8 +56,8 @@ public class WrapLabel extends AbstractComponent { protected Point2D[] controlPoints = new Point2D[] {new Point2D.Double(0, 0), new Point2D.Double((int) DEFAULT_WIDTH.convertToPixels(), (int) DEFAULT_HEIGHT.convertToPixels())}; - protected Point2D firstPoint = new Point2D.Double(); - protected Point2D secondPoint = new Point2D.Double(); + protected Point2D.Double firstPoint = new Point2D.Double(); + protected Point2D.Double secondPoint = new Point2D.Double(); private Font font = LABEL_FONT; private Color color = LABEL_COLOR; diff --git a/diylc/diylc-library/src/org/diylc/components/shapes/AbstractShape.java b/diylc/diylc-library/src/org/diylc/components/shapes/AbstractShape.java index add7429f..984bc809 100644 --- a/diylc/diylc-library/src/org/diylc/components/shapes/AbstractShape.java +++ b/diylc/diylc-library/src/org/diylc/components/shapes/AbstractShape.java @@ -43,8 +43,8 @@ public abstract class AbstractShape extends AbstractTransparentComponent { protected String value = ""; protected Point2D[] controlPoints = new Point2D[] {new Point2D.Double(0, 0), new Point2D.Double(DEFAULT_WIDTH.convertToPixels(), DEFAULT_HEIGHT.convertToPixels())}; - protected Point2D firstPoint = new Point2D.Double(); - protected Point2D secondPoint = new Point2D.Double(); + protected Point2D.Double firstPoint = new Point2D.Double(); + protected Point2D.Double secondPoint = new Point2D.Double(); protected Color color = COLOR; protected Color borderColor = BORDER_COLOR; diff --git a/diylc/diylc-swing/src/org/diylc/swing/plugins/tree/TreeNode.java b/diylc/diylc-swing/src/org/diylc/swing/plugins/tree/TreeNode.java index c6ab3eed..2380a470 100644 --- a/diylc/diylc-swing/src/org/diylc/swing/plugins/tree/TreeNode.java +++ b/diylc/diylc-swing/src/org/diylc/swing/plugins/tree/TreeNode.java @@ -68,6 +68,8 @@ public class TreeNode { public String forDisplay() { if (componentType == null) { String display = category; + if (display == null) + return null; Matcher match = contributedPattern.matcher(display); if (match.find()) { String name = match.group(1);