eclipse 插件开发-编辑器脏处理
2014-02-12 00:00
295 查看
1、强行添加command使编辑器脏。
2、
getEditor().getCommandStack().execute(new Command() {});
2、
//第一步,对editor的构造函数添加EditDomain public MyGraphicalEditor() { setEditDomain(new DefaultEditDomain(this)); } //第二步,对Command堆栈进行监听 public void init(IEditorSite site, IEditorInput input) throws PartInitException { super.init(site, input); getCommandStack().addCommandStackListener(this); } //第三步,重载CommandStackListener的CommandStackChanged()方法 public void commandStackChanged(EventObject event) { super.commandStackChanged(event); firePropertyChange(IEditorPart.PROP_DIRTY);// 别忘了 } //第四步,定义一个boolean类型的变量dirty,并写其set方法。供涉及Command堆栈之外的操作对“脏”状态改的需求 public void setDirty(boolean dirty){ if (dirty != this.dirty) { this.dirty = dirty; firePropertyChange(IEditorPart.PROP_DIRTY); } } //第五步,重载editor的isDirty()方法 public boolean isDirty() { return (getCommandStack().isDirty()) | dirty; } // 最后一步,doSave()方法的处理 public void doSave(IProgressMonitor arg0) { getCommandStack().markSaveLocation(); dirty = false; firePropertyChange(IEditorPart.PROP_DIRTY); // Todo others..... }
相关文章推荐
- Eclipse插件开发-调用默认编辑器打开指定文件
- Eclipse插件开发中的异常处理?
- Eclipse插件开发中对于外部Jar包和类文件引用的处理(彻底解决插件开发中的NoClassDefFoundError问题)
- markcode编辑器-markdown编辑器-开发进展 (eclipse的markdown编辑器插件) 2017-04
- Eclipse插件开发中对于外部Jar包和类文件引用的处理(彻底解决插件开发中的NoClassDefFoundError问题)
- eclipse下搭建shell脚本编辑器--安装开发shell的eclipse插件shelled
- eclipse 自定义一个后缀名为.xxxx的文件编辑器 插件开发
- Eclipse插件开发中对于Jar包和类文件引用的处理(彻底解决插件开发中的NoClassDefFoundError问题)
- markcode编辑器开发进展 (eclipse的markdown编辑器插件) 2017-03
- Eclipse插件开发中对于Jar包和类文件引用的处理(彻底解决插件开发中的NoClassDefFoundError问题)
- Eclipse插件开发中遇到的一些错误处理
- 【Eclipse插件开发】打开编辑器
- 如何处理eclipse插件开发中的view的显示与隐藏
- Eclipse插件开发中对于Jar包和类文件引用的处理(彻底解决插件开发中的NoClassDefFoundError问题)(转)
- eclipse下搭建shell脚本编辑器--安装开发shell的eclipse插件shelled
- 关于Eclipse插件开发(四)-------给视图加下拉菜单和按钮和加入编辑器.
- eclipse插件开发(一)
- 插件开发之编辑器的几个问题
- 使用 OpenCmsVFS 插件在 Eclipse 下进行OpenCms项目进行开发……
- eclipse 插件开发总结