Konfigurere et kildevisningsprogram

Vi har så langt sett på SourceViewer i forbindelse med styring av kildekodeannotasjoner.

SourceViewer er også den sentrale knutepunktet for konfigurering av redigeringsprogrammet med pluggbare funksjoner, for eksempel tekstpekere og syntaksutheving.   For disse funksjonene oppgir redigeringsprogrammet en SourceViewerConfiguration som brukes til å konfigurere en opprettet SourceViewer.  Java-eksempelredigeringsprogrammet trenger bare å oppgi en egnet SourceViewerConfiguration.  Snutten nedenfor viser hvordan JavaTextEditor oppretter konfigurasjonen:

protected void initializeEditor() {
	super.initializeEditor();
	setSourceViewerConfiguration(new JavaSourceViewerConfiguration());
	...

Hva gjør så JavaSourceViewerConfiguration? Mye av funksjonaliteten arves fra SourceViewerConfiguration, som definerer standard strategier for pluggbare redigeringsprogramfunksjonalitet, for eksempel automatisk innrykk, angring, dobbeltklikking, tekstpeking, syntaksutheving og formatering. Fellesmetoder i SourceViewerConfiguration sørger for hjelpeobjektene som implementerer funksjonaliteten.

Hvis standardfunksjonaliteten som er definert i SourceViewerConfiguration ikke er egnet for redigeringsprogrammet, overstyrer du initializeEditor() slik det er vist ovenfor, og angir din egen kildevisningskonfigurasjon i redigeringsprogrammet.  Konfigurasjonen kan overstyre metoder i SourceViewerConfiguration for å oppgi tilpassede hjelpeobjekter som implementerer funksjoner for redigeringsprogrammet. Snutten nedenfor viser to metoder som JavaSourceViewerConfiguration bruker til å oppgi tilpassede hjelpeobjekter for Java-redigeringsprogrameksempelet:

public IAnnotationHover getAnnotationHover(ISourceViewer sourceViewer) {
	return new JavaAnnotationHover();
}
	
public IAutoIndentStrategy getAutoIndentStrategy(ISourceViewer sourceViewer, String contentType) {
	return (IDocument.DEFAULT_CONTENT_TYPE.equals(contentType) ? new JavaAutoIndentStrategy() : new DefaultAutoIndentStrategy());
}

Med den første metoden er det oppgitt en tilpasset hjelpeklasse for implementering av annotasjonspeking. Med den andre metoden opprettes en forespørsel til standard innholdstype i dokumentet for å bestemme hvilken strategi som skal brukes, enten en tilpasset strategi med automatisk innrykk eller en standardstrategi.

API-referansen SourceViewerConfiguration inneholder mer informasjon om hvordan du kan konfigurere et kildevisningsprogram ved å overstyre metoder.