Refactoring Modifica visualizzatori di anteprima

org.eclipse.ltk.ui.refactoring.changePreviewViewers

3.0

Questo punto di estensione viene utilizzato per definire un visualizzatore speciale in grado di presentare gli oggetti di modifica. Il lettore del punto di estensione fornisce le seguenti variabili predefinite alle quali è possibile accedere durante la valutazione dell'espressione utilizzando il tag <with variable="..."/>:

modifica
l'oggetto di modifica per il quale presentare un'anteprima

La variabile predefinita utilizzata durante la valutazione dell'espressione è associata alla variabile di modifica.

<!ELEMENT extension (changePreviewViewer*)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED>


<!ELEMENT changePreviewViewer (enablement)>

<!ATTLIST changePreviewViewer

id    CDATA #REQUIRED

class CDATA #REQUIRED>


<!ELEMENT enablement (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>

Un elemento principale generico. L'elemento può essere utilizzato in un punto di estensione per definire la relativa espressione di attivazione. Gli elementi secondari di un'espressione di attivazione vengono associati utilizzando l'operatore and.



<!ELEMENT not (not | and | or | instanceof | test | systemTest | equals | count | with | resolve | adapt | iterate)>

Questo elemento rappresenta un'operazione NOT sul risultato della valutazione della relativa espressione del sottoelemento.



<!ELEMENT and (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>

Questo elemento rappresenta un'operazione AND sul risultato della valutazione di tutte le espressioni dei sottoelementi.



<!ELEMENT or (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>

Questo elemento rappresenta un'operazione OR sul risultato della valutazione di tutte le espressioni del sottoelemento.



<!ELEMENT instanceof EMPTY>

<!ATTLIST instanceof

value CDATA #REQUIRED>

Questo elemento viene utilizzato per eseguire un controllo instanceof dell'oggetto in questione. L'espressione restituisce EvaluationResult.TRUE se il tipo dell'oggetto è un sottotipo del tipo specificato dal valore di attributo. In caso contrario, viene restituito EvaluationResult.FALSE.



<!ELEMENT test EMPTY>

<!ATTLIST test

property CDATA #REQUIRED

args     CDATA #IMPLIED

value    CDATA #IMPLIED>

Questo elemento viene utilizzato per valutare lo stato della proprietà dell'oggetto in questione. L'insieme di proprietà verificabili può essere esteso utilizzando il punto di estensione del tester delle proprietà. L'espressione di verifica restituisce EvaluationResult.NOT_LOADED se il tester delle proprietà che sta eseguendo la verifica non è ancora stato caricato.



<!ELEMENT systemTest EMPTY>

<!ATTLIST systemTest

property CDATA #REQUIRED

value    CDATA #REQUIRED>

Verifica una proprietà di sistema richiamando il metodo System.getProperty e confronta il risultato con il valore specificato mediante l'attributo del valore.



<!ELEMENT equals EMPTY>

<!ATTLIST equals

value CDATA #REQUIRED>

Questo elemento viene utilizzato per eseguire un controllo equals dell'oggetto in questione. L'espressione restituisce EvaluationResult.TRUE se l'oggetto è uguale al valore fornito dal valore dell'attributo. In caso contrario, viene restituito EvaluationResult.FALSE.



<!ELEMENT count EMPTY>

<!ATTLIST count

value CDATA #REQUIRED>

Questo elemento viene utilizzato per verificare gli elementi di una raccolta.



<!ELEMENT with (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>

<!ATTLIST with

variable CDATA #REQUIRED>

Questo elemento modifica l'oggetto da esaminare per tutti i relativi elementi secondari indicati da una determinata variabile. Se la variabile non può essere risolta, l'espressione genererà un'eccezione ExpressionException durante la valutazione. Gli elementi secondari di un'espressione with vengono associati utilizzando l'operatore and.



<!ELEMENT resolve (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>

<!ATTLIST resolve

variable CDATA #REQUIRED

args     CDATA #IMPLIED>

Questo elemento modifica l'oggetto da esaminare per tutti i relativi elementi secondari indicati da una determinata variabile. Se la variabile non può essere risolta, l'espressione genererà un'eccezione ExpressionException durante la valutazione. Gli elementi secondari di un'espressione with vengono associati utilizzando l'operatore and.



<!ELEMENT adapt (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>

<!ATTLIST adapt

type CDATA #REQUIRED>

Questo elemento viene utilizzato per adattare l'oggetto in questione al tipo specificato dal tipo di attributo. L'espressione restituisce non caricato se l'adattatore o il tipo indicato non è stato ancora caricato. Genera un'eccezione ExpressionException durante la valutazione se il nome tipo non esiste. Gli elementi secondari di un'espressione adapt vengono associati utilizzando l'operatore and.



<!ELEMENT iterate (not , and , or , instanceof , test , systemTest , equals , count , with , resolve , adapt , iterate)*>

<!ATTLIST iterate

operator (or|and) >

Questo elemento viene utilizzato per iterare nella variabile di tipo java.util.Collection. Se l'oggetto in questione non è di tipo java.util.Collection, verrà generata un'eccezione ExpressionException durante la valutazione dell'espressione.



Il seguente esempio fornisce un visualizzatore di anteprima per gli oggetti di modifica testo.
   

<extension point=

"org.eclipse.ltk.ui.refactoring.changePreviewViewers"

>

<changePreviewViewer class=

"org.eclipse.ltk.internal.ui.refactoring.TextChangePreviewViewer"

id=

"org.eclipse.ltk.internal.ui.refactoring.textChangePreviewViewer"

>

<enablement>

<instanceof value=

"org.eclipse.ltk.core.refactoring.TextChange"

/>

</enablement>

</changePreviewViewer>

</extension>

La classe fornita deve estendere org.eclipse.ltk.ui.refactoring.IChangePreviewViewer