diff --git a/diylc/diylc-core/src/org/diylc/common/BuildingBlockPackage.java b/diylc/diylc-core/src/org/diylc/common/BuildingBlockPackage.java index bf69e4e6..0466025a 100644 --- a/diylc/diylc-core/src/org/diylc/common/BuildingBlockPackage.java +++ b/diylc/diylc-core/src/org/diylc/common/BuildingBlockPackage.java @@ -30,6 +30,9 @@ public class BuildingBlockPackage { private Map>> block; private String owner; + + public BuildingBlockPackage() { + } public BuildingBlockPackage(Map>> blocks, String owner) { super(); diff --git a/diylc/diylc-core/src/org/diylc/common/VariantPackage.java b/diylc/diylc-core/src/org/diylc/common/VariantPackage.java index 32879c60..43dac280 100644 --- a/diylc/diylc-core/src/org/diylc/common/VariantPackage.java +++ b/diylc/diylc-core/src/org/diylc/common/VariantPackage.java @@ -30,6 +30,9 @@ public class VariantPackage { private Map> variants; private String owner; + + public VariantPackage() { + } public VariantPackage(Map> variants, String owner) { super(); diff --git a/diylc/diylc-core/src/org/diylc/presenter/Presenter.java b/diylc/diylc-core/src/org/diylc/presenter/Presenter.java index a8702158..a609e324 100644 --- a/diylc/diylc-core/src/org/diylc/presenter/Presenter.java +++ b/diylc/diylc-core/src/org/diylc/presenter/Presenter.java @@ -3009,7 +3009,17 @@ public class Presenter implements IPlugInPort { BufferedInputStream in = new BufferedInputStream(new FileInputStream(fileName)); XStream xStream = new XStream(new DomDriver()); - VariantPackage pkg = (VariantPackage) xStream.fromXML(in); + VariantPackage pkg; + + try { + // old way + pkg = (VariantPackage) xStream.fromXML(in); + } catch (Exception e) { + // new way + in = new BufferedInputStream(new FileInputStream(fileName)); + ProjectFileManager.configure(xStream); + pkg = (VariantPackage) xStream.fromXML(in); + } in.close(); @@ -3048,7 +3058,17 @@ public class Presenter implements IPlugInPort { BufferedInputStream in = new BufferedInputStream(new FileInputStream(fileName)); XStream xStream = new XStream(new DomDriver()); - BuildingBlockPackage pkg = (BuildingBlockPackage) xStream.fromXML(in); + BuildingBlockPackage pkg; + + try { + // old way + pkg = (BuildingBlockPackage) xStream.fromXML(in); + } catch (Exception e) { + // new way + in = new BufferedInputStream(new FileInputStream(fileName)); + ProjectFileManager.configure(xStream); + pkg = (BuildingBlockPackage) xStream.fromXML(in); + } in.close(); diff --git a/diylc/diylc-core/src/org/diylc/presenter/update.xml b/diylc/diylc-core/src/org/diylc/presenter/update.xml index 2b6c717c..bfc2786e 100644 --- a/diylc/diylc-core/src/org/diylc/presenter/update.xml +++ b/diylc/diylc-core/src/org/diylc/presenter/update.xml @@ -3418,17 +3418,21 @@ 2020-12-28 00:00:00.000 CET - - IMPROVEMENT - When editing component properties, group Length and Width properties together - NEW_FEATURE Português translation added (thanks Pedro Rizzi!) + + IMPROVEMENT + When editing component properties, group Length and Width properties together + BUG_FIX Rotating 'Neutrik Jack' produces rendering issues + + + BUG_FIX + Fixed some issues with exporting and importing building blocks and variants. If you still have issues, your variant/building block files might need to be manually updated to keep working https://github.com/bancika/diy-layout-creator/releases diff --git a/diylc/diylc-library/lib/diylc-core.jar b/diylc/diylc-library/lib/diylc-core.jar index 206838f8..58c63323 100644 Binary files a/diylc/diylc-library/lib/diylc-core.jar and b/diylc/diylc-library/lib/diylc-core.jar differ diff --git a/diylc/diylc-swing/lib/diylc-core.jar b/diylc/diylc-swing/lib/diylc-core.jar index 206838f8..58c63323 100644 Binary files a/diylc/diylc-swing/lib/diylc-core.jar and b/diylc/diylc-swing/lib/diylc-core.jar differ diff --git a/diylc/diylc-swing/library/main.jar b/diylc/diylc-swing/library/main.jar index 1ad287e3..41964622 100644 Binary files a/diylc/diylc-swing/library/main.jar and b/diylc/diylc-swing/library/main.jar differ diff --git a/diylc/diylc-swing/src/org/diylc/swing/ActionFactory.java b/diylc/diylc-swing/src/org/diylc/swing/ActionFactory.java index a9eee8ec..b3584c76 100644 --- a/diylc/diylc-swing/src/org/diylc/swing/ActionFactory.java +++ b/diylc/diylc-swing/src/org/diylc/swing/ActionFactory.java @@ -74,6 +74,7 @@ import org.diylc.netlist.Group; import org.diylc.netlist.Netlist; import org.diylc.netlist.Summary; import org.diylc.presenter.Presenter; +import org.diylc.serialization.ProjectFileManager; import org.diylc.swing.gui.DialogFactory; import org.diylc.swing.gui.editor.PropertyEditorDialog; import org.diylc.swing.images.IconLoader; @@ -856,6 +857,7 @@ public class ActionFactory { try { BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(file)); XStream xStream = new XStream(new DomDriver()); + ProjectFileManager.configure(xStream); xStream.toXML(variantPkg, out); out.close(); LOG.info("Exported variants succesfully"); @@ -1012,6 +1014,7 @@ public class ActionFactory { try { BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(file)); XStream xStream = new XStream(new DomDriver()); + ProjectFileManager.configure(xStream); xStream.toXML(variantPkg, out); out.close(); LOG.info("Exported building blocks succesfully");