org.eclipse.jface.text.source.ISourceViewer#invalidateTextPresentation ( )源码实例Demo

下面列出了org.eclipse.jface.text.source.ISourceViewer#invalidateTextPresentation ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: xds-ide   文件: ModulaEditor.java
/**
    * Recomputes partitioning and refreshes editor, in case there are disabled code regions.
    * 
    * @param ast
    */
   private void repartitionAndRefresh(final ModulaAst ast) 
   {
   	InactiveCodeRefresher inactiveCodeRefresher = new InactiveCodeRefresher(ast, new ITextPresentation() {
		@Override
		public boolean isDisposed() {
			return ModulaEditor.this.isDisposed();
		}
		
		@Override
		public void invalidateTextPresentation() {
			ISourceViewer sourceViewer = ModulaEditor.this.getSourceViewer();
			if (sourceViewer != null) {
				sourceViewer.invalidateTextPresentation();
			}
		}
	}, () -> getEditorDocument(this));
   	inactiveCodeRefresher.refresh();
}
 
源代码2 项目: xtext-eclipse   文件: XtextEditor.java
@Override
protected void handlePreferenceStoreChanged(PropertyChangeEvent event) {
	ISourceViewer sourceViewer = getSourceViewer();
	if (sourceViewer == null || sourceViewer.getTextWidget() == null)
		return;
	super.handlePreferenceStoreChanged(event);
	

	boolean tokenStyleChanged = event.getProperty().contains(".syntaxColorer.tokenStyles");
	if (tokenStyleChanged) {
		textAttributeProvider.propertyChange(event);
		initializeViewerColors(sourceViewer);
		sourceViewer.invalidateTextPresentation();
	}
}
 
protected void setupPresentationReconciler(PresentationReconciler reconciler, ISourceViewer sourceViewer) {
	// Must be called from UI thread
	assertTrue(Display.getCurrent() != null);
	
	// Create a token registry for given sourceViewer
	TokenRegistry tokenRegistry = new TokenRegistry(colorManager, stylingPrefs) {
		@Override
		protected void handleTokenModified(Token token) {
			sourceViewer.invalidateTextPresentation();
		}
	};
	addConfigurationScopedOwned(sourceViewer, tokenRegistry);
	
	ArrayList2<AbstractLangScanner> scanners = new ArrayList2<>();
	
	for(LangPartitionTypes partitionType : getPartitionTypes()) {
		
		String contentType = partitionType.getId();
		AbstractLangScanner scanner = createScannerFor(Display.getCurrent(), partitionType, tokenRegistry);
		scanners.add(scanner);
		
		DefaultDamagerRepairer dr = getDamagerRepairer(scanner, contentType);
		reconciler.setDamager(dr, contentType);
		reconciler.setRepairer(dr, contentType);
	}
	
}
 
protected void setupPresentationReconciler(PresentationReconciler reconciler, ISourceViewer sourceViewer) {
	// Must be called from UI thread
	assertTrue(Display.getCurrent() != null);
	
	// Create a token registry for given sourceViewer
	TokenRegistry tokenRegistry = new TokenRegistry(colorManager, stylingPrefs) {
		@Override
		protected void handleTokenModified(Token token) {
			sourceViewer.invalidateTextPresentation();
		}
	};
	addConfigurationScopedOwned(sourceViewer, tokenRegistry);
	
	ArrayList2<AbstractLangScanner> scanners = new ArrayList2<>();
	
	for(LangPartitionTypes partitionType : getPartitionTypes()) {
		
		String contentType = partitionType.getId();
		AbstractLangScanner scanner = createScannerFor(Display.getCurrent(), partitionType, tokenRegistry);
		scanners.add(scanner);
		
		DefaultDamagerRepairer dr = getDamagerRepairer(scanner, contentType);
		reconciler.setDamager(dr, contentType);
		reconciler.setRepairer(dr, contentType);
	}
	
}