//
// This file is part of the prose package.
//
// The contents of this file are subject to the Mozilla Public License
// Version 1.1 (the "License"); you may not use this file except in
// compliance with the License. You may obtain a copy of the License at
// http://www.mozilla.org/MPL/
//
// Software distributed under the License is distributed on an "AS IS" basis,
// WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
// for the specific language governing rights and limitations under the
// License.
//
// The Original Code is prose.
//
// The Initial Developer of the Original Code is Andrei Popovici. Portions
// created by Andrei Popovici are Copyright (C) 2002 Andrei Popovici.
// All Rights Reserved.
//
// Contributor(s):
// $Id: JRemoveVMDialog.java,v 1.3 2008/11/18 11:43:39 anicoara Exp $
// ================================================================
//
package ch.ethz.prose.tools;
import java.util.Map;
import java.util.Vector;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JComboBox;
import javax.swing.JOptionPane;
/**
* @author pschoch
*/
public class JRemoveVMDialog extends javax.swing.JDialog {
private static final long serialVersionUID = 3257285812134491960L;
private Map vmMap;
private String nameVM = null;
private String urlVM = null;
/**
* Creates new form JRemoveVMDialog
*/
public JRemoveVMDialog(java.awt.Frame parent, boolean modal) {
super(parent, modal);
initComponents();
this.setLocationRelativeTo(this.getParent());
}
/**
* This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
private void initComponents() {//GEN-BEGIN:initComponents
jPanel1 = new javax.swing.JPanel();
comboBoxPanel = new javax.swing.JPanel();
jLabel1 = new javax.swing.JLabel();
jComboBox1 = new javax.swing.JComboBox();
viewPanel = new javax.swing.JPanel();
urlLabel = new javax.swing.JLabel();
urlTextField = new javax.swing.JTextField();
buttons = new javax.swing.JPanel();
removeButton = new javax.swing.JButton();
cancelButton = new javax.swing.JButton();
setTitle("Remove Virtual Machine");
setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
setName("removeVMDialog");
addWindowListener(new java.awt.event.WindowAdapter() {
public void windowClosing(java.awt.event.WindowEvent evt) {
closeDialog(evt);
}
});
jPanel1.setLayout(new java.awt.BorderLayout());
jPanel1.setPreferredSize(new java.awt.Dimension(380, 138));
jPanel1.setMinimumSize(new java.awt.Dimension(380, 138));
comboBoxPanel.setBorder(new javax.swing.border.CompoundBorder(new javax.swing.border.CompoundBorder(new javax.swing.border.EmptyBorder(new java.awt.Insets(1, 10, 1, 10)), new javax.swing.border.EtchedBorder()), new javax.swing.border.EmptyBorder(new java.awt.Insets(5, 1, 5, 1))));
comboBoxPanel.setPreferredSize(new java.awt.Dimension(350, 80));
comboBoxPanel.setMinimumSize(new java.awt.Dimension(350, 80));
comboBoxPanel.setMaximumSize(new java.awt.Dimension(350, 80));
jLabel1.setText("Name:");
jLabel1.setPreferredSize(new java.awt.Dimension(60, 29));
jLabel1.setBorder(new javax.swing.border.EmptyBorder(new java.awt.Insets(1, 1, 1, 10)));
jLabel1.setMinimumSize(new java.awt.Dimension(100, 29));
jLabel1.setMaximumSize(new java.awt.Dimension(100, 29));
comboBoxPanel.add(jLabel1);
java.util.List l = ((JMultipleProseClient)getOwner()).getModel().getAllVM();
java.util.Iterator i = l.iterator();
vmMap = new java.util.HashMap();
while (i.hasNext()) {
WorksheetSingleClientModel crtM = (WorksheetSingleClientModel)i.next();
vmMap.put(crtM.getName(),crtM);
}
jComboBox1.setModel(new DefaultComboBoxModel(new Vector(vmMap.keySet())));
nameVM = (String)jComboBox1.getSelectedItem();
urlVM = ((WorksheetSingleClientModel)vmMap.get(nameVM)).getAddress();
jComboBox1.setPreferredSize(new java.awt.Dimension(280, 50));
jComboBox1.setBorder(new javax.swing.border.EmptyBorder(new java.awt.Insets(10, 10, 10, 10)));
jComboBox1.setMinimumSize(new java.awt.Dimension(280, 50));
jComboBox1.setMaximumSize(new java.awt.Dimension(280, 50));
jComboBox1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jComboBoxActionPerformed(evt);
}
});
comboBoxPanel.add(jComboBox1);
jPanel1.add(comboBoxPanel, java.awt.BorderLayout.NORTH);
viewPanel.setBorder(new javax.swing.border.CompoundBorder(new javax.swing.border.CompoundBorder(new javax.swing.border.EmptyBorder(new java.awt.Insets(1, 10, 1, 10)), new javax.swing.border.EtchedBorder()), new javax.swing.border.EmptyBorder(new java.awt.Insets(5, 1, 5, 1))));
viewPanel.setPreferredSize(new java.awt.Dimension(370, 58));
viewPanel.setMinimumSize(new java.awt.Dimension(350, 58));
viewPanel.setMaximumSize(new java.awt.Dimension(400, 58));
urlLabel.setText("URL:");
urlLabel.setHorizontalAlignment(javax.swing.SwingConstants.TRAILING);
urlLabel.setPreferredSize(new java.awt.Dimension(50, 29));
urlLabel.setBorder(new javax.swing.border.EmptyBorder(new java.awt.Insets(1, 1, 1, 10)));
urlLabel.setMinimumSize(new java.awt.Dimension(100, 29));
urlLabel.setMaximumSize(new java.awt.Dimension(100, 29));
viewPanel.add(urlLabel);
urlTextField.setToolTipText(urlVM);
urlTextField.setEditable(false);
urlTextField.setFont(new java.awt.Font("Dialog", 1, 12));
urlTextField.setText(urlVM);
urlTextField.setPreferredSize(new java.awt.Dimension(280, 29));
urlTextField.setMaximumSize(new java.awt.Dimension(280, 29));
urlTextField.setMinimumSize(new java.awt.Dimension(280, 29));
viewPanel.add(urlTextField);
jPanel1.add(viewPanel, java.awt.BorderLayout.SOUTH);
getContentPane().add(jPanel1, java.awt.BorderLayout.CENTER);
buttons.setLayout(new java.awt.FlowLayout(java.awt.FlowLayout.CENTER, 20, 15));
buttons.setPreferredSize(new java.awt.Dimension(300, 59));
buttons.setMinimumSize(new java.awt.Dimension(300, 59));
removeButton.setMnemonic('R');
removeButton.setText("Remove");
removeButton.setPreferredSize(new java.awt.Dimension(91, 29));
removeButton.setMaximumSize(new java.awt.Dimension(91, 29));
removeButton.setMinimumSize(new java.awt.Dimension(91, 29));
removeButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
removeButtonActionPerformed(evt);
}
});
buttons.add(removeButton);
cancelButton.setMnemonic('C');
cancelButton.setText("Cancel");
cancelButton.setPreferredSize(new java.awt.Dimension(91, 29));
cancelButton.setMaximumSize(new java.awt.Dimension(91, 29));
cancelButton.setMinimumSize(new java.awt.Dimension(91, 29));
cancelButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cancelButtonActionPerformed(evt);
}
});
buttons.add(cancelButton);
getContentPane().add(buttons, java.awt.BorderLayout.SOUTH);
pack();
}//GEN-END:initComponents
private void jComboBoxActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jComboBoxActionPerformed
nameVM = (String)((JComboBox)evt.getSource()).getSelectedItem();
urlVM = ((WorksheetSingleClientModel)vmMap.get(nameVM)).getAddress();
urlTextField.setText(urlVM);
urlTextField.setToolTipText(urlVM);
}//GEN-LAST:event_jComboBoxActionPerformed
private void removeButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_removeButtonActionPerformed
int n = JOptionPane.showConfirmDialog(this, "Are you sure you want to remove VM " + nameVM + "?",
"Remove VM Confirmation", JOptionPane.YES_NO_OPTION);
if (n == JOptionPane.NO_OPTION)
return;
else if (n == JOptionPane.YES_OPTION)
{
((JMultipleProseClient)getOwner()).removeTab(nameVM);
setVisible(false);
dispose();
}
}//GEN-LAST:event_removeButtonActionPerformed
private void cancelButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cancelButtonActionPerformed
setVisible(false);
dispose();
}//GEN-LAST:event_cancelButtonActionPerformed
/** Closes the dialog */
private void closeDialog(java.awt.event.WindowEvent evt) {//GEN-FIRST:event_closeDialog
setVisible(false);
dispose();
}//GEN-LAST:event_closeDialog
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
// new JRemoveVMDialog(new javax.swing.JFrame(), true).show(); // deprecated since JDK 1.5
new JRemoveVMDialog(new javax.swing.JFrame(), true).setVisible(true); // replaces show()
}
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JTextField urlTextField;
private javax.swing.JPanel comboBoxPanel;
private javax.swing.JComboBox jComboBox1;
private javax.swing.JPanel buttons;
private javax.swing.JButton cancelButton;
private javax.swing.JLabel urlLabel;
private javax.swing.JLabel jLabel1;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel viewPanel;
private javax.swing.JButton removeButton;
// End of variables declaration//GEN-END:variables
}