KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > uk > ac > roe > antigen > dialogs > AbortDialog


1 package uk.ac.roe.antigen.dialogs;
2
3 import java.awt.BorderLayout JavaDoc;
4 import java.awt.Dimension JavaDoc;
5 import java.awt.Toolkit JavaDoc;
6 import java.awt.event.ActionEvent JavaDoc;
7 import java.awt.event.ActionListener JavaDoc;
8 import java.awt.event.WindowAdapter JavaDoc;
9 import java.awt.event.WindowEvent JavaDoc;
10 import java.util.logging.Level JavaDoc;
11 import java.util.logging.Logger JavaDoc;
12
13 import javax.swing.BorderFactory JavaDoc;
14 import javax.swing.ImageIcon JavaDoc;
15 import javax.swing.JButton JavaDoc;
16 import javax.swing.JPanel JavaDoc;
17 import javax.swing.JTextArea JavaDoc;
18 import javax.swing.border.BevelBorder JavaDoc;
19 import javax.swing.border.TitledBorder JavaDoc;
20
21 import uk.ac.roe.antigen.utils.Config;
22
23 public class AbortDialog extends javax.swing.JDialog JavaDoc {
24     /**
25      * Logger for this class
26      */

27     private static final Logger JavaDoc logger = Logger.getLogger(AbortDialog.class.getName());
28
29     private JPanel JavaDoc jPanel1;
30     private JTextArea JavaDoc errorMessageLabel;
31     private JButton JavaDoc okBtn;
32     private String JavaDoc message="Large red error message";
33
34     /**
35     * Auto-generated main method to display this JDialog
36     */

37     public static void main(String JavaDoc[] args) {
38         if (logger.isLoggable(Level.FINER)) {
39             logger.finer("start");
40         }
41
42         BuildLoggerFrame frame = new BuildLoggerFrame();
43         AbortDialog inst = new AbortDialog(frame,"Something went wrong!");
44         BorderLayout JavaDoc instLayout = new BorderLayout JavaDoc();
45         inst.getContentPane().setLayout(instLayout);
46         inst.setVisible(true);
47
48         if (logger.isLoggable(Level.FINER)) {
49             logger.finer("end");
50         }
51     }
52     
53     public AbortDialog(BuildLoggerFrame frame, String JavaDoc message) {
54         super(frame);
55         if (logger.isLoggable(Level.FINER)) {
56             logger.finer("start");
57         }
58
59         this.frame=frame;
60         this.message=message;
61         
62         initGUI();
63
64         if (logger.isLoggable(Level.FINER)) {
65             logger.finer("end");
66         }
67     }
68     
69     private BuildLoggerFrame frame;
70     
71     private void initGUI() {
72         if (logger.isLoggable(Level.FINER)) {
73             logger.finer("start");
74         }
75
76         try {
77             setSize(400, 250);
78
79             this.addWindowListener(new WindowAdapter JavaDoc() {
80                 public void windowClosing(WindowEvent JavaDoc arg0) {
81                  frame.shutDown();
82                 }
83             });
84             {
85                 jPanel1 = new JPanel JavaDoc();
86                 this.getContentPane().add(jPanel1, BorderLayout.SOUTH);
87                 {
88                     okBtn = new JButton JavaDoc();
89                     jPanel1.add(okBtn);
90                     okBtn.setText("OK");
91                     okBtn.setBounds(175, 235, 60, 30);
92                     okBtn.setIcon(new ImageIcon JavaDoc(getClass().getClassLoader().getResource("img/stop.png")));
93
94                     okBtn.addActionListener(new ActionListener JavaDoc() {
95                             public void actionPerformed(ActionEvent JavaDoc evt) {
96                                 setVisible(false);
97                                 frame.shutDown();
98                             }
99                         });
100                 }
101             }
102             {
103                 errorMessageLabel = new JTextArea JavaDoc();
104                 this.getContentPane().add(errorMessageLabel, BorderLayout.CENTER);
105                 errorMessageLabel.setFont(new java.awt.Font JavaDoc("Dialog",0,14));
106                 errorMessageLabel.setForeground(new java.awt.Color JavaDoc(255,0,0));
107                 String JavaDoc borderTitle = Config.getProperty("antigen.dialog.bordertitle","antigen");
108                 errorMessageLabel.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(BevelBorder.RAISED, null, null), borderTitle, TitledBorder.LEADING, TitledBorder.TOP, new java.awt.Font JavaDoc("Eurostile",0,12), new java.awt.Color JavaDoc(0,0,255)));
109                 errorMessageLabel.setLineWrap(true);
110                 errorMessageLabel.setWrapStyleWord(true);
111                 errorMessageLabel.setText(message);
112             }
113         } catch (Exception JavaDoc e) {
114             logger.warning("exception: " + e);
115
116             e.printStackTrace();
117         }
118         this.setLocation(getDialogLocation().width, getDialogLocation().height);
119
120         if (logger.isLoggable(Level.FINER)) {
121             logger.finer("end");
122         }
123     }
124
125
126     /**
127      * Calculates the desired location of the dialog on the screen. By default
128      * it is in the center of the screen.
129      *
130      * @return the desired location of the dialog on the screen
131      */

132     private Dimension JavaDoc getDialogLocation() {
133         if (logger.isLoggable(Level.FINER)) {
134             logger.finer("start");
135         }
136
137         Dimension JavaDoc screenDim = Toolkit.getDefaultToolkit().getScreenSize();
138         Dimension JavaDoc dlgInputDim = this.getSize();
139         int dlgInputX = (int) ((screenDim.getWidth() - dlgInputDim.getWidth()) / 2);
140         int dlgInputY = (int) ((screenDim.getHeight() - dlgInputDim.getHeight()) / 2);
141
142         if (logger.isLoggable(Level.FINER)) {
143             logger.finer("end");
144         }
145         return new Dimension JavaDoc(dlgInputX, dlgInputY);
146     }
147 }
148
Popular Tags