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(); |
|
} |
|
|
} |
|
|
} |
|