Bug 98341 Override/Implement Methods shows nonvisible methods.
The Override/Implement Methods refactoring dialog shows all methods with package-private access, even if they are in other packages. Example: package foo; public class Foo { void method() {} } package bar; public class Bar extends foo.Foo { } Activating the Override/Implement Methods on Bar shows Foo.method.
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/OverrideMethodDialog.java
}
	/*
	 * @see CheckedTreeSelectionDialog#createTreeViewer(Composite)
	 */
	protected CheckboxTreeViewer createTreeViewer(Composite composite) {
		initializeDialogUnits(composite);
		ViewerPane pane= new ViewerPane(composite, SWT.BORDER | SWT.FLAT);
		pane.setText(JavaUIMessages.OverrideMethodDialog_dialog_description); 
		CheckboxTreeViewer treeViewer= super.createTreeViewer(pane);
		pane.setContent(treeViewer.getControl());
		GridLayout paneLayout= new GridLayout();
		paneLayout.marginHeight= 0;
		paneLayout.marginWidth= 0;
		paneLayout.numColumns= 1;
		pane.setLayout(paneLayout);
		GridData gd= new GridData(GridData.FILL_BOTH);
		gd.widthHint= convertWidthInCharsToPixels(55);
		gd.heightHint= convertHeightInCharsToPixels(15);
		pane.setLayoutData(gd);
		ToolBarManager manager= pane.getToolBarManager();
		manager.add(new OverrideFlatTreeAction()); 
		manager.update(true);
		treeViewer.getTree().setFocus();
		return treeViewer;
	}
	public boolean hasMethodsToOverride() {
		return getContentProvider().getElements(null).length > 0;
	}
}