KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > net > sf > panoptes > swing > dialogs > BannerDialog


1 /*
2  * Created on Aug 31, 2003
3  *
4  */

5 package net.sf.panoptes.swing.dialogs;
6
7 import java.awt.BorderLayout JavaDoc;
8 import java.awt.Frame JavaDoc;
9 import java.awt.HeadlessException JavaDoc;
10
11 import javax.swing.ImageIcon JavaDoc;
12 import javax.swing.JDialog JavaDoc;
13 import javax.swing.JFrame JavaDoc;
14 import javax.swing.JPanel JavaDoc;
15 import javax.swing.JSeparator JavaDoc;
16 import javax.swing.UIManager JavaDoc;
17
18 import com.jgoodies.forms.factories.Borders;
19 import net.sf.panoptes.swing.panels.BannerPanel;
20
21 /**
22  *
23  *
24  * @author Dag Liodden
25  * @version 0.1
26  */

27 public class BannerDialog extends JDialog JavaDoc {
28     
29     public static int OK = 1;
30     public static int CANCEL = 2;
31     public static int YES = 3;
32     public static int NO = 4;
33     
34     private JPanel JavaDoc contentPane;
35     private JPanel JavaDoc bottomPanel;
36     private BannerPanel bannerPanel;
37     
38     private int result = -1;
39     
40     /**
41      * @param owner
42      * @param title
43      * @param modal
44      * @throws java.awt.HeadlessException
45      */

46     public BannerDialog(
47         Frame JavaDoc owner,
48         String JavaDoc title,
49         String JavaDoc shortDescription,
50         String JavaDoc fullDescription,
51         String JavaDoc bannerIconName,
52         boolean modal, boolean resizable)
53         throws HeadlessException JavaDoc {
54         super(owner, title, modal);
55         setResizable(resizable);
56
57         contentPane = new JPanel JavaDoc(new BorderLayout JavaDoc());
58         setContentPane(contentPane);
59         bannerPanel = new BannerPanel(shortDescription, fullDescription, new ImageIcon JavaDoc(getClass().getClassLoader().getResource(bannerIconName)));
60         contentPane.add(bannerPanel, BorderLayout.NORTH);
61
62         BorderLayout JavaDoc bottomLayout = new BorderLayout JavaDoc();
63         bottomPanel = new JPanel JavaDoc(bottomLayout);
64         bottomPanel.add(new JSeparator JavaDoc(), BorderLayout.NORTH);
65         
66         contentPane.add(bottomPanel, BorderLayout.SOUTH);
67     }
68     
69     public void setMainPanel(JPanel JavaDoc mainPanel) {
70         mainPanel.setBorder(Borders.DIALOG_BORDER);
71         contentPane.add(mainPanel, BorderLayout.CENTER);
72     }
73     
74     
75     public void setButtonPanel(JPanel JavaDoc buttonPanel) {
76         buttonPanel.setBorder(Borders.DIALOG_BORDER);
77         bottomPanel.add(buttonPanel, BorderLayout.CENTER);
78     }
79     
80     public void setFeedBack(String JavaDoc text) {
81         bannerPanel.getDescriptionLabel().setText(text);
82     }
83     
84     public void setResult(int result) {
85         this.result = result;
86     }
87     
88     public int getResult() {
89         return result;
90     }
91     
92     public void show() {
93         setLocationRelativeTo(getParent());
94         super.show();
95     }
96     
97     public static void main(String JavaDoc[] args) {
98         try {
99             UIManager.setLookAndFeel("com.jgoodies.plaf.plastic.PlasticXPLookAndFeel");
100         } catch (Exception JavaDoc e) {
101             e.printStackTrace();
102         }
103         BannerDialog d =
104             new BannerDialog(
105                 new JFrame JavaDoc(),
106                 "Connect",
107                 "Connect",
108                 "Connect to an MBean Server",
109                 "d:/sf/panoptes/panoptes/src/resources/icons/banners/new_wiz.gif",
110                 true, false);
111         d.pack();
112         d.show();
113         System.exit(0);
114     }
115 }
116
Popular Tags