X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Fnet%2Fsf%2Fopenrocket%2Fgui%2Fdialogs%2FEditMotorConfigurationDialog.java;fp=src%2Fnet%2Fsf%2Fopenrocket%2Fgui%2Fdialogs%2FEditMotorConfigurationDialog.java;h=f70fc320e13b3ddf4f3bbcfe83b3b7308c4e4189;hb=6afc62224f6f7e581b1d321e125ed97a6ec77dc1;hp=ffa3a0969d627082c12c0722381f350b5e3e947c;hpb=800e211417d977c55c8fddcc175ec8c74793f51b;p=debian%2Fopenrocket diff --git a/src/net/sf/openrocket/gui/dialogs/EditMotorConfigurationDialog.java b/src/net/sf/openrocket/gui/dialogs/EditMotorConfigurationDialog.java index ffa3a096..f70fc320 100644 --- a/src/net/sf/openrocket/gui/dialogs/EditMotorConfigurationDialog.java +++ b/src/net/sf/openrocket/gui/dialogs/EditMotorConfigurationDialog.java @@ -52,6 +52,9 @@ public class EditMotorConfigurationDialog extends JDialog { private String currentID = null; private MotorMount currentMount = null; + // Positive when user is modifying configuration name + private int configurationNameModification = 0; + public EditMotorConfigurationDialog(final Rocket rocket, Window parent) { super(parent, "Edit motor configurations"); @@ -133,12 +136,17 @@ public class EditMotorConfigurationDialog extends JDialog { update(); } private void update() { + if (configurationNameModification != 0) + return; + String text = configurationNameField.getText(); if (currentID != null) { + configurationNameModification++; rocket.setMotorConfigurationName(currentID, text); int row = configurationTable.getSelectedRow(); configurationTableModel.fireTableCellUpdated(row, 0); updateEnabled(); + configurationNameModification--; } } }); @@ -278,11 +286,18 @@ public class EditMotorConfigurationDialog extends JDialog { } - configurationNameField.setEnabled(currentID != null); - if (currentID == null) { - configurationNameField.setText(""); - } else { - configurationNameField.setText(rocket.getMotorConfigurationName(currentID)); + if (configurationNameModification == 0) { + // Don't update name field when user is modifying it + configurationNameModification++; + + configurationNameField.setEnabled(currentID != null); + if (currentID == null) { + configurationNameField.setText(""); + } else { + configurationNameField.setText(rocket.getMotorConfigurationName(currentID)); + } + + configurationNameModification--; } removeConfButton.setEnabled(currentID != null); selectMotorButton.setEnabled(currentMount != null && currentID != null);