- altUnitsPanel.setLayout(new FlowLayout(FlowLayout.LEFT));
- altUnitsPanel.add(new JLabel(I18nManager.getText("dialog.openoptions.altitudeunits")));
- String[] units = {I18nManager.getText("units.metres"), I18nManager.getText("units.feet")};
- _unitsDropDown = new JComboBox(units);
- altUnitsPanel.add(_unitsDropDown);
- secondCard.add(altUnitsPanel, BorderLayout.SOUTH);
- _cardPanel.add(firstCard, "card1");
- _cardPanel.add(secondCard, "card2");
-
- wholePanel.add(_cardPanel, BorderLayout.CENTER);
+ GuiGridLayout altGrid = new GuiGridLayout(altUnitsPanel);
+ altUnitsPanel.setBorder(BorderFactory.createTitledBorder(I18nManager.getText("fieldname.altitude")));
+ JLabel altLabel = new JLabel(I18nManager.getText("dialog.openoptions.altitudeunits") + ": ");
+ altGrid.add(altLabel);
+ String[] altUnits = {I18nManager.getText("units.metres"), I18nManager.getText("units.feet")};
+ _altitudeUnitsDropdown = new JComboBox<String>(altUnits);
+ altGrid.add(_altitudeUnitsDropdown);
+ holderPanel.add(altUnitsPanel);
+ // Horizontal speed
+ JPanel speedPanel = new JPanel();
+ GuiGridLayout speedGrid = new GuiGridLayout(speedPanel);
+ speedPanel.setBorder(BorderFactory.createTitledBorder(I18nManager.getText("fieldname.speed")));
+ JLabel speedLabel = new JLabel(I18nManager.getText("dialog.openoptions.speedunits") + ": ");
+ speedGrid.add(speedLabel);
+ _hSpeedUnitsDropdown = new JComboBox<String>();
+ for (Unit spUnit : UnitSetLibrary.ALL_SPEED_UNITS) {
+ _hSpeedUnitsDropdown.addItem(I18nManager.getText(spUnit.getNameKey()));
+ }
+ speedGrid.add(_hSpeedUnitsDropdown);
+ holderPanel.add(speedPanel);
+ // Vertical speed
+ JPanel vSpeedPanel = new JPanel();
+ GuiGridLayout vSpeedGrid = new GuiGridLayout(vSpeedPanel);
+ vSpeedPanel.setBorder(BorderFactory.createTitledBorder(I18nManager.getText("fieldname.verticalspeed")));
+ JLabel vSpeedLabel = new JLabel(I18nManager.getText("dialog.openoptions.vertspeedunits") + ": ");
+ vSpeedGrid.add(vSpeedLabel);
+ _vSpeedUnitsDropdown = new JComboBox<String>();
+ for (Unit spUnit : UnitSetLibrary.ALL_SPEED_UNITS) {
+ _vSpeedUnitsDropdown.addItem(I18nManager.getText(spUnit.getNameKey()));
+ }
+ vSpeedGrid.add(_vSpeedUnitsDropdown);
+ final String vSpeedLabelText = I18nManager.getText("dialog.openoptions.vspeed.intro");
+ if (!vSpeedLabelText.isEmpty()) {
+ vSpeedGrid.add(new JLabel(vSpeedLabelText));
+ vSpeedGrid.add(new JLabel(""));
+ }
+ _vSpeedUpwardsRadio = new JRadioButton(I18nManager.getText("dialog.openoptions.vspeed.positiveup"));
+ JRadioButton vSpeedDownwardsRadio = new JRadioButton(I18nManager.getText("dialog.openoptions.vspeed.positivedown"));
+ ButtonGroup vSpeedDirGroup = new ButtonGroup();
+ vSpeedDirGroup.add(_vSpeedUpwardsRadio); vSpeedDirGroup.add(vSpeedDownwardsRadio);
+ vSpeedGrid.add(_vSpeedUpwardsRadio); vSpeedGrid.add(vSpeedDownwardsRadio);
+ _vSpeedUpwardsRadio.setSelected(true);
+ holderPanel.add(vSpeedPanel);
+ thirdCard.add(holderPanel, BorderLayout.NORTH);
+
+ // Make a hider to show and hide the components according to the selected fields
+ _componentHider = new ComponentHider();
+ _componentHider.addComponent(altLabel, Field.ALTITUDE);
+ _componentHider.addComponent(_altitudeUnitsDropdown, Field.ALTITUDE);
+ _componentHider.addComponent(speedLabel, Field.SPEED);
+ _componentHider.addComponent(_hSpeedUnitsDropdown, Field.SPEED);
+ _componentHider.addComponent(vSpeedLabel, Field.VERTICAL_SPEED);
+ _componentHider.addComponent(_vSpeedUnitsDropdown, Field.VERTICAL_SPEED);
+ _componentHider.addComponent(_vSpeedUpwardsRadio, Field.VERTICAL_SPEED);
+ _componentHider.addComponent(vSpeedDownwardsRadio, Field.VERTICAL_SPEED);
+
+ // Add cards to the wizard
+ _wizard.addCard(firstCard);
+ _wizard.addCard(secondCard);
+ _wizard.addCard(thirdCard);
+
+ wholePanel.add(cardPanel, BorderLayout.CENTER);