List elements= getSelectedElementList(getSelection()); if (elements == null || elements.isEmpty()) return;  try{ List l= new ArrayList(); for (Iterator iter= elements.iterator(); iter.hasNext();) { IJavaElement element= (IJavaElement) iter.next(); if (element.getElementType() == IJavaElement.PACKAGE_FRAGMENT) l.addAll(analyze((IPackageFragment) element)); else if (element.getElementType() == IJavaElement.PACKAGE_FRAGMENT_ROOT) l.addAll(analyze((IPackageFragmentRoot) element)); if (element.getElementType() == IJavaElement.JAVA_PROJECT) l.addAll(analyze((IJavaProject) element));
new BusyIndicator().showWhile(JavaPlugin.getActiveWorkbenchShell().getDisplay(), new Runnable() { public void run() { doRun();
	public void run(IAction action) {		List elements= getSelectedElementList(getSelection());		if (elements == null || elements.isEmpty())			return;				try{			List l= new ArrayList();				for (Iterator iter= elements.iterator(); iter.hasNext();) {				IJavaElement element= (IJavaElement) iter.next();				if (element.getElementType() == IJavaElement.PACKAGE_FRAGMENT)					l.addAll(analyze((IPackageFragment) element));				else if (element.getElementType() == IJavaElement.PACKAGE_FRAGMENT_ROOT)					l.addAll(analyze((IPackageFragmentRoot) element));				 if (element.getElementType() == IJavaElement.JAVA_PROJECT)					l.addAll(analyze((IJavaProject) element));			}			showResults(l);		}catch(JavaModelException e) {			ExceptionHandler.handle(e, NLSUIMessages.getString("FindStringsAction.title"), NLSUIMessages.getString("FindStringsAction.see_log")); //$NON-NLS-2$ //$NON-NLS-1$		}	}