Monitors the progress of reading from some InputStream. This ProgressMonitor
is normally invoked in roughly this form:
InputStream in = new BufferedInputStream(
new ProgressMonitorInputStream(
parentComponent,
"Reading " + fileName,
new FileInputStream(fileName)));
This creates a progress monitor to monitor the progress of reading
the input stream. If it's taking a while, a ProgressDialog will
be popped up to inform the user. If the user hits the Cancel button
an InterruptedIOException will be thrown on the next read.
All the right cleanup is done when the stream is closed.
For further documentation and examples see
How to Monitor Progress,
a section in The Java Tutorial.