Class PicWeb

public class PicWeb
extends Panel
implements Serializable Runnable
Documentation
PicWeb class contains both the user interface and top level
logic for the PicWeb Builder application.

Attributes

private float [] blues = new float[256]

String copyright = "PicWeb(tm) Copyright 1997 by Mark Watson." + nl + "The GifEncoder class is copyright 1996 by" + nl + "Jef Poskanzer ." + nl + nl + "READ FULL COPYRIGHT NOTICES ON OPTIONS SCREEN" + nl

protected boolean fileNamesFlag = false

private String fs = System.getProperty("file.separator")

private float [] greens = new float[256]

protected int imageSizeChoice = 1

protected Logo logo

private String nl = System.getProperty("line.separator")

Notes
The 'nl' and 'fs' objects are define for string constants
instead of using literal strings in order to pass the
"100% Pure" Java certification by Key Labs
protected Options options

private TextArea outputText

private Image output_image = null

private boolean process

private float [] reds = new float[256]

private TextField root_dir

private int[] s_pixels = new int[256]

protected boolean showLogo = true

protected boolean skipProcessedDirs = false

private boolean [] trans = new boolean[256]

private Thread workThread

Operations

public PicWeb()

Notes
PicWeb class constructor creates the user interface Panel
and initializes a work thread
private final void ProcessGifs(String directory)

Notes
Method ProcessGifs processes an entire directory tree by
calling itself recursively
static void main(String[] args)

private final Image newImage(String file_name, int scale_mode)

public void paint(Graphics g)

public void run()

Notes
The 'run' method is called when the work thread is started.
The work thread sleeps until there is work to be done. We
use a separate work thread so that the user interface does not
"freeze up" when PicWeb is processing image files and generating
HTML documents.