在我当前的项目中,我正在使用附加到TextEditor
嵌套在MultiPageEditor
. 我现在的任务是实现对 Ctrl-Z 的自定义反应,据我所知,最好通过将特定实现附加IUndoHandler
到查看器来完成,所有这些都没有问题。
但是,在使 TextEditor 聚焦的同时按 Ctrl-Z 不会引起任何预期的反应。在上下文菜单中单击“撤消键入”时,显示关联的组合键 Ctrl-Z 会导致TextViewerUndoManager.DocumentUndoListener
调用 的通知方法,TextViewerUndoManager
按 Ctrl-Z 时不会触摸其中的任何代码行。
作为这个问题的一个可能来源,我假设可能会在扩展点中为这个组合键定义一个处理程序,因为我之前已经尝试过这种机制,但是 plugin.xml 没有定义任何组合键,也没有定义任何撤消处理程序。一个与不同小部件的特殊上下文菜单相关联的菜单。
值得注意的是 Ctrl-C 和 Ctrl-V 按预期工作。
我需要找出按下 Ctrl-Z 时会发生什么,以及为什么什么都没有传递到TextViewerUndoManager
.
如果有人可以描述 eclipse 如何正常处理这些组合键并决定哪个命令是合适的,那将是非常有帮助的。
提前致谢