diff --git a/ diy-layout-creator --username bancika@gmail.com/diylc-core/src/org/diylc/components/AbstractComponent.java b/ diy-layout-creator --username bancika@gmail.com/diylc-core/src/org/diylc/components/AbstractComponent.java index c3269056..9d8ccf5b 100644 --- a/ diy-layout-creator --username bancika@gmail.com/diylc-core/src/org/diylc/components/AbstractComponent.java +++ b/ diy-layout-creator --username bancika@gmail.com/diylc-core/src/org/diylc/components/AbstractComponent.java @@ -63,6 +63,11 @@ public abstract class AbstractComponent implements IDIYComponent { public String toString() { return name; } + + @Override + public String getValueForDisplay() { + return getValue() == null ? "" : getValue().toString(); + } /** * Returns the closest odd number, i.e. x when x is odd, or x + 1 when x is diff --git a/ diy-layout-creator --username bancika@gmail.com/diylc-core/src/org/diylc/core/IDIYComponent.java b/ diy-layout-creator --username bancika@gmail.com/diylc-core/src/org/diylc/core/IDIYComponent.java index 0f25911c..a5c963eb 100644 --- a/ diy-layout-creator --username bancika@gmail.com/diylc-core/src/org/diylc/core/IDIYComponent.java +++ b/ diy-layout-creator --username bancika@gmail.com/diylc-core/src/org/diylc/core/IDIYComponent.java @@ -107,7 +107,8 @@ public interface IDIYComponent extends Serializable { * @param project * @param drawingObserver */ - void draw(Graphics2D g2d, ComponentState componentState, boolean outlineMode, Project project, + void draw(Graphics2D g2d, ComponentState componentState, + boolean outlineMode, Project project, IDrawingObserver drawingObserver); /** @@ -127,6 +128,11 @@ public interface IDIYComponent extends Serializable { */ IDIYComponent clone() throws CloneNotSupportedException; + /** + * @return full value for BOM. + */ + String getValueForDisplay(); + /** * Checks if two components are equal. * diff --git a/ diy-layout-creator --username bancika@gmail.com/diylc-core/src/org/diylc/presenter/PCBLayerFiler.java b/ diy-layout-creator --username bancika@gmail.com/diylc-core/src/org/diylc/presenter/PCBLayerFiler.java index 2daf17f5..0800e614 100644 --- a/ diy-layout-creator --username bancika@gmail.com/diylc-core/src/org/diylc/presenter/PCBLayerFiler.java +++ b/ diy-layout-creator --username bancika@gmail.com/diylc-core/src/org/diylc/presenter/PCBLayerFiler.java @@ -15,12 +15,11 @@ public class PCBLayerFiler implements IComponentFiler { this.layer = layer; } - @SuppressWarnings("unchecked") @Override public boolean testComponent(IDIYComponent component) { Class clazz = component.getClass(); try { - Method m = clazz.getMethod("getLayer", null); + Method m = clazz.getMethod("getLayer"); PCBLayer l = (PCBLayer) m.invoke(component); return layer == l; } catch (Exception e) { diff --git a/ diy-layout-creator --username bancika@gmail.com/diylc-core/src/org/diylc/utils/BomMaker.java b/ diy-layout-creator --username bancika@gmail.com/diylc-core/src/org/diylc/utils/BomMaker.java index 3a65a20f..fcb99e7f 100644 --- a/ diy-layout-creator --username bancika@gmail.com/diylc-core/src/org/diylc/utils/BomMaker.java +++ b/ diy-layout-creator --username bancika@gmail.com/diylc-core/src/org/diylc/utils/BomMaker.java @@ -64,8 +64,7 @@ public class BomMaker { if (type.getBomPolicy() == BomPolicy.NEVER_SHOW) continue; String name = component.getName(); - String value = component.getValue() == null ? null : component - .getValue().toString(); + String value = component.getValueForDisplay(); if ((name != null) && (value != null)) { String key = type.getName() + "|" + value; if (entryMap.containsKey(key)) {