Corso di AmigaOS

Torna all'elenco delle lezioniPer dubbi, consigli o richieste, potete mandare un'e-mail ad Andrea Carolfi.
Ringraziamo Amiga Transactor Mailing List per questo tangibile contributo!


La amigaguide.library (Ventesima lezione)

Oggi cominceremo a parlare di un'altra libreria amiga molto utile la amigaguide.library.
Questa libreria, serve per gestire gli ipertesti di aiuto che vengono forniti insieme a quasi tutti i programmi ed anche a certi giochi (è un peccato che non si sia diffusa prima). Compito di questa libreria non è soltanto visualizzare l'ipertesto con i suoi collegamenti ma anche fornire una interfaccia per il programma applicativo per permettergli di poter visualizzare una determinata pagina/sezione in modo da fornire all'utente un aiuto guidato su una specifica parte del programma/gioco.
Ad esempio, se noi premiamo il tasto help mentre con il mouse siamo fermi su di un particolare bottone, possiamo dire alla libreria di aprire la pagina relativa all'uso di quel bottone, stessa cosa per le singole voci dei menù.

Prima di introdurre all'uso di questa libreria è doveroso anticipare la struttura dei file .guide, in modo che tutti possano realizzarsi i propri.
In genere, si procede come con gli esempi di programmazione, si guarda un sorgente di esempio, si capisce il suo funzionamento e poi si fanno delle modifiche e si esaminano i risultati.
La regola numero uno è che i comandi dell'ipertesto sono anticipati da @ alcuni devono essere racchiusi tra parentesi graffe { e } altri no.

Vediamo quindi i comandi base:

@database <nome>
Questo comando deve sempre essere la prima linea del database AmigaGuide.
ES: @database BSFWB.guide

@author <nome>
Specifica l'autore del database (V39+).
ES: @author "Andrea Carolfi"

@(c) <copyright>
Notizie sul copyright del database (V39+).
ES: @(c) "Hurricane Studios"

@$VER: <stringa di versione AmigaDOS>
Usato per specificare la versione del database. Questo comando deve essere sempre maiuscolo (V39+).
ES: @$VER: BSFWB.guide 1.2 (9.4.96)

@master <nome>
Usato per specificare il file sorgente del database.
ES: BSFWB.doc

@font <nome> <dimensione>
Specifica il carattere da usare per il database (V39+).
ES: helvetica.font 15

@index <nome/nodo>
Specifica il nome del nodo indice, acceduto premendo con il bottone "Indice".
Puo essere un nodo in un database esterno.

@help <nome/nodo>
Specifica il nome del nodo di aiuto, acceduto premendo il bottone "Aiuto" o dal tasto Help sulla tastiera.

@wordwrap
Specifica di andare a capo automaticamente, molto comodo (V39+).

@node <nome> [title]
Inizia un nodo.

@{b} @dnode <name> [title] @{ub}
Start a dynamic node. The dynamic node hosts are queried for the node data.

@remark <remark>
Remark (non visualizzato all'utente).

I seguenti comando possono essere usati all'interno di un nodo.

@title <titolo>
Il titolo per il nodo.

@toc <nome>
Specifica il nome dei Contenuti per questo nodo. Può essere un nodo in un database esterno.

@prev <nome>
Specifica il nome del nodo a cui andare quando si preme il bottone "Scorri <".

@next <nome>
Specifica il nome del nodo a cui andare quando si preme il bottone "Scorri >".

@keywords <keywords>
Parole chiave assegnate ad un nodo. Usato per la ricerca di un nodo (V39+).

@font <nome> <dimensione>
Specifica il carattere da usare all'interno del nodo (V39+).

@{<etichetta> <comando>}
Indica un link testuale. Può essere ovunque in una linea. Viene visualizzato come un bottone con dentro il testo.

A partite dalla versione 3.0 di AmigaGuide, i bottoni possono essere collegati a grafica suono o altri datatype. Ad esempio @{"Amiga" link amiga.brush/main}.

@endnode
Indica la fine del nodo.

Con le versioni 3.0 e successive è possibile cambiare gli attributi del testo.

@{b}
grassetto attivato

@{ub}
grassetto disattivato

@{i}
corsivo attivato

@{ui}
corsivo disattivato

@{u}
sottolineato attivato

@{uu}
sottolineato disattivato

Inoltre il colore in primo piano del testo può essere cambiato con il comando @{fg <colore>}.
Il colore di sfondo con il comando @{bg <colore>} <colore> può essere:

  • text
  • shine
  • shadow
  • fill
  • filltext
  • back
  • highlight
Per il momento la lezione termina quì, con insieme un .guide di esempio.
La prossima volta vedremo come interagire dalla nostra applicazione.

Lezione precedente Indice delle lezioni
Copyright AMiWoRLD Ph0ton