import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util.*; import java.io.*; public class selectServer extends JInternalFrame { String selectedServer; desktop d; String dFileName="defaultServer.txt"; public selectServer(desktop d) { super("Select Server", true, true, true, true); this.d = d; File dfile = new File(dFileName); if(dfile.exists()) { try { FileReader fr = new FileReader(dfile); BufferedReader in = new BufferedReader(fr); selectedServer = in.readLine(); in.close(); } catch (Exception e) {System.out.println(e);} d.setSelectedServer(selectedServer); } JPanel bck = new JPanel(); getContentPane().add(bck); bck.setLayout(new BorderLayout()); JPanel titlePanel = new JPanel(); titlePanel.setLayout(new GridLayout(3,1)); titlePanel.add(new JLabel(" ")); titlePanel.add(new JLabel("Select Server", JLabel.CENTER)); titlePanel.add(new JLabel(" ")); bck.add(titlePanel,BorderLayout.NORTH); JPanel ss = new JPanel(); ss.setLayout(new GridLayout(2,1)); String[] servers = new String[5]; servers[0] = "osprey4.npac.syr.edu"; servers[1] = "heechee.osc.edu"; servers[2] = "maine.npac.syr.edu"; servers[3] = "titan.erc.msstate.edu"; servers[4] = "test.server"; JComboBox cb = new JComboBox(servers); cb.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent e) { setSelectedServer((String)e.getItem()); } }); setSelectedServer(servers[0]); ss.add(cb); JPanel bp = new JPanel(); ActionListener al = new ActionListener() { public void actionPerformed(ActionEvent e){ String what = e.getActionCommand(); if(what.startsWith("Set as")) { setDefault(); } if(what.equals("Done")) { dispose(); } } }; JButton b1 = new JButton("Set as default"); b1.addActionListener(al); bp.add(b1); JButton b2 = new JButton("Done"); b2.addActionListener(al); bp.add(b2); ss.add(bp); bck.add(ss, BorderLayout.CENTER); } public void setSelectedServer(String h) { selectedServer = h; d.setSelectedServer(h); System.out.println("setSelectedServer "+h); } public void setDefault() { try { FileWriter fw = new FileWriter(dFileName); fw.write(selectedServer); fw.flush(); fw.close(); } catch (Exception e) { System.out.println(e);} } }