即使没有未保存的更改,是否仍然可以阻止编辑器关闭?
每当有一些未保存的更改时,使用ISaveablePart
界面可以在编辑器关闭之前捕获事件 - 但我正在寻找一种在编辑器关闭之前捕获事件的方法,即使没有未保存的更改。
即使没有未保存的更改,是否仍然可以阻止编辑器关闭?
每当有一些未保存的更改时,使用ISaveablePart
界面可以在编辑器关闭之前捕获事件 - 但我正在寻找一种在编辑器关闭之前捕获事件的方法,即使没有未保存的更改。
一种可能的方法是在您的ISaveablePart
实现中维护两个“脏”标志 - 一个以便 Eclipse 保存框架会认为您的编辑器是脏的并调用您的钩子来阻止编辑器关闭。
为避免 Eclipse 错误地显示有关您的编辑器未保存更改的消息,您可能希望实际实现ISaveablePart2
(此处的文档)并实现promptToSaveOnClose()
- 这可以检查编辑器是否真的很脏,并且只提示保存(或其他任何您想要的)在这种情况下。
您可能想要重新检查您希望保持编辑器打开的根本原因 - 框架通常不会像这样工作(因此问题可能会蔓延),对于真正的用户来说,这似乎是一种令人困惑的体验真的想关闭编辑器(并确定您的应用程序有问题)。