首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Eclipse开发 >

eclipse 插件开发-编辑器脏处置

2012-10-27 
eclipse 插件开发-编辑器脏处理1、强行添加command使编辑器脏。getEditor().getCommandStack().execute(new

eclipse 插件开发-编辑器脏处理

1、强行添加command使编辑器脏。

getEditor().getCommandStack().execute(new Command() {});

?

2、

//第一步,对editor的构造函数添加EditDomainpublic 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.....}

?

热点排行