Gli aiuti a comparsa vengono descritti associando l'id di contesto dichiarato nel codice dell'interfaccia utente a una descrizione e a un elenco di collegamenti agli argomenti correlati nella Guida in linea.
Tali associazioni vengono effettuate all'interno di un file XML. È possibile creare il numero desiderato di file XML contenenti associazioni di aiuti a comparsa per ciascun plug-in. La descrizione e i collegamenti relativi a ciascun id di contesto vengono eseguiti in elementi <context> del file XML. Ciascun elemento di contesto può essere dotato di un elemento <description> facoltativo che viene utilizzato per descrivere l'oggetto UI e un numero qualsiasi di elementi <topic> che contengono collegamenti alla documentazione in linea.
<contexts> <context id="panic_button"> <description>This is the panic button.</description> <topic href="tasks/pushing_the_panic_button.htm" label="Pushing the panic button"/> <topic href="reference/panic_button.htm" label="Panic Button Reference"/> </context> ... </contexts>
Una volta effettuata la descrizione dei contesti nel file o nei file XML, è possibile fare riferimento ai file di contesto nel manifest di plug-in. Si tenga presente che l'id di contesto nell'esempio sopra riportato non è completo. Ciò è possibile se il file di contesto è fornito nel manifest del plug-in che ha definito l'id di contesto. In altri termini, l'id di contesto viene risolto nell'id del plug-in che ha fornito il file XML.
Un plug-in fornisce file di contesto mediante il punto di estensione org.eclipse.help.contexts.
<extension point="org.eclipse.help.contexts"> <contexts name="myInfopops.xml" /> </extension>
È possibile fare riferimento ai file di contesto da altri plug-in includendo l'attributo plugin. Ciò consente di raccogliere e inserire l'intera documentazione, inclusi gli aiuti a comparsa, in un unico plug-in e fare riferimento ad esso dal plug-in del codice dell'interfaccia utente o da altri plug-in correlati.
<extension point="org.eclipse.help.contexts"> <contexts name="myInfopops.xml" plugin="com.example.helpExample" /> </extension>
Come risulta evidente, si dispone di un notevole margine di flessibilità nell'organizzazione degli aiuti a comparsa in uno o più file contenuti in uno o più plug-in. La considerazione principale in merito riguarda la corretta risoluzione degli id di contesto nei file. Se non si assegna un nome completo a un id di contesto, è necessario fornire i file XML di contesto nel plug-in che ha dichiarato gli id di contesto. Se invece si utilizzano id di contesto completi nel file XML di contesto, si dispone di piena libertà riguardo al percorso dei file XML e al plug-in che fornisce i contesti.
Si gode di un ampio margine di flessibilità anche riguardo alla possibilità di fornire aiuti a comparsa per lo stesso id di contesto da plug-in diversi. Ciò risulta utile, ad esempio, se si dispone di più plug-in di documentazione che è possono o meno essere installati in una configurazione dell'utente. Ogni plug-in di documentazione può, infatti, dichiarare i propri contesti in maniera indipendente. L'utente finale visualizzerà l'insieme dei contenuti degli aiuti a comparsa di tutti i plug-in che hanno fornito i contesti per l'ID del widget.
Si osservi che è necessario utilizzare l'ID di contesto completo del widget, poiché nessuno dei plug-in di documentazione ha dichiarato l'ID di contesto. Quando più plug-in forniscono aiuti a comparsa per lo stesso ID di contesto, il contenuto definito nel plug-in che ha dichiarato il contesto (il plug-in dell'interfaccia utente) viene visualizzato per primo. Le descrizioni e i collegamenti supplementari sono accodati in un ordine arbitrario.