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());