没有未保存的更改Eclipse RCP时避免使用Close Editor

时间:2012-12-16 07:59:08

标签: java eclipse eclipse-rcp rcp

即使没有未保存的更改,有没有阻止编辑器关闭?

每当有一些未保存的更改时,使用ISaveablePart接口可以在编辑器关闭之前捕获事件 - 但我正在寻找一种方法来捕获事件之前编辑器关闭,即使没有未保存的更改。

1 个答案:

答案 0 :(得分:1)

执行此操作的一种可能方法是在ISaveablePart实现中维护两个“脏”标志 - 一个使Eclipse保存框架认为您的编辑器是脏的并调用您的钩子阻止编辑器关闭。 / p>

为了避免Eclipse错误地显示有关编辑器的未保存更改的消息,您可能希望实际实现ISaveablePart2docs here)并实现promptToSaveOnClose() - 这可以检查编辑器是否是真的脏,在这种情况下只提示保存(或者你想要的任何其他东西)。

您可能想要重新检查您希望保持编辑器打开的根本原因 - 框架通常不会像这样工作(因此问题可能会蔓延),而且似乎这会让您感到困惑。真正想要关闭编辑器的用户(并确定您的应用程序是错误的)。