classe ProtoHtml estende Html
{
costruttore($livello=0, $str=NULL);
ApriChiudiTag($sTag, $vAttr=NULL, $cont=NULL, $bDaChiudere=FALSO);
CambiaModo($nModo);
ChiudiTag($sNome='');
CreaUri($pagina, &$var, $chiedoInfoSessione=VERO); &
FineCiclo();
GeneraID($prefisso); &
ImpostaDatiRip(&$dati);
InsTesto(&$sTesto, $indiceConBarre=NULL);
InsTestoBD(&$sTesto, $indiceConBarre=NULL);
PrendiDatiRip(); &
PrendiModo();
PrendiVisCampo($nCampo, $tipo, $par, $classe='finto'); &
Stampa($bDevoAzzerare=VERO);
Tendina(&$nome, &$bddati, $i, $iCodice=NULL, $iSel=NULL, $script='');
}

c($numCampo); &

define("NORMALE", 0);
define("NVOLTE", 1);
define("DABASEDATI", 2);
define("BD_TESTO", 3);
define("BD_INDICE", 4);

costruttore($livello=0, $str=NULL)
modalità impostata a NORMALE

Tendina(&$nome, &$bddati, $i, $iCodice=NULL, $iSel=NULL, $script='')
Inserisce un menu a tendina con voci prese dalla basedati.
$nome è il nome del controllo html e della variabile php generata.
$bddati è il risultato della selezione.
$i è l'indice (base 0) della colonna per il testo delle voci.
$iCodice è l'indice (base 0) della colonna per il codice spedito al server. Se non specificato è uguale a $i.
$iSel è l'indice (base 0) della colonna per la stringa selected.
$script è lo script da eseguire sull'evento onchange.

CambiaModo($nuovoModo)
Se il modo viene cambiato manualmente da BD_TESTO a NORMALE viene invocato il metodo FineCiclo.
Ovviamente il metodo FineCiclo viene anche invocato anche in caso di cambio automatico, ma non qui dentro.

PrendiModo()

ImpostaDatiRip(&$dati)
Imposta dei dati aggiuntivi che vengono passati al consumabile inserito dentro l'istanza di protoh.
Il parametro passato può essere.

Vedi anche sprintf

PrendiDatiRip() &
Ritorna i dati aggiuntivi che vengono passati al consumabile inserito dentro l'istanza di protoh.

Racchiudi($tag, $classe=NULL, $vattr=NULL)

protetta AllocaTagAperto($sNome, &$vAttr) &

privata privata AllocaTagN(&$sTag, &$vattr) &

ApriChiudiTag($sTag, $vAttr=NULL, $cont=NULL, $bDaChiudere=FALSO)
Inserisce un tag che si modifica a seconda del modo e dei dati aggiuntivi impostati.
Il parametro bDaChiudere viene preso in considerazione solo se il contenuto è nullo, altrimenti il tag viene chiuso indipendentemente dal suo valore.
Vedi anche ImpostaDatiRip

ChiudiTag($sNome='')

FineCiclo()
Forza la chiusura del ciclo. Normalmente un ciclo inizia con l'apertura di un tag dopo aver impostato DABASEDATI e finisce con la chiusura del tag corrispondente.
Il ciclo può anche iniziare impostando BD_TESTO e facendolo finire con questo metodo.

InsTesto(&$sTesto, $indiceConBarre=NULL)
Aggiunge un elemento di solo testo.
$sTesto specifica il testo da inserire.
$indiceConBarre, significativo solo in modalità BD_TESTO e DABASEDATI, indica che al campo con quest'indice vanno aggiunte delle barre inverse ('\') prima di ogni apice singolo ('''), utile, ad esempio, se il valore dovrà essere una. stringa js

InsTestoBD(&$sTesto, $indiceConBarre=NULL)
Aggiunge un elemento di solo testo.
$sTesto specifica il testo da inserire.
$indiceConBarre indica che al campo con quest'indice vanno aggiunte delle barre inverse ('\') prima di ogni apice singolo (''').
Se è appena stato selezionato il modo DABASEDATI protohtml ciclerà solo su questo elemento,

InsVisCampo(&$nCampo, $tipo, $par, $classe='finto', $nCampiInvisibili=0)
Inserisce un consumabile per protoh del tipo indicato, vedi costanti VIS_*, con i parametri indicati: vedi la documentazione del modulo bd/vis.
Attenzione: $nCampo è passato per riferimento, e viene incrementato del numero di campi - 1 necessario al visualizzatore richiesto.
$nCampiInvisibili, indica quanti campi non visibili sono presenti prima del campo indicato da $nCampo.

PrendiVisCampo(&$nCampo, $tipo, $par, $classe='finto', $nCampiInvisibili=0) &
Ritorna un consumabile per protoh del tipo indicato, vedi costanti VIS_*, con i parametri indicati: vedi la documentazione del modulo bd/vis.
Attenzione: $nCampo è passato per riferimento, e viene incrementato del numero di campi necessario al visualizzatore richiesto.
$nCampiInvisibili, indica quanti campi non visibili sono presenti prima del campo indicato da $nCampo.

Unisci(&$html)

Stampa($bDevoAzzerare=VERO)

statica CreaUri($pagina, &$var, $chiedoInfoSessione=VERO) &
Restituisce una stringa che rappresenta un'uri, le cui componenti vengono specificate nei parametri. Se è stato impostato l'utente propaga anche le informazioni di autenticazione.
$pagina è l'indirizzo della pagina per cui vuole costruire l'uri; può essere un'indirizzo assoluto o relativo.
$var è un vettore associativo che indica le variabili da passare in GET alla pagina specificata.

statica GeneraID($prefisso) &
Restituisce un identificativo univoco progressivo per il prefisso passato.

statica InterpretaFormattazione(&$vStr)
Interpreta le stringhe (che può essere singola oppure un vettore) come disposizioni per la formattazione e le modifica conseguentemente.
Attualmente sono implementate le seguenti trasformazioni:
- %[a-Z]* rimane inalterato. SuperTag si occupera di generare un nuovo id usando come prefisso la stringa che segue il %. - %(.*) diventa %\1+1$s . Cioè per le stringhe inizianti con % viene supposto che siano seguite da un numero e vengono sostituite dal carattere % concatenato al numero incrementato di uno e dai caratteri $s.

c($numCampo) &
Navigami interpreterà la stringa ritornata da questo metodo come "da espandere" col valore attuale del campo raapresentato dal valore in ingresso.
questa interpretazione viene fatta da tutte le classi dei moduli bd e bd/vis/