本文整理汇总了Java中org.eclipse.ui.texteditor.IDocumentProviderExtension.synchronize方法的典型用法代码示例。如果您正苦于以下问题:Java IDocumentProviderExtension.synchronize方法的具体用法?Java IDocumentProviderExtension.synchronize怎么用?Java IDocumentProviderExtension.synchronize使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.eclipse.ui.texteditor.IDocumentProviderExtension
的用法示例。
在下文中一共展示了IDocumentProviderExtension.synchronize方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: handleEditorInputChanged
import org.eclipse.ui.texteditor.IDocumentProviderExtension; //导入方法依赖的package包/类
/**
* This code auto-refreshes files that are out of synch when we first open them. This is a bit of a hack that looks
* to see if it seems we're out of sync and the file isn't open yet. If it is already open, we call super so it pops
* a dialog asking if you want to update the file contents.
*/
@Override
protected void handleEditorInputChanged()
{
final IDocumentProvider provider = getDocumentProvider();
if (provider == null)
{
// fix for http://dev.eclipse.org/bugs/show_bug.cgi?id=15066
close(false);
return;
}
final IEditorInput input = getEditorInput();
boolean wasActivated = true;
try
{
Field f = AbstractTextEditor.class.getDeclaredField("fHasBeenActivated"); //$NON-NLS-1$
f.setAccessible(true);
wasActivated = (Boolean) f.get(this);
}
catch (Exception e1)
{
// ignore
}
if (!wasActivated && !provider.isDeleted(input))
{
try
{
if (provider instanceof IDocumentProviderExtension)
{
IDocumentProviderExtension extension = (IDocumentProviderExtension) provider;
extension.synchronize(input);
}
else
{
doSetInput(input);
}
return;
}
catch (Exception e)
{
// ignore
}
}
super.handleEditorInputChanged();
}