Subversion Repositories eFlore/Applications.del

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
602 aurelien 1
package org.tela_botanica.del.client.composants.formulaires.autocompletion;
261 aurelien 2
 
450 aurelien 3
import com.google.gwt.event.dom.client.HasKeyPressHandlers;
457 aurelien 4
import com.google.gwt.event.logical.shared.HasSelectionHandlers;
1099 aurelien 5
import com.google.gwt.user.client.ui.HasText;
450 aurelien 6
import com.google.gwt.user.client.ui.HasWidgets;
261 aurelien 7
import com.google.gwt.user.client.ui.LayoutPanel;
8
import com.google.gwt.user.client.ui.MultiWordSuggestOracle;
9
import com.google.gwt.user.client.ui.SuggestBox;
10
import com.google.gwt.user.client.ui.SuggestOracle;
457 aurelien 11
import com.google.gwt.user.client.ui.SuggestOracle.Suggestion;
261 aurelien 12
 
450 aurelien 13
public class AutoCompletionComboBoxVue extends LayoutPanel implements AutoCompletionComboBoxPresenteur.Vue {
261 aurelien 14
 
15
	MultiWordSuggestOracle msu = new MultiWordSuggestOracle();
16
	SuggestBox suggestions = new SuggestBox(msu);
17
 
18
	public AutoCompletionComboBoxVue() {
19
		add(suggestions);
386 aurelien 20
		//TODO: voir avec greg si la taille doit être définie ici
21
		setHeight("25px");
261 aurelien 22
		setWidth("100%");
23
	}
24
 
1099 aurelien 25
	@Override
261 aurelien 26
	public SuggestBox getSuggestBox() {
27
		return suggestions;
28
	}
29
 
30
	public void remplirListe(String[] listePropositions) {
31
 
32
		msu.clear();
33
		for (int i = 0; i < listePropositions.length; i++) {
34
			msu.add(listePropositions[i]);
35
		}
36
	}
37
 
450 aurelien 38
	@Override
261 aurelien 39
	public void afficherSuggestions(SuggestOracle.Request requeteOracle, SuggestOracle.Callback callBackOracle) {
40
		msu.requestSuggestions(requeteOracle, callBackOracle);
41
	}
416 gduche 42
 
450 aurelien 43
	@Override
44
	public void afficherListeDeroulante() {
45
		suggestions.showSuggestionList();
46
	}
47
 
416 gduche 48
	public void nettoyer() {
49
		suggestions.setText("");
50
	}
51
 
52
	public void setValeur(String taxon) {
457 aurelien 53
		suggestions.setValue(taxon);
416 gduche 54
	}
450 aurelien 55
 
56
	@Override
57
	public HasKeyPressHandlers getSuggestBoxHasKeyPressHandlers() {
58
		return suggestions;
59
	}
457 aurelien 60
 
61
	@Override
62
	public HasSelectionHandlers<Suggestion> getSuggestBoxHasSelectionChangeHandlers() {
63
		return suggestions;
64
	}
450 aurelien 65
 
66
	@Override
67
	public String getValeur() {
68
		return suggestions.getText();
69
	}
70
 
71
	@Override
72
	public void ajouterVue(HasWidgets composite) {
73
		composite.add(this.asWidget());
74
	}
1099 aurelien 75
 
76
	@Override
77
	public void afficherStyleErreur(String styleErreur) {
78
		suggestions.addStyleName(styleErreur);
79
	}
80
 
81
	@Override
82
	public void supprimerStyleErreur(String styleErreur) {
83
		suggestions.removeStyleName(styleErreur);
84
	}
261 aurelien 85
}