L'uso più efficace del controllo FormText
è durante l'aggiunta di tag di
formattazione al testo. Il tag principale previsto è form
.
Questo può avere uno o più elementi secondari di tipo <p>
o <li>
.
Entrambi possono contenere testo normale, testo tra tag <b>
o <span>
,
immagini, collegamenti e controlli SWT
. Le immagini sono dichiarate utilizzando <img
href="image key"/>
(nessun contenuto), mentre i collegamenti sono espressi
utilizzando <a href="href">text</a>
.
Alcuni dei tag sopra indicati possono avere altri attributi. Il tag <a>
può accettare nowrap="true"
per evitare che il collegamento sia riportato a capo su
una nuova riga. Il tag <p>
può avere l'attributo vspace="false"
(true
per impostazione predefinita) che aggiunge ulteriore spazio tra i paragrafi. Il tag
<li>
prevede più attributi:
style - può essere text
, bullet
e image
(il valore predefinito è bullet
)
value - non utilizzato per bullet
; se lo stile è text
,
verrà eseguito il rendering del valore al posto di un elenco puntato; se lo stile è image
, il
valore rappresenta una chiave di un'immagine nella tabella immagini della quale verrà effettuato il rendering
al posto dell'elenco puntato
vspace - equivale al tag 'p
'.
indent - il numero di pixel per il rientro del testo
bindent - il numero di pixel per il rientro dell'elenco puntato (questo numero è indipendente da 'indent' - attenzione a non sovrapporli)
I tag che influenzano l'aspetto del testo normale sono <b>
(secondo il funzionamento previsto) e <span>
. Quest'ultimo consente di modificare tipo
di carattere e/o colore del testo contenuto nel tag. Infine, è possibile aggiungere interruzioni di riga
utilizzando il tag <br/>
(questo è valido per XML, non è possibile utilizzare un
<br>
aperto come in HTML).
Dalla versione 3.1, FormText
può essere utilizzato per combinare widget SWT nel testo,
nei collegamenti ipertestuali e nelle immagini. I controlli SWT sono creati come elementi secondari di
FormText
; questo rende FormText
una specie di gestore di layout, con istruzioni
su dove collocare il controllo relativamente al testo integrato direttamente in XML.
Va tenuto in considerazione che FormText
non è responsabile per il caricamento delle
immagini, dei tipi di carattere, della risoluzione dei collegamenti o dei colori. Questo non è un browser;
si consiglia di tenere separate le funzioni ed assegnare semplicemente immagini e colori gestiti altrove. Sia
i collegamenti che le immagini presentano solo un attributo 'href
' per referenziarle. Per i
collegamenti, il valore di questo attributo verrà fornito dall'evento di collegamento ipertestuale quando i
listener ricevono la notifica. Le immagini devono essere registrate nel controllo di testo utilizzando
la chiave 'href'. In questo modo, il controllo non deve occuparsi del caricamento delle immagini; le mantiene
nella tabella hash e può effettuare subito il rendering.
Un approccio simile può essere utilizzato per colori e tipi di carattere. I colori sono già gestiti dal
toolkit, quindi è possibile allocarne quanti se ne vuole utilizzando una chiave univoca e i valori RGB
richiamando toolkit.getColors().createColor()
.
Restano solo da impostare tutti i colori a cui si fa riferimento nel tag
'span
', in modo che il controllo possa utilizzarli durante il rendering.