event.childID = ACC.CHILDID_SELF;
	public int internal_kEventAccessibleGetChildAtPoint (int nextHandler, int theEvent, int userData) {		if (axuielementref != 0) {			int childID = getChildIDFromEvent(theEvent);			CGPoint pt = new CGPoint ();			OS.GetEventParameter (theEvent, OS.kEventParamMouseLocation, OS.typeHIPoint, null, CGPoint.sizeof, null, pt);			AccessibleControlEvent event = new AccessibleControlEvent(this);			event.x = (int) pt.x;			event.y = (int) pt.y;			for (int i = 0; i < accessibleControlListeners.size(); i++) {				AccessibleControlListener listener = (AccessibleControlListener) accessibleControlListeners.elementAt(i);				listener.getChildAtPoint(event);			}			if (event.accessible != null) {				OS.SetEventParameter (theEvent, OS.kEventParamAccessibleChild, OS.typeCFTypeRef, 4, new int[] {event.accessible.axuielementref});				return OS.noErr;			}			if (event.childID == ACC.CHILDID_SELF || event.childID == ACC.CHILDID_NONE || event.childID == childID) {				/*				 * From the Carbon doc for kEventAccessibleGetChildAtPoint: "If there is no child at the given point,				 * you should still return noErr, but leave the parameter empty (do not call SetEventParameter)."				 */				return OS.noErr;			}			OS.SetEventParameter (theEvent, OS.kEventParamAccessibleChild, OS.typeCFTypeRef, 4, new int[] {childIDToOs(event.childID)});			return OS.noErr;		}		return OS.eventNotHandledErr;	}