// This example is from the book _Java in a Nutshell_ by David Flanagan.
// Written by David Flanagan. Copyright (c) 1996 O'Reilly & Associates.
// You may study, use, modify, and distribute this example for any purpose.
// This example is provided WITHOUT WARRANTY either expressed or implied.
import java.applet.*;
import java.awt.*;
public class ColorScribble extends Scribble {
// Read in two color parameters and set the colors.
public void init() {
super.init();
Color foreground = getColorParameter("foreground");
Color background = getColorParameter("background");
if (foreground != null) this.setForeground(foreground);
if (background != null) this.setBackground(background);
}
// Read the specified parameter. Interpret it as a hexidecimal
// number of the form RRGGBB and convert it to a color.
protected Color getColorParameter(String name) {
String value = this.getParameter(name);
int intvalue;
try { intvalue = Integer.parseInt(value, 16); }
catch (NumberFormatException e) { return null; }
return new Color(intvalue);
}
// Return info about the supported parameters. Web browsers and applet
// viewers should display this information, and may also allow users to
// set the parameter values.
public String[][] getParameterInfo() {
String[][] info = {
// Array of arrays of strings describing each parameter.
// Format: parameter name, parameter type, parameter description
{"foreground", "hexidecimal color value", "foreground color"},
{"background", "hexidecimal color value", "background color"}
};
return info;
}
// Return information suitable for display in an About dialog box.
public String getAppletInfo() {
return "Scribble v. 0.02.\nWritten by David Flanagan.";
}
}
|