一。XXX extends DiagramDocumentEditor
private boolean dirty = false; //是否被修改
public boolean isDirty() {
return super.isDirty() || dirty;
}
/**
* @generated NOT
*/
public void setDirty(boolean dirty) {
if (isDirty() != dirty) {
this.dirty = dirty;
firePropertyChange(IEditorPart.PROP_DIRTY);
}
}
二。extends FormEditor 多页编辑器
private boolean dirty = false; // 是否修改的标识
@Override
public boolean isDirty() {
return dirty;
}
public void setDirty(boolean dirty) {
if (this.dirty != dirty) {
this.dirty = dirty;
editorDirtyStateChanged();
}
}
三。多页编辑器的其中一页extends FormPage
private boolean dirty = false; // 是否被修改
@Override
public boolean isDirty() {
return dirty;
}
public void setDirty(boolean dirty) {
this.dirty = dirty;
}
public void doSave(IProgressMonitor monitor) {
父编辑器[主编辑器]profileEditor.setDirty(false);
}
//当某一个属性改变时,需调用此方法
public void setDirtyAfterModify() {
profileEditor父编辑器[主编辑器].setDirty(true);
setDirty(true);
}
四。最普通的编辑器 extends EditorPart
@Override
public boolean isDirty() {
return dirty;
}
public void setDirty() {
firePropertyChange(IEditorPart.PROP_DIRTY);
}
doSave(){
dirty = false;
}
巧妙设置编辑为dirty
猜你喜欢
转载自soundycui.iteye.com/blog/1073262
今日推荐
周排行