import java.lang.*; import java.awt.*; import java.awt.image.*; import java.applet.*; import netscape.javascript.*; class CallbackThread extends Thread { Widget parent; public CallbackThread(Widget w) { super(); System.err.println("MAKE"); parent=w; } public synchronized void run() { System.err.println("RUN"); try { System.err.println("WAIT"); wait(); } catch (Exception e) { } System.err.println("GONE"); parent.jsCall(); } public synchronized void go() { System.err.println("GO"); notify(); } } public class Widget extends Applet { static String id = "x2 "; static Color [] colors = new Color [] { Color.red, Color.blue, Color.green, Color.yellow, Color.cyan , Color.magenta }; static String [] pars = new String [] { "java.version", "java.vendor", "java.vendor.url", "java.class.version", "java.class.path", "java.home", "java.compiler", "os.name", "os.arch", "os.version" }; Color c; Dimension sz; JSObject reciever; CallbackThread cbThread=null; Image img; public void init() { System.err.println("INIT"); for(int i=0; i