当前位置: 首页>>代码示例>>Java>>正文


Java ChooseByNameContributor类代码示例

本文整理汇总了Java中com.intellij.navigation.ChooseByNameContributor的典型用法代码示例。如果您正苦于以下问题:Java ChooseByNameContributor类的具体用法?Java ChooseByNameContributor怎么用?Java ChooseByNameContributor使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


ChooseByNameContributor类属于com.intellij.navigation包,在下文中一共展示了ChooseByNameContributor类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getFullName

import com.intellij.navigation.ChooseByNameContributor; //导入依赖的package包/类
@Override
public String getFullName(final Object element) {
  for(ChooseByNameContributor c: getContributors()) {
    if (c instanceof GotoClassContributor) {
      String result = ((GotoClassContributor) c).getQualifiedName((NavigationItem) element);
      if (result != null) {
        return result;
      }
    }
  }

  String elementName = getElementName(element);
  if (elementName == null) return null;
  
  if (element instanceof PsiElement) {
    return SymbolPresentationUtil.getSymbolContainerText((PsiElement)element) + "." + elementName;
  }

  return elementName;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:21,代码来源:GotoSymbolModel2.java

示例2: getFullName

import com.intellij.navigation.ChooseByNameContributor; //导入依赖的package包/类
@Override
public String getFullName(final Object element) {
  for(ChooseByNameContributor c: getContributors()) {
    if (c instanceof GotoClassContributor) {
      String result = ((GotoClassContributor) c).getQualifiedName((NavigationItem) element);
      if (result != null) return result;
    }
  }

  if (element instanceof PsiElement) {
    final PsiElement psiElement = (PsiElement)element;

    final String containerText = SymbolPresentationUtil.getSymbolContainerText(psiElement);
    return containerText + "." + getElementName(element);
  }

  return getElementName(element);
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:19,代码来源:GotoSymbolModel2.java

示例3: createLink

import com.intellij.navigation.ChooseByNameContributor; //导入依赖的package包/类
@Override
public String createLink(Project project) {
    for(ChooseByNameContributor contributor: ChooseByNameRegistry.getInstance().getClassModelContributors()) {
        NavigationItem[] byName = contributor.getItemsByName(fileName, fileName, project, true);
        if(byName.length > 0) {
            StringBuffer buf = new StringBuffer();
            buf.append("goto:c=");
            buf.append(EntityQuery.encode(className));
            buf.append("&f=");
            buf.append(EntityQuery.encode(fileName));
            if(line > 0) {
                buf.append("&l=");
                buf.append(line);
            }
            if(methodName != null) {
                buf.append("&m=");
                buf.append(EntityQuery.encode(methodName));
            }
            return buf.toString();
        }
    }
    return null;
}
 
开发者ID:janotav,项目名称:ali-idea-plugin,代码行数:24,代码来源:ClassCandidate.java

示例4: filterDumb

import com.intellij.navigation.ChooseByNameContributor; //导入依赖的package包/类
private List<ChooseByNameContributor> filterDumb(ChooseByNameContributor[] contributors) {
  if (!DumbService.getInstance(myProject).isDumb()) return Arrays.asList(contributors);
  List<ChooseByNameContributor> answer = new ArrayList<ChooseByNameContributor>(contributors.length);
  for (ChooseByNameContributor contributor : contributors) {
    if (DumbService.isDumbAware(contributor)) {
      answer.add(contributor);
    }
  }

  return answer;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:12,代码来源:ContributorsBasedGotoByModel.java

示例5: getFullName

import com.intellij.navigation.ChooseByNameContributor; //导入依赖的package包/类
@Override
public String getFullName(final Object element) {
  if (element instanceof PsiElement && !((PsiElement)element).isValid()) {
    return null;
  }

  for (ChooseByNameContributor c : getContributors()) {
    if (c instanceof GotoClassContributor) {
      String result = ((GotoClassContributor)c).getQualifiedName((NavigationItem)element);
      if (result != null) return result;
    }
  }

  return getElementName(element);
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:16,代码来源:GotoClassModel2.java

示例6: getSeparatorsFromContributors

import com.intellij.navigation.ChooseByNameContributor; //导入依赖的package包/类
public static String[] getSeparatorsFromContributors(ChooseByNameContributor[] contributors) {
  final Set<String> separators = new HashSet<String>();
  separators.add(".");
  for(ChooseByNameContributor c: contributors) {
    if (c instanceof GotoClassContributor) {
      ContainerUtil.addIfNotNull(separators, ((GotoClassContributor)c).getQualifiedNameSeparator());
    }
  }
  return ArrayUtil.toStringArray(separators);
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:11,代码来源:GotoClassModel2.java

示例7: getFullName

import com.intellij.navigation.ChooseByNameContributor; //导入依赖的package包/类
@Override
public String getFullName(final Object element) {
  for(ChooseByNameContributor c: getContributors()) {
    if (c instanceof GotoClassContributor) {
      String result = ((GotoClassContributor) c).getQualifiedName((NavigationItem) element);
      if (result != null) return result;
    }
  }

  return getElementName(element);
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:12,代码来源:GotoClassModel2.java

示例8: getSeparatorsFromContributors

import com.intellij.navigation.ChooseByNameContributor; //导入依赖的package包/类
public static String[] getSeparatorsFromContributors(ChooseByNameContributor[] contributors) {
  final Set<String> separators = new HashSet<String>();
  separators.add(".");
  for(ChooseByNameContributor c: contributors) {
    if (c instanceof GotoClassContributor) {
      separators.add(((GotoClassContributor)c).getQualifiedNameSeparator());
    }
  }
  return separators.toArray(new String[separators.size()]);
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:11,代码来源:GotoClassModel2.java

示例9: gotoActionPerformed

import com.intellij.navigation.ChooseByNameContributor; //导入依赖的package包/类
@Override
protected void gotoActionPerformed(AnActionEvent paramAnActionEvent) {
    FeatureUsageTracker.getInstance().triggerFeatureUsed("navigation.popup.file");
    Project localProject = paramAnActionEvent.getData(CommonDataKeys.PROJECT);
    if (localProject != null) {
        SymfonySymbolSearchModel searchModel = new SymfonySymbolSearchModel(localProject, new ChooseByNameContributor[] { new Symfony2NavigationContributor(localProject) });
        showNavigationPopup(paramAnActionEvent, searchModel, new MyGotoCallback(), null, true);
    }
}
 
开发者ID:Haehnchen,项目名称:idea-php-symfony2-plugin,代码行数:10,代码来源:SymfonySymbolSearchAction.java

示例10: evaluate

import com.intellij.navigation.ChooseByNameContributor; //导入依赖的package包/类
private static Editor evaluate(Project project, String link, boolean navigate) {
    Map<String, String> query = parseQuery(link);
    String className = query.get("c");
    int line = query.containsKey("l")? Integer.valueOf(query.get("l")): 0;
    String file = query.get("f");
    String methodName = query.get("m");
    for(ChooseByNameContributor contributor: ChooseByNameRegistry.getInstance().getClassModelContributors()) {
        NavigationItem[] byName = contributor.getItemsByName(file, file, project, true);
        NavigationItem item = matchClass(byName, className);
        if(item != null) {
            if(!navigate) {
                return null;
            }
            if(item instanceof PsiClass && methodName != null) {
                for(PsiMethod method: ((PsiClass)item).getMethods()) {
                    if(method.getName().equals(methodName)) {
                        project.getComponent(EditSourceUtil.class).navigate(method, true, true);
                        return project.getComponent(FileEditorManager.class).getSelectedTextEditor();
                    }
                }
            }
            project.getComponent(EditSourceUtil.class).navigate(item, true, true);
            Editor editor = project.getComponent(FileEditorManager.class).getSelectedTextEditor();
            if(line > 0) {
                if(editor != null /* && !editor.getDocument().getText().startsWith(PsiBundle.message("psi.decompiled.text.header")) */) { // TODO: string missing since commit 02ca2bd104e91420543cf8c19b2c6a9cbb6c5ab7
                    editor.getCaretModel().moveToLogicalPosition(new LogicalPosition(line - 1, 0));
                    editor.getScrollingModel().scrollToCaret(ScrollType.CENTER);
                    editor.getSelectionModel().removeSelection();
                }
            }
            return editor;
        }
    }
    return null;
}
 
开发者ID:janotav,项目名称:ali-idea-plugin,代码行数:36,代码来源:ClassRecognizer.java

示例11: processImplementations

import com.intellij.navigation.ChooseByNameContributor; //导入依赖的package包/类
public static void processImplementations(ThriftDefinitionName definitionName, @NotNull Processor<NavigatablePsiElement> processor) {
  String name = definitionName.getText();
  for (ChooseByNameContributor contributor : ChooseByNameRegistry.getInstance().getClassModelContributors()) {
    if (!(contributor instanceof ThriftClassContributor)) {
      for (NavigationItem navigationItem : contributor.getItemsByName(name, name, definitionName.getProject(), false)) {
        if (navigationItem instanceof NavigatablePsiElement && !processor.process((NavigatablePsiElement)navigationItem)) {
          return;
        }
      }
    }
  }
}
 
开发者ID:consulo,项目名称:consulo-apache-thrift,代码行数:13,代码来源:ThriftPsiUtil.java

示例12: getSeparatorsFromContributors

import com.intellij.navigation.ChooseByNameContributor; //导入依赖的package包/类
public static String[] getSeparatorsFromContributors(ChooseByNameContributor[] contributors) {
  final Set<String> separators = new HashSet<>();
  separators.add(".");
  for(ChooseByNameContributor c: contributors) {
    if (c instanceof GotoClassContributor) {
      ContainerUtil.addIfNotNull(separators, ((GotoClassContributor)c).getQualifiedNameSeparator());
    }
  }
  return separators.toArray(new String[separators.size()]);
}
 
开发者ID:consulo,项目名称:consulo,代码行数:11,代码来源:GotoClassModel2.java

示例13: SearchFilterModel

import com.intellij.navigation.ChooseByNameContributor; //导入依赖的package包/类
protected SearchFilterModel(@NotNull Project project, @NotNull ChooseByNameContributor[] contributors) {
    super(project, contributors);
}
 
开发者ID:hoai265,项目名称:SearchResourcePlugin,代码行数:4,代码来源:SearchFilterModel.java

示例14: SearchStringModel

import com.intellij.navigation.ChooseByNameContributor; //导入依赖的package包/类
public SearchStringModel(@NotNull Project project) {
    super(project, Extensions.getExtensions(ChooseByNameContributor.SYMBOL_EP_NAME));
}
 
开发者ID:konifar,项目名称:android-strings-search-plugin,代码行数:4,代码来源:SearchStringModel.java

示例15: ContributorsBasedGotoByModel

import com.intellij.navigation.ChooseByNameContributor; //导入依赖的package包/类
protected ContributorsBasedGotoByModel(@NotNull Project project, @NotNull ChooseByNameContributor[] contributors) {
  myProject = project;
  myContributors = contributors;
  assert !Arrays.asList(contributors).contains(null);
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:6,代码来源:ContributorsBasedGotoByModel.java


注:本文中的com.intellij.navigation.ChooseByNameContributor类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。