在 Eclipse 应用程序中重命名元素之前检查

Checks before renaming element in Eclipse Application

我目前正在使用自定义编辑器编写 RCP 应用程序。我正在尝试检查要重命名的文件是否在编辑器中打开。使用自定义的 RenameParticipant 我可以检查它并阻止重命名操作,但这种情况发生在用户输入新名称之后。我希望检查发生在之前。这可能吗?

首先,您需要获取在您的 RCP 应用程序中打开的编辑器。 Eclipse 允许您通过以下行执行此操作:

PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getEditorReferences();

然后,您必须检查您的文件是否在其中一个编辑器中打开。为此,您可以迭代结果数组。数组的每个元素都是 IEditorReference 类型。您可以通过方法 getEditorInput() 获取在每个编辑器引用中打开的文件。