OS.GetControlBounds(topHandle, bounds);
internalGetControlBounds(topHandle, br);
public void setBounds (int x, int y, int width, int height) {	checkWidget();	int topHandle = topHandle ();	width = Math.max(width, 0);	height = Math.max(height, 0);	short[] bounds= new short[4];	short[] pbounds= new short[4];	OS.GetControlBounds(topHandle, bounds);	OS.GetControlBounds(parent.handle, pbounds);	boolean sameOrigin = (bounds[1]-pbounds[1]) == x && (bounds[0]-pbounds[0]) == y;	boolean sameExtent = (bounds[3]-bounds[1]) == width && (bounds[2]-bounds[0]) == height;	if (sameOrigin && sameExtent) return;	internalSetBounds(topHandle, bounds, pbounds[1]+x, pbounds[0]+y, width, height, !sameExtent);	if (!sameOrigin) sendEvent (SWT.Move);	if (!sameExtent) sendEvent (SWT.Resize);}