diff --git a/swing/src/net/sf/openrocket/gui/configdialog/ComponentConfigDialog.java b/swing/src/net/sf/openrocket/gui/configdialog/ComponentConfigDialog.java index ca9463212..6dfae4a34 100644 --- a/swing/src/net/sf/openrocket/gui/configdialog/ComponentConfigDialog.java +++ b/swing/src/net/sf/openrocket/gui/configdialog/ComponentConfigDialog.java @@ -93,7 +93,12 @@ public class ComponentConfigDialog extends JDialog implements ComponentChangeLis this.pack(); } - + + public static ComponentConfigDialog getDialog() { + return dialog; + } + + /** /** * Return the configurator panel of the current component. */ diff --git a/swing/src/net/sf/openrocket/gui/main/RocketActions.java b/swing/src/net/sf/openrocket/gui/main/RocketActions.java index 828c8ceae..a220c9e8b 100644 --- a/swing/src/net/sf/openrocket/gui/main/RocketActions.java +++ b/swing/src/net/sf/openrocket/gui/main/RocketActions.java @@ -311,6 +311,8 @@ public class RocketActions { if (isDeletable(c)) { ComponentConfigDialog.hideDialog(); + c.getRocket().removeComponentChangeListener(ComponentConfigDialog.getDialog()); + document.addUndoPosition("Delete " + c.getComponentName()); delete(c); }