Rev 1503 | Blame | Compare with Previous | Last modification | View Log | RSS feed
package org.tela_botanica.del.client.vues.identiplante.resultats;
import org.tela_botanica.del.client.modeles.ModeTri;
import com.google.gwt.core.client.GWT;
import com.google.gwt.uibinder.client.UiBinder;
import com.google.gwt.uibinder.client.UiField;
import com.google.gwt.user.client.ui.Button;
import com.google.gwt.user.client.ui.Composite;
import com.google.gwt.user.client.ui.HasWidgets;
import com.google.gwt.user.client.ui.Label;
import com.google.gwt.user.client.ui.Panel;
import com.google.gwt.user.client.ui.Widget;
public class ResultatsIdentiplanteVue extends Composite implements ResultatsIdentiplantePresenteur.Vue {
@UiField
Panel panneauChargement;
// Gestion d'UiBinder
interface Binder extends UiBinder<Widget, ResultatsIdentiplanteVue> {
}
private static Binder binder = GWT.create(Binder.class);
@UiField
Panel zoneObservations, zonePaginationHaut, zonePaginationBas, zoneTri;
@UiField
Button triParDateAscendant, triParDateDescendant;
@UiField
Label aucunResultat, labelDate;
// Constructeur de la vue
public ResultatsIdentiplanteVue() {
initWidget(binder.createAndBindUi(this));
}
@Override
public HasWidgets getZoneObservations() {
return zoneObservations;
}
@Override
public HasWidgets getZonePaginationHaut() {
return zonePaginationHaut;
}
@Override
public HasWidgets getZonePaginationBas() {
return zonePaginationBas;
}
/**
* Nettoie et remet à zéro les composants du panneau qui doivent l'être
* */
@Override
public void nettoyer() {
zoneObservations.clear();
}
@Override
public void startChargement() {
panneauChargement.setHeight(zoneObservations.getOffsetHeight() + "px");
panneauChargement.setVisible(true);
}
@Override
public void stopChargement() {
panneauChargement.setVisible(false);
}
public void afficherElementsAucunResultatTrouve() {
nettoyer();
aucunResultat.setVisible(true);
zonePaginationHaut.setVisible(false);
zonePaginationBas.setVisible(false);
zoneTri.setVisible(false);
}
public void afficherElementsResultatsTrouves() {
aucunResultat.setVisible(false);
zonePaginationHaut.setVisible(true);
zonePaginationBas.setVisible(true);
zoneTri.setVisible(true);
}
public Button getTriParDateAscendant() {
return triParDateAscendant;
}
public Button getTriParDateDescendant() {
return triParDateDescendant;
}
@Override
public Label getLabelDate() {
return labelDate;
}
/**
* En fonction du sens du tri (ascendant ou descendant), on change l'affichage des
* boutons de tri pour masquer que celui qui doit être cliquable.
* @param ModeTri le mode Ascendant ou Descendant
* */
public void setModeTri(ModeTri mode) {
if (mode == ModeTri.TRI_ASCENDANT) {
triParDateAscendant.setVisible(true);
triParDateDescendant.setVisible(false);
} else {
triParDateDescendant.setVisible(true);
triParDateAscendant.setVisible(false);
}
}
}