Annotation of edoc-applet/Console.java, revision 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>