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 6b58cd31..d6460070 100644 --- a/ diy-layout-creator --username bancika@gmail.com/DIYLC/config.xml +++ b/ diy-layout-creator --username bancika@gmail.com/DIYLC/config.xml @@ -6,14 +6,14 @@ K - - metric - true - lastPath C:\Documents and Settings\Branislav Stojkovic\Desktop + + metric + true + default.org.diylc.components.semiconductors.DIL_IC:Value LM366 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 6831326f..57518c53 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/common/ComponentType.java b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/common/ComponentType.java index 9547b324..be697db3 100644 --- a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/common/ComponentType.java +++ b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/common/ComponentType.java @@ -23,11 +23,12 @@ public class ComponentType { private Class instanceClass; private double zOrder; private boolean stretchable; + private boolean sticky; @SuppressWarnings("unchecked") public ComponentType(String name, String description, String category, String namePrefix, String author, Icon icon, Class instanceClass, - double zOrder, boolean stretchable) { + double zOrder, boolean stretchable, boolean sticky) { super(); this.name = name; this.description = description; @@ -38,6 +39,7 @@ public class ComponentType { this.instanceClass = instanceClass; this.zOrder = zOrder; this.stretchable = stretchable; + this.sticky = sticky; } public String getName() { @@ -76,6 +78,10 @@ public class ComponentType { public boolean isStretchable() { return stretchable; } + + public boolean isSticky() { + return sticky; + } @Override public String toString() { diff --git a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/core/annotations/ComponentDescriptor.java b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/core/annotations/ComponentDescriptor.java index 9a2868da..d5e9b44b 100644 --- a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/core/annotations/ComponentDescriptor.java +++ b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/core/annotations/ComponentDescriptor.java @@ -50,4 +50,10 @@ public @interface ComponentDescriptor { * move together with it. */ boolean stretchable() default true; + + /** + * @return true, if control points may stick to other components' control + * points. + */ + boolean sticky() default false; } 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 5f16c22f..19f96aa6 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 @@ -60,6 +60,7 @@ public class ComponentProcessor { Icon icon; double zOrder; boolean stretchable; + boolean sticky; if (clazz.isAnnotationPresent(ComponentDescriptor.class)) { ComponentDescriptor annotation = clazz.getAnnotation(ComponentDescriptor.class); name = annotation.name(); @@ -69,6 +70,7 @@ public class ComponentProcessor { author = annotation.author(); zOrder = annotation.zOrder(); stretchable = annotation.stretchable(); + sticky = annotation.sticky(); } else { name = clazz.getSimpleName(); description = ""; @@ -77,6 +79,7 @@ public class ComponentProcessor { author = "Unknown"; zOrder = IDIYComponent.COMPONENT; stretchable = true; + sticky = false; } icon = null; // Draw component icon. @@ -96,7 +99,7 @@ public class ComponentProcessor { e.printStackTrace(); } ComponentType componentType = new ComponentType(name, description, category, namePrefix, - author, icon, clazz, zOrder, stretchable); + author, icon, clazz, zOrder, stretchable, sticky); return componentType; } 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 e715ad79..a701425b 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 @@ -70,8 +70,8 @@ public class Presenter implements IPlugInPort { private Map, Area> componentAreaMap; private Project currentProject; private Map> componentTypes; - @SuppressWarnings("unchecked") - private Map, ComponentType> componentTypeMap; + // Maps component class names to ComponentType objects. + private Map componentTypeMap; private List plugIns; private ComponentSelection selectedComponents; @@ -192,14 +192,14 @@ public class Presenter implements IPlugInPort { if (componentTypes == null) { LOG.info("Loading component types."); componentTypes = new HashMap>(); - componentTypeMap = new HashMap, ComponentType>(); + componentTypeMap = new HashMap(); List> componentTypeClasses = JarScanner.getInstance().scanFolder("library/", IDIYComponent.class); for (Class clazz : componentTypeClasses) { if (!Modifier.isAbstract(clazz.getModifiers())) { ComponentType componentType = ComponentProcessor.getInstance() .createComponentTypeFrom((Class>) clazz); - componentTypeMap.put(componentType.getInstanceClass(), componentType); + componentTypeMap.put(componentType.getInstanceClass().getName(), componentType); List nestedList; if (componentTypes.containsKey(componentType.getCategory())) { nestedList = componentTypes.get(componentType.getCategory()); @@ -227,7 +227,7 @@ public class Presenter implements IPlugInPort { RenderingHints.VALUE_ANTIALIAS_ON); } -// AffineTransform initialTx = g2d.getTransform(); + // AffineTransform initialTx = g2d.getTransform(); Dimension d = getCanvasDimensions(drawOptions.contains(DrawOption.ZOOM)); g2dWrapper.setColor(Constants.CANVAS_COLOR); @@ -303,10 +303,11 @@ public class Presenter implements IPlugInPort { // Go back to the original transformation and zoom in to draw the // selection rectangle and other similar elements. -// g2d.setTransform(initialTx); -// if ((drawOptions.contains(DrawOption.ZOOM)) && (Math.abs(1.0 - zoomLevel) > 1e-4)) { -// g2d.scale(zoomLevel, zoomLevel); -// } + // g2d.setTransform(initialTx); + // if ((drawOptions.contains(DrawOption.ZOOM)) && (Math.abs(1.0 - + // zoomLevel) > 1e-4)) { + // g2d.scale(zoomLevel, zoomLevel); + // } // At the end draw selection rectangle if needed. if (drawOptions.contains(DrawOption.SELECTION) && (selectionRect != null)) { @@ -415,8 +416,8 @@ public class Presenter implements IPlugInPort { try { if (scaledPoint.distance(controlPoint) < CONTROL_POINT_SIZE) { Set indices = new HashSet(); - ComponentType componentType = componentTypeMap - .get(component.getClass()); + ComponentType componentType = componentTypeMap.get(component.getClass() + .getName()); if (componentType.isStretchable()) { indices.add(pointIndex); } else { @@ -521,10 +522,76 @@ public class Presenter implements IPlugInPort { controlPointMap.put(c, pointIndices); } } + // Expand control points to include all stuck components. + includeStuckComponents(controlPointMap); LOG.debug(controlPointMap); } } + /** + * Finds any components that are stuck to one of the components already in + * the map. + * + * @param controlPointMap + */ + private void includeStuckComponents(Map, Set> controlPointMap) { + int oldSize = controlPointMap.size(); + LOG.debug("Expanding selected component map"); + for (IDIYComponent component : currentProject.getComponents()) { + // Do not process a component if it's already in the map. + ComponentType componentType = componentTypeMap.get(component.getClass().getName()); + if (!controlPointMap.containsKey(component) && componentType.isSticky()) { + // Check if there's a control point in the current selection + // that matches with one of its control points. + for (int i = 0; i < component.getControlPointCount(); i++) { + if (controlPointMap.containsKey(component)) { + break; + } + boolean componentMatches = false; + for (Map.Entry, Set> entry : controlPointMap + .entrySet()) { + if (componentMatches) { + break; + } + for (Integer j : entry.getValue()) { + Point firstPoint = component.getControlPoint(i); + Point secondPoint = entry.getKey().getControlPoint(j); + // If they are close enough we can consider them + // matched. + if (firstPoint.distance(secondPoint) < CONTROL_POINT_SIZE) { + componentMatches = true; + break; + } + } + } + if (componentMatches) { + LOG.debug("Including component: " + component); + Set indices = new HashSet(); + // For stretchable components just add the + // matching component. + // Otherwise, add all control points. + if (componentType.isStretchable()) { + indices.add(i); + } else { + for (int k = 0; k < component.getControlPointCount(); k++) { + indices.add(k); + } + } + controlPointMap.put(component, indices); + } + } + } + } + int newSize = controlPointMap.size(); + // As long as we're adding new components, do another iteration. + if (newSize > oldSize) { + LOG.debug("Component count changed, trying one more time."); + includeStuckComponents(controlPointMap); + } else { + LOG.debug("Component count didn't change, done with expanding."); + } + } + @Override public boolean dragOver(Point point) { if (point == null) { @@ -612,7 +679,7 @@ public class Presenter implements IPlugInPort { LOG.debug(String.format("addComponents(%s)", components)); Project oldProject = cloner.deepClone(currentProject); for (IDIYComponent component : components) { - addComponent(component, componentTypeMap.get(component.getClass())); + addComponent(component, componentTypeMap.get(component.getClass().getName())); } messageDispatcher.dispatchMessage(EventType.PROJECT_MODIFIED, oldProject, cloner .deepClone(currentProject), "Add"); @@ -784,7 +851,7 @@ public class Presenter implements IPlugInPort { int index = 0; while (index < currentProject.getComponents().size() && componentType.getZOrder() >= componentTypeMap.get( - currentProject.getComponents().get(index).getClass()).getZOrder()) { + currentProject.getComponents().get(index).getClass().getName()).getZOrder()) { index++; } if (index < currentProject.getComponents().size()) { @@ -921,7 +988,7 @@ public class Presenter implements IPlugInPort { * component. */ private boolean shouldShowControlPointsFor(IDIYComponent component) { - ComponentType componentType = componentTypeMap.get(component.getClass()); + ComponentType componentType = componentTypeMap.get(component.getClass().getName()); // Do not show control points for non-stretchable components. if (!componentType.isStretchable()) { return false; 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 deleted file mode 100644 index 0da2674a..00000000 Binary files a/ diy-layout-creator --username bancika@gmail.com/Library/lib/diylc.jar and /dev/null 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 e080230e..439559e5 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 @@ -13,7 +13,7 @@ import org.diylc.core.annotations.EditableProperty; import org.diylc.core.measures.Size; import org.diylc.core.measures.SizeUnit; -@ComponentDescriptor(name = "Copper Trace", author = "Branislav Stojkovic", category = "Connectivity", instanceNamePrefix = "Trace", description = "", zOrder = IDIYComponent.ABOVE_BOARD) +@ComponentDescriptor(name = "Copper Trace", author = "Branislav Stojkovic", category = "Connectivity", instanceNamePrefix = "Trace", description = "", zOrder = IDIYComponent.ABOVE_BOARD, sticky = true) public class CopperTrace extends AbstractLeadedComponent { private static final long serialVersionUID = 1L; 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 6c260563..e151a95d 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 @@ -13,7 +13,7 @@ import org.diylc.core.annotations.EditableProperty; 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) +@ComponentDescriptor(name = "Curved Trace", author = "Branislav Stojkovic", category = "Connectivity", instanceNamePrefix = "Trace", description = "Curved copper trace with two control points", zOrder = IDIYComponent.ABOVE_BOARD, sticky = true) public class CurvedTrace extends AbstractCurvedComponent { private static final long serialVersionUID = 1L; diff --git a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/connectivity/HookupWire.java b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/connectivity/HookupWire.java index 81026d8e..9642f8ef 100644 --- a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/connectivity/HookupWire.java +++ b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/connectivity/HookupWire.java @@ -12,7 +12,7 @@ import org.diylc.core.annotations.ComponentDescriptor; import org.diylc.core.annotations.EditableProperty; import org.diylc.utils.Constants; -@ComponentDescriptor(name = "Hookup Wire", author = "Branislav Stojkovic", category = "Connectivity", instanceNamePrefix = "W", description = "Flexible wire with two control points", zOrder = IDIYComponent.ABOVE_COMPONENT) +@ComponentDescriptor(name = "Hookup Wire", author = "Branislav Stojkovic", category = "Connectivity", instanceNamePrefix = "W", description = "Flexible wire with two control points", zOrder = IDIYComponent.ABOVE_COMPONENT, sticky = true) public class HookupWire extends AbstractCurvedComponent { private static final long serialVersionUID = 1L; diff --git a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/connectivity/Jumper.java b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/connectivity/Jumper.java index 9a47eb04..77a6842a 100644 --- a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/connectivity/Jumper.java +++ b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/connectivity/Jumper.java @@ -12,7 +12,7 @@ import org.diylc.core.annotations.ComponentDescriptor; import org.diylc.core.annotations.EditableProperty; import org.diylc.core.measures.Size; -@ComponentDescriptor(name = "Jumper", author = "Branislav Stojkovic", category = "Connectivity", instanceNamePrefix = "J", description = "", zOrder = IDIYComponent.ABOVE_BOARD) +@ComponentDescriptor(name = "Jumper", author = "Branislav Stojkovic", category = "Connectivity", instanceNamePrefix = "J", description = "", zOrder = IDIYComponent.ABOVE_BOARD, sticky = true) public class Jumper extends AbstractLeadedComponent { private static final long serialVersionUID = 1L; 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 c149d05b..8321a049 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 @@ -14,7 +14,7 @@ import org.diylc.core.measures.Size; 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) +@ComponentDescriptor(name = "Solder Pad", category = "Connectivity", author = "Branislav Stojkovic", description = "test", instanceNamePrefix = "Pad", stretchable = false, zOrder = IDIYComponent.ABOVE_BOARD + 0.1, sticky = true) public class SolderPad extends AbstractComponent { private static final long serialVersionUID = 1L; diff --git a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/electromechanical/MiniToggleSwitch.java b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/electromechanical/MiniToggleSwitch.java index 93e74f87..00a60cf6 100644 --- a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/electromechanical/MiniToggleSwitch.java +++ b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/electromechanical/MiniToggleSwitch.java @@ -18,7 +18,7 @@ import org.diylc.core.annotations.EditableProperty; import org.diylc.core.measures.Size; import org.diylc.core.measures.SizeUnit; -@ComponentDescriptor(name = "Mini Toggle Switch", category = "Electromechanical", author = "Branislav Stojkovic", description = "", stretchable = false, zOrder = IDIYComponent.COMPONENT, instanceNamePrefix = "SW") +@ComponentDescriptor(name = "Mini Toggle Switch", category = "Electromechanical", author = "Branislav Stojkovic", description = "", stretchable = false, zOrder = IDIYComponent.COMPONENT, instanceNamePrefix = "SW", sticky = true) public class MiniToggleSwitch extends AbstractTransparentComponent { private static final long serialVersionUID = 1L; diff --git a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/passive/AxialFilmCapacitor.java b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/passive/AxialFilmCapacitor.java index b9ffc291..6c03fc6f 100644 --- a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/passive/AxialFilmCapacitor.java +++ b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/passive/AxialFilmCapacitor.java @@ -14,7 +14,7 @@ import org.diylc.core.measures.CapacitanceUnit; import org.diylc.core.measures.Size; import org.diylc.core.measures.SizeUnit; -@ComponentDescriptor(name = "Axial Film Capacitor", author = "Branislav Stojkovic", category = "Passive", instanceNamePrefix = "C", description = "test", zOrder = IDIYComponent.COMPONENT) +@ComponentDescriptor(name = "Axial Film Capacitor", author = "Branislav Stojkovic", category = "Passive", instanceNamePrefix = "C", description = "test", zOrder = IDIYComponent.COMPONENT, sticky = true) public class AxialFilmCapacitor extends AbstractLeadedComponent { private static final long serialVersionUID = 1L; diff --git a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/passive/RadialCeramicDiskCapacitor.java b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/passive/RadialCeramicDiskCapacitor.java index b5733dcb..2342c00d 100644 --- a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/passive/RadialCeramicDiskCapacitor.java +++ b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/passive/RadialCeramicDiskCapacitor.java @@ -14,7 +14,7 @@ import org.diylc.core.measures.CapacitanceUnit; import org.diylc.core.measures.Size; import org.diylc.core.measures.SizeUnit; -@ComponentDescriptor(name = "Ceramic Capacitor", author = "Branislav Stojkovic", category = "Passive", instanceNamePrefix = "C", description = "test", zOrder = IDIYComponent.COMPONENT) +@ComponentDescriptor(name = "Ceramic Capacitor", author = "Branislav Stojkovic", category = "Passive", instanceNamePrefix = "C", description = "test", zOrder = IDIYComponent.COMPONENT, sticky = true) public class RadialCeramicDiskCapacitor extends AbstractLeadedComponent { private static final long serialVersionUID = 1L; diff --git a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/passive/RadialFilmCapacitor.java b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/passive/RadialFilmCapacitor.java index 3ac2cb78..58d0cb24 100644 --- a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/passive/RadialFilmCapacitor.java +++ b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/passive/RadialFilmCapacitor.java @@ -14,7 +14,7 @@ import org.diylc.core.measures.CapacitanceUnit; import org.diylc.core.measures.Size; import org.diylc.core.measures.SizeUnit; -@ComponentDescriptor(name = "Radial Film Capacitor", author = "Branislav Stojkovic", category = "Passive", instanceNamePrefix = "C", description = "test", zOrder = IDIYComponent.COMPONENT) +@ComponentDescriptor(name = "Radial Film Capacitor", author = "Branislav Stojkovic", category = "Passive", instanceNamePrefix = "C", description = "test", zOrder = IDIYComponent.COMPONENT, sticky = true) public class RadialFilmCapacitor extends AbstractLeadedComponent { private static final long serialVersionUID = 1L; diff --git a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/passive/Resistor.java b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/passive/Resistor.java index 502e7471..0b966805 100644 --- a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/passive/Resistor.java +++ b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/passive/Resistor.java @@ -14,7 +14,7 @@ import org.diylc.core.measures.ResistanceUnit; import org.diylc.core.measures.Size; import org.diylc.core.measures.SizeUnit; -@ComponentDescriptor(name = "Resistor", author = "Branislav Stojkovic", category = "Passive", instanceNamePrefix = "R", description = "test", zOrder = IDIYComponent.COMPONENT) +@ComponentDescriptor(name = "Resistor", author = "Branislav Stojkovic", category = "Passive", instanceNamePrefix = "R", description = "test", zOrder = IDIYComponent.COMPONENT, sticky = true) public class Resistor extends AbstractLeadedComponent { private static final long serialVersionUID = 1L; diff --git a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/semiconductors/DIL_IC.java b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/semiconductors/DIL_IC.java index b4ff9d0d..aa3981d7 100644 --- a/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/semiconductors/DIL_IC.java +++ b/ diy-layout-creator --username bancika@gmail.com/Library/src/org/diylc/components/semiconductors/DIL_IC.java @@ -23,7 +23,7 @@ import org.diylc.core.measures.Size; import org.diylc.core.measures.SizeUnit; import org.diylc.utils.Constants; -@ComponentDescriptor(name = "DIL IC", author = "Branislav Stojkovic", category = "Semiconductors", instanceNamePrefix = "IC", description = "test", stretchable = false, zOrder = IDIYComponent.COMPONENT) +@ComponentDescriptor(name = "DIL IC", author = "Branislav Stojkovic", category = "Semiconductors", instanceNamePrefix = "IC", description = "test", stretchable = false, zOrder = IDIYComponent.COMPONENT, sticky = true) public class DIL_IC extends AbstractTransparentComponent { private static final long serialVersionUID = 1L; @@ -38,7 +38,6 @@ public class DIL_IC extends AbstractTransparentComponent { public static Size PIN_SIZE = new Size(0.04d, SizeUnit.in); public static Size INDENT_SIZE = new Size(0.15d, SizeUnit.in); - private String name = "New Component"; private String value = ""; private Orientation orientation = Orientation.DEFAULT; private PinCount pinCount = PinCount._8; @@ -56,15 +55,6 @@ public class DIL_IC extends AbstractTransparentComponent { updateControlPoints(); } - @EditableProperty(defaultable = false) - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - @EditableProperty public String getValue() { return value;