import java.util.Locale;
import net.sf.openrocket.file.RocketSaver;
+import net.sf.openrocket.l10n.Translator;
import net.sf.openrocket.material.Material;
import net.sf.openrocket.motor.Motor;
import net.sf.openrocket.motor.ThrustCurveMotor;
+import net.sf.openrocket.preset.ComponentPreset;
import net.sf.openrocket.rocketcomponent.ComponentAssembly;
import net.sf.openrocket.rocketcomponent.MotorMount;
import net.sf.openrocket.rocketcomponent.Rocket;
import net.sf.openrocket.rocketcomponent.RocketComponent;
+import net.sf.openrocket.startup.Application;
import net.sf.openrocket.util.BugException;
import net.sf.openrocket.util.Color;
import net.sf.openrocket.util.LineStyle;
public class RocketComponentSaver {
+ private static final Translator trans = Application.getTranslator();
protected RocketComponentSaver() {
// Prevent instantiation from outside the package
protected void addParams(net.sf.openrocket.rocketcomponent.RocketComponent c, List<String> elements) {
elements.add("<name>" + RocketSaver.escapeXML(c.getName()) + "</name>");
+ ComponentPreset preset = c.getPresetComponent();
+ if (preset != null) {
+ elements.add("<preset type=\"" + preset.getType() +
+ "\" manufacturer=\"" + preset.getManufacturer().getSimpleName() +
+ "\" partno=\"" + preset.getPartNo() + "\" digest=\"" + preset.getDigest() + "\"/>");
+ }
+
// Save color and line style if significant
if (!(c instanceof Rocket || c instanceof ComponentAssembly)) {
throw new BugException("Unknown material type: " + mat.getType());
}
- return str + " density=\"" + mat.getDensity() + "\">" + RocketSaver.escapeXML(mat.getName()) + "</" + tag + ">";
+ String baseName = trans.getBaseText("material", mat.getName());
+
+ return str + " density=\"" + mat.getDensity() + "\">" + RocketSaver.escapeXML(baseName) + "</" + tag + ">";
}