org.eclipse.jface.viewers.TreePath.getFirstSegment()方法的使用及代码示例

x33g5p2x  于2022-01-30 转载在 其他  
字(9.3k)|赞(0)|评价(0)|浏览(66)

本文整理了Java中org.eclipse.jface.viewers.TreePath.getFirstSegment()方法的一些代码示例,展示了TreePath.getFirstSegment()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。TreePath.getFirstSegment()方法的具体详情如下:
包路径:org.eclipse.jface.viewers.TreePath
类名称:TreePath
方法名:getFirstSegment

TreePath.getFirstSegment介绍

[英]Returns the first element in this path, or null if this path has no segments.
[中]返回此路径中的第一个元素,如果此路径没有段,则返回null

代码示例

代码示例来源:origin: org.eclipse.platform/org.eclipse.team.ui

private DiffChangeSet getChangeSet(TreePath path) {
  Object o = path.getFirstSegment();
  if (o instanceof DiffChangeSet) {
    return (DiffChangeSet) o;
  }
  return null;
}

代码示例来源:origin: org.eclipse/org.eclipse.team.ui

private DiffChangeSet getChangeSet(TreePath path) {
  Object o = path.getFirstSegment();
  if (o instanceof DiffChangeSet) {
    return (DiffChangeSet) o;
  }
  return null;
}

代码示例来源:origin: org.eclipse.platform/org.eclipse.debug.ui

protected IExpression[] getExpressions() {
  TreeSelection selection = (TreeSelection) getSelection();
  TreePath[] paths = selection.getPaths();
  List<IExpression> expressions = new ArrayList<>();
  for (int i = paths.length-1; i >=0; i--) {
    TreePath path = paths[i];
    Object segment = path.getFirstSegment();
    if (segment instanceof IExpression) {
      expressions.add((IExpression) segment);
    } else if (segment instanceof IAdaptable) {
      IExpression expression = ((IAdaptable)segment).getAdapter(IExpression.class);
      if (expression != null) {
        expressions.add(expression);
      }
    }
  }
  return expressions.toArray(new IExpression[expressions.size()]);
}

代码示例来源:origin: org.eclipse/org.eclipse.jdt.ui

private CustomHashtable createRootAccessedMap(TreePath[] paths) {
    CustomHashtable result= new CustomHashtable(getComparer());
    for (int i= 0; i < paths.length; i++) {
      TreePath path= paths[i];
      Object root= path.getFirstSegment();
      if (root != null) {
        result.put(root, path);
      }
    }
    return result;
  }
}

代码示例来源:origin: org.eclipse.platform/org.eclipse.team.ui

private IResource[] getResource(DiffChangeSet dcs, TreePath tp) {
  if (tp.getSegmentCount() == 1 && tp.getFirstSegment() == dcs) {
    return dcs.getResources();
  }
  Set<IResource> result = new HashSet<>();
  Object o = tp.getLastSegment();
  if (o instanceof IResource) {
    IResource resource = (IResource) o;
    int depth = getLayoutDepth(resource, tp);
    IDiff[] diffs = dcs.getDiffTree().getDiffs(resource, depth);
    for (int i = 0; i < diffs.length; i++) {
      IDiff diff = diffs[i];
      IResource r = ResourceDiffTree.getResourceFor(diff);
      if (r != null)
        result.add(r);
    }
  }
  return result.toArray(new IResource[result.size()]);
}

代码示例来源:origin: org.eclipse/org.eclipse.team.ui

private IResource[] getResource(DiffChangeSet dcs, TreePath tp) {
  if (tp.getSegmentCount() == 1 && tp.getFirstSegment() == dcs) {
    return dcs.getResources();
  }
  Set result = new HashSet();
  Object o = tp.getLastSegment();
  if (o instanceof IResource) {
    IResource resource = (IResource) o;
    int depth = getLayoutDepth(resource, tp);
    IDiff[] diffs = dcs.getDiffTree().getDiffs(resource, depth);
    for (int i = 0; i < diffs.length; i++) {
      IDiff diff = diffs[i];
      IResource r = ResourceDiffTree.getResourceFor(diff);
      if (r != null)
        result.add(r);
    }
  }
  return (IResource[]) result.toArray(new IResource[result.size()]);
}

