From f4e02aa6e386427a73aa1f227fc99b0ef09154d4 Mon Sep 17 00:00:00 2001 From: Sibo Van Gool Date: Fri, 3 Sep 2021 23:05:41 +0200 Subject: [PATCH] Fire motor config table change upon name change of a body/inner tube --- .../flightconfigpanel/MotorConfigurationPanel.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/swing/src/net/sf/openrocket/gui/main/flightconfigpanel/MotorConfigurationPanel.java b/swing/src/net/sf/openrocket/gui/main/flightconfigpanel/MotorConfigurationPanel.java index 974c9d794..d2dfe08fe 100644 --- a/swing/src/net/sf/openrocket/gui/main/flightconfigpanel/MotorConfigurationPanel.java +++ b/swing/src/net/sf/openrocket/gui/main/flightconfigpanel/MotorConfigurationPanel.java @@ -29,8 +29,12 @@ import net.sf.openrocket.gui.widgets.SelectColorButton; import net.sf.openrocket.motor.IgnitionEvent; import net.sf.openrocket.motor.Motor; import net.sf.openrocket.motor.MotorConfiguration; +import net.sf.openrocket.rocketcomponent.AxialStage; +import net.sf.openrocket.rocketcomponent.BodyTube; +import net.sf.openrocket.rocketcomponent.ComponentChangeEvent; import net.sf.openrocket.rocketcomponent.FlightConfiguration; import net.sf.openrocket.rocketcomponent.FlightConfigurationId; +import net.sf.openrocket.rocketcomponent.InnerTube; import net.sf.openrocket.rocketcomponent.MotorMount; import net.sf.openrocket.rocketcomponent.Rocket; import net.sf.openrocket.unit.UnitGroup; @@ -137,6 +141,15 @@ public class MotorConfigurationPanel extends FlightConfigurablePanel protected boolean includeComponent(MotorMount component) { return component.isMotorMount(); } + + @Override + public void componentChanged(ComponentChangeEvent cce) { + super.componentChanged(cce); + // This will catch a name change to cause a change in the header of the table + if ((cce.getSource() instanceof BodyTube || cce.getSource() instanceof InnerTube) && cce.isNonFunctionalChange()) { + fireTableStructureChanged(); + } + } }; // Listen to changes to the table so we can disable the help text when a