Rect bounds= new Rect();  MacUtil.getControlBounds(parent.handle, bounds); x+= bounds.left; y+= bounds.top;  int[] port= new int[1]; OS.GetPort(port); OS.SetPortWindowPort(OS.GetControlOwner(handle)); Rect r = new Rect(); OS.SetRect(r, (short)x, (short)y, (short)(x+width), (short)(y+height)); OS.InvertRect(r); OS.SetPort(port[0]);
GC gc= new GC(getParent()); gc.carbon_setClipAgainstChildren(false); gc.setXORMode(true); gc.fillRectangle(x, y, width, height); gc.dispose();
void drawBand (int x, int y, int width, int height) {	Rect bounds= new Rect();	//OS.GetControlBounds(parent.handle, bounds.getData());	MacUtil.getControlBounds(parent.handle, bounds);	x+= bounds.left;	y+= bounds.top;		int[] port= new int[1];	OS.GetPort(port);	OS.SetPortWindowPort(OS.GetControlOwner(handle));	Rect r = new Rect();	OS.SetRect(r, (short)x, (short)y, (short)(x+width), (short)(y+height));	OS.InvertRect(r);	OS.SetPort(port[0]);}