JFace TreeViewer还原选择

时间:2013-05-15 09:18:29

标签: eclipse-rcp jface treeviewer

我正在使用TreeViewer进行目录浏览的第一个RCP示例。

我的工作确实从示例http://www.ibm.com/developerworks/opensource/library/os-ecgui1/

开始

对于TreeViewer个文件条目,我想让最后一个选择保持不变 下次用相同的选择打开观众。

从所选文件中我捕获了路径并存储/检索此单个字符串。

在重新开启时,我遍历ITreeContentProvider并找到相应的 文件节点(并捕获其间的节点)。

接下来我使用

window.getTree().setSelection(new StructuredSelection(target));

将target作为包含路径的文件列表。

这适用于C:

下的顶级目录

但恢复更深层的道路失败了。下一个级别最初不是 在AbstractTreeViewer.setSelectionToWidget()中展开并失败。

我的感觉是我没有很好地处理setSelection()参数 但我找不到合适的例子。

你有一个简单的例子让我展示如何恢复这样的 路径选择?

提前致谢

Wolfgang R.

1 个答案:

答案 0 :(得分:1)

我找到了。使用过的示例代码有一个小错误。

public class FileTreeContentProvider implements ITreeContentProvider
{
...
public Object getParent(Object element)
{
  // wrong return ((File)element).getParent();
  return ((File)element).getParentFile();
}