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

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

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

TreePath.getSegment介绍

[英]Returns the element at the specified index in this path.
[中]返回此路径中指定索引处的元素。

代码示例

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

private Object internalGetElementParent(Object elementOrPath) {
  if (elementOrPath instanceof TreePath) {
    TreePath tp = (TreePath) elementOrPath;
    if (tp.getSegmentCount() > 1) {
      return tp.getSegment(tp.getSegmentCount() - 2);
    }
    
  }
  return null;
}

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

private Map/*<List<IWorkingSet>>*/ groupByWorkingSets(TreePath[] paths) {
  Map result= new HashMap();
  for (int i= 0; i < paths.length; i++) {
    TreePath path= paths[i];
    IWorkingSet ws= (IWorkingSet)path.getSegment(0);
    List l= (List)result.get(ws);
    if (l == null) {
      l= new ArrayList();
      result.put(ws, l);
    }
    l.add(path.getSegment(1));
  }
  return result;
}

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

public boolean isResourcePath(TreePath path) {
  for (int i = 0; i < path.getSegmentCount(); i++) {
    Object o = path.getSegment(i);
    if (!(o instanceof IResource)) {
      return false;
    }
  }
  return true;
}

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

private Map<IWorkingSet, List<Object>> groupByWorkingSets(TreePath[] paths) {
  Map<IWorkingSet, List<Object>> result= new HashMap<>();
  for (int i= 0; i < paths.length; i++) {
    TreePath path= paths[i];
    IWorkingSet ws= (IWorkingSet)path.getSegment(0);
    List<Object> l= result.get(ws);
    if (l == null) {
      l= new ArrayList<>();
      result.put(ws, l);
    }
    l.add(path.getSegment(1));
  }
  return result;
}

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

public boolean isResourcePath(TreePath path) {
  for (int i = 0; i < path.getSegmentCount(); i++) {
    Object o = path.getSegment(i);
    if (!(o instanceof IResource)) {
      return false;
    }
  }
  return true;
}

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

private Map<IWorkingSet, List<Object>> groupByWorkingSets(TreePath[] paths) {
  Map<IWorkingSet, List<Object>> result= new HashMap<>();
  for (int i= 0; i < paths.length; i++) {
    TreePath path= paths[i];
    IWorkingSet ws= (IWorkingSet)path.getSegment(0);
    List<Object> l= result.get(ws);
    if (l == null) {
      l= new ArrayList<>();
      result.put(ws, l);
    }
    l.add(path.getSegment(1));
  }
  return result;
}

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

private Object internalGetElementParent(Object elementOrPath) {
  if (elementOrPath instanceof TreePath) {
    TreePath tp = (TreePath) elementOrPath;
    if (tp.getSegmentCount() > 1) {
      return tp.getSegment(tp.getSegmentCount() - 2);
    }
  }
  return null;
}

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

private boolean hasNonResource(TreePath parentPath) {
  for (int i = 0; i < parentPath.getSegmentCount(); i++) {
    Object o = parentPath.getSegment(i);
    if (!(o instanceof IResource) && !(o instanceof ModelProvider) && !(o instanceof ChangeSet)) {
      return true;
    }
  }
  return false;
}

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

private boolean hasNonResource(TreePath parentPath) {
  for (int i = 0; i < parentPath.getSegmentCount(); i++) {
    Object o = parentPath.getSegment(i);
    if (!(o instanceof IResource) && !(o instanceof ModelProvider) && !(o instanceof ChangeSet)) {
      return true;
    }
  }
  return false;
}

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

protected TreePathCompiler(TreePath aPath) {
  for (int i = 0; i < aPath.getSegmentCount(); i++) {
    segments.addLast(aPath.getSegment(i));
  }
}

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

private TreePath createSubPath(TreePath fullPath) {
  if (fRootPath == null) {
    return TreePath.EMPTY;
  }
  if (fullPath.getSegmentCount() <= fRootPath.getSegmentCount()) {
    return TreePath.EMPTY;
  }
  Object[] segments = new Object[fullPath.getSegmentCount() - fRootPath.getSegmentCount()];
  for (int i = 0; i < segments.length; i++) {
    segments[i] = fullPath.getSegment(i + fRootPath.getSegmentCount());
  }
  return new TreePath(segments);
}

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

