IDEA-141776 Groovy (or any non-Java?) main class has no Run/Debug controls on the editor's gutter

This commit is contained in:
Dmitry Avdeev
2015-08-26 19:17:03 +03:00
parent c67005fda2
commit e05a9dbb30
7 changed files with 79 additions and 8 deletions
@@ -32,13 +32,17 @@ public class ApplicationRunLineMarkerProvider extends RunLineMarkerContributor {
@Nullable
@Override
public Info getInfo(PsiElement e) {
if (e instanceof PsiIdentifier) {
if (isIdentifier(e)) {
PsiElement element = e.getParent();
if (element instanceof PsiClass && PsiMethodUtil.findMainInClass((PsiClass)element) != null)
return new Info(ApplicationConfigurationType.getInstance().getIcon(), null, ExecutorAction.ACTIONS(0));
return new Info(ApplicationConfigurationType.getInstance().getIcon(), null, ExecutorAction.getActions(0));
if (element instanceof PsiMethod && "main".equals(((PsiMethod)element).getName()) && PsiMethodUtil.isMainMethod((PsiMethod)element))
return new Info(ApplicationConfigurationType.getInstance().getIcon(), null, ExecutorAction.ACTIONS(0));
return new Info(ApplicationConfigurationType.getInstance().getIcon(), null, ExecutorAction.getActions(0));
}
return null;
}
protected boolean isIdentifier(PsiElement e) {
return e instanceof PsiIdentifier;
}
}