本文整理汇总了Java中com.intellij.ide.projectView.TreeStructureProvider类的典型用法代码示例。如果您正苦于以下问题:Java TreeStructureProvider类的具体用法?Java TreeStructureProvider怎么用?Java TreeStructureProvider使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
TreeStructureProvider类属于com.intellij.ide.projectView包,在下文中一共展示了TreeStructureProvider类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: createWrapProvider
import com.intellij.ide.projectView.TreeStructureProvider; //导入依赖的package包/类
private TreeStructureProvider createWrapProvider(final NodeWrapper rootWrapper) {
return new TreeStructureProvider() {
@NotNull
@Override
public Collection<AbstractTreeNode> modify(@NotNull AbstractTreeNode parent, @NotNull Collection<AbstractTreeNode> children, ViewSettings settings) {
if (parent instanceof NodeWrapper) {
return children;
}
List<AbstractTreeNode> result = new ArrayList<AbstractTreeNode>();
result.add(rootWrapper);
return result;
}
@Override
@Nullable
public Object getData(Collection<AbstractTreeNode> selected, String dataName) {
return null;
}
};
}
示例2: createWrapProvider
import com.intellij.ide.projectView.TreeStructureProvider; //导入依赖的package包/类
private TreeStructureProvider createWrapProvider(final NodeWrapper rootWrapper) {
return new TreeStructureProvider() {
@Override
public Collection<AbstractTreeNode> modify(AbstractTreeNode parent, Collection<AbstractTreeNode> children, ViewSettings settings) {
if (parent instanceof NodeWrapper) {
return children;
}
List<AbstractTreeNode> result = new ArrayList<AbstractTreeNode>();
result.add(rootWrapper);
return result;
}
@Override
@Nullable
public Object getData(Collection<AbstractTreeNode> selected, String dataName) {
return null;
}
};
}
示例3: getChildElements
import com.intellij.ide.projectView.TreeStructureProvider; //导入依赖的package包/类
@Override
public Object[] getChildElements(Object element) {
LOG.assertTrue(element instanceof AbstractTreeNode, element != null ? element.getClass().getName() : null);
AbstractTreeNode<?> treeNode = (AbstractTreeNode)element;
Collection<? extends AbstractTreeNode> elements = treeNode.getChildren();
List<TreeStructureProvider> providers = getProvidersDumbAware();
if (!providers.isEmpty()) {
ViewSettings settings = treeNode instanceof ProjectViewNode ? ((ProjectViewNode) treeNode).getSettings() : ViewSettings.DEFAULT;
for (TreeStructureProvider provider : providers) {
try {
elements = provider.modify(treeNode, (Collection<AbstractTreeNode>)elements, settings);
}
catch (Exception e) {
LOG.error(e);
}
}
}
for (AbstractTreeNode node : elements) {
node.setParent(treeNode);
}
return ArrayUtil.toObjectArray(elements);
}
示例4: select
import com.intellij.ide.projectView.TreeStructureProvider; //导入依赖的package包/类
@Override
public void select(PsiElement element, final boolean requestFocus) {
PsiElement toSelect = null;
for (TreeStructureProvider provider : getProvidersDumbAware()) {
if (provider instanceof SelectableTreeStructureProvider) {
toSelect = ((SelectableTreeStructureProvider) provider).getTopLevelElement(element);
}
if (toSelect != null) break;
}
if (toSelect == null) {
if (element instanceof PsiFile || element instanceof PsiDirectory) {
toSelect = element;
}
else {
final PsiFile containingFile = element.getContainingFile();
if (containingFile == null) return;
final FileViewProvider viewProvider = containingFile.getViewProvider();
toSelect = viewProvider.getPsi(viewProvider.getBaseLanguage());
}
}
if (toSelect == null) return;
PsiElement originalElement = toSelect.getOriginalElement();
final VirtualFile virtualFile = PsiUtilBase.getVirtualFile(originalElement);
select(originalElement, virtualFile, requestFocus);
}
示例5: select
import com.intellij.ide.projectView.TreeStructureProvider; //导入依赖的package包/类
@Override
public void select(PsiElement element, final boolean requestFocus) {
PsiElement toSelect = null;
for (TreeStructureProvider provider : getProvidersDumbAware()) {
if (provider instanceof SelectableTreeStructureProvider) {
toSelect = ((SelectableTreeStructureProvider) provider).getTopLevelElement(element);
}
if (toSelect != null) break;
}
toSelect = findElementToSelect(element, toSelect);
if (toSelect != null) {
VirtualFile virtualFile = PsiUtilCore.getVirtualFile(toSelect);
select(toSelect, virtualFile, requestFocus);
}
}
示例6: getDataFromProviders
import com.intellij.ide.projectView.TreeStructureProvider; //导入依赖的package包/类
@Nullable
public Object getDataFromProviders(@NotNull List<AbstractTreeNode> selectedNodes, final String dataId) {
final List<TreeStructureProvider> providers = getProvidersDumbAware();
if (!providers.isEmpty()) {
for (TreeStructureProvider treeStructureProvider : providers) {
final Object fromProvider = treeStructureProvider.getData(selectedNodes, dataId);
if (fromProvider != null) {
return fromProvider;
}
}
}
return null;
}
示例7: getProvidersDumbAware
import com.intellij.ide.projectView.TreeStructureProvider; //导入依赖的package包/类
@NotNull
private List<TreeStructureProvider> getProvidersDumbAware() {
if (myProject == null) {
return Collections.emptyList();
}
final List<TreeStructureProvider> providers = getProviders();
if (providers == null) {
return Collections.emptyList();
}
return DumbService.getInstance(myProject).filterByDumbAwareness(providers);
}
示例8: getProviders
import com.intellij.ide.projectView.TreeStructureProvider; //导入依赖的package包/类
@Override
public List<TreeStructureProvider> getProviders() {
if (myProviders == null) {
final TreeStructureProvider[] providers = Extensions.getExtensions(TreeStructureProvider.EP_NAME, myProject);
myProviders = Arrays.asList(providers);
}
return myProviders;
}
示例9: select
import com.intellij.ide.projectView.TreeStructureProvider; //导入依赖的package包/类
@Override
public void select(PsiElement element, final boolean requestFocus) {
PsiElement toSelect = null;
for (TreeStructureProvider provider : getProvidersDumbAware()) {
if (provider instanceof SelectableTreeStructureProvider) {
toSelect = ((SelectableTreeStructureProvider) provider).getTopLevelElement(element);
}
if (toSelect != null) break;
}
if (toSelect == null) {
if (element instanceof PsiFile || element instanceof PsiDirectory) {
toSelect = element;
}
else {
final PsiFile containingFile = element.getContainingFile();
if (containingFile == null) return;
final FileViewProvider viewProvider = containingFile.getViewProvider();
toSelect = viewProvider.getPsi(viewProvider.getBaseLanguage());
}
}
if (toSelect == null) return;
PsiElement originalElement;
try {
originalElement = toSelect.getOriginalElement();
}
catch (IndexNotReadyException e) {
originalElement = toSelect;
}
final VirtualFile virtualFile = PsiUtilBase.getVirtualFile(originalElement);
select(originalElement, virtualFile, requestFocus);
}
示例10: getProviders
import com.intellij.ide.projectView.TreeStructureProvider; //导入依赖的package包/类
@Override
public List<TreeStructureProvider> getProviders() {
if (myProviders == null) {
final TreeStructureProvider[] providers = new TreeStructureProvider[]{this};
myProviders = Arrays.asList(providers);
}
return myProviders;
}
示例11: getDataFromProviders
import com.intellij.ide.projectView.TreeStructureProvider; //导入依赖的package包/类
@Nullable
public Object getDataFromProviders(@Nonnull List<AbstractTreeNode> selectedNodes, final Key dataId) {
final List<TreeStructureProvider> providers = getProvidersDumbAware();
if (!providers.isEmpty()) {
for (TreeStructureProvider treeStructureProvider : providers) {
final Object fromProvider = treeStructureProvider.getData(selectedNodes, dataId);
if (fromProvider != null) {
return fromProvider;
}
}
}
return null;
}
示例12: getProvidersDumbAware
import com.intellij.ide.projectView.TreeStructureProvider; //导入依赖的package包/类
@Nonnull
private List<TreeStructureProvider> getProvidersDumbAware() {
if (myProject == null) {
return Collections.emptyList();
}
final List<TreeStructureProvider> providers = getProviders();
if (providers == null) {
return Collections.emptyList();
}
return DumbService.getInstance(myProject).filterByDumbAwareness(providers);
}
示例13: getProviders
import com.intellij.ide.projectView.TreeStructureProvider; //导入依赖的package包/类
public List<TreeStructureProvider> getProviders() {
return Collections.emptyList();
}
示例14: getProviders
import com.intellij.ide.projectView.TreeStructureProvider; //导入依赖的package包/类
@Nullable
public abstract List<TreeStructureProvider> getProviders();
示例15: getProviders
import com.intellij.ide.projectView.TreeStructureProvider; //导入依赖的package包/类
@Override
public List<TreeStructureProvider> getProviders() {
return Collections.emptyList();
}