gpt4 book ai didi

eclipse-plugin - 脏的 EditorPart 如何禁止 Eclipse 重命名其资源?

转载 作者:行者123 更新时间:2023-12-04 12:59:42 25 4
gpt4 key购买 nike

假设我已经定义了自己的 TextEditorX extends TextEditor .在典型的 Eclipse-RCP 场景(标准插件、带有项目资源管理器/导航器的工作台)中,当有人尝试重命名(通过项目资源管理器或导航器)某个编辑器打开的文件时的行为是:

  • 如果编辑器不是 dirty ,允许重命名。之后 editor.setInput()将被调用,以新文件名作为参数。
  • 如果是 dirty ,抛出错误(“重命名资源”:“执行重构时发生 fatal error ”“发现问题:doc.txt 未保存”)。

  • 我的问题:
  • 这种行为是在哪个级别定义的?我猜这个包org.eclipse.ltk.ui.refactoring.resource涉及...但是,假设例如,即使编辑器不脏,我也想禁止重命名:这种行为是否可以由编辑器(或文档提供者)中的某种方法确定,或者我应该编码/扩展一些RenameParticipant ?
  • 重命名者如何知道资源doc.txt是由那个编辑器实例打开的?它是否只是检查所有打开的编辑器并询问每个编辑器的 editorInput ,或者是 documentProviders涉及?具体来说,假设我有一个特定的编辑器,除了“主”文件之外,它还依赖于其他资源(多文件输入),并且它希望重命名者在重命名他的任何输入之前询问他。您将如何处理这种情况?
  • 最佳答案

    Eclipse 没有任何理论上的理由来阻止修改文件的重命名。一方面,编辑器可以向工作区注册一个 ResourceChangeListener,并简单地更新其 IEditorInput 以响应 MOVE 通知。不确定这是否是一个好的答案,但也许是一个很好的方法。

    关于eclipse-plugin - 脏的 EditorPart 如何禁止 Eclipse 重命名其资源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7663670/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com