类org.eclipse.jface.text.reconciler.IReconcilingStrategy源码实例Demo

下面列出了怎么用org.eclipse.jface.text.reconciler.IReconcilingStrategy的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: texlipse   文件: TexSourceViewerConfiguration.java
/**
 * @see org.eclipse.jface.text.source.SourceViewerConfiguration#getReconciler(org.eclipse.jface.text.source.ISourceViewer)
 */
@Override
public IReconciler getReconciler(ISourceViewer sourceViewer) {
    if (fPreferenceStore == null || !fPreferenceStore.getBoolean(SpellingService.PREFERENCE_SPELLING_ENABLED))
        return null;
    if (!TexlipsePlugin.getDefault().getPreferenceStore().getBoolean(TexlipseProperties.ECLIPSE_BUILDIN_SPELLCHECKER))
        return null;
    //Set TeXlipse spelling Engine as default
    PreferenceStore store = new PreferenceStore();
    store.setValue(SpellingService.PREFERENCE_SPELLING_ENGINE, 
            "org.eclipse.texlipse.LaTeXSpellEngine");
    store.setValue(SpellingService.PREFERENCE_SPELLING_ENABLED, 
    true);
    SpellingService spellingService = new SpellingService(store);
    if (spellingService.getActiveSpellingEngineDescriptor(store) == null)
        return null;
    IReconcilingStrategy strategy= new TeXSpellingReconcileStrategy(sourceViewer, spellingService);
    
    MonoReconciler reconciler= new MonoReconciler(strategy, true);
    reconciler.setDelay(500);
    reconciler.setProgressMonitor(new NullProgressMonitor());
    return reconciler;
}
 
@Override
public IReconciler getReconciler(ISourceViewer sourceViewer) {
	if (!EditorsUI.getPreferenceStore().getBoolean(SpellingService.PREFERENCE_SPELLING_ENABLED))
		return null;

	IReconcilingStrategy strategy= new SpellingReconcileStrategy(sourceViewer, EditorsUI.getSpellingService()) {
		@Override
		protected IContentType getContentType() {
			return PROPERTIES_CONTENT_TYPE;
		}
	};

	MonoReconciler reconciler= new MonoReconciler(strategy, false);
	reconciler.setDelay(500);
	return reconciler;
}
 
@Override
public IReconciler getReconciler(ISourceViewer sourceViewer) {
	if (!EditorsUI.getPreferenceStore().getBoolean(SpellingService.PREFERENCE_SPELLING_ENABLED))
		return null;

	IReconcilingStrategy strategy = new SpellingReconcileStrategy(sourceViewer, EditorsUI.getSpellingService()) {
		@Override
		protected IContentType getContentType() {
			return EditorConfigTextTools.EDITORCONFIG_CONTENT_TYPE;
		}
	};

	MonoReconciler reconciler = new MonoReconciler(strategy, false);
	reconciler.setDelay(500);
	return reconciler;
}
 
源代码4 项目: Pydev   文件: PyEditConfigurationWithoutEditor.java
@Override
public IReconciler getReconciler(ISourceViewer sourceViewer) {
    if (fPreferenceStore == null || !fPreferenceStore.getBoolean(SpellingService.PREFERENCE_SPELLING_ENABLED)) {
        return null;
    }

    SpellingService spellingService = EditorsUI.getSpellingService();
    if (spellingService.getActiveSpellingEngineDescriptor(fPreferenceStore) == null) {
        return null;
    }

    //Overridden (just) to return a PyReconciler!
    IReconcilingStrategy strategy = new PyReconciler(sourceViewer, spellingService);

    MonoReconciler reconciler = new MonoReconciler(strategy, false);
    reconciler.setIsIncrementalReconciler(false);
    reconciler.setProgressMonitor(new NullProgressMonitor());
    reconciler.setDelay(500);
    return reconciler;
}
 
@Override
public void reconcile(final IRegion region) {
	if (log.isTraceEnabled()) {
		log.trace("reconcile region: " + region);
	}
	doReconcile(region);
	for (IReconcilingStrategy strategy: strategies) {
		strategy.reconcile(region);
	}
}
 
@Override
public void setDocument(IDocument document) {
	if (!(document instanceof XtextDocument)) {
		throw new IllegalArgumentException("Document must be an " + XtextDocument.class + " but was " + document.getClass().getName());
	}
	for (IReconcilingStrategy strategy: strategies) {
		strategy.setDocument(document);
	}
}
 
/**
 * @since 2.3
 */
@Override
public void setSourceViewer(ISourceViewer sourceViewer) {
	strategies.clear();
	for(IReconcileStrategyFactory factory: strategyFactories) {
		IReconcilingStrategy strategy = factory.createOrNull(sourceViewer);
		if (strategy != null)
			strategies.add(strategy);
	}
}
 
