boolean drawText = text.length () != 0;
boolean drawText = true;
public Point computeSize (int wHint, int hHint, boolean changed) {	checkWidget ();	int width = 0, height = 0, border = getBorderWidth ();	if ((style & SWT.SEPARATOR) != 0) {		int lineWidth = OS.GetSystemMetrics (OS.SM_CXBORDER);		if ((style & SWT.HORIZONTAL) != 0) {			width = DEFAULT_WIDTH;  height = lineWidth * 2;		} else {			width = lineWidth * 2; height = DEFAULT_HEIGHT;		}		if (wHint != SWT.DEFAULT) width = wHint;		if (hHint != SWT.DEFAULT) height = hHint;		width += border * 2; height += border * 2;		return new Point (width, height);	}	int bits = OS.GetWindowLong (handle, OS.GWL_STYLE);	boolean drawText = text.length () != 0;	boolean drawImage = (bits & OS.SS_OWNERDRAW) == OS.SS_OWNERDRAW;	if (drawImage) {		if (image != null) {			Rectangle rect = image.getBounds();			width += rect.width;			height += rect.height;			if (IMAGE_AND_TEXT) {				if (drawText) width += MARGIN;			} else {				drawText = false;			}		}	}	if (drawText) {		int hDC = OS.GetDC (handle);		int newFont = OS.SendMessage (handle, OS.WM_GETFONT, 0, 0);		int oldFont = OS.SelectObject (hDC, newFont);		int length = OS.GetWindowTextLength (handle);		if (length == 0) {			TEXTMETRIC tm = OS.IsUnicode ? (TEXTMETRIC) new TEXTMETRICW () : new TEXTMETRICA ();			OS.GetTextMetrics (hDC, tm);			height = Math.max (height, tm.tmHeight);		} else {			RECT rect = new RECT ();			int flags = OS.DT_CALCRECT | OS.DT_EDITCONTROL | OS.DT_EXPANDTABS;			if ((style & SWT.WRAP) != 0 && wHint != SWT.DEFAULT) {				flags |= OS.DT_WORDBREAK;				rect.right = Math.max (0, wHint - width);			}			TCHAR buffer = new TCHAR (getCodePage (), length + 1);			OS.GetWindowText (handle, buffer, length + 1);			OS.DrawText (hDC, buffer, length, rect, flags);			width += rect.right - rect.left;			height = Math.max (height, rect.bottom - rect.top);		}		if (newFont != 0) OS.SelectObject (hDC, oldFont);		OS.ReleaseDC (handle, hDC);	}	if (wHint != SWT.DEFAULT) width = wHint;	if (hHint != SWT.DEFAULT) height = hHint;	width += border * 2;	height += border * 2;	/* 	* Feature in WinCE PPC.  Text labels have a trim	* of one pixel wide on the right and left side.	* The fix is to increase the width to include	* this trim.	*/	if (OS.IsWinCE && !drawImage) width += 2;	return new Point (width, height);}