代码突出显示和StructuredTextEditor中的光标位置

时间:2013-03-13 13:09:38

标签: eclipse eclipse-rcp eclipse-plugin eclipse-gef

我自己的插件项目有一个编辑器(实现org.eclipse.ui.part.MultiPageEditorPart)有2个页面:一个是 GraphicalEditorWithFlyoutPalette (它将XML文件解析为数字)和另一个一个是 StructuredTextEditor (它将数字解析为XML代码)。所以我想要做的是在第一个编辑器中绘制图形并在另一个编辑器中获取源代码并执行相反的操作。我相信很多GEF和插件/ RCP项目可能都有这个功能。

现在我必须面对这样一个事实:当我尝试在两个编辑器之间切换时,光标始终保持在源编辑器的第一行。我应该得到的是,如果一个数字是选择< / strong>在第一个编辑器中,当我切换到第二个编辑器时,一些代码块应该突出显示(就像Eclipse中的Outline视图一样),或者至少光标应该保留在相应XML块启动的行(只是就像Eclipse中的XML编辑器一样)

任何人都有一些有用的建议吗? Tks很多: - )

1 个答案:

答案 0 :(得分:0)

在GEF编辑器中,您可以使用SelectionEditPolicy的{​​{1}}方法收听选择更改。当您的选择发生变化时,将调用此方法。在该方法中,您可以更改光标在第二个编辑器上显示的位置(或设置某种共享变量,编辑器在激活时可以读取它)。