Mega Code Archive

 
Categories / Java / Swing JFC
 

Modal Message Dialog

/* This file is part of BORG.     BORG is free software; you can redistribute it and/or modify     it under the terms of the GNU General Public License as published by     the Free Software Foundation; either version 2 of the License, or     (at your option) any later version.     BORG is distributed in the hope that it will be useful,     but WITHOUT ANY WARRANTY; without even the implied warranty of     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the     GNU General Public License for more details.     You should have received a copy of the GNU General Public License     along with BORG; if not, write to the Free Software     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA Copyright 2003 by Mike Berger */ /*  * helpscrn.java  *  * Created on October 5, 2003, 8:55 AM  */ import java.awt.Dimension; import java.awt.GridBagConstraints; import java.awt.GridBagLayout; import java.awt.Toolkit; import javax.swing.JButton; import javax.swing.JDialog; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTextArea; import javax.swing.SwingUtilities; public class ModalMessage extends JDialog {       public ModalMessage(String s, boolean enabled) {         initComponents();             jTextArea.setText(s);         okButton.setEnabled(enabled);         setModal(true);            }     public void setEnabled(boolean e)     {       okButton.setEnabled(e);     }     public void setText(String s)     {       jTextArea.setText(s);     }          public void appendText(String s)     {       String t = jTextArea.getText();       t += "\n" + s;       jTextArea.setText(t);     }          private void initComponents()//GEN-BEGIN:initComponents     {       //this.setUndecorated(true);         setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);         setTitle("BORG");         this.setSize(165, 300);         this.setContentPane(getJPanel());                  pack();                  Dimension screenSize =             Toolkit.getDefaultToolkit().getScreenSize();           Dimension labelSize = jScrollPane.getPreferredSize();           setLocation(screenSize.width/2 - (labelSize.width/2),                       screenSize.height/2 - (labelSize.height/2));     }               private JPanel jPanel = null;   private JScrollPane jScrollPane = null;   private JTextArea jTextArea = null;      /**    * This method initializes jPanel     *      * @return javax.swing.JPanel     */   private JPanel getJPanel() {     if (jPanel == null) {       GridBagConstraints gridBagConstraints1 = new GridBagConstraints();       gridBagConstraints1.gridx = 0;  // Generated       gridBagConstraints1.fill = java.awt.GridBagConstraints.BOTH;  // Generated       gridBagConstraints1.gridy = 1;  // Generated       GridBagConstraints gridBagConstraints = new GridBagConstraints();       gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;  // Generated       gridBagConstraints.gridy = 0;  // Generated       gridBagConstraints.weightx = 1.0;  // Generated       gridBagConstraints.weighty = 1.0;  // Generated       gridBagConstraints.insets = new java.awt.Insets(4,4,4,4);  // Generated       gridBagConstraints.gridx = 0;  // Generated       jPanel = new JPanel();       jPanel.setLayout(new GridBagLayout());  // Generated       jPanel.add(getJScrollPane(), gridBagConstraints);  // Generated       jPanel.add(getButtonPanel(), gridBagConstraints1);     }     return jPanel;   }   /**    * This method initializes jScrollPane      *      * @return javax.swing.JScrollPane      */   private JScrollPane getJScrollPane() {     if (jScrollPane == null) {       jScrollPane = new JScrollPane();       jScrollPane.setPreferredSize(new java.awt.Dimension(600,200));  // Generated       jScrollPane.setViewportView(getJTextArea());  // Generated     }     return jScrollPane;   }   /**    * This method initializes jTextArea      *      * @return javax.swing.JTextArea      */   private JTextArea getJTextArea() {     if (jTextArea == null) {       jTextArea = new JTextArea();       jTextArea.setEditable(false);  // Generated       jTextArea.setLineWrap(true);  // Generated     }     return jTextArea;   }   /**    * This method initializes buttonPanel      *      * @return javax.swing.JPanel     */   private JPanel buttonPanel = null;   private JPanel getButtonPanel() {     if (buttonPanel == null) {       buttonPanel = new JPanel();       buttonPanel.add(getOkButton(), null);  // Generated            }     return buttonPanel;   }   /**    * This method initializes okButton     *      * @return javax.swing.JButton      */   private JButton okButton = null;   private JButton getOkButton() {     if (okButton == null) {       okButton = new JButton();       okButton.setText("OK");       okButton.addActionListener(new java.awt.event.ActionListener() {         public void actionPerformed(java.awt.event.ActionEvent e) {           doOk();         }       });     }     return okButton;   }   private void doOk()   {     this.dispose();   }   public static void main( String args[])     {     final ModalMessage mm = new ModalMessage("duh\nduh\nduh", false);     SwingUtilities.invokeLater(new Runnable() {       public void run() {           mm.setVisible(true);               }     });     SwingUtilities.invokeLater(new Runnable() {       public void run() {           mm.appendText("another line");           mm.setEnabled(true);               }     });            } }  //  @jve:decl-index=0:visual-constraint="10,10"