Buggy code:
private WorkbenchWizardElement selectedElement ; private NewWizardActivityFilter filter = new NewWizardActivityFilter ( ) ; private boolean needShowAll ; public NewWizardNewPage ( NewWizardSelectionPage mainPage , IWorkbench aWorkbench , WizardCollectionElement wizardCategories , WorkbenchWizardElement [ ] primaryWizards ) { } private boolean allActivityEnabled ( WizardCollectionElement category ) { } private void trimPrimaryWizards ( ) { } private boolean allPrimary ( WizardCollectionElement category ) { } private boolean isPrimary ( WorkbenchWizardElement wizard ) { } public void activate ( ) { } protected Control createControl ( Composite parent ) { } private void createImage ( Composite parent ) { } private void createViewer ( Composite parent ) { Composite composite = new Composite ( parent , SWT . NONE ) ; GridData data = new GridData ( GridData . FILL_BOTH ) ; data . widthHint = NewWizardNewPage . SIZING_VIEWER_WIDTH ; boolean needsHint = DialogUtil . inRegularFontMode ( parent ) ; if ( needsHint ) { data . heightHint = NewWizardNewPage . SIZING_LISTS_HEIGHT ; } composite . setLayoutData ( data ) ; GridLayout layout = new GridLayout ( 2 , false ) ; layout . marginHeight = 0 ; layout . marginWidth = 0 ; composite . setLayout ( layout ) ; Tree tree = new Tree ( composite , ( ( ( ( SWT . SINGLE ) | ( SWT . H_SCROLL ) ) | ( SWT . V_SCROLL ) ) | ( SWT . BORDER ) ) ) ; viewer = new TreeViewer ( tree ) ; viewer . setContentProvider ( new WizardContentProvider ( ) ) ; viewer . setLabelProvider ( new WorkbenchLabelProvider ( ) ) ; viewer . setSorter ( INSTANCE ) ; viewer . addSelectionChangedListener ( this ) ; viewer . addDoubleClickListener ( this ) ; ArrayList inputArray = new ArrayList ( ) ; for ( int i = 0 ; i < ( primaryWizards . length ) ; i ++ ) { inputArray . add ( primaryWizards [ i ] ) ; } boolean expandTop = false ; if ( ( wizardCategories ) != null ) { if ( ( wizardCategories . getParent ( wizardCategories ) ) == null ) { Object [ ] children = wizardCategories . getChildren ( ) ; for ( int i = 0 ; i < ( children . length ) ; i ++ ) { inputArray . add ( children [ i ] ) ; } } else { expandTop = true ; inputArray . add ( wizardCategories ) ; } } if ( expandTop ) viewer . setAutoExpandLevel ( 2 ) ; AdaptableList input = new AdaptableList ( inputArray ) ; viewer . setInput ( input ) ; tree . setFont ( parent . getFont ( ) ) ; viewer . addDoubleClickListener ( new IDoubleClickListener ( ) { public void doubleClick ( DoubleClickEvent event ) { IStructuredSelection s = ( ( IStructuredSelection ) ( event . getSelection ( ) ) ) ; Object element = s . getFirstElement ( ) ; if ( viewer . isExpandable ( element ) ) { viewer . setExpandedState ( element , ( ! ( viewer . getExpandedState ( element ) ) ) ) ; } else if ( element instanceof WorkbenchWizardElement ) { page . advanceToNextPage ( ) ; } } } ) ; data = new GridData ( GridData . FILL_BOTH ) ; data . horizontalSpan = 2 ; tree . setLayoutData ( data ) ; if ( needShowAll ) { showAllCheck = new Button ( composite , SWT . CHECK ) ; data = new GridData ( ) ; showAllCheck . setLayoutData ( data ) ; showAllCheck . setFont ( parent . getFont ( ) ) ; showAllCheck . setText ( WorkbenchMessages . getString ( "NewWizardNewPage.showAll" ) ) ; showAllCheck . setSelection ( false ) ; showAllCheck . addSelectionListener ( new SelectionAdapter ( ) { private Object [ ] expandedElements = new Object [ 0 ] ; public void widgetSelected ( SelectionEvent e ) { boolean showAll = showAllCheck . getSelection ( ) ; if ( ! showAll ) expandedElements = viewer . getExpandedElements ( ) ; if ( showAll ) { viewer . getControl ( ) . setRedraw ( false ) ; } try { if ( showAll ) { viewer . resetFilters ( ) ; viewer . setExpandedElements ( expandedElements ) ; } else { viewer . addFilter ( filter ) ; } viewer . refresh ( false ) ; } finally { if ( showAll ) viewer . getControl ( ) . setRedraw ( true ) ; } } } ) ; } Image buttonImage = WorkbenchImages . getImage ( IMG_LCL_LINKTO_HELP ) ; <START_BUG> ToolBar toolBar = new ToolBar ( composite , ( ( SWT . HORIZONTAL ) | ( SWT . FLAT ) ) ) ; <END_BUG> helpButton = new ToolItem ( toolBar , SWT . NONE ) ; helpButton . setImage ( buttonImage ) ; helpButton . setEnabled ( false ) ; helpButton . setToolTipText ( WorkbenchMessages . getString ( "NewWizardNewPage.moreHelp" ) ) ; data = new GridData ( ( ( GridData . HORIZONTAL_ALIGN_END ) | ( GridData . VERTICAL_ALIGN_END ) ) ) ; if ( ! ( needShowAll ) ) data . horizontalSpan = 2 ; toolBar . setLayoutData ( data ) ; helpButton . addSelectionListener ( new SelectionAdapter ( ) { public void widgetSelected ( SelectionEvent e ) { WorkbenchHelp . displayHelpResource ( wizardHelpHref ) ; } } ) ; } public void doubleClick ( DoubleClickEvent event ) { } protected void expandPreviouslyExpandedCategories ( ) { } protected Object getSingleSelection ( IStructuredSelection selection ) { } protected void restoreWidgetValues ( ) { } public void saveWidgetValues ( ) { } public void selectionChanged ( SelectionChangedEvent selectionEvent ) { } protected void selectPreviouslySelected ( ) { } public void setDialogSettings ( IDialogSettings settings ) { } protected void storeExpandedCategories ( ) { } protected void storeSelectedCategoryAndWizard ( ) { } private void updateDescription ( WorkbenchWizardElement selectedObject ) { } private boolean hasImage ( WorkbenchWizardElement selectedObject ) { } private void updateWizardSelection ( WorkbenchWizardElement selectedObject ) { } }

Fix:
ToolBar toolBar = new ToolBar ( composite , SWT . FLAT ) ;