final Display display = button.getDisplay();
if (popup == null) {
popup = new Shell(display.getActiveShell(), SWT.NO_FOCUS | SWT.ON_TOP);
popup.setForeground(display.getSystemColor(SWT.COLOR_INFO_FOREGROUND));
popup.setBackground(display.getSystemColor(SWT.COLOR_INFO_BACKGROUND));
popup.setLayout(new RowLayout());
Composite composite = new Composite(popup, SWT.NONE);
composite.setForeground(display.getSystemColor(SWT.COLOR_INFO_FOREGROUND));
composite.setBackground(display.getSystemColor(SWT.COLOR_INFO_BACKGROUND));
composite.setLayout(new RowLayout());
textLabel = new Label(popup, SWT.NONE);
textLabel.setForeground(display.getSystemColor(SWT.COLOR_INFO_FOREGROUND));
textLabel.setBackground(display.getSystemColor(SWT.COLOR_INFO_BACKGROUND));
textLabel.setFont(button.getFont());