Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisione Revisione precedente
Prossima revisione
Revisione precedente
custom:development_creazione_di_un_gwwidget [2020/05/12 10:05]
giorgio.scali
custom:development_creazione_di_un_gwwidget [2020/05/12 10:22] (versione attuale)
giorgio.scali
Linea 3: Linea 3:
 Supponiamo di voler creare un nuovo widget di Geoweb: NeoWidget. Supponiamo di voler creare un nuovo widget di Geoweb: NeoWidget.
 Ecco i passi necessari: Ecco i passi necessari:
 +  * [[custom:​development_creazione_di_un_gwwidget#​Creazione class Java]] ​
 +  * [[custom:​development_creazione_di_un_gwwidget#​Registrazione del gwWidget]]
 +  * [[custom:​development_creazione_di_un_gwwidget#​Creazione pagine .jsp di visualizzazione e di modifica]] ​
 +  * [[custom:​development_creazione_di_un_gwwidget#​Creazione eventuali Controller java di supporto]] ​
 +  * [[custom:​development_creazione_di_un_gwwidget#​Integrare il widget nelle logiche del gwClassDetail]]
  
 =====Creazione class Java===== =====Creazione class Java=====
Linea 31: Linea 36:
 Comunque sia in caso si stia tentando di gestrare un widget con un CTRL_TYPE gia usato, viene generata un'​opportuna eccezione. Comunque sia in caso si stia tentando di gestrare un widget con un CTRL_TYPE gia usato, viene generata un'​opportuna eccezione.
  
-===== Registrazione ​widget ​=====+===== Registrazione ​del gwWidget ​=====
  
 Una volta creata la class del widget, dobbiamo registrarlo in un'​apposita class di registro: gwRegistry. Una volta creata la class del widget, dobbiamo registrarlo in un'​apposita class di registro: gwRegistry.
Linea 105: Linea 110:
 Le risorse importate in tale modo vengono aggiunte all'​inizio all'​apertura del progetto Geoweb. Vengono però aggiunte solo dopo le risorse usate dal modulo base (e dopo il caricamento del modulo dojo, per quanto concerne i js). Le risorse importate in tale modo vengono aggiunte all'​inizio all'​apertura del progetto Geoweb. Vengono però aggiunte solo dopo le risorse usate dal modulo base (e dopo il caricamento del modulo dojo, per quanto concerne i js).
  
-===== Creazione eventuali Controller ​lato server ​=====+===== Creazione eventuali Controller ​java di supporto ​=====
  
 In generale un widget non ha bisogno di Controller java per il suo funzionamento. Talvolta capita che un widget, per necessità di recuperare ulteriori dati, sia costretto a fare un passaggio lato server per poter renderizzare una qualche sua parte. Tali controller sono per convenzione messi in apposite classi sotto //​com.geowebframework.webclient.controller.widget//​ per il modulo base, mentre //​com.geowebframework.plugin_name.controller.widget//​ per i plugin. In generale un widget non ha bisogno di Controller java per il suo funzionamento. Talvolta capita che un widget, per necessità di recuperare ulteriori dati, sia costretto a fare un passaggio lato server per poter renderizzare una qualche sua parte. Tali controller sono per convenzione messi in apposite classi sotto //​com.geowebframework.webclient.controller.widget//​ per il modulo base, mentre //​com.geowebframework.plugin_name.controller.widget//​ per i plugin.
  
-===== Far coesistere ​il widget ​nel dettaglio di classe renderlo manovrabile ​=====+===== Integrare ​il widget ​nelle logiche del gwClassDetail ​=====
 I passi necessari sono: I passi necessari sono:
-  * far dichiarare ​dal widget al contesto ​che esso è pronto +  * far dichiarare, da qualche parte, da parte del widget al dettaglio di classe ​che esso è 'pronto', pubblicando un apposito evento dojo 
-  * assegnare le class css come da specifiche +  * assegnare ​tutte le class css come da specifiche 
-  * implementare le shared JS API+  * implementare/​sovrascrivere ​le shared JS API
  
 Tutti questi passaggi sono trattati nello specifico qui: Tutti questi passaggi sono trattati nello specifico qui:
 [[custom:​development_event_attribute_logics|EventAttributes Guidelines]] [[custom:​development_event_attribute_logics|EventAttributes Guidelines]]
  • custom/development_creazione_di_un_gwwidget.1589270715.txt.gz
  • Ultima modifica: 2020/05/12 10:05
  • da giorgio.scali