import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.beans.*;
import java.io.*;
import java.util.*;
import java.net.*;


public class TextPreviewer extends JComponent {
	private ImageIcon icon;
	private JTextArea textArea = new JTextArea();

	public TextPreviewer() {
		setBorder(BorderFactory.createEtchedBorder());
		setLayout(new BorderLayout());
		add(new JScrollPane(textArea), BorderLayout.CENTER);
	}
	public void update(File file) {
		textArea.setText(contentsOfFile(file));

		if(isShowing()) {
			textArea.revalidate();
		}
	}
	static String contentsOfFile(File file) {
		String s = new String();
		char[] buff = new char[50000];
		InputStream is;
		InputStreamReader reader;
		URL url;

		try {
			reader = new FileReader(file);

			int nch;

			while ((
				nch = reader.read(buff, 0, buff.length)) != -1) {
				s = s + new String(buff, 0, nch);
			}
		} 
		catch (java.io.IOException ex) {
			s = "Could not load file";
		}
		return s;
	}
}