Add traversal policy for parachute config
This commit is contained in:
parent
cda6fc7b7a
commit
430b448db3
@ -16,10 +16,7 @@ import javax.swing.JSpinner;
|
||||
import net.miginfocom.swing.MigLayout;
|
||||
import net.sf.openrocket.document.OpenRocketDocument;
|
||||
import net.sf.openrocket.gui.SpinnerEditor;
|
||||
import net.sf.openrocket.gui.adaptors.DoubleModel;
|
||||
import net.sf.openrocket.gui.adaptors.EnumModel;
|
||||
import net.sf.openrocket.gui.adaptors.IntegerModel;
|
||||
import net.sf.openrocket.gui.adaptors.MaterialModel;
|
||||
import net.sf.openrocket.gui.adaptors.*;
|
||||
import net.sf.openrocket.gui.components.BasicSlider;
|
||||
import net.sf.openrocket.gui.components.HtmlLabel;
|
||||
import net.sf.openrocket.gui.components.StyledLabel;
|
||||
@ -60,6 +57,7 @@ public class ParachuteConfig extends RecoveryDeviceConfig {
|
||||
JSpinner spin = new JSpinner(m.getSpinnerModel());
|
||||
spin.setEditor(new SpinnerEditor(spin));
|
||||
panel.add(spin, "growx");
|
||||
order.add(((SpinnerEditor) spin.getEditor()).getTextField());
|
||||
panel.add(new UnitSelector(m), "growx");
|
||||
panel.add(new BasicSlider(m.getSliderModel(0, 0.4, 1.5)), "w 100lp, wrap");
|
||||
|
||||
@ -85,7 +83,9 @@ public class ParachuteConfig extends RecoveryDeviceConfig {
|
||||
Material.Type.SURFACE));
|
||||
surfaceMaterialCombo.setToolTipText(trans.get("ParachuteCfg.combo.MaterialModel"));
|
||||
panel.add( surfaceMaterialCombo, "spanx 3, growx, wrap 15lp");
|
||||
order.add(surfaceMaterialCombo);
|
||||
|
||||
// Drag Coefficient:
|
||||
// CD
|
||||
JLabel label = new HtmlLabel(trans.get("ParachuteCfg.lbl.longA1"));
|
||||
String tip = trans.get("ParachuteCfg.lbl.longB1") +
|
||||
@ -100,7 +100,8 @@ public class ParachuteConfig extends RecoveryDeviceConfig {
|
||||
spin.setToolTipText(tip);
|
||||
spin.setEditor(new SpinnerEditor(spin));
|
||||
panel.add(spin, "growx");
|
||||
|
||||
order.add(((SpinnerEditor) spin.getEditor()).getTextField());
|
||||
|
||||
//// Reset button
|
||||
JButton button = new SelectColorButton(trans.get("ParachuteCfg.but.Reset"));
|
||||
button.addActionListener(new ActionListener() {
|
||||
@ -111,6 +112,7 @@ public class ParachuteConfig extends RecoveryDeviceConfig {
|
||||
}
|
||||
});
|
||||
panel.add(button, "spanx, wrap 32lp");
|
||||
order.add(button);
|
||||
|
||||
//// Shroud lines
|
||||
panel.add(new StyledLabel(trans.get("ParachuteCfg.lbl.Shroudlines"), Style.BOLD), "wrap unrel");
|
||||
@ -122,6 +124,7 @@ public class ParachuteConfig extends RecoveryDeviceConfig {
|
||||
spin = new JSpinner(im.getSpinnerModel());
|
||||
spin.setEditor(new SpinnerEditor(spin));
|
||||
panel.add(spin, "growx, wrap");
|
||||
order.add(((SpinnerEditor) spin.getEditor()).getTextField());
|
||||
|
||||
//// Line length:
|
||||
panel.add(new JLabel(trans.get("ParachuteCfg.lbl.Linelength")));
|
||||
@ -131,6 +134,7 @@ public class ParachuteConfig extends RecoveryDeviceConfig {
|
||||
spin = new JSpinner(m.getSpinnerModel());
|
||||
spin.setEditor(new SpinnerEditor(spin));
|
||||
panel.add(spin, "growx");
|
||||
order.add(((SpinnerEditor) spin.getEditor()).getTextField());
|
||||
panel.add(new UnitSelector(m), "growx");
|
||||
panel.add(new BasicSlider(m.getSliderModel(0, 0.4, 1.5)), "w 100lp, wrap");
|
||||
|
||||
@ -140,6 +144,7 @@ public class ParachuteConfig extends RecoveryDeviceConfig {
|
||||
JComboBox<Material> shroudMaterialCombo =
|
||||
new JComboBox<Material>(new MaterialModel(panel, component, Material.Type.LINE, "LineMaterial"));
|
||||
panel.add( shroudMaterialCombo, "spanx 3, growx, wrap 15lp");
|
||||
order.add(shroudMaterialCombo);
|
||||
|
||||
|
||||
// Right side
|
||||
@ -156,6 +161,7 @@ public class ParachuteConfig extends RecoveryDeviceConfig {
|
||||
new EnumModel<AxialMethod>(component, "AxialMethod", AxialMethod.axialOffsetMethods );
|
||||
JComboBox<AxialMethod> positionCombo = new JComboBox<AxialMethod>( methodModel );
|
||||
panel.add( positionCombo, "spanx, growx, wrap");
|
||||
order.add(positionCombo);
|
||||
|
||||
//// plus
|
||||
panel.add(new JLabel(trans.get("ParachuteCfg.lbl.plus")), "right");
|
||||
@ -165,6 +171,7 @@ public class ParachuteConfig extends RecoveryDeviceConfig {
|
||||
spin.setEditor(new SpinnerEditor(spin));
|
||||
focusElement = spin;
|
||||
panel.add(spin, "growx");
|
||||
order.add(((SpinnerEditor) spin.getEditor()).getTextField());
|
||||
|
||||
panel.add(new UnitSelector(m), "growx");
|
||||
panel.add(new BasicSlider(m.getSliderModel(
|
||||
@ -181,6 +188,7 @@ public class ParachuteConfig extends RecoveryDeviceConfig {
|
||||
spin = new JSpinner(m.getSpinnerModel());
|
||||
spin.setEditor(new SpinnerEditor(spin));
|
||||
panel.add(spin, "growx");
|
||||
order.add(((SpinnerEditor) spin.getEditor()).getTextField());
|
||||
|
||||
panel.add(new UnitSelector(m), "growx");
|
||||
panel.add(new BasicSlider(m.getSliderModel(0, 0.1, 0.5)), "w 100lp, wrap");
|
||||
@ -196,6 +204,7 @@ public class ParachuteConfig extends RecoveryDeviceConfig {
|
||||
spin = new JSpinner(od.getSpinnerModel());
|
||||
spin.setEditor(new SpinnerEditor(spin));
|
||||
panel.add(spin, "growx");
|
||||
order.add(((SpinnerEditor) spin.getEditor()).getTextField());
|
||||
|
||||
panel.add(new UnitSelector(od), "growx");
|
||||
panel.add(new BasicSlider(od.getSliderModel(0, 0.04, 0.2)), "w 100lp, wrap");
|
||||
@ -204,6 +213,7 @@ public class ParachuteConfig extends RecoveryDeviceConfig {
|
||||
JCheckBox checkAutoPackedRadius = new JCheckBox(od.getAutomaticAction());
|
||||
checkAutoPackedRadius.setText(trans.get("TransitionCfg.checkbox.Automatic"));
|
||||
panel.add(checkAutoPackedRadius, "skip, span 2, wrap 5lp");
|
||||
order.add(checkAutoPackedRadius);
|
||||
|
||||
//// Deployment
|
||||
panel.add(new StyledLabel(trans.get("ParachuteCfg.lbl.Deployment"), Style.BOLD), "wrap unrel");
|
||||
@ -222,6 +232,7 @@ public class ParachuteConfig extends RecoveryDeviceConfig {
|
||||
eventCombo.removeItem( DeployEvent.LOWER_STAGE_SEPARATION );
|
||||
}
|
||||
panel.add(eventCombo, "spanx 3, growx, wrap");
|
||||
order.add(eventCombo);
|
||||
|
||||
// ... and delay
|
||||
//// plus
|
||||
@ -231,6 +242,7 @@ public class ParachuteConfig extends RecoveryDeviceConfig {
|
||||
spin = new JSpinner(m.getSpinnerModel());
|
||||
spin.setEditor(new SpinnerEditor(spin, 3));
|
||||
panel.add(spin, "spanx, split");
|
||||
order.add(((SpinnerEditor) spin.getEditor()).getTextField());
|
||||
|
||||
//// seconds
|
||||
panel.add(new JLabel(trans.get("ParachuteCfg.lbl.seconds")), "wrap paragraph");
|
||||
@ -246,6 +258,7 @@ public class ParachuteConfig extends RecoveryDeviceConfig {
|
||||
spin.setEditor(new SpinnerEditor(spin));
|
||||
altitudeComponents.add(spin);
|
||||
panel.add(spin, "growx");
|
||||
order.add(((SpinnerEditor) spin.getEditor()).getTextField());
|
||||
UnitSelector unit = new UnitSelector(m);
|
||||
altitudeComponents.add(unit);
|
||||
panel.add(unit, "growx");
|
||||
@ -265,6 +278,11 @@ public class ParachuteConfig extends RecoveryDeviceConfig {
|
||||
tabbedPane.insertTab(trans.get("ParachuteCfg.tab.Radialpos"), null, positionTab(),
|
||||
trans.get("ParachuteCfg.tab.ttip.Radialpos"), 1);
|
||||
tabbedPane.setSelectedIndex(0);
|
||||
|
||||
// Apply the custom focus travel policy to this config dialog
|
||||
CustomFocusTraversalPolicy policy = new CustomFocusTraversalPolicy(order);
|
||||
parent.setFocusTraversalPolicy(policy);
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ -280,6 +298,7 @@ public class ParachuteConfig extends RecoveryDeviceConfig {
|
||||
JSpinner spin = new JSpinner(m.getSpinnerModel());
|
||||
spin.setEditor(new SpinnerEditor(spin));
|
||||
panel.add(spin, "growx");
|
||||
order.add(((SpinnerEditor) spin.getEditor()).getTextField());
|
||||
|
||||
panel.add(new UnitSelector(m), "growx");
|
||||
panel.add(new BasicSlider(m.getSliderModel(0, 0.1, 1.0)), "w 100lp, wrap");
|
||||
@ -293,6 +312,7 @@ public class ParachuteConfig extends RecoveryDeviceConfig {
|
||||
spin = new JSpinner(m.getSpinnerModel());
|
||||
spin.setEditor(new SpinnerEditor(spin));
|
||||
panel.add(spin, "growx");
|
||||
order.add(((SpinnerEditor) spin.getEditor()).getTextField());
|
||||
|
||||
panel.add(new UnitSelector(m), "growx");
|
||||
panel.add(new BasicSlider(m.getSliderModel(-Math.PI, Math.PI)), "w 100lp, wrap");
|
||||
@ -308,7 +328,12 @@ public class ParachuteConfig extends RecoveryDeviceConfig {
|
||||
}
|
||||
});
|
||||
panel.add(button, "spanx, right");
|
||||
|
||||
order.add(button);
|
||||
|
||||
// Apply the custom focus travel policy to this panel
|
||||
CustomFocusTraversalPolicy policy = new CustomFocusTraversalPolicy(order);
|
||||
parent.setFocusTraversalPolicy(policy);
|
||||
|
||||
return panel;
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user