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


Java EditSourceUtil类代码示例

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


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

示例1: getDescriptor

import com.intellij.ide.util.EditSourceUtil; //导入依赖的package包/类
@Nullable
public Navigatable getDescriptor(@Nullable Location location, @NotNull TestConsoleProperties properties) {
  // by location gets navigatable element.
  // It can be file or place in file (e.g. when OPEN_FAILURE_LINE is enabled)
  if (location == null) return null;

  String stacktrace = myStacktrace;
  if (stacktrace != null && properties instanceof SMStacktraceParser && isLeaf()) {
    Navigatable result = properties instanceof SMStacktraceParserEx ?
                         ((SMStacktraceParserEx)properties).getErrorNavigatable(location, stacktrace) :
                           ((SMStacktraceParser)properties).getErrorNavigatable(location.getProject(), stacktrace);
    if (result != null) {
      return result;
    }
  }

  return EditSourceUtil.getDescriptor(location.getPsiElement());
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:19,代码来源:SMTestProxy.java

示例2: getData

import com.intellij.ide.util.EditSourceUtil; //导入依赖的package包/类
@Override
public Object getData(DataProvider dataProvider) {
  final Navigatable navigatable = CommonDataKeys.NAVIGATABLE.getData(dataProvider);
  if (navigatable != null && navigatable instanceof OpenFileDescriptor) {
    final OpenFileDescriptor openFileDescriptor = (OpenFileDescriptor)navigatable;

    if (openFileDescriptor.getFile().isValid()) {
      return openFileDescriptor;
    }
  }
  final PsiElement element = CommonDataKeys.PSI_ELEMENT.getData(dataProvider);
  if (element instanceof Navigatable) {
    return element;
  }
  if (element != null) {
    return EditSourceUtil.getDescriptor(element);
  }

  final Object selection = PlatformDataKeys.SELECTED_ITEM.getData(dataProvider);
  if (selection instanceof Navigatable) {
    return selection;
  }

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

示例3: getDescriptor

import com.intellij.ide.util.EditSourceUtil; //导入依赖的package包/类
@Nullable
public Navigatable getDescriptor(final Location location, final TestConsoleProperties testConsoleProperties) {
  // by location gets navigatable element.
  // It can be file or place in file (e.g. when OPEN_FAILURE_LINE is enabled)
  if (location == null) return null;

  final String stacktrace = myStacktrace;
  if (stacktrace != null && (testConsoleProperties instanceof SMStacktraceParser) && isLeaf()) {
    final Navigatable result = ((SMStacktraceParser)testConsoleProperties).getErrorNavigatable(location.getProject(), stacktrace);
    if (result != null) {
      return result;
    }
  }

  return EditSourceUtil.getDescriptor(location.getPsiElement());
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:17,代码来源:SMTestProxy.java

示例4: getTargetCandidates

import com.intellij.ide.util.EditSourceUtil; //导入依赖的package包/类
public Collection<PsiElement> getTargetCandidates(PsiReference reference) {
  if (reference instanceof PsiPolyVariantReference) {
    final ResolveResult[] results = ((PsiPolyVariantReference)reference).multiResolve(false);
    final ArrayList<PsiElement> navigatableResults = new ArrayList<PsiElement>(results.length);

    for(ResolveResult r:results) {
      PsiElement element = r.getElement();
      if (EditSourceUtil.canNavigate(element) || element instanceof Navigatable && ((Navigatable)element).canNavigateToSource()) {
        navigatableResults.add(element);
      }
    }

    return navigatableResults;
  }
  PsiElement resolved = reference.resolve();
  if (resolved instanceof NavigationItem) {
    return Collections.singleton(resolved);
  }
  return Collections.emptyList();
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:21,代码来源:TargetElementUtilBase.java

示例5: getData

import com.intellij.ide.util.EditSourceUtil; //导入依赖的package包/类
@Override
public Object getData(DataProvider dataProvider) {
  final Navigatable navigatable = PlatformDataKeys.NAVIGATABLE.getData(dataProvider);
  if (navigatable != null && navigatable instanceof OpenFileDescriptor) {
    final OpenFileDescriptor openFileDescriptor = (OpenFileDescriptor)navigatable;

    if (openFileDescriptor.getFile().isValid()) {
      return openFileDescriptor;
    }
  }
  final PsiElement element = LangDataKeys.PSI_ELEMENT.getData(dataProvider);
  if (element instanceof Navigatable) {
    return element;
  }
  if (element != null) {
    return EditSourceUtil.getDescriptor(element);
  }

  final Object selection = PlatformDataKeys.SELECTED_ITEM.getData(dataProvider);
  if (selection instanceof Navigatable) {
    return selection;
  }

  return null;
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:26,代码来源:NavigatableRule.java

示例6: getDescriptor

import com.intellij.ide.util.EditSourceUtil; //导入依赖的package包/类
@javax.annotation.Nullable
public Navigatable getDescriptor(@Nullable Location location, @Nonnull TestConsoleProperties properties) {
  // by location gets navigatable element.
  // It can be file or place in file (e.g. when OPEN_FAILURE_LINE is enabled)
  if (location == null) return null;

  String stacktrace = myStacktrace;
  if (stacktrace != null && properties instanceof SMStacktraceParser && isLeaf()) {
    Navigatable result = properties instanceof SMStacktraceParserEx ?
                         ((SMStacktraceParserEx)properties).getErrorNavigatable(location, stacktrace) :
                         ((SMStacktraceParser)properties).getErrorNavigatable(location.getProject(), stacktrace);
    if (result != null) {
      return result;
    }
  }

  return EditSourceUtil.getDescriptor(location.getPsiElement());
}
 
开发者ID:consulo,项目名称:consulo,代码行数:19,代码来源:SMTestProxy.java

示例7: getTargetCandidates

import com.intellij.ide.util.EditSourceUtil; //导入依赖的package包/类
@Nonnull
public static Collection<PsiElement> getTargetCandidates(PsiReference reference) {
  if (reference instanceof PsiPolyVariantReference) {
    final ResolveResult[] results = ((PsiPolyVariantReference)reference).multiResolve(false);
    final ArrayList<PsiElement> navigatableResults = new ArrayList<PsiElement>(results.length);

    for (ResolveResult r : results) {
      PsiElement element = r.getElement();
      if (EditSourceUtil.canNavigate(element) || element instanceof Navigatable && ((Navigatable)element).canNavigateToSource()) {
        navigatableResults.add(element);
      }
    }

    return navigatableResults;
  }
  PsiElement resolved = reference.resolve();
  if (resolved instanceof NavigationItem) {
    return Collections.singleton(resolved);
  }
  Collection<PsiElement> targetCandidates = TargetElementUtilEx.EP_NAME.composite().getTargetCandidates(reference);
  if (targetCandidates != null) {
    return targetCandidates;
  }
  return Collections.emptyList();
}
 
开发者ID:consulo,项目名称:consulo,代码行数:26,代码来源:TargetElementUtil.java

示例8: getData

import com.intellij.ide.util.EditSourceUtil; //导入依赖的package包/类
@Override
public Navigatable getData(@Nonnull DataProvider dataProvider) {
  final Navigatable navigatable = dataProvider.getDataUnchecked(PlatformDataKeys.NAVIGATABLE);
  if (navigatable != null && navigatable instanceof OpenFileDescriptor) {
    final OpenFileDescriptor openFileDescriptor = (OpenFileDescriptor)navigatable;

    if (openFileDescriptor.getFile().isValid()) {
      return openFileDescriptor;
    }
  }
  final PsiElement element = dataProvider.getDataUnchecked(LangDataKeys.PSI_ELEMENT);
  if (element instanceof Navigatable) {
    return (Navigatable)element;
  }
  if (element != null) {
    return EditSourceUtil.getDescriptor(element);
  }

  final Object selection = dataProvider.getDataUnchecked(PlatformDataKeys.SELECTED_ITEM);
  if (selection instanceof Navigatable) {
    return (Navigatable)selection;
  }

  return null;
}
 
开发者ID:consulo,项目名称:consulo,代码行数:26,代码来源:NavigatableRule.java

示例9: navigate

import com.intellij.ide.util.EditSourceUtil; //导入依赖的package包/类
public void navigate(final boolean requestFocus) {
  if (isPhysical()) {
    super.navigate(requestFocus);
    return;
  }
  final PsiNamedElement psiNamedElement = XmlUtil.findRealNamedElement(this);
  Navigatable navigatable = EditSourceUtil.getDescriptor(psiNamedElement);

  if (psiNamedElement instanceof XmlEntityDecl) {
    final OpenFileDescriptor fileDescriptor = (OpenFileDescriptor)navigatable;
    navigatable = new OpenFileDescriptor(
      fileDescriptor.getProject(),
      fileDescriptor.getFile(),
      psiNamedElement.getTextRange().getStartOffset() + psiNamedElement.getText().indexOf(getName())
    );
  }
  navigatable.navigate(requestFocus);
}
 
开发者ID:consulo,项目名称:consulo-xml,代码行数:19,代码来源:XmlAttributeDeclImpl.java

示例10: navigate

import com.intellij.ide.util.EditSourceUtil; //导入依赖的package包/类
public void navigate(final Project project) {
  DefaultPsiElementListCellRenderer renderer = new DefaultPsiElementListCellRenderer();

  final JList list = new JBList(myPsiFiles);
  list.setCellRenderer(renderer);

  final PopupChooserBuilder builder = new PopupChooserBuilder(list);
  renderer.installSpeedSearch(builder);

  final Runnable runnable = new Runnable() {
    public void run() {
      int[] ids = list.getSelectedIndices();
      if (ids == null || ids.length == 0) return;
      Object[] selectedElements = list.getSelectedValues();
      for (Object element : selectedElements) {
        Navigatable descriptor = EditSourceUtil.getDescriptor((PsiElement)element);
        if (descriptor != null && descriptor.canNavigate()) {
          descriptor.navigate(true);
        }
      }
    }
  };

  final Editor editor = CommonDataKeys.EDITOR.getData(DataManager.getInstance().getDataContext());

  builder.
    setTitle("Choose file").
    setItemChoosenCallback(runnable).
    createPopup().showInBestPositionFor(editor);
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:31,代码来源:YourkitFilter.java

示例11: getPsiElementPopup

import com.intellij.ide.util.EditSourceUtil; //导入依赖的package包/类
@NotNull
public static JBPopup getPsiElementPopup(@NotNull PsiElement[] elements,
                                         @NotNull final PsiElementListCellRenderer<PsiElement> renderer,
                                         final String title) {
  return getPsiElementPopup(elements, renderer, title, new PsiElementProcessor<PsiElement>() {
    @Override
    public boolean execute(@NotNull final PsiElement element) {
      Navigatable descriptor = EditSourceUtil.getDescriptor(element);
      if (descriptor != null && descriptor.canNavigate()) {
        descriptor.navigate(true);
      }
      return true;
    }
  });
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:16,代码来源:NavigationUtil.java

示例12: getTargetCandidates

import com.intellij.ide.util.EditSourceUtil; //导入依赖的package包/类
@Override
@NotNull
public Collection<PsiElement> getTargetCandidates(@NotNull PsiReference reference) {
  PsiElement refElement = reference.getElement();
  TargetElementEvaluatorEx2 evaluator = refElement != null ? getElementEvaluatorsEx2(refElement.getLanguage()) : null;
  if (evaluator != null) {
    Collection<PsiElement> candidates = evaluator.getTargetCandidates(reference);
    if (candidates != null) return candidates;
  }
  
  if (reference instanceof PsiPolyVariantReference) {
    final ResolveResult[] results = ((PsiPolyVariantReference)reference).multiResolve(false);
    List<PsiElement> navigatableResults = new ArrayList<PsiElement>(results.length);

    for(ResolveResult r:results) {
      PsiElement element = r.getElement();
      if (EditSourceUtil.canNavigate(element) || element instanceof Navigatable && ((Navigatable)element).canNavigateToSource()) {
        navigatableResults.add(element);
      }
    }

    return navigatableResults;
  }
  PsiElement resolved = reference.resolve();
  if (resolved instanceof NavigationItem) {
    return Collections.singleton(resolved);
  }
  return Collections.emptyList();
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:30,代码来源:TargetElementUtil.java

示例13: navigate

import com.intellij.ide.util.EditSourceUtil; //导入依赖的package包/类
public void navigate(final Project project) {
  DefaultPsiElementListCellRenderer renderer = new DefaultPsiElementListCellRenderer();

  final JList list = new JBList(myPsiFiles);
  list.setCellRenderer(renderer);

  final PopupChooserBuilder builder = new PopupChooserBuilder(list);
  renderer.installSpeedSearch(builder);

  final Runnable runnable = new Runnable() {
    public void run() {
      int[] ids = list.getSelectedIndices();
      if (ids == null || ids.length == 0) return;
      Object[] selectedElements = list.getSelectedValues();
      for (Object element : selectedElements) {
        Navigatable descriptor = EditSourceUtil.getDescriptor((PsiElement)element);
        if (descriptor != null && descriptor.canNavigate()) {
          descriptor.navigate(true);
        }
      }
    }
  };

  final Editor editor = PlatformDataKeys.EDITOR.getData(DataManager.getInstance().getDataContext());

  builder.
    setTitle("Choose file").
    setItemChoosenCallback(runnable).
    createPopup().showInBestPositionFor(editor);
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:31,代码来源:YourkitFilter.java

示例14: navigateToElement

import com.intellij.ide.util.EditSourceUtil; //导入依赖的package包/类
protected boolean navigateToElement(PsiElement target) {
  Navigatable descriptor = target instanceof Navigatable ? (Navigatable)target : EditSourceUtil.getDescriptor(target);
  if (descriptor != null && descriptor.canNavigate()) {
    navigateToElement(descriptor);
    return true;
  }
  return false;
}
 
开发者ID:consulo,项目名称:consulo,代码行数:9,代码来源:GotoTargetHandler.java

示例15: getPsiElementPopup

import com.intellij.ide.util.EditSourceUtil; //导入依赖的package包/类
@Nonnull
public static JBPopup getPsiElementPopup(@Nonnull PsiElement[] elements, @Nonnull final PsiElementListCellRenderer<PsiElement> renderer, final String title) {
  return getPsiElementPopup(elements, renderer, title, new PsiElementProcessor<PsiElement>() {
    @Override
    public boolean execute(@Nonnull final PsiElement element) {
      Navigatable descriptor = EditSourceUtil.getDescriptor(element);
      if (descriptor != null && descriptor.canNavigate()) {
        descriptor.navigate(true);
      }
      return true;
    }
  });
}
 
开发者ID:consulo,项目名称:consulo,代码行数:14,代码来源:NavigationUtil.java


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