controllers

I controller sono elementi dinamici di business logic a eventi che si attivano e vengono eseguiti a fronte di:

  • alcuni cambiamenti sul datastore se hanno parametri contenenti un triggering_path ovvero un path prefissato da ^
  • eventi propagati da una publish (genro.publish()) se il controller ha il corrispondente parametro subscribe_

Vediamo adesso la stessa cosa con:

.

Suggerimento

Da una recente release di luglio 2021 è diventato possibile collegare direttamente qualsiasi controller a un button o menuline. L’innesco avverrà automaticamente al clic sul bottone o linea di menu, senza quindi la necessità di utilizzare il meccanismo publish/subscribe o l’attributo fired_.

Parameters:

Parameter name Type Description
_delay T Il ritardo (in ms) tra l’evento trigger e l’esecuzione del controller
_onStart B Se impostato a True, il controller verrà lanciato al caricamento della pagina. Può anche contenere un valore numerico (es: _onStart=500), in quel caso verrà impostato un ritardo (in ms) prima di avviare la chiamata.
subscribe_ T  
_ask T Permette di identificare in un dizionario i parametri da richiedere all’utente alla pressione del bottone, che verranno poi utilizzati nell’azione (es. _ask=dict(title=”Test”,fields=[di ct(name=”msg”,lbl=”Message”)])
_if T Espressione javascript che permette di condizionare l’avvio del controller alla presenza di un valore (es: _if=”value”)
_else T Frammento di codice javascript che completa _if, indicando un altro comportamento da seguire qualora _if fosse falsa
_userChanges T Se impostato a «True» fa scattare il controller solo in caso di modifiche al record
Html Parameters
_class T Permette di assegnare una specifica classe CSS al widget
height T Permette di assegnare un’altezza al widget
width T Permette di assegnare una larghezza al widget
border T Permette di assegnare un bordo al widget
rounded L Permette di assegnare un rientro al widget
style T Permette di assegnare uno stile (da esprimersi come serie di attributi CSS) al widget
background T Permette di assegnare uno sfondo al widget