diff --git a/ diy-layout-creator --username bancika@gmail.com/diylc-swing/lib/diylc-core.jar b/ diy-layout-creator --username bancika@gmail.com/diylc-swing/lib/diylc-core.jar
index fcca73d6..b66f5d78 100644
Binary files a/ diy-layout-creator --username bancika@gmail.com/diylc-swing/lib/diylc-core.jar and b/ diy-layout-creator --username bancika@gmail.com/diylc-swing/lib/diylc-core.jar differ
diff --git a/ diy-layout-creator --username bancika@gmail.com/diylc-swing/library/main.jar b/ diy-layout-creator --username bancika@gmail.com/diylc-swing/library/main.jar
index cf6523d8..e2a8b6d9 100644
Binary files a/ diy-layout-creator --username bancika@gmail.com/diylc-swing/library/main.jar and b/ diy-layout-creator --username bancika@gmail.com/diylc-swing/library/main.jar differ
diff --git a/ diy-layout-creator --username bancika@gmail.com/diylc-swing/src/org/diylc/swing/gui/editor/MeasureEditor.java b/ diy-layout-creator --username bancika@gmail.com/diylc-swing/src/org/diylc/swing/gui/editor/MeasureEditor.java
index 0f5d8ba1..95e7cdbb 100644
--- a/ diy-layout-creator --username bancika@gmail.com/diylc-swing/src/org/diylc/swing/gui/editor/MeasureEditor.java
+++ b/ diy-layout-creator --username bancika@gmail.com/diylc-swing/src/org/diylc/swing/gui/editor/MeasureEditor.java
@@ -11,6 +11,8 @@ import java.beans.PropertyChangeListener;
import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
+import java.lang.reflect.ParameterizedType;
+import java.lang.reflect.Type;
import javax.swing.JComboBox;
@@ -32,7 +34,8 @@ public class MeasureEditor extends Container {
public MeasureEditor(final PropertyWrapper property) {
setLayout(new BorderLayout());
final AbstractMeasure measure = ((AbstractMeasure) property.getValue());
- valueField = new DoubleTextField(measure.getValue());
+ valueField = new DoubleTextField(measure == null ? null : measure
+ .getValue());
oldBg = valueField.getBackground();
valueField.addPropertyChangeListener(DoubleTextField.VALUE_PROPERTY,
new PropertyChangeListener() {
@@ -40,12 +43,11 @@ public class MeasureEditor extends Container {
@Override
public void propertyChange(PropertyChangeEvent evt) {
try {
- Constructor ctor = measure.getClass()
+ Constructor ctor = property.getType()
.getConstructors()[0];
- AbstractMeasure> oldMeasure = (AbstractMeasure>) property.getValue();
AbstractMeasure> newMeasure = (AbstractMeasure>) ctor
.newInstance((Double) evt.getNewValue(),
- oldMeasure.getUnit());
+ unitBox.getSelectedItem());
property.setValue(newMeasure);
property.setChanged(true);
valueField.setBackground(oldBg);
@@ -67,18 +69,19 @@ public class MeasureEditor extends Container {
});
add(valueField, BorderLayout.CENTER);
try {
- Method method = measure.getUnit().getClass().getMethod("values");
- unitBox = new JComboBox((Object[]) method.invoke(measure.getUnit()));
- unitBox.setSelectedItem(measure.getUnit());
+ Type type = ((ParameterizedType) property.getType()
+ .getGenericSuperclass()).getActualTypeArguments()[0];
+ Method method = ((Class>) type).getMethod("values");
+ unitBox = new JComboBox((Object[]) method.invoke(null));
+ unitBox.setSelectedItem(measure == null ? null : measure.getUnit());
unitBox.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent evt) {
try {
- Constructor ctor = measure.getClass().getConstructors()[0];
- AbstractMeasure> oldMeasure = (AbstractMeasure>) property.getValue();
+ Constructor ctor = property.getType().getConstructors()[0];
AbstractMeasure> newMeasure = (AbstractMeasure>) ctor
- .newInstance(oldMeasure.getValue(),
+ .newInstance(valueField.getValue(),
(Enum extends Unit>) unitBox
.getSelectedItem());
property.setValue(newMeasure);
diff --git a/ diy-layout-creator --username bancika@gmail.com/diylc-swing/update.xml b/ diy-layout-creator --username bancika@gmail.com/diylc-swing/update.xml
index 3341f1d8..90da451b 100644
--- a/ diy-layout-creator --username bancika@gmail.com/diylc-swing/update.xml
+++ b/ diy-layout-creator --username bancika@gmail.com/diylc-swing/update.xml
@@ -937,5 +937,29 @@
http://code.google.com/p/diy-layout-creator/downloads/list
+
+
+ 3
+ 18
+ 0
+
+ 2012-09-24 20:00:00.000 CET
+
+
+
+ BUG_FIX
+ Components don't show up in the toolbox on OSX
+
+
+ NEW_FEATURE
+ Inductor symbol
+
+
+ IMPROVEMENT
+ Component values (resistance, capacitance, etc) are created blank instead of defaulting to some values
+
+
+ http://code.google.com/p/diy-layout-creator/downloads/list
+
\ No newline at end of file