diff --git a/diylc/diylc-core/src/org/diylc/presenter/Presenter.java b/diylc/diylc-core/src/org/diylc/presenter/Presenter.java index fb11d7dd..8167a06f 100644 --- a/diylc/diylc-core/src/org/diylc/presenter/Presenter.java +++ b/diylc/diylc-core/src/org/diylc/presenter/Presenter.java @@ -27,8 +27,10 @@ import java.awt.geom.Area; import java.awt.geom.Point2D; import java.awt.geom.Rectangle2D; import java.io.BufferedInputStream; +import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; +import java.io.FileOutputStream; import java.io.IOException; import java.lang.reflect.Modifier; import java.util.ArrayList; @@ -2191,7 +2193,32 @@ public class Presenter implements IPlugInPort { templates.add(template); - ConfigurationManager.getInstance().writeValue(TEMPLATES_KEY, templateMap); + if (System.getProperty("org.diylc.WriteStaticVariants", "false").equalsIgnoreCase("true")) + { + if (defaultVariantMap == null) + defaultVariantMap = new HashMap>(); + // unify default and user-variants + for(Map.Entry> entry : templateMap.entrySet()) { + if (defaultVariantMap.containsKey(entry.getKey())) { + defaultVariantMap.get(entry.getKey()).addAll(entry.getValue()); + } else { + defaultVariantMap.put(entry.getKey(), entry.getValue()); + } + } + try { + BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream("variants.xml")); + XStream xStream = new XStream(new DomDriver()); + xStream.toXML(defaultVariantMap, out); + out.close(); + // no more user variants + ConfigurationManager.getInstance().writeValue(TEMPLATES_KEY, null); + LOG.info("Saved default variants"); + } catch (IOException e) { + LOG.error("Could not save default variants", e); + } + } else { + ConfigurationManager.getInstance().writeValue(TEMPLATES_KEY, templateMap); + } } @SuppressWarnings("unchecked") diff --git a/diylc/diylc-library/lib/diylc-core.jar b/diylc/diylc-library/lib/diylc-core.jar index 3a5b0dfa..a683f73d 100644 Binary files a/diylc/diylc-library/lib/diylc-core.jar and b/diylc/diylc-library/lib/diylc-core.jar differ diff --git a/diylc/diylc-swing/DIYLCStarter.launch b/diylc/diylc-swing/DIYLCStarter.launch index e44ede70..690fc5ab 100644 --- a/diylc/diylc-swing/DIYLCStarter.launch +++ b/diylc/diylc-swing/DIYLCStarter.launch @@ -11,5 +11,5 @@ - + diff --git a/diylc/diylc-swing/lib/diylc-core.jar b/diylc/diylc-swing/lib/diylc-core.jar index 3a5b0dfa..a683f73d 100644 Binary files a/diylc/diylc-swing/lib/diylc-core.jar and b/diylc/diylc-swing/lib/diylc-core.jar differ diff --git a/diylc/diylc-swing/variants.xml b/diylc/diylc-swing/variants.xml index e5073986..bf9b2dfd 100644 --- a/diylc/diylc-swing/variants.xml +++ b/diylc/diylc-swing/variants.xml @@ -1,471 +1,1295 @@ - - - Passive.Electrolytic Capacitor (radial) - - - xxx - - - Alpha - 127 - - - Value - - - - Pin spacing - - 0.1 - in - - - - Border - - 74 - 76 - 144 - 255 - - - - Display - NAME - - - Height - - 0.4 - in - - - - Label color - - 255 - 255 - 255 - 255 - - - - Folded - false - - - Color - - 107 - 109 - 206 - 255 - - - - Diameter - - 0.25 - in - - - - Tick - - - - Voltage - - - - Polarized - true - - - Invert polarity - false - - - Lead color - - 204 - 204 - 204 - 255 - - - - Marker - - 140 - 172 - 234 - 255 - - - - - - 0 - 0 - - - 80 - 0 - - - false - - - - - Passive.Ceramic Capacitor (radial) - - - test - - - Pin spacing - - 0.1 - in - - - - Value - - - - Alpha - 127 - - - Border - - 168 - 161 - 98 - 255 - - - - Display - NAME - - - Voltage - - - - Length - - 0.25 - in - - - - Lead color - - 204 - 204 - 204 - 255 - - - - Width - - 0.125 - in - - - - Label color - - 0 - 0 - 0 - 255 - - - - Color - - 240 - 230 - 140 - 255 - - - - - - 0 - 0 - - - 0 - 100 - - - false - - - - - Passive.Potentiometer - - - 25mm - - - Lug size - - 0.15 - in - - - - Body - - 192 - 192 - 192 - 255 - - - - Value - - - - Alpha - 127 - - - Orientation - DEFAULT - - - Type - ThroughHole - - - Border - - 128 - 128 - 128 - 255 - - - - Spacing - - 0.3 - in - - - - Nut - - 203 - 213 - 219 - 255 - - - - Diameter - - 1.0 - in - - - - Taper - LIN - - - Wafer - - 205 - 133 - 0 - 255 - - - - Show shaft - false - - - - - 0 - 0 - - - 60 - 0 - - - 120 - 0 - - - false - - - 16mm - - - Lug size - - - - Body - - - - Value - - - - Alpha - 127 - - - Orientation - DEFAULT - - - Type - ThroughHole - - - Border - - - - Spacing - - 0.2 - in - - - - Nut - - - - Diameter - - 16.0 - mm - - - - Taper - LIN - - - Wafer - - - - Show shaft - false - - - - - 0 - 0 - - - 40 - 0 - - - 80 - 0 - - - false - - - 16mm2 - - - Lug size - - - - Body - - - - Value - - - - Alpha - 127 - - - Orientation - DEFAULT - - - Type - ThroughHole - - - Border - - - - Spacing - - - - Nut - - - - Diameter - - - - Taper - LIN - - - Wafer - - - - Show shaft - false - - - - - 0 - 0 - - - 40 - 0 - - - 80 - 0 - - - false - - - - \ No newline at end of file + + + Guitar.Single Coil Pickup + + + Strat Single Coil + + + Base + + 128 + 128 + 128 + 255 + + + + Alpha + 127 + + + Pole Color + + 117 + 157 + 175 + 255 + + + + Orientation + DEFAULT + + + Model + + + + Type + Stratocaster + + + Pole Pieces + Rods + + + Color + + 255 + 255 + 255 + 255 + + + + + + 0 + 0 + + + false + + + Strat Dual Rail Humbucker + + + Base + + + + Alpha + 127 + + + Pole Color + + + + Orientation + DEFAULT + + + Model + + + + Type + Stratocaster + + + Pole Pieces + RailHumbucker + + + Color + + + + + + 0 + 0 + + + false + + + Strat Single-sized Humbucker + + + Base + + + + Alpha + 127 + + + Pole Color + + + + Orientation + DEFAULT + + + Model + + + + Type + Stratocaster + + + Pole Pieces + RodHumbucker + + + Color + + + + + + 0 + 0 + + + false + + + Tele Single-sized Humbucker + + + Base + + + + Alpha + 127 + + + Pole Color + + + + Orientation + DEFAULT + + + Model + + + + Type + Telecaster + + + Pole Pieces + RodHumbucker + + + Color + + + + + + 0 + 0 + + + false + + + Tele Dual Rail Humbucker + + + Base + + + + Alpha + 127 + + + Pole Color + + + + Orientation + DEFAULT + + + Model + + + + Type + Telecaster + + + Pole Pieces + RailHumbucker + + + Color + + + + + + 0 + 0 + + + false + + + Tele Single Coil + + + Base + + + + Alpha + 127 + + + Pole Color + + + + Orientation + DEFAULT + + + Model + + + + Type + Telecaster + + + Pole Pieces + Rods + + + Color + + + + + + 0 + 0 + + + false + + + + + Electro-Mechanical.Mini Toggle Switch + + + DPDT + + + Alpha + 127 + + + Body + + 50 + 153 + 204 + 255 + + + + Orientation + VERTICAL + + + Border + + 35 + 107 + 142 + 255 + + + + Type + DPDT + + + Spacing + + 0.2 + in + + + + + + 0 + 0 + + + 0 + 40 + + + 0 + 80 + + + 40 + 0 + + + 40 + 40 + + + 40 + 80 + + + false + + + SPDT + + + Alpha + 127 + + + Body + + + + Orientation + VERTICAL + + + Border + + + + Type + SPDT + + + Spacing + + + + + + 0 + 0 + + + 0 + 40 + + + 0 + 80 + + + false + + + + + Guitar.Lever Switch + + + Standard Strat Switch + + + Alpha + 127 + + + Orientation + DEFAULT + + + Type + DP3T + + + + + 0 + 0 + + + -20 + 20 + + + 0 + 40 + + + -20 + 60 + + + 0 + 80 + + + -20 + 100 + + + 0 + 120 + + + -20 + 140 + + + false + + + Super Switch + + + Alpha + 127 + + + Orientation + DEFAULT + + + Type + _4P5T + + + + + 0 + 0 + + + 0 + 20 + + + 0 + 40 + + + 0 + 60 + + + 0 + 80 + + + 0 + 100 + + + 0 + 140 + + + 0 + 160 + + + 0 + 180 + + + 0 + 200 + + + 0 + 220 + + + 0 + 240 + + + 60 + 0 + + + 60 + 20 + + + 60 + 40 + + + 60 + 60 + + + 60 + 80 + + + 60 + 100 + + + 60 + 140 + + + 60 + 160 + + + 60 + 180 + + + 60 + 200 + + + 60 + 220 + + + 60 + 240 + + + false + + + + + Passive.Potentiometer + + + 25mm + + + Lug size + + 0.15 + in + + + + Body + + 192 + 192 + 192 + 255 + + + + Value + + + + Alpha + 127 + + + Orientation + DEFAULT + + + Type + ThroughHole + + + Border + + 128 + 128 + 128 + 255 + + + + Spacing + + 0.3 + in + + + + Nut + + 203 + 213 + 219 + 255 + + + + Diameter + + 1.0 + in + + + + Taper + LIN + + + Wafer + + 205 + 133 + 0 + 255 + + + + Show shaft + false + + + + + 0 + 0 + + + 60 + 0 + + + 120 + 0 + + + false + + + 16mm + + + Lug size + + + + Body + + + + Value + + + + Alpha + 127 + + + Orientation + DEFAULT + + + Type + ThroughHole + + + Border + + + + Spacing + + 0.2 + in + + + + Nut + + + + Diameter + + 16.0 + mm + + + + Taper + LIN + + + Wafer + + + + Show shaft + false + + + + + 0 + 0 + + + 40 + 0 + + + 80 + 0 + + + false + + + + + Semiconductors.DIP IC + + + DIP8 + + + Row Spacing + + 0.3 + in + + + + Pins + _8 + + + Alpha + 127 + + + Body + + + + Value + + + + Orientation + DEFAULT + + + Border + + 89 + 89 + 89 + 255 + + + + Display + BOTH + + + Label + + + + Display Pin #s + NO + + + Indent + + 89 + 89 + 89 + 255 + + + + Pin Spacing + + 0.1 + in + + + + + + 0 + 0 + + + 0 + 20 + + + 0 + 40 + + + 0 + 60 + + + 60 + 0 + + + 60 + 20 + + + 60 + 40 + + + 60 + 60 + + + false + + + DIP16 + + + Row Spacing + + 0.3 + in + + + + Pins + _16 + + + Alpha + 127 + + + Body + + + + Value + + + + Orientation + DEFAULT + + + Border + + + + Display + BOTH + + + Label + + + + Display Pin #s + NO + + + Indent + + + + Pin Spacing + + 0.1 + in + + + + + + 0 + 0 + + + 0 + 20 + + + 0 + 40 + + + 0 + 60 + + + 0 + 80 + + + 0 + 100 + + + 0 + 120 + + + 0 + 140 + + + 60 + 0 + + + 60 + 20 + + + 60 + 40 + + + 60 + 60 + + + 60 + 80 + + + 60 + 100 + + + 60 + 120 + + + 60 + 140 + + + false + + + + + Tubes.Tube Socket + + + Noval + + + Base + B9A + + + Angle + 0 + + + Alpha + 127 + + + Type + + + + Color + + 247 + 247 + 239 + 255 + + + + + + 0 + 0 + + + 66 + 48 + + + 25 + 78 + + + -25 + 78 + + + -66 + 48 + + + -82 + 0 + + + -66 + -48 + + + -25 + -78 + + + 25 + -78 + + + 66 + -48 + + + false + + + Octal + + + Base + OCTAL + + + Angle + 0 + + + Alpha + 127 + + + Type + + + + Color + + + + + + 0 + 0 + + + 63 + 26 + + + 26 + 63 + + + -27 + 63 + + + -64 + 26 + + + -64 + -27 + + + -27 + -64 + + + 26 + -64 + + + 63 + -27 + + + false + + + + + Guitar.Humbucker Pickup + + + Covered PAF-Style + + + Bobin 1 + + 234 + 227 + 198 + 255 + + + + Alpha + 127 + + + Model + + + + Orientation + DEFAULT + + + Pole Color + + 117 + 157 + 175 + 255 + + + + Bobin 2 + + 0 + 0 + 0 + 255 + + + + Type + PAF + + + Cover + true + + + Pole Pieces 1 + Rods + + + Pole Pieces 2 + Rods + + + Color + + 192 + 192 + 192 + 255 + + + + + + 0 + 0 + + + false + + + Uncovered PAF-Style + + + Alpha + 127 + + + Bobin 1 + + 234 + 227 + 198 + 255 + + + + Pole Color + + 117 + 157 + 175 + 255 + + + + Orientation + DEFAULT + + + Model + + + + Bobin 2 + + 0 + 0 + 0 + 255 + + + + Type + PAF + + + Cover + false + + + Pole Pieces 1 + Rods + + + Pole Pieces 2 + Rods + + + Color + + 192 + 192 + 192 + 255 + + + + + + 0 + 0 + + + false + + + + \ No newline at end of file