X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=altosui%2FAltosConfigureUI.java;h=85a3f6c0d455954253486536e4abddf7b37a1f90;hp=0e411b03e4dfc7f87fc4641f40f9a86c1bfb18d2;hb=5a51efd7f9b49ffadc91ccaf7a0d69566301c009;hpb=5ce43661834920c3a8f3a1b6e1c555fb952b512d diff --git a/altosui/AltosConfigureUI.java b/altosui/AltosConfigureUI.java index 0e411b03..85a3f6c0 100644 --- a/altosui/AltosConfigureUI.java +++ b/altosui/AltosConfigureUI.java @@ -22,7 +22,7 @@ import java.awt.event.*; import java.beans.*; import javax.swing.*; import javax.swing.event.*; -import org.altusmetrum.altosuilib.*; +import org.altusmetrum.altosuilib_3.*; public class AltosConfigureUI extends AltosUIConfigure @@ -31,6 +31,7 @@ public class AltosConfigureUI AltosVoice voice; public JTextField callsign_value; + public JComboBox position_value; /* DocumentListener interface methods */ public void insertUpdate(DocumentEvent e) { @@ -42,7 +43,7 @@ public class AltosConfigureUI } public void changedUpdate(DocumentEvent e) { - if (callsign_value != null) + if (callsign_value != null) AltosUIPreferences.set_callsign(callsign_value.getText()); } @@ -81,13 +82,15 @@ public class AltosConfigureUI /* Callsign setting */ pane.add(new JLabel("Callsign"), constraints(0, 1)); - JTextField callsign_value = new JTextField(AltosUIPreferences.callsign()); + callsign_value = new JTextField(AltosUIPreferences.callsign()); callsign_value.getDocument().addDocumentListener(this); callsign_value.setToolTipText("Callsign sent in packet mode"); pane.add(callsign_value, constraints(1, 2, GridBagConstraints.BOTH)); row++; } + boolean has_bluetooth; + public void add_bluetooth() { JButton manage_bluetooth = new JButton("Manage Bluetooth"); manage_bluetooth.addActionListener(new ActionListener() { @@ -97,6 +100,7 @@ public class AltosConfigureUI }); pane.add(manage_bluetooth, constraints(0, 2)); /* in the same row as add_frequencies, so don't bump row */ + has_bluetooth = true; } public void add_frequencies() { @@ -107,7 +111,40 @@ public class AltosConfigureUI } }); manage_frequencies.setToolTipText("Configure which values are shown in frequency menus"); - pane.add(manage_frequencies, constraints(2, 1)); + if (has_bluetooth) + pane.add(manage_frequencies, constraints(2, 1)); + else + pane.add(manage_frequencies, constraints(0, 3)); + row++; + } + + final static String[] position_names = { + "Top left", + "Top", + "Top right", + "Left", + "Center", + "Right", + "Bottom left", + "Bottom", + "Bottom right", + }; + + public void add_position() { + pane.add(new JLabel ("Menu position"), constraints(0, 1)); + + position_value = new JComboBox(position_names); + position_value.setMaximumRowCount(position_names.length); + int position = AltosUIPreferences.position(); + position_value.setSelectedIndex(position); + position_value.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + int position = position_value.getSelectedIndex(); + AltosUIPreferences.set_position(position); + } + }); + pane.add(position_value, constraints(1, 2, GridBagConstraints.BOTH)); + position_value.setToolTipText("Position of main AltosUI window"); row++; }