From 77a75500463d3c263aef832982fa80f5ca7500c2 Mon Sep 17 00:00:00 2001 From: Alexey Kudravtsev Date: Thu, 30 Aug 2012 19:06:56 +0400 Subject: [PATCH] cleanup --- .../ide/util/PsiClassListCellRenderer.java | 5 +++- .../src/com/intellij/find/FindManager.java | 1 + .../actions/ShowErrorDescriptionAction.java | 3 +- .../hint/ImplementationViewComponent.java | 25 +++++++++++----- .../actions/ShowImplementationsAction.java | 30 ++++++++++--------- .../navigation/BackgroundUpdaterTask.java | 6 ++-- .../navigation/GotoImplementationHandler.java | 12 +++++--- .../navigation/GotoTargetHandler.java | 17 +++++++---- .../actions/GotoImplementationAction.java | 3 ++ .../find/actions/FindUsagesAction.java | 1 - .../ide/util/PsiElementListCellRenderer.java | 8 ++++- .../openapi/actionSystem/AnAction.java | 21 +++++++------ .../actionSystem/AsyncUpdateAction.java | 3 +- .../intellij/openapi/keymap/KeymapUtil.java | 9 +++--- .../com/intellij/ui/CollectionListModel.java | 7 +++-- .../groovy/codeInsight/GroovyMarkerTypes.java | 15 +++++++--- 16 files changed, 108 insertions(+), 58 deletions(-) diff --git a/java/java-impl/src/com/intellij/ide/util/PsiClassListCellRenderer.java b/java/java-impl/src/com/intellij/ide/util/PsiClassListCellRenderer.java index f8bada12c990..53e239fd91b2 100644 --- a/java/java-impl/src/com/intellij/ide/util/PsiClassListCellRenderer.java +++ b/java/java-impl/src/com/intellij/ide/util/PsiClassListCellRenderer.java @@ -20,10 +20,12 @@ import com.intellij.psi.presentation.java.ClassPresentationUtil; import org.jetbrains.annotations.Nullable; public class PsiClassListCellRenderer extends PsiElementListCellRenderer { + @Override public String getElementText(PsiClass element) { return ClassPresentationUtil.getNameForClass(element, false); } + @Override protected String getContainerText(PsiClass element, final String name) { return getContainerTextStatic(element); } @@ -33,12 +35,13 @@ public class PsiClassListCellRenderer extends PsiElementListCellRenderer, Boolean>() { @Override public Boolean fun(final PsiElement[] psiElements, final List fileDescriptors) { - if (psiElements == null || psiElements.length == 0) return false; + if (psiElements.length == 0) return false; myElements = psiElements; myIndex = index < myElements.length ? index : 0; @@ -201,6 +202,7 @@ public class ImplementationViewComponent extends JPanel { updateRenderer(project); myFileChooser.addActionListener(new ActionListener() { + @Override public void actionPerformed(ActionEvent e) { int index = myFileChooser.getSelectedIndex(); if (myIndex != index) { @@ -270,11 +272,11 @@ public class ImplementationViewComponent extends JPanel { return result; } - public void update(final PsiElement[] elements, final int index) { + public void update(@NotNull final PsiElement[] elements, final int index) { update(elements, new PairFunction, Boolean>() { @Override public Boolean fun(PsiElement[] psiElements, List fileDescriptors) { - if (psiElements == null || psiElements.length == 0) return false; + if (psiElements.length == 0) return false; final Project project = psiElements[0].getProject(); myElements = psiElements; @@ -326,7 +328,7 @@ public class ImplementationViewComponent extends JPanel { } - private static void update(final PsiElement[] elements, final PairFunction, Boolean> fun) { + private static void update(@NotNull PsiElement[] elements, @NotNull PairFunction, Boolean> fun) { List candidates = new ArrayList(elements.length); List files = new ArrayList(elements.length); final Set names = new HashSet(); @@ -343,7 +345,7 @@ public class ImplementationViewComponent extends JPanel { candidates.add(element.getNavigationElement()); } - fun.fun(PsiUtilBase.toPsiElementArray(candidates), files); + fun.fun(PsiUtilCore.toPsiElementArray(candidates), files); } private static Icon getIconForFile(PsiFile psiFile) { @@ -405,8 +407,10 @@ public class ImplementationViewComponent extends JPanel { final String newText = getNewText(elt); if (newText == null || Comparing.strEqual(newText, myEditor.getDocument().getText())) return; CommandProcessor.getInstance().runUndoTransparentAction(new Runnable() { + @Override public void run() { ApplicationManager.getApplication().runWriteAction(new Runnable() { + @Override public void run() { Document fragmentDoc = myEditor.getDocument(); fragmentDoc.setReadOnly(false); @@ -445,6 +449,7 @@ public class ImplementationViewComponent extends JPanel { return psiFile.getOriginalFile(); } + @Override public void removeNotify() { super.removeNotify(); EditorFactory.getInstance().releaseEditor(myEditor); @@ -507,11 +512,13 @@ public class ImplementationViewComponent extends JPanel { super(CodeInsightBundle.message("quick.definition.back"), null, AllIcons.Actions.Back); } + @Override public void actionPerformed(AnActionEvent e) { goBack(); } + @Override public void update(AnActionEvent e) { Presentation presentation = e.getPresentation(); presentation.setEnabled(myIndex > 0); @@ -523,10 +530,12 @@ public class ImplementationViewComponent extends JPanel { super(CodeInsightBundle.message("quick.definition.forward"), null, AllIcons.Actions.Forward); } + @Override public void actionPerformed(AnActionEvent e) { goForward(); } + @Override public void update(AnActionEvent e) { Presentation presentation = e.getPresentation(); presentation.setEnabled(myElements != null && myIndex < myElements.length - 1); @@ -560,10 +569,12 @@ public class ImplementationViewComponent extends JPanel { myFocusEditor = focusEditor; } + @Override public void update(AnActionEvent e) { e.getPresentation().setEnabled(myFileChooser == null || !myFileChooser.isPopupVisible()); } + @Override public void actionPerformed(AnActionEvent e) { PsiElement element = myElements[myIndex]; PsiElement navigationElement = element.getNavigationElement(); @@ -617,6 +628,6 @@ public class ImplementationViewComponent extends JPanel { result.add(element); } } - return PsiUtilBase.toPsiElementArray(result); + return PsiUtilCore.toPsiElementArray(result); } } diff --git a/platform/lang-impl/src/com/intellij/codeInsight/hint/actions/ShowImplementationsAction.java b/platform/lang-impl/src/com/intellij/codeInsight/hint/actions/ShowImplementationsAction.java index 6b1d4558c9db..a71ee0538a75 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/hint/actions/ShowImplementationsAction.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/hint/actions/ShowImplementationsAction.java @@ -17,10 +17,10 @@ package com.intellij.codeInsight.hint.actions; import com.intellij.codeInsight.CodeInsightBundle; import com.intellij.codeInsight.TargetElementUtilBase; -import com.intellij.codeInsight.navigation.BackgroundUpdaterTask; import com.intellij.codeInsight.documentation.DocumentationManager; import com.intellij.codeInsight.hint.ImplementationViewComponent; import com.intellij.codeInsight.lookup.LookupManager; +import com.intellij.codeInsight.navigation.BackgroundUpdaterTask; import com.intellij.codeInsight.navigation.ImplementationSearcher; import com.intellij.featureStatistics.FeatureUsageTracker; import com.intellij.ide.DataManager; @@ -41,7 +41,7 @@ import com.intellij.pom.PomTargetPsiElement; import com.intellij.psi.*; import com.intellij.psi.presentation.java.SymbolPresentationUtil; import com.intellij.psi.util.PsiTreeUtil; -import com.intellij.psi.util.PsiUtilBase; +import com.intellij.psi.util.PsiUtilCore; import com.intellij.ui.popup.AbstractPopup; import com.intellij.ui.popup.NotLookupOrSearchCondition; import com.intellij.ui.popup.PopupPositionManager; @@ -64,6 +64,7 @@ public class ShowImplementationsAction extends AnAction implements PopupAction { setInjectedContext(true); } + @Override public void actionPerformed(AnActionEvent e) { performForContext(e.getDataContext()); } @@ -96,10 +97,6 @@ public class ShowImplementationsAction extends AnAction implements PopupAction { PsiFile containingFile = element != null ? element.getContainingFile() : file; if (containingFile == null || !containingFile.getViewProvider().isPhysical()) return; - String text = ""; - PsiElement[] impls = new PsiElement[0]; - PsiReference ref = null; - final PsiElement adjustedElement = TargetElementUtilBase.getInstance().adjustElement(editor, TargetElementUtilBase.getInstance().getAllAccepted(), element, null); if (adjustedElement != null) { @@ -108,6 +105,7 @@ public class ShowImplementationsAction extends AnAction implements PopupAction { element = DocumentationManager.getInstance(project).getElementFromLookup(editor, file); } + PsiReference ref = null; if (editor != null) { ref = TargetElementUtilBase.findReference(editor, editor.getCaretModel().getOffset()); if (element == null && ref != null) { @@ -115,6 +113,8 @@ public class ShowImplementationsAction extends AnAction implements PopupAction { } } + String text = ""; + PsiElement[] impls = new PsiElement[0]; if (element != null) { //if (element instanceof PsiPackage) return; @@ -146,17 +146,18 @@ public class ShowImplementationsAction extends AnAction implements PopupAction { } private static ImplementationSearcher createImplementationsSearcher() { - if (!ApplicationManager.getApplication().isUnitTestMode()) { - return new ImplementationSearcher.FirstImplementationsSearcher() { - protected PsiElement[] filterElements(PsiElement element, PsiElement[] targetElements, final int offset) { + if (ApplicationManager.getApplication().isUnitTestMode()) { + return new ImplementationSearcher() { + @Override + protected PsiElement[] filterElements(PsiElement element, PsiElement[] targetElements, int offset) { return ShowImplementationsAction.filterElements(targetElements); } }; } else { - return new ImplementationSearcher() { + return new ImplementationSearcher.FirstImplementationsSearcher() { @Override - protected PsiElement[] filterElements(PsiElement element, PsiElement[] targetElements, int offset) { + protected PsiElement[] filterElements(PsiElement element, PsiElement[] targetElements, final int offset) { return ShowImplementationsAction.filterElements(targetElements); } }; @@ -213,6 +214,7 @@ public class ShowImplementationsAction extends AnAction implements PopupAction { final ImplementationViewComponent component = new ImplementationViewComponent(impls, index); if (component.hasElementsToShow()) { final PopupUpdateProcessor updateProcessor = new PopupUpdateProcessor(project) { + @Override public void updatePopup(Object lookupItemObject) { final PsiElement element = lookupItemObject instanceof PsiElement ? (PsiElement)lookupItemObject : DocumentationManager.getInstance(project).getElementFromLookup(editor, file); updateElementImplementations(element, editor, project, file); @@ -302,7 +304,7 @@ public class ShowImplementationsAction extends AnAction implements PopupAction { break; } } - return PsiUtilBase.toPsiElementArray(unique); + return PsiUtilCore.toPsiElementArray(unique); } @Override @@ -341,12 +343,12 @@ public class ShowImplementationsAction extends AnAction implements PopupAction { final int startIdx = elements.length - includeSelfIdx; final PsiElement[] result = new PsiElement[data.size() + includeSelfIdx]; System.arraycopy(elements, 0, result, 0, elements.length); - System.arraycopy(data.toArray(PsiElement.EMPTY_ARRAY), startIdx, result, elements.length, data.size() - startIdx); + System.arraycopy(PsiUtilCore.toPsiElementArray(data), startIdx, result, elements.length, data.size() - startIdx); myComponent.update(result, myComponent.getIndex()); } @Override - public void run(final @NotNull ProgressIndicator indicator) { + public void run(@NotNull final ProgressIndicator indicator) { super.run(indicator); myElements = getSelfAndImplementations(myEditor, myElement, new ImplementationSearcher.BackgroundableImplementationSearcher() { diff --git a/platform/lang-impl/src/com/intellij/codeInsight/navigation/BackgroundUpdaterTask.java b/platform/lang-impl/src/com/intellij/codeInsight/navigation/BackgroundUpdaterTask.java index f885378ff16d..20075ac26341 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/navigation/BackgroundUpdaterTask.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/navigation/BackgroundUpdaterTask.java @@ -39,9 +39,9 @@ import java.util.List; public abstract class BackgroundUpdaterTask extends Task.Backgroundable { protected AbstractPopup myPopup; protected T myComponent; - private List myData = new ArrayList(); + private final List myData = new ArrayList(); - private Alarm myAlarm = new Alarm(Alarm.ThreadToUse.SWING_THREAD); + private final Alarm myAlarm = new Alarm(Alarm.ThreadToUse.SWING_THREAD); private final Object lock = new Object(); private volatile boolean myCanceled = false; @@ -61,7 +61,7 @@ public abstract class BackgroundUpdaterTask extends Task.Backgroundable { super(project, title, canBeCancelled, backgroundOption); } - public void init(AbstractPopup popup, T component) { + public void init(@NotNull AbstractPopup popup, T component) { myPopup = popup; myComponent = component; diff --git a/platform/lang-impl/src/com/intellij/codeInsight/navigation/GotoImplementationHandler.java b/platform/lang-impl/src/com/intellij/codeInsight/navigation/GotoImplementationHandler.java index 11ee1c156d9e..2350e16bc1a4 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/navigation/GotoImplementationHandler.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/navigation/GotoImplementationHandler.java @@ -34,10 +34,12 @@ import java.util.Collections; import java.util.Map; public class GotoImplementationHandler extends GotoTargetHandler { + @Override protected String getFeatureUsedKey() { return "navigation.goto.implementation"; } + @Override @Nullable public GotoData getSourceAndTargetElements(Editor editor, PsiFile file) { int offset = editor.getCaretModel().getOffset(); @@ -55,6 +57,7 @@ public class GotoImplementationHandler extends GotoTargetHandler { return gotoData; } + @Override protected String getChooserTitle(PsiElement sourceElement, String name, int length) { return CodeInsightBundle.message("goto.implementation.chooserTitle", name, length); } @@ -65,9 +68,9 @@ public class GotoImplementationHandler extends GotoTargetHandler { } private class ImplementationsUpdaterTask extends ListBackgroundUpdaterTask { - private Editor myEditor; - private int myOffset; - private GotoData myGotoData; + private final Editor myEditor; + private final int myOffset; + private final GotoData myGotoData; private final Map renderers = new HashMap(); public ImplementationsUpdaterTask(GotoData gotoData, Editor editor, int offset) { @@ -78,7 +81,7 @@ public class GotoImplementationHandler extends GotoTargetHandler { } @Override - public void run(final @NotNull ProgressIndicator indicator) { + public void run(@NotNull final ProgressIndicator indicator) { super.run(indicator); for (PsiElement element : myGotoData.targets) { if (!updateComponent(element, createComparator(renderers, myGotoData))) { @@ -86,6 +89,7 @@ public class GotoImplementationHandler extends GotoTargetHandler { } } new ImplementationSearcher.BackgroundableImplementationSearcher() { + @Override protected void processElement(PsiElement element) { if (myGotoData.addTarget(element)) { if (!updateComponent(element, createComparator(renderers, myGotoData))) { diff --git a/platform/lang-impl/src/com/intellij/codeInsight/navigation/GotoTargetHandler.java b/platform/lang-impl/src/com/intellij/codeInsight/navigation/GotoTargetHandler.java index 76e1d92784fe..a71a7b68915b 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/navigation/GotoTargetHandler.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/navigation/GotoTargetHandler.java @@ -43,7 +43,6 @@ import com.intellij.ui.popup.AbstractPopup; import com.intellij.util.ArrayUtil; import com.intellij.util.Function; import com.intellij.util.containers.HashSet; -import gnu.trove.THashMap; import org.jetbrains.annotations.NonNls; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -54,13 +53,15 @@ import java.util.*; import java.util.List; public abstract class GotoTargetHandler implements CodeInsightActionHandler { - private static PsiElementListCellRenderer ourDefaultTargetElementRenderer = new DefaultPsiElementListCellRenderer(); - private DefaultListCellRenderer myActionElementRenderer = new ActionCellRenderer(); + private static final PsiElementListCellRenderer ourDefaultTargetElementRenderer = new DefaultPsiElementListCellRenderer(); + private final DefaultListCellRenderer myActionElementRenderer = new ActionCellRenderer(); + @Override public boolean startInWriteAction() { return false; } + @Override public void invoke(@NotNull Project project, @NotNull Editor editor, @NotNull PsiFile file) { FeatureUsageTracker.getInstance().triggerFeatureUsed(getFeatureUsedKey()); @@ -116,7 +117,7 @@ public abstract class GotoTargetHandler implements CodeInsightActionHandler { Collections.addAll(allElements, targets); allElements.addAll(additionalActions); - final JBListWithHintProvider list = new JBListWithHintProvider(new CollectionListModel(allElements)) { + final JBListWithHintProvider list = new JBListWithHintProvider(new CollectionListModel(allElements)) { @Override protected PsiElement getPsiElementForHint(final Object selectedValue) { return selectedValue instanceof PsiElement ? (PsiElement) selectedValue : null; @@ -136,6 +137,7 @@ public abstract class GotoTargetHandler implements CodeInsightActionHandler { }); final Runnable runnable = new Runnable() { + @Override public void run() { int[] ids = list.getSelectedIndices(); if (ids == null || ids.length == 0) return; @@ -289,7 +291,7 @@ public abstract class GotoTargetHandler implements CodeInsightActionHandler { final String name = ApplicationManager.getApplication().runReadAction(new Computable() { @Override public String compute() { - return ((PsiNamedElement)element).getName(); + return ((PsiNamedElement)element).getName(); } }); myNames.add(name); @@ -304,6 +306,7 @@ public abstract class GotoTargetHandler implements CodeInsightActionHandler { } private static class DefaultPsiElementListCellRenderer extends PsiElementListCellRenderer { + @Override public String getElementText(final PsiElement element) { if (element instanceof PsiNamedElement) { String name = ((PsiNamedElement)element).getName(); @@ -314,6 +317,7 @@ public abstract class GotoTargetHandler implements CodeInsightActionHandler { return element.getContainingFile().getName(); } + @Override protected String getContainerText(final PsiElement element, final String name) { if (element instanceof NavigationItem) { final ItemPresentation presentation = ((NavigationItem)element).getPresentation(); @@ -323,12 +327,13 @@ public abstract class GotoTargetHandler implements CodeInsightActionHandler { return null; } + @Override protected int getIconFlags() { return 0; } } - private class ActionCellRenderer extends DefaultListCellRenderer { + private static class ActionCellRenderer extends DefaultListCellRenderer { @Override public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) { Component result = super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus); diff --git a/platform/lang-impl/src/com/intellij/codeInsight/navigation/actions/GotoImplementationAction.java b/platform/lang-impl/src/com/intellij/codeInsight/navigation/actions/GotoImplementationAction.java index 6fc84c2c212f..9a0dd0cfa721 100644 --- a/platform/lang-impl/src/com/intellij/codeInsight/navigation/actions/GotoImplementationAction.java +++ b/platform/lang-impl/src/com/intellij/codeInsight/navigation/actions/GotoImplementationAction.java @@ -24,14 +24,17 @@ import com.intellij.openapi.project.DumbAware; import com.intellij.psi.search.searches.DefinitionsSearch; public class GotoImplementationAction extends BaseCodeInsightAction implements DumbAware { + @Override protected CodeInsightActionHandler getHandler(){ return new GotoImplementationHandler(); } + @Override protected boolean isValidForLookup() { return true; } + @Override public void update(final AnActionEvent event) { if (!DefinitionsSearch.INSTANCE.hasAnyExecutors()) { event.getPresentation().setVisible(false); diff --git a/platform/lang-impl/src/com/intellij/find/actions/FindUsagesAction.java b/platform/lang-impl/src/com/intellij/find/actions/FindUsagesAction.java index 8a05a4590f4d..c75dff5eb3cd 100644 --- a/platform/lang-impl/src/com/intellij/find/actions/FindUsagesAction.java +++ b/platform/lang-impl/src/com/intellij/find/actions/FindUsagesAction.java @@ -38,7 +38,6 @@ import com.intellij.usages.UsageView; import org.jetbrains.annotations.NotNull; public class FindUsagesAction extends AnAction { - public FindUsagesAction() { setInjectedContext(true); } diff --git a/platform/lang-impl/src/com/intellij/ide/util/PsiElementListCellRenderer.java b/platform/lang-impl/src/com/intellij/ide/util/PsiElementListCellRenderer.java index a8a818397276..d80183136ffd 100644 --- a/platform/lang-impl/src/com/intellij/ide/util/PsiElementListCellRenderer.java +++ b/platform/lang-impl/src/com/intellij/ide/util/PsiElementListCellRenderer.java @@ -58,6 +58,7 @@ public abstract class PsiElementListCellRenderer extends J super(new BorderLayout()); } + @Override public void setPatternMatcher(final Matcher matcher) { myMatcher = matcher; } @@ -88,6 +89,7 @@ public abstract class PsiElementListCellRenderer extends J myMatcher = matcher; } + @Override protected void customizeCellRenderer(JList list, Object value, int index, boolean selected, boolean hasFocus) { Color bgColor = UIUtil.getListBackground(); Color color = list.getForeground(); @@ -163,6 +165,7 @@ public abstract class PsiElementListCellRenderer extends J return attributes; } + @Override public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) { removeAll(); DefaultListCellRenderer rightRenderer = getRightCellRenderer(value); @@ -223,6 +226,7 @@ public abstract class PsiElementListCellRenderer extends J public Comparator getComparator() { return new Comparator() { + @Override public int compare(T o1, T o2) { return getComparingObject(o1).compareTo(getComparingObject(o2)); } @@ -242,9 +246,10 @@ public abstract class PsiElementListCellRenderer extends J public void installSpeedSearch(PopupChooserBuilder builder, final boolean includeContainerText) { builder.setFilteringEnabled(new Function() { + @Override public String fun(Object o) { if (o instanceof PsiElement) { - final String elementText = PsiElementListCellRenderer.this.getElementText((T)o); + final String elementText = getElementText((T)o); if (includeContainerText) { return elementText + " " + getContainerText((T)o, elementText); } @@ -263,6 +268,7 @@ public abstract class PsiElementListCellRenderer extends J @Deprecated public void installSpeedSearch(JList list) { new ListSpeedSearch(list) { + @Override protected String getElementText(Object o) { if (o instanceof PsiElement) { final String elementText = PsiElementListCellRenderer.this.getElementText((T)o); diff --git a/platform/platform-api/src/com/intellij/openapi/actionSystem/AnAction.java b/platform/platform-api/src/com/intellij/openapi/actionSystem/AnAction.java index f9b365480248..9afe2e3ad34e 100644 --- a/platform/platform-api/src/com/intellij/openapi/actionSystem/AnAction.java +++ b/platform/platform-api/src/com/intellij/openapi/actionSystem/AnAction.java @@ -162,6 +162,7 @@ public abstract class AnAction implements PossiblyDumbAware { public final void registerCustomShortcutSet(@NotNull ShortcutSet shortcutSet, @NotNull final JComponent component, @NotNull Disposable parentDisposable) { registerCustomShortcutSet(shortcutSet, component); Disposer.register(parentDisposable, new Disposable() { + @Override public void dispose() { unregisterCustomShortcutSet(component); } @@ -191,7 +192,7 @@ public abstract class AnAction implements PossiblyDumbAware { copyShortcutFrom(sourceAction); } - public final void copyShortcutFrom(final AnAction sourceAction) { + public final void copyShortcutFrom(@NotNull AnAction sourceAction) { myShortcutSet = sourceAction.myShortcutSet; } @@ -235,7 +236,7 @@ public abstract class AnAction implements PossiblyDumbAware { * * @param e Carries information on the invocation place and data available */ - public void beforeActionPerformedUpdate(AnActionEvent e) { + public void beforeActionPerformedUpdate(@NotNull AnActionEvent e) { boolean worksInInjected = isInInjectedContext(); e.setInjectedContext(worksInInjected); update(e); @@ -251,11 +252,13 @@ public abstract class AnAction implements PossiblyDumbAware { * * @return template presentation */ + @NotNull public final Presentation getTemplatePresentation() { - if (myTemplatePresentation == null){ - myTemplatePresentation = new Presentation(); + Presentation presentation = myTemplatePresentation; + if (presentation == null){ + myTemplatePresentation = presentation = new Presentation(); } - return myTemplatePresentation; + return presentation; } /** @@ -269,13 +272,13 @@ public abstract class AnAction implements PossiblyDumbAware { myShortcutSet = shortcutSet; } - public static String createTooltipText(String s, AnAction action) { - String toolTipText = s != null ? s : ""; + public static String createTooltipText(String s, @NotNull AnAction action) { + String toolTipText = s == null ? "" : s; while (StringUtil.endsWithChar(toolTipText, '.')) { toolTipText = toolTipText.substring(0, toolTipText.length() - 1); } String shortcutsText = KeymapUtil.getFirstKeyboardShortcutText(action); - if (shortcutsText.length() > 0) { + if (!shortcutsText.isEmpty()) { toolTipText += " (" + shortcutsText + ")"; } return toolTipText; @@ -309,12 +312,12 @@ public abstract class AnAction implements PossiblyDumbAware { return this instanceof TransparentUpdate; } + @Override public boolean isDumbAware() { return this instanceof DumbAware; } public interface TransparentUpdate { - } @Nullable diff --git a/platform/platform-api/src/com/intellij/openapi/actionSystem/AsyncUpdateAction.java b/platform/platform-api/src/com/intellij/openapi/actionSystem/AsyncUpdateAction.java index 4b28cc17bed4..9e57446e6d24 100644 --- a/platform/platform-api/src/com/intellij/openapi/actionSystem/AsyncUpdateAction.java +++ b/platform/platform-api/src/com/intellij/openapi/actionSystem/AsyncUpdateAction.java @@ -19,6 +19,7 @@ package com.intellij.openapi.actionSystem; import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.project.DumbAware; import com.intellij.util.ConcurrencyUtil; +import org.jetbrains.annotations.NotNull; import javax.swing.*; import java.util.concurrent.ExecutorService; @@ -64,7 +65,7 @@ public abstract class AsyncUpdateAction extends AnAction { } // Sync update - public final void beforeActionPerformedUpdate(AnActionEvent e) { + public final void beforeActionPerformedUpdate(@NotNull AnActionEvent e) { performUpdate(e.getPresentation(), prepareDataFromContext(e)); } diff --git a/platform/platform-api/src/com/intellij/openapi/keymap/KeymapUtil.java b/platform/platform-api/src/com/intellij/openapi/keymap/KeymapUtil.java index 5d4e8f940c5e..d4003367c157 100644 --- a/platform/platform-api/src/com/intellij/openapi/keymap/KeymapUtil.java +++ b/platform/platform-api/src/com/intellij/openapi/keymap/KeymapUtil.java @@ -171,14 +171,15 @@ public class KeymapUtil { } final String keyModifiersText = KeyEvent.getKeyModifiersText(modifiers); - if (!keyModifiersText.isEmpty()) { - return keyModifiersText + "+"; - } else { + if (keyModifiersText.isEmpty()) { return keyModifiersText; } + else { + return keyModifiersText + "+"; + } } - public static String getFirstKeyboardShortcutText(AnAction action) { + public static String getFirstKeyboardShortcutText(@NotNull AnAction action) { Shortcut[] shortcuts = action.getShortcutSet().getShortcuts(); for (Shortcut shortcut : shortcuts) { if (shortcut instanceof KeyboardShortcut) { diff --git a/platform/platform-api/src/com/intellij/ui/CollectionListModel.java b/platform/platform-api/src/com/intellij/ui/CollectionListModel.java index dcc71b9bde1c..39ee050b1315 100644 --- a/platform/platform-api/src/com/intellij/ui/CollectionListModel.java +++ b/platform/platform-api/src/com/intellij/ui/CollectionListModel.java @@ -17,6 +17,7 @@ package com.intellij.ui; import com.intellij.util.ui.EditableModel; +import org.jetbrains.annotations.NonNls; import org.jetbrains.annotations.NotNull; import javax.swing.*; @@ -36,10 +37,12 @@ public class CollectionListModel extends AbstractListModel implements Editabl myItems = new ArrayList(Arrays.asList(items)); } + @Override public int getSize() { return myItems.size(); } + @Override public T getElementAt(final int index) { return myItems.get(index); } @@ -51,8 +54,7 @@ public class CollectionListModel extends AbstractListModel implements Editabl } public void add(@NotNull final List elements) { - if (elements.isEmpty()) - return; + if (elements.isEmpty()) return; int i = myItems.size(); myItems.addAll(elements); fireIntervalAdded(this, i, i + elements.size() - 1); @@ -121,6 +123,7 @@ public class CollectionListModel extends AbstractListModel implements Editabl return true; } + @NonNls @Override public String toString() { return getClass().getName() + " (" + getSize() + " elements)"; diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/GroovyMarkerTypes.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/GroovyMarkerTypes.java index 2ccadd1a866b..20ae41ae3ebe 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/GroovyMarkerTypes.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/codeInsight/GroovyMarkerTypes.java @@ -95,6 +95,7 @@ public class GroovyMarkerTypes { return builder.toString(); } }, new LineMarkerNavigator() { + @Override public void browse(MouseEvent e, PsiElement element) { PsiElement parent = element.getParent(); if (!(parent instanceof GrField)) return; @@ -104,7 +105,7 @@ public class GroovyMarkerTypes { for (GrAccessorMethod method : accessors) { Collections.addAll(superMethods, method.findSuperMethods(false)); } - if (superMethods.size() == 0) return; + if (superMethods.isEmpty()) return; final PsiMethod[] supers = ContainerUtil.toArray(superMethods, new PsiMethod[superMethods.size()]); boolean showMethodNames = !PsiUtil.allMethodsHaveSameSignature(supers); PsiElementListNavigator.openTargets(e, supers, DaemonBundle.message("navigation.title.super.method", field.getName()), @@ -153,6 +154,7 @@ public class GroovyMarkerTypes { final CommonProcessors.CollectProcessor collectProcessor = new CommonProcessors.CollectProcessor(new THashSet()); if (!ProgressManager.getInstance().runProcessWithProgressSynchronously(new Runnable() { + @Override public void run() { for (GrAccessorMethod method : GroovyPropertyUtils.getFieldAccessors(field)) { OverridingMethodsSearch.search(method, true).forEach(collectProcessor); @@ -173,13 +175,14 @@ public class GroovyMarkerTypes { } ); public static final MarkerType OVERRIDING_METHOD = new MarkerType(new NullableFunction() { + @Override public String fun(PsiElement element) { PsiElement parent = element.getParent(); if (!(parent instanceof GrMethod)) return null; GrMethod method = (GrMethod)parent; Set superMethods = collectSuperMethods(method); - if (superMethods.size() == 0) return null; + if (superMethods.isEmpty()) return null; PsiMethod superMethod = superMethods.iterator().next(); boolean isAbstract = method.hasModifierProperty(PsiModifier.ABSTRACT); @@ -196,13 +199,14 @@ public class GroovyMarkerTypes { return GutterIconTooltipHelper.composeText(superMethods, "", DaemonBundle.message(key)); } }, new LineMarkerNavigator(){ + @Override public void browse(MouseEvent e, PsiElement element) { PsiElement parent = element.getParent(); if (!(parent instanceof GrMethod)) return; GrMethod method = (GrMethod)parent; Set superMethods = collectSuperMethods(method); - if (superMethods.size() == 0) return; + if (superMethods.isEmpty()) return; PsiElementListNavigator.openTargets(e, superMethods.toArray(new NavigatablePsiElement[superMethods.size()]), DaemonBundle.message("navigation.title.super.method", method.getName()), new MethodCellRenderer(true)); @@ -210,6 +214,7 @@ public class GroovyMarkerTypes { } }); public static final MarkerType OVERRIDEN_METHOD = new MarkerType(new NullableFunction() { + @Override public String fun(PsiElement element) { PsiElement parent = element.getParent(); if (!(parent instanceof GrMethod)) return null; @@ -238,6 +243,7 @@ public class GroovyMarkerTypes { return GutterIconTooltipHelper.composeText(overridings, start, pattern); } }, new LineMarkerNavigator(){ + @Override public void browse(MouseEvent e, PsiElement element) { PsiElement parent = element.getParent(); if (!(parent instanceof GrMethod)) return; @@ -252,6 +258,7 @@ public class GroovyMarkerTypes { final PsiElementProcessor.CollectElementsWithLimit collectProcessor = new PsiElementProcessor.CollectElementsWithLimit(2, new THashSet()); if (!ProgressManager.getInstance().runProcessWithProgressSynchronously(new Runnable() { + @Override public void run() { for (GrMethod m : PsiImplUtil.getMethodOrReflectedMethods(method)) { OverridingMethodsSearch.search(m, true).forEach(new ReadActionProcessor() { @@ -333,7 +340,7 @@ public class GroovyMarkerTypes { } @Override - public void run(final @NotNull ProgressIndicator indicator) { + public void run(@NotNull final ProgressIndicator indicator) { super.run(indicator); for (PsiMethod method : PsiImplUtil.getMethodOrReflectedMethods(myMethod)) { OverridingMethodsSearch.search(method, true).forEach(