java - 如何将 Eclipse 编辑器标记为脏,同时不忽略编辑器中所做的其他更改

标签 java eclipse eclipse-plugin

我向 Eclipse TextEditor 添加了一个 OutlinePage,当在此 Outline 中进行更改时,必须将 TextEditor 标记为脏。 建议的方法是使用

firePropertyChange(IEditorPart.PROP_DIRTY)

但是,我也必须自己管理脏标志并将其返回

isDirty()

但这意味着,如果文本编辑器的内容发生更改,则不会自动设置脏标志。我想过添加一个 IPartProperyChangeListener 并自己更改标志。这是最好的方法吗?

最佳答案

另一种方法是使用ISaveablesSource,它允许您的编辑器拥有多个Saveable对象。每个 Saveable 都有一个单独的脏标志。

如果您使用的是基于 AbstractTextEditor 或其子类之一的文本编辑器,则该编辑器已经实现了 ISaveablesSource 并提供了 Saveable主编辑器,因此您只需为大纲数据添加一个Saveable

关于java - 如何将 Eclipse 编辑器标记为脏,同时不忽略编辑器中所做的其他更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24283808/

相关文章:

java - TreeViewer 仅延迟加载图标

java - 在Java中_not_调用父类(super class)构造函数的任何方法?

javac 独立工作,但不适用于 scons

java - 可以在 Eclipse 中的一个文件中包含多个类吗?

android - 在 Eclipse 中获取 URL 失败

eclipse - 在使用 m2e 的 Eclipse 中,如何获取 "Quick Javadoc"(F2) 以显示 Maven 依赖项?

java - 如何使用 sardine 从 webdav 服务器下载 zip 文件?

java - 安排 Activity 日历的最佳 Swing 解决方案

Eclipse 的 C# 插件

java - 如何创建具有下拉功能的 SWT.RADIO 样式的 Eclipse 工具栏项?