GWT Designer: un Gui Designer per Google Web Toolkit

gwt-banner

GWT Designer è uno strumento per la costruzione di interfacce per il framework GWT, il quale permette con pochi click di creare form e altri componenti grafici, utilizzando esclusivamente una palette grafica lasciando allo strumento la generazione del codice Java. GWT Designer è stato sviluppato come plugin di Eclipse e delle sue varianti (MyEclipse, RAD,…) ed utilizza il GEF frameworf di Eclipse per la visualizzazione e la gestione della visualizzazione grafica. Questo strumento è stato sviluppato da Instantiations acquisita da Google ad agosto 2010 e rilasciato come free software insieme ad altri prodotti Java della stessa software house.

L’installazione è alquanto semplice basta andare in Help-> Install New Software e specificare il repository da dove scaricare il plugin (cliccando su Add…), il repository cambia a seconda della versione di Eclipse installata:

Eclipse 3.6 (Helios)

http://dl.google.com/eclipse/inst/d2gwt/latest/3.6

Eclipse 3.5 (Galileo)

http://dl.google.com/eclipse/inst/d2gwt/latest/3.5

Eclipse 3.4 (Ganymede)

http://dl.google.com/eclipse/inst/d2gwt/latest/3.4

gwtdesigner 296x300 GWT Designer: un Gui Designer per Google Web Toolkit

Aggiungiamo il repository da dove scaricare il plugin

Una volta scaricato e installato il tutto, riavviamo Eclipse.

Creiamo un nuovo progetto di tipo GWT Java Project, cliccando col tasto destro sul Package Explorer e poi su New e, se non è in elenco, clicchiamo su Other e cerchiamo la categoria WindowBuilder-> GWT Designer -> Model. Infine clicchiamo su GWT Java Project:

gwtdesigner1 300x300 GWT Designer: un Gui Designer per Google Web Toolkit

Cerchiamo la categoria WindowBuilder-> GWT Designer -> Model

Inseriamo il nome del progetto e clicchiamo Next:

gwtdesigner2 226x300 GWT Designer: un Gui Designer per Google Web Toolkit

Inseriamo il nome del progetto

Spuntiamo Create GWT Module (se non lo facciamo verrà creato un progetto completamente vuoto!), specifichiamo il nome e il path del package, infine specifichiamo di voler usare solo le librerie GWT:

gwtdesigner3 224x300 GWT Designer: un Gui Designer per Google Web Toolkit

Creiamo un nuovo modulo, ne specifichiamo il nome e path del package

Otteniamo il seguente progetto ed una classe che sarà l’ Entry Point dell’applicazione (il nostro main):

gwtdesigner4 300x207 GWT Designer: un Gui Designer per Google Web Toolkit

Il progetto generato

Switchiamo alla vista Design tramite il pulsante in basso a sinistra e vediamo l’editor come è composto:

gwtdesigner5 300x198 GWT Designer: un Gui Designer per Google Web Toolkit

L'editor grafico

Costruiamo ora, utilizzando l’editor grafico, una semplice form di Login, utilizzeremo un componente di tipo Composite (una sorta di aggregatore di componenti grafici), in modo da poter sviluppare la nostra Login Form in un file separato e poi poterlo importare nella nostra Entry Point (file main), clicchiamo col tasto destro sul package client:

gwtdesigner6 300x177 GWT Designer: un Gui Designer per Google Web Toolkit

Creiamo un Composite Panel

Indichiamo il nome del nostro componente e lasciamo il resto come da default:

gwtdesigner7 300x287 GWT Designer: un Gui Designer per Google Web Toolkit

Verrà creato nuovo file java di nome LoginForm; selezioniamo Design e clicchiamo sulla palette Panels il componente Flex Table, la freccia diventerà di colore verde, a questo punto clicchiamo sul pannello vuoto per inserire il componente:

gwtdesigner8 300x196 GWT Designer: un Gui Designer per Google Web Toolkit

Inseriamo delle Label ed una TextBox per lo username ed una Label ed una PasswordTextBox per la password, prendendole dal Panel Widgets, modifichiamo le Label andando ad agire sul Panel Properties e modificando la voce Text, modifichiamo invece per i campi TextBox il valore dell’attributo Variable, inserendo rispettivamente textBoxUsername e textBoxPassword:

