diff --git a/ diy-layout-creator --username bancika@gmail.com/DIYLC/config.xml b/ diy-layout-creator --username bancika@gmail.com/DIYLC/config.xml
index 02f4b9f6..d6460070 100644
--- a/ diy-layout-creator --username bancika@gmail.com/DIYLC/config.xml
+++ b/ diy-layout-creator --username bancika@gmail.com/DIYLC/config.xml
@@ -14,6 +14,10 @@
metric
true
+
+ default.org.diylc.components.semiconductors.DIL_IC:Value
+ LM366
+
default.org.diylc.components.passive.AxialFilmCapacitor:Width
diff --git a/ diy-layout-creator --username bancika@gmail.com/DIYLC/library/main.jar b/ diy-layout-creator --username bancika@gmail.com/DIYLC/library/main.jar
index 9f7bee7f..e0cb0fba 100644
Binary files a/ diy-layout-creator --username bancika@gmail.com/DIYLC/library/main.jar and b/ diy-layout-creator --username bancika@gmail.com/DIYLC/library/main.jar differ
diff --git a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/connectivity/CurvedTrace.java b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/connectivity/CurvedTrace.java
index 364bffe1..6c260563 100644
--- a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/connectivity/CurvedTrace.java
+++ b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/connectivity/CurvedTrace.java
@@ -14,7 +14,7 @@ import org.diylc.core.measures.Size;
import org.diylc.core.measures.SizeUnit;
@ComponentDescriptor(name = "Curved Trace", author = "Branislav Stojkovic", category = "Connectivity", instanceNamePrefix = "Trace", description = "Curved copper trace with two control points", zOrder = IDIYComponent.ABOVE_BOARD)
-public class CurvedTrace extends AbstractCurvedComponent {
+public class CurvedTrace extends AbstractCurvedComponent {
private static final long serialVersionUID = 1L;
@@ -36,15 +36,23 @@ public class CurvedTrace extends AbstractCurvedComponent {
|| componentState == ComponentState.DRAGGING ? SELECTION_COLOR : color);
g2d.draw(curve);
}
-
+
@EditableProperty(name = "Width")
- @Override
- public Size getValue() {
+ public Size getSize() {
return size;
}
+ public void setSize(Size size) {
+ this.size = size;
+ }
+
+ @Deprecated
@Override
- public void setValue(Size value) {
- this.size = value;
+ public Void getValue() {
+ return null;
+ }
+
+ @Override
+ public void setValue(Void value) {
}
}
diff --git a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/connectivity/SolderPad.java b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/connectivity/SolderPad.java
index 02ddc414..c149d05b 100644
--- a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/connectivity/SolderPad.java
+++ b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/connectivity/SolderPad.java
@@ -15,7 +15,7 @@ import org.diylc.core.measures.SizeUnit;
import org.diylc.utils.Constants;
@ComponentDescriptor(name = "Solder Pad", category = "Connectivity", author = "Branislav Stojkovic", description = "test", instanceNamePrefix = "Pad", stretchable = false, zOrder = IDIYComponent.ABOVE_BOARD + 0.1)
-public class SolderPad extends AbstractComponent {
+public class SolderPad extends AbstractComponent {
private static final long serialVersionUID = 1L;
@@ -81,13 +81,21 @@ public class SolderPad extends AbstractComponent {
}
@EditableProperty(name = "Color")
- @Override
- public Color getValue() {
+ public Color getColor() {
return color;
}
+ public void setColor(Color color) {
+ this.color = color;
+ }
+
+ @Deprecated
@Override
- public void setValue(Color value) {
- this.color = value;
+ public Void getValue() {
+ return null;
+ }
+
+ @Override
+ public void setValue(Void value) {
}
}
diff --git a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/misc/BOM.java b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/misc/BOM.java
index 29a3b4b6..69e3eede 100644
--- a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/misc/BOM.java
+++ b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/misc/BOM.java
@@ -1,6 +1,7 @@
package org.diylc.components.misc;
import java.awt.Color;
+import java.awt.Font;
import java.awt.FontMetrics;
import java.awt.Graphics2D;
import java.awt.Point;
@@ -20,12 +21,13 @@ import org.diylc.plugins.file.BomEntry;
import org.diylc.plugins.file.BomMaker;
import org.diylc.utils.Constants;
-@ComponentDescriptor(name = "Bill of materials", author = "Branislav Stojkovic", category = "Misc", description = "", instanceNamePrefix = "BOM", zOrder = IDIYComponent.ABOVE_COMPONENT, stretchable = false)
+@ComponentDescriptor(name = "Bill of Materials", author = "Branislav Stojkovic", category = "Misc", description = "", instanceNamePrefix = "BOM", zOrder = IDIYComponent.ABOVE_COMPONENT, stretchable = false)
public class BOM extends AbstractComponent {
public static Size DEFAULT_SIZE = new Size(10d, SizeUnit.cm);
public static Size SPACING = Constants.GRID_SIZE;
public static Color COLOR = Color.black;
+ public static String DEFAULT_TEXT = "No components to show in the Bill of Materials";
private static final long serialVersionUID = 1L;
private Size size = DEFAULT_SIZE;
@@ -76,6 +78,7 @@ public class BOM extends AbstractComponent {
int columnWidth = size.convertToPixels() / columnCount;
int entriesPerColumn = (int) Math.ceil(1.d * bom.size() / columnCount);
if (entriesPerColumn == 0) {
+ g2d.drawString(DEFAULT_TEXT, point.x, point.y);
return;
}
for (int i = 0; i < bom.size(); i++) {
@@ -91,8 +94,32 @@ public class BOM extends AbstractComponent {
@Override
public void drawIcon(Graphics2D g2d, int width, int height) {
- // TODO Auto-generated method stub
+ g2d.setColor(Color.white);
+ g2d.fillRect(width / 8, 0, 6 * width / 8, height - 1);
+ g2d.setColor(Color.black);
+ g2d.drawRect(width / 8, 0, 6 * width / 8, height - 1);
+ g2d.setFont(Constants.LABEL_FONT.deriveFont(1f * 9 * width / 32).deriveFont(Font.PLAIN));
+ FontMetrics fontMetrics = g2d.getFontMetrics();
+ Rectangle2D rect = fontMetrics.getStringBounds("BOM", g2d);
+
+ int textHeight = (int) (rect.getHeight());
+ int textWidth = (int) (rect.getWidth());
+
+ // Center text horizontally and vertically.
+ int x = (width - textWidth) / 2 + 1;
+ int y = textHeight + 2;
+
+ g2d.drawString("BOM", x, y);
+
+ g2d.setFont(g2d.getFont().deriveFont(1f * 5 * width / 32));
+
+ fontMetrics = g2d.getFontMetrics();
+ rect = fontMetrics.getStringBounds("resistors", g2d);
+ x = (width - textWidth) / 2 + 1;
+ g2d.drawString("resistors", x, 4 * height / 7);
+ g2d.drawString("tubes", x, 5 * height / 7);
+ g2d.drawString("diodes", x, 6 * height / 7);
}
@Override