代码示例来源:origin: org.eclipse/org.eclipse.jdt.ui

for (int i= 0; i < pathsToRestore.length; i++) {
  TreePath path= pathsToRestore[i];
  Object root= path.getFirstSegment();
  if (root != null && path.equals((TreePath)currentParents.get(root), getComparer())) {
    pathsToSelect.add(path);

代码示例来源:origin: org.eclipse.pde.api.tools/ui

/**
 * Collects the indexes of the first item in the current selection
 * @param selection
 * @return an array of indexes (parent, child) of the first item in the current selection
 */
private int[] getIndexes(IStructuredSelection selection) {
  int[] indexes = new int[] {0,0};
  TreeSelection tsel = (TreeSelection) selection;
  TreePath path = tsel.getPaths()[0];
  TreeItem parent = (TreeItem) fViewer.testFindItem(path.getFirstSegment());
  if(parent != null) {
    Tree tree = fViewer.getTree();
    //found parent
    indexes[0] = tree.indexOf(parent);
    TreeItem item = (TreeItem) fViewer.testFindItem(path.getLastSegment());
    if(item != null) {
      indexes[1] = parent.indexOf(item);
    }
  }
  return indexes;
}

代码示例来源:origin: org.eclipse.pde/org.eclipse.pde.api.tools.ui

/**
 * Collects the indexes of the first item in the current selection
 *
 * @param selection
 * @return an array of indexes (parent, child) of the first item in the
 *         current selection
 */
private int[] getIndexes(IStructuredSelection selection) {
  int[] indexes = new int[] { 0, 0 };
  TreeSelection tsel = (TreeSelection) selection;
  TreePath path = tsel.getPaths()[0];
  TreeItem parent = (TreeItem) fViewer.testFindItem(path.getFirstSegment());
  if (parent != null) {
    Tree tree = fViewer.getTree();
    // found parent
    indexes[0] = tree.indexOf(parent);
    TreeItem item = (TreeItem) fViewer.testFindItem(path.getLastSegment());
    if (item != null) {
      indexes[1] = parent.indexOf(item);
    }
  }
  return indexes;
}

代码示例来源:origin: org.eclipse.platform/org.eclipse.debug.ui

/**
 * Collects the indices of the child and parent items for the specified element
 * @param object the element to collect indices for
 * @return an array of indices for the specified element
 */
private int[] collectIndices(Object object) {
  int[] indices = {-1, -1};
  if(object != null) {
    TreeItem item = (TreeItem) findItem(object);
    if(item != null) {
      TreePath path = getTreePathFromItem(item);
      item = (TreeItem) findItem(path.getFirstSegment());
      if(item != null) {
        indices[0] = getTree().indexOf(item);
        if(path.getSegmentCount() == 2) {
          indices[1] = indexOf(item.getItems(), path.getLastSegment());
        }
      }
    }
  }
  return indices;
}

代码示例来源:origin: org.eclipse.scout.sdk.deps/org.eclipse.jdt.ui

@Override
  public void updateLabel(ViewerLabel label, TreePath elementPath) {
    Object firstSegment = elementPath.getFirstSegment();
    if (firstSegment instanceof IProject && elementPath.getSegmentCount() == 2) {
      IProject project = (IProject) firstSegment;
      Object lastSegment = elementPath.getLastSegment();
      if (lastSegment instanceof IFolder) {
        IFolder folder = (IFolder) lastSegment;
        if (!folder.getParent().equals(project)) {
          // This means that a folder that is not a direct child of the project
          // is a child in the tree. Therefore, the resource content provider
          // must be active and in compress folder mode so we will leave
          // it to the resource provider to provide the proper label.
          // We need to do this because of bug 153912
          return;
        }
      }
    }
    label.setImage(getImage(elementPath.getLastSegment()));
    label.setText(getText(elementPath.getLastSegment()));
    Font f = getFont(elementPath.getLastSegment());
    if (f != null)
      label.setFont(f);
  }
}

代码示例来源:origin: org.eclipse.jdt/org.eclipse.jdt.ui

@Override
  public void updateLabel(ViewerLabel label, TreePath elementPath) {
    Object firstSegment = elementPath.getFirstSegment();
    if (firstSegment instanceof IProject && elementPath.getSegmentCount() == 2) {
      IProject project = (IProject) firstSegment;
      Object lastSegment = elementPath.getLastSegment();
      if (lastSegment instanceof IFolder) {
        IFolder folder = (IFolder) lastSegment;
        if (!folder.getParent().equals(project)) {
          // This means that a folder that is not a direct child of the project
          // is a child in the tree. Therefore, the resource content provider
          // must be active and in compress folder mode so we will leave
          // it to the resource provider to provide the proper label.
          // We need to do this because of bug 153912
          return;
        }
      }
    }
    label.setImage(getImage(elementPath.getLastSegment()));
    label.setText(getText(elementPath.getLastSegment()));
    Font f = getFont(elementPath.getLastSegment());
    if (f != null)
      label.setFont(f);
  }
}

