2

动机

我编写了一个 Eclipse 插件,它向我显示了包含未审查内容的所有文件和文件夹的列表。选择文件夹时,我希望打开一个编辑器,显示该文件夹包含的所有文件和子文件夹。它也必须适用于版本化项目。所以我必须在我的插件中创建编辑器的内容(没有支持IResource)。

我目前拥有的

现在我正在RemoteFileEditorInput为版本化文件(subclipse)打开一个,或者我正在IWorkbenchPage.openEditor()为一个FileEditorInput.

问题

在文本编辑器中可视化动态内容(目录列表)的简单方法是什么?

编辑 2010-04-13:

更多背景

我希望能够在目录列表上创建一些代码审查评论。为此,我希望能够打开一个差异查看器,以查看在目录的两个修订版之间删除或添加了哪些元素。

我想像输入文本文件一样为目录输入注释。这就是为什么我尝试将目录内容显示为文本文件的原因——我已经实现了注释文本文件的机制。

我将目录编辑器的内容称为“动态”,因为它并没有真正得到文件系统中现有目录的支持。对于旧版本的目录,我将在我的程序代码中创建编辑器内容。

4

1 回答 1

0

恐怕我不完全理解你的问题(而且我没有代表对此发表评论)。

这是对的吗?:您希望能够打开三个编辑器之一来支持您的目标:

  • 未版本化文件的编辑器(你说你有这个)
  • 版本化文件的编辑器(你说你有这个)
  • 目录编辑器(这是您需要的吗?)
    • 用户在这里做什么?它是什么样子的?

我对“在文本编辑器中可视化动态内容(目录列表)的简单方法是什么?”感到困惑。

知道我可能完全错过了您的观点,我会注意到您的编辑器可以包含您想要的任何控件(参见 PDE 中的一些“表单”编辑器,例如用于编辑插件清单)-您可能会扩展EditorPart,也许ManagedForm在你的createPartControl(),创建一个ListViewer,,TableViewerTreeViewer在那里,给它一个适当的内容提供者,并给它一个适当的标签提供者。

我也对“在文本编辑器中可视化动态内容(目录列表)的简单方法是什么?”感到困惑。

我只能假设您想以某种方式轮询或收听某些事件并告诉您的观众使用update()or refresh()

最后我会质疑目录列表是否真的属于编辑器。. . 大多数导航发生在视图中。用户实际上会以某种方式对目录进行编辑,并可能在以后“保存”它们吗?

我希望这能帮助我们缩小范围,找到对你有帮助的东西。

于 2010-04-13T13:05:44.380 回答