1、Eclipse 的 undo/redo 的菜单命令标签(edit -> Undo Typing)
的源代码位置:
org.eclipse.text.undo.DocumentUndoManager.UndoableTextChange#UndoableTextChange
// location: org.eclipse.text.undo.DocumentUndoManager
2、从 Workbench 获取 IDocument
IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
IEditorPart editorPart = IDE.openEditor(page, file);
IDocument doc = ((ITextEditor)editorPart).getDocumentProvider().getDocument(editorPart.getEditorInput());
3、从 Workbench 获取 ITextViewer
IEditorPart editorPart = getSite().getPage().getActiveEditor();
if (editorPart != null) {
ITextOperationTarget target =
(ITextOperationTarget)editorPart.getAdapter(ITextOperationTarget.class);
if (target instanceof ITextViewer) {
ITextViewer textViewer = (ITextViewer)target;
// ...
}
}
注:部分参考:http://stackoverflow.com/questions/923342/get-itextviewer-from-ieditorpart-eclipse
本文介绍了如何在Eclipse插件开发中实现编辑器的undo/redo功能,详细讲解了菜单命令标签'edit -> Undo Typing'的源代码位置,并指导如何从Workbench获取IDocument和ITextViewer。
623

被折叠的 条评论
为什么被折叠?