/**
 * @since 2.3
 */
@Override
public void setProgressMonitor(IProgressMonitor monitor) {
	this.monitor = monitor;
	for (IReconcilingStrategy strategy: strategies) {
		if (strategy instanceof IReconcilingStrategyExtension) {
			((IReconcilingStrategyExtension) strategy).setProgressMonitor(monitor);
		}
	}
}
 
/**
 * @since 2.3
 */
@Override
public void initialReconcile() {
	for (IReconcilingStrategy strategy: strategies) {
		if (strategy instanceof IReconcilingStrategyExtension) {
			((IReconcilingStrategyExtension) strategy).initialReconcile();
		}
	}
}
 
源代码10 项目: xtext-eclipse   文件: IReconcileStrategyFactory.java
default IReconcilingStrategy createOrNull(ISourceViewer viewer) {
	try {
		return create(viewer);
	} catch(Throwable t) {
		return null;
	}
}
 
@Override
public IReconcilingStrategy create(ISourceViewer viewer) {
	if (viewer instanceof ISourceViewerExtension5) {
		return new XtextCodeMiningReconcileStrategy((ISourceViewerExtension5) viewer);
	}
	return null;
}
 
源代码12 项目: xds-ide   文件: CompositeReconcilingStrategy.java
/**
 * {@inheritDoc}
 */
@Override
public void setDocument(IDocument document) {
    if (strategies == null)
        return;

    for (IReconcilingStrategy strategy : strategies) {
        strategy.setDocument(document);
    }
}
 
源代码13 项目: xds-ide   文件: CompositeReconcilingStrategy.java
/**
 * {@inheritDoc}
 */
@Override
public void reconcile(DirtyRegion dirtyRegion, IRegion subRegion) {
    if (strategies == null)
        return;

    for (IReconcilingStrategy strategy : strategies) {
        strategy.reconcile(dirtyRegion, subRegion);
    }
}
 
源代码14 项目: xds-ide   文件: CompositeReconcilingStrategy.java
/**
 * {@inheritDoc}
 */
@Override
public void reconcile(IRegion partition) {
    if (strategies == null)
        return;

    for (IReconcilingStrategy strategy : strategies) {
        strategy.reconcile(partition);
    }
}
 
源代码15 项目: xds-ide   文件: CompositeReconcilingStrategy.java
/**
 * {@inheritDoc}
 */
@Override
public void setProgressMonitor(IProgressMonitor monitor) {
    if (strategies == null)
        return;

    for (IReconcilingStrategy strategy : strategies) {
        if (strategy instanceof IReconcilingStrategyExtension) {
            IReconcilingStrategyExtension extension = (IReconcilingStrategyExtension)strategy;
            extension.setProgressMonitor(monitor);
        }
    }
}
 
源代码16 项目: xds-ide   文件: CompositeReconcilingStrategy.java
/**
 * {@inheritDoc}
 */
@Override
public void initialReconcile() {
    if (strategies == null)
        return;

    for (IReconcilingStrategy strategy : strategies) {
        if (strategy instanceof IReconcilingStrategyExtension) {
            IReconcilingStrategyExtension extension = (IReconcilingStrategyExtension)strategy;
            extension.initialReconcile();
        }
    }
}
 
protected IReconcilingStrategy getTypeScriptFoldingStrategy() {
	if ("org.eclipse.wst.jsdt.core.jsSource".equals(contentType)) {
		return super.getFoldingStrategy();
	}
	if (foldingStrategy == null) {
		ITextViewer viewer = getTextViewer();
		if (viewer instanceof ProjectionViewer) {
			foldingStrategy = new TypeScriptFoldingStrategy();
			foldingStrategy.setViewer((ProjectionViewer) viewer);
			foldingStrategy.setDocument(getDocument());
		}
	}
	return foldingStrategy;
}
 
protected IReconcilingStrategy getCodeLensStrategy() {
	if (!TypeScriptUIPlugin.getDefault().getPreferenceStore()
			.getBoolean(TypeScriptUIPreferenceConstants.EDITOR_ACTIVATE_CODELENS)) {
		return null;
	}
	if (codeLensStrategy == null && getDocument() != null) {
		if (getTextViewer() instanceof ISourceViewer) {
			ISourceViewer viewer = (ISourceViewer) getTextViewer();
			codeLensStrategy = new TypeScriptCodeLensStrategy(viewer);
			codeLensStrategy.setDocument(getDocument());
			codeLensStrategy.setProgressMonitor(new NullProgressMonitor());
		}
	}
	return codeLensStrategy;
}
 
