OSDN Git Service

2019-02-11
[hayashilib/hayashi.git] / src / hayashi / yuu / tools / gui / QuitDialog.java
1 package hayashi.yuu.tools.gui;\r
2 \r
3 import java.awt.Font;\r
4 import java.awt.Rectangle;\r
5 import java.awt.Toolkit;\r
6 import java.awt.Window;\r
7 import java.awt.event.WindowEvent;\r
8 import java.awt.event.WindowListener;\r
9 \r
10 import javax.swing.JButton;\r
11 import javax.swing.JDialog;\r
12 import javax.swing.JFrame;\r
13 import javax.swing.JLabel;\r
14 \r
15 @SuppressWarnings("serial")\r
16 public class QuitDialog extends JDialog implements WindowListener\r
17 {\r
18     JButton yesButton;\r
19     JButton noButton;\r
20     JLabel label1;\r
21 \r
22     public QuitDialog(JFrame parent, boolean modal) {\r
23         super(parent, modal);\r
24         addWindowListener((WindowListener) this);\r
25         setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);\r
26 \r
27         setLayout(null);\r
28         setSize(getInsets().left + getInsets().right + 337, getInsets().top + getInsets().bottom + 135);\r
29         \r
30         yesButton = new JButton("  終了  ");\r
31         yesButton.addActionListener(new java.awt.event.ActionListener() {\r
32                 public void actionPerformed(java.awt.event.ActionEvent evt) {\r
33                 Toolkit.getDefaultToolkit().getSystemEventQueue().postEvent(new WindowEvent((Window)getParent(), 201));\r
34                 System.exit(0);\r
35                 }\r
36         });\r
37         yesButton.setBounds(getInsets().left + 72, getInsets().top + 80, 79, 22);\r
38         yesButton.setFont(new Font("Dialog", 1, 12));\r
39         add(yesButton);\r
40 \r
41         noButton = new JButton("キャンセル");\r
42         noButton.addActionListener(new java.awt.event.ActionListener() {\r
43                 public void actionPerformed(java.awt.event.ActionEvent evt) {\r
44                         Toolkit.getDefaultToolkit().getSystemEventQueue().postEvent(new WindowEvent(QuitDialog.this, WindowEvent.WINDOW_CLOSING));\r
45                         setVisible(false);\r
46                 }\r
47         });\r
48         noButton.setBounds(getInsets().left + 185, getInsets().top + 80, 99, 22);\r
49         noButton.setFont(new Font("Dialog", 1, 12));\r
50         add(noButton);\r
51         \r
52         label1 = new JLabel("プログラムを終了します。", JLabel.CENTER);\r
53         label1.setBounds(78, 33, 180, 23);\r
54         add(label1);\r
55         setTitle("プログラムの終了");\r
56         setResizable(false);\r
57         setVisible(true);\r
58     }\r
59 \r
60     public void setVisible(boolean b) {\r
61         if(b) {\r
62             Rectangle bounds = getParent().getBounds();\r
63             Rectangle abounds = getBounds();\r
64             setLocation(bounds.x + (bounds.width - abounds.width) / 2, bounds.y + (bounds.height - abounds.height) / 2);\r
65         }\r
66         super.setVisible(b);\r
67     }\r
68 \r
69 \r
70         public void windowActivated(WindowEvent e) {\r
71         }\r
72 \r
73         public void windowClosed(WindowEvent e) {\r
74                 setVisible(false);\r
75         }\r
76 \r
77         public void windowClosing(WindowEvent e) {\r
78                 setVisible(false);\r
79         }\r
80 \r
81         public void windowDeactivated(WindowEvent e) {\r
82         }\r
83 \r
84         public void windowDeiconified(WindowEvent e) {\r
85         }\r
86 \r
87         public void windowIconified(WindowEvent e) {\r
88         }\r
89 \r
90         public void windowOpened(WindowEvent e) {\r
91         }\r
92 }\r