ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/cms/source/conient/uk/org/iscream/cms/conient/Conient.java
Revision: 1.13
Committed: Mon Jan 22 12:48:38 2001 UTC (23 years, 3 months ago) by ajm
Branch: MAIN
Changes since 1.12: +12 -22 lines
Log Message:
Still messy, but now all use the template class and have all head their import section cut to what they need.

File Contents

# Content
1 //---PACKAGE DECLARATION---
2
3 //---IMPORTS---
4 import javax.swing.*;
5 import javax.swing.border.*;
6 import java.awt.*;
7 import java.awt.event.*;
8
9 /**
10 * Root for the SwingClient...starts the whole show off...
11 *
12 * @author $Author: ajm4 $
13 * @version $Id: SwingClient.java,v 1.12 2001/01/22 05:11:40 ajm4 Exp $
14 */
15 public class SwingClient extends JFrame {
16
17 //---FINAL ATTRIBUTES---
18
19 /**
20 * The current CVS revision of this class
21 */
22 public final String REVISION = "$Revision: 1.12 $";
23
24 private final int width = 600;
25 private final int height = 600;
26
27 // the well known port
28 public static final int PORT = 4510;
29
30 //---STATIC METHODS---
31
32 public static void main(String[] args) {
33 // get the host from the command line if they gave it
34 String host = null;
35 if (args.length == 1) {
36 host = args[0];
37 }
38
39 // the data display panel
40 DataPanel data = new DataPanel();
41
42 // the control panel
43 ControlPanel control = new ControlPanel(data);
44
45 // the main frame (passed the two panels)
46 SwingClient client = new SwingClient(data, control);
47 SwingClient.addMessage("Client started");
48 }
49
50
51 //---CONSTRUCTORS---
52
53 /**
54 * Creates a new Swing Client Frame
55 */
56 private SwingClient(JPanel data, JPanel control) {
57 // set up the Frame
58 super("I-Scream Client");
59
60 setSize(width, height);
61 addWindowListener(new WindowAdapter() {
62 public void windowClosing(WindowEvent e) {System.exit(0);}
63 });
64
65
66 // build the frame
67 getContentPane().add(control, "North");
68 getContentPane().add(data, "Center");
69
70 JPanel bottom = new JPanel();
71 bottom.setLayout(new BorderLayout());
72 _messages.setEditable(false);
73 _messages.setRows(3);
74 JScrollPane messagesPane = new JScrollPane(_messages);
75 messagesPane.setBorder(new TitledBorder(new LineBorder(new Color(0, 0, 102)), " Messages "));
76
77 bottom.add(messagesPane, "Center");
78 JPanel statusPanel = new JPanel();
79 JPanel linkPanel = new JPanel();
80 linkPanel.setLayout(new GridLayout(2,1));
81 linkPanel.add(_controlStatus);
82 linkPanel.add(_dataStatus);
83 statusPanel.setLayout(new GridLayout(1,3));
84 statusPanel.add(linkPanel);
85 statusPanel.add(_queueStatus);
86
87 bottom.add(statusPanel, "South");
88 getContentPane().add(bottom, "South");
89
90 // show the window
91 show();
92 }
93
94 //---PUBLIC METHODS---
95
96 //---PRIVATE METHODS---
97
98 //---ACCESSOR/MUTATOR METHODS---
99
100 public static void setControlStatus(String status) {
101 _controlStatus.setText("Control Link: " + status);
102 _controlStatus.repaint();
103 }
104
105 public static void setDataStatus(String status) {
106 _dataStatus.setText("Data Link: " + status);
107 _dataStatus.repaint();
108 }
109
110 public static void setQueueStatus(int currentQueue, int numElements) {
111 _queueStatus.setText("Data Queue : " + currentQueue + " Packets Recieved : " + numElements);
112 _queueStatus.repaint();
113 }
114
115 public static void addMessage(String message) {
116 _messages.insert(message + "\n", 0);
117 }
118
119 //---ATTRIBUTES---
120
121 ImageIcon _serverIcon = new ImageIcon("server.gif");
122 JLabel _serverCountLabel;
123 int _serverCount = 0;
124
125 //---STATIC ATTRIBUTES---
126
127 static JLabel _controlStatus = new JLabel("Control Link: Disconnected", JLabel.LEFT);
128 {
129 _controlStatus.setBorder(new EtchedBorder(EtchedBorder.LOWERED));
130 }
131
132 static JLabel _dataStatus = new JLabel("Data Link: Disconnected", JLabel.LEFT);
133 {
134 _dataStatus.setBorder(new EtchedBorder(EtchedBorder.LOWERED));
135 }
136
137 static JLabel _queueStatus = new JLabel(" ", JLabel.LEFT);
138 {
139 _queueStatus.setBorder(new EtchedBorder(EtchedBorder.LOWERED));
140 }
141 static JTextArea _messages = new JTextArea();
142 }