Definisce un singolo tag e le sue proprietà.
Questa variabile è la stringa che definisce il carattere con cui si apre un tag.
Il carattere di chiusura di un tag.
Stringa che conserva il tag stesso.
Stringhe da stampare prima dell'apertura e dopo la chiusura del tag.
Un array contenente tre array i cui indici hanno i nomi di "name", "value" e "isflag" rispettivamente. È utilizzato per conservare le opzioni associate ad un tag. Ad esempio, un tag HTML come "<div>" può avere come opzione "align="center""; in questo caso in name[0] sarà contenuto "align" e in value[0] si troverà la stringa "center"; i valori di isflag indicano se il campo "value" è o meno significativo: se settato a "false" (come di default) il suo valore viene mostrato, altrimenti viene ignorato e non viene visualizzato neppure il segno di uguale; ad esempio il tag HTML <option> contenuto in una select può contenere il valore "selected": in questo caso name[x] sarà "selected, value[x] non ha importanza e isflag[x] è uguale a "true".
Questa funzione è il costruttore della classe: setta il valore di $tag al valore specificato.
Disegna il tag creato.
Aggiunge una o più opzioni a questo tag. $n può essere una stringa, nel qual caso viene controllato il valore di $v e usato come "value"; $isflag indica se $n è da considerarsi una flag (nel qual caso il valore di $v verrà ignorato) o meno.
Se $n è un array ci si aspetta un array del tipo ritornato da createOptionArray(); in questo modo è possibile aggiungere numerose opzioni con un solo inserimento.
Le opzioni verranno visualizzate all'interno del tag come coppie $n=$v (a meno che non sia stata specificata $isflag, nel qual caso verrà mostrato solo $n).
Funzione ad uso interno che stampa a video le opzioni di questo tag.
MLTag rappresenta una coppia di tag; in HTML un esempio può essere <b> e </b> per racchiudere il tasto da stampare in grassetto.
Sono le due variabili che contengono due oggetti del tipo "SimpleTag" giusto; la prima sarà il tag iniziale (nell'esempio sopra "<b>"), mentre la seconda quello finale ("</b>" nell'esempio). In questo modo si realizza l'incapsulamento di MLSimpleTag in MLTag (ed analogamente in tutte le classi da queste derivate).
Questa variabile è un array di oggetti del tipo Tag o SimpleTag o di stringhe di testo contenuti all'interno di questo tag. Ad esempio nel codice HTML "<i><b>Ciao</b></i>" la stringa "Ciao" è contenuta nel tag "<b>" che a sua volta è contenuto nel tag "<i>".
È un riferimento al tipo di oggetti da istanziare per le variabili $beginTag ed $endTag e restituiti dalla funzione _createSimpleTag(). Deve venir sovrascritta dalle classi derivate da questa in modo da farla puntare alla giusta discendente di MLSimpleTag.
Analogamente a $simpleTagClass, viene usata dalla funzione _createTag(); normalmente è un riferimento alla classe stessa. Anche qui è importante ricordarsi di sovrascriverla nelle classi derivate.
Questa funzione è il costruttore; il parametro da passare sarà il nome del tag. Il costruttore si occupa di creare i due oggetti del tipo SimpleTag; nelle classi derivate da queste (e in tutte le loro discendenti) è importante ricordarsi di richiamare il costruttore del padre.
Stampa il tag di apertura, tutti i tag contenuti in questo ed infine il tag di chiusura.
Aggiunge un oggetto all'interno di questa coppia di tag; $obj può essere un oggetto (di tipo SimpleTag o Tag), un array di oggetti o una stringa di testo.
Analoga alla funzione addOption di MLSimpleTag: aggiunge le opzioni solo al tag iniziale (ad esempio "<div align="center">Paragrafo</div>").
Restituisce un intero che indica il numero di oggetti direttamente contenuti in questo (non conta quindi gli oggetti a loro volta contenuti in quelli nell'array $contents).
Restituisce un oggetto dello stesso tipo di questo, ovvero un altro Tag.
Restituisce un oggetto del tipo SimpleTag.
Funzioni interne utili durante l'aggiunta di nuovi elementi.
Funzione interna per la visualizzazione del contenuto di questo tag.