{
TableItem item = _table.getItem (new Point (event.x, event.y));
if (item != null)
{
AttributeData data = (AttributeData)item.getData();
if (tooltipShell != null && !tooltipShell.isDisposed ()) tooltipShell.dispose ();
tooltipShell = new Shell(_table.getShell(), SWT.ON_TOP | SWT.NO_FOCUS | SWT.TOOL);
tooltipShell.setBackground(event.display.getSystemColor(SWT.COLOR_INFO_BACKGROUND));
FillLayout layout = new FillLayout();
layout.marginWidth = 2;
tooltipShell.setLayout(layout);
tooltipLabel = new Label(tooltipShell, SWT.NONE);
tooltipLabel.setForeground(event.display.getSystemColor(SWT.COLOR_INFO_FOREGROUND));
tooltipLabel.setBackground(event.display.getSystemColor(SWT.COLOR_INFO_BACKGROUND));
tooltipLabel.setText(data.getDescription());
tooltipLabel.setData("_TABLEITEM", item);
tooltipLabel.addListener(SWT.MouseExit, tooltipLabelListener);
tooltipLabel.addListener(SWT.MouseDown, tooltipLabelListener);
Point size = tooltipShell.computeSize(SWT.DEFAULT, SWT.DEFAULT);
Rectangle rect = item.getBounds(0);