From 80e7ebcbe93752cabe29b77a9242811c5bfb253d Mon Sep 17 00:00:00 2001 From: bancika Date: Wed, 23 Feb 2011 20:42:40 +0000 Subject: [PATCH] auto-create pads --- .../DIYLC/config.xml | 10 ++++++++- .../DIYLC/library/main.jar | Bin 91067 -> 96463 bytes .../DIYLC/src/org/diylc/DIYLCStarter.java | 2 ++ .../src/org/diylc/common/IPlugInPort.java | 1 + .../src/org/diylc/presenter/Presenter.java | 21 ++++++++++++++---- .../swing/plugins/config/ConfigPlugin.java | 2 ++ .../DIYLC/update.xml | 4 ++++ 7 files changed, 35 insertions(+), 5 deletions(-) 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 3f4471bf..96dcbee2 100644 --- a/ diy-layout-creator --username bancika@gmail.com/DIYLC/config.xml +++ b/ diy-layout-creator --username bancika@gmail.com/DIYLC/config.xml @@ -1,4 +1,8 @@ + + default.org.diylc.components.passive.TrimmerPotentiometer:Type + FLAT_LARGE + lastPath C:\Documents and Settings\Branislav Stojkovic\Desktop @@ -25,13 +29,17 @@ + + autoCreatePads + false + antiAliasing true snapToGrid - false + true hiQualityRender 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 5e7bf539a19dbe13c0bd5e46c39fddf750d1e30d..1924c119fbb2c593b0ec50d0d3f30f0317c5d24c 100644 GIT binary patch delta 9029 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 delta 3685 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 bE<;75fazKaRw#m)VZR#U2y)aOn|S2^r7sw< diff --git a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/DIYLCStarter.java b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/DIYLCStarter.java index 512a8a60..850c355f 100644 --- a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/DIYLCStarter.java +++ b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/DIYLCStarter.java @@ -39,6 +39,8 @@ public class DIYLCStarter { } catch (Exception e) { LOG.error("Could not initialize log4j configuration", e); } + + LOG.debug("Java version: " + System.getProperty("java.runtime.version") + " by " + System.getProperty("java.vm.vendor")); LOG.info("Starting DIYLC with working directory " + System.getProperty("user.dir")); diff --git a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/common/IPlugInPort.java b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/common/IPlugInPort.java index dd17e617..91aecc47 100644 --- a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/common/IPlugInPort.java +++ b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/common/IPlugInPort.java @@ -38,6 +38,7 @@ public interface IPlugInPort { public static final String STICKY_POINTS_KEY = "stickyPoints"; public static final String METRIC_KEY = "metric"; public static final String SNAP_TO_GRID_KEY = "snapToGrid"; + public static final String AUTO_PADS_KEY = "autoCreatePads"; /** * Returns size of the canvas that takes project dimensions into account as 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 9fcac554..3b5ffcc3 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 @@ -27,6 +27,7 @@ import org.diylc.common.IComponentFiler; import org.diylc.common.IPlugIn; import org.diylc.common.IPlugInPort; import org.diylc.common.PropertyWrapper; +import org.diylc.components.connectivity.SolderPad; import org.diylc.core.IDIYComponent; import org.diylc.core.IView; import org.diylc.core.Project; @@ -364,7 +365,7 @@ public class Presenter implements IPlugInPort { } IDIYComponent component = instantiationManager.instantiateComponent( componentTypeSlot, scaledPoint, currentProject); - addComponent(component, componentTypeSlot); + addComponent(component, componentTypeSlot, true); // Select the new component // messageDispatcher.dispatchMessage(EventType.SELECTION_CHANGED, // selectedComponents); @@ -402,7 +403,7 @@ public class Presenter implements IPlugInPort { // On the second click, add the component to the project. IDIYComponent componentSlot = instantiationManager.getComponentSlot(); componentSlot.setControlPoint(scaledPoint, 1); - addComponent(componentSlot, componentTypeSlot); + addComponent(componentSlot, componentTypeSlot, true); // Select the new component if it's not locked. List> newSelection = new ArrayList>(); if (!isComponentLocked(componentSlot)) { @@ -835,7 +836,7 @@ public class Presenter implements IPlugInPort { component.setControlPoint(point, i); } addComponent(component, ComponentProcessor.getInstance().extractComponentTypeFrom( - (Class>) component.getClass())); + (Class>) component.getClass()), false); } messageDispatcher.dispatchMessage(EventType.PROJECT_MODIFIED, oldProject, cloner .deepClone(currentProject), "Add"); @@ -1100,7 +1101,8 @@ public class Presenter implements IPlugInPort { * @param component * @param componentType */ - private void addComponent(IDIYComponent component, ComponentType componentType) { + private void addComponent(IDIYComponent component, ComponentType componentType, + boolean canCreatePads) { int index = 0; while (index < currentProject.getComponents().size() && componentType.getZOrder() >= ComponentProcessor.getInstance() @@ -1114,6 +1116,17 @@ public class Presenter implements IPlugInPort { } else { currentProject.getComponents().add(component); } + if (canCreatePads + && ConfigurationManager.getInstance().readBoolean(IPlugInPort.AUTO_PADS_KEY, false)) { + for (int i = 0; i < component.getControlPointCount(); i++) { + if (component.isControlPointSticky(i)) { + SolderPad pad = new SolderPad(); + pad.setControlPoint(component.getControlPoint(i), 0); + addComponent(pad, ComponentProcessor.getInstance().extractComponentTypeFrom( + SolderPad.class), false); + } + } + } } @Override diff --git a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/swing/plugins/config/ConfigPlugin.java b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/swing/plugins/config/ConfigPlugin.java index c0f7bf1e..56a7c9bf 100644 --- a/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/swing/plugins/config/ConfigPlugin.java +++ b/ diy-layout-creator --username bancika@gmail.com/DIYLC/src/org/diylc/swing/plugins/config/ConfigPlugin.java @@ -48,6 +48,8 @@ public class ConfigPlugin implements IPlugIn { "Export Grid", IPlugInPort.EXPORT_GRID_KEY, false), CONFIG_MENU); swingUI.injectMenuAction(ActionFactory.getInstance().createConfigAction(plugInPort, "Snap to Grid", IPlugInPort.SNAP_TO_GRID_KEY, true), CONFIG_MENU); + swingUI.injectMenuAction(ActionFactory.getInstance().createConfigAction(plugInPort, + "Auto-Create Pads", IPlugInPort.AUTO_PADS_KEY, false), CONFIG_MENU); File themeDir = new File("themes"); if (themeDir.exists()) { XStream xStream = new XStream(new DomDriver()); diff --git a/ diy-layout-creator --username bancika@gmail.com/DIYLC/update.xml b/ diy-layout-creator --username bancika@gmail.com/DIYLC/update.xml index 32905f83..e42485fc 100644 --- a/ diy-layout-creator --username bancika@gmail.com/DIYLC/update.xml +++ b/ diy-layout-creator --username bancika@gmail.com/DIYLC/update.xml @@ -248,6 +248,10 @@ NEW_FEATURE Snap to Grid may be turned off + + NEW_FEATURE + Auto-create solder pads + http://code.google.com/p/diy-layout-creator/downloads/list