Point point = display.getCursorLocation();  point.y += 21;
int OnShowTooltip(int aXCoords, int aYCoords, int aTipText) {	int length = XPCOM.nsCRT_strlen_PRUnichar(aTipText);	char[] dest = new char[length];	XPCOM.memmove(dest, aTipText, length * 2);	String text = new String(dest);	if (tip != null && !tip.isDisposed()) tip.dispose();	Shell parent = getShell();	Display display = getDisplay();	/* Assuming cursor is 21x21 because this is the size of	 * the arrow cursor on Windows	 */ 	int cursorHeight = 21; 	Point point = display.map(this, null, aXCoords, aYCoords + cursorHeight);	tip = new Shell(parent, SWT.ON_TOP);	tip.setLayout(new FillLayout());	Label label = new Label(tip, SWT.CENTER);	label.setForeground(display.getSystemColor(SWT.COLOR_INFO_FOREGROUND));	label.setBackground(display.getSystemColor(SWT.COLOR_INFO_BACKGROUND));	label.setText(text);	tip.setLocation(point);	tip.pack();	tip.setVisible(true);	return XPCOM.NS_OK;}