View Javadoc
1 package net.mlw.fball.gui;
2
3 import java.awt.BorderLayout;
4
5 import javax.swing.JPanel;
6 import javax.swing.JProgressBar;
7 import javax.swing.JScrollPane;
8 import javax.swing.JTextArea;
9
10 import net.mlw.fball.event.Event;
11 import net.mlw.fball.event.EventListener;
12 import net.mlw.fball.event.ProgressEvent;
13 import net.mlw.fball.event.StatusEvent;
14 import net.mlw.fball.gui.events.ErrorEvent;
15
16 /***
17 *
18 * @author Matthew L. Wilson
19 * @version $Revision: 1.5 $ $Date: 2004/04/01 21:51:09 $
20 */
21 public class LoaderDetail extends JPanel
22 {
23 public LoaderDetail()
24 {
25 initComponents();
26 }
27
28 public void initComponents()
29 {
30 setLayout(new BorderLayout(10, 10));
31
32 final JProgressBar progressBar = new JProgressBar();
33
34 add(BorderLayout.NORTH, progressBar);
35
36 final JTextArea status = new JTextArea();
37 status.setEditable(false);
38 add(BorderLayout.CENTER, new JScrollPane(status));
39
40 AppContext.getEventListenerGroup().addListener(ErrorEvent.class, new EventListener()
41 {
42 public void onEvent(Event event)
43 {
44 status.setText(status.getText() + "\n" + event);
45 status.setCaretPosition(status.getText().length());
46 }
47 });
48 AppContext.getEventListenerGroup().addListener(StatusEvent.class, new EventListener()
49 {
50 public void onEvent(Event event)
51 {
52 status.setText(status.getText() + "\n" + event);
53 status.setCaretPosition(status.getText().length());
54 }
55 });
56
57 AppContext.getEventListenerGroup().addListener(ProgressEvent.class, new EventListener()
58 {
59 public void onEvent(Event event)
60 {
61 ProgressEvent progress = (ProgressEvent) event;
62
63 if (progress.isNew())
64 {
65 progressBar.setValue(0);
66 progressBar.setMaximum(progress.getTotal());
67 }
68 else
69 {
70 progressBar.setValue(progress.getCurrent());
71 progressBar.setString(progress.getCurrent() + " of " + progress.getTotal());
72 progressBar.setStringPainted(true);
73
74 }
75 }
76 });
77 }
78 }
This page was automatically generated by Maven