fActiveWindow= 0;
	private int handleWindowCallback(int nextHandler, int eRefHandle, int whichWindow) {		//whichWindow= getDirectObject(eRefHandle);		int eventClass= OS.GetEventClass(eRefHandle);		int eventKind= OS.GetEventKind(eRefHandle);				switch (eventClass) {					case OS.kEventClassMouse:			return handleMouseCallback(nextHandler, eRefHandle);					case OS.kEventClassWindow:			switch (eventKind) {			case OS.kEventWindowActivated:				fActiveWindow= whichWindow;				windowProc(whichWindow, SWT.FocusIn, new Boolean(true));				return OS.kNoErr;			case OS.kEventWindowDeactivated:				fActiveWindow= 0;				windowProc(whichWindow, SWT.FocusIn, new Boolean(false));				return OS.kNoErr;			case OS.kEventWindowBoundsChanged:				int[] attr= new int[1];				OS.GetEventParameter(eRefHandle, OS.kEventParamAttributes, OS.typeUInt32, null, null, attr);					windowProc(whichWindow, SWT.Resize, new Integer(attr[0]));				return OS.kNoErr;			case OS.kEventWindowClose:				windowProc(whichWindow, SWT.Dispose, null);				return OS.kNoErr;			case OS.kEventWindowDrawContent:				if (toolTipWindowHandle == whichWindow) {					processPaintToolTip(whichWindow);					return OS.kNoErr;				} else {					updateWindow2(whichWindow);					return OS.kNoErr;				}				//break;			default:				System.out.println("handleWindowCallback: kEventClassWindow kind:" + eventKind);				break;			}			break;					default:			System.out.println("handleWindowCallback: unexpected event class: " + MacUtil.toString(eventClass));			break;		}		return OS.eventNotHandledErr;	}