Annotation of edoc-applet/Console.java, revision 1.1.1.1
1.1 rogo 1: import javax.swing.*;
2: import java.awt.event.*;
3: import java.awt.*;
4: import java.text.*;
5: import java.util.Locale;
6: import javax.swing.event.*;
7: import java.io.*;
8:
9: public class Console extends JDialog implements ActionListener
10: {
11:
12: static JTextField field = new JTextField("0.00", 6);
13: JLabel label = new JLabel("Load step: ", JLabel.RIGHT);
14: JButton clear = new JButton("Clear Console");
15: JButton save = new JButton("Save Console");
16: JCheckBox logMode = new JCheckBox("Logging on",true);
17: JCheckBox debugMode = new JCheckBox("Debug on",false);
18: JPanel panel = new JPanel();
19: static JTextArea console = new JTextArea();
20: static JScrollPane scroll = new JScrollPane(console);
21: JFileChooser saveChooser;
22: JPanel content;
23: JFrame frame;
24: String file;
25: static PrintStream print;
26: boolean append = false;
27: public Console(JFrame frame)
28: {
29: super(frame);
30: this.frame = frame;
31: label = new JLabel("Load step: ", JLabel.RIGHT);
32: clear = new JButton("Clear Console");
33: save = new JButton("Save Console");
34: logMode = new JCheckBox("Logging on",true);
35: debugMode = new JCheckBox("Debug on",false);
36: console = new JTextArea();
37: scroll = new JScrollPane(console);
38: setSize(500, 400);
39: setTitle("Archimedes Console");
40: console.setBackground(new Color(230, 240, 250));
41: Font actFont = new Font("Courier", 0, 15);
42: console.setFont(actFont);
43: setLocation(new Point(500, 70));
44: content = (JPanel) getContentPane();
45: content.add(scroll, "Center");
46: panel.add(clear);
47: panel.add(save);
48: panel.add(logMode);
49: panel.add(debugMode);
50: content.add(panel, "South");
51: clear.addActionListener(this);
52: save.addActionListener(this);
53: debugMode.addActionListener(this);
54: setSaveChooser();
55: add("Archimedes Console\n");
56: if(print==null)
57: {
58: print = new PrintStream(System.out)
59: {
60: public PrintStream myOut = System.out;
61: public void print(String a)
62: {
63: myOut.print(a);
64: if (logMode.isSelected())
65: Console.add(a);
66: }
67: public void print(char a)
68: {
69: myOut.print(a);
70: if (logMode.isSelected())
71: Console.add(a+"");
72: }
73:
74: public void println(String a)
75: {
76: myOut.println(a);
77: if (logMode.isSelected())
78: Console.add(a + "\n");
79: }
80: public void println(Object a)
81: {
82: myOut.println(a);
83: if (logMode.isSelected())
84: Console.add(a + "\n");
85: }
86: public void write(byte[] b ) throws IOException
87: {
88: myOut.write(b);
89: if (logMode.isSelected())
90: Console.add(new String(b) + "\n");
91:
92: }
93: public void write(byte[] b,int start,int end )
94: {
95: myOut.write(b,start,end);
96: if (logMode.isSelected())
97: Console.add(new String(b,start,end) + "\n");
98:
99: }
100:
101:
102: };
103: System.setOut(print);
104: System.setErr(System.out);
105: }
106: addWindowListener(new WindowAdapter()
107: {
108: public void windowClosing(WindowEvent e)
109: {
110: //jife.showConsole.setState(false);
111: }
112: });
113:
114: //console.setEditable(false);
115: }
116: public void actionPerformed(ActionEvent e)
117: {
118: String command = e.getActionCommand();
119: if (command == "Clear Console")
120: clear();
121: if (command == "Save Console")
122: {
123: saveChooser.rescanCurrentDirectory();
124: saveChooser.setDialogType(JFileChooser.OPEN_DIALOG);
125: saveChooser.showDialog(frame, "Save");
126: }
127: Upload.debug=debugMode.isSelected();
128:
129:
130: }
131: public static void clear()
132: {
133: console.setText("");
134: }
135:
136: public static void add(String text)
137: {
138: console.append(text);
139: scroll.getVerticalScrollBar().setValue(scroll.getVerticalScrollBar().getMaximum());
140: }
141: public void setSaveChooser()
142: {
143: // file Dialog
144: saveChooser = new JFileChooser(".");
145: // ExampleFileFilter filefilter = new ExampleFileFilter();
146: // filefilter.addExtension("txt");
147: //filefilter.setDescription("Txt File");
148: //saveChooser.setFileFilter(filefilter);
149:
150: saveChooser.addActionListener(new ActionListener()
151: {
152:
153: public void actionPerformed(ActionEvent e2)
154: {
155: //System.out.println(e2.getActionCommand());
156: if (e2.getActionCommand().toString().equals("ApproveSelection"))
157: {
158: file = saveChooser.getSelectedFile().toString();
159: //setTitle("Jife - Java Application for Structural Analysis - "+"<File: "+new File(file).getAbsolutePath()+">");
160: if (file == null || file == "")
161: file = "." + File.separator + "untitled.txt";
162: if (file.endsWith(".txt") || file.endsWith(".TXT"));
163: else
164: file += ".txt";
165: System.out.println("File" + file);
166: try
167: {
168:
169: FileOutputStream fout = new FileOutputStream(file);
170: fout.write(console.getText().getBytes());
171: fout.close();
172: } catch (Exception e3)
173: {
174: System.out.println("Serial errror:" + e3);
175: }
176:
177: }
178: }
179: });
180:
181: }
182:
183: } // to class
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>