Configurazione di un visualizzatore di origine

SourceViewer č stato finora illustrato nel contesto della gestione delle annotazioni del codice di origine.

SourceViewer č anche l'hub centrale per la configurazione dell'editor con funzioni collegabili quali il testo a comparsa e l'evidenziazione della sintassi.   A questo scopo l'editor fornisce una SourceViewerConfiguration che viene utilizzata per configurare il SourceViewer al momento della relativa creazione.  L'editor di esempio Java deve fornire solo una SourceViewerConfiguration appropriata per le relative necessitą.  Il frammento di codice riportato di seguito mostra come JavaTextEditor crea la relativa configurazione:

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

Quali sono le funzioni di JavaSourceViewerConfiguration? Gran parte delle sue funzionalitą sono ereditate da SourceViewerConfiguration, che definisce le strategie predefinite per le funzionalitą collegabili dell'editor, quali il rientro automatico, l'annullamento di operazioni, la funzione del doppio clic, il testo a comparsa, l'evidenziazione della sintassi e la formattazione.  I metodi pubblici in SourceViewerConfiguration forniscono gli oggetti helper che implementano tali funzionalitą.

Se le funzionalitą predefinite definite in SourceViewerConfiguration non sono appropriate all'editor in uso, sostituire initializeEditor() come sopra illustrato e configurare il visualizzatore di origine.  La configurazione č in grado di sostituire i metodi in SourceViewerConfiguration in modo da fornire oggetti helper personalizzati che implementano le funzionalitą relative all'editor in uso. Il frammento di codice che segue mostra due modi utilizzati da JavaSourceViewerConfiguration per fornire gli oggetti helper personalizzati per l'esempio di editor Java:

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());
}

Nel primo metodo, viene fornita una classe helper personalizzata per l'implementazione delle annotazioni a comparsa.  Nel secondo metodo, viene eseguita una query nel tipo di contenuto predefinito del documento per stabilire se utilizzare una strategia di rientro automatico oppure la strategia predefinita.

Vedere il riferimento API per SourceViewerConfiguration per informazioni su come configurare un visualizzatore di origine mediante la sostituzione dei metodi.

Copyright IBM Corporation e altri 2000, 2003.