Pagina Estensioni

La pagina Estensioni viene utilizzata per esaminare e modificare le estensioni dei plug-in. Le estensioni rappresentano il meccanismo centrale per fornire la funzionalità alla piattaforma. A meno che il proprio plug-in non corrisponda a una semplice libreria API Java resa disponibile ad altri plug-in, la nuova funzionalità viene fornita come estensione.

I plug-in contribuiscono al punto di estensione definito dai plug-in che sono necessari.  Per una corretta elaborazione, la sintassi dell'estensione deve corrispondere alla definizione del punto di estensione. L'elenco generale dei punti di estensione idonei viene calcolato dal PDE attraverso l'esame di tutti i plug-in visibili (esterni e dell'area di lavoro).

La procedura guidata di estensione generica fornita dal PDE esaminerà semplicemente i punti di estensione.  Se viene fornito un punto di estensione (consultare Schema di punti di estensione), la procedura guidata estrarrà dallo schema i metadati del punto di estensione e della grammatica.

Esempio:  aggiunta di un'estensione Serie di azioni

Per descrivere l'operazione della pagina Estensioni, verrà aggiunta un'azione 'Hello, PDE world' al plug-in. Si opererà nel punto di estensione org.eclipse.ui.actionSets.  Questo esempio presuppone la conoscenza del punto di estensione.  

Premere il pulsante Nuovo per selezionare la procedura guidata dell'estensione:

La procedura guidata predefinita è Estensione basata su schema poiché gestisce le estensioni in modo generico. Esaminerà i plug-in e riporterà tutti i punti di estensione rilevati, con o senza schemi. Quelli con schemi permetteranno al PDE di fornire una migliore assistenza. Se manca uno schema di punto di estensione, il PDE consentirà all'utente di aggiungere elementi e attributi a un'estensione, ma non sarà in grado di verificare se questi sono validi per il punto di estensione selezionato.

Quando si preme Avanti, verrà fornito un elenco di punti di estensione. Selezionare Serie di azioni e premere Fine.

La procedura guidata aggiungerà la nuova estensione all'elenco delle estensioni. Poiché questa estensione presenta uno schema associato, è possibile modificarne ulteriormente la definizione. Selezionare l'estensione appena aggiunta e scegliere Nuovo > actionSet dal menu di scelta rapida. Questo elemento XML è stato definito come l'unico valido che può apparire nella definizione dell'estensione. 

Per tutti gli attributi necessari, il PDE creerà valori predefiniti.  È possibile modificare il nome predefinito della serie di azioni in "Serie di azioni di esempio" selezionando l'elemento e modificando la proprietà label nella visualizzazione Proprietà. Il nuovo nome verrà visualizzato nell'elenco delle estensioni. 

Ora è necessario definire un menu e un'azione per la serie di azioni. Se si seleziona la serie di azioni e si apre il menu nella sezione "Elemento secondario dell'estensione", il menu "Nuovo" offrirà due scelte:  menu e azione.  Queste scelte sono basate sulle informazioni di schema relative all'estensione delle serie di azioni.  Per prima cosa, creare il menu.

  1. Selezionare Nuovo > menu per creare il menu.  

  2. Selezionarlo e modificarne le proprietà.  Modificare id in "sampleMenu" e label in "Menu di esempio".

  3. Mentre l'oggetto menu è ancora selezionato, aprire un menu di scelta rapida e selezionare Nuovo > separatore. Dovrebbe apparire un nuovo elemento secondario.

  4. Selezionare "separatore" e modificare name in "sampleGroup". In questo modo verrà creato un gruppo denominato nel menu che può essere utilizzato per l'azione.

Nello stesso modo verrà creata l'azione:

  1. Selezionare Nuovo > azione per creare un'azione.  

  2. Selezionarla e modificarne le proprietà.  Modificare label in "&Azione di esempio" e menubarPath in "sampleMenu/sampleGroup."  Questa operazione aggiunge l'azione al menu appena definito.

Infine, è necessario impostare la classe Java dell'azione. La definizione del punto di estensione specifica che un'azione deve implementare  IWorkbenchWindowActionDelegate.   Il PDE è in grado di fornire assistenza all'utente dato che rileva queste informazioni dallo schema:

  1. Fare clic sulla proprietà class per porla in modalità di modifica. Selezionare il pulsante per aprire la finestra di dialogo dell'editor di cella.

  2. Selezionare il pulsante di opzione per creare una nuova classe.

  3. Fare clic sul pulsante Sfoglia per scegliere il contenitore sorgente e selezionare "Plug-in XYZ".

  4. Modificare il nome della classe in "SampleAction."

Prima di premere Fine, la finestra dovrebbe apparire così:

Una volta completate le operazioni, la nuova classe verrà generata in base all'interfaccia richiesta (con una implementazione di stub per ciascun metodo astratto). Inoltre, il nome della nuova classe verrà impostato per il valore della proprietà di classe. Per impostazione predefinita, la procedura guidata aprirà anche la nuova classe Java per permetterne la modifica. È possibile localizzare il metodo "run" e aggiungere la seguente istruzione:

System.out.println("Hello, PDE world!");

Salvare il nuovo codice sorgente e chiudere l'editor Java.  Quindi, ritornare alla pagina Estensioni dell'editor del manifest e salvare.

Questo esempio verrà continuato al momento dell'esecuzione del plug-in.