Fix localization, dialog placement, and prepopulated fields in flight

config dialogs.
This commit is contained in:
kruland2607 2012-10-26 11:58:41 -05:00
parent eb20d0e72e
commit 4179b0d6e6
6 changed files with 32 additions and 10 deletions

View File

@ -181,6 +181,10 @@ edtmotorconfdlg.but.Copyconfiguration = Copy
edtmotorconfdlg.but.Selectignition = Select ignition edtmotorconfdlg.but.Selectignition = Select ignition
edtmotorconfdlg.lbl.Motormounts = <html><b>Motor mounts:</b> edtmotorconfdlg.lbl.Motormounts = <html><b>Motor mounts:</b>
edtmotorconfdlg.title.Editmotorconf = Edit Flight configurations edtmotorconfdlg.title.Editmotorconf = Edit Flight configurations
edtmotorconfdlg.title.Renameconf = Rename Flight Configuration
edtmotorconfdlg.title.Selectdeploymentconf = Select Deployment Configuration
edtmotorconfdlg.title.Selectignitionconf = Select Ignition Configuration
edtmotorconfdlg.title.Selectseparationconf = Select Separation Configuration
edtmotorconfdlg.selectcomp = <html>Select which components function as motor mounts: edtmotorconfdlg.selectcomp = <html>Select which components function as motor mounts:
edtmotorconfdlg.lbl.Motorconfig = <html><b>Motor configurations:</b> edtmotorconfdlg.lbl.Motorconfig = <html><b>Motor configurations:</b>
edtmotorconfdlg.lbl.Configname = Configuration name: edtmotorconfdlg.lbl.Configname = Configuration name:

View File

