diff --git a/core/src/net/sf/openrocket/optimization/rocketoptimization/modifiers/FlightConfigurationModifier.java b/core/src/net/sf/openrocket/optimization/rocketoptimization/modifiers/FlightConfigurationModifier.java index da19f9d50..21f32da6c 100644 --- a/core/src/net/sf/openrocket/optimization/rocketoptimization/modifiers/FlightConfigurationModifier.java +++ b/core/src/net/sf/openrocket/optimization/rocketoptimization/modifiers/FlightConfigurationModifier.java @@ -70,8 +70,8 @@ public class FlightConfigurationModifier configs = (FlightConfigurableParameterSet) configGetter.invoke(c); - return configs.get(simulation.getRocket().getSelectedConfiguration().getFlightConfigurationID()); + FlightConfigurableParameterSet configSet = (FlightConfigurableParameterSet) configGetter.invoke(c); + return configSet.get(simulation.getRocket().getSelectedConfiguration().getFlightConfigurationID()); } } diff --git a/core/src/net/sf/openrocket/optimization/services/DefaultSimulationModifierService.java b/core/src/net/sf/openrocket/optimization/services/DefaultSimulationModifierService.java index ca2446b83..47a122811 100644 --- a/core/src/net/sf/openrocket/optimization/services/DefaultSimulationModifierService.java +++ b/core/src/net/sf/openrocket/optimization/services/DefaultSimulationModifierService.java @@ -215,7 +215,7 @@ public class DefaultSimulationModifierService implements SimulationModifierServi trans.get("optimization.modifier.internalcomponent.position"), trans.get("optimization.modifier.internalcomponent.position.desc"), c, UnitGroup.UNITS_LENGTH, - 1.0, c.getClass(), c.getID(), "AxialMethod"); + 1.0, c.getClass(), c.getID(), "AxialOffset"); mod.setMinValue(0); mod.setMaxValue(parent.getLength()); modifiers.add(mod); @@ -229,7 +229,7 @@ public class DefaultSimulationModifierService implements SimulationModifierServi trans.get("optimization.modifier.finset.position"), trans.get("optimization.modifier.finset.position.desc"), c, UnitGroup.UNITS_LENGTH, - 1.0, c.getClass(), c.getID(), "AxialMethod"); + 1.0, c.getClass(), c.getID(), "AxialOffset"); mod.setMinValue(0); mod.setMaxValue(parent.getLength()); modifiers.add(mod); @@ -243,7 +243,7 @@ public class DefaultSimulationModifierService implements SimulationModifierServi trans.get("optimization.modifier.launchlug.position"), trans.get("optimization.modifier.launchlug.position.desc"), c, UnitGroup.UNITS_LENGTH, - 1.0, c.getClass(), c.getID(), "AxialMethod"); + 1.0, c.getClass(), c.getID(), "AxialOffset"); mod.setMinValue(0); mod.setMaxValue(parent.getLength()); modifiers.add(mod); @@ -260,7 +260,7 @@ public class DefaultSimulationModifierService implements SimulationModifierServi 1.0, c.getClass(), c.getID(), - "DeploymentConfiguration", + "DeploymentConfigurations", DeploymentConfiguration.class, "DeployDelay"); @@ -276,7 +276,7 @@ public class DefaultSimulationModifierService implements SimulationModifierServi 1.0, c.getClass(), c.getID(), - "DeploymentConfiguration", + "DeploymentConfigurations", DeploymentConfiguration.class, "DeployAltitude") { diff --git a/core/src/net/sf/openrocket/rocketcomponent/RecoveryDevice.java b/core/src/net/sf/openrocket/rocketcomponent/RecoveryDevice.java index 7de46329c..a0e783a70 100644 --- a/core/src/net/sf/openrocket/rocketcomponent/RecoveryDevice.java +++ b/core/src/net/sf/openrocket/rocketcomponent/RecoveryDevice.java @@ -84,7 +84,7 @@ public abstract class RecoveryDevice extends MassObject implements FlightConfigu clearPreset(); fireComponentChangeEvent(ComponentChangeEvent.MASS_CHANGE); } - + public FlightConfigurableParameterSet getDeploymentConfigurations() { return deploymentConfigurations; } diff --git a/swing/src/net/sf/openrocket/gui/dialogs/optimization/GeneralOptimizationDialog.java b/swing/src/net/sf/openrocket/gui/dialogs/optimization/GeneralOptimizationDialog.java index 14cda1d8d..1df06f9ba 100644 --- a/swing/src/net/sf/openrocket/gui/dialogs/optimization/GeneralOptimizationDialog.java +++ b/swing/src/net/sf/openrocket/gui/dialogs/optimization/GeneralOptimizationDialog.java @@ -138,7 +138,7 @@ public class GeneralOptimizationDialog extends JDialog { private final DescriptionArea selectedModifierDescription; private final SimulationModifierTree availableModifierTree; - private final JComboBox simulationSelectionCombo; + private final JComboBox> simulationSelectionCombo; private final JComboBox> optimizationParameterCombo; private final JComboBox optimizationGoalCombo; @@ -378,7 +378,7 @@ public class GeneralOptimizationDialog extends JDialog { disableComponents.add(label); sub.add(label, ""); - simulationSelectionCombo = new JComboBox(); + simulationSelectionCombo = new JComboBox>(); simulationSelectionCombo.setToolTipText(tip); populateSimulations(); simulationSelectionCombo.addActionListener(clearHistoryActionListener); @@ -976,9 +976,8 @@ public class GeneralOptimizationDialog extends JDialog { Simulation sim = new Simulation(rocket); String name = createSimulationName(trans.get("noSimulationName"), descriptor.format(rocket, null)); simulations.add(new Named(sim, name)); - - - simulationSelectionCombo.setModel(new DefaultComboBoxModel((String[])simulations.toArray())); + + simulationSelectionCombo.setModel(new DefaultComboBoxModel>(new Vector<>(simulations))); simulationSelectionCombo.setSelectedIndex(0); if (current != null) { for (int i = 0; i < simulations.size(); i++) { diff --git a/swing/src/net/sf/openrocket/gui/main/BasicFrame.java b/swing/src/net/sf/openrocket/gui/main/BasicFrame.java index 2ab3e0c2f..2987ded5a 100644 --- a/swing/src/net/sf/openrocket/gui/main/BasicFrame.java +++ b/swing/src/net/sf/openrocket/gui/main/BasicFrame.java @@ -708,18 +708,17 @@ public class BasicFrame extends JFrame { }); menu.add(item); -// TODO: reimplement this dialog -// //// Optimize -// item = new JMenuItem(trans.get("main.menu.analyze.optimization"), KeyEvent.VK_O); -// item.getAccessibleContext().setAccessibleDescription(trans.get("main.menu.analyze.optimization.desc")); -// item.addActionListener(new ActionListener() { -// @Override -// public void actionPerformed(ActionEvent e) { -// log.info(Markers.USER_MARKER, "Rocket optimization selected"); -// new GeneralOptimizationDialog(document, BasicFrame.this).setVisible(true); -// } -// }); -// menu.add(item); + //// Optimize + item = new JMenuItem(trans.get("main.menu.analyze.optimization"), KeyEvent.VK_O); + item.getAccessibleContext().setAccessibleDescription(trans.get("main.menu.analyze.optimization.desc")); + item.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + log.info(Markers.USER_MARKER, "Rocket optimization selected"); + new GeneralOptimizationDialog(document, BasicFrame.this).setVisible(true); + } + }); + menu.add(item); //// Custom expressions item = new JMenuItem(trans.get("main.menu.analyze.customExpressions"), KeyEvent.VK_E);