我正在编写一个 Eclipse 插件(Indigo/Juno),其中包含用于自定义文本格式的文本编辑器。我在这里学习教程:http ://www.realsolve.co.uk/site/tech/jface-text.php
到目前为止,我一切正常。Eclipse 将使用我的编辑器来编辑文件。我有分区、损坏、修复、语法突出显示所有工作。
我添加了一个带有颜色选择器的首选项页面来控制语法突出显示。它的工作原理大部分是正确的。如果我更新颜色,编辑器会在我下次打开或重新打开文件时使用它们。
如何在不打开新选项卡的情况下让编辑器选项卡自行更新?内置的 JDT Java 编辑器可以做到这一点,但到目前为止我还不能理解如何(它是一个非常大且复杂的编辑器)。
我收集到我需要创建一个首选项监听器(http://www.vogella.com/articles/EclipsePreferences/article.html)。我已经这样做了,并且可以验证当我在其中设置断点时正在调用我的侦听器代码。
缺少的部分是侦听器和重新初始化编辑器之间的连线。我尝试重建分区逻辑、颜色逻辑、损坏器/修复器等,但似乎没有任何效果。它要么什么都看不到,要么最坏的情况下会破坏显示,直到我将当前文本滚动到视图之外以重新绘制它......使用旧颜色。
有任何想法吗?