1 23 package info.monitorenter.gui.chart.dialogs; 24 25 import info.monitorenter.gui.chart.layout.controls.RangeChooserPanel; 26 27 import java.awt.Component ; 28 import java.awt.Container ; 29 import java.awt.Dimension ; 30 import java.awt.HeadlessException ; 31 import java.awt.Window ; 32 import java.awt.event.ActionEvent ; 33 import java.awt.event.ActionListener ; 34 import java.awt.event.ComponentAdapter ; 35 import java.awt.event.ComponentEvent ; 36 import java.awt.event.WindowAdapter ; 37 import java.awt.event.WindowEvent ; 38 39 import javax.swing.Box ; 40 import javax.swing.BoxLayout ; 41 import javax.swing.JButton ; 42 import javax.swing.JComponent ; 43 import javax.swing.JDialog ; 44 import javax.swing.JOptionPane ; 45 import javax.swing.JPanel ; 46 47 48 57 public abstract class ADialog extends JDialog { 58 59 60 private JComponent m_chooserPanel; 61 62 79 public ADialog(final Component component, final String title, final boolean modal, 80 final RangeChooserPanel chooserPane) { 81 super(JOptionPane.getFrameForComponent(component), title, modal); 82 this.m_chooserPanel = chooserPane; 83 84 Container contentPane = this.getContentPane(); 85 contentPane.setLayout(new BoxLayout (contentPane, BoxLayout.Y_AXIS)); 86 contentPane.add(this.m_chooserPanel); 87 88 this.addWindowListener(new WindowAdapter () { 90 public void windowClosing(final WindowEvent e) { 91 Window w = e.getWindow(); 92 w.setVisible(false); 93 } 94 }); 95 this.addComponentListener(new ComponentAdapter () { 96 public void componentHidden(final ComponentEvent e) { 97 Window w = (Window ) e.getComponent(); 98 w.dispose(); 99 } 100 }); 101 102 JPanel okChancelPanel = new JPanel (); 104 okChancelPanel.setLayout(new BoxLayout (okChancelPanel, BoxLayout.X_AXIS)); 105 okChancelPanel.add(Box.createHorizontalGlue()); 106 JButton ok = new JButton ("OK"); 107 ok.addActionListener(new ActionListener () { 108 public void actionPerformed(final ActionEvent e) { 109 setVisible(false); 110 } 111 }); 112 okChancelPanel.add(ok); 113 okChancelPanel.add(Box.createHorizontalGlue()); 114 JButton chancel = new JButton ("Chancel"); 115 chancel.addActionListener(new ActionListener () { 116 public void actionPerformed(final ActionEvent e) { 117 setVisible(false); 118 } 119 }); 120 okChancelPanel.add(chancel); 121 okChancelPanel.add(Box.createHorizontalGlue()); 122 contentPane.add(okChancelPanel); 124 this.setSize(new Dimension (300, 200)); 125 } 126 127 142 public JComponent showDialog() throws HeadlessException { 143 this.setVisible(true); 145 return this.m_chooserPanel; 146 } 147 148 } 149 | Popular Tags |