下面列出了org.eclipse.ui.texteditor.IDocumentProvider#addElementStateListener ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
/**
* Register the element state listener to react on the changes to the state (saved, dirty:=not saved)
*/
protected void setDocumentProvider(IEditorInput input)
{
super.setDocumentProvider(input);
IDocumentProvider provider = getDocumentProvider();
if (provider != null)
{
provider.addElementStateListener(new ElementStateAdapter() {
public void elementDirtyStateChanged(Object element, boolean isDirty)
{
if (isDirty)
{
contextService.deactivateContext(contextActivation);
} else
{
contextActivation = contextService.activateContext("toolbox.contexts.cleaneditor");
}
}
});
}
}
private void saveListener(ITextEditor textEditor) {
IDocumentProvider provider = textEditor.getDocumentProvider();
IEditorInput input = textEditor.getEditorInput();
provider.addElementStateListener(new ResourceElementEventListener(input));
}
public void register(IDocumentProvider documentProvider, IEditorInput input) {
Set<IEditorInput> inputs = documentProviders.get(documentProvider);
if (inputs == null) {
inputs = new HashSet<IEditorInput>();
documentProviders.put(documentProvider, inputs);
}
if (inputs.contains(input)) return;
if (inputs.size() == 0) documentProvider.addElementStateListener(this);
inputs.add(input);
}