java - Eclipse Luna 拆分编辑器仅在使用自定义编辑器实现保存时更新

标签 java eclipse eclipse-plugin

Eclipse Luna 终于有了这个很棒的分割编辑器,但我无法弄清楚如何使我们的编辑器按照新功能的预期工作。我们有自己的自定义编辑器,它在拆分时的行为与 Luna 中的 Java 编辑器不同。在自定义编辑器中编辑拆分编辑器的一半时,拆分的另一部分仅在保存文档时更新以匹配。而使用 Java 编辑器时,每个角色的更新都是“实时”发生的。我希望我们的编辑器能够更新每个字符,而无需像 Java 编辑器那样进行保存。

我以为我可以创建一个新的 Eclipse 编辑器插件来看看它的行为是否像 Java 编辑器,但不幸的是它的行为就像我们的自定义编辑器。

我已经进行了一些 Google 搜索,但未能找到有关此特定主题的任何内容。事实上,我找不到任何可以准确解释分割编辑器如何工作的内容。我了解到它创建了编辑器的另一个实例,但仅此而已。

有谁知道在使用 Eclipse Luna 拆分编辑器功能时如何在自定义编辑器中复制这种“实时”文档更新?

编辑 2014 年 6 月 7 日:我们的编辑器扩展了 org.eclipse.ui.editors.text.TextEditor

最佳答案

使用显式文档提供程序时可能会出现此问题。

例如,XML 编辑器示例代码使用以下内容:

    setDocumentProvider(new XMLDocumentProvider());

但为了使新的拆分编辑器代码正常工作,在初始化第二个拆分编辑器查看器窗口时必须返回完全相同的文档提供程序。解决方法是使文档提供程序实例静态。这似乎有效:

    private static XMLDocumentProvider provider = new XMLDocumentProvider();
    ...
    setDocumentProvider(provider);

如果您使用显式文档提供程序,并且由于某种原因它不能是静态的(共享),则可能很难找到其他解决方法。

我就这个问题提交了一个错误,但到目前为止还没有任何回应或评论。

关于java - Eclipse Luna 拆分编辑器仅在使用自定义编辑器实现保存时更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24591379/

相关文章:

java - MongoDB Java驱动程序更新子文档

java - Jersey 错误地调用子资源

java - 在 Eclipse Helios 中安装 Android SDK 的问题

php - 我可以在不使用 Apache 的情况下在 Eclipse PDT 下调试 PHP 文件吗?

eclipse - 在 eclipse mars 中安装新插件时,配置文件 ID _SELF_ 未注册错误

java - 用于在 Java 中验证手机号码的正则表达式

JavaFX 和 GUI 线程 : Change button text from Thread

eclipse - 如何以编程方式重置 Eclipse RCP 透视图

java - 如何在 .jar 中包含和访问图像

java - 用于 Java EE 开发的 Eclipse 插件