@Override
protected IReconcilingStrategy getSpellcheckStrategy() {
  if (spellcheckStrategy == null) {
    String contentTypeId = getContentType(getDocument());
    if (contentTypeId != null) {
      if (getTextViewer() instanceof ISourceViewer) {
        ISourceViewer viewer = (ISourceViewer) getTextViewer();
        spellcheckStrategy = new UiBinderSpellcheckStrategy(viewer,
            contentTypeId);
        spellcheckStrategy.setDocument(getDocument());
      }
    }
  }
  return spellcheckStrategy;
}
 
@Override
public IReconciler getReconciler(ISourceViewer sourceViewer) {
  JavaReconciler reconciler = (JavaReconciler) super.getReconciler(sourceViewer);
  if (reconciler != null) {
    try {
      JavaCompositeReconcilingStrategy strategy = (JavaCompositeReconcilingStrategy) reconciler.getReconcilingStrategy(IDocument.DEFAULT_CONTENT_TYPE);
      IReconcilingStrategy[] strategies = strategy.getReconcilingStrategies();
      IReconcilingStrategy[] newStrategies = new IReconcilingStrategy[strategies.length];
      for (int i = 0; i < strategies.length; i++) {
        if (strategies[i] instanceof JavaSpellingReconcileStrategy) {
          // Replace the default Java reconcile strategy with our own, which
          // will suppress spell checking within JSNI blocks
          newStrategies[i] = new GWTJavaSpellingReconcileStrategy(
              sourceViewer, getEditor());
        } else {
          newStrategies[i] = strategies[i];
        }
      }
      strategy.setReconcilingStrategies(newStrategies);
    } catch (Exception e) {
      // We're being defensive to ensure that we always return a reconciler
      GWTPluginLog.logError(e);
    }
    return reconciler;
  }

  return null;
}
 
public void dispose()
{
	for (IReconcilingStrategy strategy : fStrategies)
	{
		if (strategy instanceof IDisposableReconcilingStrategy)
		{
			((IDisposableReconcilingStrategy) strategy).dispose();
		}
	}
}
 
public void setDocument(IDocument document)
{
	for (IReconcilingStrategy strategy : fStrategies)
	{
		strategy.setDocument(document);
	}
}
 
public void reconcile(DirtyRegion dirtyRegion, IRegion subRegion)
{
	for (IReconcilingStrategy strategy : fStrategies)
	{
		strategy.reconcile(dirtyRegion, subRegion);
	}
}
 
public void reconcile(IRegion partition)
{
	for (IReconcilingStrategy strategy : fStrategies)
	{
		strategy.reconcile(partition);
	}
}
 
public void setProgressMonitor(IProgressMonitor monitor)
{
	for (IReconcilingStrategy strategy : fStrategies)
	{
		if (strategy instanceof IReconcilingStrategyExtension)
		{
			IReconcilingStrategyExtension extension = (IReconcilingStrategyExtension) strategy;
			extension.setProgressMonitor(monitor);
		}
	}
}
 
public void initialReconcile()
{
	for (IReconcilingStrategy strategy : fStrategies)
	{
		if (strategy instanceof IReconcilingStrategyExtension)
		{
			IReconcilingStrategyExtension extension = (IReconcilingStrategyExtension) strategy;
			extension.initialReconcile();
		}
	}
}
 
public void fullReconcile()
{
	for (IReconcilingStrategy strategy : fStrategies)
	{
		if (strategy instanceof IBatchReconcilingStrategy)
		{
			IBatchReconcilingStrategy extension = (IBatchReconcilingStrategy) strategy;
			extension.fullReconcile();
		}
	}
}
 
源代码28 项目: APICloud-Studio   文件: CommonReconciler.java
/**
 * 
 */
public CommonReconciler(IReconcilingStrategy defaultStrategy)
{
	super();
	this.defaultStrategy = defaultStrategy;
	setReconcilingStrategy(defaultStrategy, String.valueOf(System.currentTimeMillis()));
}
 
源代码29 项目: APICloud-Studio   文件: CommonReconciler.java
/**
 * @param strategy
 * @param contentTypes
 */
public void setReconcilingStrategy(IReconcilingStrategy strategy, Collection<String> contentTypes)
{
	for (String contentType : contentTypes)
	{
		setReconcilingStrategy(strategy, contentType);
	}
}
 
源代码30 项目: APICloud-Studio   文件: CommonReconciler.java
@Override
public IReconcilingStrategy getReconcilingStrategy(String contentType)
{
	IReconcilingStrategy strategy = super.getReconcilingStrategy(contentType);
	if (strategy != null)
	{
		return strategy;
	}
	return defaultStrategy;
}
 
 类所在包
 同包方法