@ -1,5 +1,6 @@
package net.sf.openrocket.gui.dialogs.flightconfiguration; package net.sf.openrocket.gui.dialogs.flightconfiguration;
import java.awt.Dialog;
import java.awt.Window; import java.awt.Window;
import java.awt.event.ActionEvent; import java.awt.event.ActionEvent;
import java.awt.event.ActionListener; import java.awt.event.ActionListener;
@ -41,7 +42,7 @@ public class FlightConfigurationDialog extends JDialog {
public FlightConfigurationDialog(final Rocket rocket, Window parent) { public FlightConfigurationDialog(final Rocket rocket, Window parent) {
//// Edit motor configurations //// Edit motor configurations
super(parent, trans.get("edtmotorconfdlg.title.Editmotorconf")); super(parent, trans.get("edtmotorconfdlg.title.Editmotorconf"), Dialog.ModalityType.APPLICATION_MODAL);
currentID = rocket.getDefaultConfiguration().getFlightConfigurationID(); currentID = rocket.getDefaultConfiguration().getFlightConfigurationID();

View File

@ -1,5 +1,6 @@
package net.sf.openrocket.gui.dialogs.flightconfiguration; package net.sf.openrocket.gui.dialogs.flightconfiguration;
import java.awt.Dialog;
import java.awt.event.ActionEvent; import java.awt.event.ActionEvent;
import java.awt.event.ActionListener; import java.awt.event.ActionListener;
@ -15,8 +16,7 @@ import net.sf.openrocket.rocketcomponent.Rocket;
public class RenameConfigDialog extends JDialog { public class RenameConfigDialog extends JDialog {
RenameConfigDialog( final Rocket rocket, final FlightConfigurationDialog parent ) { RenameConfigDialog( final Rocket rocket, final FlightConfigurationDialog parent ) {
super(parent); super(parent, FlightConfigurationDialog.trans.get("edtmotorconfdlg.title.Renameconf"),Dialog.ModalityType.APPLICATION_MODAL);
super.setModal(true);
final Configuration config = rocket.getDefaultConfiguration(); final Configuration config = rocket.getDefaultConfiguration();
JPanel panel = new JPanel(new MigLayout("fill")); JPanel panel = new JPanel(new MigLayout("fill"));
@ -65,6 +65,8 @@ public class RenameConfigDialog extends JDialog {
this.setContentPane(panel); this.setContentPane(panel);
this.validate(); this.validate();
this.pack(); this.pack();
this.setLocationByPlatform(true);
} }
} }

View File

@ -1,5 +1,6 @@
package net.sf.openrocket.gui.dialogs.flightconfiguration; package net.sf.openrocket.gui.dialogs.flightconfiguration;
import java.awt.Dialog;
import java.awt.event.ActionEvent; import java.awt.event.ActionEvent;
import java.awt.event.ActionListener; import java.awt.event.ActionListener;
@ -28,8 +29,8 @@ public class SelectDeploymentConfigDialog extends JDialog {
SelectDeploymentConfigDialog( JDialog parent, final Rocket rocket, final RecoveryDevice component ) { SelectDeploymentConfigDialog( JDialog parent, final Rocket rocket, final RecoveryDevice component ) {
super(parent); super(parent, FlightConfigurationDialog.trans.get("edtmotorconfdlg.title.Selectdeploymentconf"),Dialog.ModalityType.APPLICATION_MODAL);
super.setModal(true);
final String configId = rocket.getDefaultConfiguration().getFlightConfigurationID(); final String configId = rocket.getDefaultConfiguration().getFlightConfigurationID();
newConfiguration = component.getFlightConfiguration(configId); newConfiguration = component.getFlightConfiguration(configId);
@ -138,6 +139,8 @@ public class SelectDeploymentConfigDialog extends JDialog {
this.setContentPane(panel); this.setContentPane(panel);
this.validate(); this.validate();
this.pack(); this.pack();
this.setLocationByPlatform(true);
} }

View File

@ -1,5 +1,6 @@
package net.sf.openrocket.gui.dialogs.flightconfiguration; package net.sf.openrocket.gui.dialogs.flightconfiguration;
import java.awt.Dialog;
import java.awt.event.ActionEvent; import java.awt.event.ActionEvent;
import java.awt.event.ActionListener; import java.awt.event.ActionListener;
@ -25,8 +26,7 @@ public class SelectIgnitionConfigDialog extends JDialog {
MotorConfiguration newConfiguration; MotorConfiguration newConfiguration;
SelectIgnitionConfigDialog(JDialog parent,final Rocket rocket, final MotorMount component ) { SelectIgnitionConfigDialog(JDialog parent,final Rocket rocket, final MotorMount component ) {
super(parent); super(parent, FlightConfigurationDialog.trans.get("edtmotorconfdlg.title.Selectignitionconf"),Dialog.ModalityType.APPLICATION_MODAL);
super.setModal(true);
final String configId = rocket.getDefaultConfiguration().getFlightConfigurationID(); final String configId = rocket.getDefaultConfiguration().getFlightConfigurationID();
newConfiguration = component.getFlightConfiguration(configId); newConfiguration = component.getFlightConfiguration(configId);
@ -37,6 +37,15 @@ public class SelectIgnitionConfigDialog extends JDialog {
// is put back in there. // is put back in there.
newConfiguration = newConfiguration.clone(); newConfiguration = newConfiguration.clone();
} }
// MotorConfiguration is a little wierd. It is possible for the MotorConfiguration
// to be non-null (for example, a motor is selected) but the ignition spec is null
// (ignition is not overridden). In order to accomodate this, we need to test
// for IgnitionEvent and copy from the default config.
if ( newConfiguration.getIgnitionEvent() == null ) {
MotorConfiguration oldConfig = component.getDefaultFlightConfiguration();
newConfiguration.setIgnitionDelay( oldConfig.getIgnitionDelay() );
newConfiguration.setIgnitionEvent(oldConfig.getIgnitionEvent() );
}
JPanel panel = new JPanel(new MigLayout("fill")); JPanel panel = new JPanel(new MigLayout("fill"));
@ -46,7 +55,6 @@ public class SelectIgnitionConfigDialog extends JDialog {
final JComboBox<IgnitionEvent> event = new JComboBox<IgnitionEvent>(new BasicEnumModel<IgnitionEvent>(IgnitionEvent.class)); final JComboBox<IgnitionEvent> event = new JComboBox<IgnitionEvent>(new BasicEnumModel<IgnitionEvent>(IgnitionEvent.class));
event.setSelectedItem( newConfiguration.getIgnitionEvent() ); event.setSelectedItem( newConfiguration.getIgnitionEvent() );
//FIXME set selection based on newConfiguration.getIgnitionEvent();
panel.add(event, "growx, wrap"); panel.add(event, "growx, wrap");
// ... and delay // ... and delay
@ -76,6 +84,7 @@ public class SelectIgnitionConfigDialog extends JDialog {
double ignitionDelay = delay.getValue(); double ignitionDelay = delay.getValue();
newConfiguration.setIgnitionDelay(ignitionDelay); newConfiguration.setIgnitionDelay(ignitionDelay);
component.setFlightConfiguration(configId, newConfiguration); component.setFlightConfiguration(configId, newConfiguration);
SelectIgnitionConfigDialog.this.setVisible(false); SelectIgnitionConfigDialog.this.setVisible(false);
@ -100,6 +109,7 @@ public class SelectIgnitionConfigDialog extends JDialog {
this.setContentPane(panel); this.setContentPane(panel);
this.validate(); this.validate();
this.pack(); this.pack();
this.setLocationByPlatform(true);
} }
} }

View File

@ -1,5 +1,6 @@
package net.sf.openrocket.gui.dialogs.flightconfiguration; package net.sf.openrocket.gui.dialogs.flightconfiguration;
import java.awt.Dialog;
import java.awt.event.ActionEvent; import java.awt.event.ActionEvent;
import java.awt.event.ActionListener; import java.awt.event.ActionListener;
@ -27,8 +28,7 @@ public class SelectSeparationConfigDialog extends JDialog {
StageSeparationConfiguration newConfiguration; StageSeparationConfiguration newConfiguration;
SelectSeparationConfigDialog( JDialog parent, final Rocket rocket, final Stage component ) { SelectSeparationConfigDialog( JDialog parent, final Rocket rocket, final Stage component ) {
super(parent); super(parent, FlightConfigurationDialog.trans.get("edtmotorconfdlg.title.Selectseparationconf"),Dialog.ModalityType.APPLICATION_MODAL);
super.setModal(true);
final String configId = rocket.getDefaultConfiguration().getFlightConfigurationID(); final String configId = rocket.getDefaultConfiguration().getFlightConfigurationID();
newConfiguration = component.getFlightConfiguration(configId); newConfiguration = component.getFlightConfiguration(configId);
@ -99,6 +99,8 @@ public class SelectSeparationConfigDialog extends JDialog {
this.setContentPane(panel); this.setContentPane(panel);
this.validate(); this.validate();
this.pack(); this.pack();
this.setLocationByPlatform(true);
} }