altosui: Use persistent list of bluetooth devices for device dialogs
[fw/altos] / altosui / AltosConfigureUI.java
index ab3d950e0edba960c98b80563074451f0b6e151e..0f5e4a3bd3a7335fdcc1fc8da9e54b8c7beb2de0 100644 (file)
@@ -49,6 +49,8 @@ public class AltosConfigureUI
 
        JRadioButton    serial_debug;
 
+       JButton         manage_bluetooth;
+
        /* DocumentListener interface methods */
        public void changedUpdate(DocumentEvent e) {
                AltosPreferences.set_callsign(callsign_value.getText());
@@ -87,9 +89,16 @@ public class AltosConfigureUI
                c.anchor = GridBagConstraints.CENTER;
                pane.add(new JLabel ("Configure AltOS UI"), c);
 
-               /* Voice settings */
                c.gridx = 0;
                c.gridy = 1;
+               c.gridwidth = 3;
+               c.fill = GridBagConstraints.NONE;
+               c.anchor = GridBagConstraints.CENTER;
+               pane.add(new JLabel (String.format("AltOS version %s", AltosVersion.version)), c);
+
+               /* Voice settings */
+               c.gridx = 0;
+               c.gridy = 2;
                c.gridwidth = 1;
                c.fill = GridBagConstraints.NONE;
                c.anchor = GridBagConstraints.WEST;
@@ -108,7 +117,7 @@ public class AltosConfigureUI
                                }
                        });
                c.gridx = 1;
-               c.gridy = 1;
+               c.gridy = 2;
                c.gridwidth = 1;
                c.weightx = 1;
                c.fill = GridBagConstraints.NONE;
@@ -116,7 +125,7 @@ public class AltosConfigureUI
                pane.add(enable_voice, c);
 
                c.gridx = 2;
-               c.gridy = 1;
+               c.gridy = 2;
                c.gridwidth = 1;
                c.weightx = 1;
                c.fill = GridBagConstraints.NONE;
@@ -131,7 +140,7 @@ public class AltosConfigureUI
 
                /* Log directory settings */
                c.gridx = 0;
-               c.gridy = 2;
+               c.gridy = 3;
                c.gridwidth = 1;
                c.fill = GridBagConstraints.NONE;
                c.anchor = GridBagConstraints.WEST;
@@ -145,7 +154,7 @@ public class AltosConfigureUI
                                }
                        });
                c.gridx = 1;
-               c.gridy = 2;
+               c.gridy = 3;
                c.gridwidth = 2;
                c.fill = GridBagConstraints.BOTH;
                c.anchor = GridBagConstraints.WEST;
@@ -153,7 +162,7 @@ public class AltosConfigureUI
 
                /* Callsign setting */
                c.gridx = 0;
-               c.gridy = 3;
+               c.gridy = 4;
                c.gridwidth = 1;
                c.fill = GridBagConstraints.NONE;
                c.anchor = GridBagConstraints.WEST;
@@ -162,7 +171,7 @@ public class AltosConfigureUI
                callsign_value = new JTextField(AltosPreferences.callsign());
                callsign_value.getDocument().addDocumentListener(this);
                c.gridx = 1;
-               c.gridy = 3;
+               c.gridy = 4;
                c.gridwidth = 2;
                c.fill = GridBagConstraints.BOTH;
                c.anchor = GridBagConstraints.WEST;
@@ -170,7 +179,7 @@ public class AltosConfigureUI
 
                /* Serial debug setting */
                c.gridx = 0;
-               c.gridy = 4;
+               c.gridy = 5;
                c.gridwidth = 1;
                c.fill = GridBagConstraints.NONE;
                c.anchor = GridBagConstraints.WEST;
@@ -186,12 +195,25 @@ public class AltosConfigureUI
                        });
 
                c.gridx = 1;
-               c.gridy = 4;
+               c.gridy = 5;
                c.gridwidth = 3;
                c.fill = GridBagConstraints.NONE;
                c.anchor = GridBagConstraints.WEST;
                pane.add(serial_debug, c);
 
+               manage_bluetooth = new JButton("Manage Bluetooth");
+               manage_bluetooth.addActionListener(new ActionListener() {
+                               public void actionPerformed(ActionEvent e) {
+                                       AltosBTManage.show(owner, Altos.bt_known);
+                               }
+                       });
+               c.gridx = 1;
+               c.gridy = 6;
+               c.gridwidth = 3;
+               c.fill = GridBagConstraints.NONE;
+               c.anchor = GridBagConstraints.WEST;
+               pane.add(manage_bluetooth, c);
+
                /* And a close button at the bottom */
                close = new JButton("Close");
                close.addActionListener(new ActionListener() {
@@ -200,7 +222,7 @@ public class AltosConfigureUI
                                }
                        });
                c.gridx = 0;
-               c.gridy = 5;
+               c.gridy = 7;
                c.gridwidth = 3;
                c.fill = GridBagConstraints.NONE;
                c.anchor = GridBagConstraints.CENTER;