short[] c= new short[3];  if (rgb == null) rgb= new RGB(255, 255, 255);  c[0]= (short) (rgb.red * 257); c[1]= (short) (rgb.green * 257); c[2]= (short) (rgb.blue * 257);
public RGB open() {	short[] c= new short[3];		if (rgb == null)		rgb= new RGB(255, 255, 255);			c[0]= (short) (rgb.red * 257);	c[1]= (short) (rgb.green * 257);	c[2]= (short) (rgb.blue * 257);		MacPoint mp= new MacPoint();	OS.GetGlobalMouse(mp.getData());		boolean[] success= new boolean[1];	if (OS.PickColor(c, mp.getData(), MacUtil.Str255(title), success) == OS.kNoErr) {		if (success[0]) {			rgb.red= c[0] / 257;			rgb.green= c[1] / 257;			rgb.blue= c[2] / 257;		} else			rgb= null;	} else		rgb= null;		return rgb;}