FlightGear/Un esempio di integrazione NASAL-XML: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
m Update syntaxhighlight tags - remove use of deprecated <source> tags
 
Riga 16:
Il file da modificare è il ''menubar.xml'' che si trova in ''$FG_ROOT/fgdata/gui'' che contiene tutte le voci di menu nella forma:
 
<sourcesyntaxhighlight lang="Xml">
<PropertyList>
...
Riga 35:
...
</PropertyList>
</syntaxhighlight>
</source>
 
Analizziamo ora questo script, intanto si nota che ogni voce di menu è definita all'interno dei tag <menu> ... </menu>, questi non hanno un limite, ma ovviamente non possono essere troppi altrimenti la barra orizzontale in alto diventerebbe troppo lunga. Normalmente conviene introdurre la nuova voce all'interno di un menu già esistente, può essere una buona scelta il menu con label '''File''' (''<label>'''''File'''''</label>'') che contiene varie chiamate a funzioni di ''servizio''. Ogni sottovoce di menu viene descritta tra i tag ''<item> ... </item>'' anche i singoli items hanno una label che non è altro la scritta visualizzata nel menu a tendina, nel nostro caso la label è: ''<label>'''''Joystick Configuration'''''</label>''. A questo punto inizia la parte più importante, ovvero la chiamata alla finestra che verrà mostrata al fine di permettere la visualizzazione e modifica dei parametri. Questa finestra è anche essa descritta tramite un codice xml, questa finestra si chiama ''finestra di dialogo''. Viene attivata all'interno di una connessione (''binding'') tra due differenti insiemi di codici. La finestra di dialogo viene richiamata attraverso il comando posto all'interno del tag ''<binding>'' che è: ''<command>'''''dialog-show'''''</command>'' che richiede un tag ''dialog-name'' con l'interno il nome del nuovo file xml di nome '''joystick-configuration''' che conterrà la descrizione della finestra di configurazione del joystick, come si vede dall'esempio tale nome è definito all'interno del tag ''<dialog-name>''.
Riga 49:
''PropertyList'' è il tag che definisce tutta la struttura xml che descrive la finestra di dialogo:
 
<sourcesyntaxhighlight lang="Xml">
<?xml version="1.0"?>
<PropertyList>
...
</PropertyList>
</syntaxhighlight>
</source>
 
Da notare il tag ''<?xml version="1.0"?>'', obbligatorio in ogni file xml, che serve all'interprete xml ''capire'' con quale particolare ''dialetto'' xml è stato utilizzato pqr quel file.
Riga 60:
===Definizione del tipo di finestra===
 
<sourcesyntaxhighlight lang="Xml">
...
<name>joystick-configuration</name>
Riga 67:
<layout>vbox</layout>
...
</syntaxhighlight>
</source>
 
Il nome della finestra è descritto in ''<name>'''''joystick-configuration'''''</name>'', mentre con il tag ''<modal>'''''false'''''</modal>'' si definisce che la finestra non deve essere utilizzata in modalità modale, ovvero non deve bloccare tutti gli altri processi, cosa invece che accadrebbe se fosse tale parametri ''true'', la modalità modale può essere utilizzata quando si richiede la massima attenzione all'utilizzatore del programma, ad esempio la richiesta di uscita definitiva dal programma.<BR>La dimensione della finestra in pixel e il suo stile si dichiara nei tag ''<width>'' e ''<layout>'', ove quest'ultimo tag ha il parametro è ''vbox'' in quanto il suo sviluppo sarà di tipo verticale. Nel caso che si voglia uno sviluppo della finestra di tipo orizzontale si dovrebbe invece inserire il parametro ''hbox''.
Riga 75:
La barra superiore della finestra è in pratica una finestra nella finestra definita all'interno dei tag ''<group> ... <group>'', solo che il suo sviluppo non sarà verticale (''vbox''), ma orizzontale (''hbox'').
 
<sourcesyntaxhighlight lang="Xml">
...
<group>
Riga 96:
</group>
...
</syntaxhighlight>
</source>