Subversion Repositories eFlore/Applications.del

Compare Revisions

Ignore whitespace Rev 277 → Rev 276

/trunk/src/org/tela_botanica/del/client/vues/rechercheimages/RechercheImagePresenteur.java
14,39 → 14,20
import com.google.gwt.event.dom.client.ChangeHandler;
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.ClickHandler;
import com.google.gwt.event.dom.client.HasChangeHandlers;
import com.google.gwt.event.dom.client.HasClickHandlers;
import com.google.gwt.event.dom.client.HasKeyPressHandlers;
import com.google.gwt.event.dom.client.KeyCodes;
import com.google.gwt.event.dom.client.KeyPressEvent;
import com.google.gwt.event.dom.client.KeyPressHandler;
import com.google.gwt.user.client.ui.HasWidgets;
import com.google.gwt.user.client.ui.IsWidget;
 
public class RechercheImagePresenteur {
 
public interface Vue extends IsWidget {
public abstract void ajouterProtocole(String protocole);
public abstract void selectionnerProtocole(int index);
public abstract HasClickHandlers getBoutonChercher();
public abstract HasKeyPressHandlers getChampEspece();
public abstract HasChangeHandlers getListeProtocoles();
public abstract HasWidgets getPanneauResultats();
}
private Vue vue;
private final MockDatasource dataSource = MockDatasource.getInstance();
private final RechercheImageVue vue = new RechercheImageVue();
private String protocoleParDefaut = Protocole.IDENTIFICATION_AUTOMATIQUE;
private List<Protocole> protocoles;
 
/**
* Constructeur
* */
public RechercheImagePresenteur(Vue vue) {
this.vue = vue;
public RechercheImagePresenteur() {
 
if (CacheClient.getInstance().getProtocoleCourant() == null) {
CacheClient.getInstance().setProtocoleCourant(dataSource.getProtocole(protocoleParDefaut));
}
53,7 → 34,7
}
 
public void go(HasWidgets composite) {
composite.add(vue.asWidget());
composite.add(vue);
gererEvenements();
chargerProtocoles();
}
61,14 → 42,14
private void chargerProtocoles() {
protocoles = dataSource.getProtocoles();
for (Protocole protocole : protocoles) {
vue.ajouterProtocole(protocole.getNom());
vue.listeProtocoles.addItem(protocole.getNom());
}
vue.selectionnerProtocole(protocoles.indexOf(CacheClient.getInstance().getProtocoleCourant()));
vue.listeProtocoles.setSelectedIndex(protocoles.indexOf(CacheClient.getInstance().getProtocoleCourant()));
}
 
public void gererEvenements() {
 
vue.getBoutonChercher().addClickHandler(new ClickHandler() {
vue.boutonChercher.addClickHandler(new ClickHandler() {
 
@Override
public void onClick(ClickEvent event) {
76,7 → 57,7
}
});
 
vue.getChampEspece().addKeyPressHandler(new KeyPressHandler() {
vue.nomEspece.addKeyPressHandler(new KeyPressHandler() {
 
public void onKeyPress(KeyPressEvent event) {
if (event.getNativeEvent().getKeyCode() == KeyCodes.KEY_ENTER) {
85,12 → 66,11
}
});
 
vue.getListeProtocoles().addChangeHandler(new ChangeHandler() {
vue.listeProtocoles.addChangeHandler(new ChangeHandler() {
 
@Override
public void onChange(ChangeEvent event) {
Protocole protocoleCourant = (Protocole) event.getSource();
Protocole protocoleCourant = protocoles.get(vue.listeProtocoles.getSelectedIndex());
EvenementChangementProtocole evenement = new EvenementChangementProtocole(protocoleCourant);
BusEvenementiel.getInstance().fireEvent(evenement);
}
102,8 → 82,9
EvenementRechercheImage evenementRechercheImage = new EvenementRechercheImage(imagesFromDatabase);
BusEvenementiel.getInstance().fireEvent(evenementRechercheImage);
}
public HasWidgets getPanneauResultats() {
return vue.getPanneauResultats();
 
public RechercheImageVue getVue() {
return vue;
}
 
}
/trunk/src/org/tela_botanica/del/client/vues/rechercheimages/RechercheImageVue.java
1,9 → 1,6
package org.tela_botanica.del.client.vues.rechercheimages;
 
import com.google.gwt.core.client.GWT;
import com.google.gwt.event.dom.client.HasChangeHandlers;
import com.google.gwt.event.dom.client.HasClickHandlers;
import com.google.gwt.event.dom.client.HasKeyPressHandlers;
import com.google.gwt.uibinder.client.UiBinder;
import com.google.gwt.uibinder.client.UiField;
import com.google.gwt.user.client.ui.Button;
16,23 → 13,35
import com.google.gwt.user.client.ui.VerticalPanel;
import com.google.gwt.user.client.ui.Widget;
 
public class RechercheImageVue extends Composite implements RechercheImagePresenteur.Vue {
public class RechercheImageVue extends Composite {
 
private final VerticalPanel mainPanel = new VerticalPanel();
private final Panel panneauChargement = new FlowPanel();
 
interface MyUiBinder extends UiBinder<Widget, RechercheImageVue> {}
// Annotation can be used to change the name of the associated xml file
// @UiTemplate("ObservationRechercheVue.ui.xml")
interface MyUiBinder extends UiBinder<Widget, RechercheImageVue> {
}
 
private static MyUiBinder uiBinder = GWT.create(MyUiBinder.class);
 
@UiField TextBox nomEspece;
@UiField Panel panneauResultats;
@UiField Button boutonChercher;
@UiField Label protocoleLabel;
@UiField ListBox listeProtocoles;
@UiField
protected TextBox nomEspece;
 
@UiField
protected Panel panneauResultats;
 
@UiField
protected Button boutonChercher;
 
@UiField
protected Label protocoleLabel;
 
@UiField
protected ListBox listeProtocoles;
 
// Constructeur
public RechercheImageVue() {
protected RechercheImageVue() {
initWidget(uiBinder.createAndBindUi(this));
nomEspece.setFocus(true);
 
58,25 → 67,4
public void setPanneauResultats(Panel panneauResultats) {
this.panneauResultats = panneauResultats;
}
 
public HasClickHandlers getBoutonChercher() {
return boutonChercher;
}
 
public HasKeyPressHandlers getChampEspece() {
return nomEspece;
}
 
public HasChangeHandlers getListeProtocoles() {
return listeProtocoles;
}
public void ajouterProtocole(String protocole) {
listeProtocoles.addItem(protocole);
}
public void selectionnerProtocole(int index) {
listeProtocoles.setSelectedIndex(index);
}
}