我已经制作了一个扩展XMLMultiPageEditorPart的编辑器 现在我在这个编辑器中打开一个xml文件 我想让这个编辑器只读, IFile file1 = file ...
我希望在编辑器中打开的xml文件是只读的。
答案 0 :(得分:0)
我刚解决了。
首先:你应该定义IStorage和IStorageEditorInput的Instance类,你可以参考How do I open an editor on something that is not a file?
第二:定义自己的XMLEditor,如下所示:
public class XMLEditor extends XMLMultiPageEditorPart implements IStorage{}
最后:调用编辑器:
File file= new File( path );
IWorkbenchPage page = window.getActivePage();
IStorage storage = new FileStorage(file);
IStorageEditorInput input = new XMLInput( storage );
try {
page.openEditor(input, "Your ID");
} catch (PartInitException e) {
MessageDialog.openError(window.getShell(), "", path);
}
注意:在FileStorage类中,函数getName()应返回文件的完整路径,否则会出错。
我希望这可以帮助你,如果你有任何问题,我们可以讨论它,使用gtalk:vvvv.spring@gmail.com