private TreePath createFullPath(TreePath subPath) {
  if (fRootPath == null) {
    return TreePath.EMPTY;
  }
  Object[] segments = new Object[fRootPath.getSegmentCount() + subPath.getSegmentCount()];
  for (int i = 0; i < fRootPath.getSegmentCount(); i++) {
    segments[i] = fRootPath.getSegment(i);
  }
  for (int i = 0; i < subPath.getSegmentCount(); i++) {
    segments[i + fRootPath.getSegmentCount()] = subPath.getSegment(i);
  }
  return new TreePath(segments);
}

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

private TreePath createTreePath(TreePath old, Object newElement) {
    int count= old.getSegmentCount();
    Object[] newObjects= new Object[count];
    for (int i= 0; i < count - 1; i++) {
      newObjects[i]= old.getSegment(i);
    }
    newObjects[count - 1]= newElement;
    return new TreePath(newObjects);
  }
}

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

private TreePath createTreePath(TreePath old, Object newElement) {
    int count= old.getSegmentCount();
    Object[] newObjects= new Object[count];
    for (int i= 0; i < count - 1; i++) {
      newObjects[i]= old.getSegment(i);
    }
    newObjects[count - 1]= newElement;
    return new TreePath(newObjects);
  }
}

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

private TreePath createTreePath(TreePath old, Object newElement) {
    int count= old.getSegmentCount();
    Object[] newObjects= new Object[count];
    for (int i= 0; i < count - 1; i++) {
      newObjects[i]= old.getSegment(i);
    }
    newObjects[count - 1]= newElement;
    return new TreePath(newObjects);
  }
}

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

@Override
public Object[] getChildren(TreePath parentPath) {
  if (hasChildren(parentPath)) {
    return new Object[] { fInput.fPath.getSegment(parentPath.getSegmentCount()) };
  }
  return EMPTY_ELEMENTS_ARRAY;
}

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

private ModelDelta findDeltaForPath(ModelDelta root, TreePath path) {
  ModelDelta delta = root;
  for (int i = 0; i < path.getSegmentCount(); i++) {
    delta = delta.getChildDelta(path.getSegment(i));
    if (delta == null) {
      return null;
    }
  }
  return delta;
}

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

/**
 * @param path
 * @return a saveable, or null
 */
private Saveable findSaveable(TreePath path) {
  int count = path.getSegmentCount();
  for (int j = count - 1; j >= 0; j--) {
    Object parent = path.getSegment(j);
    Saveable saveable = getSaveable(parent);
    if (saveable != null) {
      return saveable;
    }
  }
  return null;
}

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

Node find(TreePath path, int pathIndex) {
  if (pathIndex == path.getSegmentCount()) {
    return this;
  }
  if (children == null) {
    return null;
  }
  Object child = path.getSegment(pathIndex);
  Node node = children.get(child);
  if (node != null) {
    return node.find(path, pathIndex + 1);
  }
  return null;
}

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

public boolean selectTreePath(Viewer viewer, TreePath parentPath, Object element) {
  // Avoid endless loops, see https://bugs.eclipse.org/395202 :
  // Cut off children of elements that are shown repeatedly.
  for (int i= 0; i < parentPath.getSegmentCount() - 1; i++) {
    if (element.equals(parentPath.getSegment(i))) {
      return false;
    }
  }
  
  JavaElementPrefixPatternMatcher matcher= getMatcher();
  if (matcher == null || !(viewer instanceof TreeViewer))
    return true;
  TreeViewer treeViewer= (TreeViewer) viewer;
  String matchName= ((ILabelProvider) treeViewer.getLabelProvider()).getText(element);
  matchName= TextProcessor.deprocess(matchName);
  if (matchName != null && matcher.matches(matchName))
    return true;
  return hasUnfilteredChild(treeViewer, parentPath, element);
}

相关文章