diff options
| author | Lars Vogel | 2020-07-20 09:07:43 +0000 |
|---|---|---|
| committer | Jeff Johnston | 2020-07-23 18:48:32 +0000 |
| commit | b240f90418524ec46192b5ac0a08652510a47277 (patch) | |
| tree | 97efc54d87d8e477bb2b931daae53a0f29a1064f | |
| parent | 97be82054ea0d2834f08f5a233139a5560982c01 (diff) | |
| download | eclipse.jdt.ui-b240f90418524ec46192b5ac0a08652510a47277.tar.gz eclipse.jdt.ui-b240f90418524ec46192b5ac0a08652510a47277.tar.xz eclipse.jdt.ui-b240f90418524ec46192b5ac0a08652510a47277.zip | |
Bug 564416 - Use lambdas and method references cleanup on JDT UI code
For multiple internal packages, compare, dialogs, filters, fix,
infoviews javaeditororg.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/callhierarchy
package, saveparticipants and selectionactions
Change-Id: I11c7394f38f8ca3db80911008308ee69a2a70873
34 files changed, 515 insertions, 893 deletions
diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/compare/EclipsePreferencesAdapter.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/compare/EclipsePreferencesAdapter.java index a4ccd702d4..9ad26870b9 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/compare/EclipsePreferencesAdapter.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/compare/EclipsePreferencesAdapter.java @@ -46,12 +46,7 @@ class EclipsePreferencesAdapter implements IPreferenceStore { @Override public void preferenceChange(final IEclipsePreferences.PreferenceChangeEvent event) { if (Display.getCurrent() == null) { - Display.getDefault().asyncExec(new Runnable() { - @Override - public void run() { - firePropertyChangeEvent(event.getKey(), event.getOldValue(), event.getNewValue()); - } - }); + Display.getDefault().asyncExec(() -> firePropertyChangeEvent(event.getKey(), event.getOldValue(), event.getNewValue())); } else { firePropertyChangeEvent(event.getKey(), event.getOldValue(), event.getNewValue()); } diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/compare/JavaHistoryActionImpl.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/compare/JavaHistoryActionImpl.java index 07b4139ef6..b4aa28dc26 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/compare/JavaHistoryActionImpl.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/compare/JavaHistoryActionImpl.java @@ -19,7 +19,6 @@ import java.util.Map; import org.eclipse.swt.widgets.Shell; import org.eclipse.core.runtime.CoreException; -import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.core.runtime.NullProgressMonitor; import org.eclipse.core.resources.IFile; @@ -215,14 +214,11 @@ abstract class JavaHistoryActionImpl /* extends Action implements IActionDelegat JavaPlugin.log(e); } - IRunnableWithProgress r= new IRunnableWithProgress() { - @Override - public void run(IProgressMonitor pm) throws InvocationTargetException { - try { - textFileBuffer.commit(pm, false); - } catch (CoreException ex) { - throw new InvocationTargetException(ex); - } + IRunnableWithProgress r= pm -> { + try { + textFileBuffer.commit(pm, false); + } catch (CoreException ex) { + throw new InvocationTargetException(ex); } }; diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/compare/JavaMergeViewer.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/compare/JavaMergeViewer.java index abcd97f1ff..4ef282edd2 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/compare/JavaMergeViewer.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/compare/JavaMergeViewer.java @@ -457,12 +457,7 @@ public class JavaMergeViewer extends TextMergeViewer { } fPreferenceStore= ps; if (fPreferenceStore != null) { - fPreferenceChangeListener= new IPropertyChangeListener() { - @Override - public void propertyChange(PropertyChangeEvent event) { - handlePropertyChange(event); - } - }; + fPreferenceChangeListener= this::handlePropertyChange; fPreferenceStore.addPropertyChangeListener(fPreferenceChangeListener); } } diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/compare/PropertiesFileMergeViewer.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/compare/PropertiesFileMergeViewer.java index f0cc76baa0..e52643109c 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/compare/PropertiesFileMergeViewer.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/compare/PropertiesFileMergeViewer.java @@ -23,7 +23,6 @@ import org.eclipse.swt.widgets.Composite; import org.eclipse.jface.preference.IPreferenceStore; import org.eclipse.jface.util.IPropertyChangeListener; -import org.eclipse.jface.util.PropertyChangeEvent; import org.eclipse.jface.text.IDocumentPartitioner; import org.eclipse.jface.text.TextViewer; @@ -74,14 +73,11 @@ public class PropertiesFileMergeViewer extends TextMergeViewer { if (fPreferenceStore == null) { fSourceViewerConfigurations= new ArrayList<>(3); fPreferenceStore= JavaPlugin.getDefault().getCombinedPreferenceStore(); - fPreferenceChangeListener= new IPropertyChangeListener() { - @Override - public void propertyChange(PropertyChangeEvent event) { - Iterator<SourceViewerConfiguration> iter= fSourceViewerConfigurations.iterator(); - while (iter.hasNext()) - ((PropertiesFileSourceViewerConfiguration)iter.next()).handlePropertyChangeEvent(event); - invalidateTextPresentation(); - } + fPreferenceChangeListener= event -> { + Iterator<SourceViewerConfiguration> iter= fSourceViewerConfigurations.iterator(); + while (iter.hasNext()) + ((PropertiesFileSourceViewerConfiguration)iter.next()).handlePropertyChangeEvent(event); + invalidateTextPresentation(); }; fPreferenceStore.addPropertyChangeListener(fPreferenceChangeListener); } diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/FilteredTypesSelectionDialog.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/FilteredTypesSelectionDialog.java index 5a83ebfe19..ce02738590 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/FilteredTypesSelectionDialog.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/FilteredTypesSelectionDialog.java @@ -53,8 +53,6 @@ import org.eclipse.jface.operation.IRunnableWithProgress; import org.eclipse.jface.resource.ImageDescriptor; import org.eclipse.jface.resource.JFaceResources; import org.eclipse.jface.resource.LocalResourceManager; -import org.eclipse.jface.util.IPropertyChangeListener; -import org.eclipse.jface.util.PropertyChangeEvent; import org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.IStyledLabelProvider; import org.eclipse.jface.viewers.ILabelDecorator; import org.eclipse.jface.viewers.ISelection; @@ -345,20 +343,17 @@ public class FilteredTypesSelectionDialog extends FilteredItemsSelectionDialog i super.fillViewMenu(menuManager); if (fAllowScopeSwitching) { - fFilterActionGroup= new WorkingSetFilterActionGroup(getShell(), JavaPlugin.getActivePage(), new IPropertyChangeListener() { - @Override - public void propertyChange(PropertyChangeEvent event) { - IWorkingSet ws= (IWorkingSet) event.getNewValue(); - if (ws == null || (ws.isAggregateWorkingSet() && ws.isEmpty())) { - setSearchScope(SearchEngine.createWorkspaceScope()); - setSubtitle(null); - } else { - setSearchScope(JavaSearchScopeFactory.getInstance().createJavaSearchScope(ws, true)); - setSubtitle(ws.getLabel()); - } - - applyFilter(); + fFilterActionGroup= new WorkingSetFilterActionGroup(getShell(), JavaPlugin.getActivePage(), event -> { + IWorkingSet ws= (IWorkingSet) event.getNewValue(); + if (ws == null || (ws.isAggregateWorkingSet() && ws.isEmpty())) { + setSearchScope(SearchEngine.createWorkspaceScope()); + setSubtitle(null); + } else { + setSearchScope(JavaSearchScopeFactory.getInstance().createJavaSearchScope(ws, true)); + setSubtitle(ws.getLabel()); } + + applyFilter(); }); fFilterActionGroup.fillViewMenu(menuManager); } diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/GenerateToStringDialog.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/GenerateToStringDialog.java index f67ba5e3ca..8f72219ae6 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/GenerateToStringDialog.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/GenerateToStringDialog.java @@ -25,13 +25,10 @@ import java.util.List; import com.ibm.icu.text.Collator; import org.eclipse.swt.SWT; -import org.eclipse.swt.events.ModifyEvent; import org.eclipse.swt.events.ModifyListener; import org.eclipse.swt.events.SelectionAdapter; import org.eclipse.swt.events.SelectionEvent; import org.eclipse.swt.events.SelectionListener; -import org.eclipse.swt.events.TraverseEvent; -import org.eclipse.swt.events.TraverseListener; import org.eclipse.swt.graphics.Image; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; @@ -56,13 +53,9 @@ import org.eclipse.jface.fieldassist.IContentProposal; import org.eclipse.jface.fieldassist.IContentProposalProvider; import org.eclipse.jface.fieldassist.TextContentAdapter; import org.eclipse.jface.resource.ImageDescriptor; -import org.eclipse.jface.viewers.CheckStateChangedEvent; import org.eclipse.jface.viewers.CheckboxTreeViewer; -import org.eclipse.jface.viewers.ICheckStateListener; -import org.eclipse.jface.viewers.ISelectionChangedListener; import org.eclipse.jface.viewers.IStructuredSelection; import org.eclipse.jface.viewers.ITreeContentProvider; -import org.eclipse.jface.viewers.SelectionChangedEvent; import org.eclipse.jface.viewers.StructuredSelection; import org.eclipse.jface.viewers.Viewer; @@ -396,20 +389,12 @@ public class GenerateToStringDialog extends SourceActionDialog { } templateName.setSelection(0, templateName.getText().length()); - templateName.addModifyListener(new ModifyListener() { - @Override - public void modifyText(ModifyEvent e) { - validate(templateName.getText()); - } - }); + templateName.addModifyListener(e -> validate(templateName.getText())); //Ctrl+Enter should execute the default button, workaround for https://bugs.eclipse.org/bugs/show_bug.cgi?id=145959 - template.addTraverseListener(new TraverseListener() { - @Override - public void keyTraversed(TraverseEvent e) { - if (e.detail == SWT.TRAVERSE_RETURN && (e.stateMask & SWT.MODIFIER_MASK) != 0) { - buttonPressed(((Integer)getShell().getDefaultButton().getData()).intValue()); - } + template.addTraverseListener(e -> { + if (e.detail == SWT.TRAVERSE_RETURN && (e.stateMask & SWT.MODIFIER_MASK) != 0) { + buttonPressed(((Integer)getShell().getDefaultButton().getData()).intValue()); } }); @@ -852,28 +837,25 @@ public class GenerateToStringDialog extends SourceActionDialog { if (fLastValidBuilderType != null && fLastValidBuilderType.equals(type)) { return fLastValidAppendMethodSuggestions; } - return getMethodSuggestions(type, new MethodChecker() { - @Override - public boolean isMethodOK(IMethod method) throws JavaModelException { - if (!Flags.isPublic(method.getFlags()) || method.isConstructor()) - return false; - /* To be an append method, it must take exactly one - * Object parameter, and optionally one String parameter. */ - String[] parameterTypes= method.getParameterTypes(); - if (parameterTypes.length == 0 || parameterTypes.length > 2) { - return false; - } - int countObjects= 0, countStrings= 0; - for (String parameterType : parameterTypes) { - String resolvedParameterTypeName= JavaModelUtil.getResolvedTypeName(parameterType, type); - if ("java.lang.Object".equals(resolvedParameterTypeName))//$NON-NLS-1$ - countObjects++; - if ("java.lang.String".equals(resolvedParameterTypeName))//$NON-NLS-1$ - countStrings++; - } - return countObjects == 1 && countObjects + countStrings == parameterTypes.length; - + return getMethodSuggestions(type, method -> { + if (!Flags.isPublic(method.getFlags()) || method.isConstructor()) + return false; + /* To be an append method, it must take exactly one + * Object parameter, and optionally one String parameter. */ + String[] parameterTypes= method.getParameterTypes(); + if (parameterTypes.length == 0 || parameterTypes.length > 2) { + return false; + } + int countObjects= 0, countStrings= 0; + for (String parameterType : parameterTypes) { + String resolvedParameterTypeName= JavaModelUtil.getResolvedTypeName(parameterType, type); + if ("java.lang.Object".equals(resolvedParameterTypeName))//$NON-NLS-1$ + countObjects++; + if ("java.lang.String".equals(resolvedParameterTypeName))//$NON-NLS-1$ + countStrings++; } + return countObjects == 1 && countObjects + countStrings == parameterTypes.length; + }); } @@ -881,12 +863,7 @@ public class GenerateToStringDialog extends SourceActionDialog { if (fLastValidBuilderType != null && fLastValidBuilderType.equals(type)) { return fLastValidResultMethodSuggestions; } - return getMethodSuggestions(type, new MethodChecker() { - @Override - public boolean isMethodOK(IMethod method) throws JavaModelException { - return Flags.isPublic(method.getFlags()) && method.getParameterTypes().length == 0 && "java.lang.String".equals(JavaModelUtil.getResolvedTypeName(method.getReturnType(), type)); //$NON-NLS-1$ - } - }); + return getMethodSuggestions(type, method -> Flags.isPublic(method.getFlags()) && method.getParameterTypes().length == 0 && "java.lang.String".equals(JavaModelUtil.getResolvedTypeName(method.getReturnType(), type))); } private interface MethodChecker { @@ -929,21 +906,17 @@ public class GenerateToStringDialog extends SourceActionDialog { /** * Listener for text fields - updates combos and validates entered data */ - private final ModifyListener modifyListener= new ModifyListener() { - - @Override - public void modifyText(ModifyEvent e) { - if (e.widget == fBuilderClassName) { - fBuilderSettings.className= fBuilderClassName.getText(); - updateCombos(); - } else if (e.widget == fBuilderVariableName) - fBuilderSettings.variableName= fBuilderVariableName.getText(); - - IStatus status= getValidator().revalidateAll(fBuilderSettings); - updateStatus(status); + private final ModifyListener modifyListener= e -> { + if (e.widget == this.fBuilderClassName) { + this.fBuilderSettings.className= this.fBuilderClassName.getText(); + updateCombos(); + } else if (e.widget == this.fBuilderVariableName) + this.fBuilderSettings.variableName= this.fBuilderVariableName.getText(); + + IStatus status= getValidator().revalidateAll(this.fBuilderSettings); + updateStatus(status); - enableApplyButton(); - } + enableApplyButton(); }; private final CustomBuilderValidator fValidator= new CustomBuilderValidator(getType().getJavaProject()); @@ -1009,19 +982,16 @@ public class GenerateToStringDialog extends SourceActionDialog { fResultMethodName.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1)); updateCombos(); - ModifyListener comboListener= new ModifyListener() { - @Override - public void modifyText(ModifyEvent e) { - Combo c= (Combo)e.widget; - if (c.getText().length() > 0) { - if (c == fAppendMethodName) - fBuilderSettings.appendMethod= c.getText(); - if (c == fResultMethodName) - fBuilderSettings.resultMethod= c.getText(); - } - updateStatus(fValidator.revalidateAll(fBuilderSettings)); - enableApplyButton(); + ModifyListener comboListener= e -> { + Combo c= (Combo)e.widget; + if (c.getText().length() > 0) { + if (c == fAppendMethodName) + fBuilderSettings.appendMethod= c.getText(); + if (c == fResultMethodName) + fBuilderSettings.resultMethod= c.getText(); } + updateStatus(fValidator.revalidateAll(fBuilderSettings)); + enableApplyButton(); }; fAppendMethodName.addModifyListener(comboListener); fResultMethodName.addModifyListener(comboListener); @@ -1262,44 +1232,36 @@ public class GenerateToStringDialog extends SourceActionDialog { treeViewer.collapseAll(); treeViewer.expandToLevel(GenerateToStringContentProvider.fieldsNode, 1); - treeViewer.addSelectionChangedListener(new ISelectionChangedListener() { - @Override - public void selectionChanged(SelectionChangedEvent event) { - IStructuredSelection selection= (IStructuredSelection)getTreeViewer().getSelection(); - - Object selected= selection.size() > 0 ? selection.toList().get(0) : null; - GenerateToStringContentProvider cp= (GenerateToStringContentProvider)getContentProvider(); + treeViewer.addSelectionChangedListener(event -> { + IStructuredSelection selection= (IStructuredSelection)getTreeViewer().getSelection(); - fButtonControls[UP_INDEX].setEnabled(cp.canMoveUp(selected)); - fButtonControls[DOWN_INDEX].setEnabled(cp.canMoveDown(selected)); - } + Object selected= selection.size() > 0 ? selection.toList().get(0) : null; + GenerateToStringContentProvider cp= (GenerateToStringContentProvider)getContentProvider(); + fButtonControls[UP_INDEX].setEnabled(cp.canMoveUp(selected)); + fButtonControls[DOWN_INDEX].setEnabled(cp.canMoveDown(selected)); }); - treeViewer.addCheckStateListener(new ICheckStateListener() { - @Override - public void checkStateChanged(CheckStateChangedEvent event) { - getTreeViewer().setSubtreeChecked(event.getElement(), event.getChecked()); - getTreeViewer().setGrayed(event.getElement(), false); - Object parentElement= ((ITreeContentProvider)(getTreeViewer().getContentProvider())).getParent(event.getElement()); - if (parentElement != null) { - Object[] siblings= ((ITreeContentProvider)(getTreeViewer().getContentProvider())).getChildren(parentElement); - int count= 0; - for (Object sibling : siblings) { - if (getTreeViewer().getChecked(sibling)) { - count++; - } + treeViewer.addCheckStateListener(event -> { + getTreeViewer().setSubtreeChecked(event.getElement(), event.getChecked()); + getTreeViewer().setGrayed(event.getElement(), false); + Object parentElement= ((ITreeContentProvider)(getTreeViewer().getContentProvider())).getParent(event.getElement()); + if (parentElement != null) { + Object[] siblings= ((ITreeContentProvider)(getTreeViewer().getContentProvider())).getChildren(parentElement); + int count= 0; + for (Object sibling : siblings) { + if (getTreeViewer().getChecked(sibling)) { + count++; } - if (count == 0) - getTreeViewer().setGrayChecked(parentElement, false); - else if (count == siblings.length) { - getTreeViewer().setChecked(parentElement, true); - getTreeViewer().setGrayed(parentElement, false); - } else - getTreeViewer().setGrayChecked(parentElement, true); } - updateOKStatus(); + if (count == 0) + getTreeViewer().setGrayChecked(parentElement, false); + else if (count == siblings.length) { + getTreeViewer().setChecked(parentElement, true); + getTreeViewer().setGrayed(parentElement, false); + } else + getTreeViewer().setGrayChecked(parentElement, true); } - + updateOKStatus(); }); return treeViewer; } diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/OverrideMethodDialog.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/OverrideMethodDialog.java index cafdcf3873..afe88b14fb 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/OverrideMethodDialog.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/OverrideMethodDialog.java @@ -18,8 +18,6 @@ import java.util.HashSet; import java.util.List; import org.eclipse.swt.SWT; -import org.eclipse.swt.events.ModifyEvent; -import org.eclipse.swt.events.ModifyListener; import org.eclipse.swt.events.SelectionAdapter; import org.eclipse.swt.events.SelectionEvent; import org.eclipse.swt.layout.GridData; @@ -444,37 +442,34 @@ public class OverrideMethodDialog extends SourceActionDialog { @Override protected void addMethodSearchFilter(Text filterText, CheckboxTreeViewer treeViewer) { - filterText.addModifyListener(new ModifyListener() { - @Override - public void modifyText(ModifyEvent e) { - final String searchText = filterText.getText(); - - PatternMatcher matcher = new PatternMatcher(searchText); - ViewerFilter vf = null; - if(!searchText.trim().isEmpty()) { - vf = new ViewerFilter() { - - @Override - public boolean select(Viewer viewer, Object parentElement, Object element) { - IBaseLabelProvider lblProvider= getTreeViewer().getLabelProvider(); - if(element instanceof ITypeBinding) { - return true; - } - - String filterableName = null; - if(lblProvider instanceof LabelProvider) { - filterableName = ((LabelProvider)lblProvider).getText(element); - return matcher.matches(filterableName); - } - - return false; + filterText.addModifyListener(e -> { + final String searchText = filterText.getText(); + + PatternMatcher matcher = new PatternMatcher(searchText); + ViewerFilter vf = null; + if(!searchText.trim().isEmpty()) { + vf = new ViewerFilter() { + + @Override + public boolean select(Viewer viewer, Object parentElement, Object element) { + IBaseLabelProvider lblProvider= getTreeViewer().getLabelProvider(); + if(element instanceof ITypeBinding) { + return true; } - }; - treeViewer.setFilters(vf); - treeViewer.expandAll(); - } else { - treeViewer.resetFilters(); - } + + String filterableName = null; + if(lblProvider instanceof LabelProvider) { + filterableName = ((LabelProvider)lblProvider).getText(element); + return matcher.matches(filterableName); + } + + return false; + } + }; + treeViewer.setFilters(vf); + treeViewer.expandAll(); + } else { + treeViewer.resetFilters(); } }); } diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/SortMembersMessageDialog.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/SortMembersMessageDialog.java index 9fe97975a8..42d009b7ee 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/SortMembersMessageDialog.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/SortMembersMessageDialog.java @@ -36,8 +36,6 @@ import org.eclipse.ui.dialogs.PreferencesUtil; import org.eclipse.jdt.internal.ui.IJavaHelpContextIds; import org.eclipse.jdt.internal.ui.JavaPlugin; import org.eclipse.jdt.internal.ui.preferences.MembersOrderPreferencePage; -import org.eclipse.jdt.internal.ui.wizards.dialogfields.DialogField; -import org.eclipse.jdt.internal.ui.wizards.dialogfields.IDialogFieldListener; import org.eclipse.jdt.internal.ui.wizards.dialogfields.LayoutUtil; import org.eclipse.jdt.internal.ui.wizards.dialogfields.SelectionButtonDialogField; @@ -156,12 +154,9 @@ public class SortMembersMessageDialog extends OptionalMessageDialog { label.setLayoutData(gridData); label.setFont(warningComposite.getFont()); - fNotSortAllRadio.setDialogFieldListener(new IDialogFieldListener() { - @Override - public void dialogFieldChanged(DialogField field) { - imageLabel1.setEnabled(!fNotSortAllRadio.isSelected()); - label.setEnabled(!fNotSortAllRadio.isSelected()); - } + fNotSortAllRadio.setDialogFieldListener(field -> { + imageLabel1.setEnabled(!fNotSortAllRadio.isSelected()); + label.setEnabled(!fNotSortAllRadio.isSelected()); }); imageLabel1.setEnabled(!fNotSortAllRadio.isSelected()); label.setEnabled(!fNotSortAllRadio.isSelected()); diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/TableTextCellEditor.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/TableTextCellEditor.java index ec74d7f6b0..71e8cee642 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/TableTextCellEditor.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/TableTextCellEditor.java @@ -24,8 +24,6 @@ import org.eclipse.swt.events.MouseAdapter; import org.eclipse.swt.events.MouseEvent; import org.eclipse.swt.events.SelectionAdapter; import org.eclipse.swt.events.SelectionEvent; -import org.eclipse.swt.events.TraverseEvent; -import org.eclipse.swt.events.TraverseListener; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Text; @@ -146,12 +144,7 @@ public class TableTextCellEditor extends CellEditor { private ModifyListener getModifyListener() { if (fModifyListener == null) { - fModifyListener = new ModifyListener() { - @Override - public void modifyText(ModifyEvent e) { - editOccured(e); - } - }; + fModifyListener = this::editOccured; } return fModifyListener; } @@ -227,15 +220,12 @@ public class TableTextCellEditor extends CellEditor { checkSelectable(); } }); - text.addTraverseListener(new TraverseListener() { - @Override - public void keyTraversed(TraverseEvent e) { - if (e.detail == SWT.TRAVERSE_ESCAPE - || e.detail == SWT.TRAVERSE_RETURN) { - e.doit = false; - } - } - }); + text.addTraverseListener(e -> { + if (e.detail == SWT.TRAVERSE_ESCAPE + || e.detail == SWT.TRAVERSE_RETURN) { + e.doit = false; + } + }); // We really want a selection listener but it is not supported so we // use a key listener and a mouse listener to know when selection changes // may have occurred @@ -250,14 +240,11 @@ public class TableTextCellEditor extends CellEditor { text.addFocusListener(new FocusAdapter() { @Override public void focusLost(FocusEvent e) { - e.display.asyncExec(new Runnable() { - @Override - public void run() { - if (text.isDisposed()) - return; - // without the asyncExec, focus has not had a chance to go to the content assist proposals - TableTextCellEditor.this.focusLost(); - } + e.display.asyncExec(() -> { + if (text.isDisposed()) + return; + // without the asyncExec, focus has not had a chance to go to the content assist proposals + TableTextCellEditor.this.focusLost(); }); } }); diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/TextFieldNavigationHandler.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/TextFieldNavigationHandler.java index f728c1f507..a9cc826ce9 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/TextFieldNavigationHandler.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/dialogs/TextFieldNavigationHandler.java @@ -20,8 +20,6 @@ import com.ibm.icu.text.BreakIterator; import org.eclipse.swt.SWT; import org.eclipse.swt.custom.StyledText; -import org.eclipse.swt.events.DisposeEvent; -import org.eclipse.swt.events.DisposeListener; import org.eclipse.swt.events.FocusEvent; import org.eclipse.swt.events.FocusListener; import org.eclipse.swt.events.KeyAdapter; @@ -294,12 +292,7 @@ public class TextFieldNavigationHandler { control.addFocusListener(this); if (control.isFocusControl()) activate(); - control.addDisposeListener(new DisposeListener() { - @Override - public void widgetDisposed(DisposeEvent e) { - deactivate(); - } - }); + control.addDisposeListener(e -> deactivate()); } @Override diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/filters/CustomFiltersDialog.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/filters/CustomFiltersDialog.java index 1ca4c42bdf..3eaa4a666c 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/filters/CustomFiltersDialog.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/filters/CustomFiltersDialog.java @@ -40,15 +40,11 @@ import org.eclipse.core.runtime.Assert; import org.eclipse.jface.dialogs.IDialogConstants; import org.eclipse.jface.viewers.ArrayContentProvider; -import org.eclipse.jface.viewers.CheckStateChangedEvent; import org.eclipse.jface.viewers.CheckboxTableViewer; -import org.eclipse.jface.viewers.ICheckStateListener; import org.eclipse.jface.viewers.ILabelProvider; import org.eclipse.jface.viewers.ISelection; -import org.eclipse.jface.viewers.ISelectionChangedListener; import org.eclipse.jface.viewers.IStructuredSelection; import org.eclipse.jface.viewers.LabelProvider; -import org.eclipse.jface.viewers.SelectionChangedEvent; import org.eclipse.ui.PlatformUI; import org.eclipse.ui.dialogs.SelectionDialog; @@ -203,31 +199,23 @@ public class CustomFiltersDialog extends SelectionDialog { data = new GridData(GridData.FILL_HORIZONTAL); data.heightHint= convertHeightInCharsToPixels(3); description.setLayoutData(data); - fCheckBoxList.addSelectionChangedListener(new ISelectionChangedListener() { - @Override - public void selectionChanged(SelectionChangedEvent event) { - ISelection selection= event.getSelection(); - if (selection instanceof IStructuredSelection) { - Object selectedElement= ((IStructuredSelection)selection).getFirstElement(); - if (selectedElement instanceof FilterDescriptor) - description.setText(((FilterDescriptor)selectedElement).getDescription()); - } + fCheckBoxList.addSelectionChangedListener(event -> { + ISelection selection= event.getSelection(); + if (selection instanceof IStructuredSelection) { + Object selectedElement= ((IStructuredSelection)selection).getFirstElement(); + if (selectedElement instanceof FilterDescriptor) + description.setText(((FilterDescriptor)selectedElement).getDescription()); + } + }); + fCheckBoxList.addCheckStateListener(event -> { + Object element= event.getElement(); + if (element instanceof FilterDescriptor) { + // renew if already touched + if (fFilterDescriptorChangeHistory.contains(element)) + fFilterDescriptorChangeHistory.remove(element); + fFilterDescriptorChangeHistory.push((FilterDescriptor) element); } }); - fCheckBoxList.addCheckStateListener(new ICheckStateListener() { - /* - * @see org.eclipse.jface.viewers.ICheckStateListener#checkStateChanged(org.eclipse.jface.viewers.CheckStateChangedEvent) - */ - @Override - public void checkStateChanged(CheckStateChangedEvent event) { - Object element= event.getElement(); - if (element instanceof FilterDescriptor) { - // renew if already touched - if (fFilterDescriptorChangeHistory.contains(element)) - fFilterDescriptorChangeHistory.remove(element); - fFilterDescriptorChangeHistory.push((FilterDescriptor) element); - } - }}); addSelectionButtons(parent); } diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/CleanUpRefactoringWizard.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/CleanUpRefactoringWizard.java index 888eeb8840..4b15d94ecc 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/CleanUpRefactoringWizard.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/fix/CleanUpRefactoringWizard.java @@ -85,8 +85,6 @@ import org.eclipse.jdt.internal.ui.preferences.formatter.ProfileManager.CustomPr import org.eclipse.jdt.internal.ui.preferences.formatter.ProfileManager.Profile; import org.eclipse.jdt.internal.ui.preferences.formatter.ProfileStore; import org.eclipse.jdt.internal.ui.util.SWTUtil; -import org.eclipse.jdt.internal.ui.wizards.dialogfields.DialogField; -import org.eclipse.jdt.internal.ui.wizards.dialogfields.IDialogFieldListener; import org.eclipse.jdt.internal.ui.wizards.dialogfields.IListAdapter; import org.eclipse.jdt.internal.ui.wizards.dialogfields.ListDialogField; import org.eclipse.jdt.internal.ui.wizards.dialogfields.SelectionButtonDialogField; @@ -373,12 +371,7 @@ public class CleanUpRefactoringWizard extends RefactoringWizard { updateEnableState(isCustom, settingsField, configure, bulletListBlock); - fUseCustomField.setDialogFieldListener(new IDialogFieldListener() { - @Override - public void dialogFieldChanged(DialogField field) { - updateEnableState(fUseCustomField.isSelected(), settingsField, configure, bulletListBlock); - } - }); + fUseCustomField.setDialogFieldListener(field -> updateEnableState(fUseCustomField.isSelected(), settingsField, configure, bulletListBlock)); Link preferencePageLink= new Link(composite, SWT.WRAP); preferencePageLink.setText(MultiFixMessages.CleanUpRefactoringWizard_HideWizard_Link); diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/infoviews/AbstractInfoView.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/infoviews/AbstractInfoView.java index a328bf8182..18b67f486e 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/infoviews/AbstractInfoView.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/infoviews/AbstractInfoView.java @@ -781,22 +781,16 @@ public abstract class AbstractInfoView extends ViewPart implements ISelectionLis if (display.isDisposed()) return; - display.asyncExec(new Runnable() { - /* - * @see java.lang.Runnable#run() - */ - @Override - public void run() { - - if (fComputeCount != currentCount || getViewSite().getShell().isDisposed()) - return; + display.asyncExec(() -> { - fCurrentViewInput= je; - doSetInput(input, description); - fToggleLinkAction.updateLinkImage(false); + if (fComputeCount != currentCount || getViewSite().getShell().isDisposed()) + return; - fComputeProgressMonitor= null; - } + fCurrentViewInput= je; + doSetInput(input, description); + fToggleLinkAction.updateLinkImage(false); + + fComputeProgressMonitor= null; }); } @@ -809,15 +803,7 @@ public abstract class AbstractInfoView extends ViewPart implements ISelectionLis if (display.isDisposed()) return; - display.asyncExec(new Runnable() { - /* - * @see java.lang.Runnable#run() - */ - @Override - public void run() { - fToggleLinkAction.updateLinkImage(isBroken); - } - }); + display.asyncExec(() -> fToggleLinkAction.updateLinkImage(isBroken)); } }; diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/infoviews/JavadocView.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/infoviews/JavadocView.java index 9d8fc2dba1..aa336bc3f8 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/infoviews/JavadocView.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/infoviews/JavadocView.java @@ -24,8 +24,6 @@ import java.net.URL; import org.eclipse.swt.SWT; import org.eclipse.swt.SWTError; import org.eclipse.swt.browser.Browser; -import org.eclipse.swt.browser.OpenWindowListener; -import org.eclipse.swt.browser.WindowEvent; import org.eclipse.swt.custom.StyledText; import org.eclipse.swt.events.ControlAdapter; import org.eclipse.swt.events.ControlEvent; @@ -59,7 +57,6 @@ import org.eclipse.jface.internal.text.html.HTMLTextPresenter; import org.eclipse.jface.preference.IPreferenceStore; import org.eclipse.jface.resource.JFaceResources; import org.eclipse.jface.util.IPropertyChangeListener; -import org.eclipse.jface.util.PropertyChangeEvent; import org.eclipse.jface.viewers.ISelection; import org.eclipse.jface.viewers.ISelectionChangedListener; import org.eclipse.jface.viewers.ISelectionProvider; @@ -571,12 +568,7 @@ public class JavadocView extends AbstractInfoView { fBrowser.setJavascriptEnabled(false); fIsUsingBrowserWidget= true; addLinkListener(fBrowser); - fBrowser.addOpenWindowListener(new OpenWindowListener() { - @Override - public void open(WindowEvent event) { - event.required= true; // Cancel opening of new windows - } - }); + fBrowser.addOpenWindowListener(event -> event.required= true); } catch (SWTError er) { @@ -631,25 +623,19 @@ public class JavadocView extends AbstractInfoView { * @since 3.3 */ private void listenForFontChanges() { - fFontListener= new IPropertyChangeListener() { - @Override - public void propertyChange(PropertyChangeEvent event) { - if (PreferenceConstants.APPEARANCE_JAVADOC_FONT.equals(event.getProperty())) { - fgStyleSheetLoaded= false; - // trigger reloading, but make sure other listeners have already run, so that - // the style sheet gets reloaded only once. - final Display display= getSite().getPage().getWorkbenchWindow().getWorkbench().getDisplay(); - if (!display.isDisposed()) { - display.asyncExec(new Runnable() { - @Override - public void run() { - if (!display.isDisposed()) { - initStyleSheet(); - refresh(); - } - } - }); - } + fFontListener= event -> { + if (PreferenceConstants.APPEARANCE_JAVADOC_FONT.equals(event.getProperty())) { + fgStyleSheetLoaded= false; + // trigger reloading, but make sure other listeners have already run, so that + // the style sheet gets reloaded only once. + final Display display= getSite().getPage().getWorkbenchWindow().getWorkbench().getDisplay(); + if (!display.isDisposed()) { + display.asyncExec(() -> { + if (!display.isDisposed()) { + initStyleSheet(); + refresh(); + } + }); } } }; @@ -702,12 +688,7 @@ public class JavadocView extends AbstractInfoView { actionBars.setGlobalActionHandler(ActionFactory.BACK.getId(), fBackAction); actionBars.setGlobalActionHandler(ActionFactory.FORWARD.getId(), fForthAction); - fInputSelectionProvider.addSelectionChangedListener(new ISelectionChangedListener() { - @Override - public void selectionChanged(SelectionChangedEvent event) { - actionBars.setGlobalActionHandler(JdtActionConstants.OPEN_ATTACHED_JAVA_DOC, fOpenBrowserAction); - } - }); + fInputSelectionProvider.addSelectionChangedListener(event -> actionBars.setGlobalActionHandler(JdtActionConstants.OPEN_ATTACHED_JAVA_DOC, fOpenBrowserAction)); } diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/infoviews/SourceView.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/infoviews/SourceView.java index 5ae7228237..c16e19c5f2 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/infoviews/SourceView.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/infoviews/SourceView.java @@ -448,12 +448,7 @@ public class SourceView extends AbstractInfoView { if (!shell.isDisposed()) { Display display= shell.getDisplay(); if (!display.isDisposed()) { - display.asyncExec(new Runnable() { - @Override - public void run() { - updateViewerConfiguration((IJavaElement) input); - } - }); + display.asyncExec(() -> updateViewerConfiguration((IJavaElement) input)); } } } diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/ClassFileEditor.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/ClassFileEditor.java index 95f6bd10d6..218fda3cf2 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/ClassFileEditor.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/ClassFileEditor.java @@ -21,8 +21,6 @@ import java.util.List; import org.eclipse.swt.SWT; import org.eclipse.swt.custom.StackLayout; import org.eclipse.swt.custom.StyledText; -import org.eclipse.swt.events.DisposeEvent; -import org.eclipse.swt.events.DisposeListener; import org.eclipse.swt.events.SelectionEvent; import org.eclipse.swt.events.SelectionListener; import org.eclipse.swt.graphics.Color; @@ -168,19 +166,16 @@ public class ClassFileEditor extends JavaEditor implements ClassFileDocumentProv fComposite= createComposite(parent); fComposite.setLayout(new GridLayout()); - fComposite.addDisposeListener(new DisposeListener() { - @Override - public void widgetDisposed(DisposeEvent e) { - JFaceResources.getFontRegistry().removeListener(SourceAttachmentForm.this); - fComposite= null; - fSeparatorColor.dispose(); - fSeparatorColor= null; - fBannerLabels.clear(); - fHeaderLabels.clear(); - if (fFont != null) { - fFont.dispose(); - fFont= null; - } + fComposite.addDisposeListener(e -> { + JFaceResources.getFontRegistry().removeListener(SourceAttachmentForm.this); + fComposite= null; + fSeparatorColor.dispose(); + fSeparatorColor= null; + fBannerLabels.clear(); + fHeaderLabels.clear(); + if (fFont != null) { + fFont.dispose(); + fFont= null; } }); diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/ClipboardOperationAction.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/ClipboardOperationAction.java index 11a3359dc3..8716e43d8d 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/ClipboardOperationAction.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/ClipboardOperationAction.java @@ -38,11 +38,9 @@ import org.eclipse.swt.widgets.Shell; import org.eclipse.core.runtime.Assert; import org.eclipse.core.runtime.CoreException; -import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.core.runtime.IStatus; import org.eclipse.core.runtime.Status; -import org.eclipse.jface.operation.IRunnableWithProgress; import org.eclipse.jface.viewers.ISelection; import org.eclipse.jface.text.IRewriteTarget; @@ -275,12 +273,7 @@ public final class ClipboardOperationAction extends TextEditorAction { if (!isReadOnlyOperation() && !validateEditorInputState()) return; - BusyIndicator.showWhile(getDisplay(), new Runnable() { - @Override - public void run() { - internalDoOperation(); - } - }); + BusyIndicator.showWhile(getDisplay(), this::internalDoOperation); } private Shell getShell() { @@ -561,14 +554,11 @@ public final class ClipboardOperationAction extends TextEditorAction { } try { - getProgressService().busyCursorWhile(new IRunnableWithProgress() { - @Override - public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException { - try { - JavaModelUtil.applyEdit(unit, rewrite.rewriteImports(monitor), false, null); - } catch (CoreException e) { - throw new InvocationTargetException(e); - } + getProgressService().busyCursorWhile(monitor -> { + try { + JavaModelUtil.applyEdit(unit, rewrite.rewriteImports(monitor), false, null); + } catch (CoreException e) { + throw new InvocationTargetException(e); } }); } catch (InvocationTargetException e) { diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/CompilationUnitDocumentProvider.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/CompilationUnitDocumentProvider.java index 291a47ca85..989f2876f9 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/CompilationUnitDocumentProvider.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/CompilationUnitDocumentProvider.java @@ -63,7 +63,6 @@ import org.eclipse.core.filebuffers.IAnnotationModelFactory; import org.eclipse.jface.preference.IPreferenceStore; import org.eclipse.jface.util.IPropertyChangeListener; -import org.eclipse.jface.util.PropertyChangeEvent; import org.eclipse.jface.text.BadLocationException; import org.eclipse.jface.text.DefaultLineTracker; @@ -963,12 +962,9 @@ public class CompilationUnitDocumentProvider extends TextFileDocumentProvider im setParentDocumentProvider(provider); fGlobalAnnotationModelListener= new GlobalAnnotationModelListener(); - fPropertyListener= new IPropertyChangeListener() { - @Override - public void propertyChange(PropertyChangeEvent event) { - if (HANDLE_TEMPORARY_PROBLEMS.equals(event.getProperty())) - enableHandlingTemporaryProblems(); - } + fPropertyListener= event -> { + if (HANDLE_TEMPORARY_PROBLEMS.equals(event.getProperty())) + enableHandlingTemporaryProblems(); }; JavaPlugin.getDefault().getPreferenceStore().addPropertyChangeListener(fPropertyListener); } diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/CompilationUnitEditor.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/CompilationUnitEditor.java index e3f7f111c6..18f27ae825 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/CompilationUnitEditor.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/CompilationUnitEditor.java @@ -56,7 +56,6 @@ import org.eclipse.jface.text.DocumentCommand; import org.eclipse.jface.text.DocumentEvent; import org.eclipse.jface.text.IDocument; import org.eclipse.jface.text.IDocumentExtension; -import org.eclipse.jface.text.IDocumentListener; import org.eclipse.jface.text.IPositionUpdater; import org.eclipse.jface.text.IRegion; import org.eclipse.jface.text.ITextOperationTarget; @@ -602,30 +601,26 @@ public class CompilationUnitEditor extends JavaEditor implements IJavaReconcilin final IDocument document= sourceViewer.getDocument(); if (document instanceof IDocumentExtension) { IDocumentExtension extension= (IDocumentExtension) document; - extension.registerPostNotificationReplace(null, new IDocumentExtension.IReplace() { - - @Override - public void perform(IDocument d, IDocumentListener owner) { - if ((level.fFirstPosition.isDeleted || level.fFirstPosition.length == 0) - && !level.fSecondPosition.isDeleted - && level.fSecondPosition.offset == level.fFirstPosition.offset) - { - try { - document.replace(level.fSecondPosition.offset, - level.fSecondPosition.length, - ""); //$NON-NLS-1$ - } catch (BadLocationException e) { - JavaPlugin.log(e); - } + extension.registerPostNotificationReplace(null, (d, owner) -> { + if ((level.fFirstPosition.isDeleted || level.fFirstPosition.length == 0) + && !level.fSecondPosition.isDeleted + && level.fSecondPosition.offset == level.fFirstPosition.offset) + { + try { + document.replace(level.fSecondPosition.offset, + level.fSecondPosition.length, + ""); //$NON-NLS-1$ + } catch (BadLocationException e1) { + JavaPlugin.log(e1); } + } - if (fBracketLevelStack.isEmpty()) { - document.removePositionUpdater(fUpdater); - try { - document.removePositionCategory(CATEGORY); - } catch (BadPositionCategoryException e) { - JavaPlugin.log(e); - } + if (fBracketLevelStack.isEmpty()) { + document.removePositionUpdater(fUpdater); + try { + document.removePositionCategory(CATEGORY); + } catch (BadPositionCategoryException e2) { + JavaPlugin.log(e2); } } }); @@ -1695,12 +1690,7 @@ public class CompilationUnitEditor extends JavaEditor implements IJavaReconcilin if (!forced && !progressMonitor.isCanceled()) { Shell shell= getSite().getShell(); if (shell != null && !shell.isDisposed()) { - shell.getDisplay().asyncExec(new Runnable() { - @Override - public void run() { - selectionChanged(); - } - }); + shell.getDisplay().asyncExec(this::selectionChanged); } } } diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditor.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditor.java index 4733c29217..42454bf145 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditor.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditor.java @@ -43,7 +43,6 @@ import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Display; -import org.eclipse.swt.widgets.Shell; import org.eclipse.core.commands.operations.IOperationApprover; import org.eclipse.core.commands.operations.IUndoContext; @@ -87,8 +86,6 @@ import org.eclipse.jface.text.DocumentEvent; import org.eclipse.jface.text.IDocument; import org.eclipse.jface.text.IDocumentExtension4; import org.eclipse.jface.text.IDocumentListener; -import org.eclipse.jface.text.IInformationControl; -import org.eclipse.jface.text.IInformationControlCreator; import org.eclipse.jface.text.IRegion; import org.eclipse.jface.text.ISelectionValidator; import org.eclipse.jface.text.ISynchronizable; @@ -127,7 +124,6 @@ import org.eclipse.jface.text.source.projection.ProjectionSupport; import org.eclipse.jface.text.source.projection.ProjectionViewer; import org.eclipse.ui.IEditorInput; -import org.eclipse.ui.IEditorPart; import org.eclipse.ui.IPageLayout; import org.eclipse.ui.IPartListener2; import org.eclipse.ui.IPartService; @@ -335,12 +331,7 @@ public abstract class JavaEditor extends AbstractDecoratedTextEditor implements @Override public void preferenceChange(final IEclipsePreferences.PreferenceChangeEvent event) { if (Display.getCurrent() == null) { - Display.getDefault().asyncExec(new Runnable() { - @Override - public void run() { - firePropertyChangeEvent(event.getKey(), event.getOldValue(), event.getNewValue()); - } - }); + Display.getDefault().asyncExec(() -> firePropertyChangeEvent(event.getKey(), event.getOldValue(), event.getNewValue())); } else { firePropertyChangeEvent(event.getKey(), event.getOldValue(), event.getNewValue()); } @@ -1892,18 +1883,8 @@ public abstract class JavaEditor extends AbstractDecoratedTextEditor implements fProjectionSupport.addSummarizableAnnotationType("org.eclipse.ui.workbench.texteditor.error"); //$NON-NLS-1$ fProjectionSupport.addSummarizableAnnotationType("org.eclipse.ui.workbench.texteditor.warning"); //$NON-NLS-1$ } - fProjectionSupport.setHoverControlCreator(new IInformationControlCreator() { - @Override - public IInformationControl createInformationControl(Shell shell) { - return new SourceViewerInformationControl(shell, false, getOrientation(), EditorsUI.getTooltipAffordanceString()); - } - }); - fProjectionSupport.setInformationPresenterControlCreator(new IInformationControlCreator() { - @Override - public IInformationControl createInformationControl(Shell shell) { - return new SourceViewerInformationControl(shell, true, getOrientation(), null); - } - }); + fProjectionSupport.setHoverControlCreator(shell -> new SourceViewerInformationControl(shell, false, getOrientation(), EditorsUI.getTooltipAffordanceString())); + fProjectionSupport.setInformationPresenterControlCreator(shell -> new SourceViewerInformationControl(shell, true, getOrientation(), null)); fProjectionSupport.install(); fProjectionModelUpdater= JavaPlugin.getDefault().getFoldingStructureProviderRegistry().getCurrentFoldingProvider(); @@ -2195,13 +2176,7 @@ public abstract class JavaEditor extends AbstractDecoratedTextEditor implements return (T) fEncodingSupport; if (required == IShowInTargetList.class) { - return (T) new IShowInTargetList() { - @Override - public String[] getShowInTargetIds() { - return new String[] { JavaUI.ID_PACKAGES, IPageLayout.ID_OUTLINE }; - } - - }; + return (T) (IShowInTargetList) () -> new String[] { JavaUI.ID_PACKAGES, IPageLayout.ID_OUTLINE }; } if (required == IShowInSource.class) { @@ -2209,41 +2184,36 @@ public abstract class JavaEditor extends AbstractDecoratedTextEditor implements if (inputJE instanceof ICompilationUnit && !JavaModelUtil.isPrimary((ICompilationUnit) inputJE)) return null; - return (T) new IShowInSource() { + return (T) (IShowInSource) () -> new ShowInContext(null, null) { + /* + * @see org.eclipse.ui.part.ShowInContext#getInput() + * @since 3.4 + */ @Override - public ShowInContext getShowInContext() { - return new ShowInContext(null, null) { - /* - * @see org.eclipse.ui.part.ShowInContext#getInput() - * @since 3.4 - */ - @Override - public Object getInput() { - if (isBreadcrumbActive()) - return null; - - return getEditorInput(); - } + public Object getInput() { + if (isBreadcrumbActive()) + return null; - /* - * @see org.eclipse.ui.part.ShowInContext#getSelection() - * @since 3.3 - */ - @Override - public ISelection getSelection() { - if (isBreadcrumbActive()) - return getBreadcrumb().getSelectionProvider().getSelection(); - - try { - IJavaElement je= SelectionConverter.getElementAtOffset(JavaEditor.this); - if (je != null) - return new StructuredSelection(je); - return null; - } catch (JavaModelException ex) { - return null; - } - } - }; + return getEditorInput(); + } + + /* + * @see org.eclipse.ui.part.ShowInContext#getSelection() + * @since 3.3 + */ + @Override + public ISelection getSelection() { + if (isBreadcrumbActive()) + return getBreadcrumb().getSelectionProvider().getSelection(); + + try { + IJavaElement je= SelectionConverter.getElementAtOffset(JavaEditor.this); + if (je != null) + return new StructuredSelection(je); + return null; + } catch (JavaModelException ex) { + return null; + } } }; } @@ -3377,12 +3347,7 @@ public abstract class JavaEditor extends AbstractDecoratedTextEditor implements protected void installOccurrencesFinder(boolean forceUpdate) { fMarkOccurrenceAnnotations= true; - fPostSelectionListenerWithAST= new ISelectionListenerWithAST() { - @Override - public void selectionChanged(IEditorPart part, ITextSelection selection, CompilationUnit astRoot) { - updateOccurrenceAnnotations(selection, astRoot); - } - }; + fPostSelectionListenerWithAST= (part, selection, astRoot) -> updateOccurrenceAnnotations(selection, astRoot); SelectionListenerWithASTManager.getDefault().addListener(this, fPostSelectionListenerWithAST); if (forceUpdate && getSelectionProvider() != null) { fForcedMarkOccurrencesSelection= getSelectionProvider().getSelection(); diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditorBreadcrumb.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditorBreadcrumb.java index abd55a7592..ae5a6c5d9f 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditorBreadcrumb.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditorBreadcrumb.java @@ -32,11 +32,9 @@ import org.eclipse.core.resources.IResource; import org.eclipse.jface.viewers.IBaseLabelProvider; import org.eclipse.jface.viewers.ILabelProvider; import org.eclipse.jface.viewers.ISelection; -import org.eclipse.jface.viewers.ISelectionChangedListener; import org.eclipse.jface.viewers.ISelectionProvider; import org.eclipse.jface.viewers.ITreeContentProvider; import org.eclipse.jface.viewers.LabelProviderChangedEvent; -import org.eclipse.jface.viewers.SelectionChangedEvent; import org.eclipse.jface.viewers.StyledString; import org.eclipse.jface.viewers.TreeViewer; import org.eclipse.jface.viewers.Viewer; @@ -470,19 +468,16 @@ public class JavaEditorBreadcrumb extends EditorBreadcrumb { if (changedElement == null) return; - fRunnable= new Runnable() { - @Override - public void run() { - if (fViewer == null) - return; + fRunnable= () -> { + if (fViewer == null) + return; - Object newInput= getCurrentInput(); - if (newInput instanceof IJavaElement) - newInput= getInput((IJavaElement) newInput); + Object newInput= getCurrentInput(); + if (newInput instanceof IJavaElement) + newInput= getInput((IJavaElement) newInput); - fViewer.setInput(newInput); - fRunnable= null; - } + fViewer.setInput(newInput); + fRunnable= null; }; fViewer.getControl().getDisplay().asyncExec(fRunnable); } @@ -599,12 +594,7 @@ public class JavaEditorBreadcrumb extends EditorBreadcrumb { fViewer.setToolTipLabelProvider(createToolTipLabelProvider()); fViewer.setContentProvider(createContentProvider()); - fViewer.addSelectionChangedListener(new ISelectionChangedListener() { - @Override - public void selectionChanged(SelectionChangedEvent event) { - fBreadcrumbActionGroup.setContext(new ActionContext(fViewer.getSelection())); - } - }); + fViewer.addSelectionChangedListener(event -> fBreadcrumbActionGroup.setContext(new ActionContext(fViewer.getSelection()))); fBreadcrumbActionGroup= new JavaEditorBreadcrumbActionGroup(getJavaEditor(), fViewer); diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditorErrorTickUpdater.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditorErrorTickUpdater.java index 2f0139b960..7f71d9a9a9 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditorErrorTickUpdater.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaEditorErrorTickUpdater.java @@ -90,12 +90,7 @@ public class JavaEditorErrorTickUpdater implements IProblemChangedListener { private void postImageChange(final Image newImage) { Shell shell= fJavaEditor.getEditorSite().getShell(); if (shell != null && !shell.isDisposed()) { - shell.getDisplay().syncExec(new Runnable() { - @Override - public void run() { - fJavaEditor.updatedTitleImage(newImage); - } - }); + shell.getDisplay().syncExec(() -> fJavaEditor.updatedTitleImage(newImage)); } } diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaElementImplementationHyperlink.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaElementImplementationHyperlink.java index c25ef140b1..fbf9ef9589 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaElementImplementationHyperlink.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaElementImplementationHyperlink.java @@ -208,84 +208,76 @@ public class JavaElementImplementationHyperlink implements IHyperlink { openQuickHierarchy(editor); return; } - runnable= new IRunnableWithProgress() { - - @Override - public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException { - if (monitor == null) { - monitor= new NullProgressMonitor(); - } - try { - String methodLabel= JavaElementLabels.getElementLabel(method, JavaElementLabels.DEFAULT_QUALIFIED); - monitor.beginTask(Messages.format(JavaEditorMessages.JavaElementImplementationHyperlink_search_method_implementors, methodLabel), 10); - SearchRequestor requestor= new SearchRequestor() { - @Override - public void acceptSearchMatch(SearchMatch match) throws CoreException { - if (match.getAccuracy() == SearchMatch.A_ACCURATE) { - Object element= match.getElement(); - if (element instanceof IMethod) { - IMethod methodFound= (IMethod) element; - if (!JdtFlags.isAbstract(methodFound)) { - links.add(methodFound); - if (links.size() > 1) { - throw new OperationCanceledException(dummyString); - } + runnable= monitor -> { + if (monitor == null) { + monitor= new NullProgressMonitor(); + } + try { + String methodLabel= JavaElementLabels.getElementLabel(method, JavaElementLabels.DEFAULT_QUALIFIED); + monitor.beginTask(Messages.format(JavaEditorMessages.JavaElementImplementationHyperlink_search_method_implementors, methodLabel), 10); + SearchRequestor requestor= new SearchRequestor() { + @Override + public void acceptSearchMatch(SearchMatch match) throws CoreException { + if (match.getAccuracy() == SearchMatch.A_ACCURATE) { + Object element= match.getElement(); + if (element instanceof IMethod) { + IMethod methodFound= (IMethod) element; + if (!JdtFlags.isAbstract(methodFound)) { + links.add(methodFound); + if (links.size() > 1) { + throw new OperationCanceledException(dummyString); } } } } - }; - - IJavaSearchScope hierarchyScope; - if (receiverType.isInterface()) { - hierarchyScope= SearchEngine.createHierarchyScope(method.getDeclaringType()); - } else { - if (isFullHierarchyNeeded(new SubProgressMonitor(monitor, 3), method, receiverType)) - hierarchyScope= SearchEngine.createHierarchyScope(receiverType); - else { - isMethodAbstract[0]= JdtFlags.isAbstract(method); - hierarchyScope= SearchEngine.createStrictHierarchyScope(null, receiverType, true, !isMethodAbstract[0], null); - } } + }; - int limitTo= IJavaSearchConstants.DECLARATIONS | IJavaSearchConstants.IGNORE_DECLARING_TYPE | IJavaSearchConstants.IGNORE_RETURN_TYPE; - SearchPattern pattern= SearchPattern.createPattern(method, limitTo); - Assert.isNotNull(pattern); - SearchParticipant[] participants= new SearchParticipant[] { SearchEngine.getDefaultSearchParticipant() }; - SearchEngine engine= new SearchEngine(); - engine.search(pattern, participants, hierarchyScope, requestor, new SubProgressMonitor(monitor, 7)); - if (monitor.isCanceled()) { - throw new OperationCanceledException(); + IJavaSearchScope hierarchyScope; + if (receiverType.isInterface()) { + hierarchyScope= SearchEngine.createHierarchyScope(method.getDeclaringType()); + } else { + if (isFullHierarchyNeeded(new SubProgressMonitor(monitor, 3), method, receiverType)) + hierarchyScope= SearchEngine.createHierarchyScope(receiverType); + else { + isMethodAbstract[0]= JdtFlags.isAbstract(method); + hierarchyScope= SearchEngine.createStrictHierarchyScope(null, receiverType, true, !isMethodAbstract[0], null); } - } catch (CoreException e) { - throw new InvocationTargetException(e); - } finally { - monitor.done(); } + + int limitTo= IJavaSearchConstants.DECLARATIONS | IJavaSearchConstants.IGNORE_DECLARING_TYPE | IJavaSearchConstants.IGNORE_RETURN_TYPE; + SearchPattern pattern= SearchPattern.createPattern(method, limitTo); + Assert.isNotNull(pattern); + SearchParticipant[] participants= new SearchParticipant[] { SearchEngine.getDefaultSearchParticipant() }; + SearchEngine engine= new SearchEngine(); + engine.search(pattern, participants, hierarchyScope, requestor, new SubProgressMonitor(monitor, 7)); + if (monitor.isCanceled()) { + throw new OperationCanceledException(); + } + } catch (CoreException e) { + throw new InvocationTargetException(e); + } finally { + monitor.done(); } }; } else if (javaElement instanceof IType) { IType type= (IType) javaElement; - runnable= new IRunnableWithProgress() { - - @Override - public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException { - if (monitor == null) { - monitor= new NullProgressMonitor(); - } - try { - String typeLabel= JavaElementLabels.getElementLabel(type, JavaElementLabels.DEFAULT_QUALIFIED); - monitor.beginTask(Messages.format(JavaEditorMessages.JavaElementImplementationHyperlink_search_method_implementors, typeLabel), 10); - links.addAll(Arrays.asList(type.newTypeHierarchy(monitor).getAllSubtypes(type))); - if (monitor.isCanceled()) { - throw new OperationCanceledException(); - } - } catch (CoreException e) { - throw new InvocationTargetException(e); - } finally { - monitor.done(); + runnable= monitor -> { + if (monitor == null) { + monitor= new NullProgressMonitor(); + } + try { + String typeLabel= JavaElementLabels.getElementLabel(type, JavaElementLabels.DEFAULT_QUALIFIED); + monitor.beginTask(Messages.format(JavaEditorMessages.JavaElementImplementationHyperlink_search_method_implementors, typeLabel), 10); + links.addAll(Arrays.asList(type.newTypeHierarchy(monitor).getAllSubtypes(type))); + if (monitor.isCanceled()) { + throw new OperationCanceledException(); } + } catch (CoreException e) { + throw new InvocationTargetException(e); + } finally { + monitor.done(); } }; diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaOutlinePage.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaOutlinePage.java index 763774137c..244c229a91 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaOutlinePage.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaOutlinePage.java @@ -44,7 +44,6 @@ import org.eclipse.text.edits.TextEdit; import org.eclipse.jface.action.Action; import org.eclipse.jface.action.IAction; -import org.eclipse.jface.action.IMenuListener; import org.eclipse.jface.action.IMenuManager; import org.eclipse.jface.action.IStatusLineManager; import org.eclipse.jface.action.IToolBarManager; @@ -171,24 +170,21 @@ public class JavaOutlinePage extends Page implements IContentOutlinePage, IAdapt Display d= getControl().getDisplay(); if (d != null) { - d.asyncExec(new Runnable() { - @Override - public void run() { - ICompilationUnit cu= (ICompilationUnit) fInput; - IJavaElement base= cu; - if (fTopLevelTypeOnly) { - base= cu.findPrimaryType(); - if (base == null) { - if (fOutlineViewer != null) - fOutlineViewer.refresh(true); - return; - } - } - IJavaElementDelta delta= findElement(base, e.getDelta()); - if (delta != null && fOutlineViewer != null) { - fOutlineViewer.reconcile(delta); + d.asyncExec(() -> { + ICompilationUnit cu= (ICompilationUnit) fInput; + IJavaElement base= cu; + if (fTopLevelTypeOnly) { + base= cu.findPrimaryType(); + if (base == null) { + if (fOutlineViewer != null) + fOutlineViewer.refresh(true); + return; } } + IJavaElementDelta delta= findElement(base, e.getDelta()); + if (delta != null && fOutlineViewer != null) { + fOutlineViewer.reconcile(delta); + } }); } } @@ -501,16 +497,13 @@ public class JavaOutlinePage extends Page implements IContentOutlinePage, IAdapt private void valueChanged(final boolean on, boolean store) { setChecked(on); - BusyIndicator.showWhile(fOutlineViewer.getControl().getDisplay(), new Runnable() { - @Override - public void run() { - if (on) { - fOutlineViewer.setComparator(fComparator); - fDropSupport.setFeedbackEnabled(false); - } else { - fOutlineViewer.setComparator(fSourcePositonComparator); - fDropSupport.setFeedbackEnabled(true); - } + BusyIndicator.showWhile(fOutlineViewer.getControl().getDisplay(), () -> { + if (on) { + fOutlineViewer.setComparator(fComparator); + fDropSupport.setFeedbackEnabled(false); + } else { + fOutlineViewer.setComparator(fSourcePositonComparator); + fDropSupport.setFeedbackEnabled(true); } }); @@ -679,18 +672,15 @@ public class JavaOutlinePage extends Page implements IContentOutlinePage, IAdapt regions.add(getElementRegion(element, document)); } } - Comparator<IRegion> comparator= new Comparator<IRegion>() { - @Override - public int compare(IRegion region0, IRegion region1) { - int region1Offset= region0.getOffset(); - int region2Offset= region1.getOffset(); - if (region1Offset > region2Offset) - return 1; - else if (region1Offset == region2Offset) - return 0; - else - return -1; - } + Comparator<IRegion> comparator= (region0, region1) -> { + int region1Offset= region0.getOffset(); + int region2Offset= region1.getOffset(); + if (region1Offset > region2Offset) + return 1; + else if (region1Offset == region2Offset) + return 0; + else + return -1; }; Collections.sort(regions, comparator); Object[] sortedObjects= regions.toArray(); @@ -831,12 +821,7 @@ public class JavaOutlinePage extends Page implements IContentOutlinePage, IAdapt fTogglePresentation= new TogglePresentationAction(); fTogglePresentation.setEditor(editor); - fPropertyChangeListener= new IPropertyChangeListener() { - @Override - public void propertyChange(PropertyChangeEvent event) { - doPropertyChange(event); - } - }; + fPropertyChangeListener= this::doPropertyChange; JavaPlugin.getDefault().getPreferenceStore().addPropertyChangeListener(fPropertyChangeListener); } @@ -975,12 +960,7 @@ public class JavaOutlinePage extends Page implements IContentOutlinePage, IAdapt MenuManager manager= new MenuManager(fContextMenuID, fContextMenuID); manager.setRemoveAllWhenShown(true); - manager.addMenuListener(new IMenuListener() { - @Override - public void menuAboutToShow(IMenuManager m) { - contextMenuAboutToShow(m); - } - }); + manager.addMenuListener(this::contextMenuAboutToShow); fMenu= manager.createContextMenu(tree); tree.setMenu(fMenu); @@ -1176,13 +1156,7 @@ public class JavaOutlinePage extends Page implements IContentOutlinePage, IAdapt return (T) getShowInSource(); } if (key == IShowInTargetList.class) { - return (T) new IShowInTargetList() { - @Override - public String[] getShowInTargetIds() { - return new String[] { JavaUI.ID_PACKAGES }; - } - - }; + return (T) (IShowInTargetList) () -> new String[] { JavaUI.ID_PACKAGES }; } if (key == IShowInTarget.class) { return (T) getShowInTarget(); @@ -1263,14 +1237,9 @@ public class JavaOutlinePage extends Page implements IContentOutlinePage, IAdapt * @return the {@link IShowInSource} */ protected IShowInSource getShowInSource() { - return new IShowInSource() { - @Override - public ShowInContext getShowInContext() { - return new ShowInContext( - null, - getSite().getSelectionProvider().getSelection()); - } - }; + return () -> new ShowInContext( + null, + getSite().getSelectionProvider().getSelection()); } /** @@ -1279,24 +1248,21 @@ public class JavaOutlinePage extends Page implements IContentOutlinePage, IAdapt * @return the {@link IShowInTarget} */ protected IShowInTarget getShowInTarget() { - return new IShowInTarget() { - @Override - public boolean show(ShowInContext context) { - ISelection sel= context.getSelection(); - if (sel instanceof ITextSelection) { - ITextSelection tsel= (ITextSelection) sel; - int offset= tsel.getOffset(); - IJavaElement element= fEditor.getElementAt(offset); - if (element != null) { - setSelection(new StructuredSelection(element)); - return true; - } - } else if (sel instanceof IStructuredSelection) { - setSelection(sel); + return context -> { + ISelection sel= context.getSelection(); + if (sel instanceof ITextSelection) { + ITextSelection tsel= (ITextSelection) sel; + int offset= tsel.getOffset(); + IJavaElement element= fEditor.getElementAt(offset); + if (element != null) { + setSelection(new StructuredSelection(element)); return true; } - return false; + } else if (sel instanceof IStructuredSelection) { + setSelection(sel); + return true; } + return false; }; } diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaSourceViewer.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaSourceViewer.java index 6711a95652..9e6507b8ab 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaSourceViewer.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/JavaSourceViewer.java @@ -20,8 +20,6 @@ import java.util.Map; import com.ibm.icu.text.Bidi; import org.eclipse.swt.SWT; -import org.eclipse.swt.custom.BidiSegmentEvent; -import org.eclipse.swt.custom.BidiSegmentListener; import org.eclipse.swt.custom.StyleRange; import org.eclipse.swt.custom.StyledText; import org.eclipse.swt.graphics.Color; @@ -477,15 +475,12 @@ public class JavaSourceViewer extends ProjectionViewer implements IPropertyChang fBackspaceManager.install(this); StyledText text= getTextWidget(); - text.addBidiSegmentListener(new BidiSegmentListener() { - @Override - public void lineGetSegments(BidiSegmentEvent event) { - if (redraws()) { - try { - event.segments= getBidiLineSegments(getDocument(), baseLevel, widgetOffset2ModelOffset(event.lineOffset), event.lineText); - } catch (BadLocationException e) { - // don't touch the segments - } + text.addBidiSegmentListener(event -> { + if (redraws()) { + try { + event.segments= getBidiLineSegments(getDocument(), baseLevel, widgetOffset2ModelOffset(event.lineOffset), event.lineText); + } catch (BadLocationException e) { + // don't touch the segments } } }); diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/NLSKeyHyperlink.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/NLSKeyHyperlink.java index 99536e167c..b17d70eb0f 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/NLSKeyHyperlink.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/NLSKeyHyperlink.java @@ -222,15 +222,7 @@ public class NLSKeyHyperlink implements IHyperlink { display.beep(); final IEditorStatusLine statusLine= editor.getAdapter(IEditorStatusLine.class); if (statusLine != null) { - display.asyncExec(new Runnable() { - /* - * @see java.lang.Runnable#run() - */ - @Override - public void run() { - statusLine.setMessage(true, message, null); - } - }); + display.asyncExec(() -> statusLine.setMessage(true, message, null)); } } diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/SemanticHighlightingPresenter.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/SemanticHighlightingPresenter.java index c6810d8f63..fbbd0ae9a0 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/SemanticHighlightingPresenter.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/SemanticHighlightingPresenter.java @@ -146,12 +146,7 @@ public class SemanticHighlightingPresenter extends SemanticHighlightingPresenter if (isCanceled()) return null; - Runnable runnable= new Runnable() { - @Override - public void run() { - updatePresentation(textPresentation, added, removed); - } - }; + Runnable runnable= () -> updatePresentation(textPresentation, added, removed); return runnable; } diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/ToggleCommentAction.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/ToggleCommentAction.java index 80af21ec1b..ba9c03ae43 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/ToggleCommentAction.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/ToggleCommentAction.java @@ -105,12 +105,7 @@ public final class ToggleCommentAction extends TextEditorAction { if (shell != null && !shell.isDisposed()) display= shell.getDisplay(); - BusyIndicator.showWhile(display, new Runnable() { - @Override - public void run() { - fOperationTarget.doOperation(operationCode); - } - }); + BusyIndicator.showWhile(display, () -> fOperationTarget.doOperation(operationCode)); } /** diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/breadcrumb/BreadcrumbItemDetails.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/breadcrumb/BreadcrumbItemDetails.java index 3248358f00..9600276726 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/breadcrumb/BreadcrumbItemDetails.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/breadcrumb/BreadcrumbItemDetails.java @@ -21,14 +21,8 @@ import org.eclipse.swt.events.FocusEvent; import org.eclipse.swt.events.FocusListener; import org.eclipse.swt.events.KeyEvent; import org.eclipse.swt.events.KeyListener; -import org.eclipse.swt.events.MenuDetectEvent; -import org.eclipse.swt.events.MenuDetectListener; import org.eclipse.swt.events.MouseEvent; import org.eclipse.swt.events.MouseListener; -import org.eclipse.swt.events.PaintEvent; -import org.eclipse.swt.events.PaintListener; -import org.eclipse.swt.events.TraverseEvent; -import org.eclipse.swt.events.TraverseListener; import org.eclipse.swt.graphics.Image; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; @@ -76,12 +70,9 @@ class BreadcrumbItemDetails { layout.marginHeight= 1; layout.marginWidth= 2; fImageComposite.setLayout(layout); - fImageComposite.addPaintListener(new PaintListener() { - @Override - public void paintControl(PaintEvent e) { - if (fHasFocus && !isTextVisible()) { - e.gc.drawFocus(e.x, e.y, e.width, e.height); - } + fImageComposite.addPaintListener(e -> { + if (fHasFocus && !isTextVisible()) { + e.gc.drawFocus(e.x, e.y, e.width, e.height); } }); installFocusComposite(fImageComposite); @@ -99,12 +90,9 @@ class BreadcrumbItemDetails { layout.marginWidth= 2; fTextComposite.setLayout(layout); addElementListener(fTextComposite); - fTextComposite.addPaintListener(new PaintListener() { - @Override - public void paintControl(PaintEvent e) { - if (fHasFocus && isTextVisible()) { - e.gc.drawFocus(e.x, e.y, e.width, e.height); - } + fTextComposite.addPaintListener(e -> { + if (fHasFocus && isTextVisible()) { + e.gc.drawFocus(e.x, e.y, e.width, e.height); } }); installFocusComposite(fTextComposite); @@ -282,23 +270,20 @@ class BreadcrumbItemDetails { * @param composite the composite which may get focus */ private void installFocusComposite(Composite composite) { - composite.addTraverseListener(new TraverseListener() { - @Override - public void keyTraversed(TraverseEvent e) { - if (e.detail == SWT.TRAVERSE_TAB_NEXT || e.detail == SWT.TRAVERSE_TAB_PREVIOUS) { - int index= fParent.getViewer().getIndexOfItem(fParent); - if (e.detail == SWT.TRAVERSE_TAB_NEXT) { - index++; - } else { - index--; - } - - if (index > 0 && index < fParent.getViewer().getItemCount()) { - fParent.getViewer().selectItem(fParent.getViewer().getItem(index)); - } - - e.doit= true; + composite.addTraverseListener(e -> { + if (e.detail == SWT.TRAVERSE_TAB_NEXT || e.detail == SWT.TRAVERSE_TAB_PREVIOUS) { + int index= fParent.getViewer().getIndexOfItem(fParent); + if (e.detail == SWT.TRAVERSE_TAB_NEXT) { + index++; + } else { + index--; + } + + if (index > 0 && index < fParent.getViewer().getItemCount()) { + fParent.getViewer().selectItem(fParent.getViewer().getItem(index)); } + + e.doit= true; } }); composite.addKeyListener(new KeyListener() { @@ -417,13 +402,10 @@ class BreadcrumbItemDetails { public void mouseUp(MouseEvent e) { } }); - control.addMenuDetectListener(new MenuDetectListener() { - @Override - public void menuDetected(MenuDetectEvent e) { - BreadcrumbViewer viewer= fParent.getViewer(); - viewer.selectItem(fParent); - fParent.getViewer().fireMenuDetect(e); - } + control.addMenuDetectListener(e -> { + BreadcrumbViewer viewer= fParent.getViewer(); + viewer.selectItem(fParent); + fParent.getViewer().fireMenuDetect(e); }); } } diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/breadcrumb/BreadcrumbItemDropDown.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/breadcrumb/BreadcrumbItemDropDown.java index d5f83fb817..9cedcfcacb 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/breadcrumb/BreadcrumbItemDropDown.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/breadcrumb/BreadcrumbItemDropDown.java @@ -18,8 +18,6 @@ import org.eclipse.swt.SWT; import org.eclipse.swt.events.ControlAdapter; import org.eclipse.swt.events.ControlEvent; import org.eclipse.swt.events.ControlListener; -import org.eclipse.swt.events.DisposeEvent; -import org.eclipse.swt.events.DisposeListener; import org.eclipse.swt.events.KeyEvent; import org.eclipse.swt.events.KeyListener; import org.eclipse.swt.events.MouseAdapter; @@ -41,7 +39,6 @@ import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Display; -import org.eclipse.swt.widgets.Event; import org.eclipse.swt.widgets.Item; import org.eclipse.swt.widgets.Listener; import org.eclipse.swt.widgets.Shell; @@ -60,12 +57,10 @@ import org.eclipse.jface.dialogs.IDialogSettings; import org.eclipse.jface.resource.CompositeImageDescriptor; import org.eclipse.jface.util.OpenStrategy; import org.eclipse.jface.util.Util; -import org.eclipse.jface.viewers.IOpenListener; import org.eclipse.jface.viewers.ISelection; import org.eclipse.jface.viewers.ISelectionProvider; import org.eclipse.jface.viewers.IStructuredSelection; import org.eclipse.jface.viewers.ITreeViewerListener; -import org.eclipse.jface.viewers.OpenEvent; import org.eclipse.jface.viewers.StructuredSelection; import org.eclipse.jface.viewers.TreeExpansionEvent; import org.eclipse.jface.viewers.TreeViewer; @@ -335,22 +330,19 @@ class BreadcrumbItemDropDown { } }); - fDropDownViewer.addOpenListener(new IOpenListener() { - @Override - public void open(OpenEvent event) { - if (JavaPlugin.DEBUG_BREADCRUMB_ITEM_DROP_DOWN) - System.out.println("BreadcrumbItemDropDown.showMenu()$treeViewer>open"); //$NON-NLS-1$ + fDropDownViewer.addOpenListener(event -> { + if (JavaPlugin.DEBUG_BREADCRUMB_ITEM_DROP_DOWN) + System.out.println("BreadcrumbItemDropDown.showMenu()$treeViewer>open"); //$NON-NLS-1$ - ISelection selection= event.getSelection(); - if (!(selection instanceof IStructuredSelection)) - return; + ISelection selection= event.getSelection(); + if (!(selection instanceof IStructuredSelection)) + return; - Object element= ((IStructuredSelection) selection).getFirstElement(); - if (element == null) - return; + Object element= ((IStructuredSelection) selection).getFirstElement(); + if (element == null) + return; - openElement(element); - } + openElement(element); }); tree.addMouseListener(new MouseListener() { @@ -482,17 +474,14 @@ class BreadcrumbItemDropDown { @Override public void treeExpanded(TreeExpansionEvent event) { tree.setRedraw(false); - fShell.getDisplay().asyncExec(new Runnable() { - @Override - public void run() { - if (fShell.isDisposed()) - return; - - try { - resizeShell(fShell); - } finally { - tree.setRedraw(true); - } + fShell.getDisplay().asyncExec(() -> { + if (fShell.isDisposed()) + return; + + try { + resizeShell(fShell); + } finally { + tree.setRedraw(true); } }); } @@ -562,39 +551,36 @@ class BreadcrumbItemDropDown { * @param shell the shell to install the closer to */ private void installCloser(final Shell shell) { - final Listener focusListener= new Listener() { - @Override - public void handleEvent(Event event) { - Widget focusElement= event.widget; - boolean isFocusBreadcrumbTreeFocusWidget= focusElement == shell || focusElement instanceof Tree && ((Tree)focusElement).getShell() == shell; - boolean isFocusWidgetParentShell= focusElement instanceof Control && ((Control)focusElement).getShell().getParent() == shell; + final Listener focusListener= event -> { + Widget focusElement= event.widget; + boolean isFocusBreadcrumbTreeFocusWidget= focusElement == shell || focusElement instanceof Tree && ((Tree)focusElement).getShell() == shell; + boolean isFocusWidgetParentShell= focusElement instanceof Control && ((Control)focusElement).getShell().getParent() == shell; + + switch (event.type) { + case SWT.FocusIn: + if (JavaPlugin.DEBUG_BREADCRUMB_ITEM_DROP_DOWN) + System.out.println("focusIn - is breadcrumb tree: " + isFocusBreadcrumbTreeFocusWidget); //$NON-NLS-1$ - switch (event.type) { - case SWT.FocusIn: + if (!isFocusBreadcrumbTreeFocusWidget && !isFocusWidgetParentShell) { if (JavaPlugin.DEBUG_BREADCRUMB_ITEM_DROP_DOWN) - System.out.println("focusIn - is breadcrumb tree: " + isFocusBreadcrumbTreeFocusWidget); //$NON-NLS-1$ + System.out.println("==> closing shell since focus in other widget"); //$NON-NLS-1$ + shell.close(); + } + break; - if (!isFocusBreadcrumbTreeFocusWidget && !isFocusWidgetParentShell) { - if (JavaPlugin.DEBUG_BREADCRUMB_ITEM_DROP_DOWN) - System.out.println("==> closing shell since focus in other widget"); //$NON-NLS-1$ - shell.close(); - } - break; + case SWT.FocusOut: + if (JavaPlugin.DEBUG_BREADCRUMB_ITEM_DROP_DOWN) + System.out.println("focusOut - is breadcrumb tree: " + isFocusBreadcrumbTreeFocusWidget); //$NON-NLS-1$ - case SWT.FocusOut: + if (event.display.getActiveShell() == null) { if (JavaPlugin.DEBUG_BREADCRUMB_ITEM_DROP_DOWN) - System.out.println("focusOut - is breadcrumb tree: " + isFocusBreadcrumbTreeFocusWidget); //$NON-NLS-1$ - - if (event.display.getActiveShell() == null) { - if (JavaPlugin.DEBUG_BREADCRUMB_ITEM_DROP_DOWN) - System.out.println("==> closing shell since event.display.getActiveShell() == null"); //$NON-NLS-1$ - shell.close(); - } - break; + System.out.println("==> closing shell since event.display.getActiveShell() == null"); //$NON-NLS-1$ + shell.close(); + } + break; - default: - Assert.isTrue(false); - } + default: + Assert.isTrue(false); } }; @@ -615,18 +601,15 @@ class BreadcrumbItemDropDown { }; fToolBar.getShell().addControlListener(controlListener); - shell.addDisposeListener(new DisposeListener() { - @Override - public void widgetDisposed(DisposeEvent e) { - if (JavaPlugin.DEBUG_BREADCRUMB_ITEM_DROP_DOWN) - System.out.println("==> shell disposed"); //$NON-NLS-1$ + shell.addDisposeListener(e -> { + if (JavaPlugin.DEBUG_BREADCRUMB_ITEM_DROP_DOWN) + System.out.println("==> shell disposed"); //$NON-NLS-1$ - display.removeFilter(SWT.FocusIn, focusListener); - display.removeFilter(SWT.FocusOut, focusListener); + display.removeFilter(SWT.FocusIn, focusListener); + display.removeFilter(SWT.FocusOut, focusListener); - if (!fToolBar.isDisposed()) { - fToolBar.getShell().removeControlListener(controlListener); - } + if (!fToolBar.isDisposed()) { + fToolBar.getShell().removeControlListener(controlListener); } }); shell.addShellListener(new ShellListener() { diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/breadcrumb/BreadcrumbViewer.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/breadcrumb/BreadcrumbViewer.java index 4245ffc15e..67f50df40a 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/breadcrumb/BreadcrumbViewer.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/breadcrumb/BreadcrumbViewer.java @@ -23,15 +23,11 @@ import org.eclipse.swt.SWT; import org.eclipse.swt.events.DisposeEvent; import org.eclipse.swt.events.MenuDetectEvent; import org.eclipse.swt.events.MenuDetectListener; -import org.eclipse.swt.events.TraverseEvent; -import org.eclipse.swt.events.TraverseListener; import org.eclipse.swt.graphics.Image; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; -import org.eclipse.swt.widgets.Event; -import org.eclipse.swt.widgets.Listener; import org.eclipse.swt.widgets.Shell; import org.eclipse.swt.widgets.Widget; @@ -99,12 +95,7 @@ public abstract class BreadcrumbViewer extends StructuredViewer { fContainer= new Composite(parent, SWT.NONE); GridData layoutData= new GridData(SWT.FILL, SWT.TOP, true, false); fContainer.setLayoutData(layoutData); - fContainer.addTraverseListener(new TraverseListener() { - @Override - public void keyTraversed(TraverseEvent e) { - e.doit= true; - } - }); + fContainer.addTraverseListener(e -> e.doit= true); fContainer.setBackgroundMode(SWT.INHERIT_DEFAULT); fContainer.setData("org.eclipse.e4.ui.css.id", "BreadcrumbComposite"); //$NON-NLS-1$ //$NON-NLS-2$ @@ -122,12 +113,7 @@ public abstract class BreadcrumbViewer extends StructuredViewer { gridLayout.horizontalSpacing= 0; fContainer.setLayout(gridLayout); - fContainer.addListener(SWT.Resize, new Listener() { - @Override - public void handleEvent(Event event) { - refresh(); - } - }); + fContainer.addListener(SWT.Resize, event -> refresh()); } /** diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/breadcrumb/EditorBreadcrumb.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/breadcrumb/EditorBreadcrumb.java index 98dd629d6a..9ee7873b68 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/breadcrumb/EditorBreadcrumb.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/breadcrumb/EditorBreadcrumb.java @@ -14,8 +14,6 @@ package org.eclipse.jdt.internal.ui.javaeditor.breadcrumb; import org.eclipse.swt.SWT; -import org.eclipse.swt.events.MenuDetectEvent; -import org.eclipse.swt.events.MenuDetectListener; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Composite; @@ -33,14 +31,9 @@ import org.eclipse.core.runtime.Platform; import org.eclipse.jface.action.MenuManager; import org.eclipse.jface.resource.JFaceResources; import org.eclipse.jface.util.IPropertyChangeListener; -import org.eclipse.jface.util.PropertyChangeEvent; -import org.eclipse.jface.viewers.DoubleClickEvent; -import org.eclipse.jface.viewers.IDoubleClickListener; -import org.eclipse.jface.viewers.IOpenListener; import org.eclipse.jface.viewers.ISelection; import org.eclipse.jface.viewers.ISelectionProvider; import org.eclipse.jface.viewers.IStructuredSelection; -import org.eclipse.jface.viewers.OpenEvent; import org.eclipse.jface.viewers.StructuredSelection; import org.eclipse.jface.text.ITextViewer; @@ -212,30 +205,27 @@ public abstract class EditorBreadcrumb implements IBreadcrumb { gridLayout.horizontalSpacing= 0; fComposite.setLayout(gridLayout); - fDisplayFocusListener= new Listener() { - @Override - public void handleEvent(Event event) { - if (isBreadcrumbEvent(event)) { - if (fHasFocus) - return; + fDisplayFocusListener= event -> { + if (isBreadcrumbEvent(event)) { + if (fHasFocus) + return; - fIsActive= true; + fIsActive= true; - focusGained(); - } else { - if (!fIsActive) - return; + focusGained(); + } else { + if (!fIsActive) + return; - boolean hasTextFocus= fTextViewer.getTextWidget().isFocusControl(); - if (hasTextFocus) { - fIsActive= false; - } + boolean hasTextFocus= fTextViewer.getTextWidget().isFocusControl(); + if (hasTextFocus) { + fIsActive= false; + } - if (!fHasFocus) - return; + if (!fHasFocus) + return; - focusLost(); - } + focusLost(); } }; Display.getCurrent().addFilter(SWT.FocusIn, fDisplayFocusListener); @@ -243,80 +233,66 @@ public abstract class EditorBreadcrumb implements IBreadcrumb { fBreadcrumbViewer= createViewer(fComposite); fBreadcrumbViewer.getControl().setBackground(Display.getDefault().getSystemColor(SWT.COLOR_WHITE)); - fBreadcrumbViewer.addDoubleClickListener(new IDoubleClickListener() { - @Override - public void doubleClick(DoubleClickEvent event) { - Object element= ((IStructuredSelection) event.getSelection()).getFirstElement(); - if (element == null) - return; + fBreadcrumbViewer.addDoubleClickListener(event -> { + Object element= ((IStructuredSelection) event.getSelection()).getFirstElement(); + if (element == null) + return; - BreadcrumbItem item= (BreadcrumbItem) fBreadcrumbViewer.doFindItem(element); - if (item == null) - return; + BreadcrumbItem item= (BreadcrumbItem) fBreadcrumbViewer.doFindItem(element); + if (item == null) + return; - int index= fBreadcrumbViewer.getIndexOfItem(item); - BreadcrumbItem parentItem= fBreadcrumbViewer.getItem(index - 1); - parentItem.openDropDownMenu(); - } + int index= fBreadcrumbViewer.getIndexOfItem(item); + BreadcrumbItem parentItem= fBreadcrumbViewer.getItem(index - 1); + parentItem.openDropDownMenu(); }); - fBreadcrumbViewer.addOpenListener(new IOpenListener() { - @Override - public void open(OpenEvent event) { - doRevealOrOpen(event.getSelection()); + fBreadcrumbViewer.addOpenListener(event -> doRevealOrOpen(event.getSelection())); + + fBreadcrumbViewer.addMenuDetectListener(event -> { + ISelectionProvider selectionProvider; + if (fBreadcrumbViewer.isDropDownOpen()) { + selectionProvider= fBreadcrumbViewer.getDropDownSelectionProvider(); + } else { + selectionProvider= fBreadcrumbViewer; } - }); - fBreadcrumbViewer.addMenuDetectListener(new MenuDetectListener() { - @Override - public void menuDetected(MenuDetectEvent event) { - ISelectionProvider selectionProvider; - if (fBreadcrumbViewer.isDropDownOpen()) { - selectionProvider= fBreadcrumbViewer.getDropDownSelectionProvider(); - } else { - selectionProvider= fBreadcrumbViewer; - } + ActionGroup actionGroup= createContextMenuActionGroup(selectionProvider); + if (actionGroup == null) + return; + Menu menu= null; + try { + MenuManager manager= new MenuManager(); + actionGroup.setContext(new ActionContext(selectionProvider.getSelection())); + actionGroup.fillContextMenu(manager); - ActionGroup actionGroup= createContextMenuActionGroup(selectionProvider); - if (actionGroup == null) + getTextEditor().getEditorSite().registerContextMenu(manager, selectionProvider, false); + + if (manager.isEmpty()) return; - Menu menu= null; - try { - MenuManager manager= new MenuManager(); - actionGroup.setContext(new ActionContext(selectionProvider.getSelection())); - actionGroup.fillContextMenu(manager); - - getTextEditor().getEditorSite().registerContextMenu(manager, selectionProvider, false); - - if (manager.isEmpty()) - return; - - menu= manager.createContextMenu(fBreadcrumbViewer.getControl()); - menu.setLocation(event.x + 10, event.y + 10); - menu.setVisible(true); - while (!menu.isDisposed() && menu.isVisible()) { - if (!menu.getDisplay().readAndDispatch()) - menu.getDisplay().sleep(); - } - } finally { - if (menu != null - && !menu.isDisposed() - && menu.getDisplay() != null - && Platform.OS_WIN32.equals(Platform.getOS())) { - menu.getDisplay().readAndDispatch(); - } - actionGroup.dispose(); + + menu= manager.createContextMenu(fBreadcrumbViewer.getControl()); + menu.setLocation(event.x + 10, event.y + 10); + menu.setVisible(true); + while (!menu.isDisposed() && menu.isVisible()) { + if (!menu.getDisplay().readAndDispatch()) + menu.getDisplay().sleep(); + } + } finally { + if (menu != null + && !menu.isDisposed() + && menu.getDisplay() != null + && Platform.OS_WIN32.equals(Platform.getOS())) { + menu.getDisplay().readAndDispatch(); } + actionGroup.dispose(); } }); - fPropertyChangeListener= new IPropertyChangeListener() { - @Override - public void propertyChange(PropertyChangeEvent event) { - if (ACTIVE_TAB_BG_END.equals(event.getProperty())) { - if (fComposite.isFocusControl()) { - fComposite.setBackground(JFaceResources.getColorRegistry().get(ACTIVE_TAB_BG_END)); - } + fPropertyChangeListener= event -> { + if (ACTIVE_TAB_BG_END.equals(event.getProperty())) { + if (fComposite.isFocusControl()) { + fComposite.setBackground(JFaceResources.getColorRegistry().get(ACTIVE_TAB_BG_END)); } } }; @@ -440,17 +416,14 @@ public abstract class EditorBreadcrumb implements IBreadcrumb { //Sanity check deinstallDisplayListeners(); - fDisplayKeyListener= new Listener() { - @Override - public void handleEvent(Event event) { - if (event.keyCode != SWT.ESC) - return; + fDisplayKeyListener= event -> { + if (event.keyCode != SWT.ESC) + return; - if (!isBreadcrumbEvent(event)) - return; + if (!isBreadcrumbEvent(event)) + return; - fTextViewer.getTextWidget().setFocus(); - } + fTextViewer.getTextWidget().setFocus(); }; Display.getDefault().addFilter(SWT.KeyDown, fDisplayKeyListener); } diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/saveparticipant/AbstractSaveParticipantPreferenceConfiguration.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/saveparticipant/AbstractSaveParticipantPreferenceConfiguration.java index 3a918d96ec..d403fe2fcd 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/saveparticipant/AbstractSaveParticipantPreferenceConfiguration.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/saveparticipant/AbstractSaveParticipantPreferenceConfiguration.java @@ -31,8 +31,6 @@ import org.eclipse.jface.preference.IPreferencePageContainer; import org.eclipse.jdt.ui.JavaUI; -import org.eclipse.jdt.internal.ui.wizards.dialogfields.DialogField; -import org.eclipse.jdt.internal.ui.wizards.dialogfields.IDialogFieldListener; import org.eclipse.jdt.internal.ui.wizards.dialogfields.SelectionButtonDialogField; public abstract class AbstractSaveParticipantPreferenceConfiguration implements ISaveParticipantPreferenceConfiguration { @@ -96,13 +94,9 @@ public abstract class AbstractSaveParticipantPreferenceConfiguration implements boolean enabled= isEnabled(context); fEnableField.setSelection(enabled); - fEnableField.setDialogFieldListener(new IDialogFieldListener() { - @Override - public void dialogFieldChanged(DialogField field) { - fContext.getNode(JavaUI.ID_PLUGIN).putBoolean(getPreferenceKey(), fEnableField.isSelected()); - enabled(fEnableField.isSelected()); - } - + fEnableField.setDialogFieldListener(field -> { + fContext.getNode(JavaUI.ID_PLUGIN).putBoolean(getPreferenceKey(), fEnableField.isSelected()); + enabled(fEnableField.isSelected()); }); fContext= context; diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/selectionactions/SelectionHistory.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/selectionactions/SelectionHistory.java index 2c87439425..ef3ac35586 100644 --- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/selectionactions/SelectionHistory.java +++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/javaeditor/selectionactions/SelectionHistory.java @@ -19,7 +19,6 @@ import java.util.List; import org.eclipse.core.runtime.Assert; import org.eclipse.jface.viewers.ISelectionChangedListener; -import org.eclipse.jface.viewers.SelectionChangedEvent; import org.eclipse.jdt.core.ISourceRange; @@ -37,12 +36,9 @@ public class SelectionHistory { Assert.isNotNull(editor); fEditor= editor; fHistory= new ArrayList<>(3); - fSelectionListener= new ISelectionChangedListener() { - @Override - public void selectionChanged(SelectionChangedEvent event) { - if (fSelectionChangeListenerCounter == 0) - flush(); - } + fSelectionListener= event -> { + if (fSelectionChangeListenerCounter == 0) + flush(); }; fEditor.getSelectionProvider().addSelectionChangedListener(fSelectionListener); } |
