mev-4.0.01/source/org/tigr/microarray/util/swing/ModalDialog.java

Code
Comments
Other
Rev Date Author Line
2 26 Feb 07 jari 1 /*
2 26 Feb 07 jari 2  * ModalDialog.java
2 26 Feb 07 jari 3  *
2 26 Feb 07 jari 4  * Created on November 22, 2003, 4:14 AM
2 26 Feb 07 jari 5  */
2 26 Feb 07 jari 6
2 26 Feb 07 jari 7 package org.tigr.microarray.util.swing;
2 26 Feb 07 jari 8
2 26 Feb 07 jari 9 import java.awt.BorderLayout;
2 26 Feb 07 jari 10 import java.awt.Container;
2 26 Feb 07 jari 11 import java.awt.Dimension;
2 26 Feb 07 jari 12 import java.awt.GridLayout;
2 26 Feb 07 jari 13 import java.awt.Toolkit;
2 26 Feb 07 jari 14 import java.awt.event.ActionEvent;
2 26 Feb 07 jari 15 import java.awt.event.ActionListener;
2 26 Feb 07 jari 16 import java.awt.event.WindowAdapter;
2 26 Feb 07 jari 17 import java.awt.event.WindowEvent;
2 26 Feb 07 jari 18
2 26 Feb 07 jari 19 import javax.swing.JButton;
2 26 Feb 07 jari 20 import javax.swing.JOptionPane;
2 26 Feb 07 jari 21 import javax.swing.JPanel;
2 26 Feb 07 jari 22
2 26 Feb 07 jari 23
2 26 Feb 07 jari 24 /**
2 26 Feb 07 jari 25  *
2 26 Feb 07 jari 26  * @author  Adam Margolin
2 26 Feb 07 jari 27  */
2 26 Feb 07 jari 28 public class ModalDialog extends javax.swing.JDialog {
2 26 Feb 07 jari 29     private int result;
2 26 Feb 07 jari 30     
2 26 Feb 07 jari 31     /** Creates new form ModalDialog */
2 26 Feb 07 jari 32     public ModalDialog(java.awt.Frame parent) {
2 26 Feb 07 jari 33         super(parent, true);
2 26 Feb 07 jari 34         initComponents();
2 26 Feb 07 jari 35         
2 26 Feb 07 jari 36   Listener listener = new Listener();
2 26 Feb 07 jari 37   JPanel btnsPanel = createBtnsPanel(listener);
2 26 Feb 07 jari 38   
2 26 Feb 07 jari 39   Container content = getContentPane();
2 26 Feb 07 jari 40         
2 26 Feb 07 jari 41         /*
2 26 Feb 07 jari 42   content.setLayout(new GridBagLayout());
2 26 Feb 07 jari 43   
2 26 Feb 07 jari 44   content.add(btnsPanel, new GridBagConstraints(0, 1, 1, 1, 1.0, 0.0
2 26 Feb 07 jari 45   ,GridBagConstraints.CENTER, GridBagConstraints.NONE, new Insets(4, 8, 4, 8), 0, 0));
2 26 Feb 07 jari 46          */
2 26 Feb 07 jari 47         content.setLayout(new BorderLayout());
2 26 Feb 07 jari 48         content.add(btnsPanel, BorderLayout.SOUTH);
2 26 Feb 07 jari 49         
2 26 Feb 07 jari 50   addWindowListener(listener);
2 26 Feb 07 jari 51   pack();
2 26 Feb 07 jari 52     }
2 26 Feb 07 jari 53     
2 26 Feb 07 jari 54     /** This method is called from within the constructor to
2 26 Feb 07 jari 55      * initialize the form.
2 26 Feb 07 jari 56      * WARNING: Do NOT modify this code. The content of this method is
2 26 Feb 07 jari 57      * always regenerated by the Form Editor.
2 26 Feb 07 jari 58      */
2 26 Feb 07 jari 59     private void initComponents() {//GEN-BEGIN:initComponents
2 26 Feb 07 jari 60         
2 26 Feb 07 jari 61         addWindowListener(new java.awt.event.WindowAdapter() {
2 26 Feb 07 jari 62             public void windowClosing(java.awt.event.WindowEvent evt) {
2 26 Feb 07 jari 63                 closeDialog(evt);
2 26 Feb 07 jari 64             }
2 26 Feb 07 jari 65         });
2 26 Feb 07 jari 66         
2 26 Feb 07 jari 67         pack();
2 26 Feb 07 jari 68     }//GEN-END:initComponents
2 26 Feb 07 jari 69     
2 26 Feb 07 jari 70     /** Closes the dialog */
2 26 Feb 07 jari 71     private void closeDialog(java.awt.event.WindowEvent evt) {//GEN-FIRST:event_closeDialog
2 26 Feb 07 jari 72         setVisible(false);
2 26 Feb 07 jari 73         dispose();
2 26 Feb 07 jari 74     }//GEN-LAST:event_closeDialog
2 26 Feb 07 jari 75     
2 26 Feb 07 jari 76     /**
2 26 Feb 07 jari 77      * Shows the dialog.
2 26 Feb 07 jari 78      */
2 26 Feb 07 jari 79     public int showModal() {
2 26 Feb 07 jari 80   Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
2 26 Feb 07 jari 81   setLocation((screenSize.width - getSize().width)/2, (screenSize.height - getSize().height)/2);
2 26 Feb 07 jari 82   show();
2 26 Feb 07 jari 83   return result;
2 26 Feb 07 jari 84     }
2 26 Feb 07 jari 85     
2 26 Feb 07 jari 86     /**
2 26 Feb 07 jari 87      * Creates a panel with 'OK' and 'Cancel' buttons.
2 26 Feb 07 jari 88      */
2 26 Feb 07 jari 89     private JPanel createBtnsPanel(ActionListener listener) {
2 26 Feb 07 jari 90   GridLayout gridLayout = new GridLayout();
2 26 Feb 07 jari 91   JPanel panel = new JPanel(gridLayout);
2 26 Feb 07 jari 92   
2 26 Feb 07 jari 93   JButton okButton = new JButton("OK");
2 26 Feb 07 jari 94   okButton.setActionCommand("ok-command");
2 26 Feb 07 jari 95   okButton.addActionListener(listener);
2 26 Feb 07 jari 96   panel.add(okButton);
2 26 Feb 07 jari 97   
2 26 Feb 07 jari 98   JButton cancelButton = new JButton("Cancel");
2 26 Feb 07 jari 99   cancelButton.setActionCommand("cancel-command");
2 26 Feb 07 jari 100   cancelButton.addActionListener(listener);
2 26 Feb 07 jari 101   gridLayout.setHgap(4);
2 26 Feb 07 jari 102   panel.add(cancelButton);
2 26 Feb 07 jari 103   
2 26 Feb 07 jari 104   getRootPane().setDefaultButton(okButton);
2 26 Feb 07 jari 105   
2 26 Feb 07 jari 106   return panel;
2 26 Feb 07 jari 107     }
2 26 Feb 07 jari 108     
2 26 Feb 07 jari 109     /**
2 26 Feb 07 jari 110      * Listener to listen to window and action events.
2 26 Feb 07 jari 111      */
2 26 Feb 07 jari 112     private class Listener extends WindowAdapter implements ActionListener {
2 26 Feb 07 jari 113   
2 26 Feb 07 jari 114   public void actionPerformed(ActionEvent e) {
2 26 Feb 07 jari 115       String command = e.getActionCommand();
2 26 Feb 07 jari 116       if (command.equals("ok-command")) {
2 26 Feb 07 jari 117     result = JOptionPane.OK_OPTION;
2 26 Feb 07 jari 118     dispose();
2 26 Feb 07 jari 119       } else if (command.equals("cancel-command")) {
2 26 Feb 07 jari 120     result = JOptionPane.CANCEL_OPTION;
2 26 Feb 07 jari 121     dispose();
2 26 Feb 07 jari 122       }
2 26 Feb 07 jari 123   }
2 26 Feb 07 jari 124   
2 26 Feb 07 jari 125   public void windowClosing(WindowEvent e) {
2 26 Feb 07 jari 126       result = JOptionPane.CLOSED_OPTION;
2 26 Feb 07 jari 127       dispose();
2 26 Feb 07 jari 128   }
2 26 Feb 07 jari 129   
2 26 Feb 07 jari 130     }
2 26 Feb 07 jari 131     
2 26 Feb 07 jari 132     // Variables declaration - do not modify//GEN-BEGIN:variables
2 26 Feb 07 jari 133     // End of variables declaration//GEN-END:variables
2 26 Feb 07 jari 134     
2 26 Feb 07 jari 135 }