gwtdesigner91 300x159 GWT Designer: un Gui Designer per Google Web Toolkit

Inseriamo i Widgets della Flex Table

Inseriamo infine una checkbox ed un pulsante per il Login:

gwtdesigner101 300x154 GWT Designer: un Gui Designer per Google Web Toolkit

La nostra form completa

Restringiamo inoltre la Flex Table cliccando sull’angolo in basso a destra della stessa e la portiamo ad una dimensione di 300 x 200. Otteniamo il seguente risultato finale:

gwtdesigner10 300x154 GWT Designer: un Gui Designer per Google Web Toolkit

Convertiamo i nostri campi di input da Local (cioè visibile solo nel costruttore) a Field (cioè divengono campi della classe e quindi visibile in ogni metodo di essa):

gwtdesigner13 300x217 GWT Designer: un Gui Designer per Google Web Toolkit

Clicchiamo sul tasto Convert local to Field

Aggiungiamo un evento onClick al pulsante Login:

gwtdesigner12 300x161 GWT Designer: un Gui Designer per Google Web Toolkit

Definiamo l'evento onClicK

Una volta aggiunto l’evento verremo riportati nella schermata Source dove dovremo implementare il metodo onClick, scriveremo il seguente codice:

Button button = new Button("New button");
button.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
   if (textBoxUsername.getText().length() == 0
       || textBoxPassword.getText().length() == 0) {
        Window.alert("La Username o la password sono vuote!!!");
   }
}
});

Possiamo modificare il CSS del nostro componente cliccando sul tasto in alto Editor for rules in available CSS file:

gwtdesigner14 300x188 GWT Designer: un Gui Designer per Google Web Toolkit

Modifichiamo le proprietà CSS

Clicchiamo sul tasto Add… nella finestra che apparirà, e scriviamo come nuova proprietà il nome .gwt-CheckboxRemember:

gwtdesigner15 300x207 GWT Designer: un Gui Designer per Google Web Toolkit

Creiamo una nuova regola CSS

Editiamo la nuova regola aggiungendo gli attributi color e font-size:

gwtdesigner16 300x208 GWT Designer: un Gui Designer per Google Web Toolkit

Editiamo la regola appena definita

Clicchiamo su ok per salvare. Inseriamo ora la nostra Form nella Entry Point della nostra applicazione, aprendo LoginApp nell’editor e cliccando su choose Component:

gwtdesigner18 300x233 GWT Designer: un Gui Designer per Google Web Toolkit

Apriamo il file LoginApp nell'editor e clicchiamo su choose Component

Digitiamo LoginForm nel pannello che si è aperto, e selezioniamo l’item LoginForm:

gwtdesigner19 300x245 GWT Designer: un Gui Designer per Google Web Toolkit

Selezioniamo il componente LoginForm

Ritroveremo il nostro componente sotto la voce Custom:

gwtdesigner20 300x189 GWT Designer: un Gui Designer per Google Web Toolkit

La nostra Form nel Panello Custom

Clicchiamo su di esso e lo inseriamo nella nostra applicazione, verrà generato il seguente codice:

package it.appuntisoftware.client
import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.user.client.ui.RootPanel;
/**
* Entry point classes define <code>onModuleLoad()</code>.
*/
public class LoginApp implements EntryPoint {
   public void onModuleLoad() {
      RootPanel rootPanel = RootPanel.get();
      LoginForm loginForm = new LoginForm();
      rootPanel.add(loginForm);
   }
}

A questo punto possiamo testare la nostra applicazione cliccando sul nostro progetto col tasto destro e selezionando Run as -> Web Application:

gwtdesigner17 300x80 GWT Designer: un Gui Designer per Google Web Toolkit

Avviamo la nostra applicazione

Condividi:
1 Stella2 Stelle3 Stelle4 Stelle5 Stelle (2 voti, media: 4,00 di 5)
Loading ... Loading ...
, Views: 2338
You can leave a response, or trackback from your own site.

One Response to “GWT Designer: un Gui Designer per Google Web Toolkit”

  1. [...] This post was mentioned on Twitter by Links About Google, Demóstenes Brito. Demóstenes Brito said: RT @linksgoogle: GWT Designer: un Gui Designer per Google Web Toolkit | Appunti Software: http://bit.ly/bVxmkX [...]

Leave a Reply

*