X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=core%2Fsrc%2Fnet%2Fsf%2Fopenrocket%2Ffile%2Fopenrocket%2FOpenRocketSaver.java;h=0a5e04790caa407459640e5ef3d95ddd0abf59a7;hb=42b2e5ca519766e37ce6941ba4faecc9691cc403;hp=fa1c372f5aae949a7e0720abc28d47bce2b82b44;hpb=2075d66bd5b0f485080a3831ff7a6fde4b363359;p=debian%2Fopenrocket
diff --git a/core/src/net/sf/openrocket/file/openrocket/OpenRocketSaver.java b/core/src/net/sf/openrocket/file/openrocket/OpenRocketSaver.java
index fa1c372f..0a5e0479 100644
--- a/core/src/net/sf/openrocket/file/openrocket/OpenRocketSaver.java
+++ b/core/src/net/sf/openrocket/file/openrocket/OpenRocketSaver.java
@@ -24,12 +24,12 @@ import net.sf.openrocket.rocketcomponent.RecoveryDevice.DeployEvent;
import net.sf.openrocket.rocketcomponent.Rocket;
import net.sf.openrocket.rocketcomponent.RocketComponent;
import net.sf.openrocket.rocketcomponent.TubeCoupler;
-import net.sf.openrocket.simulation.customexpression.CustomExpression;
import net.sf.openrocket.simulation.FlightData;
import net.sf.openrocket.simulation.FlightDataBranch;
import net.sf.openrocket.simulation.FlightDataType;
import net.sf.openrocket.simulation.FlightEvent;
import net.sf.openrocket.simulation.SimulationOptions;
+import net.sf.openrocket.simulation.customexpression.CustomExpression;
import net.sf.openrocket.startup.Application;
import net.sf.openrocket.util.BugException;
import net.sf.openrocket.util.BuildProperties;
@@ -135,28 +135,32 @@ public class OpenRocketSaver extends RocketSaver {
if (doc.getCustomExpressions().isEmpty())
return;
- writeln(""); indent++;
+ writeln("");
+ indent++;
- for (CustomExpression exp : doc.getCustomExpressions()){
+ for (CustomExpression exp : doc.getCustomExpressions()) {
saveCustomExpressionDatatype(exp);
}
- indent--; writeln("");
+ indent--;
+ writeln("");
writeln("");
}
/*
* Save one custom expression datatype
*/
- private void saveCustomExpressionDatatype(CustomExpression exp) throws IOException {
+ private void saveCustomExpressionDatatype(CustomExpression exp) throws IOException {
// Write out custom expression
- writeln(""); indent++;
- writeln("" + exp.getName() + "");
- writeln("" + exp.getSymbol() + "");
- writeln("" + exp.getUnit() + ""); // auto unit type means it will be determined from string
- writeln("" + exp.getExpressionString() + "");
- indent--; writeln("");
+ writeln("");
+ indent++;
+ writeln("" + exp.getName() + "");
+ writeln("" + exp.getSymbol() + "");
+ writeln("" + exp.getUnit() + ""); // auto unit type means it will be determined from string
+ writeln("" + exp.getExpressionString() + "");
+ indent--;
+ writeln("");
}
@Override
@@ -223,6 +227,7 @@ public class OpenRocketSaver extends RocketSaver {
* File version 1.5 is requires for:
* - saving designs using ComponentPrests
* - recovery device deployment on lower stage separation
+ * - custom expressions
*
* File version 1.4 is required for:
* - saving simulation data
@@ -251,6 +256,11 @@ public class OpenRocketSaver extends RocketSaver {
}
}
+ // Check for custom expressions
+ if (!document.getCustomExpressions().isEmpty()) {
+ return FILE_VERSION_DIVISOR + 5;
+ }
+
// Check if design has simulations defined (version 1.4)
if (document.getSimulationCount() > 0) {
return FILE_VERSION_DIVISOR + 4;
@@ -360,7 +370,8 @@ public class OpenRocketSaver extends RocketSaver {
writeln("RK4Simulator");
writeln("BarrowmanCalculator");
- writeln(""); indent++;
+ writeln("");
+ indent++;
writeElement("configid", cond.getMotorConfigurationID());
writeElement("launchrodlength", cond.getLaunchRodLength());