Rev 13 | Blame | Compare with Previous | Last modification | View Log | RSS feed
package org.tela_botanica.client.vues;
import java.util.Iterator;
import com.google.gwt.user.client.ui.AbsolutePanel;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.HorizontalPanel;
import com.gwtext.client.widgets.form.TextField;
import org.tela_botanica.client.interfaces.Rafraichissable;
import org.tela_botanica.client.modeles.ListeReferentielCommune;
import org.tela_botanica.client.modeles.ReferentielCommune;
import org.tela_botanica.client.observation.ObservationMediateur;
/**
* Affiche une liste de localite qui peuvent etre selectionnees, retourne la valeur de la localite selectionne et une code associe
* (gettext et getvalue pour le code associe)
* Utilise un assistant de saisie asynchrone.
*/
public class LocationAssistantVue extends Composite implements Rafraichissable {
private AutoCompleteAsyncTextBox autoCompletebox = null;
//private HorizontalPanel panel = new HorizontalPanel();
private AbsolutePanel panel = new AbsolutePanel();
private TextField textfield = new TextField("Commune","commune",275);
private ObservationMediateur observationMediateur = null;
public LocationAssistantVue(ObservationMediateur obs) {
observationMediateur=obs;
autoCompletebox = new AutoCompleteAsyncTextBox(this);
// autoCompletebox.setFocus(true); FIXME : ne fonctionne pas
// autoCompletebox.setFournisseurDeDonnees(observationMediateur.obtenirFournisseurReferentielCommune());
panel.add(textfield);
panel.add(autoCompletebox,0,0);
//autoCompletebox.setWidth("100%");
initWidget(panel);
}
public String getText() {
return autoCompletebox.getText();
}
public void setText(String str) {
autoCompletebox.setText(str);
}
public void setValue(String value) {
autoCompletebox.setValue(value);
}
public String getValue() {
return autoCompletebox.getValue();
}
public void rafraichir(Object nouvelleDonnees, boolean repandreRaffraichissement) {
// si l'on a reçu une liste d'observation
if(nouvelleDonnees instanceof ListeReferentielCommune) {
ListeReferentielCommune data = (ListeReferentielCommune) nouvelleDonnees ;
// on la parse et on récupère les informations quiç nous interessent
for (Iterator it = data.keySet().iterator(); it.hasNext();)
{
ReferentielCommune com=(ReferentielCommune) data.get(it.next());
autoCompletebox.addItem(com.getCommune(),com.getDepartement());
}
autoCompletebox.displayList();
}
}
}