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 57518c53..e259da9c 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/DIYLC/src/org/diylc/core/measures/AbstractMeasure.java b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/core/measures/AbstractMeasure.java index 875cc51e..385a3e69 100644 --- a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/core/measures/AbstractMeasure.java +++ b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/core/measures/AbstractMeasure.java @@ -37,6 +37,11 @@ public class AbstractMeasure> implements Serializ public void setUnit(T multiplier) { this.unit = multiplier; } + + @Override + public Object clone() throws CloneNotSupportedException { + return super.clone(); + } @Override public int hashCode() { diff --git a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/gui/editor/MeasureEditor.java b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/gui/editor/MeasureEditor.java index c37c261f..c3eb07ba 100644 --- a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/gui/editor/MeasureEditor.java +++ b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/gui/editor/MeasureEditor.java @@ -30,7 +30,12 @@ public class MeasureEditor extends Container { @Override public void propertyChange(PropertyChangeEvent evt) { - measure.setValue((Double) evt.getNewValue()); + try { + AbstractMeasure newMeasure = (AbstractMeasure) measure.clone(); + newMeasure.setValue((Double) evt.getNewValue()); + property.setValue(newMeasure); + } catch (CloneNotSupportedException ex) { + } } }); add(valueField, BorderLayout.CENTER); @@ -42,7 +47,12 @@ public class MeasureEditor extends Container { @Override public void actionPerformed(ActionEvent e) { - measure.setUnit((Enum) unitBox.getSelectedItem()); + try { + AbstractMeasure newMeasure = (AbstractMeasure) measure.clone(); + measure.setUnit((Enum) unitBox.getSelectedItem()); + property.setValue(newMeasure); + } catch (CloneNotSupportedException ex) { + } } }); add(unitBox, BorderLayout.EAST); diff --git a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/presenter/ComponentProcessor.java b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/presenter/ComponentProcessor.java index 19f96aa6..5c2e3876 100644 --- a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/presenter/ComponentProcessor.java +++ b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/presenter/ComponentProcessor.java @@ -151,7 +151,7 @@ public class ComponentProcessor { * @return */ public List getMutualSelectionProperties( - List> selectedComponents) { + List> selectedComponents) throws Exception { if (selectedComponents.isEmpty()) { return null; } @@ -160,23 +160,13 @@ public class ComponentProcessor { properties.addAll(extractProperties(firstComponent.getClass())); // Initialize values for (PropertyWrapper property : properties) { - try { - property.readFrom(firstComponent); - } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } + property.readFrom(firstComponent); } for (int i = 1; i < selectedComponents.size(); i++) { IDIYComponent component = selectedComponents.get(i); List newProperties = extractProperties(component.getClass()); for (PropertyWrapper property : newProperties) { - try { - property.readFrom(component); - } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } + property.readFrom(component); } properties.retainAll(newProperties); // for (PropertyWrapper property : properties) { diff --git a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/presenter/Presenter.java b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/presenter/Presenter.java index ae51bd6d..fcdcf1ba 100644 --- a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/presenter/Presenter.java +++ b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/presenter/Presenter.java @@ -973,7 +973,13 @@ public class Presenter implements IPlugInPort { @Override public List getMutualSelectionProperties() { - return ComponentProcessor.getInstance().getMutualSelectionProperties(selectedComponents); + try { + return ComponentProcessor.getInstance() + .getMutualSelectionProperties(selectedComponents); + } catch (Exception e) { + LOG.error("Could not get mutual selection properties", e); + return null; + } } @Override diff --git a/ diy-layout-creator --username bancika@gmail.com/Library/lib/diylc.jar b/ diy-layout-creator --username bancika@gmail.com/Library/lib/diylc.jar new file mode 100644 index 00000000..61996375 Binary files /dev/null and b/ diy-layout-creator --username bancika@gmail.com/Library/lib/diylc.jar differ diff --git a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/connectivity/CopperTrace.java b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/connectivity/CopperTrace.java index 439559e5..d3902e93 100644 --- a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/connectivity/CopperTrace.java +++ b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/connectivity/CopperTrace.java @@ -32,12 +32,16 @@ public class CopperTrace extends AbstractLeadedComponent { } @Override - @EditableProperty(name = "Color") - public Color getLeadColor(ComponentState componentState) { + protected Color getLeadColor(ComponentState componentState) { return componentState == ComponentState.SELECTED || componentState == ComponentState.DRAGGING ? SELECTION_COLOR : leadColor; } + @EditableProperty(name = "Color") + public Color getLeadColor() { + return leadColor; + } + public void setLeadColor(Color leadColor) { this.leadColor = leadColor; } 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 e151a95d..96d548d4 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 @@ -55,4 +55,15 @@ public class CurvedTrace extends AbstractCurvedComponent { @Override public void setValue(Void value) { } + + @Deprecated + @Override + public Byte getAlpha() { + return super.getAlpha(); + } + + @Override + public void setAlpha(Byte alpha) { + super.setAlpha(alpha); + } }