Subversion Repositories eFlore/Archives.cel-v2

Compare Revisions

Ignore whitespace Rev 48 → Rev 49

/trunk/src/org/tela_botanica/client/vues/LocationAssistantVue.java
New file
0,0 → 1,107
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();
}
}
}