代码示例来源:origin: org.eclipse/org.eclipse.jdt.ui

public void updateLabel(ViewerLabel label, TreePath elementPath) {
    Object firstSegment = elementPath.getFirstSegment();
    if (firstSegment instanceof IProject && elementPath.getSegmentCount() == 2) {
      IProject project = (IProject) firstSegment;
      Object lastSegment = elementPath.getLastSegment();
      if (lastSegment instanceof IFolder) {
        IFolder folder = (IFolder) lastSegment;
        if (!folder.getParent().equals(project)) {
          // This means that a folder that is not a direct child of the project
          // is a child in the tree. Therefore, the resource content provider
          // must be active and in compress folder mode so we will leave
          // it to the resource provider to provide the proper label.
          // We need to do this because of bug 153912
          return;
        }
      }
    }
    label.setImage(getImage(elementPath.getLastSegment()));
    label.setText(getText(elementPath.getLastSegment()));
    Font f = getFont(elementPath.getLastSegment());
    if (f != null)
      label.setFont(f);
  }
}

代码示例来源:origin: org.eclipse/org.eclipse.team.ui

if (pathOrElement instanceof TreePath) {
  TreePath tp = (TreePath) pathOrElement;
  Object o = tp.getFirstSegment();
  if (o instanceof DiffChangeSet) {

代码示例来源:origin: org.eclipse.platform/org.eclipse.team.ui

if (pathOrElement instanceof TreePath) {
  TreePath tp = (TreePath) pathOrElement;
  Object o = tp.getFirstSegment();
  if (o instanceof DiffChangeSet) {

代码示例来源:origin: org.eclipse.platform/org.eclipse.ui.navigator.resources

@Override
public IStatus handleDrop(CommonDropAdapter dropAdapter, DropTargetEvent dropTargetEvent, Object target) {
  IWorkingSetManager workingSetManager = PlatformUI.getWorkbench().getWorkingSetManager();
  IWorkingSet targetWorkingSet = Adapters.adapt(target, IWorkingSet.class);
  ISelection sel = LocalSelectionTransfer.getTransfer().getSelection();
  if (sel instanceof ITreeSelection) {
    for (TreePath path : ((ITreeSelection) sel).getPaths()) {
      IProject project = Adapters.adapt(path.getLastSegment(), IProject.class);
      if (project != null) {
        if (!workingSetContains(targetWorkingSet, project)) {
          workingSetManager.addToWorkingSets(project, new IWorkingSet[] { targetWorkingSet });
        }
        // Check if our top-level element is a working set so that
        // we can perform a move
        IWorkingSet sourceWorkingSet = Adapters.adapt(path.getFirstSegment(), IWorkingSet.class);
        if (sourceWorkingSet != null) {
          removeFromWorkingSet(project, sourceWorkingSet);
        }
      }
    }
  } else if (sel instanceof IStructuredSelection) {
    for (Object item : ((IStructuredSelection) sel).toArray()) {
      IProject project = Adapters.adapt(item, IProject.class);
      if (project != null && !workingSetContains(targetWorkingSet, project)) {
        workingSetManager.addToWorkingSets(project, new IWorkingSet[] { targetWorkingSet });
      }
    }
  }
  return Status.OK_STATUS;
}

相关文章