package org.jacorb.demo.notification.whiteboard; import java.util.Enumeration; import java.awt.Frame; /** * @author * @version */ public class SelectDialog extends java.awt.Dialog { /** Initializes the Form */ public SelectDialog(Frame parentFrame, WorkgroupController controller) { super (parentFrame, "Select a Whiteboard"); initComponents (); controller_ = controller; pack (); refresh(); } private void initComponents () { addWindowListener (new java.awt.event.WindowAdapter () { public void windowClosing (java.awt.event.WindowEvent evt) { closeDialog (evt); } } ); setLayout (new java.awt.BorderLayout ()); panel1 = new java.awt.Panel (); panel1.setName ("buttonPanel"); panel1.setLayout (new java.awt.FlowLayout ()); joinButton = new java.awt.Button (); joinButton.setLabel ("Join"); joinButton.setName ("joinButton"); joinButton.addActionListener (new java.awt.event.ActionListener () { public void actionPerformed (java.awt.event.ActionEvent evt) { joinButtonActionPerformed (evt); } } ); panel1.add (joinButton); refreshButton = new java.awt.Button (); refreshButton.setLabel ("Refresh"); refreshButton.setName ("refreshButton"); refreshButton.addActionListener (new java.awt.event.ActionListener () { public void actionPerformed (java.awt.event.ActionEvent evt) { refreshButtonActionPerformed (evt); } } ); panel1.add (refreshButton); add (panel1, "South"); availableList = new java.awt.List (); availableList.addActionListener( new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { selectionTField.setText(availableList.getSelectedItem() ); } } ); availableList.setName ("availableList"); add (availableList, "Center"); selectionTField = new java.awt.TextField (); add (selectionTField, "North"); } private void refreshButtonActionPerformed (java.awt.event.ActionEvent evt) { refresh(); } private void joinButtonActionPerformed (java.awt.event.ActionEvent evt) { String result = selectionTField.getText(); if ( result.length() > 0 ) { controller_.selectWhiteboard(result); close(); } } void refresh() { availableList.removeAll(); String[] _list = controller_.getListOfWhiteboards(); for (int x=0; x<_list.length; ++x) { availableList.add(_list[x]); } } /** Closes the dialog */ private void closeDialog(java.awt.event.WindowEvent evt) { close(); } void close() { setVisible (false); dispose (); } private java.awt.Panel panel1; private java.awt.Button joinButton; private java.awt.Button refreshButton; private java.awt.List availableList; private java.awt.TextField selectionTField; private WorkgroupController controller_; }