我目前正在编写一个带有自定义编辑器的RCP应用程序。我正在尝试检查要重命名的文件是否在编辑器中打开。使用自定义RenameParticipant我可以检查这个并阻止重命名操作,但这会在用户输入新名称后发生。我希望检查发生在之前。这可能吗?
答案 0 :(得分:1)
首先,您需要获取在RCP应用程序中打开的编辑器。 Eclipse允许您通过以下行执行此操作:
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getEditorReferences();
然后,您必须检查您的文件是否在其中一个编辑器中打开。为此,您可以迭代生成的数组。数组的每个元素都是IEditorReference
类型。您可以通过方法getEditorInput()
获取在每个编辑器引用中打开的文件。